ELP 304
Électronique numérique
Année scolaire 2008-2009 Majeure ELP
PC4-PC5 Corrigé
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
Question 1.1
Lorsque la sortie S de l’inverseur passe de 0 à 1, le transistor PMOS fournit le courant pour la charge de la capacite de sortie (donc est passant pendant le temps de montée). Le transistor NMOS décharge cette capacité durant le temps de descente.
Soit RP la résistance équivalente à un transistor PMOS passant.
et RN la résistance équivalente à un transistor NMOS passant.
On a tr = ln 9R CP L et tf = ln 9R CN L, où CL est la capacité de charge de l’inverseur.
D'où
{ { { t
t R R
L L
W W
r f
P N
N P
P N
N P
N P
= ≈ β ≈ ≈
β
μ μ
1 1 3 3
1
/
Les temps de montée et de descente de l’inverseurs sont identiques.
Question 1.2
Les temps de montée et de descente d’un signal sont mesurés entre 10% et 90% de son amplitude maximale.
Le temps de propagation relatif à la sortie d’un opérateur est le retard de l’évolution de cette sortie par rapport à l’évolution d’une de ses entrées, les deux signaux étant considérés à la moitié de leur amplitude maximale.
Si on suppose que la tension de sortie de l’inverseur varie linéairement en fonction du temps lors des commutations, on peut approximer les temps de propagation par :
tpLH ≈ 5tr
8 , tpHL ≈ 5tf 8 , soit, puisque tr = tf = t,
tpLH =tpHL ≈ 5t ≈ t 8 0 6,
Question 1.3
On suit le même raisonnement que dans la question 1.1. Le temps de montée tr est proportionnel à la résistance équivalente de l’étage P lorsqu’il est passant, Rr.
On a Rr = RP, soit tr =t, si un seul transistor PMOS est passant, et Rr = RP / 2 , soit tr = t / 2 , si les 2 transistors PMOS sont passants
tpLH
S E
100%
90%
50%
10%
tr
VSS VDD
A
B
S = A B
Le temps de descente tf est proportionnel à la résistance équivalente de l’étage N lorsqu’il est passant, Rf .
On a Rf = 2RN , soit tf = 2 , car l’étage N n’est passant que si les 2 transistors NMOS t sont passants.
La dissymétrie maximale correspond à un écart maximal entre tr et tf , soit dans notre cas, t
t t
t
r f
= / 2 = 2
1 4. Question 1.4
Temps de propagation maximaux de la porte NAND :
t t
t
t t
t
f pHL
r pLH
2 , 1 6
, 0
6 , 0 6
, 0
max max
max max
≈
≈
≈
≈
EXERCICE 2 Question 2.1
Les transistors utilisés pour la réalisation de ces deux opérateurs sont identiques car tpHL NAND( 2) = 2tpHL INV( ) (2 transistors N passants en série) et tpLHmax(NAND2) =tpHL INV( ) (1 transistor P passant) → cf. exercice précédent.
• Pour l’inverseur, t t
R R
W W
pLH pHL
P N
N P
= ≈ 3 = 0 18 = 0 12
3 2 ,
, donc WP ≈ 2WN.
• Pour l’opérateur NAND2 : t
t
R R
W W
pLH pHL
P N
N P max
max
,
= ≈ = , =
2
3 2
0 18 0 24
3
4, donc WP ≈ 2WN Pour les 2 opérateurs considérés, WP ≈2WN.
Question 2.2
Pour une synthèse à base de portes NAND et d’inverseurs, il convient de partir d’une expression algébrique de forme ΣΠ et d’appliquer De Morgan.
S = A B+ AB = A B B A.
On en déduit directement le logigramme suivant :
• Nombre de transistors :
2×(1+1)+ ×3 (2+2) = 16 transistors.
• Temps de propagation maximal :
Le chemin de propagation le plus long traverse un inverseur et 2 portes NAND2. Un majorant du temps de propagation maximal du XOR2 peut être obtenu en sommant les temps de propagation maximaux des 3 portes traversées. Mais, en pratique cette valeur n’est jamais atteinte car les portes utilisées sont inverseuses => deux changements d’états dans le même sens ne peuvent pas se produire en entrée et en sortie de l’opérateur. Si l’on considère un
tpHL pour la première NAND2, il faut considérer un tpLH pour la suivante.
( )
t t t t
t t t
p pLH INV F pHL NAND F pLH NAND F
pHL INV F pLH NAND F pHL NAND F
out out out
out out out
max ( , ) ( , ) ( , )
( , ) ( , ) ( , )
max ,
= + +
+ +
= = =
= = =
1 2 1 2 1
1 2 1 2 1
tpmax = 0 18, +0 24, +0 18, = 0 60 ns . , Question 2.3
A B. = A B. + B B. = (A + B) .B = A B B. . d’où A⊕B = A B B. + A B A. . = A B B A B A. . . .
Le schéma peut donc être transformé de la manière suivante :
• Nombre de transistors : A
B
S
S
B A
• Temps de propagation maximal :
t t t t
t
p pHL NAND F pLH NAND F pHL NAND F
p
out out out
max ( , ) ( , ) ( , ) max , , , ,
= + +
= + + =
= = =
2 2 2 1 2 1
0 28 0 18 0 24 0 70 ns
Opérateur de même encombrement, un peu moins rapide, mais n’utilisant qu’un seul type de portes logiques.
Question 2.4
En appliquant la méthode de synthèse directe CMOS, il vient : S = A⊕B = AOB = A B+ A B
• Nombre de transistors : 6+ =6 12 transistors.
• Temps de propagation maximal :
Pour la transition LH de la sortie, c’est-à-dire lorsque les entrées A et B passent de la configuration 00 ou 11 à 01 ou 10, seuls deux transistors PMOS sur les 4 peuvent conduire en série. En supposant que les transistors sont identiques à ceux utilisés pour la réalisation des opérateurs INV et NAND2, on a alors :
ns 48 , 0 36 , 0 12 , 0
2
max
) 1 , ( )
1 , ( max
= +
=
+
= = =
p
F INV pLH F
INV pHL pLH
t
t t
t out out
De même, pour la transition HL de la sortie, c’est-à-dire lorsque les entrées A et B passent de la configuration 01 ou 10 à 00 ou 11, seuls deux transistors NMOS sur les 4 peuvent conduire en série.
ns 42 , 0 24 , 0 18 ,
max 0
) 1 , 2 ( )
1 , ( max
= +
=
+
= = =
p
F NAND pHL F
INV pLH pHL
t
t t
t out out
D’où tpmax = 0,48ns.
Gain en nombre de transistors et en temps de propagation.
VDD
VSS
VSS VSS VSS
A B
S
•
Question 2.5
On peut écrire S sous la forme : S = A B+ A+B. D’où
• Nombre de transistors : 10 transistors.
• Temps de propagation maximal :
L’estimation du temps de propagation maximal de cet opérateur requiert une analyse fine de son comportement.
Pour l’étude de la transition HL, il faut étudier séparément le cas où les entrées A et B passent de 01 ou 10 à 00 et le cas où elles passent de 01 ou 10 à 11.
− A B: 01
10 11
⎛
⎝⎜ ⎞
⎠⎟ →
Il n’y a pas commutation en sortie de l’opérateur NOR2, deux transistors NMOS sont passants en série d’où tpHL tpHL NAND F
= ( 2, out=1) = 0 24 ns ,
− A B: 01
10 00
⎛
⎝⎜ ⎞
⎠⎟ →
La sortie du NOR2 commute de 0 à 1, et un seul transistor NMOS est passant dans la seconde couche logique de l’opérateur. D’où
t t t
t t t
t
pHL pLH NOR F pHL INV F pHL pLH INV F pHL INV F pHL
out out
out out
= +
= +
= + =
= =
= =
( , ) ( , )
( , ) ( , )
, , ,
2 1 1
1 1
2
0 36 0 12 0 48 ns D’où tpHLmax =0 48 ns ,
A B
S
B
A
A
A+B B
VDD
VDD
VSS
Une démarche similaire est à suivre pour l’étude de la transition LH, il faut étudier séparément le cas où A et B passent de 00 à 01 ou 10 et le cas où elles passent de 11 à 01 ou 10.
− A B: 11 01
→⎛10
⎝⎜ ⎞
⎠⎟
Il n’y a pas commutation en sortie de l’opérateur NOR2, deux transistors PMOS sont passants en série, d’où tpLH tpLH INV F
= 2 ( , out=1) = 0 36 ns,
− A B: 00 01
→⎛10
⎝⎜ ⎞
⎠⎟
La sortie du NOR2 commute de 1 à 0, et deux transistors PMOS sont passants en série dans la seconde couche logique de l’opérateur, d’où
t t t
t t t
t
pLH pHL NOR F pLH INV F pLH pHL INV F pLH INV F pLH
out out
out out
= +
= +
= + × =
= =
= =
( , ) ( , )
( , ) ( , )
, , ,
2 1 1
1 1
2 2 0 12 2 0 18 0 48 ns D’où tpLHmax = 0 48 ns ,
⇒tpmax = 0 48 ns ,
Donc gain en transistors et même temps de propagation que pour la solution précédente.
Questions 2.6
Si B vaut 1,S = A, si B vaut 0, S = A. D’où S = A B+ A B = A⊕B (encore !)
• Nombre de transistors : 8 transistors.
Cette structure est la mieux adaptée en terme d’encombrement.
A
B
S T1
T2
Le temps de propagation maximal de cet opérateur ne peut pas être estimé sans information supplémentaire concernant l’opérateur logique en amont de A. A titre d’exemple, considérons le cas suivant :
− Au départ A= 0 (VSS) et B =1 (VDD), l’interrupteur du haut (T1) est fermé, celui du bas (T2) est ouvert, S vaut donc 1 (VDD).
− Si B commute à 0, T1 s’ouvre, T2 se ferme. Un interrupteur fermé pouvant conduire dans les 2 sens, la capacité vue sur S, CL, va se décharger vers la masse à travers T2 par le biais du réseau de transistors NMOS de l’opérateur placé en amont de A. Cet opérateur n’étant pas connu, nous ne pouvons donc tirer aucune conclusion quant au temps de propagation du montage.
Question 2.7
Équation de l’additionneur complet 1 bit :
S A B C
C A B C A B
k k k k
k k k k k k
= ⊕ ⊕
= + ⊕
−
− 1
1( )
Ck peut encore s’écrire sous la forme : Ck = A Bk k.Ck−1(Ak ⊕ Bk)
Trois opérateurs NAND2 et deux opérateurs XOR2 sont alors nécessaires à la réalisation de l’additionneur (mais ce n’est pas la seule solution).
• Surface active occupée par l’additionneur complet 1 bit
− surface active occupée par un XOR2 :
m2
51 , 0 ) 065 , 0 65 , 0 ( 4 ) 065 , 0 3 , 1 (
4× × + × × → μ
− surface active occupée par un NAND2 : m2
25 , 0 ) 065 , 0 65 , 0 ( 2 ) 065 , 0 3 , 1 (
2× × + × × → μ
− surface active occupée par un additionneur complet 1 bit : m2
77 , 1 25 , 0 3 51 , 0
2× + × → μ
• Surface totale occupée par l’additionneur complet 16 bit m 12 m 12 m
142 5
77 , 1
16× × → μ 2 → μ × μ
Ak
Ck−1 Bk
Sk
Ck
Question 2.8
Le chemin de propagation le plus long dans l’additionneur part d’une entrée de l’additionneur 1 bit additionnant les bits de poids le plus faible (rang 0) pour aller jusqu’à une sortie de l’additionneur sommant les bits de poids le plus fort (rang 15), en passant par les retenues entrantes et sortantes des rangs intermédiaires (cf. PC2-3).