Changes between Version 17 and Version 18 of MethoCourseTp2


Ignore:
Timestamp:
Apr 8, 2007, 12:20:36 AM (17 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • MethoCourseTp2

    v17 v18  
    1919
    2020Un deuxième objectif de ce TP2 est d'introduire le langage de description de stimuli '''genpat'''.
     21
     22Commencez par créer un répertoire de travail ''tp2'' pour archiver les fichiers de ce TP.
    2123
    2224= A) Génération procédurale des stimuli =
     
    7274
    7375On va maintenant décrire le composant ''addaccu'' comme l'instanciation de trois blocs fonctionnels : le bloc '''mux''', le bloc ''' adder''', et le bloc '''accu''', dont les interfaces et les comportements sont prédéfinis.
     76
     77[[Image(schema_addaccu.png, nolink)]]
     78
    7479 * Le bloc [wiki:AdderVbe adder] est un additionneur 4 bits, avec report entrant et report sotant.
    7580 * Le bloc [wiki:MuxVbe mux] est un multiplexeur 4 bits qui sélectionne un mot parmi 2.
    7681 * Le bloc [wiki:AccuVbe accu] est un registre 4 bits à échantillonnage sur front montant de CK.
    7782
    78 [[Image(schema_addaccu.png, nolink)]]
     83Vous pouvez consulter le modèle comportemental data-flow de chacun de ces blocs en cliquant
     84sur le nom du bloc.
    7985
    80 Puisqu'il s'agit d'une description structurelle, le fichier VHDL comportera l'extension ''.vst'' (Vhdl STructurel)
     86Vous devez maintenant écrire en VHDL la description structurelle du composant ''addaccu''. 
     87Le fichier VHDL comportera l'extension ''.vst'' (Vhdl STructurel)
    8188
    8289Bien que le langage VHDL permette en principe de décrire un composant matériel en "mélangeant"
    83 dans une même description des assignations concurrentes et des instanciations, la chaîne de CAO ''ALLIANCE'' n'utilise pas cette possibilité, et respecte strictement la règle suivante :
     90dans une même description des assignations concurrentes et des instanciations, le simulateur
     91'''asimut''' impose la règle suivante:
    8492 * Une description comportementale data-flow (de type .vbe) ne contient que des assignations concurrentes.
    8593 * Une description structurelleIle (de type .vst) ne contient que des instanciations d'autres composants.
    8694
    87 Pour écrire le fichier ''addaccu.vst'', Vous avez intérêt à consulter le man du format .vst :
     95La construction VHDL qui permet d'instancier un composant dans un autre est la construction "PORT MAP",
     96mais pour plus de précisions, vous avez intérêt à consulter le man du format .vst :
    8897{{{
    8998>man vst
    9099}}}
    91100
    92 = C) Simulation =
     101= C) Simulation  =
    93102
    94103Le simulateur '''asimut''', comme tous les simulateurs VHDL est capable de simuler aussi bien une description
     
    96105a condition que les modèles comportementaux des blocs instanciés soient disponibles.
    97106
    98 Il faut donc créer dans le répertoire ''tp2'' les trois fichiers ''adder.vbe'', ''mux.vbe'', et ''accu.vbe''.
    99 Vous pouvez pour cela importer les modèles fournis ci-dessus par un simple copier/coller.
     107Vous devez donc créer dans le répertoire ''tp2'' les trois fichiers ''adder.vbe'', ''mux.vbe'', et ''accu.vbe''.
     108Vous pouvez pour cela importer les modèles fournis ci-dessus par simple copier/coller.
    100109
    101110Dans le cas d'une description structurelle, certains blocs instanciés peuvent être eux-mêmes décrits de façon structurelle.
    102 On parle alors de description hiérarchique "multi-niveaux", et le nombre de niveaux peut être quelconque. Il faut donc  indiquer  au simulateur quels sont les blocs "terminaux", pour lesquels il existe une description comportementale.
     111On parle alors de description hiérarchique "multi-niveaux", et le nombre de niveaux peut être quelconque. Il faut donc  indiquer 
     112au simulateur quels sont les blocs "terminaux", pour lesquels il existe une description comportementale.
    103113Le simulateur '''asimut''' trouve cette information dans le fichier ''CATAL''.
    104114Ce fichier est un fichier texte contenant les noms des blocs terminaux (un composant par ligne), suivi de la lettre C :