Changes between Version 33 and Version 34 of ToolsCourseTp4


Ignore:
Timestamp:
Sep 22, 2008, 2:23:10 PM (16 years ago)
Author:
cobell
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ToolsCourseTp4

    v33 v34  
    1717= 1 Exemple de description avec Stratus =
    1818
    19 Considérons le l'aditionneur accumulateur suivant :
     19Considérons le circuit suivant :
     20
     21[[Image(add1.png,nolink)]]
    2022
    2123Voici la structure du chemin de données correspondante :
     24
    2225[[Image(datap.jpg,nolink)]]
    2326
     27Chacune des portes occupe une colonne, une colonne permettant de traiter un ensemble de bits pour un même opérateur.
     28La première ligne représente le bit 3, la dernière le bit 0.
    2429
    25 Chacune des portes occupe une colonne, une colonne permettant de traiter un ensemble
    26 de bits pour un même opérateur.
    27 
    28 La première ligne représente le bit 3, la dernière le bit 0.
    29 sa description en '''STRATUS''' peut etre obtenue à l'aide de la documentation
    30 
    31 https://www-asim.lip6.fr/recherche/coriolis/doc/en/html/stratus/index.html
    32 
    33 
    34 
    35 Pour  connaitre les générateurs de colonne dont vous disposez consultez la documentation de '''DPGEN'''
    36 
    37 https://www-asim.lip6.fr/recherche/coriolis/doc/en/html/dpgen/index.html
    38 
    39 
    40 Le fichier Stratus correspondant est le suivant :
     30Le fichier '''Stratus''' correspondant est le suivant :
    4131
    4232{{{
    43 
    44 
    4533#!/usr/bin/env python
    4634from stratus import *
     
    10896}}}
    10997
     98Comme vous pouvez le voir, il n'a pas été nécessaire de générer ''à la main'' les différents blocs de ce circuit, ceux ci sont fournis par la bibliothèque ''DP_SXLIB''.
     99Il suffit alors de les générer (fonction '''Generate''' comme montré dans le TP précédent).
    110100
     101Pour  connaitre les générateurs de colonne dont vous disposez, consultez la documentation fournie :
    111102
    112 Ce premier fichier définit votre circuit, enregistrez-le sous le nom '''"circuit.py"'''. Il faut
    113 maintenant créer un autre fichier pour instancier votre circuit :
    114 {{{
    115 #!/usr/bin/env python
    116 from stratus import *
    117 from circuit import circuit
    118 # creation du circuit
    119 mon_circuit = circuit ( "mon_circuit" )
    120 # creation de l’interface
    121 mon_circuit.Interface ()
    122 # creation de la netlist
    123 mon_circuit.Netlist ()
    124 # sauver les fichiers mon_circuit.vst
    125 mon_circuit.Save ()
     103https://www-asim.lip6.fr/recherche/coriolis/doc/en/html/dpgen/index.html
    126104
    127 }}}
    128 
    129 Enregistrez-le sous le nom '''"test.py"'''. Changez les droits du fichier afin de le rerendre
    130 executable :
    131 
    132 {{{
    133 > chmod +x test.py
    134 }}}
    135 
    136 Puis executez le fichier :
    137 {{{
    138 >./test.py
    139 }}}
    140 
    141 Si tout se passe bien, vous obtenez le fichier "mon_circuit.vst", dans le cas contraire,
    142 et mises à part des erreurs de syntaxe, il se peut que votre environnement soit mal
    143 configuré pour Stratus.
    144 
    145 Consultez la doc au format html
     105Consultez également la documentation de '''Stratus''' en cas de besoin :
    146106
    147107https://www-asim.lip6.fr/recherche/coriolis/doc/en/html/stratus/index.html
    148 afin de vous renseigner sur les variables d'environnement à positionner.
    149 
    150 
    151 Note : Stratus étant issu du langage Python, il faut apporter une grande importance à l'indentation.
    152 
    153 Un bon conseil, n'utilisez pas de tabulations (ou alors configurez
    154 vos éditeurs pour qu'ils transforment automatiquement les tabulations en espaces).
    155 
    156 
    157108
    158109= 2 Description du chemin de données  dans l'AM2901 =
     110
    159111Le chemin de données de l'Am2901 peut être schématisé par la figure ci-dessous
    160112