Oui, le logiciel Quartus II (versions 2.1 et versions ultérieures) prend en charge les directives et le translate_on
translate_off
compilateur.
Vous pouvez entrer des directives de synthèse (également appelés pragmas ou attributs) dans le code Verilog HDL ou VHDL en tant que commentaires. Ces directives ne sont pas incluses dans la définition du langage, mais l’outil de synthèse lit les commandes pour stimuler le processus de synthèse d’une manière quelconque.
Les translate_on
translate_off
directives indiquent au logiciel Quartus II (ou à un outil de synthèse tiers) de ne pas compiler une partie particulière du fichier de conception. Cela est utile si une section du code n’est destinée qu’à la simulation et non à la synthèse. Ces directives spécifiques à la synthèse seront lues et traitées pendant la synthèse, mais lues comme commentaires et ignorées par un outil de simulation tiers. La translate_off
directive indique le début d’une section qui doit être ignorée lors de la synthèse, et la directive indique que la synthèse doit reprendre à ce translate_on
stade.
Le logiciel Quartus II prend en charge les différentes directives de compilation suivantes :
HDL Verilog :
// synthesis translate_off // synthesis translate_on
Ou
/* synthesis translate_off */ /* synthesis translate_on */
VHDL:
-- synthesis translate_off -- synthesis translate_on
En plus du synthesis
mot-clé ci-dessus, les mots clés suivants sont pris en charge dans Verilog HDL et VHDL pour assurer la compatibilité avec d’autres outils de synthèse :
pragma synopsys exemplar
Les versions du logiciel Quartus II plus anciennes que 2.1 ne prennent pas en charge les directives du compilateur. Vous verrez un comportement différent de Quartus II si les conceptions compilées dans les versions antérieures du logiciel comprenaient ces directives. Vous devrez peut-être modifier votre code maintenant que les options sont honorées par le logiciel car les versions précédentes du compilateur Quartus II traitaient les options comme des commentaires.
Un cas commun où vous pouvez voir des différences avec les versions précédentes de Quartus II est lorsque vous avez un MegaWizard®généré VHDL ou Verilog HDL megafunction et que vous avez ajouté translate_off
et translate_on
pragmas pour masquer les détails internes de votre outil de synthèse tiers. Ces détails sont désormais cachés au logiciel Quartus II. Les mégafunctions ne seront pas implémentées lorsque vous compilerez à l’aide de la version 2.1 ou au-dessus du logiciel Quartus II.
Pour plus d’informations sur les directives de synthèse, reportez-vous au chapitre de la synthèse intégrée de Quartus II dans le volume 1 du Manuel de Quartus II.