Le module d'automatisation s'occupe automatiquement des phases successives de conception. Il prend en charge la création de l'anneau autour du noyau ainsi que les différents tests intermédiaires. En supposant que vous avez appelé votre projet CIBLE, voilà comment vous devez réaliser vos fichiers.CIBLE.vbe:
Ce fichier VHDL ne doit utiliser que les directives VHDL comprises par Alliance et disponibles par "man vbe". Il contiendra la description comportementale du circuit. Il n'y a pas à insérer d'alimentations. N'insérez pas d'horloge si vous n'en avez pas besoin. Par contre, si vous en avez besoin, il faut impérativement la nommer clk et qu'elle soit du type 'in bit'. Aucune autre ligne ne peut avoir le droit de s'appeler clk. Le module d'automatisation supporte la présence dans l'interface de signaux en entrée(IN) et en sortie(OUT) de type "bit" ou "bit_vector".test_CIBLE.c:
Autre remarque très importante, pas un nom de registre ne doit se terminer par "_x" où x est un nombre quelconque (par exemple: signal a_2 : reg_bit; est interdit pour que le module d'automatisation fonctionne bien).La syntaxe d'un fichier de simulation est décrite par la page man de genpat. Les remarques impératives sont : vous devez nommer le fichier généré "test.pat" avec la directive:CIBLE.rin:DEF_GENPAT("test");Vous devez définir et affecter tous les signaux en entrée de CIBLE, et ce,dès le premier pattern(le pattern "0"). Vous n'avez pas à affecter les sorties car elles seront simulées et soumises à votre approbation.
Vous devez terminer la fonction "main" par "return 0;" ou "exit(0);" pour le bon déroulement du Makefile.
Une remarque importante. Le simulateur asimut ne gère pas de la même manière les registres sur une description VHDL comportementale et sur une netliste logique en début de simulation. Vérifiez que les premiers patterns explicitent une remise à zéro du circuit(comme une ligne 'reset' mise à 1 dès le début).Il s'agit là de la disposition des broches (préfixés par "p_" pour mettre en valeur le fait que l'on parle de la disposition des pads. Les broches sont en faces des pads donc ça ne fait aucune différence.). Vous devez inclure tous les signaux qui se trouvent dans votre entité VHDL préfixé par "p_". Il faut rajouter aussi les alimentations du noyau "p_vdd" et "p_vss" ainsi que les alimentations externes "p_vdde" et "p_vsse" (c'est-à-dire les alimentations des pads qui contrôlent les E/S de l'ASIC). Si votre circuit ne contient pas d'horloge, ajoutez quand même le pad p_clk. Cela est inhérent à la conception d'un ASIC qui a besoin d'une ligne d'horloge. Faîtes attention à la disposition de "p_vss" et "p_vdd". Si votre circuit est relativement petit, il faut impérativement placer ces pads vers le milieu d'une face, de façon à ce qu'ils se trouvent bien juste en face du noyau.
Vous aurez aussi à spécifier la largeur des lignes d'alimentation internes. Nous n'avons pas eu le temps de nous figurer exactement de quoi il s'agissait mais un tour dans les tutorials nous a donné à penser que la valeur 80 était suffisamment assez large pour notre projet diviseur.