Vous êtes sur la page 1sur 114

GELE5340

Circuits ITGÉ (VLSI)

Chapitre 5: Design de fonctions


logiques combinatoires
Contenu du chapitre

• On verra dans ce chapitre comment faire le


design de fonctions logiques combinatoires.
• On étudiera leur comportement dynamique,
ainsi que des stratégies pour optimiser la
vitesse.
• On verra aussi comment dimensionner les
circuits pour optimiser le délai.
• Et on verra aussi une méthode pour faciliter
le design de la topologie des circuits.
GELE5340 – Gabriel Cormier, Université de Moncton 2
Logique combinatoire vs séquentielle

Circuit logique In Circuit logique Out


In Out
combinatoire combinatoire

États

Logique combinatoire Logique séquentielle

Sortie = f(In) Sortie = f(In, In précédent)

En logique combinatoire, la sortie n’est fonction que des entrées. En


logique séquentielle, la sortie est fonction des entrées actuelles et des
entrées précédentes.

GELE5340 – Gabriel Cormier, Université de Moncton 3


Types de circuits

• Il y a deux techniques de construction de circuits


qu’on peut utiliser pour créer des fonctions logiques
combinatoires:
○ Statique: À tout moment (sauf pendant le temps de
transition), il existe un chemin de faible résistance entre
VDD ou GND.
○ Dynamique: La valeur de la fonction logique (le « 0 » ou
« 1 ») est stocké temporairement sur un condensateur.
• Pour chaque type de circuit, il existe plus d’une
façon pour implanter la fonction voulue.

GELE5340 – Gabriel Cormier, Université de Moncton 4


CMOS statique complémentaire

• Le premier type de circuit statique est le CMOS


complémentaire.
• En CMOS statique complémentaire, on a deux
réseaux de transistors: un réseau est composé de
PMOS, et l’autre réseau est composé de NMOS.
○ Réseau PMOS: On l’appelle PUN (Pull Up Network). Ce
réseau permet à la sortie d’atteindre la valeur de VDD, pour
créer un « 1 » logique.
○ Réseau NMOS: On l’appelle PDN (Pull Down Network). Ce
réseau permet à la sortie d’atteindre la valeur de GND,
pour créer un « 0 » logique.

GELE5340 – Gabriel Cormier, Université de Moncton 5


CMOS statique complémentaire
VDD

In1 Le PUN et le PDN sont des


In2 réseaux complémentaires.
PUN PMOS seulement

La fonction du PUN est de


InN
brancher la sortie à VDD
lorsqu’un « 1 » est
F(In1, In2, …, InN) nécessaire.

In1 La fonction du PDN est de


In2 brancher la sortie à GND
PDN NMOS seulement lorsqu’un « 0 » est

InN nécessaire.

GELE5340 – Gabriel Cormier, Université de Moncton 6


Construction du PDN et PUN

• On verra que le PDN est construit


uniquement de NMOS, et que le PUN est
construit uniquement de PMOS.
• En effet, un PMOS fait une bonne connexion
à VDD et une mauvaise connexion à GND.
• Pour un NMOS, c’est le contraire: il fait une
bonne connexion à GND et une mauvaise
connexion à VDD.

GELE5340 – Gabriel Cormier, Université de Moncton 7


NMOS: logique
VDD

Vin = 1 D Vout : VDD → 0


Mp
S Vin = 1 D CL
Vout : 0 → VDD – VTn
Mp
S
CL

1. Si on fait une transition de 0 → 1 2. Si on fait une transition de 1 → 0


à la sortie, le condensateur à la sortie, le condensateur
(initialement à 0V) se charge (initialement à VDD) se décharge
jusqu’à VDD – VTn. jusqu’à 0V.

Le NMOS fait un bon « 0 » mais un mauvais « 1 ».

GELE5340 – Gabriel Cormier, Université de Moncton 8


PMOS: logique
VDD

Vin = 0 S Vout : VDD → |VTp|


Mp
D Vout : 0 → VDD Vin = 0 S CL
Mp
D
CL

1. Si on fait une transition de 0 → 1 2. Si on fait une transition de 1 → 0


à la sortie, le condensateur à la sortie, le condensateur
(initialement à 0V) se charge (initialement à VDD) se décharge
jusqu’à VDD. jusqu’à |VTp|.

Le PMOS fait un bon « 1 » mais un mauvais « 0 ».

GELE5340 – Gabriel Cormier, Université de Moncton 9


Combinaisons série / parallèle: NMOS

A B Y = X seulement si les deux


NMOS sont ON. Il s’agit de la
Combinaison
fonction AND.
série
X Y YX si A  B

Y = X si un des deux NMOS est


ON. Il s’agit de la fonction OR.
Combinaison B
parallèle X Y YX si A  B

GELE5340 – Gabriel Cormier, Université de Moncton 10


Combinaisons série / parallèle: PMOS

A B Y = X seulement si les deux


PMOS sont ON. Il s’agit de la
Combinaison
fonction NOR.
série
X Y YX si A  B

Y = X si un des deux PMOS est


ON. Il s’agit de la fonction NAND.
Combinaison B
parallèle X Y YX si A  B

GELE5340 – Gabriel Cormier, Université de Moncton 11


CMOS: logique complémentaire

• En logique complémentaire, le PUN est le


complémentaire du PDN. On peut démontrer
à l’aide du théorème de DeMorgan:
A  B  A B
A B  A  B
• Ce qu’on veut dire, c’est qu’une combinaison
parallèle des transistors dans le réseau PUN
correspond à une combinaison série des
transistors dans le PDN, et vice-versa.
GELE5340 – Gabriel Cormier, Université de Moncton 12
Exemple de porte : NAND
La fonction logique dans ce cas est:
A B OUT
0 0 1 OUT  A  B  A  B
0 1 1
Le circuit est donc: Si A ou B est 0,
1 0 1
VDD un PMOS est
1 1 0 ON, et la sortie
est VDD.
Table de vérité d’une porte NAND A B
à 2 entrées
OUT

A
Si A et B sont 1,
Le seul cas où la sortie est 0 est
les NMOS sont
quand A et B sont 1. B ON, et la sortie
est 0.

GELE5340 – Gabriel Cormier, Université de Moncton 13


Exemple de porte : NOR
La fonction logique dans ce cas est:
A B OUT
0 0 1 OUT  A  B  A  B
0 1 0
Le circuit est donc:
1 0 0 Si A et B sont 0,
VDD
1 1 0 les PMOS sont
ON, et la sortie
Table de vérité d’une porte NOR à A est VDD.
2 entrées

Le seul cas où la sortie est 1 est OUT


quand A et B sont 0. Si A ou B sont 1,
A B un NMOS est
ON, et la sortie
est 0.

GELE5340 – Gabriel Cormier, Université de Moncton 14


Exemple de porte complexe
VDD

B
A
C

D
F  D  A  (B  C)
A
Étant donné la fonction,
D comment construire les
B C réseaux PUN et PDN?

GELE5340 – Gabriel Cormier, Université de Moncton 15


Design d’une porte complexe: PDN
F  D  A  (B  C) Remarque: la fonction est
inversante (le tout est NOT)

A
Puisque A multiplie
(B+C), on le met en
D série avec ces deux
B C FETs.

Puisque D est additionné Puisqu’on a B+C dans


à (A•(B+C)), on le met en la fonction, on les mets
parallèle. en parallèle.

GELE5340 – Gabriel Cormier, Université de Moncton 16


Design d’une porte complexe: PUN
F  D  A  (B  C)

VDD

B
A
A
C
D
B C

PDN PUN

GELE5340 – Gabriel Cormier, Université de Moncton 17


Design d’une porte complexe

• Pour construire une fonction quelconque, on suit les


procédures suivantes:
○ S’assurer que la fonction est inversante (le tout est NOT)
○ Construire le PDN
 Si on a un « + », les transistors sont en parallèle
 Si on a un « • », les transistors sont en série
○ Construire le PUN
 Si des transistors sont en série dans le PDN, ils sont en
parallèle dans le PUN.
 Si des transistors sont en parallèle dans le PDN, ils sont en
série dans le PUN.

GELE5340 – Gabriel Cormier, Université de Moncton 18


Propriétés des portes statiques CMOS

• Marges de bruit élevées:


○ VOL et VOH sont GND et VDD, respectivement.
• Aucune consommation statique de puissance.
○ Il n’y a jamais de chemin direct entre VDD et GND.
• Temps de montée et de descente sont comparables
○ Avec un dimensionnement approprié.
• Les niveaux logiques ne dépendent pas du rapport
de dimensions des transistors « ratioless logic ».
• Le délai de propagation est fonction de la
capacitance de la charge et la résistance des
transistors.
• Aucun courant à l’entrée.

GELE5340 – Gabriel Cormier, Université de Moncton 19


Calcul du délai

• Pour faire le calcul du délai des porte


logiques, on utilise le modèle d’interrupteur
du MOSFET.
○ Les PMOS et NMOS sont remplacés par des
interrupteurs ayant une résistance infinie lorsqu’ils
sont OFF et une résistance finie lorsqu’ils sont
ON.
• Un point important:
○ Le délai dépend de la combinaison des entrées.

GELE5340 – Gabriel Cormier, Université de Moncton 20


Modèle pour le délai
VDD VDD

A B
VDD B

Cint
CL

A A
B

CL Cint CL

A A A B

Inverseur NAND2 NOR2

GELE5340 – Gabriel Cormier, Université de Moncton 21


Effet de l’entrée sur le délai
VDD
Le délai dépend de la combinaison d’entrées.
Rp Rp
A B Transition de bas à haut:

A = 0 ou B = 0: t pr  0.69RpCL
Rn CL
Rp
A = 0 et B = 0: t pr  0.69 CL
B 2

Rn Cint Transition de haut à bas: Le nœud interne


a un impact
A A = 1 et B = 1:
t pf  0.69Rn 2CL  Cint 
NAND2 On a donc 3 délais différents pour le NAND2.

GELE5340 – Gabriel Cormier, Université de Moncton 22


Délai d’une porte NAND
3 Entrée Délai
A=B=10 (ps)
2.5
A=B=01 67
2
A=1, B=01 64
1.5 A=1 0, B=1
Tension

A= 01, B=1 61
1
A=1, B=10 A=B=10 45
0.5

0
A=1, B=10 80
0 100 200 300 400
A= 10, B=1 81
Temps (ps)
NMOS = 0.5m/0.25 m
PMOS = 0.75m/0.25 m
CL = 100 fF

GELE5340 – Gabriel Cormier, Université de Moncton 23


Délai d’une porte NAND
VDD
Transition la plus rapide: A = B = 1 → 0 ?
Rp Rp
Ce cas implique que CL et Cint sont
A B branchés à GND en premier, et
qu’ensuite on a deux PMOS en parallèle
qui vont charger CL.
Rn CL

B Transition la plus lente: A = 1 → 0 , B = 1 ?

Cint Ce cas implique que CL et Cint sont


Rn
branchés à GND en premier, et
A qu’ensuite on a un PMOS qui doit
charger CL et Cint.

NAND2

GELE5340 – Gabriel Cormier, Université de Moncton 24


Dimensionnement des portes: NAND
VDD
Pour dimensionner les FET, on doit considérer de
quelle façon ils sont branchés.
A 2 B 2 On compare à un inverseur auquel les PMOS sont
de dimension 2 et les NMOS sont de dimension 1.
On veut donc s’assurer que la combinaison des
CL NMOS donne toujours 1, et que la combinaison
des PMOS donne toujours 2, en termes de
B 2 résistances.
Ex: NAND2
Cint
Les NMOS sont en série. Pour obtenir la même
résistance qu’un seul NMOS, il faut les faire deux
A 2
fois plus gros (et donc la moitié de la résistance).
Les PMOS sont en parallèle. Dans le pire cas,
un sera ON et l’autre OFF. Donc ils peuvent avoir
NAND2
la même dimension que le PMOS de l’inverseur.

GELE5340 – Gabriel Cormier, Université de Moncton 25


Dimensionnement des portes: NOR
VDD
Le travail est le même: on compare avec un
inverseur où le PMOS est de dimension 2 et le
NMOS de dimension 1.
B 4

Cint
NOR2:
A 4 Les NMOS sont en parallèle. Donc, dans le
pire cas, il y aura 1 NMOS ON. On peut donc
faire les deux NMOS de dimension minimale,
CL soit 1.

A B Il y a deux PMOS en série dans le pire cas; il


1 1
faut donc faire les deux PMOS 2 fois plus gros
(pour réduire la résistance de moitié). Ils seront
donc de dimension 4.
NOR2

GELE5340 – Gabriel Cormier, Université de Moncton 26


Dimensionnement: porte complexe
VDD

B 8 6
A 43
C 8 6

D 4 6
F  D  A  (B  C)
A 2

D 1
B 2C 2

GELE5340 – Gabriel Cormier, Université de Moncton 27


Entrance: effet sur le délai
VDD

B C D
A

CL
A

C3
B
NAND4 Délai (si les NMOS sont égaux):

C
C2 t pHL  0.69Reqn C1  2C2  3C3  4CL 

C1 Le délai se détériore rapidement en


D fonction de l’entrance.

GELE5340 – Gabriel Cormier, Université de Moncton 28


Entrance: effet sur le délai

1250
quadratique
1000

On devrait éviter
750 des portes avec
tp (ps)

tpHL
une entrance plus
500
tp grande que 4.

250 tpLH
linéaire
0
2 4 6 8 10 12 14 16

entrance

GELE5340 – Gabriel Cormier, Université de Moncton 29


Techniques de design

• On cherche maintenant à améliorer le design


des circuits.
• Certaines techniques sont reliées à la
structure physique du circuit:
○ Dimensionnement
• D’autres sont reliées à la logique du circuit:
○ Organisation des entrées
○ Structures logiques alternatives
○ Utilisation de portes de transfert

GELE5340 – Gabriel Cormier, Université de Moncton 30


Technique de design #1
Dimensionnement progressif

Le NMOS le plus près de la sortie a


CL seulement besoin de décharger CL. On
InN MN
peut le faire de dimension minimum (ou
le plus petit).
On fait les autres transistors de plus en
In3 M3 C3 plus gros (parce qu’ils doivent décharger
de plus en plus de capacitances).
C2
In2 M2 M1 > M2 > M3 > … > MN

C1 On peut réduire le délai jusqu’à 20% en


In1 M1
utilisant cette technique. Cependant, les
bénéfices diminuent au fur et à mesure
que la technologie diminue.

GELE5340 – Gabriel Cormier, Université de Moncton 31


Technique de design #2
Organisation des transistors: concept du chemin critique

In3 CL chargé In1 CL chargé

1 0→1
In2 C2 chargé In2 C2 déchargé
1 1
In1 C1 chargé In3 C1 déchargé
0→1 1

Le délai est fonction du temps Le délai est fonction du temps


nécessaire pour décharger CL, nécessaire pour décharger CL.
C1 et C2.

Le chemin critique doit être le plus près de la sortie.

GELE5340 – Gabriel Cormier, Université de Moncton 32


Technique de design #3
VDD
Organisation des FET:
B M7
A M8 L’ordre dans lequel on met les
M6 FET influence la vitesse de sortie.
C
La capacitance CL est composée
des capacitances de drain de M5,
D M5 M1 et M2.
C’est CL qui a le plus d’impact sur
CL le délai, et donc on doit la
A M2 minimiser autant que possible.

D M1
B M3 C M4

GELE5340 – Gabriel Cormier, Université de Moncton 33


Technique de design #3
VDD

D M5
Dans ce cas-ci, la capacitance CL
est composée des capacitances
B M7 de drain de M1, M3, M4, M6, et M8.
A M8 La fonction logique réalisée est la
C M6 même, mais ce circuit est plus
lent que le précédent.

CL
B M3 C M4

D M1
On doit avoir le minimum
A M2 possible de transistors
branchés à la sortie.

GELE5340 – Gabriel Cormier, Université de Moncton 34


Technique de design #4
Structures logiques alternatives

Au lieu d’une porte à 6 entrées,


on utilise deux portes avec une
entrance de 3. L’inverseur
devient un NAND.
Le tout est plus rapide, à cause
de la dépendance quadratique
du délai sur l’entrance.

GELE5340 – Gabriel Cormier, Université de Moncton 35


Technique de design #5
Isoler l’entrance de la sortance en utilisant des portes de transfert.

CL

CL

On a vu ceci au chapitre précédent.

GELE5340 – Gabriel Cormier, Université de Moncton 36


Dimensionnement des portes
Dimensionnement des portes

• Si on a plusieurs portes branchées ensemble


à une charge, comment faire pour minimiser
le délai?
• Quelle dimension doit-on donner aux portes
pour obtenir un délai minimum?
• On a déjà résolu ce problème pour des
inverseurs.
• On va donc généraliser la méthode utilisée
auparavant à des portes complexes.
GELE5340 – Gabriel Cormier, Université de Moncton 38
Rappel: dimensionnement de l’inverseur

In Out
1 2 3 N

CL
On avait trouvé que:
Si le nombre d’étages est fixe (connu):

f  F
N C
où F  L
Cin,1
Si le nombre d’étages est variable:

ln F
N
ln f opt

GELE5340 – Gabriel Cormier, Université de Moncton 39


Dimensionnement des portes
On va réécrire l’équation de délai sous une forme plus générale; de:

 Cext 
t p  t p 0 1    t p 0 1  f 

 C   
 g   
On écrit:

 gf 
t p  t p 0  p  
 où tp0 = délai intrinsèque de l’inverseur
  
f = sortance effective ou effort électrique
p = délai intrinsèque de la porte (sans charge)
g = effort logique

GELE5340 – Gabriel Cormier, Université de Moncton 40


Dimensionnement des portes

• On a ajouté deux nouveaux termes à


l’équation du délai:
○ p: rapport du délai de la porte au délai de
l’inverseur. C’est une mesure de combien plus
complexe est la porte par rapport à l’inverseur.
○ g: représente le fait qu’une porte complexe doit
travailler plus fort pour produire la même réponse.
C’est aussi une mesure de combien de
capacitance la porte présente à l’entrée pour
produire le même courant de sortie qu’un
inverseur.

GELE5340 – Gabriel Cormier, Université de Moncton 41


Délai intrinsèque p
Type de porte p

Inverseur 1

NAND à n entrées n

NOR à n entrées n

Multiplexeur à n directions 2n

XOR, XNOR n2n -1

GELE5340 – Gabriel Cormier, Université de Moncton 42


Effort logique
L’effort logique est le rapport de la capacitance d’entrée d’une porte sur la
capacitance d’entrée d’un inverseur ayant le même courant de sortie.

VDD VDD

VDD A 2 B 2 A 4
OUT
A 2 B 4
OUT A 2
OUT
A 1 B 2 A 1 B 1

g=1 g = 4/3 g = 5/3


Inverseur NAND2 NOR2

GELE5340 – Gabriel Cormier, Université de Moncton 43


Effort logique g
Nombre d’entrées

Type de porte 1 2 3 n

Inverseur 1

NAND 4/3 5/3 (n+2)/3

NOR 5/3 7/3 (2n+1)/3

Multiplexeur 2 2 2

XOR 4 12

Effort logique, si le rapport PMOS / NMOS est 2, pour du CMOS


complémentaire.

GELE5340 – Gabriel Cormier, Université de Moncton 44


Effort logique

• Portes non standard:


○ On peut avoir un effort logique différent pour
chaque entrée.
○ Effort logique différent pour une transition L  H
ou H  L.

GELE5340 – Gabriel Cormier, Université de Moncton 45


Délai en fonction de la sortance
Le modèle du délai d’une porte est
une fonction linéaire.
6 La pente de la courbe représente
5 l’effort logique, et l’abscisse à
l’origine représente le délai
4 intrinsèque.
3 Effort de la porte Le produit fg est appelé l’effort de
2 porte, h.

1 h  fg
Délai intrinsèque

1 2 3 4 5 6
f

GELE5340 – Gabriel Cormier, Université de Moncton 46


Délai d’un circuit complexe
Le délai total d’un circuit logique complexe (composé de différentes
portes: AND, NOT, OR, etc…) peut donc être écrit comme suit:

N N
 gj fj 
t p   t p, j  t p 0   p j  
j 1 j 1   
On fait l’analyse de la même manière que pour l’inverseur: on
trouve N – 1 dérivées partielles, et on les met à 0. On obtient
comme résultat:

f1 g1  f 2 g 2    f N g N
ou
h1  h2    hN
Chaque étage doit fournir le même effort de porte.

GELE5340 – Gabriel Cormier, Université de Moncton 47


Effort de branchement

• Il reste un autre paramètre à calculer: l’effort


de branchement (b).
○ L’effort de branchement est une mesure du
nombre de sorties auxquelles une porte est
branchée. Ces sorties vont réduire le courant
disponible pour charger ou décharger la
capacitance voulue.

GELE5340 – Gabriel Cormier, Université de Moncton 48


Effort de branchement

Effort de branchement:

Csur parcours  Chors parcours


b
Csur parcours

CL

GELE5340 – Gabriel Cormier, Université de Moncton 49


Méthode de l’effort logique
Il reste 3 termes à définir ayant rapport au parcours total:

N
G  g1 g 2  g n   g i Effort logique du parcours
i 1

N
B  b1b2 bn   bi Effort de branchement du parcours
i 1

N
CL fi N fi
F    Effort électrique du parcours
Cin,1 i 1 bi i 1 B

GELE5340 – Gabriel Cormier, Université de Moncton 50


Méthode de l’effort logique
On peut maintenant calculer l’effort total du parcours:

H  BFG
De façon semblable à l’inverseur, l’effort de porte qui minimise
le délai est:

hN H

Et le délai minimum dans le parcours est:

 N
D  t p 0   p j 
 
NNH
 
 j 1 

GELE5340 – Gabriel Cormier, Université de Moncton 51


Méthode de l’effort logique
Pour calculer la dimension s de chaque porte, on utilise l’équation
suivante:

 g1s1  i 1  f j 
si     
b 
 i   j
g j 1 
Typiquement, s1 = 1: le premier élément d’une suite de portes est de
dimension minimale.

GELE5340 – Gabriel Cormier, Université de Moncton 52


Méthode de l’effort logique

• La procédure générale est la suivante:


1. Calculer l’effort logique G du parcours.
2. Calculer les efforts de branchement (b), et l’effort
de branchement du parcours (B).
3. Calculer la sortance effective du parcours (F).
4. Déterminer l’effort de chaque étage (h).
5. Calculer la sortance (f) de chaque étage.
6. Calculer la dimension (s) de chaque étage.

GELE5340 – Gabriel Cormier, Université de Moncton 53


Exemple
1 b c
a
CL = 5

Dimensionner les portes pour minimiser le délai.

Selon les tableaux: g1 = 1; g2 = 5/3; g3 = 5/3; g4 = 1


5 5 25
G  1   1 
3 3 9
Branchement: il n’y a pas de branchement, donc b1 = b2 = b3 = b4 = 1

B=1

F = 5/1 = 5

GELE5340 – Gabriel Cormier, Université de Moncton 54


Exemple
1 b c
a
CL = 5

Dimensionner les portes pour minimiser le délai.

H = GFB = (5)(25/9) = 125/9 = 13.9

h  4 H  1.93

h h h h
f1   1.93 f 2   1.16 f3   1.16 f4   1.93
g1 g2 g3 g4

GELE5340 – Gabriel Cormier, Université de Moncton 55


Exemple
1 b c
a
CL = 5

Dimensionner les portes pour minimiser le délai.

On calcule les dimensions:

f1 g1 f1 f 2 g1 f1 f 2 f 3 g1
a  1.16 b   1.34 c  2.60
g2 g3 g4

GELE5340 – Gabriel Cormier, Université de Moncton 56


Logique proportionnée
Logique proportionnée

• Autre méthode pour réaliser des fonctions


logiques.
• But: réduire le nombre de transistors utilisés
par rapport au CMOS complémentaire.
○ Implique une réduction dans la performance du
circuit.
• Les trois techniques de logique proportionnée
remplacent le circuit PUN par une charge.

GELE5340 – Gabriel Cormier, Université de Moncton 58


Logique proportionnée
VDD VDD VDD

Charge Charge Charge


résistive NMOS VT < 0 PMOS
F F F

In1 In1 In1


In2 In2 In2
PDN PDN PDN


InN InN InN

a) Charge résistive b) Charge NMOS c) Pseudo-NMOS

GELE5340 – Gabriel Cormier, Université de Moncton 59


Logique proportionnée
Charge résistive

VDD Caractéristiques:

• N transistors nécessaires (pour N entrées)


Charge RL • VOH = VDD
résistive
RPDN
F • VOL  VDD
RPDN  RL
In1 • Réponse non-symétrique
In2
PDN • Consommation statique de puissance

InN • tpLH = 0.69RLCL

GELE5340 – Gabriel Cormier, Université de Moncton 60


Logique proportionnée
Charges actives
VDD VDD

Charge Charge
NMOS VT < 0 PMOS
F F

In1 In1
In2 In2
PDN PDN


InN InN

Charge NMOS Pseudo-NMOS

GELE5340 – Gabriel Cormier, Université de Moncton 61


Pseudo-NMOS

• Il faut N+1 transistors pour réaliser une fonction à N


entrées, plutôt que 2N transistors.
• La sortie haute VOH = VDD, puisque les NMOS sont
OFF quand la sortie devient haute.
• Cependant, la sortie basse VOL n’est pas 0V.
• De plus, il y a consommation statique de puissance
quand la sortie est basse.
• La valeur de sortie dépend du rapport de dimension
entre les NMOS et le PMOS: on appelle ça la
logique proportionnée.

GELE5340 – Gabriel Cormier, Université de Moncton 62


Pseudo-NMOS
VDD
VOH = VDD

Pour calculer VOL, il faut que


CL le courant dans le PMOS soit
A B C D le même que dans les
NMOS. Le PMOS devrait
être plus petit que les
NMOS.

La puissance statique dissipée est P = VDDIlow où Ilow est le courant


dans le PMOS quand la sortie est basse (« 0 » logique).

GELE5340 – Gabriel Cormier, Université de Moncton 63


Inverseur pseudo-NMOS
Effet de la taille du PMOS sur la courbe VTC de l’inverseur pseudo-NMOS.
3.0

2.5

2.0 W/Lp = 4
Vout (V)

1.5

W/Lp = 2
1.0

W/Lp = 0.5 W/Lp = 1


0.5

W/Lp = 0.25
0.0
0.0 0.5 1.0 1.5 2.0 2.5

Vin (V)

GELE5340 – Gabriel Cormier, Université de Moncton 64


DCVSL

• Une technique utilisée pour améliorer la


performance du pseudo-NMOS est la technique du
DCVSL (differential cascode voltage swing logic), la
logique de commutation cascode différentielle.
• On utilise deux réseaux PDN, le deuxième réseau
étant le complément du premier (un seul réseau
permet un chemin à GND).
• On implémente alors la fonction logique voulue et
son complément.
• Ceci permet d’obtenir une variation à la sortie de
GND à VDD.

GELE5340 – Gabriel Cormier, Université de Moncton 65


DCVSL
Exemple:
VDD VDD
État initial: F = 1, F = 0.
Supposons que la combinaison
M1 M2 d’entrées fait en sorte que PDN1
conduit (donc PDN2 ne conduit pas).
F F
PDN1 va commencer à faire
descendre la tension F. Ceci allume
In1 M2, qui commence à faire monter la
In1 tension F. Lorsque F a monté haut

PDN1 PDN2
InN assez, M1 devient OFF, et PDN1 peut
InN décharger la charge jusqu’à GND.

GELE5340 – Gabriel Cormier, Université de Moncton 66


DCVSL
VDD VDD

2.5
M1 M2

F F AB

Tension [V]
1.5
AB
A, B
A 0.5 A,B
A B

B
-0.5 0 0.2 0.4 0.6 0.8 1.0
Time [ns]

GELE5340 – Gabriel Cormier, Université de Moncton 67


Logique passante
Logique passante

• En logique passante, on utilise le transistor


pour passer le signal d’une entrée à une
sortie.
• L’entrée n’est pas nécessairement à la grille
du NMOS, mais peut être à la source ou au
drain.
• On utilise un NMOS parce qu’il est plus
rapide qu’un PMOS.

GELE5340 – Gabriel Cormier, Université de Moncton 69


Logique passante

B Pour trouver la fonction logique de


ce circuit, on procède cas-par-cas:
Si B = 0, le NMOS supérieur est
A
OFF, et celui d’en bas est ON: la
B sortie F = 0.
F
Si B = 1, le NMOS supérieur est
ON et celui du bas est OFF: la sortie
F = A.
À l’aide d’une table de vérité, on
Porte AND peut confirmer qu’il s’agit de la
fonction AND.
F  A B

GELE5340 – Gabriel Cormier, Université de Moncton 70


Logique passante: NMOS

• Cependant, il y a un problème avec ce type


de circuit.
• Le nœud de sortie peut seulement se charger
jusqu’à une valeur de VDD – VT: le NMOS
devient OFF quand VGS < VT.
• Il faudra donc faire attention pour ne pas
brancher trop de transistors passants en
série.

GELE5340 – Gabriel Cormier, Université de Moncton 71


Logique passante: NMOS

IN 3.0
In

x OUT 2.0
Out

Tension [V]
VDD x

1.0
Le nœud x peut seulement se
charger jusqu’à une valeur de
VDD – VT. 0.0
0 0.5 1 1.5 2
De plus, l’effet du substrat, Temps [ns]
qu’on ne peut ignorer ici, fait
augmenter la tension seuil (et
donc Vout est plus faible).

GELE5340 – Gabriel Cormier, Université de Moncton 72


Porte de transmission

• Une solution au problème du chargement du


nœud de sortie du transistor passant est la
porte de transmission.
• On met un PMOS en parallèle avec le
NMOS. Ce PMOS s’occupera de faire monter
le nœud jusqu’à VDD après que le NMOS
sera OFF.

GELE5340 – Gabriel Cormier, Université de Moncton 73


Porte de transmission

B
B

A F A F

B
B

a) Circuit b) Symbole

La porte de transmission fonctionne comme le transistor passant,


sauf qu’il y a un PMOS pour faire monter la tension jusqu’à VDD.

GELE5340 – Gabriel Cormier, Université de Moncton 74


Résistance d’une porte de transmission
30

Rn
20 Rp B Rn
Résistance, kW

A F
10
Rn || Rp
Rp
B
0
0.0 1.0 2.0
Vout , V

Remarque: la résistance d’une porte de transmission est


pratiquement constante.

GELE5340 – Gabriel Cormier, Université de Moncton 75


Porte de transmission: exemple

S
VDD

S F  A S  B  S

Multiplexeur 2x1

GELE5340 – Gabriel Cormier, Université de Moncton 76


Porte de transmission: exemple

B
B Cette implémentation ne nécessite
F que 6 transistors (incluant l’inverseur
pour inverser B); une implémentation
A A en CMOS complémentaire
nécessiterait 12 transistor.

B
B
XOR

GELE5340 – Gabriel Cormier, Université de Moncton 77


Porte de transmission: exemple

Cette implémentation nécessite 5


A Out transistors (incluant l’inverseur pour
inverser A); une implémentation en
B CMOS complémentaire nécessiterait
6 transistor.

OR

GELE5340 – Gabriel Cormier, Université de Moncton 78


Logique dynamique
Logique dynamique

• Dans des circuits statiques, à chaque point


dans le temps (sauf pendant la commutation)
la sortie est branchée à GND ou VDD par un
chemin de résistance faible.
• Les circuits dynamiques fonctionnement en
stockant temporairement la valeur des
signaux sur la capacitance de noeuds à
haute impédance.

GELE5340 – Gabriel Cormier, Université de Moncton 80


Logique dynamique

• Les circuits dynamiques utilisent le même réseau


PDN que le CMOS complémentaire, mais aucun
réseau PUN.
• Dans les circuits dynamiques, on ajoute une horloge
pour faire le contrôle du circuit.
• Il faudra donc utiliser deux transistors
supplémentaires, un PMOS et un NMOS.
• Le fonctionnement du circuit se fait en deux phases:
○ Précharge
○ Évaluation

GELE5340 – Gabriel Cormier, Université de Moncton 81


Porte dynamique
VDD

On opère en deux phases:


Clk Mp
Out Précharge: Clk = 0. Pendant la
précharge, le condensateur de
CL sortie est chargé à VDD.
In1
In2 Évaluation: Clk = 1. Pendant
PDN l’évaluation, si la combinaison

InN d’entrées fait en sorte que la sortie


doit être 0, le PDN va décharger le
condensateur. Sinon, CL garde sa
Clk Me valeur de VDD.

Note: on utilise souvent le symbole  pour


l’horloge.

GELE5340 – Gabriel Cormier, Université de Moncton 82


Porte dynamique: exemple
VDD

Clk on
Mp
off Précharge: Clk = 0
Out 1
Évaluation: Clk = 1
Out  A  B  C
A
C
B

Clk Me off
on

GELE5340 – Gabriel Cormier, Université de Moncton 83


Conditions à la sortie

• Lorsque la sortie d’une porte dynamique est


déchargée, elle ne peut pas être chargée à
nouveau avant la prochaine opération.
• Les entrées à la porte ne peuvent faire qu’au
plus une transition pendant l’évaluation.
• La sortie peut être dans l’état de haute
impédance pendant et après l’évaluation
(PDN off); l’état est stocké sur CL.

GELE5340 – Gabriel Cormier, Université de Moncton 84


Propriétés des portes dynamiques

• Fonction logique implantée par le PDN seulement:


○ Il y a N + 2 transistors (vs 2N en CMOS statique complémentaire)
• Sortie à variation max (VOL = GND et VOH = VDD)
• Logique non proportionnée – la dimension des
transistors n’affecte pas les niveaux logiques.
• Commutation plus rapide
○ Capacitance de charge réduite à cause d’une capacitance
d’entrée plus faible (Cin)
○ Capacitance de charge réduite à cause d’une capacitance de
sortie plus faible (Cout)
○ Pas de Isc, donc la totalité du courant du PDN décharge CL.

GELE5340 – Gabriel Cormier, Université de Moncton 85


Propriétés des portes dynamiques

• Dissipation totale de puissance habituellement plus


élevée que le CMOS statique
○ Pas de chemin direct entre VDD et GND (Psc)
○ Pas d’erreurs
○ Probabilité de transition plus élevée
○ Charge supplémentaire sur CLK
• PDN fonctionne aussitôt que les entrées dépassent
VTn, donc VM, VIH et VIL = VTn
○ Marge de bruit faible (NML)
• Nécessite une horloge pour précharge / évaluation

GELE5340 – Gabriel Cormier, Université de Moncton 86


Désavantage #1: fuite de charge

• Un premier problème rencontré avec


l’utilisation de circuits dynamiques est la fuite
de charge.
• Des diodes parasites dans le circuit et les
courants sous-seuil produisent un très faible
courant qui, à la longue, va décharger le
condensateur CL.
• Il y a donc une fréquence minimale à laquelle
le circuit peut opérer.

GELE5340 – Gabriel Cormier, Université de Moncton 87


Désavantage #1: fuite de charge
VDD

CLK
Clk Mp
VOut

CL
A

VOut Évaluation
Clk Me
Précharge

Sources de fuites.

Le courant sous-seuil est dominant.

GELE5340 – Gabriel Cormier, Université de Moncton 88


Désavantage #1: fuite de charge
SOLUTION:
VDD
Rétablisseur de
niveau.
Clk Mp

Out
CL
A

B Le rétablisseur de niveau permet de maintenir


le niveau logique « 1 » sur CL quand la sortie
est 1.
Clk Me

GELE5340 – Gabriel Cormier, Université de Moncton 89


Désavantage #2: partage de charges

• Le partage de charges est un effet qui se


produit plus rapidement que la fuite de
charge:
○ La charge stockée sur CL se répartit entre les
différentes capacitances parasites des NMOS, ce
qui réduit la tension aux bornes de CL.
• Une fois la charge répartie, la sortie est
quand même susceptible à la fuite de charge,
qui va réduire la tension à la sortie encore
plus.

GELE5340 – Gabriel Cormier, Université de Moncton 90


Désavantage #2: partage de charges
VDD
La charge originalement stockée sur CL
Clk Mp est répartie sur CL et Ca, ce qui réduit la
tension à la sortie.

Il faut qu’il y ait conservation de charge:


CL
A
Qt  CLVDD  CLV f  CaV f
B=0 Ca
Il n’y a plus de redistribution de charge
lorsque la tension est équilibrée.
Cb
Clk Me CL
Vf  VDD
C L  Ca

GELE5340 – Gabriel Cormier, Université de Moncton 91


Désavantage #2: partage de charges
VDD
Cependant, si la tension Va (sur la
capacitance Ca) devient trop élevée,
Clk Mp le FET Ma devient OFF.
Dans ce cas-ci, l’effet du substrat ne
peut être ignoré, ce qui augmente la
CL tension seuil.
A Ma
La condition limite (juste quand Ma
Ca devient OFF) est:
B=0
Ca Vtn

Cb CL VDD  Vtn
Clk Me

GELE5340 – Gabriel Cormier, Université de Moncton 92


Désavantage #2: partage de charges
Ca Vtn
VDD Cas 1:  MA = OFF
CL VDD  Vtn
Clk Mp
Vf 
CL  Ca VDD  CaVtn
CL
CL
A Ca Vtn
a Cas 2: 
CL VDD  Vtn
B=0 Ca
CL
Vf  VDD
Clk Me
Cb C L  Ca

GELE5340 – Gabriel Cormier, Université de Moncton 93


Désavantage #2: partage de charges

• Solution:
○ Précharger les nœuds internes à VDD en utilisant
un transistor alimenté par l’horloge.
 Ceci rajoute beaucoup de connexions pour des
fonctions complexes.
○ La fonction logique est aussi plus lente pour
générer un 0: il faut décharger plusieurs
capacitances.

GELE5340 – Gabriel Cormier, Université de Moncton 94


Désavantages

• Il existe plusieurs autres désavantages des


circuits dynamiques, dont le plus important
est le couplage capacitif.
• Le couplage capacitif permet à certains
nœud de monter plus haut que la tension
d’alimentation. Si la tension augmente trop,
les diodes parasites qui sont normalement
polarisées inverses peuvent commencer à
conduire, et détruire le signal stocké.

GELE5340 – Gabriel Cormier, Université de Moncton 95


Portes dynamiques en cascade

• Autre que les effets de dégradation du signal,


il y a un autre désavantage majeur aux
circuits dynamiques: la difficulté de les mettre
en cascade.
• On verra qu’il faut s’assurer que les entrées
soient tous 0 pendant la phase de précharge,
et que seules les transitions 0 → 1 sont
permises pendant la phase d’évaluation.

GELE5340 – Gabriel Cormier, Université de Moncton 96


Portes dynamiques en cascade
VDD VDD V

Clk Mp Clk Clk


Mp
Out2
Out1 In
In
VTn
Out1
Clk Me Clk Me
V
Out2

t
Seules des transitions 0 → 1 sont permises aux entrées.

GELE5340 – Gabriel Cormier, Université de Moncton 97


Logique domino

• Pour s’assurer que les entrées à chaque


PDN sont « 0 » pendant la phase de
précharge, on ajoute un inverseur statique à
la sortie de chaque porte dynamique.
• On appelle ce nouveau type de circuit
domino, puisque que l’entrée se propage
vers la sortie en faisant décharger les sorties
intermédiaires.

GELE5340 – Gabriel Cormier, Université de Moncton 98


Logique domino
VDD VDD
Inverseur statique
Clk Mp Clk Mp
Out2
Out1
In1
In2 PDN In4 PDN
In3 In5 Avec l’inverseur statique,
on peut précharger chaque
sortie à VDD, et s’assurer
Clk Me Clk Me que chaque entrée est 0.

GELE5340 – Gabriel Cormier, Université de Moncton 99


Logique domino

• La phase évaluation doit avoir une période


qui est assez longue pour permettre à tous
les étages de se décharger.
• Ceci affecte la fréquence maximale
d’opération.
• Les mêmes contraintes de fuite de charge et
partage de charges s’appliquent à ce type de
circuit.

GELE5340 – Gabriel Cormier, Université de Moncton 100


Topologie des circuits
Topologie des circuits

• On explore ici différentes méthodes pour faire


le design de la topologie des circuits.
• L’expérience est le meilleur atout pour faire la
topologie de fonctions complexes, mais une
technique aide dans le design:
○ Méthode du parcours d’Euler
• On verra aussi les techniques de cellules
standards, qui permet de simplifier la
construction de circuits complexes.
GELE5340 – Gabriel Cormier, Université de Moncton 102
Schémas squelettisés

• Les schémas squelettisés sont des


diagrammes sans dimension de la topologie
des circuits.
• Ils permettent de rapidement faire un croquis
de la topologie du circuit, sans tenir compte
des petits détails de fabrication.
• Ils permettent aussi d’identifier les transistors,
les entrées et les sorties, et l’alimentation.

GELE5340 – Gabriel Cormier, Université de Moncton 103


Schémas squelettisés: exemples

VDD VDD

Out
Out
In
GND
A B
Inverseur GND
NAND2

On essaie d’utiliser les même couleurs que dans l’éditeur de topologie.

GELE5340 – Gabriel Cormier, Université de Moncton 104


Graphe logique

• Le graphe logique est une représentation des


parcours utilisés par les signaux.
• Chaque nœud du graphe représente un
nœud dans le circuit où deux (ou plus)
transistors sont branchés ensemble, ou le
lieu où il y a une connexion à VDD ou GND.
• La courbe qui relie deux nœud représente un
transistor.
• On construit un graphe pour le PDN et un
graphe pour le PUN.
GELE5340 – Gabriel Cormier, Université de Moncton 105
Graphe logique
VDD X

B
j C C
A
X VDD
i

X  C   A  B
C A j B
i

A B GND

GELE5340 – Gabriel Cormier, Université de Moncton 106


Parcours d’Euler

• Une fois le graphe logique construit, il faut définir un


parcours qui permet de passer sur chaque courbe
une seule fois et visiter chaque noeud.
• Le parcours utilisé devient le parcours d’Euler, et
permet de minimiser les connexions dans la création
de la topologie du circuit.
• Si on peut trouver un tel parcours, on aura besoin
d’utiliser qu’une seule bande de diffusion pour les
NMOS et les PMOS.

GELE5340 – Gabriel Cormier, Université de Moncton 107


Parcours d’Euler
X X

C C

X VDD X VDD
i i

A j B A j B

GND GND

Parcours d’Euler: A B C

GELE5340 – Gabriel Cormier, Université de Moncton 108


Topologie du circuit

• À l’aide du parcours d’Euler, on peut construire le


diagramme de bâtons correspondant au circuit.
• On commence en plaçant deux bande horizontales
de métal 1, une pour VDD et une pour GND.
• On ajoute ensuite (horizontalement) une bande de
diffusion pour le PDN et une bande pour le PUN.
• On place par après une bande verticale de
polysilicone pour chaque entrée.
• On finit le diagramme en faisant les connexions
selon le parcours d’Euler.

GELE5340 – Gabriel Cormier, Université de Moncton 109


Topologie du circuit
X

VDD

X VDD
i X

A j B A B C
GND

GND

GELE5340 – Gabriel Cormier, Université de Moncton 110


Cellules standard

• Dans la construction de cellules standard, les


signaux (entrées / sorties) sont routées de façon
perpendiculaire à l’alimentation et la mise à terre.
• Généralement, le polysilicone est placé
verticalement, et l’alimentation et GND sont placés
horizontalement.
• La hauteur des cellules est constante. C’est un point
important; ça permet de facilement brancher
plusieurs cellules ensemble pour réaliser des
fonctions complexes.

GELE5340 – Gabriel Cormier, Université de Moncton 111


Cellules standard: exemple
VDD VDD

A B
Inverseur NAND2
Out
In
Out

GND GND

GELE5340 – Gabriel Cormier, Université de Moncton 112


Cellules standard: exemple
VDD VDD
Il est facile de brancher les
deux cellules ensemble.
Les deux alimentations sont
automatiquement connectés.
Les deux mises à terre sont
A B
automatiquement connectés.
Out Il suffit tout simplement
In
d’ajouter un lien en métal 1
Out
pour brancher les deux
cellules.

GND GND

GELE5340 – Gabriel Cormier, Université de Moncton 113


Conclusion

• On a vu comment construire des fonctions logiques


de plusieurs façons:
○ CMOS statique complémentaire
○ Pseudo-NMOS
○ Logique passante
○ Portes de transmission
○ CMOS dynamique
○ CMOS domino
• On a aussi vu comment dimensionner des circuits
(méthode de l’effort logique), et comment faciliter la
construction de la topologie.

GELE5340 – Gabriel Cormier, Université de Moncton 114

Vous aimerez peut-être aussi