Vous êtes sur la page 1sur 3

TD1 Electronique Numérique Année universitaire 2023-2024

Enseignante : Dr. Faten. BEN ABDALLAH


ère
Filière / Classe : 1 MINDS

Exercice 1 : (extrait du DS Novembre 2022)

Quatre responsables d'une société (A, B, C et D) peuvent avoir accès à un coffre. Ils possèdent chacun
une clé différente et il a été convenu que:
- A ne peut ouvrir le coffre que si au moins un des responsables B ou C est présent ;
- B, C et D ne peuvent l'ouvrir que si au moins deux des autres responsables sont présents.

Dresser la table vérité et le tableau de karnaugh puis donner l’équation logique de la serrure du coffre S.

Exercice 2 : Affichage des opérations de décalage


Soit à décrire en VHDL le circuit de la Figure 1 permettant d’afficher sur un afficheur 7 segments le code
hexadécimal de l’entrée D et son résultat de décalage effectué par le circuit SHIFTER de la figure suivante. Suivant
l’entrée de sélection Sel du multiplexeur (Mux), la sortie Z prend la valeur de D ou de Y. Par la suite le décodeur 7
segments (Dec7seg) transforme Z en une suite binaire de 7 bits affectée à la sortie CodeHex du décodeur. Cette
suite sera ensuite affichée sur l’afficheur 7 segments. Les noms des signaux ainsi que leurs tailles sont spécifiés
dans la figure ci-dessous. Nous allons vous guider pour décrire ce circuit en VHDL. a

0 f b
Mux 4 bits 7 bits
Décodeur
Circuit de Z 7 segments CodeHex
D 4 bits Y 4 bits g
décalages 1 (Dec7seg)
(SHIFTER) e c
1 bit
Sel
d
3 bits
Fct Figure 1
1) Décrire en VHDL le circuit multiplexeur, appelé Mux.

2) On suppose que le décodeur 7 segment est de type anode commune, c'est-à-dire un 0 Volt sur un segment
permet son allumage et un 5 Volt (1 logique) permet de l’éteindre. On suppose aussi que les segments sont
connectés comme suit :
- Segment a est connecté à CodeHex(0) Exemple : Le code du chiffre 0 (Z = "0000") sera alors décodé à
- Segment b est connecté à CodeHex(1) CodeHex = "1000000". Uniquement le segment g est égal à 1.
- Segment c est connecté à CodeHex(2)
- Segment d est connecté à CodeHex(3) Donner la valeur de la sortie CodeHex du décodeur pour chaque
- Segment e est connecté à CodeHex(4) code des chiffres 0 à F.
- Segment f est connecté à CodeHex(5)
- Segment g est connecté à CodeHex(6)

3) Décrire en VHDL comportemental le décodeur 7 segments, appelé Dec7seg en utilisant un processus et


l’instruction case du VHDL.

4) Le circuit SHIFTER présenté sur la figure ci-dessus permet 5 fonctions de décalage en fonction de l’entrée Fct
codée sur trois bits. Ces 5 fonctions sont résumées dans le tableau ci-dessous.
Décrire en VHDL comportemental le circuit SHIFTER en utilisant un processus et l’instruction case du VHDL.

1/3
Entrée Fct(2 downto 0) Valeur de Sortie Y(3 downto 0) en Fonction de décalage réalisée
fonction de l’entrée D(3 downto 0) par le circuit SHIFTER
Y(3) Y(2) Y(1) Y(0)
"000 " 0 D(3) D(2) D(1) Décalage à droite
"001 " D(2) D(1) D(0) 0 Décalage à gauche
"010 " D(0) D(3) D(2) D(1) Rotation à droite
"011 " D(2) D(1) D(0) D(3) Rotation à gauche
"1xx " (x=0 ou 1) peu n’importe D(3) D(2) D(1) D(0) Pas de rotation Y=D

5) Le circuit global aura comme entrées (Fct, D et sel) et comme sortie (CodeHex) comme présenté dans figure ci-
dessus.

6) Donner la description VHDL structurelle du circuit global qui réutilise des instances des circuits décrits dans
les questions précédentes.

7) Coder en VHDL un testbench qui pour la valeur de D égale à "0101", permet de stimuler toutes les fonctions de
décalage et d’afficher le résultat Y sur l’afficheur 7 segments.

Exercice 3 : Circuit de complément à 2 générique

On se propose de réaliser un circuit qui calcule le complément à 2 d’une entrée codée sur N bits. Le circuit OPP1
de la Figure 2 est composé de deux entrées (Xe et Ce) et deux sorties (Xs et Cs) codées toutes sur 1 bit.

Figure 2
1) Donner le code VHDL comportemental de ce circuit en se basant sur des instructions concurrentes

Le circuit OPP3 de la Figure 3 réutilise 3 circuits de type OPP1.

Figure 3

2) Coder en VHDL le circuit OPP3 en utilisant l’instruction concurrente for … generate. Indication :
exprimer la sortie S en fonction de l'entrée E et du signal interne C (exprimer S(i) en fonction de E(i) et
C(i) pour i allant de 0 à 2) (exprimer de même C(i+1) en fonction de E(i) et C(i) pour i allant de 0 à 2).

2/3
3) Donner le code VHDL du circuit générique OPPN correspondant (le cas général de la question 2).

4) Reprendre la même question en décrivant de façon structurelle le circuit générique de paramètre N qui
réutilise N circuits OPP1.

Exercice 4 : (extrait du DS Novembre 2022)

1. Quelle fonction réalise le circuit de la figure 4 ? justifier.


A Sum
1 Additionneur
Complet
B 0 1 bit Cout
M
Cin
Figure 4
2. Décrire en VHDL comportemental ce circuit.

3. En déduire la description VHDL structurel d’un circuit générique à N bits en utilisant une cascade
le circuit à 1 bit définit à la question 1, sachant que l’entrée de sélection M est connectée aux N
multiplexeurs des modules en cascades et que les retenues sont propagées d’un module au suivant.
Pour ce circuit générique à N bits M est codé sur 1 bit. A, B et S sont codés sur N bits. Cout est
codé sur 1 bit.

3/3

Vous aimerez peut-être aussi