ELP304: ELECTRONIQUE NUMERIQUE
Petites Classes Enoncés
Année scolaire 2008-2009
Catherine Douillard
ELP 304
Électronique numérique
Année scolaire 2008-2009 Majeure ELP
PC1
Thèmes abordés
Fonctions combinatoires - Utilisation de multiplexeurs pour la génération de fonctions combinatoires
EXERCICE 1
Soit une fonction combinatoire f(X,Y,Z) définie par le tableau de Karnaugh ci-dessous : X
1 0
0 1
1 1
1 0 Y Z
Question 1.1
Synthétiser directement cette fonction avec un multiplexeur "8:1" (voir le symbolisme ci- après).
Question 1.2
On supposera dans la suite que les variables X, Y et Z sont disponibles à la fois sous forme directe et complémentée.
− Sélectionner une de ces 3 variables et réduire par 2 la taille du tableau de Karnaugh initial en faisant apparaître cette variable (sous forme directe ou complémentée) dans les cases appropriées.
− Synthétiser ensuite la fonction à l'aide d'un unique multiplexeur "4:1".
Question 1.3
Synthétiser la fonction avec un minimum de multiplexeurs "2:1".
Question 1.4
Refaire ce travail pour les 2 autres variables.
E0
E3 E4 E5 E6 E7 E1 E1
E0 E1 E2
E2 E3
E0
A0 A1 A2 A0
A1 A0 S
S
S
mux 2:1
mux 4:1
mux 8:1
EXERCICE 2
On désire réaliser le circuit combinatoire permettant d'obtenir le reste r =(r r1 0 2) de la division par ( )3 10 d'un nombre x de 4 bits tel que :
( )0 10 ≤ =x (x x x x3 2 1 0 2) ≤( )1110
Question 2.1
Etablir la table de vérité qui fournit les valeurs de r1 et r0 en fonction dex x x x3 2 1 0. Question 2.2
Donner les équations simplifiées de r1 et r0. Question 2.3
Réaliser ce circuit à l'aide d’opérateurs NAND.
Question 2.4
Réaliser ce circuit à l'aide de multiplexeurs à 2 entrées et une sortie (et éventuellement x
x x x
3 2 1 0
r r
1 0
ELP 304
Électronique numérique
Année scolaire 2008-2009 Majeure ELP
PC2
Thèmes abordés
Comparateur 1 bit - Comparateur n bits EXERCICE : Le comparateur complet
On souhaite réaliser un comparateur de deux mots de n bits (figure 1) A=(AnLAiLA1) et B=(BnL LBi B1)1.
V
Sn In En A
n
B n
Figure 1 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
1 Le bit de rang 1 est le bit de poids faible
Question 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 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
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 4
A partir des équations trouvées précédemment, établir les relations de récurrence ci-dessous :
) , , , h(
) , , , g(
) , , , f(
1 1
1
V B A E E
V B A I I
V B A S S
n n n n
n n n n
n n n n
−
−
−
=
=
=
ELP 304
Électronique numérique
Année scolaire 2008-2009 Majeure ELP
PC3
Thèmes abordés
Demi-additionneur - Additionneur complet 1 bit - Additionneur complet n bits - Additionneur/soustracteur
EXERCICE : L'additionneur binaire
Le demi-additionneur binaire est un circuit qui prend en entrée 2 nombres de 1 bit (Ak et Bk) et génère leur somme (Sk) et une retenue (Ck).
Ak Bk Sk Ck
0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 Le schéma ci-après représente la structure d'un "demi-additionneur binaire" :
Ak Bk
=1
Sk
&
Rk
A partir des informations ci-dessus, on souhaite réaliser un additionneur complet qui prenne en compte une retenue (Ck−1) générée à partir d'un étage précédent.
Sk
Ck
Ak Bk
Question 1
Etablir la table de vérité donnant la somme Sk et la retenue sortante Ck en fonction de Ak, Bk et Ck−1.
Question 2
Tracer les tableaux de Karnaugh correspondants et exprimer les fonctions sous forme réduite.
Question 3
On souhaite réaliser un additionneur complet à partir de deux demi-additionneurs et d'un bloc combinatoire g. Dessinez le schéma de l'additionneur complet.
Question 4
En utilisant le module de l'additionneur complet, donnez le synoptique d'un additionneur de n bits capable d'effectuer l'opération S= A+B, (+ représente ici l'opérateur d'addition arithmétique), avec A=(An,KAk,K,A1), )B=(Bn,KBk,K,B1 , et S =(Sn,...Sk,...,S1). La retenue finale est désignée par Cn.
Question 5
On souhaite transformer le montage précédent en un additionneur / soustracteur. On rappelle que dans la représentation en complément à 2, A-B=A+(-B)= A+B +1. Proposer le schéma d'un additionneur / soustracteur capable de manipuler des nombres de 4 bits codés dans le système de représentation du complément à 2. Cet additionneur / soustracteur possèdera une entrée de commande SOUSTRAC qui sera utilisée comme suit :
• SOUSTRAC = 0, fonctionnement en additionneur
• SOUSTRAC = 1, fonctionnement en soustracteur Question 6
Le montage précédent ne traite pas les problèmes de débordement de capacité. A partir de la table de vérité proposée en question 1, donner l'équation de fonctionnement d'un bit de sortie OV (OV = overflow) en fonction des retenues Cn et Cn−1. Ce bit OV sera positionné à "1"
lorsqu'il y aura débordement de capacité en arithmétique signée.
ELP 304
Électronique numérique
Année scolaire 2008-2009 Majeure ELP
PC4-PC5
Thèmes abordés
Temps de montée, de descente et de propagation des opérateurs CMOS.
Synthèse combinatoire en CMOS.
Estimation de surface sur silicium.
EXERCICE 1
Considérons un inverseur réalisé en logique CMOS 0,13 µm. Les deux transistors de cet opérateur sont de même longueur (LN =LP =L=65nm) et le transistor PMOS est 3 fois plus large que le NMOS (WP =1,95μm et WN =0,65μm). On suppose que la sortance de cet inverseur est égale à 1.
Question 1.1
Estimer la dissymétrie en dynamique de cet inverseur, c’est-à-dire la valeur du rapport tr /tf , où tr et tf sont les temps de montée et de descente de l'opérateur.
Question 1.2
Donner une approximation de son temps de propagation en fonction de t = tr, en supposant que la tension de sortie de cet inverseur varie linéairement en fonction du temps lors des commutations.
Considérons ensuite un opérateur NAND à 2 entrées (S = A B. ) réalisé en logique CMOS avec des transistors identiques à ceux décrits précédemment. Les conditions de charge de cette porte sont les mêmes que celles de l’inverseur (sortance 1).
Question 1.3
Exprimer la dissymétrie maximale en dynamique de cet opérateur, c’est-à-dire le rapport tr /tf correspondant à un écart maximal entre tr et tf .
Question 1.4
Quelle est la valeur maximale des temps de propagation tpHL et tpLHen fonction de t ?
EXERCICE 2
PARTIE 1 : Synthèse logique à partir d’une bibliothèque de composants
On prend en compte dans ce deuxième exercice l’influence de la sortance sur les temps de propagation des opérateurs. On pourra être amené à utiliser des inverseurs (INV), des opérateurs non-et à 2 entrées (NAND2) avec les caractéristiques temporelles suivantes :
Fout 1 2
tpmax( )ns LH HL LH HL
0,18 0,12 0,21 0,14
Fout 1 2
tpmax( )ns LH HL LH HL
0,18 0,24 0,21 0,28
Question 2.1
Les transistors NMOS et PMOS utilisés pour la construction de ces deux opérateurs sont-ils identiques ? Que vaut le rapport WP /WN ?
Question 2.2
Réaliser un opérateur « ou exclusif » à 2 entrées (XOR2) à partir de portes NAND2 et d'inverseurs. Donner le nombre de transistors pour cette réalisation et son temps de propagation maximal pour une sortance de 1.
Question 2.3
En remarquant que A B= A B+ B B, transformer le schéma en utilisant uniquement des portes NAND2. Comparer à la solution précédente.
INV
NAND2
PARTIE 2 : Synthèse logique directe Question 2.4
En suivant la méthode donnée en cours, faire la synthèse directe en logique CMOS sans interrupteur du XOR2. Comparer aux réalisations précédentes, en supposant les transistors identiques à ceux utilisés pour la réalisation des opérateurs INV et NAND2.
Question 2.5 (facultative)
Il existe une astuce pour réduire à 10 le nombre de transistors. Donner le nouveau schéma à base de transistors, ainsi que le temps de propagation.
PARTIE 3 : Synthèse à base d’interrupteurs Question 2.6
Déterminer la fonction combinatoire S(A,B) réalisée par le circuit CMOS de la figure ci- dessous. Quel est le gain en nombre de transistors par rapport au circuit sans interrupteur réalisant la même fonction?
Peut-on calculer le temps de propagation maximal de ce montage ? Question 2.7
Évaluer l’encombrement, en nombre de transistors et en surface, d’un additionneur 16 bits en logique CMOS, en se référant aux questions ci-dessus et avec les données suivantes:
− transistor PMOS: W = 1,30 µm L = 65 nm
− transistor NMOS: W = 0,65 µm L = 65 nm
− rapport surface active/surface totale: 1/5 Question 2.8
Quel est le chemin de propagation maximal de cet additionneur ? A
B
S
ELP 304
Électronique numérique
Année scolaire 2008-2009 Majeure ELP
PC6-PC7
Thèmes abordés
Fonctionnement du point mémoire statique CMOS.
Fonctionnement de la bascule maître-esclave CMOS.
Détermination des caractéristiques temporelles des bascules.
EXERCICE 1 - "D latch" : bascule D à verrouillage (point mémoire statique) La structure du "latch" CMOS est donnée en figure 1 :
E
E*
E
E*
E
E*
D Q*
Q T1
T2 I1
I2
I3
Figure 1
Cette bascule contient deux interrupteurs (T1, T2) et deux inverseurs (I1, I2). Le signal de commande E* est obtenu par inversion de E (inverseur I3).
1. On suppose, dans un premier temps, que les temps de commutation (tp temps de propagation, tr temps de montée et tf temps de descente) sont négligeables devant la période du signal E. Compléter les chronogrammes de la figure 2. Établir la table de transition de la bascule.
2. En admettant ensuite que chaque porte (I ou T) présente un temps de propagation tp égal à τ = 0,02 ns (tr et tf << τ pour simplifier), retracer les chronogrammes de la figure 2.
t (ns)
0 0,05 0,10 0,15 0,20 0,25 0,30 0,35
1 0 1 0 1 0 1 0 1 0
E
D
E*
Q*
Q
Figure 2 En déduire les valeurs suivantes:
• temps de prépositionnement tS (tsetup) de D : durée minimale de la valeur de D à verrouiller, avant transition de E
• temps de maintien tH (thold) de D : durée minimale de la valeur de D à verrouiller, après transition de E
• temps de propagation de la bascule
3. Élaborer une bascule "latch" avec remise à zéro prioritaire (reset).
EXERCICE 2- "D flip-flop" : bascule D maître-esclave
La figure 3 représente une bascule D "maître-esclave" constituée par la mise en série de deux bascules "latch".
CK CK*
CK
CK*
CK CK*
CK*
CK CK*
CK
D Q
Q*
T1
T2
T3
T 4 I1
I2
I3
I4
I5
Figure 3
1. Compléter les chronogrammes de la figure 4 (on négligera les valeurs de tp, tr et tf) et établir la table de transition de la bascule.
1 0 1 0 1 0 1 0 1 0
0 0,05 0,10 0,15 0,20 0,25 t (ns)
CK D
Sortie I1
Entrée I3 Q
0,30
1 0
Q*
Figure 4
2. Quel est l'intérêt d'une telle structure "maître-esclave" (par rapport à la conception d'un registre à décalage par exemple)?
3. Que vaut le temps de propagation de cette bascule (propagation de CK vers Q)? A quoi correspondent les temps de prépositionnement et de maintien?
4. On boucle la sortie Q* sur l'entrée D. Quelle fonction a-t-on réalisé? A quelle fréquence maximale peut fonctionner un tel montage?
ELP 304
Électronique numérique
Année scolaire 2008-2009 Majeure ELP
PC8-PC9-PC10
Thèmes abordés
Etude de compteurs (assemblage, synthèse...) Notion de chemin critique
Fréquence maximale de fonctionnement d'un opérateur synchrone Règles d'assemblage séquentiel
Problème d'aléa
EXERCICE 1
On considère le circuit suivant représenté par ses entrées-sorties. C'est un décompteur binaire avec entrées de chargement parallèle statiques et remise à zéro prioritaire asynchrone.
DECOMPTEUR BINAIRE
Q1
R*
P0 P1 P2
Chargement
H Q2
Q0
1- Un schéma possible pour un tel circuit est donné ci-dessous.
Justifier et commenter ce schéma.
2- Réaliser un diviseur par 6 en utilisant l'entrée prioritaire R*. Comment sont positionnées les entrées Chargement, P0, P1 et P2? Discuter.
3- Réaliser un décompteur modulo 6 en utilisant les entrées Chargement, P0, P1 et P2. Comment doit être positionnée R*?
Proposer une modification de ce schéma, incluant une nouvelle entrée statique CE (chip enable), autorisant ou inhibant le décomptage ou le chargement parallèle (blocage du compteur dans l'état présent). Donner un schéma de décompteur modulo 48 synchrone, utilisant cette structure modifiée.
4- Faire la synthèse directe d'un décompteur modulo 6 synchrone passant par les états (en décimal) 5, 4, 3, 2, 1 et 0. Remarque ?
Comment peut-on modifier ce décompteur pour lui ajouter une commande de remise à zéro synchrone (statique) ?
0
1 0
1
R*
H
0 1
P0 P1 P2
Chargement
D0 Q0 D1 Q1 D2 Q2
Q0 Q1 Q2
CK CK CK
5- Soit le schéma suivant:
A l'aide d'un chronogramme et en considérant Q0 = Q1 = Q2 = 0 à l'instant initial, donner la fonction du montage ci-dessus.
Quelle est la particularité du code engendré par les sorties Q0, Q1, Q2 des bascules?
En remplaçant B1 par (n - 2) bascules connectées de manière identique, généraliser le résultat de la première question.
Que se passe-t-il si l'état initial est Q0 = Q2 = 0 et Q1 = 1 ? Comment peut-on modifier ce montage pour retrouver le fonctionnement normal (sans utiliser les entrées prioritaires de remise à zéro ou à un) ?
EXERCICE 2
Le circuit de la figure ci- contre est un générateur de séquence pseudo-aléatoire. Il est constitué d'un registre à décalage avec rebouclage par 2 XOR (OU exclusif) de certaines sorties intermédiaires, sur l'entrée du registre. La séquence pseudo- aléatoire est prélevée, après inversion en S.
Compte-tenu des caractéristiques dynamiques fournies pour chaque bascule et les XOR (technologie CMOS 0.13µm), déterminer le débit maximal (fréquence maximale de l'horloge H) de ce générateur.
Sortance 1 2 3
tpLH max 0.047 0.049 0.052
tpHL max 0.048 0.051 0.054
XOR
Sortance 1 2 3 tpLHmax (CK→Q) 0.065 0.068 0.070 tpHLmax (CK→Q) 0.068 0.071 0.073
thold 0.0
tsetup 0.020
BASCULE D S
Q2
D0 Q0 D1 Q1 D2 Q2
CK Q0 CK Q1 CK
B0 B1 B2
H R*
NB: - les temps de commutation sont en nanosecondes.
- la fonction XOR est représentée ci- contre: elle est constituée de transistors de taille minimale.
- l'entrance de l'entrée D des bascules D vaut 1.
- l'inverseur de sortie est de taille minimale.
Peut-on, en anticipant le calcul de certains résultats intermédiaires, obtenir un montage fonctionnant avec une fréquence d'horloge supérieure ?
EXERCICE 3
Les schémas logiques suivants présentent tous un aléa de fonctionnement. Le préciser, après avoir deviné ce qu'a voulu faire le concepteur.
COMPTEUR BINAIRE SYNCHRONE
D Q CK
R
CK Q0 Q1 Q2 E
COMPTEUR BINAIRE SYNCHRONE
D Q CK
R Carry
CK
Val
EXERCICE 4
Soit le montage suivant :
H
D0 Q0 D1 D2
CL Q0 CLQ1 CL Q2
Q2 Q1
Quelle fonction réalise chaque bascule ?
En déduire ce que le concepteur d'un tel schéma a voulu réaliser.
A l'aide d'un chronogramme, essayer de mettre en évidence un aléa possible dans le fonctionnement de ce montage.
Quelle(s) solution(s) peut-on envisager pour l'éviter ? COMPTEUR BINAIRE
SYNCHRONE
D Q CK
R
CK Q0 Q1 Q2
D Q CK Q
R
H1 H H2