Syntaxe des noms hiérarchiques complets utilisés dans les fichiers Xilinx UCF
Question
J'essaie de créer un TIG
contrainte dans le fichier UCF de mon projet.
Le problème est que je n'arrive tout simplement pas à trouver le bon nom hiérarchique.
La structure que je traite est la suivante (pseudo-code montrant la position hiérarchique du signal à adresser) :
m1: module1
g1: for i in 0 to m generate
g2: if x /= 0 generate
m2: module2
reset : in std_logic;
Entre autres j'ai essayé NET "m1/m2/reset" TIG;
, NET "m1/g1.g2.m2/reset" TIG;
et NET "m1/g1*.g2.m2/reset" TIG;
(le dernier a été inspiré d'un des fichiers intermédiaires produits lors de la synthèse *.xdl).
Quelle est la bonne manière d’aborder le reset
net en m2 ?J'ai regardé le guide des contraintes Xilinx mais je n'ai trouvé aucune explication détaillée à ce sujet.
La solution
Une récente Guide de l'utilisateur XST pourrait avoir une section sur Conventions de dénomination XST avec des sous-sections sur *Conventions de dénomination réseau XST, Conventions de dénomination des instances XST et Contrôle de génération de noms XST.Le dernier expliquant comment contrôler la génération de noms dans la netlist (séparateur de hiérarchie, délimiteur de bus, casse, suffixe de duplication, visible dans les propriétés de synthèse).Votre troisième exemple ci-dessus semble prometteur.Vous pouvez vous rapprocher de la netlist en visualisant des schémas ou l'éditeur de contraintes.Pouvez-vous ajouter du TIG à la réinitialisation dans m1 ?(c'est un référentiel direct).