GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques...

114
GELE5340 Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires

Transcript of GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques...

Page 1: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340

Circuits ITGÉ (VLSI)

Chapitre 5: Design de fonctions

logiques combinatoires

Page 2: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 2

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.

Page 3: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 3

Logique combinatoire vs séquentielle

Circuit logique

combinatoire

Circuit logique

combinatoire

États

In Out In Out

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.

Page 4: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 4

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.

Page 5: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 5

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.

Page 6: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 6

CMOS statique complémentaire

PUN

PDN

VDD

In1

In2

InN …

In1

In2

InN …

F(In1, In2, …, InN)

PMOS seulement

NMOS seulement

Le PUN et le PDN sont des

réseaux complémentaires.

La fonction du PUN est de

brancher la sortie à VDD

lorsqu’un « 1 » est

nécessaire.

La fonction du PDN est de

brancher la sortie à GND

lorsqu’un « 0 » est

nécessaire.

Page 7: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 7

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.

Page 8: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 8

NMOS: logique

Vin = 1 Mp

CL

VDD

Mp

CL Vout : 0 → VDD – VTn

1. Si on fait une transition de 0 → 1

à la sortie, le condensateur

(initialement à 0V) se charge

jusqu’à VDD – VTn.

S

D

Vin = 1

Vout : VDD → 0

2. Si on fait une transition de 1 → 0

à la sortie, le condensateur

(initialement à VDD) se décharge

jusqu’à 0V.

S

D

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

Page 9: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 9

PMOS: logique

Vin = 0 Mp

CL

VDD

Mp

CL Vout : 0 → VDD

1. Si on fait une transition de 0 → 1

à la sortie, le condensateur

(initialement à 0V) se charge

jusqu’à VDD.

D

S

Vin = 0

Vout : VDD → |VTp|

2. Si on fait une transition de 1 → 0

à la sortie, le condensateur

(initialement à VDD) se décharge

jusqu’à |VTp|.

D

S

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

Page 10: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 10

Combinaisons série / parallèle: NMOS

A B

X Y

Combinaison

série

Y = X seulement si les deux

NMOS sont ON. Il s’agit de la

fonction AND.

BAXY si

A

B

X Y

Combinaison

parallèle

Y = X si un des deux NMOS est

ON. Il s’agit de la fonction OR.

BAXY si

Page 11: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 11

Combinaisons série / parallèle: PMOS

A B

X Y

Combinaison

série

Y = X seulement si les deux

PMOS sont ON. Il s’agit de la

fonction NOR.

BAXY si

A

B

X Y

Combinaison

parallèle

Y = X si un des deux PMOS est

ON. Il s’agit de la fonction NAND.

BAXY si

Page 12: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 12

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:

• 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.

BABA

BABA

Page 13: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 13

Exemple de porte : NAND

A B OUT

0 0 1

0 1 1

1 0 1

1 1 0

Table de vérité d’une porte NAND

à 2 entrées

La fonction logique dans ce cas est:

BABAOUT

Le circuit est donc:

A

VDD

A

B

B

OUT

Le seul cas où la sortie est 0 est

quand A et B sont 1.

Si A ou B est 0,

un PMOS est

ON, et la sortie

est VDD.

Si A et B sont 1,

les NMOS sont

ON, et la sortie

est 0.

Page 14: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 14

Exemple de porte : NOR

A B OUT

0 0 1

0 1 0

1 0 0

1 1 0

Table de vérité d’une porte NOR à

2 entrées

La fonction logique dans ce cas est:

BABAOUT

Le circuit est donc:

A

VDD

A

B

B

OUT Le seul cas où la sortie est 1 est

quand A et B sont 0.

Si A et B sont 0,

les PMOS sont

ON, et la sortie

est VDD.

Si A ou B sont 1,

un NMOS est

ON, et la sortie

est 0.

Page 15: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 15

Exemple de porte complexe

B

B

C

C

VDD

A

D

A

D

)( CBADF

Étant donné la fonction,

comment construire les

réseaux PUN et PDN?

Page 16: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 16

Design d’une porte complexe: PDN

B C

A

D

)( CBADF

Puisqu’on a B+C dans

la fonction, on les mets

en parallèle.

Puisque A multiplie

(B+C), on le met en

série avec ces deux

FETs.

Puisque D est additionné

à (A•(B+C)), on le met en

parallèle.

Remarque: la fonction est

inversante (le tout est NOT)

Page 17: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 17

Design d’une porte complexe: PUN

B C

A

D

)( CBADF

B

C

VDD

A

D

PDN PUN

Page 18: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 18

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.

Page 19: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 19

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.

Page 20: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 20

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.

Page 21: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 21

Modèle pour le délai

VDD

Inverseur

VDD

NAND2

CL

CL

Cint

A

A

A

B

A B

A B

VDD

A

B

CL

Cint

NOR2

Page 22: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 22

Effet de l’entrée sur le délai

VDD

NAND2

CL

Cint

A

B

A B

Le délai dépend de la combinaison d’entrées.

Transition de bas à haut:

A = 0 ou B = 0: Lppr CRt 69.0

A = 0 et B = 0: L

p

pr CR

t2

69.0

Transition de haut à bas:

int269.0 CCRt Lnpf

A = 1 et B = 1:

Rp Rp

Rn

Rn

On a donc 3 délais différents pour le NAND2.

Le nœud interne

a un impact

Page 23: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 23

Délai d’une porte NAND

0

0.5

1

1.5

2

2.5

3

0 100 200 300 400

Entrée Délai

(ps)

A=B=01 67

A=1, B=01 64

A= 01, B=1 61

A=B=10 45

A=1, B=10 80

A= 10, B=1 81 Temps (ps)

Tensio

n

NMOS = 0.5m/0.25 m

PMOS = 0.75m/0.25 m

CL = 100 fF

A=B=10

A=1, B=10

A=1 0, B=1

Page 24: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 24

Délai d’une porte NAND

VDD

NAND2

CL

Cint

A

B

A B

Rp Rp

Rn

Rn

Transition la plus rapide: A = B = 1 → 0 ?

Ce cas implique que CL et Cint sont

branchés à GND en premier, et

qu’ensuite on a deux PMOS en parallèle

qui vont charger CL.

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

Ce cas implique que CL et Cint sont

branchés à GND en premier, et

qu’ensuite on a un PMOS qui doit

charger CL et Cint.

Page 25: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 25

Dimensionnement des portes: NAND VDD

NAND2

CL

Cint

A

B

A B

Pour dimensionner les FET, on doit considérer de

quelle façon ils sont branchés.

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

NMOS donne toujours 1, et que la combinaison

des PMOS donne toujours 2, en termes de

résistances.

Ex: NAND2

Les NMOS sont en série. Pour obtenir la même

résistance qu’un seul NMOS, il faut les faire deux

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

la même dimension que le PMOS de l’inverseur.

2

2

2 2

Page 26: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 26

Dimensionnement des portes: NOR

A B

VDD

A

B

CL

Cint

NOR2

Le travail est le même: on compare avec un

inverseur où le PMOS est de dimension 2 et le

NMOS de dimension 1.

NOR2:

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,

soit 1.

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

faut donc faire les deux PMOS 2 fois plus gros

(pour réduire la résistance de moitié). Ils seront

donc de dimension 4.

1 1

4

4

Page 27: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 27

Dimensionnement: porte complexe

B

B

C

C

VDD

A

D

A

D

)( CBADF

1

2 2

2

4

4

8

8

6

6

6

3

Page 28: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 28

Entrance: effet sur le délai

VDD

NAND4

B

B

C

C

A D

A

D

CL

C3

C2

C1

Délai (si les NMOS sont égaux):

LeqnpHL CCCCRt 43269.0 321

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

fonction de l’entrance.

Page 29: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 29

Entrance: effet sur le délai t p

(p

s)

entrance

0

250

500

750

1000

1250

2 4 6 8 10 12 14 16

tpHL

quadratique

linéaire

tp

tpLH

On devrait éviter

des portes avec

une entrance plus

grande que 4.

Page 30: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 30

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

Page 31: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 31

Technique de design #1

InN CL

C3

C2

C1

In3

In2

In1

MN

M3

M2

M1

Dimensionnement progressif

Le NMOS le plus près de la sortie a

seulement besoin de décharger CL. On

peut le faire de dimension minimum (ou

le plus petit).

On fait les autres transistors de plus en

plus gros (parce qu’ils doivent décharger

de plus en plus de capacitances).

M1 > M2 > M3 > … > MN

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

utilisant cette technique. Cependant, les

bénéfices diminuent au fur et à mesure

que la technologie diminue.

Page 32: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 32

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

CL

C2

C1

In3

In2

In1

0→1

chargé

chargé

chargé

1

1

Le délai est fonction du temps

nécessaire pour décharger CL,

C1 et C2.

CL

C2

C1

In1

In2

In3

0→1

déchargé

déchargé

chargé

1

1

Le délai est fonction du temps

nécessaire pour décharger CL.

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

Page 33: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 33

Technique de design #3

B

B

C

C

VDD

A

D

A

D

Organisation des FET:

L’ordre dans lequel on met les

FET influence la vitesse de sortie.

La capacitance CL est composée

des capacitances de drain de M5,

M1 et M2.

C’est CL qui a le plus d’impact sur

le délai, et donc on doit la

minimiser autant que possible.

M5

M1

M2

M3 M4

M6

M7

M8

CL

Page 34: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 34

Technique de design #3

B

B

C

C

VDD

A

D

A

D

M5

M1

M2

M3 M4

M6

M7

M8

CL

Dans ce cas-ci, la capacitance CL

est composée des capacitances

de drain de M1, M3, M4, M6, et M8.

La fonction logique réalisée est la

même, mais ce circuit est plus

lent que le précédent.

On doit avoir le minimum

possible de transistors

branchés à la sortie.

Page 35: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 35

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.

Page 36: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 36

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.

Page 37: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

Dimensionnement des portes

Page 38: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 38

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.

Page 39: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 39

Rappel: dimensionnement de l’inverseur

In Out

1 2 3 N

CL

On avait trouvé que:

Si le nombre d’étages est fixe (connu):

1,

oùin

LN

CC

FFf

Si le nombre d’étages est variable:

optf

FN

ln

ln

Page 40: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 40

Dimensionnement des portes

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

ft

C

Ctt p

g

extpp 11 00

On écrit:

gfptt pp 0 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

Page 41: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 41

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.

Page 42: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 42

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

Page 43: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 43

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.

A

VDD

A

B

B

OUT

A

VDD

A

B

B

OUT

A

VDD

A

OUT

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

1

2

2

2

2 2

1 1

4

4

Inverseur NAND2 NOR2

Page 44: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 44

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.

Page 45: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 45

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.

Page 46: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 46

Délai en fonction de la sortance

1

2

3

4

5

6

1 2 3 4 5 6

Délai intrinsèque

Effort de la porte

Le modèle du délai d’une porte est

une fonction linéaire.

La pente de la courbe représente

l’effort logique, et l’abscisse à

l’origine représente le délai

intrinsèque.

Le produit fg est appelé l’effort de

porte, h.

fgh

f

Page 47: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 47

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

j

N

j

jj

jpjpp

fgpttt

1 1

0,

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:

NN gfgfgf 2211

Nhhh 21

Chaque étage doit fournir le même effort de porte.

ou

Page 48: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 48

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.

Page 49: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 49

Effort de branchement

CL

Effort de branchement:

parcourssur

parcourshorsparcourssur

C

CCb

Page 50: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 50

Méthode de l’effort logique

Il reste 3 termes à définir ayant rapport au parcours total:

N

i

in ggggG1

21 Effort logique du parcours

N

i

in bbbbB1

21 Effort de branchement du parcours

N

i

iN

i i

i

in

L

B

f

b

f

C

CF

111,

Effort électrique du parcours

Page 51: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 51

Méthode de l’effort logique

On peut maintenant calculer l’effort total du parcours:

BFGH

De façon semblable à l’inverseur, l’effort de porte qui minimise

le délai est:

N Hh

Et le délai minimum dans le parcours est:

N

j

N

jp

HNptD

1

0

Page 52: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 52

Méthode de l’effort logique

Pour calculer la dimension s de chaque porte, on utilise l’équation

suivante:

1

1

11i

j j

j

i

ib

f

g

sgs

Typiquement, s1 = 1: le premier élément d’une suite de portes est de

dimension minimale.

Page 53: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 53

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.

Page 54: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 54

Exemple

CL = 5

1 a

b c

Dimensionner les portes pour minimiser le délai.

F = 5/1 = 5

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

9

251

3

5

3

51 G

Branchement: il n’y a pas de branchement, donc b1 = b2 = b3 = b4 = 1

B = 1

Page 55: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 55

Exemple

CL = 5

1 a

b c

Dimensionner les portes pour minimiser le délai.

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

93.14 Hh

93.11

1 g

hf 16.1

2

2 g

hf 16.1

3

3 g

hf 93.1

4

4 g

hf

Page 56: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 56

Exemple

CL = 5

1 a

b c

Dimensionner les portes pour minimiser le délai.

On calcule les dimensions:

16.12

11 g

gfa 34.1

3

121 g

gffb 60.2

4

1321 g

gfffc

Page 57: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

Logique proportionnée

Page 58: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 58

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.

Page 59: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 59

Logique proportionnée

PDN

VDD

In1

In2

InN …

F

Charge

résistive

PDN

VDD

In1

In2

InN …

F

Charge

NMOS

PDN

VDD

In1

In2

InN …

F

Charge

PMOS VT < 0

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

Page 60: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 60

Logique proportionnée

Charge résistive

PDN

VDD

In1

In2

InN …

F

Charge

résistive RL

Caractéristiques:

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

• VOH = VDD

• Réponse non-symétrique

• Consommation statique de puissance

• tpLH = 0.69RLCL

DD

LPDN

PDNOL V

RR

RV

Page 61: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 61

Logique proportionnée

PDN

VDD

In1

In2

InN …

F

Charge

NMOS

PDN

VDD

In1

In2

InN …

F

Charge

PMOS VT < 0

Charge NMOS Pseudo-NMOS

Charges actives

Page 62: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 62

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.

Page 63: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 63

Pseudo-NMOS

VDD

A B C D

CL

VOH = VDD

Pour calculer VOL, il faut que

le courant dans le PMOS soit

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).

Page 64: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 64

Inverseur pseudo-NMOS

0.0 0.5 1.0 1.5 2.0 2.5 0.0

0.5

1.0

1.5

2.0

2.5

3.0

W/L p = 4

W/L p = 2

W/L p = 1

W/L p = 0.25

W/L p = 0.5

Vo

ut (

V)

Vin (V)

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

Page 65: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 65

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.

Page 66: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 66

DCVSL

PDN1

VDD

F

PDN2

VDD

F

In1

In1

InN

InN

Exemple:

État initial: F = 1, F = 0.

Supposons que la combinaison

d’entrées fait en sorte que PDN1

conduit (donc PDN2 ne conduit pas).

PDN1 va commencer à faire

descendre la tension F. Ceci allume

M2, qui commence à faire monter la

tension F. Lorsque F a monté haut

assez, M1 devient OFF, et PDN1 peut

décharger la charge jusqu’à GND.

M1 M2

Page 67: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 67

DCVSL

0 0.2 0.4 0.6 0.8 1.0 -0.5

0.5

1.5

2.5

Time [ns]

Te

nsio

n [V

] A B

A B

A,B A , B

VDD

F

VDD

F

M1 M2

A

B

A B

Page 68: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

Logique passante

Page 69: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 69

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.

Page 70: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 70

Logique passante

A

F

B

B

BAF

Porte AND

Pour trouver la fonction logique de

ce circuit, on procède cas-par-cas:

Si B = 0, le NMOS supérieur est

OFF, et celui d’en bas est ON: la

sortie F = 0.

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

peut confirmer qu’il s’agit de la

fonction AND.

Page 71: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 71

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.

Page 72: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 72

Logique passante: NMOS

VDD

IN

OUT x

0 0.5 1 1.5 2 0.0

1.0

2.0

3.0

Temps [ns]

Tensio

n

[V]

x

Out

In

Le nœud x peut seulement se

charger jusqu’à une valeur de

VDD – VT.

De plus, l’effet du substrat,

qu’on ne peut ignorer ici, fait

augmenter la tension seuil (et

donc Vout est plus faible).

Page 73: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 73

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.

Page 74: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 74

Porte de transmission

B

B

A F

a) Circuit

A F

B

B

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.

Page 75: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 75

Résistance d’une porte de transmission

0.0 1.0 2.0 0

10

20

30

V out

, V

Résis

tan

ce

, kW

R n

R p

R n

|| R p

B

B

A F

Rn

Rp

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

pratiquement constante.

Page 76: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 76

Porte de transmission: exemple

S

S

A

S

B

VDD

SBSAF

Multiplexeur 2x1

Page 77: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 77

Porte de transmission: exemple

B

B

B

B

A A

F

XOR

Cette implémentation ne nécessite

que 6 transistors (incluant l’inverseur

pour inverser B); une implémentation

en CMOS complémentaire

nécessiterait 12 transistor.

Page 78: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 78

Porte de transmission: exemple

A

A

OR

Cette implémentation nécessite 5

transistors (incluant l’inverseur pour

inverser A); une implémentation en

CMOS complémentaire nécessiterait

6 transistor.

B

A

Out

Page 79: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

Logique dynamique

Page 80: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 80

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.

Page 81: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 81

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

Page 82: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 82

Porte dynamique

PDN

In1

In2

InN …

VDD

CL

Out

Clk

Clk Mp

Me

On opère en deux phases:

Précharge: Clk = 0. Pendant la

précharge, le condensateur de

sortie est chargé à VDD.

Évaluation: Clk = 1. Pendant

l’évaluation, si la combinaison

d’entrées fait en sorte que la sortie

doit être 0, le PDN va décharger le

condensateur. Sinon, CL garde sa

valeur de VDD.

Note: on utilise souvent le symbole pour

l’horloge.

Page 83: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 83

Porte dynamique: exemple

VDD

Out

Clk

Clk Mp

Me

A

B

C

Précharge: Clk = 0

on

off

1 off

on

CBAOut Évaluation: Clk = 1

Page 84: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 84

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.

Page 85: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 85

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.

Page 86: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 86

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

Page 87: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 87

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.

Page 88: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 88

Désavantage #1: fuite de charge

VDD

Clk

Clk Mp

Me

A CL

Sources de fuites.

CLK

VOut

Précharge

Évaluation

Le courant sous-seuil est dominant.

VOut

Page 89: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 89

Désavantage #1: fuite de charge

VDD

Clk

Clk

A

B

CL

Rétablisseur de

niveau.

Out

Le rétablisseur de niveau permet de maintenir

le niveau logique « 1 » sur CL quand la sortie

est 1.

SOLUTION:

Mp

Me

Page 90: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 90

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.

Page 91: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 91

Désavantage #2: partage de charges

VDD

Clk

Clk

A

B = 0

CL

Mp

Me Cb

Ca

La charge originalement stockée sur CL

est répartie sur CL et Ca, ce qui réduit la

tension à la sortie.

Il faut qu’il y ait conservation de charge:

fafLDDLt VCVCVCQ

Il n’y a plus de redistribution de charge

lorsque la tension est équilibrée.

DD

aL

Lf V

CC

CV

Page 92: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 92

Désavantage #2: partage de charges

VDD

Clk

Clk

A

B = 0

CL

Mp

Me Cb

Ca

Cependant, si la tension Va (sur la

capacitance Ca) devient trop élevée,

le FET Ma devient OFF.

Dans ce cas-ci, l’effet du substrat ne

peut être ignoré, ce qui augmente la

tension seuil.

La condition limite (juste quand Ma

devient OFF) est:

tnDD

tn

L

a

VV

V

C

C

Ma

Page 93: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 93

Désavantage #2: partage de charges

VDD

Clk

Clk

A

B = 0

CL

Mp

Me Cb

Ca

a

Cas 1:

tnDD

tn

L

a

VV

V

C

C

L

tnaDDaLf

C

VCVCCV

Cas 2:

tnDD

tn

L

a

VV

V

C

C

DD

aL

Lf V

CC

CV

MA = OFF

Page 94: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 94

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.

Page 95: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 95

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é.

Page 96: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 96

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.

Page 97: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 97

Portes dynamiques en cascade

VDD

Clk

Clk Mp

Me

In

VDD

Clk

Clk Mp

Me

Out2

Out1

V

t

Clk

In

VTn Out1

Out2

V

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

Page 98: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 98

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.

Page 99: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 99

Logique domino

PDN

In1

In2

In3

Clk

Clk Mp

Me

PDN In4

In5

Out2

Clk

Clk Mp

Me

VDD VDD

Out1

Inverseur statique

Avec l’inverseur statique,

on peut précharger chaque

sortie à VDD, et s’assurer

que chaque entrée est 0.

Page 100: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 100

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.

Page 101: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

Topologie des circuits

Page 102: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 102

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.

Page 103: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 103

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.

Page 104: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 104

Schémas squelettisés: exemples

In

Out

VDD

GND

Inverseur A

Out

VDD

GND B

NAND2

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

Page 105: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 105

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.

Page 106: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 106

Graphe logique

VDD

A

B

C

B

A

C

BACX

i

GND

i

X

j

A B

C

j

X VDD

Page 107: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 107

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.

Page 108: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 108

Parcours d’Euler

GND

i

X

A B

C

j

X VDD

GND

i

X

A B

C

j

X VDD

Parcours d’Euler: A B C

Page 109: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 109

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.

Page 110: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 110

Topologie du circuit

GND

i

X

A B

C

j

X VDD

VDD

GND A B C

X

Page 111: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 111

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.

Page 112: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 112

Cellules standard: exemple

In Out

V DD

GND

A

Out

V DD

GND

B Inverseur NAND2

Page 113: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 113

Cellules standard: exemple

In Out

V DD

GND

A

Out

V DD

GND

B

Il est facile de brancher les

deux cellules ensemble.

Les deux alimentations sont

automatiquement connectés.

Les deux mises à terre sont

automatiquement connectés.

Il suffit tout simplement

d’ajouter un lien en métal 1

pour brancher les deux

cellules.

Page 114: GELE5340 Circuits ITGÉ (VLSI)...Circuits ITGÉ (VLSI) Chapitre 5: Design de fonctions logiques combinatoires GELE5340 – Gabriel Cormier, Université de Moncton 2 Contenu du chapitre

GELE5340 – Gabriel Cormier, Université de Moncton 114

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.