Changes between Version 13 and Version 14 of ToolsTp4-2010


Ignore:
Timestamp:
Jan 17, 2011, 12:05:05 PM (13 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ToolsTp4-2010

    v13 v14  
    6868    === Yagle et Vasy ===
    6969
    70 L'outil '''yagle''' est capable d'extraire la description VHDL comportementale d'uncircuit au format '''.vhd''' à partir d'une ''netlist '' au format '''.al''' ''si celle-ci est au niveau transistor''.
     70L'outil '''yagle''' est capable d'extraire la description VHDL comportementale d'uncircuit au format '''.vbe''' à partir d'une ''netlist '' au format '''.al''' ''si celle-ci est au niveau transistor''.
    7171
    72 L'outil '''vasy''' permet de convertir une description VHDL comportementale du format '''.vhd''' au format '''.vbe'''.
    73 La commande à utiliser est :
    7472{{{
    7573> export MBK_IN_LO=al
    76 > export YAGLE_BEH_FORMAT=vbe
    77 > yagle -s file1 file2
    78 > vasy -a -I vhd file1 file2
     74> ~encadr/yagle -s file1 file2
    7975}}}
    80 
    81 Avant tout vous devez utiliser la commande :
    82 {{{
    83 > source avt_env.sh
    84 }}}
    85 
    86 avec le fichier [attachment:avt_env.sh avt_env.sh].
    87 Cette commande permet de mettre en place l'environnement nécessaire à l'utilisation de '''yagle'''.
    88 
    89 Les documentations pour cet outil se trouvent en :'''/users/soft/AvtTools2003/doc '''.
    9076
    9177    === Proof ===
     
    174160  * Créer un fichier '''Makefile''' automatisant la procédure de validation.
    175161
    176 = 3 Placement de l'addsubaccu =
    177 
    178   == 3.1 Introduction ==
    179 
    180 Le TP précédent vous a permis d'utiliser le langage '''Stratus''' pour décrire la netlist hiérarchique d'un addaccu ''amélioré''.
    181 
    182 On va maintenant utiliser le langage '''Stratus''' pour introduire des directives de placement dans le fichier .py décrivant la netlist à base de générateurs de la bibliothèque '''dpgen'''.
    183 
    184 En effet, la régularité des générateurs '''dpgen''' a été exploitée en imposant un placement en colonnes : tous les bits de chaque opérateur sont placés en colonne.
    185 Il est donc possible d'imposer un placement relatif des colonnes les unes par rapport aux autres.
    186 
    187   == 3.2 Fonctions de placement ==
    188 
    189 Pour définir les directives de placement, le langage '''Stratus''' fournit les fonctions suivantes :
    190  * Place()
    191  * !PlaceRight(), !PlaceTop(), !PlaceLeft(), !PlaceBottom()
    192  * !SetRefIns()
    193  * !DefAb(), !ResizeAb()
    194 
    195 Vous pouvez consulter le manuel de '''Stratus''' en ligne :
    196 
    197 https://www-asim.lip6.fr/recherche/coriolis/doc/en/html/stratus/index.html
    198 
    199 Toutes ces fonctions doivent être utilisées dans la méthode ''Layout'' associée au bloc considéré.
    200 
    201 Ensuite pour générer le fichier ''.ap'', il faut rajouter l'appel à la méthode ''Layout'' dans le fichier ''.py'' générant le bloc et ne pas oublier de sauvegarder le résultat sur disque (argument '''PHYSICAL''' à l'appel de la méthode '''Save''').
    202 Pour visualiser le placement, vous pouvez, soit utiliser '''graal''' sur le fichier ''.ap'' soit utiliser le visualisateur de Coriolis en ajoutant la méthode '''View''' dans le script avant l'appel de la méthode '''Save'''.
    203 
    204   == 3.3 Travail à faire ==
    205 
    206 Il vous est demandé ici d'effectuer un placement pour l'opérateur ''addsubaccu'' déjà réalisé.
    207 
    208 
    209 = 4 Compte rendu =
     162= 3 Compte rendu =
    210163
    211164Vous rédigerez un compte-rendu de deux pages maximum pour ce TP dans lequel vous expliquerez :