Electronique Numérique Utilisation d'un

Document Sample
Electronique Numérique Utilisation d'un Powered By Docstoc
					ESSI, 1ère année, Electronique, Décembre 1998




                                                            3.    Exercices proposés (première séance de TD)
 Electronique Numérique : Utilisation du
   Programmable Logic Development System                    Traiter un des exercices ci-dessous inspirés        des   TD
                                                            Electronique Numérique selon le temps disponible:
             MaxPlus2 de Altera
                                                            1. Construire un compteur asynchrone modulo 6.
On utilise l’environnement    MAXPLUS du constructeur de
circuits intégrés ALTERA pendant deux séances de TD. On     2. Construire le compteur synchrone modulo 5 du T.D. 5 à
simule les solutions des T.D. Electronique Numérique.          l’aide de bascules JK.

1.       Lancement            de MaxPlus:                   3. Simuler le fonctionnement du compteur multifonctions
                                                               7493 vu dans le T.D. 5 cablé en compteur modulo 10.
On lance Maxplus2 dans le menu Démarrer. Pour avoir accès   4. Etudier du registre à décalage 7495 cablé en mode
à toutes les fonctionnalités, il faut brancher un              Parallel Input Serial Output. Faire une simulation qui
« dongle » sur la sortie parallèle du Pentium et donner        mette en oeuvre un chargement parallèle, puis le
le numéro/mot de passe (menu Options/Authorization Code).      décalage vers la droite, de la manière suivante : on
Les fonctions principales(vérification, édition, compila-      charge le mot de 4 bits ‘1101’ en parallèle, puis on
tion, simulation, visualisation) se trouvent dans le menu      décale vers la droite en maintenant Serial Input au
MaxPlusII en haut à gauche.                                    niveau logique zéro. Etendre à un registre 8 bits
Au départ, dans le menu File, choisir un nom de Projet,        fonctionnant de cette manière.
puis ouvrir ou créer des fichiers avec File/Open ou
File/New (on travaillera dans un répertoire propre créé     5. Simuler la solution du « distributeur de boissons » du
sur le compte Unix Z). Ils seront intégrés au projet lors      T.D. 4 dans l’un des deux cas suivants:
du Save ou Save as. Pour un projet de nom elecnum, il y a        on utilise le décodeur 74 138
principalement deux fichiers à créer pour simuler un             le multiplexeur 74 153 est utilisé
circuit:   elecnum.gdf   (logigramme),    et  elecnum.scf
(signaux logiques d’entrée et de sortie).
                                                            Langage AHDL : Dans le répertoire AHDL de MAXPLUS, se
                                                            trouve une solution du problème du décodeur 7 segments
2.       Exemple d’introduction :                           hexadécimal. A la différence de ce qui précède, cette
                                                            solution est décrite par programme en langage AHDL.
On commencera par décrire la fonction ou exclusif           Recopier le fichier dans votre répertoire, créer des
améliorée (deux entrées A et B et 5 sorties) décrite dans   entrées afin de simuler le décodeur. Adapter au problème
le polycopié « Notice d’utilisation de MaxPlus II », afin   de l’afficheur 7 segments décimal traité dans le T.D. 4.
de se familiariser avec les étapes de la conception, et
les menus, options et commandes de MaxPlus.
ESSI, 1ère année, Electronique, Décembre 1998


                                                            des fils doivent être étiquetés a7, a6, … et a0. S’ils
4.       Seconde Séance                                     aboutissent à une entrée ou une sortie, les PIN NAMES
                                                            doivent être identiques.
                                                            R[0..7] crée l’octet R0R1R2R3R4R5R6R7.
Construire l’additionneur 8 bits série étudié dans le TD
6 dont un schéma fonctionnel est joint ci-dessous, en
utilisant les composants disponibles dans MaxPlus :

On pourra étudier d’abord dans un premier Project la
cellule additionneur 1 bit dotée de deux sorties AplusB
et CY et de trois entrées A, B et CY-1, pui créer un
symbole supplémentaire add1bit dans les bibliothèques de
MaxPlus.

Deuxièmement, créer un Project add8bit mettant en œuvre
le schéma ci-dessous : on utilisera deux registres 7495
(vu en TD) pour créer un registre 8 bits à chargement
parallèle et lecture en série (mode PISO). Utiliser
l’aide pour avoir des informations sur 7495.
Trouver une bascule D dans la bibliothèque des
primitives, est-elle sensible aux fronts montants o
descendants de l’horloge ?

Remarques :
1. imposer un niveau avec MaxPlus peut se faire en
   utilisant les symboles « vcc » et « gnd » de la
   bibliothèque prim.
2. On trouvera des additionneurs dans les circuits 7480
   et 7482 par exemple, mais ils sont mal adaptés à notre
   problème.
3. pour faciliter la visualisation simultanée de
   plusieurs signaux, et rendre le logigramme plus
   lisible, on peut créer un bus, c’est à dire grouper
   plusieurs signaux logiques. Pour cela, utiliser la
   fonction Enter Node/Bus Name de MaxPlus pour associer
   à un fil des signaux ou des groupes de signaux :
   a[7..0] crée par convention l’octet a7 a6 a5 a4 a3 a2
   a1 a0, le fil associé doit être épais (Line Style,
   bouton droit de la souris). Ailleurs dans le schéma,
ESSI, 1ère année, Electronique, Décembre 1998




                                      Additionneur série

Principe :

   On fait défiler en série les bits des deux registres à décalage 8 bits sur les entrées d’une
cellule additionneur 1 bit.
   La sortie de la cellule est appliquée sur l’un des registres à décalage et le résultat est
lisible en parallèle après 8 décalages.
   Il faut gérer la valeur de la retenue CY qui vaut 0 au départ et donne le débordement OVF
à la fin de l’addition après 8 fronts descendants d’horloge.
   Les registres précédents peuvent être utilisés ; on fait un registre 8 bits à chargement
parallèle et à décalage vers la droite, en cascadant deux registres 7495 précédents :
l’entrée horloge CLOCK attaque CLK1 et CLK2 en parallèle, Parallel Operand Load est
l’entrée Mode Control, SI est l’entrée Serial.
                                                                                                Parallel operand
                                                                                                load             a7 a6 a5 a4 ...         a0
Cellule additionneur 1 bit avec retenue                                                                                                                                  Cellule additionneur
  A        B       CY-1              A+B           CY                                                                                                                     1 bit avec retenue
 0       0      0                 0               0                                                                                                Serial output
                                                                                                                                                                           A       A+B
 0       0      1                 1               0                                           clock                  SHIFT RIGHT
 0       1      0                 1               0                                                                  PARALLEL LOAD                                         B         CY
 0       1      1                 0               1
                                                                                                            SI                                                             CY-1
 1       0      0                 1               0                                                         0
 1       0      1                 0               1                                                                b7 b6           ...        b0
 1       1      0                 0               1
 1       1      1                 1               1                                                                                                                               Q D

                                                                                                                     SHIFT RIGHT
 ( A  B)  A  B  CY1                                                                                            PARALLEL LOAD                                                RAZ
     CY  A.B  B.CY1  A.CY1                                                                                                                                    OVF
                                                                                                       SI

                                                                                                                     r7 r6     ...            r0