Module d'automatisation des tâches

Une remarque évidente nous vient à l'esprit quand on se penche sur le tutorial "addaccu": la procédure permettant d'arriver à la génération de l'ASIC est lourde et compliquée. C'est vrai, mais il faut pouvoir maîtriser chacune de ces étapes si on veut être à même de résoudre les problèmes.
Nous vous présentons maintenant un produit de notre cru qui est un module d'automatisation de tout ce qui peut l'être dans les étapes de la synthèse d'un ASIC à partir d'un seul fichier VHDL. Il fonctionne avec les fichiers de technologie 1.0µm. Pour les impatients, voilà ce qu'il faut pour être à même de procéder à la synthèse:
  • Le module d'automatisation lui-même disponible ici :  auto_mod.tgz
  • Un fichier de description VHDL au format vbe. De l'aide est disponible par:
    • Notre exemple pour le diviseur de fréquences
    • Le tutorial addaccu
    • La commande : "man vbe" décrit le language intégralement
    Donnez-lui le nom que vous voulez. Par exemple, pour addaccu, c'est : addaccu.vbe
  • Un fichier de description au format rin. L'aide est disponible de la même manière que précédemment. D'après le nom qu'on a donné au fichier VHDL, ce nom doit être : addaccu.rin
  • Un fichier C de simulation poussée de la description. Idem qu'au dessus. La page de manuel de genpat décrit la syntaxe du fichier C. D'après le nom qu'on a donné au fichier VHDL, le nom du fichier c doit être : test_addaccu.c
Voyez impérativement  les règles de programmation  à respecter pour que tout fonctionne.
Ensuite, procédez à la décompression du fichier "auto_mod.tgz" avec la commande suivante:
gzip -cd auto_mod.tgz | tar xvf -
Cela crée un fichier "Makefile" et un répertoire "perl" contenant 3 scripts Perl, tout ça dans le répertoire courant. Sur linux, il y a une manière de faire les choses plus simplement par:
tar xvzf auto_mod.tgz
Il y a une ligne se trouvant au début du Makefile qu'il vous faudra changer.Il s'agit de la variable CIBLE qui vous indiquera au reste du Makefile sur quels fichiers il doit travailler. On indiquera, par exemple : CIBLE=addaccu .

NB:

Pour les intéressés, gzip est un programme qui compresse ou décompresse un fichier vers un autre. L'option d demande une décompression et l'option c demande que le résultat ne se fasse pas vers un fichier mais vers la sortie standard. Le pipe (|) redirige cette sortie standard vers l'entrée standard du programme qui suit. Ce programme(tar) permet de rassembler tous les fichiers qu'on lui indique en un seul qui les contient tous(sa taille est donc à peu près la somme de la taille de tous ces fichiers) et permet aussi l'opération inverse. Pour lui indiquer des options, on n'a pas besoin du caractère "-" comme pour gzip. L'option f demande que l'opération de tar ait comme flux d'entrée le fichier dont le nom suit. On remarque que ce nom est "-", ce qui signifie par convention que tar prend comme flux d'entrée son entrée standard (c'est-à-dire celui que lui a assigné le pipe: la sortie de gzip). L'option x demande à tar, à partir de cet unique flux, de retrouver et d'écrire dans le répertoire courant tous les fichiers contenus dans ce flux. L'option v permet d'afficher le nom de ces fichiers en question.
Sur linux, l'option z de tar permet d'appeler automatiquement gzip pendant l'extraction des fichiers.
Pour créer vous-même une archive, et cela peut être utile, entrez la ligne suivante:
tar cf - liste_de_fichiers |gzip -9 > archive.tgz
L'option c de tar permet de créer l'archive à partie de la liste de fichiers qu'on lui donne(avec des caractères jokers éventuels). La sortie de tar est traitée par gzip qui compresse cette sortie avec le niveau de compression maximum(avec l'option 9). Le tout est redirigé vers le fichier "archive.tgz". ET VOILA.
Un conseil, archivez ainsi la plupart du temps un seul répertoire(qui contiendra par exemple tout votre travail et peut contenir lui-même tous les fichiers et sous-répertoires que vous voulez). Ainsi, si vous vous trompez dans la décompression et que vous faites la décompression dans un mauvais répertoire, ce n'est pas 100 fichiers que vous aurez à rechercher manuellement dans tout ce repertoire, mais un seul repertoire à retrouver et supprimer. De plus, c'est une bonne habitude pour l'ordre.

 
 
 

Maintenant, il faut respecter le cycle suivant:


Il est évident que vous ne pourrez pas régler tous les problèmes si vous ne maîtrisez pas les étapes de la génération d'un ASIC. Voyez notre tutorial sur addaccu à partir du SOMMAIRE. Lisez aussi les problèmes que l'on a rencontrés et comment on les a réglés.
Maintenant, si vous voulez savoir comment fonctionne le module d'automatisation, et vous en aurez peut-être besoin, cliquez ici  --> .

 



Alliance Web Site © 1997, 2002 ASIM/LIP6/UPMC, page maintained by Czo [Olivier Sirol] , last updated on 26 May 2000.