EN103 : électronique numérique Logique combinatoire et séquentielle Semestre 5
EN103 : électronique numérique Logique combinatoire et séquentielle Semestre 5 Dépt. Electronique Ed. septembre 2017 Equipe pédagogique : BORNAT Yannick DALLET Dominique DELOMIER Yann JEGO Christophe LALEVEE André LEBRET Valéry MORIZET Guy Organisation Énoncés TD et TP CAO Énoncé du projet Présentation du langage VHDL * 3 TABLE DES MATIERES ORGANISATION .............................................................................................................................. 5 SEANCES DE COURS ............................................................................................................................. 5 SEANCES DE TD ET TP CAO ............................................................................................................... 6 SEANCES DE PROJET ............................................................................................................................ 7 ÉNONCES TD ET TP CAO .............................................................................................................. 9 SEANCE 1 : SYNTHESE DE FONCTIONS COMBINATOIRES ...................................................................... 9 SEANCE 2 : INITIATION AU LANGAGE DE CONCEPTION MATERIEL VHDL .......................................... 15 SEANCE 3 : LES BASCULES ................................................................................................................ 18 SEANCE 4 : FONCTIONS SEQUENTIELLES COMPLEXES ........................................................................ 23 SEANCE 5 : LE COMPTEUR A MODULO VARIABLE ............................................................................... 25 SEANCE 6 : SYNTHESE D’UNE MACHINE A ETATS FINIS ...................................................................... 27 ÉNONCE DU PROJET ................................................................................................................... 30 PRINCIPE DE FONCTIONNEMENT DU PROJET MONTE CHARGE ........................................................... 31 CARTE FPGA BASYS3 .................................................................................................................... 32 CAHIER DES CHARGES ....................................................................................................................... 34 PRESENTATION DU LANGAGE VHDL .................................................................................... 39 ORGANISATION FONCTIONNELLE DE DEVELOPPEMENT D'UN CIRCUIT PROGRAMMABLE .................... 41 STRUCTURE D'UNE DESCRIPTION VHDL ........................................................................................... 42 LE MODE COMBINATOIRE .................................................................................................................. 46 LE MODE SEQUENTIEL ....................................................................................................................... 51 LA DESCRIPTION STRUCTURELLE EN VDHL ..................................................................................... 57 BIBLIOGRAPHIE ................................................................................................................................. 60 DATA SHEET POUR LA SEANCE 5 DE TD .............................................................................. 61 DATA SHEET DU CIRCUIT 74 HC163 ................................................................................................ 62 DATA SHEET DU CIRCUIT 74 HC02 .................................................................................................. 73 TUTORIAL VIVADO POUR LE TP N°1 ..................................................................................... 75 4 5 ORGANISATION EN102 & EN103 Année 2016-2017 Déroulement de l’enseignement en 3 phases : 5 cours de 1h20 volume : 6h40 6 séances TD et TP CAO de 4h volume : 24h00 4 séances projet de 4h volume : 16h00 I) 5 séances de cours en promotion entière Cours N°1/5 08 septembre (semaine 36) : Cours : représentation des nombres & algèbre de Boole ------------------------------------------------------------------------------------------------- Cours N°2/5 14 septembre (semaine 37) : Cours : fonctions combinatoires ------------------------------------------------------------------------------------------------- Cours N°3/5 19 septembre (semaine 38) : Cours : éléments de base en logique séquentiel ------------------------------------------------------------------------------------------------- Cours N°4/5 22 septembre (semaine 38) : Cours : compteurs ------------------------------------------------------------------------------------------------- Cours N°5/5 25 septembre (semaine 39) : Cours : fonctions séquentielles complexes ------------------------------------------------------------------------------------------------- (1h20) (1h20) (1h20) (1h20) (1h20) 6 II) 6 séances TD/TP en 1/8 de promotion ------------------------------------------------------------------------------------------------ SEANCE N°1 semaine 40 Thème : synthèse de fonctions combinatoires initiation à l’environnement VIVADO ------------------------------------------------------------------------------------------------- SEANCE N°2 semaine 41 Thème : initiation au langage de conception matériel VHDL ------------------------------------------------------------------------------------------------- SEANCE N°3 semaine 42 Thème : les bascules ------------------------------------------------------------------------------------------------- SEANCE N°4 semaine 43 Thème : fonctions séquentielles complexes ------------------------------------------------------------------------------------------------- SEANCE N°5 semaine 45 Thème : le compteur à modulo variable ------------------------------------------------------------------------------------------------- SEANCE N°6 semaines 46 Thème : contrôleur d’un bus ------------------------------------------------------------------------------------------------- (2H00) TD (2H00) TP (2H00) TD (2H00) TP (2H00) TD (2H00) TP (4H00) TP (2H00) TD (2H00) TP (2H00) TD (2H00) TP 7 III) 4 séances de projet en 1/8 de promotion Sujet du projet : Monte Charge ------------------------------------------------------------------------------------------------- SEANCE N°1 semaines 47 : Présentation du projet Monte Charge Découpe architecturale de la fonctionnalité en blocs. Découpage ------------------------------------------------------------------------------------------------- SEANCE N°2 semaines 48 : Description des différents blocs du projet en VHDL Simulation de chaque bloc avec ISIM ------------------------------------------------------------------------------------------------- SEANCE N° 3 semaines 49 : Description des différents blocs du projet en VHDL Simulation de chaque bloc avec ISIM ------------------------------------------------------------------------------------------------- SEANCE N°4 semaines 50 : Assemblage final des différents blocs constituant l’architecture globale Placement et routage de l’architecture (observation du schéma obtenu et des ressources utilisées) Programmation du circuit et validation par prototypage de la fonctionnalité. ------------------------------------------------------------------------------------------------- 8 9 Thème de la séance 1 : synthèse de fonctions combinatoires – Partie TD – I) Synthèse d'un circuit combinatoire On désire réaliser un système logique tel que la sortie S passe à 1 lorsque le nombre N de 4 bits présent en entrée est compris entre 3 et 9. 1) Donner la (ou les) 1ère et 2ème forme normale de S. 2) Reprendre la même question si l’on suppose maintenant que N est codé en BCD. 3) Etablir le schéma technologique le plus simple avec des portes NOR et/ou NAND. II) Synthèse avec des opérateurs de multiplexage Question 2.1 : Caractérisation d’un multiplexeur 2 vers 1 (MUX2:1) a-) : Combien de bits faut-il pour assurer l’adressage d’un MUX2:1 ? b-) : Donner la table de vérité d’un MUX2:1 c-) : Donner l’expression logique de la sortie d’un MUX2:1 à partir de la table de vérité et en appliquant une simplification à l’aide d’un tableau de Karnaugh. d-) : En déduire un logigramme reposant sur les éléments logiques suivants : Inverseur, OU logique, ET logique A (MSB) B C D S S = 1 si 9 3 ≤ ≤N N 10 e-) : Nous supposons que les temps de propagation des différents éléments logiques sont : Inverseur : 0.5 ns OU logique : 2 ns ET logique : 2 ns Quel est le temps de propagation de ce multiplexeur 2 vers 1 ? Question 2.2 : Synthèse d’une fonction logique à l’aide d’une structure de multiplexage a-) : Faire la synthèse à l’aide d’un multiplexeur 4 vers 1 de la fonction logique S correspondant à la table de vérité suivante : A B S 0 0 0 0 1 1 1 0 1 1 1 1 Les 0 et 1 logiques seront respectivement modélisés par la masse (GND) et la tension d’alimentation du circuit (VDD) comme expliqué en cours (Cours 2, Transparent n° 23). b-) : Faire la synthèse à l’aide d’un multiplexeur 2 vers 1 de la même fonction logique S. III) Synthèse d’un comparateur (optionnel en fonction du temps) On souhaite réaliser un comparateur de deux mots de n bits (figure 1) A A A A n i = ( ) 1 et B B B B n i = ( ) 1 V Sn In En A n B n Figure 1 11 Fonctionnement du comparateur : − Si l'entrée de validation (V) vaut 0, alors les trois sorties (Egal : En), (Supérieur : Sn ) et (Inférieur : In ) sont égales à 0. − Si l'entrée de validation (V) vaut 1, alors : • Sn = 1 ssi A B > • In = 1 ssi A B < • En = 1 ssi A B = Question 3.1 Dans un premier temps, on souhaite réaliser un comparateur élémentaire de deux mots de 1 bit (n = 1). Etablir les équations des sorties S1, I1, et E1 en fonction des entrées A1, B1, et V. Question 3.2 Dessiner le schéma de ce comparateur à partir d’opérateurs élémentaires (INV, NAND, AND, NOR, OR à 2, 3 ou 4 entrées). Question 3.3 On souhaite maintenant étendre l'amplitude du comparateur à deux mots de 2 bits. Après avoir établi les équations de S2 , I2 , et E2 en fonction des bits A2 , A1, B2 , B1, et de l'entrée de validation V, concevoir le schéma de ce comparateur en associant des comparateurs élémentaires et un minimum d’opérateurs (NAND, AND, NOR, OR à 2, 3 ou 4 entrées). Question 3.4 A partir des équations trouvées précédemment, établir les relations de récurrence ci-dessous : S S A B V I I A B V E E A B V n n n n n n n n n n n n = = = − − − f( , , , ) g( , , , ) h( , , , ) 1 1 1 12 – Partie TP CAO – Initiation à l’environnement VIVADO qui sera utilisé au cours du module EN103 s’appuyant sur un tutorial de chez Xilinx VIVADO de Xilinx ISIM de Xilinx 13 1-) Initiation à l’environnement VIVADO Dans le cadre de ce TP, une initiation à l’environnement VIVADO est proposée. Pour ce faire, prière de vous reporter au tutorial fourni à la page 61 de ce document 2-) Simulation à l’aide de fichiers de type Tcl Une simulation dans l’environnement VIVADO de Xilinx d’une architecture décrite à l’aide du langage VHDL implique la définition d’un fichier de test (testbench en anglais) de type VHDL ou d’un fichier force de type Tcl (Tool Command Language). Au cours du tutorial, une simulation à partir d’un fichier de test (testbench en anglais) de type VHDL est proposée. Afin de simplifier cette étape, nous proposons dans le cadre du module EN103 de plutôt utiliser des fichiers force de type Tcl (Tool Command Language). Un exemple de fichier test (testbench.tcl) est décrit ci-dessous : #Initialisation de l’affichage des courbes restart remove_forces -all # Stimulation du signal swt add_force swt –radix dec {0 0ns} {1 10ns} {2 20ns} {3 30ns} {4 40ns} {5 50ns} {6 60ns} {7 70ns} {8 80ns} {16 90ns} {32 100ns} {64 110ns} {128 120ns} {255 130ns} -repeat 200ns # Lancement de la simulation pour t=400 ns run 400 ns Ce fichier permet de simuler l’architecture décrite dans le tutorial précédent. Simulation de l’architecture lab1 à l’aide d’un fichier de type Tcl: 1-) Décrire le fichier testbench.tcl et le positionner sous la racine du projet (par exemple : c:\Digilent/Basys3Workshop/2014_4_artix7_sources/lab1) 1-) Dans l’environnement uploads/Ingenierie_Lourd/ formation-vhdl-fpga-cours-5 1 .pdf
Documents similaires
-
10
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Sep 03, 2021
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 2.8867MB