ID de l'article: 000092740 Type de contenu: Messages d'erreur Dernière révision: 12/09/2023

Pourquoi est-ce que je vois plusieurs avertissements « Avertissement : NUMERIC_STD. TO_SIGNED : vecteur tronqué » lors de la simulation du FIR II Intel® FPGA IP Core ?

Environnement

    Intel® Quartus® Prime Pro Edition
    FPGA Intel® IP FIR II
BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descriptif

Ces avertissements se produisent pendant la simulation en raison de la représentation de la constante (9) sous la forme d’un vecteur signé 4 bits dans le fichier FIR II Intel® FPGA IP VHDL, hb1s_altera_fir_compiler_ii_1911_kmsq6ua_rtl_core.vhd.

Le numéro 9 ne peut pas tenir dans un numéro signé de 4 bits ; par conséquent, nous voyons l’avertissement vector_truncated de la fonction VHDL TO_SIGNED.

Lorsque nous interprétons le modèle de bits de 9 (1001) comme un nombre signé de 4 bits, nous obtenons -7.

Résolution

Effectuez la modification RTL suivante pour supprimer l’avertissement « vecteur tronqué » si vous utilisez la version 22.3 ou antérieure du logiciel Intel® Quartus® Prime Pro Edition.

Trouvez le fichier hb1s_altera_fir_compiler_ii_1911_kmsq6ua_rtl_core.vhd dans le dossier IP généré suivant :

<ip_variation_name>dossier/altera_fir_compiler_ii_1911/sim/

Remplacer:

u0_m0_wo0_wi0_r0_ra0_count1_inner(COMPTEUR,25)@14

faible=-1, élevé=6, étape=-1, initial=5

u0_m0_wo0_wi0_r0_ra0_count1_inner_clkproc : PROCESSUS (CLK)

COMMENCER

SI (clk’EVENT ET clk = '1') ALORS

SI (areset = '1') ALORS

u0_m0_wo0_wi0_r0_ra0_count1_inner_i <= TO_SIGNED(5, 4);

AUTRE

SI (u0_m0_wo0_memread_fanout_reg0_q = « 1 ») ALORS

SI (u0_m0_wo0_wi0_r0_ra0_count1_inner_i(3 jusqu’à 3) = « 1 ») ALORS

u0_m0_wo0_wi0_r0_ra0_count1_inner_i <= u0_m0_wo0_wi0_r0_ra0_count1_inner_i - 9;

AUTRE

u0_m0_wo0_wi0_r0_ra0_count1_inner_i <= u0_m0_wo0_wi0_r0_ra0_count1_inner_i - 1;

FIN SI;

FIN SI;

FIN SI;

FIN SI;

FIN DU PROCESSUS;

avec (changements en rouge) :

u0_m0_wo0_wi0_r0_ra0_count1_inner(COMPTEUR,25)@14

faible=-1, élevé=6, étape=-1, initial=5

u0_m0_wo0_wi0_r0_ra0_count1_inner_clkproc : PROCESSUS (CLK)

variable wider_var : SIGNÉ (4 jusqu’à 0);

COMMENCER

SI (clk’EVENT ET clk = '1') ALORS

SI (areset = '1') ALORS

u0_m0_wo0_wi0_r0_ra0_count1_inner_i <= TO_SIGNED(5, 4);

AUTRE

SI (u0_m0_wo0_memread_fanout_reg0_q = « 1 ») ALORS

SI (u0_m0_wo0_wi0_r0_ra0_count1_inner_i(3 jusqu’à 3) = « 1 ») ALORS

wider_var := resize(u0_m0_wo0_wi0_r0_ra0_count1_inner_i,5) - 9;

AUTRE

wider_var := redimensionner(u0_m0_wo0_wi0_r0_ra0_count1_inner_i,5) - 1;

FIN SI;

u0_m0_wo0_wi0_r0_ra0_count1_inner_i <= wider_var(3 jusqu’à 0);

FIN SI;

FIN SI;

FIN SI;

FIN DU PROCESSUS;

Notez qu’il existe une autre copie de ce fichier dans le dossier synthé :

<ip_variation_name>dossier/altera_fir_compiler_ii_1911/synth/hb1s_altera_fir_compiler_ii_1911_kmsq6ua_rtl_core.vhd

La copie « sim » est utilisée pour le simulateur. Le logiciel Intel® Quartus® Prime utilise la copie « synthé ».

Techniquement, seule la version sim des fichiers doit être modifiée pour corriger les avertissements du simulateur.

Ce problème est résolu dans la version 22.4 du logiciel Intel® Quartus® Prime Pro Edition.

Produits associés

Cet article concerne 1 produits

FPGA et FPGA SoC Intel® Agilex™ 7 série I

1

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.