You are on page 1of 65

Micro

lectronique c in .gin om inique D m ) do (C u iq


c@ ha u

a nh rg Logique i u G -bo e
.fr ne og

7 0 0 2

Squentielle

Dominique GINHAC dginhac@u-bourgogne.fr

Plan du cours
1- Prsentation gnrale et historique

- r 2- Physique des semi conducteurs c a gne.f nh rgo 3- Technologie CMOS Gi ou e @u-b u c 4- Design de portes lmentaires i q nha in .gi 5- Designm fonctions complexes o de inique D m ) do des composants 6-Technologie (C

7 0 0 2

Logique squentielle
Gnralits
X Y

in .gin ue omestnidtermine partir des entres ltat q La D sortie i m ) doet des sorties ltat prcdent C courant (
Mmorisation

u iq

- r c e.f a Circuit logique gn nh rgo combinatoire i u G -bo e


c@ ha u

7 0 0 2
Z y

Logique squentielle
Gnralits

iq nhac in .gi om inique D m ) Bistable Monostable do C (


Combinatoire

- r c e.f a gn Circuits logiques nh rgo i u G -bo e @u u

7 0 0 2

Squentiel

Astable

7 0possde 2 0 Par dfinition, un systme bistable 2 tats stables - r c e.f a gn numrique : Des exemples trs courants en lectronique nh rgo i u G -bFlop), Bascules (Latch, Flip o e @u u c Registres dcalages, i q nha in .de mmoire. Elments gi om inique D m Considrons tout dabord un exemple trivial de systme ) dcompos de 2 inverseurs C bistable o (

Systmes bistables

Un exemple de systme bistable


Vi1 1 VO1

Vo2 VO1 VOH

in .gin om inique D m ) do (C
Vth VOL VIH VIL

u iq

Vi2

- r c e.f a gn nh rgo i u G -bo e


VOL

Vi2=Vo1

VOH

7 0 0 2
Vth

c@ ha

VIL

VIH

Vo2=Vi1

Vi2 VIH

Vth VIL VOL VOH

Vi1

Vo2

Un exemple de systme bistable


Vi1 1 VO1

Vo2 Vi2=Vo1 A

in .gin om Cinique D m ) do B (C

Vi2=Vo1

u iq

Vi2

- r c e.f a gn nh rgo i u G -bo e


Stable VOL

Vi2=Vo1

VOH

7 0 0 2
Vth

Stable VIH

c@ ha

VIL

Vo2=Vi1

B Vo2=Vi1

Vo2=Vi1

Un exemple de systme bistable


Vi1 1 VO1

Vo2 Vi2=Vo1 A

in .gin om Cinique D m ) do B (C

Vi2=Vo1

u iq

Vi2

- r c e.f a gn nh rgo i u G -bo e


Instable VOL

Vi2=Vo1

VOH

7 0 0 2
Vth

c@ ha

VIL

VIH

Vo2=Vi1

C B Vo2=Vi1

Vo2=Vi1

Un exemple de systme bistable

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

Un exemple de systme bistable

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

7 0 Le passage dun tat instable un tat 0 stable ncessite plusieurs passages par les 2 inverseurs 2 - r c e.f a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C
Temporellement, la sortie des inverseurs sexprime sous la forme : On a alors : avec A reprsentant le gain en tension des 2 inverseurs
Pendant un intervalle T, on effectue n passages par les 2 inverseurs

Un exemple de systme bistable

Un exemple de systme bistable


En technologie CMOS

Vi1

in .gin m2 qVue V o D mini ) do (C


o2 i2

u iq

VO1

- r c e.f a gn nh rgo i u G -bo e


c@ ha u VO1
Vi1

7 0 0 2
+Vdd

Vi2 Vo2

Un exemple de systme bistable


En technologie CMOS

in .gin om inique D : Problmem Ce systme va se figer dans un des 2 tats ) d(tant que le systme est aliment) et ne peut pas Cstables o (
facilement commuter vers le deuxime tat stable

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

7 0 lautre, il 0 Pour permettre le passage dun tat 2 faut modifier le schma prcdent - r c e.f a gn nh rgo i u G -bo e @u u c i q nha in .gi Q m que o i ni Q D m ) S do R C (
+Vdd

Bascule RS

Bascule RS
Principe de fonctionnement :
+Vdd

in .gQ in Q om inique S ) D om d (C

u iq

- r c e.f: S et R a2 entres h gogn in 2ursorties : Q et Q G -bo e


c@ ha
R

7 0 0 2

La bascule RS est dite dans ltat Set si Q=1 et Q=0 La bascule RS est dite dans ltat Reset si Q=0 et Q=1

Bascule RS
Principe de fonctionnement :
+Vdd

in .gQ in Q om inique S ) D om d (C

u iq

- r c e.f a gn 2 Nmos en parallle nh rgo 2 Pmos en srie i u G -bo e


I QU ZZ

7 0 0 2

c@ ha
R

Q Q R

Bascule RS
Principe de fonctionnement :
S Q Q R

n Laginha des portes NOR est gale i . sortie S = 0, R m : =0 linverse o inique de la deuxime entre D m ) do (C Maintien (hold) de ltat prcdent pour les sorties Q et Q

- r c de ecommande S et R .f Q Les ha entres n sont des gentres directes qui n directement sur ltat des og i ur GagissentQ et Q bo sorties e @uQ u c iq

7 0 0 2

Bascule RS
Principe de fonctionnement :
S Q Q R

ha n Lagisortie Q est force 1 et la sortie Q i .n S = 1, R m : =0 est o inique force 0 D m ) do (C La bascule est mis set quel que soit ltat prcdent

- r c de ecommande S et R .f Q Les ha entres n sont des gentres directes qui n directement sur ltat des og i ur GagissentQ et Q bo sorties e @uQ u c iq

7 0 0 2

Bascule RS
Principe de fonctionnement :
S Q Q R

ha n Lagisortie Q est force 0 et la sortie Q i .n S = 0, Rm : =1 est o inique force 1 D m ) do (C La bascule est mis reset quel que soit ltat prcdent

- r c de ecommande S et R .f Q Les ha entres n sont des gentres directes qui n directement sur ltat des og i ur GagissentQ et Q bo sorties e @uQ u c iq

7 0 0 2

Bascule RS
Principe de fonctionnement :
S Q Q R

ha n Lagisortie Q est force 0 et la sortie Q i .n S = 1, R m : =1 est o inique force 0 D m ) do (C Cas INTERDIT (non autoris en fonctionnement normal)

- r c de ecommande S et R .f Q Les ha entres n sont des gentres directes qui n directement sur ltat des og i ur GagissentQ et Q bo sorties e @uQ u c iq

7 0 0 2

Bascule RS
En rsum :

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

Bascule RS
Au niveau transistor :
+Vdd
M6 M5

in .gQ in Q om inique S ) D om d (C
M7 M1 M2 M3

u iq

M8

- r c e.f a gn nh rgo i u G -bo e


S 0 0 1 0 1 R Qn Qn 0 0 0 1 1 0 1 1 0 0 1

7 0 0 2
transistors M1,M4, M2 bloqus M3 passant M1,M3,M4 bloqus M2 passant M1,M2 passants M3, M4 bloqus M1,M2 bloqus M3, M4 passants M1,M4 passants M2, M3 bloqus

c@ ha
M4

0 0 1 0

7 0 Une autre version en portes NAND0 2 - r c e.f a gn nh rgo S i u G Q -bo Q Q e @u u c Q i q nha in .gi R m que S o i ni R D m ) do (C Fonctionnement dual de la version prcdente
+Vdd

Bascule RS

Bascule RS

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

7 0 RS Utilisation dune horloge pilotant la 0 2 bascule - r cLes entres appliques a Rgnet.fS sont prises en S hQ go e uniquement si in ur compte G -bo Clk = 1 Clk e @u Si Clk=0, il ny a aucune u c Q i q nha influence des entres R n .gi R i et S : Maintien des sorties om inique D m ) Clk=1, oon est dans le cas du fonctionnement classique de Si d C la bascule RS asynchrone (

Bascule RS synchrone

Bascule RS synchrone
En rsum :

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

Bascule RS synchrone
Un chronogramme :

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

7 0 Du point de vue des transistors : 0 2 - r c e.f a gn nh rgo i u G -bo Combien de e @u u c transistors ? q ha ni .gin i om inique D m ) 10o 12 14 16 18 d C (
I QU ZZ

Bascule RS synchrone

7 0 Du point de vue des transistors : 0 2 - r c e.f a gn nh rgo Clk i u G -bo S e @u Q uQ c i q nha Clk in .gQ i R R om inique D m ) do Clk (C
+Vdd

Bascule RS synchrone

S Clk

Bascule RS synchrone
Dautres solutions :-)

in .gin om inique D m ) do (C

u iq

- r c ecomplmentaire : a gn .f Version nh (ORgsuivies de NAND) o i Bascule active ltat bas G -bour e


c@ ha u

7 0 0 2

7 0 Du point de vue des transistors : 0 2 - r c e.f a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C

Bascule RS synchrone

Bascule RS synchrone
Dautres solutions (2)

in .gin om inique D m ) do (C

u iq

- r c e.f Version tout NAND a gn nh Bascule active ltat haut i urgo G -bo de transistors Plus e
c@ ha u

7 0 0 2

7 0 est son Linconvnient majeur des bascules RS 0 tat interdit (S=R=1 ou S=R=0)- 2 c e.fr a gn surmont en Ce problme peut trehfacilement in enurgo JK transformant la bascule RS bascule G -bo e @u u c i q nha in .gi om inique D m ) do (C
Exemple de bascule JK ralise partir dune bascule RS tout NAND

Bascule JK

Fonctionnement des bascules JK

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

Une bascule JK plus simple

in .gin om inique D m ) 12o 14 d C (

Version CMOS classique

u iq

- r c e.f a gn nh rgo i u G -bo Combien de e


c@ ha u
I QU ZZ

7 0 0 2

transistors ?

16

18

20

Bascule JK
En technologie CMOS :

J Clk

in Q.gin K om inique Clk D m ) do (C

u iq
Q

- r c e.f K a gn nh rgo Clk i u G -bo e


+Vdd

7 0 0 2
J

c@ ha

Q Clk

7 0JK est sa 0 Un inconvnient majeur de la bascule 2 si J=K=1 possibilit de faire osciller les sorties c e.fr a gn nh rgo i u Clk G -bo e @u u c Q i q nha in .gi 2 solutions : ue o m i n iq D Utiliser une horloge de frquence importante, ) do m (C Utiliser une bascule JK Matre Esclave

Bascule JK

7 0suprieur Si le temps de rponse de la bascule JK0 est 2 la priode de lhorloge, alors on assiste un seul - r changement par priode dhorloge c e.f a gn nh rgo i u G -bo e @u u c i q nha in .gi m ue osolutioniqest difficile mettre en uvre puisque Cette D prioden de lhorloge doit approximativement mi )la do (C correspondre avec le temps de propagation de la porte

Horloge de frquence importante

7 0 Le principe consiste enchaner 2 bascules JK 0 dhorloges complmentaires - 2 c e.fr a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C

Bascule JK matre esclave

Bascule JK Matre Esclave ralise partir de bascules JK tout NAND

7 0 Une deuxime variante plus conome 0 2 - r c e.f a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C

Bascule JK matre esclave

Bascule JK Matre Esclave ralise partir de bascules JK NOR

Bascule JK matre esclave


Principe de fonctionnement :

)Les 2 tages sont donc dcoupls et empchent ainsi une om d (C propagation directe des entres sur les sorties

- r c e.f A tout moment, une et une seule des bascules JK a gn fonctionne , lautre estnh o i en phasegde maintien : ur G1 ( -Master ) active et Bascule 2 CK = 1 : Bascule bo e @ ( Slave ) en maintien u u c i0q: Bascule 1 ( Master ) en maintien et n .ginha CK i= Bascule 2 ( e m qu Slave ) active o i ni D

7 0 0 2

Bascule JK matre esclave


Mise 1 : J = 1 , K = 0

CK J K Qm Qm Qs Qs

in .gin om inique D m ) do (C
0 1 1 0 0 1 1 0

u iq
1

- r c e.f a gn nh rgo i u G -bo e


0

7 0 0 2
1 0 1

CK J K

c@ ha

Qm Qm Qs Qs

A t = 0, Qm = Qs = 0

JK 1 active

JK 2 active

A t = 0, Qm = Qs = 1

JK 1 active

JK 2 active

Bascule JK matre esclave


Mise 0 : J = 0 , K = 1

CK J K Qm Qm Qs Qs

0 0

in .gin om inique D m ) do (C
0 0 1 1 0 0 1 1

u iq
1

- r c e.f a gn nh rgo i u G -bo e


0

7 0 0 2
1 0

CK J K

c@ ha

Qm Qm Qs Qs

A t = 0, Qm = Qs = 0

JK 1 active

JK 2 active

A t = 0, Qm = Qs = 1

JK 1 active

JK 2 active

Bascule JK matre esclave


Maintien : J = 0 , K = 0

CK J K Qm Qm Qs Qs

in .gin om inique D m ) do (C
1 1 0 0 1 1 0 0

u iq
0

- r c e.f a gn nh rgo i u G -bo e


0

7 0 0 2
1 0

CK J K

c@ ha

Qm Qm Qs Qs

JK 1 active

JK 2 active

JK 1 active

JK 2 active

Bascule JK matre esclave


Toggle : J = 1 , K = 1

CK J K Qm Qm Qs Qs

in .gin om inique D m ) do (C
1 0 0 1 1 0 0 1

u iq
1

- r c e.f a gn nh rgo i u G -bo e


0

7 0 0 2
1 0 1

CK J K

c@ ha

Qm Qm Qs Qs

JK 1 active

JK 2 active

JK 1 active

JK 2 active

7 0 bascules En conception microlectronique, 0 2 les sont trs utilises - r c e.f a gn nh rgo purement CMOS Cependant, des implantations i u G -bo de bascules de type JK matre-esclave sont e de coteuses en nombre @u transistors u c i q nha in .gi Il existe des optimisations pour raliser de om inique mais il est toutefois ncessaire D m telles bascules )de prendre certaines prcautions do C (

Premires conclusions

7 0 La bascule D est une variante de 0 bascule RS 2 la synchrone dans laquelle on a R - S = c e.fr a gn D S nh rgo i u G -bo Q e @u u c Clk i q nha in .gi Q om inique R D m ) do Comment a (C marche ?
I QU ZZ

Bascule D

7 0 La bascule D est une variante de 0 bascule RS 2 la synchrone dans laquelle on a R - S = c e.fr a gn nh rgo i u G -bo Combien de e @u u c transistors ? q ha ni .gin i om inique D m ) 10o 12 14 16 18 d C (
I QU ZZ

Bascule D

7 0 Du point de vue des transistors : 0 2 - r D c e.f a gn Q nh rgo Clk Clk i u G -bo Q e @u Q u c i q nha in .gi D om inique R D m ) do Clk (C
+Vdd

Bascule D

D Clk

7 0 0 La bascule D possde 2 modes de fonctionnement : 2Q Clk = 1 : propagation de D vers Clk = 0 : maintien de Q c .fr a gne nh rgo i u Premier cas : G -bo e @u u c i q nha in .gi Utilisation dune porte de transmission pilote par : om inique D m CK sur le transistor Nmos ) do CK sur le transistor Pmos (C

Une premire optimisation

7 0 0 La bascule D possde 2 modes de fonctionnement : 2Q Clk = 1 : propagation de D vers Clk = 0 : maintien de Q c .fr a gne nh rgo i u Deuxime cas : G -bo e @u u c iqvaleurha Maintien denla i .gin de Q m utilisation par dun systme qu o inpar e une i bistable D m command ) dedo C porte transmission (

Une premire optimisation

Une premire optimisation


Au final :

in .gin om inique D m ) do (CTransistors : 8

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

Une premire optimisation


Au final :

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

7 0 Il est possible de raliser une 0 2 bascule utilisant des inverseurs 3 tatsc e.fr a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C

Une deuxime optimisation

D en

Une deuxime optimisation


CK = 1

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

Une deuxime optimisation


CK = 0

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

7 0 0 Attention : il est ncessaire de garantir la 2 stabilit des donnes lors de - commutation de la lhorloge de 1 0 c e.fr a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C

Problmes potentiels

7 0la sortie Q 0 Si la stabilit de D nest pas garantie, 2 au caractre peut avoir une valeur errone- due bistable des 2 inverseurs c e.fr a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C

Problmes potentiels

7 0 partir 0 Ralisation dune bascule matre esclave 2 de 2 bascules D dhorloges complmentaires - r c e.f a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C On obtient une bascule commande par front montant

Une troisime optimisation

Une troisime optimisation


Au niveau transistor :

Clk D

Vdd

in Clkgin m que. o i ni Clk D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -boClk e


Vdd

7 0 0 2
Vdd Vdd

c@ m a Q h

Qs Clk

Clk Clk

Clk

Une troisime optimisation


Fonctionnement :

u c@uD sur Q pour la premire Propagation a de CLK = 0 : i q nh in .gi bascule ue om Maintien de Q (cest--dire la valeur prcdente niqsur la deuxime bascule D de iD) ) do m (C Q est insensible aux variations de D pour CLK = 0
m s s

- r c e.f a gn nh rgo i u G -bo e

7 0 0 2

Une troisime optimisation


Fonctionnement :

u de cQ u (cest--dire la valeur de D q ha @ Maintien CLK = 1 : ni CLKintait gale 0) sur la premire bascule i .g lorsque ue om Propagation de Qm (valeur de D lorsque CLK n iq D tait gale 0) sur Q sur la deuxime bascule mi ) do (C Q et Q sont insensibles aux variations de D pour CLK = 1
m s m s

- r c e.f a gn nh rgo i u G -bo e

7 0 0 2

7 0 0 Dcomposition en 2 bascules complmentaires 2 - r c e.f a gn nh rgo i u G -bo e @u u c i q nha in .gi om inique D m ) do (C

Deux Types de bascules

Au final

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

in .gin om inique D m ) do (C

u iq

- r c e.f a gn nh rgo i u G -bo e


c@ ha u

7 0 0 2

You might also like