TP FPGA (1 ère partie)

Documents pareils
SIN-FPGA DESCRIPTION PAR SCHEMA

Manipulations du laboratoire

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

IFT1215 Introduction aux systèmes informatiques

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Le langage VHDL. Eduardo Sanchez EPFL

QUESTION 1 {2 points}

ASR1 TD7 : Un microprocesseur RISC 16 bits

VIII- Circuits séquentiels. Mémoires

T. BLOTIN Lycée Paul-Eluard SAINT-DENIS

Conception Systèmes numériques VHDL et synthèse automatique des circuits

Architecture des ordinateurs

Conception Systèmes numériques VHDL et synthèse automatique des circuits

CONFIGURATION DE L AUTOMATE SIEMENS

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Conception de circuits numériques et architecture des ordinateurs

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Représentation des Nombres

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Fiche technique CPU 314SC/DPM (314-6CG13)

Relais d'arrêt d'urgence, protecteurs mobiles

ELP 304 : Électronique Numérique. Cours 1 Introduction

! analyse du fonctionnement

REALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3.

Microprocesseur + Logiciel

Flowcode - Mode d'emploi

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Transmission d informations sur le réseau électrique

TP Modulation Démodulation BPSK

PIC EVAL Dev Board PIC18F97J60

Cours Informatique 1. Monsieur SADOUNI Salheddine

Les fonctions logiques

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Le langage C. Séance n 4

Quoi de neuf en LabVIEW FPGA 2010?

Relais d'arrêt d'urgence, protecteurs mobiles

TABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3 & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3. SIMULATION 7 " - 4.

CONVERTISSEURS NA ET AN

Conversion d un entier. Méthode par soustraction

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

NOTICE D' UTILISATION CAMWORKS FRAISAGE. Luc Vallée Lycée Blaise Pascal Segré

Cours 1 : Qu est-ce que la programmation?

I- Définitions des signaux.

V- Manipulations de nombres en binaire

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Installation et prise en main

Travaux pratiques Détermination de la capacité de stockage des données

Chapitre VI- La validation de la composition.

Carte Relais GSM (Manuel Utilisateur)

GE Security. KILSEN série KSA700 Centrale de détection et d alarme Incendie analogique adressable. Manuel d utilisation

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Organisation des Ordinateurs

MANUEL D INSTRUCTION

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

SoMachine. Solution logicielle pour votre architecture Machine Atelier de découverte. SoMachine

IV- Comment fonctionne un ordinateur?

Informatique Générale

Université de La Rochelle. Réseaux TD n 6

UltraBackup NetStation 4. Guide de démarrage rapide

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

1 Démarrer L écran Isis La boite à outils Mode principal Mode gadget Mode graphique...

Architecture : Circuits numériques et éléments d architecture

Préparer un état de l art

IUT BREST UN LOGICIEL SCADA : PC VUE 2010 DEP.GMP

Conception de circuits numériques et architecture des ordinateurs

WIFI-DMX INTERFACE AUTONOME V 1.5.0

Transmissions série et parallèle

Acquisition et conditionnement de l information Les capteurs

domovea Portier tebis

MEGA ITSM Accelerator. Guide de Démarrage

BIRT (Business Intelligence and Reporting Tools)

Série D65/D75/D72 Afficheurs digitaux modulaires

crm+ capteurs à ultrasons Extrait de notre catalogue en ligne : Mise à jour :

WinTask x64 Le Planificateur de tâches sous Windows 7 64 bits, Windows 8/ bits, Windows 2008 R2 et Windows bits

GPA770 Microélectronique appliquée Exercices série A

Modules d automatismes simples

COMMANDER A DISTANCE LE ROBOT-PONG ETUDE DE LA TELECOMMANDE (2 nde PARTIE)

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

Projet M1 Année scolaire 2013/2014

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Notice d'utilisation Afficheur multifonctions et système d'évaluation FX 360. Mode/Enter

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Représentation d un entier en base b

Débuter avec PsoC ou PsoC niveau 0

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

Système binaire. Algèbre booléenne

constitue le point d'entrée pour accéder au paramétrage de votre poste.

IFT2880 Organisation des ordinateurs et systèmes

Chapitre 4 : Les mémoires

Contrôleur de communications réseau. Guide de configuration rapide DN

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

DATALOGGERS SEFRAM LOG1601 et LOG1620

SUR MODULE CAMÉRA C38A (OV7620)

Transcription:

B. HAJJI (1 ère partie) GE4 TP FPGA (1 ère partie) Un compte-rendu devra être fourni à l issue de la seconde séance de TP Exercice1 : Le but de ce premier exercice est de manipuler les E/S sorties classiques de la carte DE1. Dans un premier temps, nous allons nous charger de manipuler les boutons et les LEDs présentes sur la carte. La figure 1 montre un petit programme VHDL permettant d'afficher l'état des boutons sur les LEDs associées. Suivre les étapes suivantes : 1. Créer un nouveau projet Quartus II pour votre circuit. Sélectionner le FPGA Cyclone II EP2C70F896C6 comme étant le circuit cible. 2. Créer une entité VHDL avec le code fourni à la figure 1. 3. Réaliser l'affectation des E/S aux broches du FPGA. Pour se faire, il suffit d'importer le fichier suivant : DE1_pin_assignement.csv. Ce fichier contient la localisation de toutes les broches du FPGA et leur connexion aux éléments de la carte. Attention, les noms donnés dans votre fichier doivent exactement être identiques aux noms des broches donnés dans le fichier.csv LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY top is port( SW: in STD_LOGIC_VECTOR(2 downto 0); LEDR: out STD_LOGIC_VECTOR(2 downto 0)); END top; architecture une OF top IS BEGIN LEDR<=SW ; END une ; TP FPGA Page 1

B. HAJJI (1 ère partie) GE4 Exercice 2 : Concevoir l architecture d un composant seven_seg décrit en VHDL permettant de générer les sorties a,b,c,d,e,f,g directement reliées aux entrées d un afficheur. Les chiffres affichés sur l afficheur seront exprimés en BCD (de 0 à 9). Ce composant possèdera les E/S suivantes : entity seven_seg is port( INP: in std_logic_vector(3 downto 0); HEX: out std_logic_vector(6 downto 0)); end seven_seg; Tester ce module en reliant les 4 entrées INP aux boutons présents sur la carte et valider le fonctionnement de votre décodeur. 1. A l'aide de l'outil de QuartusII permettant de visualiser la netlist générée durant l'étape de synthèse, décrivez la manière dont le décodeur a été implantée dans le FPGA. 2. Quelles sont les ressources nécessaires à la mise en oeuvre d'un tel décodeur? Exercice 3 : La figure ci-dessus représente un décodeur 7 segments avec 3 entrées c1, c2 et c3. Le décodeur à 7 sorties qui sont utilisés pour afficher un caractère sur un afficheur 7 segments. La table ci-dessus liste les caractères qui doivent être affiché pour les différentes valeurs de c1,c2 et c3. Les 7 segments de l afficheur sont identifiés par les indices 0 à 6. Chaque segment est allumé lorsque on applique la valeur logique 0. 1- Ecrire le code VHDL de ce décodeur dans un nouveau fichier (char_7seg.vhd). Décrivez ce multiplexeur avec une architecture comportementale en utilisant l affectation sélective. TP FPGA Page 2

B. HAJJI (1 ère partie) GE4 2- Rajoutez la sortie HEX0 sur l entité du composant top (top.vhd) qui représente la sortie qui va sur les 7 segments de l afficheur : HEX0 : OUT STD LOGIC VECTOR(0 TO 6); 3- Instancier ce décodeur dans le composant top (top.vhd). Connectez les entrées C1-3 avec Sw2-0 et connectez les sorties de ce décodeur avec HEX0. 4- Compilez le projet et chargez le circuit dans le FPGA. Tester le fonctionnement de ce décodeur en changeant l état des Switch et en observant l afficheur 7 segments. Exercice 4 : Avec le multiplexeur et le décodeur, le circuit ci-dessus permet d afficher un des caractères H, E, L, O et rien sur l afficheur 7 segments. Le code de chaque caractère est sélectionné en modifiant l état des Switchs SW14-0 et le caractère à afficher et choisit avec les Switchs SW17-15. Pour cet exercice vous devez afficher le mot HELLO sur 5 afficheurs 7 segments et faire défiler le message avec les switchs SW17-15 comme le montre le tableau ci-dessous : Pour réaliser cette fonction vous devez instancier 5 multiplexeurs et 5 décodeurs et réfléchir aux différentes connectiques à faire entre les Switchs et les entrées des multiplexeurs. 1- Rajoutez les sorties des 4 autres afficheurs 7 segments sur l entité du composant top (top.vhd) qui s appelle respectivement HEX1, HEX2, HEx3 et HEX4 : HEX0,HEX1,HEX2,HEX3,HEX4 : OUT STD LOGIC VECTOR(0 TO 6); 2- Instancier les différents composants nécessaires pour afficher le mot HELLO sur 5 afficheurs et permettre de faire défiler le mot avec les Switch SW17-15 TP FPGA Page 3

B. HAJJI (1 ère partie) GE4 comme le montre le tableau cidessus. Pour cela connectez les entrées de SW17-15 avec l entrée de sélection de tout les multiplexeurs et connectez les entrées SW14-0 avec les entrées de tous les multiplexeurs. 3- Compilez le projet et chargez le circuit dans le FPGA. Tester le fonctionnement de ce circuit en configurant correctement le code de chaque caractères sur les Switchs SW14-0 et vérifiez le défilement du mot HELLO avec les Switch SW17-15. Exercice 5 : Maintenant on désire faire défiler le mot HELLO sur les 7 afficheurs comme le montre la table cidessus. Modifiez le code de l exercice 4 pour obtenir cette nouvelle fonction et testez sur la carte DE2. TP FPGA Page 4

B. HAJJI (2 ère partie) GE4 TP FPGA (2 ère partie) Un compte-rendu devra être fourni à l issue de la seconde séance de TP Exercice 1 : Multiplexeur En électronique, un multiplexeur (ou MUX ) est un dispositif qui choisit un des signaux d'entrée (analogiques ou digitaux) et le dirige dans une seule ligne de sortie. Un multiplexeur permet à plusieurs signaux de partager un seul dispositif coûteux ou une autre ressource (par exemple un convertisseur analogique-digital ou une ligne de communication) plutôt que d'utiliser un dispositif par signal d'entrée. La figure ci-dessous montre le circuit d un multiplexeur 1 bit 2 vers 1 avec une entrée de sélection sel. Si sel = 0 la sortie out du multiplexeur égale à l entrée A, et sel =1 alors la sortie égale à B. Figure 1 : Multiplexeur 1 bit 2 vers 1 1- Ecrire le code VHDL du multiplexeur 1 bit 2 vers 1 dans un nouveau fichier (mux_1bit_2v1.vhd). Décrivez ce multiplexeur avec une architecture comportementale en utilisant l affectation sélective. 2- Compilez le projet et chargez le circuit dans le FPGA pour tester le fonctionnement du multiplexeur. On pourra connecter les entrées du multiplexeur aux Switch et la sortie au led. En connectant plusieurs multiplexeurs 2 vers 1", on peut réaliser des circuits plus complexes. La figure 2 montre un multiplexeur 8 bits 2 vers 1, la figure 3 montre un multiplexeur 5 vers 1 et la figure 4, un multiplexeur 3 bits de 5 vers. Figure 2 : Multiplexeur 8 bits 2 vers 1 TP FPGA Page 1

B. HAJJI (2 ère partie) GE4 Figure 3 : Multiplexeur 3 bits 5 vers 1 3- Ecrire le code VHDL du multiplexeur 3 bits 5 vers 1 dans un nouveau fichier (mux_3bit_5v1.vhd). Décrivez ce multiplexeur avec une architecture comportementale en utilisant l affectation sélective. 4- Compilez le projet et chargez le circuit dans le FPGA pour tester le fonctionnement du multiplexeur. On pourra connecter les entrées du multiplexeur aux Switch et la sortie au led. Exercice 2 : Comparateur Un comparateur binaire est un dispositif qui accepte deux mots binaires de 4 bits sous forme parallèle A et B et qui possède des sorties binaires indiquant la relation d ordre entre ces mots : égalité, supériorité ou infériorité. 1- Combien de signaux de sortie sont-ils nécessaires? 2- Faire le schéma synoptique du système. 3- Coder un comparateur binaire à mots de 4 bits. Les sorties seront visualisées sur des diodes. Exercice 3 : Additionneur I. Conception d un additionneur complet L objectif de cette partie est de concevoir puis implanter un additionneur complet (FULL ADDER ) dans le FPGA CYCLONE présent sur la carte Altera DE1. Rappel : Un additionneur complet est constitué de deux demi-additionneurs dont la structure est représentée Figure1. Le schéma d un additionneur complet est donné Figure 2. Ce composant admet 3 entrées : A, B, Ci et 2 sorties : S et Co. TP FPGA Page 2

B. HAJJI (2 ère partie) GE4 Figure1 : Schéma d un demi-additionneur (HALF ADDER) Figure 2 : Schéma d un additionneur complet(full ADDER) a) Description en VHDL Concevoir l entité FULL_ADDER ainsi que l architecture associée. Tester son fonctionnement en l implantant directement dans le FPGA. On pourra connecter les entrées de l additionneur aux boutons et les sorties aux leds. b) Synthèse et Implantation Implanter le FULL_ADDER dans le CYCLONE et en déduire les ressources utilisées à l aide des différents rapports générés: Quels nombres de LE et de LUTs sont nécessaires pour implanter le design? Quels sont les «pires» temps de propagation des signaux au sein du circuit? A l aide de l éditeur de ressources (FLOORPLANNER), vérifier le contenu des différentes LUTs ainsi que le contenu des IOBs. Justifier le contenu des LUTs et en déduire le fonctionnement correct de votre circuit. II. Conception d un additionneur parallèle 4 bits A l aide de votre composant FULL_ADDER, concevoir un additionneur parallèle 4 bits et expliquer le fonctionnement. En déduire la représentation structurelle et implanter l additionneur sur la carte. III. Conception d un additionneur 8 bits avec registres A partir de l additionneur réalisé dans l exercice 4, créer une nouvelle version de l additionneur permettant d effectuer des sommes sur des nombres codés en complément à 2. Une sortie Overflow devra également être prévue lorsque la somme produite par l additionneur ne sera pas correcte. TP FPGA Page 3

B. HAJJI (2 ère partie) GE4 La représentation structurelle de l additionneur est fournie à la figure 3. Figure 3 : Représentation de l additionneur 8 bits à réaliser. Les E/S passent par des registres. a) Inclure les nouveaux ports d E/S dans votre projet. Connecter les entrées A et B aux 2 registres et connecter les registres aux boutons SW7 à SW0. Utiliser KEY(0) comme une entrée RESET asynchrone, KEY(1) comme une entrée d horloge manuelle, KEY(2) et KEY(3) comme entrée ENABLE des registres d entrée. Afficher A et B sur les leds (A sur LEDR et B sur LEDG) et afficher le résultat de la somme sur les afficheurs 7 segments. b) A l aide des outils fournis par Quartus, déterminer le nombre de ressources nécessaires à la réalisation d un tel additionneur. Quelle est la fréquence maximale d utilisation du circuit? Pourquoi? IV. Additionneurs prédéfinis par Alteras Répeter l exercice 5 en utilisant cette fois une des additionneurs prédéfinis par Altera. Pour se faire, sélectionner le menu Tools puis MegaWizard Plug_in Manager. Editer puis générer le composant lpm_add_sub. Ne pas oublier de l intégrer dans votre projet. Après avoir instancié ce composant dans votre code VHDL, compiler le projet et utiliser l outil Chip planner de QuartusII pour examiner les détails de l implantation. Une manière d examiner le circuit sous Chip planner est donnée à la figure 4. TP FPGA Page 4

B. HAJJI (2 ère partie) GE4 Dans la fenêtre du navigateur de projets, cliquez droit sur le composant de la hiérarchie nommé lpm_add8 et sélectionner la commande Locate->Locate in Chip planner. Ceci permet d ouvrir la fenêtre correspondante. Positionner ensuite la souris sur les éléments logiques et double-cliquer pour ouvrir l éditeur de ressources. Que constatez vous? Quelle(s) différences pouvez vous déceler avec l implantation de l exercice 5. Quelle est la nouvelle fréquence max de votre circuit? Figure 4 : Localisation de l additionneur 8 bits dans l outil Chip Planner Figure 5 : Les éléments en surbrillance sont les composants de l additionneur TP FPGA Page 5

B. HAJJI (3 ère partie) GE4 TP FPGA (3 ère partie) Un compte-rendu devra être fourni à l issue de la seconde séance de TP Exercice 1 : D flip-flip Le tableau 1 présente les ports de la bascule D flip-flop. L entrée D est mémorisée à chaque front montant du signal d horloge clk. Signal Type Direction Fonction d std_logic Input Data input clk std_logic Input Clock q std_logic Output Data output Tableau 1 : Description des signaux de la bascule D 1- Ecrire un programme en VHDL de la bascule D flip-flop. 2- Compilez le projet et chargez le circuit dans le FPGA pour tester le fonctionnement de la bascule D flip-flop. On pourra connecter les entrées de la bascule aux Switch et la sortie au led 3- Même travail demandé mais cette fois-ci pour une bascule D flip-flop avec Reset Asynchrone et Synchrone. Exercice 2 : Registre à décalage 1- Décrire en VHDL un registre à décalage 4-bit, utilisant les bascules D Flip-flop, présenté par le schéma ci-dessous : 2- Compiler le tester le fonctionnement de ce circuit. Exercice 3 : Compteur 1- Réaliser un compteur sur 4 bits par description comportementale. 2- Rajouter une entrée de remise à zéro asynchrone, puis synchrone. TP FPGA Page 1

B. HAJJI (3 ère partie) GE4 Les sorties seront d abord visualisées sur des LED puis sur un afficheur 7 segments. Exercice 4 : Diviseur de fréquence On cherche à concevoir un diviseur d horloge permettant de diviser la fréquence d une horloge d entrée par 128. Pour se faire, on souhaite utiliser un compteur. Ce compteur possèdera : - Une entrée CLK - Une entrée RESET, synchrone, permettant la mise à 0 du compteur - Une entrée CE, permettant la validation du comptage 1) Quelle doit être la taille du compteur? 2) Ecrire un programme en VHDL de ce circuit et tester les fonctionnalités du compteur TP FPGA Page 2

VHDL FPGA-Travaux Pratiques ENSA-Oujda TP n 4 : Conception d un mini-calculateur Le TP sera effectué sur 3 séances. Un compte rendu devra être fourni à l issue de ces séances. 1. Introduction Le but de ce TP est de concevoir le mini-calculateur suivant basé sur une unité arithmétique et logique et permettant d effectuer des opérations sur des nombres de 4 bits. Le dispositif à réaliser est décrit à la figure 1. A 4 UAL CE R0 CE R1 B 4 CE R2 Res 3 CE R3 instruction 8 contrôleur clk Figure 1 : Schéma bloc du calculateur à réaliser Le circuit permet d effectuer des calculs sur des opérandes de 4 bits et autorise le stockage des résultats dans 4 registres de 4 bits (R0,R1,R2,R3). L opérande A peut être issue d une entrée du circuit ou venir d un des 4 registres. Une instruction sur 8 bits permet d indiquer l opération à réaliser. Elle possède le format suivant : 7 6 5 4 3 2 1 0 Numéro Reg destination Numéro Reg source Code_op Res <= A op B Res<= Ri op B B. HAJJI Page 1

VHDL FPGA-Travaux Pratiques ENSA-Oujda Le champ Numéro Registre destination permet de sélectionner les registre dans lequel le résultat de l UAL sera stocké. Ce champ est stocké sur les bits (7 et 6) de l instruction. Le numéro de registre est désigné comme suit : Instruction(7) Instruction(6) Registre désigné 0 0 R0 0 1 R1 1 0 R2 1 1 R3 Le champ Numero Registre source permet de sélectionneur le registre dans lequel une donnée servira à effectuer un calcul (avec l opérande B). Ce champ est stocké sur les bits (5 et 4) de l instruction. Le numéro de registre est désigné comme suit : Instruction(5) Instruction(4) Registre désigné 0 0 R0 0 1 R1 1 0 R2 1 1 R3 Le bit 3 d une instruction permet de préciser si l on souhaite effectuer une opération sur les entrées A et B ou sur B et une donnée provenant du registre dont l adresse est spécifiée dans le champ Numero registre source. Le champ CodeOP est codé sur 3 bits et sert à indiquer la nature de l opération à réaliser : CodeOP Opération à réaliser 000 RES<= A ET B 001 RES<= A NON ET B 010 RES<= A OU B 011 RES<= A NON OU B 100 RES<=A XOR B 101 RES<=NOT A 110 RES<=A+B 111 RES<=A-B Par exemple, si CodeOP=111, alors l UAL effectuera une soustraction de A et B. Exemple d instruction : L instruction suivante : 01 01 1 111 signifie R1 <= R1 B 00 10 0 100 signifie R2<= A xor B B. HAJJI Page 2

VHDL FPGA-Travaux Pratiques ENSA-Oujda 2. Conception de l Unité arithmétique et logique L UAL possèdera les entrées sorties suivantes : A B 4 4 CodeOP 4 RES A_SUP_B A_INF_B A_EGAL_B OVFL ZERO NEG A, B sont les opérandes sur 4 bits. Res est le résultat des opérations. A_SUP_B est une sortie permettant d indiquer si A>B. Elle sera à l état HAUT si A>B et à l état BAS dans le cas contraire. A_INF_B est une sortie permettant d indiquer si A<B. Elle sera à l état HAUT si A<B et à l état BAS dans le cas contraire. A_EGAL_B est une sortie permettant d indiquer si A=B. Elle sera à l état HAUT si A>B et à l état BAS dans le cas contraire. OVFL est une sortie permettant d indiquer si l opération effectue un débordement de capacité. Elle sera à l état HAUT si tel est le cas, à l état BAS sinon. ZERO est une sortie permettant d indiquer si le résultat est nul. Elle sera à l état HAUT si tel est le cas, à l état BAS sinon. NEG est une sortie permettant d indiquer si le résultat est négatif. Elle sera à l état HAUT si tel est le cas, à l état BAS sinon. a. Conception d un comparateur (4 bits) 1) Décrire un composant comparateur prenant deux entrées sur 4 bits, et générant 3 sorties A_SUP_B, A_INF_B et A_EGAL_B 2) Simuler le fonctionnement du composant en réalisant le testbench adéquat. b. Conception de l UAL 1) A partir des différents circuits réalisés dans les parties (a et b), décrire l UAL complète en VHDL. 2) Concevoir le fichier testbench permettant de générer les stimuli à appliquer à l UAL 3) Simuler l ensemble de l UAL et vérifier son fonctionnement B. HAJJI Page 3

VHDL FPGA-Travaux Pratiques ENSA-Oujda 3. Conception des registres Concevoir un registre 4 bits avec entrée clock_enable synchrone et une entrée CLR asynchrone. Ecrire un test_bench permettant de valider le fonctionnement du registre. 4. Conception des multiplexeurs et demultiplexeurs A partir du schéma fourni à la figure 1, concevoir les multiplexeurs et démultiplexeurs adéquats. Concevoir les tests-benchs associés. 5. Conception du décodeur Concevoir un circuit de décodage permettant de générer les signaux de sélection des multiplexeurs/démultiplexeurs, ainsi que les entrée CE des registres en fonction du type d instruction. 6. Conception Finale Regrouper tous les éléments construits dans les sections 1 à 5 et concevoir le minicalculateur Prendre soin de bien effectuer un test-bench pour valider le fonctionnement final. B. HAJJI Page 4