Exemple de message d’erreur :
# 25320 ns - tb.error ERROR #2 : le signal ne s’attendait pas à de la valeur
Nb. tb.expect signal Vérifier les données d’écriture valides
Nb. prévu 01110110010101000011001000010000
Le numéro a 11111110110111001011101010011000
# | || || || |
Nb. tb.expect hexculcicule :
Nb. prévu 76543210
Nb. fedcba98
Il s’agit d’une erreur qui s’est produite en raison d’un paramètre RTL uninitialisé dans le modèle de simulation fonctionnelle IP. Si vous appliquez le module maître/esclave E/S dans votre couche logique, vous pouvez tomber dans ce problème. Pour résoudre ce problème, vous pouvez intégrer le modèle de simulation fonctionnelle IP avec la procédure suivante :
1. Ouvrez une invite de commande et dirigez le chemin vers votre répertoire de projet.
2. Tapez la ligne de commande suivante pour repousser les limites du modèle de simulation fonctionnelle IP pour DUT et LE TRAVAIL EN UTILISANT L’option de ligne de commande quartus_map SIMGEN_RAND_POWERUP_FFS=DÉSACTIVÉe :
quartus_map --simgen --simgen_parameter="CBX_HDL_LANGUAGE=Verilog,SIMGEN_RAND_POWERUP_FFS=OFF » --family=stratixiv \
--source= »./rio_rio.v » \
--source= »./rio_riophy_gxb.v » \
--source= »./rio_phy_mnt.v » \
--source= »./rio_riophy_xcvr.v » \
--source= »./rio_riophy_dcore.v » \
--source= »./rio_riophy_reset.v » \
--source= »./rio_concentrator.v » \
--source= »./rio_drbell.v » \
--source= »./rio_io_master.v » \
--source= »./rio_io_slave.v » \
--source= »./rio_maintenance.v » \
--source= »./rio_reg_mnt.v » \
--source= »./rio_transport.v » \
rio.v
cp rio_rio_sister.v rio_sister_rio.v
cp rio_riophy_gxb_sister.v rio_sister_riophy_gxb.v
quartus_map --simgen --simgen_parameter="CBX_HDL_LANGUAGE=Verilog,SIMGEN_RAND_POWERUP_FFS=OFF » --family=stratixiv \
--source= »./rio_sister_rio.v » \
--source= »./rio_sister_riophy_gxb.v » \
--source= »./rio_phy_mnt_sister.v » \
--source= »./rio_riophy_xcvr_sister.v » \
--source= »./rio_riophy_dcore_sister.v » \
--source= »./rio_riophy_reset_sister.v » \
--source= »./rio_concentrator_sister.v » \
--source= »./rio_drbell_sister.v » \
--source= »./rio_io_master_sister.v » \
--source= »./rio_io_slave_sister.v » \
--source= »./rio_maintenance_sister.v » \
--source= »./rio_reg_mnt_sister.v » \
--source= »./rio_transport_sister.v » \
rio_sister_rio.v
3. Vous devez modifier la ligne de commande en fonction du bon périphérique et des informations HDL.
Exemple : « CBX_HDL_LANGUAGE=Verilog » ou « CBX_HDL_LANGUAGE=HDL »
«--family=Stratix® IV » ou = un des « Arria® II GX, Cyclone® IV, Arria GX, Stratix II GX »
4. Après la commande, Quartus® soumettra un nouveau fichier IP Functional Simulation Model sans erreur.