Vous êtes sur la page 1sur 29

Electronique

Numérique
Résumé du cours

Par Jonathan Verlant-Chenet


Version 1.3 (25 octobre 2006)
Table des matières

CHAPITRE 1. C AR ACTERI S AT IO N DE S C IRCU IT S LOG IQUE S . . . . . . . . . . . . . . . . . . . . . 1

1. R APPELS SUR LES IMPULSIONS LOGIQUES ......................................................................... 1

2. C RITERES DE CARACTERISATION .................................................................................. 1


2.1. Temps de propagation.......................................................................................... 1
2.2. Marges de bruit .................................................................................................... 1
2.3. Sortance ............................................................................................................... 2
2.4. Puissance dissipée................................................................................................ 3
2.5. Facteur de mérite ................................................................................................. 3

CHAPITRE 2. F AM IL LE S L OG IQUE S B I PO L A IRES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1. D IODE L OGIC (DL) ................................................................................................. 4


2. D IODE & T RANSISTOR L OGIC (DTL)............................................................................. 4
2.1. Porte NOT ............................................................................................................ 4
2.2. Porte NAND .......................................................................................................... 4
2.3. Temps de propagation.......................................................................................... 5
3. T RANSISTOR & T RANSISTOR L OGIC (TTL) ...................................................................... 6
3.1. Porte NAND .......................................................................................................... 6
3.2. Porte inverseuse ................................................................................................... 6
3.3. TTL Open Collector............................................................................................... 7
3.4. Variantes.............................................................................................................. 8
4. E MITTER C OUPLED L OGIC (ECL) ................................................................................. 8

CHAPITRE 3. F AM IL LE S L OG IQUE S M OS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1. LE TRANSISTOR MOS .............................................................................................. 9


1.1. Structure interne .................................................................................................. 9
1.2. Principe de fonctionnement .................................................................................. 9
2. C IRCUITS SIMPLES NMOS ET PMOS (RTL)................................................................... 10
3. C IRCUITS CMOS DE BASE ....................................................................................... 11
3.1. Principes et portes de base ................................................................................. 11
3.2. Caractéristique d’un inverseur ............................................................................ 11
3.3. Marges de bruit .................................................................................................. 11
3.4. Protection à l’entrée et consommation ................................................................ 12
3.5. Temps de propagation et sortance dynamique .................................................... 13
4. C IRCUITS DERIVES ................................................................................................ 13
4.1. Etage de sortie CMOS 4000B............................................................................... 13
4.2. Sortie à 3 états : Tristate .................................................................................... 13
4.3. Sortie à drain ouvert ........................................................................................... 14
4.4. Entrée à hystérèse (trigger de Schmitt)................................................................ 14
5. P RECAUTIONS ..................................................................................................... 14
CHAPITRE 4. M ULT I VI BRA TEUR S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1. B ISTABLES .......................................................................................................... 16
1.1. R-S .................................................................................................................... 16
1.2. D-Latch, D-Flip-Flop et Toggle .......................................................................... 16
1.3. J-K ..................................................................................................................... 17
1.4. Compteurs synchrones et asynchrones ............................................................... 18
1.5. Registres à décalage ........................................................................................... 19
2. M ONOSTABLES .................................................................................................... 19
2.1. Rappels sur le RC ............................................................................................... 19
2.2. Monostables réalisés à l’aide de portes............................................................... 20
3. A STABLES .......................................................................................................... 20
3.1. A deux constantes de temps............................................................................... 20
3.2. A une constante de temps .................................................................................. 21
3.3. Le 555................................................................................................................ 21

CHAPITRE 5. C IRCU IT S D E SELEC TI O N . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1. M ULTIPLEXEURS ................................................................................................... 22
2. D EMULTIPLEXEURS ................................................................................................ 22
3. D ECODEURS ....................................................................................................... 22

CHAPITRE 6. I NTRO DUCT IO N AUX µ P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1. P RELIMINAIRES .................................................................................................... 23
2. C ATEGORIES DE MICROPROCESSEURS ........................................................................... 23

CHAPITRE 7. LA F AMILLE 8051 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

1. I NTRODUCTION .................................................................................................... 24
1.1. Schéma bloc simplifié ......................................................................................... 24
1.2. Alimentation ...................................................................................................... 24
1.3. Horloge .............................................................................................................. 24
2. I NITIALISATION D ’ UN µ P OU RESET ........................................................................... 26
2.1. ... ....................................................................................................................... 26
2.2. ... ....................................................................................................................... 26
3. M EMOIRE PROGRAMME ........................................................................................... 26

3.1. Aspects qualitatifs .............................................................................................. 26


3.2. Aspects temporels .............................................................................................. 26
3.3. Conclusion ......................................................................................................... 26
CHAPITRE 1. Caractérisation des circuits
logiques

1. Rappels sur les impulsions logiques

L’impulsion logique idéale est une impulsion rectangulaire à flancs


infiniment raides, ayant les niveaux logiques HI et LO pendant un certain
temps tw. En pratique, les transistors ont deux imperfections :

• Flancs : ils doivent charger les capacités parasites du circuit logique,


et ce pendant un certain temps de transition. Sachant le temps de montée t r et le temps de
descente tf, ce temps de transition tt est donné par la moyenne des deux.
• Amplitude : imparfaite car
o les niveaux logiques s’écartent des niveaux idéaux car
aucun transistor ne sature parfaitement
o il y a du bruit (négligeable) et des parasites (couplage
capacitif, inductif et électromagnétique)
o les transitions propres du circuit créent des
dépassements, des creux et des oscillations liées aux
circuits oscillants (L de connexion, C d’entrée), à des
phénomènes de réflexion sur les lignes de transmission,
et à des couplages R ou C internes

2. Critères de caractérisation

2.1. Temps de propagation

Il est impossible que l’entrée fasse varier la sortie


instantanément : il existe un temps de propagation. On note
tPLH le temps de propagation LO/HI et tPHL le temps de
propagation HI/LO

2.2. Marges de bruit

Il existe une certaine tolérance au niveau des tensions : V HI pour l’état HI


(5V) et V LO pour l’état LO (0V). Les niveaux réels s’en écartant, on pose un
minimum pour l’état HI (ViH) et un maximum pour l’état LO (ViL). En-dehors
de cela, on est soit dans un état incertain, soit dans un état où le circuit

Electronique Numérique | Chapitre 1 : Caractérisation des circuits logiques 1


logique fume (des circuits de protections sont alors utilisés). A partir de cela, on définit des
marges de bruit statique et dynamique :

• Statique : si on applique un signal correct à l’entrée,


le constructeur garanti un certain niveau à la sortie
⎧⎪ VoH > ViH
(VoH et VoL), qui doivent être tels que ⎨
⎪⎩ VoL < ViL

(sinon on risquerait d’arriver à des états incertains),


définissant des marges (Noise Margin) de bruit ci-contre (NML et NMH).
• Dynamique : on fait ici entrer en jeu les transitions. Les parasites ont en
effet souvent la forme de brèves impulsions qui peuvent faire transiter le
circuit. Soit le circuit logique ci-contre alimentés par une tension mettant
son entrée en LO. Des parasites se rajoutent avec une impulsion
d’amplitude VN et de durée tpN. Si on fixe cette amplitude et qu’on fait
croitre tpN, on obtient la courbe ci-contre, où Vth est la tension à
laquelle le parasite fait transiter le circuit (THreshold). On voit que si
l’impulsion est très courte, la cause a disparu avant d’avoir provoqué
un effet (marge dynamique élevée), tandis que si elle est grande, on a
une asymptote horizontale (immunité statique au bruit). L’autre
graphique représente l’énergie EN dissipée par l’impulsion dans R0. On
remarque que plus la source de tension est parfaite (R 0 tend vers 0),
plus l’impulsion doit contenir d’énergie pour provoquer le
basculement. Il existe un minimum d’énergie qui est le pire des cas et
qui détermine le seul dynamique de bruit Vth,min.

2.3. Sortance

• Sortance statique
Le courant consommé par la charge engendre une
chute de tension sur R0, dégradant le niveau logique
qui pourrait passer sous ViH. Il existe donc un courant
maximum délivré par une sortie à l’état HI (I oH) lié à
une tension acceptable (V oH). Si chaque circuit de
sortie consomme IiH, alors la sortance statique est
I
définie par : FHI = oH (nombre de sorties connectables
IiH

à la sortie en HI). Le même raisonnement s’applique


pour le niveau LO, de sorte qu’on ait V oL, le niveau maximum garanti de sortie à l’état LO si
l’entrée du circuit est un niveau normal, et si le courant entrant est inférieur à IoL. On a, de
I
même : FLO = oL , et la sortance utile est la valeur minimale entre F LO et FHI.
IiL

• Sortance dynamique
Il s’agit toujours du nombre de circuits connectables à la sortie mais il faut ici avoir des
temps de transitions et des niveaux corrects. C’est l’augmentation des temps de transition
dv
qui va déterminer la sortance. En effet, selon i = C , si un transistor délivre un courant i,
dt
augmenter C (parasite) diminue la variation de tension, et allonge la transition.

Electronique Numérique | Chapitre 1 : Caractérisation des circuits logiques 2


On voit sur le schéma ci-contre que la charge 50pF (càd 10
charges de 5pF en parallèle) en rouge est la limite acceptable pour
des transitions de 200ns.
On utilise aussi des buffers en tant que dernière porte. Ce sont
des circuits capables de délivrer des courants entre 20 et 100
mA, afin de communiquer avec le monde extérieur
(nécessitant un courant plus important).

2.4. Puissance dissipée

On calcule la puissance en se basant sur les courants moyens


dans les trois phases (LO, HI et transition) et le pourcentage moyen de temps dans ces trois
états. Les logiques bipolaires ont une consommation statique (LO/HI) importante et peu de
consommation dynamique (transitions). C’est l’inverse pour les logiques CMOS.

2.5. Facteur de mérite

L’efficacité se mesure par le temps de transition et de propagation, ainsi que par la


consommation d’énergie. Ces deux termes sont regroupés dans le facteur de mérite :
M = tp Pav [ns.mW = pJ]

Electronique Numérique | Chapitre 1 : Caractérisation des circuits logiques 3


CHAPITRE 2. Familles logiques bipolaires

1. Diode Logic (DL)

La logique à diodes permet de faire des fonctions


élémentaires telles que ET et OU. On remarque bien
dans le premier schéma que, si une des trois tensions
devient LO, la diode correspondante devient passante et
un courant vient apparaître en même temps qu’une
chute de potentiel dans R. La sortie V 0 est donc LO.
Dans le deuxième schéma, si une des tensions vient à être HI, la diode correspondante devient
passante et il circule un courant dans R, et la tension V0
est la tension au bornes de R, càd HI.
De tels circuits en série sont cependant bien puants étant
donné qu’ils dégradent le signal de sortie petit à petit (ci-
contre, une concaténation de ET avec un LO en entrée
pourrait donner un HI en sortie, ce qui est faux).
De plus, les circuits DL ne permettent pas de créer d’inverseur.

2. Diode & Transistor Logic (DTL)

2.1. Porte NOT

Le circuit ci-contre permet d’inverser le niveau


logique, à partir d’un BJT-EC avec RC et LO=0V, HI=VCC. Le transistor est coupé avec une
entrée LO (la sortie est donc en HI car RC devient superflu) tandis qu’il est saturé avec une
entrée HI (la sortie est donc en LO à cause de la chute de tension en RC). Cette saturation n’est
cependant pas une tension totalement nulle (VCE,SAT = 0,1 à 0,3 V).
Pour assurer la coupure, on a besoin d’un niveau d’entrée maximum ViL correspondant à la
tension de seuil V* de la jonction BE (0,6V). On verra plus loin quelle est la manière de
dimensionner le transistor pour assurer la saturation.
La coupure étant assurée à 0,6V et la tension de
saturation avoisinant en général 0,2V, cela laisse une
marge statique de 0,4V, que l’on peut augmenter en
mettant une diode à l’entrée du BJT (elle augmente ViL
d’une valeur V*, soit au total 1V).

2.2. Porte NAND

(la porte du slide 25 a l’air d’être un NOR, mais sans être plus sûr que ça). En rajoutant un
AND de type DL à l’inverseur DTL, on obtient une porte NAND.

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires 4


On voit ci-contre comment sont les différents
éléments selon les états logiques. Dans un circuit DTL,
une entrée non connectée est vue comme un HI,
puisqu’elle ne peut drainer le courant de base vers la
masse pour forcer le LO.
Voyons comment se comporte la sortance selon l’état :

• Etat HI : les n courants de fuite provenant des circuits


aval s’ajoutent au courant de fuite iCBr du transistor T1,
qui est coupé. Ainsi, la tension de sortie est dégradée
par la chute de tension de tous ces courants de fuite sur
RC. Comme les courants de fuite sont de l’ordre du µA, il

n’y a pas trop à s’inquiéter.


• Etat LO : la sortance est beaucoup moins bonne, car T 1 doit
VCC − VCE,SAT
véhiculer son propre courant de saturation . A ce
RC

courant s’ajoute les n courants des diodes d’entrées


VCC − VCE,SAT − V∗
passantes : n .
RB

On voit sur la droite de charge page précédente que, pour


être en saturation, il faut que βiB > iC , c’est-à-dire
VCC − 2V∗ VCC − VCE,SAT V − VCE,SAT − V ∗
β > + n CC
RB RC RB



provenant de T1 provenant des sor tances

VCC  V∗
V V V β 1 n RB
⇒ β CC > CC + n CC ⇒ > + ⇒ n<β−
VCC  VCE,SAT RB RC RB RB R C RB RC

Pour augmenter la sortance, il faut disposer de transistors à gain plus élevé et l’on a
intérêt à augmenter RC.

2.3. Temps de propagation

Prenons RC telle que VCE,SAT = 0,6V. On observe la courbe ci-contre,


où la sortie Vo monte lorsque l’on effectue un échelon descendant
de Vi. La commutation n’est pas instantanée, il existe une constante
de temps τ = βR CCCB (CCB étant le condensateur parasite interne de la

jonction CB). Si le transistor est nettement mieux saturé (VCE,SAT =


250mV), on voit apparaître un délai entre le flanc négatif de la
tension d’entrée du BJT et le moment où iC commence à diminuer :
c’est le temps de désaturation t sat. Si on veut avoir un niveau
logique VoL meilleur, il faut donc un temps de propagation moins
bon.

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires 5


3. Transistor & Transistor Logic (TTL)

3.1. Porte NAND

On remplace ici l’étage d’entrée par un transistor multi-émetteur, pour


créer une porte NAND. Cette porte étant censée ne fournir une sortie LO
que lorsque les deux entrées sont HI, on observe bien sur les schémas ci-contre que c’est le
cas. En effet, dans le premier cas, les jonctions BE sont coupées : on peut les voir comme des
⎛ ⎞
⎜ ⎟
diodes telles que VAK = VEB = VB − VE = ⎜ VCC − RB iB ⎟ − VCC < 0
N
⎜ très faible ⎟
⎝ courant de fuite ⎠

Le courant passe donc par le collecteur et on calcule RC de manière à saturer


le transistor de sortie. Si une des entrées est dans l’état LO, alors la jonction

BE correspondante est passante et aucun courant ne


passe dans le transistor T 2, qui est coupé et a donc
une tension VCC en sortie.
Pour augmenter la sortance du TTL, on va rajouter un
étage amplificateur à la sortie : le totem-pole
(composé d’un transistor pull-up pour les transitions
LO-HI et un pull-down pour les transitions HI-LO).
Dans le cas où les entrées sont HI, le courant active T4
qui fait circuler du courant dans T 5, également activé. On a donc 0,7V à l’entrée de T5 (VBE =
V*) et 0,7V supplémentaires à l’entrée de T4 (à nouveau VBE = V* pour T 4). La résistance au
collecteur de T 4 est choisie pour qu’il y ait 0,9V à l’entrée de T6, tel qu’aucun courant ne peut
circuler à travers T6 étant donné la diode présente à son émetteur (donnant 0,8V à l’émetteur
au lieu de 0,2V, ce qui est insuffisant pour activer T6). Dans la partie droite, le courant circule
dans les émetteurs et les transistors T4 et T5 sont coupés, n’empêchant plus T6 d’être actif,
fournissant une tension de 3V (=HI) à la sortie. La résistance de 130 Ohms sert à limiter le
courant circulant tout à droite dans T6, tandis que les diodes reliant les entrées à la masse
vont écrêter les tensions d’entrée à -0,7V (évite un trop grand courant d’émetteur à l’entrée).

3.2. Porte inverseuse

Si on trace la caractéristique de transfert Vo(Vi) d’un inverseur


TTL, on observe une dispersion importante, donc on se base sur
les cas les plus défavorables. Pour ViL = 0,8V , on peut garantir
VoH = 2,4V , et si on pose ViH = 2V , on peut garantir VoL = 0,4V ,

ce qui définit des marges de bruit statiques de 0,4V.


Les sortances à l’état HI et à l’état LO se calculent dans les
conditions ci-contre, et on trouve dans les deux cas une
sortance de 10, qui est donc la sortance de la famille TTL.
La consommation statique est la moyenne des puissances
consommées sur les deux états HI (iCCH = 3mA) et LO (i CCL =
1mA) avec une alimentation VCC=5V, c’est-à-dire de l’ordre
de 10mW. La puissance dynamique est négligeable.

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires 6


Il existe une légère dissymétrie entre les deux temps de transition. Lors des
transitoires, on doit tenir compte de C L (entrées en aval et capacités parasites
entre les pistes de connexion et la masse) qui ralentit la transition. On obtient
une transition HI-LO (pull-down) plus rapide que la transition LO-HI (pull-up)
car T6 et la résistance de 130 Ohms limitent le courant.

3.3. TTL Open Collector

En supprimant T6, on obtient l’étage à collecteur ouvert (Open Collecteur). La


fonction pull-up sera remplie par une résistance extérieure parce que le courant
requis par une entrée TTL à l’état HI est très faible (courant de fuite). La sortie
émetteur ouvert n’existe pas, car on a besoin d’une faible impédance pour

réaliser un niveau VoL acceptable avec la sortance voulue.


En plaçant une résistance pull-up commune à la sortie d’ANDs, on
réalise une fonction ET (WIRED-AND), et on obtient donc
l’équivalent d’un AND unique portant sur toutes les entrées. Si on
fait la même chose avec des NAND, la sortie est l’inversion de la
somme de produits (AND-OR-INVERT). On utilise souvent ce
principe pour attaquer une
entrée logique active à l’état
LO par plusieurs sorties
(actives à l’état LO aussi). Si
une entrée devient active
(LO), l’IRQ (Interruption
Request des CPU) devient aussi active (LO) : c’est un WIRED-OR.
Le collecteur ouvert est également pratique pour changer de niveau logique (on doit cependant
avoir une tension aval n’excédant pas la tension d’avalanche de T5, et une entrée ne
consommant pas un courant trop important à l’état HI). Calculons une valeur pour Rpu :

• Soit N1 TTL Open Collector connectés ensembles (WIRED-AND) à N2 entrées TTL. Si un de


ces circuits est LO, du courant va passer de VCC vers T5, ce qui est le cas le plus
défavorable point de vue du courant. En effet, le courant IoL ne peut alors dépasser
VCC,max − VoL ??? V − VoL
IoL ≤ N
N2 IiL + ⇒ Rpu ≥ CC,max
entrées
R pu I −N I oL 2 iL
aval

• Si maintenant, toutes les sorties sont HI (cas le plus favorable), alors Rpu voit comme
courant la somme des courants provenant des N 1 et des N2. La chute de potentiel aux
bornes de R pu doit être telle que
VoH ≤ VCC,max − Rpu (N1IOH + N2IiH ) ⇒ VoH − VCC,max ≤ −Rpu (NI1 OH + N2IiH ) ⇒ VCC,max − VoH ≥ Rpu (N1IOH + N2IiH )


chute de potentiel

VCC,max − VoH
⇒ ≥ Rpu
N1IOH + N2IiH

VCC,max − VoL VCC,max − VoH


Au final, on a donc : ≤ Rpu ≤ . Si on prend la valeur inférieure, la
IoL − N2 IiL N1IOH + N2IiH

consommation sera maximum mais le pull-up sera plus rapide. Il y a donc un compromis à faire.

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires 7


3.4. Variantes
X Y NAND
0 0 1
• Si on veut convertir un NAND en inverseur, on voit dans la table de vérités ci-
0 1 1
contre, que laisser une entrée à 1 (HI) suffirait. Pour ce faire, on pourrait laisser une 1 0 1
entrée « en l’air », mais elle serait trop sensible au bruit. On pourrait relier l’entrée 1 1 0
inutilisée à l’autre entrée, mais on augmenterait CL. On va donc relier l’entrée
X Y NOR
inutilisée à VCC. 0 0 1
Maintenant, si on veut transformer un NOR en inverseur, c’est en LO qu’il faut 0 1 0
1 0 0
laisser une entrée : on la relie donc à la masse via une basse impédance.
1 1 0
Cependant, pour une résistance de l’ordre de 1k, on atteint la
limite ViL et la résistance pull-down ne met plus l’entrée au
niveau LO acceptable : la notion de résistance pull-down est
donc peu utile en TTL.
• Sortie Tristate : on ajoute ici une entrée G (Gate) ou OE
(Output Enable) qui permet de définir un troisième état dit
« haute impédance » (HiZ), ou encore Tristate. Si on place G à
l’état HI, on vérifie que T4, T5 (jonction BE passante) et T 6 (diode à
côté de G passante) sont coupés, et la borne de sortie a donc une
impédance élevée vis-à-vis de la masse et de VCC.
Ce tristate permet la création de bus dans lesquels les lignes de
connexion peuvent être partagées entre plusieurs dizaines de
circuits.

• TTL Schottky : On place ici une diode de Schottky entre B et C, qui présente
une tension de seuil de 0,3V et ne stocke pas de charges minoritaires en
conduction (coupure plus rapide). Ainsi, si on augmente iB1, VCE baisse et
approche la saturation. Lorsque VCE atteint 0,3V, la diode vient passante et
dérive le courant pour maintenir le transistor faiblement saturée (V CE,SAT >
0,3V).

4. Emitter Coupled Logic (ECL)

La structure est ici du même type que les ampli


différentiels, et les niveaux logiques sont moins
écartés (-0,9 pour HI et -1,75 pour LO). On voit
ci-contre un OR. Pour un niveau HI, il sature le
transistor correspondant et coupe l’autre, mais la
sortie n’est pas un niveau compatible avec une
entrée ECL (il faut un étage supplémentaire en
émetteur-suiveur). Ce genre de famille est
réservée pour des circuits à hautes performances
comme les super-ordinateurs des années 70-80. Le temps de propagation est très faible (1ns) car
la logique est non saturée et optimisée (facteur de mérite important). Par contre, ces familles
disposent d’une faible immunité au bruit.

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires 8


CHAPITRE 3. Familles logiques MOS

1. Le transistor MOS

Si on ne nous explique pas comment fonctionne un transistor MOS, je vois mal comment on
pourrait comprendre ce chapitre :) Ce paragraphe est donc tiré du cours d’Electricité Appliquée de
M. Robert, une partie qu’il n’avait pas vue au cours.

1.1. Structure interne

Le transistor MOSFET, pour Metal Oxyde Silicon Field


Effect Transistor, est aussi appelé transistor à effet de
champ, dont le fonctionnement est basé sur la
modulation du courant par des effets électrostatiques
(c’est-à-dire le principe simple d’une capacité). Un
seul type de porteur intervient : les porteurs de
charges majoritaires.
La structure interne est représentée ci-contre : on implante un substrat (bloc de Si) deux
régions de type opposé (source et drain) et recouvertes par du métal (connexions avec
l’extérieur). La région de substrat entre S et D est recouverte d’une couche d’oxyde de Si (SiO 2)
isolante, elle-même recouverte de métal : c’est la grille G. De manière générale, le substrat
constitue une 4ème électrode qui peut être indépendamment polarisée.
Le transistor porte le nom correspondant au type de la source et du drain (cf. schéma).

1.2. Principe de fonctionnement

En l’absence de stimulation à l’entrée G, il ne peut y


avoir une excitation suffisante permettant des va-
et-vient des électrons depuis la source vers le drain
(je décline toute responsabilité quant à une mauvaise interprétation de cette phrase). Ainsi, la
jonction GS peut être polarisée en direct mais la
jonction GD sera alors polarisée en inverse,
agrandissant la zone de transition et empêchant donc
le passage du courant. A tension nulle, le courant de
drain traversant le MOS est nul.
Par contre, si on polarise la grille, l’ensemble grille-oxyde-substrat va se comporter comme
un condensateur et il va s’accumuler des charges positives en G, et des charges négatives en-
dessous de l’oxyde (provenant de S et D). Le champ électrique transversal va repousser les
trous majoritaires du substrat, ce qui fait que, si la tension est suffisamment élevée, on va
avoir une mince couche N, appelée zone d’inversion, reliant S et D (d’autant plus large que le
potentiel de grille est élevé).

Electronique Numérique | Chapitre 3 : Familles logiques MOS 9


Si maintenant, on polarise le drain, on va
approfondir le canal du côté de la source et le
rétrécir du côté du drain. Lorsqu’on arrive au
point VDS=VGS, le rétrécissement
est compensé par une
accélération des charges, et
pour toutes les valeurs VDS plus
grandes que VGS, le courant de
drain devient indépendant de
VDS : on est dans la zone de
pincement.
Il existe cependant un seuil VGS,TH en-dessous duquel le transistor n’est pas passant (il varie
alors de quelques dixièmes de volts à quelques volts).
Les logiques MOS ont un facteur de mérite très élevé, et sont faciles à fabriquer.

2. Circuits simples NMOS et PMOS (RTL)

En comparaison avec le BJT, le MOS présente une zone ohmique (et donc de saturation) beaucoup
plus large (limitée par VDS=VGS). Cependant, pour un inverseur ci-contre avec un HI à l’entrée, on
devrait avoir une résistance de 100k à la sortie pour avoir un V oL acceptable, mais cette résistance
serait 100 fois plus grande que le transistor. On va donc remplacer cette
résistance par un NMOS jouant le rôle de résistance variable. Lorsque
l’entrée est LO, presqu’aucun courant ne passe de D à S (de M 1), ni donc de
D à S (de M2), on voit donc par la caractéristique ID(VDS) ci-dessus que VDS2
est proche de 0 (RD est donc équivalente à une grande résistance). Dans le
cas d’une entrée HI, VDS2 est proche de VDD, comme si R D était plus faible.
On a donc formé une résistance non-linéaire nettement plus élevée à
tension (ou courant) faible (cf. ci-contre).
Par contre, la commutation HI-LO (en sortie) est plus rapide
dans ce cas-ci : au moment da la commutation, le courant ID est
faible et RD énorme par rapport à une résistance fixe de 100k,
donc la chute de tension est plus importante, et Vo descend plus
vite.
On voit sur le schéma ci-contre comment se
présenterait
l’inverseur dans le
cas d’un PMOS. La
seule chose qui
change est le signe
de VDD, puisqu’ici le

substrat est constitué de charges N.


La logique NMOS est plus compacte (moins de transistors, qui
sont plus petits), ce qui se voit sur les portes ci-contre. De plus, le
fonctionnement est largement indépendant de la tension
d’alimentation.

Electronique Numérique | Chapitre 3 : Familles logiques MOS 10


3. Circuits CMOS de base

3.1. Principes et portes de base

L’idée du CMOS (Complementary Metal Oxyde Semiconductor)


est d’associer 2 transistors PMOS et NMOS avec un substrat et
une grille communs. Ceci donne donc un certain nombre de
jonction PN représentées par des diodes ci-contre. On repère

aussi deux BJT : un NPN et un PNP, qui n’intervienennt pas dans


les conditions normales mais qui passent en conduction et font
tout pèter (= Latch-up) dès qu’on excède la tension
d’alimentation prescrite.
On voit ci-contre quelques exemples pour les portes NOT, NOR
et NAND. Le principe de ces CMOS est le suivant. Pour un NMOS, si
la tension de grille est à 1 (disons VDD), alors le transistor est actif
et on peut remplacer le transistor par un fil entre D et S (la tension
de D se voit donc reportée en S, ou inversement). Par contre, si la
grille est à 0 (disons 0V), le transistor est coupé et toutes les portes
G, D et S ne sont plus liées : ce sont des circuits ouverts. Pour les
PMOS (transistor avec une boule inverseuse à la grille), le principe
est le même en inversant les rôles de 1 et de 0.

3.2. Caractéristique d’un inverseur

La caractéristique Vo(Vi) ci-contre nous indique une quasi idéalité


des CMOS pour les niveaux logiques : lorsque la tension d’entrée
est basse, le PMOS supérieur est conducteur (on remplace le
passage D-S par une résistance nulle) et le NMOS est coupé
(passage D-S remplacé par une résistance infinie). Tout se passe
donc comme si on avait un diviseur résistif composé de deux résistances
variables commandées par la grille. Si celle-ci a une tension de 2,5V, la sortie
sera la moitié de VDD, soit 2,5V également. La caractéristique est donc
parfaitement symétrique, et on verra par après qu’elle a beaucoup plus
d’avantages par rapport à celle de la famille TTL.

3.3. Marges de bruit

On prendra les limites d’entrées là où les pentes sont unitaires,


en rajoutant une sécurité supplémentaire. Cela nous donne ViL =
1,5V et ViH = 3,5V, ce qui nous donne les limites de sortie, en
réalité optimisées (VoH = 4,95V, VoL = 0,05V). Les marges de bruit
statique sont donc de 1,45V, ce qui est très intéressant. Un autre
avantage des CMOS est un principe de fonctionnement indépendant de V DD dans une large
gamme, contrairement aux TTL.

Electronique Numérique | Chapitre 3 : Familles logiques MOS 11


On se rend compte que les marges de bruit statiques sont
proportionnelles à VDD, c’est-à-dire égales à 30% de VDD (les niveaux
d’entrée sont définis à 30% et 70%). On n’a cependant cette immunité
qu’en statique, puisqu’en dynamique, la forte impédance d’entrée des
CMOS augmente les couplages par rapport aux parasites. Pour
quantifier ceci, on fait l’expérience en augmentant la longueur des
impulsions parasites, et on regarde à chaque fois la valeur de V th, valeur à laquelle le parasite
est responsable du basculement. Plus ce temps est court, plus Vth est
grand. L’énergie dissipée (dans la résistance
amont) par cette impulsion présente un minimum,
cas le plus défavorable sur lequel on se basera
pour définir la marge de bruit, et donc le tp,min et le
Vth,min. On observe aussi que les marges de bruit
dynamique augmentent avec VDD. On a toutefois
tendance à réduire la tension d’alim pour utiliser
des transistors plus petits et réduire la
consommation.
En comparaison avec les TTL (bleu), on voit donc que les niveaux sont quasi idéaux,
la caractéristique est symétrique, bascule à V DD/2, et les marges statiques sont plus
que triplées.

3.4. Protection à l’entrée et consommation

Les grilles étant sensible au claquage, on a besoin de circuits de


protections. Ci-contre, des diodes qui écrêtent la tension d’entrée hors de
[VSS-0,7, VDD+0,7] et la résistance permet de protéger ces diodes d’un
courant trop important. Ceci va cependant diminuer fortement
l’impédance d’entrée (1015 à 108 Ohms) car leur courant de fuite est
sensiblement plus élevé que le courant de fuite de la grille. En statique,
on aura donc un courant d’alimentation faible, puisque l’un des
transistors est coupé et le circuit aval a une résistance d’entrée élevée (c’est un des
principaux avantages des CMOS). En dynamique, la grille se comporte comme une
capa de 5pF, et chaque transition donne donc un courant transitoire pour
charger/décharger cette grille. La transition LO-HI ci-contre montre qu’au

basculement, l’alim délivre un double courant transitoire : un courant


interne traversant les deux transistors et un courant de charge des grilles
aval. L’énergie consommée sur une impulsion est donc :
HI LO C V2 CL VDD
2
WPULSE = WLO −HI + WHI−LO + WL = ∫ VDDITR dt + ∫ VDDITR dt + L DD +

LO HI
2

 2


=2 VDD Q TR LO −HI : perdu LO −HI : stocké dans CL
dans le PMOS HI −LO : perdu dans NMOS

2Q TR
⇒ WPULSE = 2VDDQ TR + CL VDD
2
= ( Ci + CL ) VDD
2
, avec Ci = considéré
VDD

comme un condensateur virtuel rajouté en parallèle. En multipliant cette énergie par la


fréquence f de l’horloge, et en ajoutant la puissance statique qui est négligeable, on obtient la
puissance consommée, provenant essentiellement des commutations, et proportionnelle à f.
C’est le principal défaut des CMOS.

Electronique Numérique | Chapitre 3 : Familles logiques MOS 12


3.5. Temps de propagation et sortance dynamique

On voit ci-contre le temps de propagation avec une capa


CL de 15pF (càd 3 CMOS aval). On voit que celui-ci
s’améliore si on augmente la tension d’alimentation : c’est
parce que les MOS ont un courant de drain proportionnel à
VDD², et donc les capacités parasites (qui doivent
emmagasiner le tripe de charge) se chargent plus vite. On a au final, en approximant, un t p
inversement proportionnel à VDD. Remarquons aussi que l’abaissement de VDS permet de faire
des transistors plus petits (donc de C L plus faible), et donc l’accroissement de f peut
paradoxalement s’accompagner d’une diminution de VDD.
La sortance dynamique est déterminante : c’est les capacités
CL qui altèrent les temps de transition (sans dégrader les
niveaux logiques), car, comme on a dv/dt = i/C, si on
augmente C, on diminue le gradient dv/dt, ce qui augmente
tp. Il faut donc se limiter à 50pF (sortance de 10) en général,
sinon la tension de sortie n’a pas le temps d’atteindre le
niveaux logiques normaux, ce qui réduit la marge de bruit.

4. Circuits dérivés

4.1. Etage de sortie CMOS 4000B

Voyons les inconvénients des premières portes


CMOS par l’exemple de la porte NAND ci-contre. Elle
est composée de deux entrées, deux transistors NMOS en série et deux transistors PMOS en
parallèle. Les trois modes sont explicités sur le schéma ci-contre, mais ont voit qu’il existe
une dissymétrie au niveau de la résistance de sortie, formée par les (faibles) résistances de
transistors passants (RDSon). La résistance de sortie du NAND à n entrées varie donc entre
nRDSon et RDSon/n, mais il y a aussi le fait que les transistors d’entrées sont ceux de sortie, donc
les temps de transition des signaux d’entrée influencent ceux du signal de sortie et la sortance
ne peut être augmentée qu’en augmentant la largeur de transistors (ce qui augmente C L).
Pour résoudre ces deux problèmes, on ajoute un étage de sortie (buffer), qui est donc, bien
entendu, dans ce contexte, une mémoire tampon dans un débit d’information
(et là Mathys sort une Kalash en plein oral). Grâce à ce buffer, l’étage NAND ne
doit plus avoir qu’une sortance unitaire, donc on peut l’optimiser comme on
veut. L’étage buffer peut être aussi optimisé pour avoir une impédance de
sortie plus faible, et ainsi on a de meilleurs niveaux logiques pour un même
courant de sortie, une meilleure immunité dynamique au bruit, et un temps de
transition plus raide (le buffer multiplie la pente au basculement). Par contre, le
temps de propagation augmente très faiblement.

4.2. Sortie à 3 états : Tristate

Etant donné qu’il est interdit de connecter ensemble deux sorties logiques (courant débité
anormalement grand et tension de sortie incohérente), on va utiliser le tristate.

Electronique Numérique | Chapitre 3 : Familles logiques MOS 13


Le tristate ci-contre impose un état de haute impédance (HiZ) en
coupant simultanément les deux transistors de sortie (comment A se
retrouve à la sortie ??). On voit que pour une OE (Output Enable)
inactive, N1 et N4 se coupent, tandis que P1 et P3 sont passants, ce
qui implique que N3 soit passant et P4/P5 coupés, donc
N5 coupé également. On utilise ce type d’étage tristate
pour les décodeurs d’adresse, qui sont en contact avec les
bistables de données via l’entrée CS (Chip Select), jouant le
rôle d’entrée tristate.

4.3. Sortie à drain ouvert

Pour éviter le conflit entre plusieurs sorties, on utilise aussi


les CMOS Open-Drain (à drain ouvert), qui ne peuvent plus
imposer l’état HI que par l’intermédiaire d’une
résistance pull-up Rpu (seule responsable d’un
courant statique dans le transistor de sortie à l’état
LO, qui s’ajoute au courant dynamique de la capa
Cin). On prendra généralement R pu de quelques k à
quelques dizaines de k, mais pas trop grande car un
point est d’autant plus susceptible aux parasites que
son impédance est élevée. De plus, le temps de
montée LO-HI s’allongerait, vu qu’il dépend de
τ = RpuCin . Tout comme dans les TTL, on utilise ces CMOS Open Drain pour attaquer une entrée

logique (active à l’état LO) par plusieurs sorties (également actives à l’état LO) : on constitue
un WIRED-OR.

4.4. Entrée à hystérèse (trigger de Schmitt)

En dissymétrisant les transistors d’entrées, la


caractéristique de transfert peut présenter une hystérèse
et avoir deux seuils distincts suivant que la tension Vi
croit ou décroit. Ceci permet d’éviter les oscillations à
cause des parasites lorsque le temps de transition est long
(Vi progresse lentement et passe longtemps par un
amplificateur à gain élevé, qui peut osciller d’un état logique à l’autre très vite). Dans le
trigger de Schmitt, une fois que le circuit a basculé, il faudrait que les parasites soient de
l’ordre de VTH2-VTH1 (1V) pour faire rebasculer le niveau logique.

5. Précautions

• Alimentation : éviter de connecter/déconnecter sous tension, on pourrait connecter une sortie


sur une entrée sans que les masses soient reliées, et si les deux masses sont flottantes l’une par
rapport à l’autre, elles peuvent présenter des grandes différences de potentiel, et la tension de
sortie amont pourrait être une tension d’entrée aval excessive.

Electronique Numérique | Chapitre 3 : Familles logiques MOS 14


• Entrées : ne jamais laisser une entrée en l’air car les grilles sont très sensibles au bruit, toujours
raccorder une entrées inutilisée à son état logique inactif, et eviter de connecter plusieurs
entrées ensemble (diminue la sortance). Les surtensions transitoires sont écrêtées par les
diodes, mais le courant qu’elles font passer doit être limité par des résistances si besoin (tant
pis pour les temps de transition ralentis)
• Respect des temps de transition : si on allonge les temps de transition des signaux d’entrée, les
transistors vont trop longtemps séjourner dans une zone à gain élevé (risque de ringing). Si les
temps de montée sont supérieurs au minimum spécifié, on utiliser des entrées avec hystérèse.

Electronique Numérique | Chapitre 3 : Familles logiques MOS 15


CHAPITRE 4. Multivibrateurs

Un état logique est stable lorsqu’il se maintient indéfiniment jusqu’à l’activation d’une entrée (trigger).
L’état métastable est un état logique ne restant que temporairement avant de passer spontanément à
l’autre été logique. Les multivibrateurs sont une catégorie de circuits logiques séquentiels divisée en
trois types : bistables (2 états stables), monostables (1 état stable et 1 état métastable) et astables (2
états métastables).

1. Bistables

Il s’agit d’un circuit possédant deux entrées de déclenchement destinées


à activer/désactiver la sortie (souvent deux sorties opposées Q et Q#, le
sharp représentant le signal actif à l’état bas). Le bistable constitue le bit
élémentaire de mémoire (mémorisation de l’état du système en logique
séquentielle, circuits de mémoire pour les ordinateurs).
Il y a deux types de bistables : latches (déclenchement par niveau) et flip-flop (déclenchement par
flanc).

1.1. R-S

En pratique, le RS est
composé de portes NOR
(entrées actives à l’état HI)
ou NAND (entrées actives à
l’état LO). L’activation de S
(set) rend la sortie active et l’activation de R (reset) rend la sortie inactive.
L’état S=R=1 est interdit étant donné que le retour à S=R=0 rend la sortie
incohérente à cause des conditions de course. Remarquons aussi qu’il y aura toujours un état
transitoire de durée tp (glitch) au moment du basculement du bistable, pendant laquelle les
sorties ne sont pas complémentaires.

1.2. D-Latch, D-Flip-Flop et Toggle

• D-Latch : On couple ici les entrées R et S par un


inverseur, ce qui ne donne qu’une entrée de commande
D (Data). On a également une entrée d’activation LE
(Latch Enable) qui permet au deuxième étage (le RS à proprement parler) de recopier D sur Q
(la sortie étant verrouillée dans le dernier état lorsque LE est désactivée). Notons que l’on a
besoin d’un hold time th assurant la stabilité de D pendant la désactivation de LE, et d’un
setup time. Ce setup time peut se référer au flanc montant de LE (si on désire les
changement de la sortie synchronisés sur ce flanc montant), ou au flanc descendant de LE (si
on désire que le latch soit transparent, sauf lorsqu’on désactive LE).

Electronique Numérique | Chapitre 4 : Multivibrateurs 16


• D-Flip-Flop : pour déclencher le D par un flanc
montant, on a besoin d’un détecteur de flanc.
Pour créer ce dispositif, on utilise
volontairement le temps de propagation
de l’inverseur ci-contre, pour créer un
décalage entre U et CLK : on obtient une
impulsion dont la largeur est de l’ordre
du temps de propagation. Remarquons
que ces impulsions peuvent être
involontaires dans certains circuits
asynchrones, ce qui rend leur fabrication fastidieuse.
En plaçant ce détecteur de flanc à l’entrée de LE, on réalise un D-Flip-
Flop, et le flanc montant de CLK est l’évènement de déclenchement du
bistable. L’horloge CLK doit cependant avoir un temps de montée inférieur
à tr(max) et une largeur d’impulsion supérieure à twh(min). Aussi, il y a une
fréquence maximum d’horloge, et un rapport cyclique devant parfois rester proche de 50%.
• Pipe-line : on peut s’en servir dans la logique
synchrone, pour propager des informations de blocs
asynchrones sans avoir de conditions de course. Si la
période d’horloge est supérieure au temps de
propagation du bloc le plus lent (auquel on doit ajouter
tpd), les signaux de sortie de tous les blocs sont stables
au moment du flanc actif de l’horloge. On appelle ceci
un pipe-line, permettant une vitesse de calcul en régime
plus élevée. Les différences de trajet dans la distribution
de l’horloge sur plusieurs dizaines de cm introduisent un décalage (clock
skew), donc il faut égaliser les trajets.
• Toggle Flip-Flop : En reliant Q# sur D, on obtient le bistable T dont l’état
change à chaque flanc actif d’horloge. On divise ainsi la fréquence de CLK par
2.

1.3. J-K

En reliant certaines les


sorties aux entrées, la table
de vérité du J-K reste
identique à celle du RS sauf
que si J=K=HI, on passe en
mode Toggle (Toggle toi-
même). En effet, si Q=LO, K
ne sert plus à rien et si
Q=HI, J ne sert plus à rien.
Le J-K existe aussi avec les entrées PRE (PREset) et CLR (CleaR), qui permettent d’imposer l’état
de sortie de manière asynchrone, pour remettre un compteur à zéro, précharger un compteur
à une valeur binaire quelconque, ...

Electronique Numérique | Chapitre 4 : Multivibrateurs 17


1.4. Compteurs synchrones et asynchrones

• Compteurs binaires (modulo 2)


Le plus facile à créer est un compteur binaire asynchrone,
mettant en cascade n bistables T actifs sur le flanc
descendant de l’horloge. On active l’entrée CLR# pour
mettre toutes les sorties à LO et on la désactive ensuite.
Du coup, le premier flanc descendant horloge provoque Q0
= HI, et le flanc suivant fait passer Q 0 à LO. Ce flanc descendant de Q 0 fait passer Q 1 à HI,
etc... Le problème avec le compteur asynchrone est que le temps de propagation de chaque
étage contribue à un retard : Qn-1 est en retard de ntp sur l’horloge, et donc la fréquence
maximale est donnée par 1/ntp. De plus, les états corrects
de sortie sont entrecoupés de transitoires (cf. ci-contre).
On résout ce problème en utilisant des JK ou des T avec
entrée d’activation E. Le bit de poids faible change d’état à
chaque étape : il peut être activé constamment. Par contre,
un bit de poids fort change lorsque tous les bits de poids
plus faible sont à 1 (d’où les portes supplémentaires).
Toutes les sorties changent alors d’état simultanément et
la fréquence maximale du compteur ne dépend plus du
nombre d’étages.
On peut aussi faire des décompteurs, comme ci-contre. Les
compteurs sous forme intégrée existent sous divers modèles : MSI
(circuits à moyenne intégration, dans des boitiers à 16 broches
avec 4 bistables en cascade), compteurs asynchrones, microcontrôleurs (qui contiennent
plusieurs compteurs à 8 ou 16 bits).

• Compteurs modulo M
Pour compter en décimal (modulo 10) ou en heures/minutes (modulo 6), ou dans un autre
modulo M quelconque, on réalise un compteur avec trop d’états 2n > M. Il existe alors trois
moyens de supprimer les états en trop :

o Par rétroaction (pour autoriser/interdire certains


changements d’état) : pour passer de l’état 100 (4) à l’état
000 (0) au lieu de passer à l’état 101 (5), on doit empêcher
Q0 de changer d’état, grâce à la rétroaction de la sortie Q2# sur les entrées J0 et K0, et
forcer Q 2 à changer d’état par la rétroaction de la sortie Q 2 sur l’entrée K2.
o Par remise à zéro (pour remettre certains états à 0) : le premier état
indésirable du compteur (1001 = 9) est détecté par une NAND qui
provoque la mise à zéro des 4 bistables via une CLR commune. Le
problème, c’est qu’on a un glitch qui peut faire foirer un autre circuit
logique en aval, et que l’impulsion de remise à zéro est très courte
(lorsque le plus rapide des bistables se remet à LO, le NAND repasse à HI avant que le
bistable le plus lent n’ait pu repasser à LO). Une solution pour ce deuxième problème est
de remplacer la NAND par un RS.
o Par préchargement (pour forcer un nouvel état de départ) :
utile pour les compteurs intégrés munis d’entrée de

Electronique Numérique | Chapitre 4 : Multivibrateurs 18


programmation Di. Lorsque PRE# est actif, Qi se recopient sur Di. Dans l’exemple du
décompteur ci-contre, le passage par 0000 est détecté et provoque une impulsion sur
BO#, active à l’état bas pendant l’état inactif de l’horloge. BO# et PRE# étant relié, on
remplace 0000 par 1001 câblé sur les entrées Di, ce qui écourte BO#.

1.5. Registres à décalage

Le principe du registre à décalage se base sur le fait qu’une mise en cascade de bistables
synchronisés ne peut propager une information que par étape.
Quelle que soit l’information présente dans le registre, elle se
décale à droite à chaque coup d’horloge : Q n(tk) = Q n-1(tk-1).
On peut ainsi effectuer les conversions :

• Parallèle vers série : en utilisant des entrées de


chargement LD (LoaD) sur les bistables D. On précharge
alors un mot de 4 bits (ici 1011) via les entrées Li et une
impulsion simultanée sur les 4 entrées LD. Quatre
périodes de CLK plus tard, l’information série est arrivée
en Q0.
• Série vers parallèle : pour un registre à n bits, on retrouve
après n coups d’horloge un mot que l’on peut lire sur les
sorties Qn-1...Q0.

On peut aussi créer ce que l’on appelle le compteur de Johnson, en


reliant la dernière sortie # à la première entrée. On a alors 2n états
distincts : chaque Q va prendre une valeur pendant 4t p avant de
basculer, et ce de façon décalé (d’un tp) par rapport au Q précédent.
Si on met un XOR entre l’entrée et la sortie, on obtient des
séquences de longueur 2n-1, en actionnant le XOR avec des sorties
bien précises (voir tableau). On emploie ceci pour (dé)moduler le
signal à transmettre dans les transmission numériques à spectre
étalé.

2. Monostables

Le monostable ne possède qu’un état stable (sortie inactive), l’autre état


(sortie active) étant métastable. Il sert le plus souvent à retarder une
impulsion (flanc montant de Q# retardé de T m par rapport à celui de A) ou
à allonger la longueur d’une impulsion (sur Q).

2.1. Rappels sur le RC

La base de temps est donnée par un circuit RC commandé par


des impulsions, et de constante de temps τ = RC . Lorsque cette
constante devient grande par rapport à la durée de l’impulsion,
on peut remplacer l’exponentielle par des segments de droite.

Electronique Numérique | Chapitre 4 : Multivibrateurs 19


De cela vient les dénominations intégrateur et dérivateur page
précédente. L’intégrateur va nous permettre de créer un circuit
de délai pour retarder une impulsion (du temps que met
l’exponentielle pour atteindre le seuil logique du trigger). Le
circuit ci-contre permet également de filtrer passe-bas, et donc
de filtrer les impulsions parasites courtes.

2.2. Monostables réalisés à l’aide de portes

Le dérivateur nous permettra de traiter les impulsions avec un montage similaire :

• Raccourcir une impulsion : en activant l’entrée Vi par


une impulsion, V A est LO, ce que le condensateur
transmet à VB, et Vo passe en HI. Le condensateur va se
charger via R et sa tension va remonter
exponentiellement à VDD, ce qui finira par faire basculer
la sortie : celle-ci sera donc une courte impulsion de
longueur T m = 0,7RC. Remarquons que la longueur de
l’impulsion d’entrée Ti doit être supérieure à T m, sans quoi le monostable cessera de
fonctionner.
• Allonger une impulsion : le circuit précédent permet de le
faire à condition que l’on mette une rétroaction entre la
sortie et l’entrée (avec une porte NOR). Lorsque
l’impulsion arrive à l’entrée, elle met la sortie à 1, qui va
bloquer la porte NOR (peu importe la valeur de Vi, sa
sortie vaudra 0). Ainsi, la sortie « prend le relai » et
l’entrée n’a pas besoin d’être aussi long que Tm.
Cependant, si de nouvelles impulsions se produisent pendant l’état métastable, elles sont
ignorées : le monostable est non-redéclenchable. Il existe
des monostables redéclenchables pour lesquels tout flanc
actif d’entrée réinitialise l’état métastable à son début
(ceci permet de détecter un seuil de fréquence : si T i < Tm,
la sortie du monostable se maintient à 1).
On peut passer de l’un à l’autre par une porte NOR (cf. ci-
contre).

3. Astables

L’astable ne possède pas d’état stable : dès qu’il est actif pendant un temps
TmH, il repasse à l’état inactif pendant un temps T mL. La période est donc
l’addition de ces deux temps, et on définit le rapport cyclique comme étant T mH/T. L’astable sert
de circuit d’horloge pour les logiques synchrones, et doit donc contenir une base de temps pour
déterminer les délais. Les résonateurs à quartz permettent une grande stabilité et/ou précision.

3.1. A deux constantes de temps

Electronique Numérique | Chapitre 4 : Multivibrateurs 20


Cet astable est composé de deux monostables (2 inverseurs et 2
RC), et pour le comprendre, partons de l’état ci-contre.
L’échelon HI à gauche de C2 va dans un premier temps se
retrouver sur R2, qui va progressivement perdre cette tension au
profit du chargement de C2. Une fois cette tension V A inférieure
à VDD/2, l’inverseur 1 change d’état et le HI transmis se
répercute en premier lieu sur R1, qui va perdre sa tension progressivement pour charger C1.
Finalement, l’inverseur 2 change d’état et Q=LO, ce qui va provoquer un échelon HI-LO à R 2C2,
provoquant une tension négative –VDD/2 sur R2. La diode D1L va cependant devenir passante
avant cela et écrêtera VA qui redeviendra progressivement
nulle (charge de C 2), tandis que VU va finalement atteindre
VDD/2 et va refaire basculer Q à HI. Et ainsi de suite...

3.2. A une constante de temps

Si on veut un signal carré, un circuit RC suffit. Dans l’état ci-


contre, la tension HI de sortie se répercute premièrement sur
R, qui va voir sa tension s’annuler au profit de C. Ainsi, VA décroît exponentiellement et
l’inverseur 1 finit par mettre HI à sa sortie, et donc l’inverseur 2 met Q à LO. Ceci est transmis
par C à l’entrée A qui va vouloir passer à –VDD/2, mais sera écrêté par la diode D 1L, pour
finalement retomber à 0. Une fois que c’est fait, la diode se bloque et C, qui s’est déchargé, va
se recharger à travers P1, R et N 2 : A croit exponentiellement jusqu’à-ce que l’inverseur 1
réagisse, passe sa sortie en LO, ce qui rendra Q=HI. Etc...
Il est cependant conseillé d’utiliser des portes avec entrée
« trigger de Schmitt » chaque fois que le temps de montée du
signal d’entrée est trop lent par rapport aux spécifications de la
famille logique. On peut aussi se servir de l’hystérèse entre
deux seuils d’entrée pour fabriquer un astable (RC intégrateur).

3.3. Le 555

Le Timer 555, circuit multivibrateur populaire, permet de réaliser des bistables et des astables.
On le verra en détail aux labos.

Electronique Numérique | Chapitre 4 : Multivibrateurs 21


CHAPITRE 5. Circuits de sélection

1. Multiplexeurs

Le multiplexeur est un aiguillage numérique à 2N entrées et une sortie,


dont la sortie reflète l’entrée qui porte un numéro par N bits de
sélection Si. Toute fonction logique pouvant s’exprimer par une somme de produits, un
multiplexeur à N entrées de sélection peut synthétiser n’importe quelle fonction F
de N variables. En écrivant la table de vérité pour les 2N combinaisons, on sait quoi
mettre aux entrées pour reproduire à la sortie la valeur souhaitée de F.

2. Démultiplexeurs

Le démultiplexeur possède une entrée D et 2N sorties. Si D est inactive, aucune


sortie n’est active mais si D est active, alors la sortie active est celle dont
l’indice est codé par les bits de sélection S0...SN-1.

3. Décodeurs

Le décodeur a pour fonction de détecter une combinaison


particulière de bits (code) à ses entrées et d’activer une
combinaison de sorties qui y correspond. Le décodeur binaire est
un cas particulier (un seul bit est activé par mot du code d’entrée).
Par exemple, le décodeur 3-vers-8 ci-contre, qui n’est au final
rien d’autre qu’un démultiplexeur où D est remplacé par EN, et les
sorties sont actives à l’état bas. Un tel décodeur est réalisé avec N
inverseurs et 2N portes NAND à n+1 entrées. Le problème est que l’on a des
transitoires parasites, à cause du t p des inverseurs : le temps de propagation
spécifié pour le décodeur doit donc nécessairement tenir compte du délai
maximum avant que toutes les sorties ne soient stables.
Un exemple de décodeur avec plus d’un bit de sortie activé est le décodeur
BCD (Binary Coded Decimal) vers 7-segments, comprenant des chiffres de
0000 à 1001 (0 à 9). Les 7 segments sont câblés en anode commune reliée à
VDD, et on a ajouté une résistance pour limiter le courant. Une entrée LT
(Lamp Test) permet d’allumer tous les segments. Remarquez qu’il est tout
de même possible de représenter les 16 chiffres hexadécimaux.

Electronique Numérique | Chapitre 5 : Circuits de sélection 22


CHAPITRE 6. Introduction aux µP

1. Préliminaires

On distingue deux catégories de systèmes à µP

• Ordinateurs à usage général : systèmes de conception à vocation généraliste pouvant exécuter


des applications variées via un OS. L’impératif n°1 est la souplesse mais la performance est
souvent subjective et peu optimisée (parfois objective lors que l’on a affaire à du son haché,
une image saccadée, une gravure ratée, ...). Remarquez que la phrase précédente s’applique
parfaitement au titre de cette section : « préliminaires ».
• Systèmes embarqués : système parfois réduit à un seul composant, mais le plus souvent
internes à un appareil (périphérique, télécom, audio-vidéo, automobile, ...) ou un processus
industriel (régulateur, séquenceur d’évènement, organe de sécurité, ...). La performance est
cruciale et objective, liée au respect des constantes de temps du processus (notion de temps
réel). Contrairement aux ordinateurs à usage général (sauf les portables et PDA), les systèmes
embarqués se veulent souvent optimisés en consommation, et leur contraintes sont plus
sévères (température, humidité, poussière, ...)

On aura peu de chance dans notre vie d’ingénieur de devenir architecte de µP, ou de concevoir une
carte mère... Par contre on aura de grandes chances de : assembler un système fait de cartes
existantes, concevoir une carte d’interface pour un processus, manipuler de la logique
programme, concevoir une carte à µP industrielle et intégrer un cœur de µP existant dans un ASIC
ou un SOC.

2. Catégories de microprocesseurs

• µP standards : système accédant à la mémoire externe (mémoire programme et mémoire de


données) via des bus (bus de données de Nd bits, bus d’adresses de N a bits, et bus de contrôle)
et communique également avec des périphériques.
• µC ou microcontrôleur : pour créer un µC, on intègre l’ensemble des ressources (mémoires et
périphériques) dans le même boîtier.
• DSP ou Digital Signal Processors : processeurs de signaux optimisés pour les calculs comme le
filtrage ou les régulations numériques. Les performances sont obtenues en optimisant
l’architecture, essentiellement au niveau du jeu d’instruction et de la multiplication des bus
internes (pour favoriser le débit de données).

Electronique Numérique | Chapitre 6 : Introduction aux µP 23


CHAPITRE 7. La famille 8051

1. Introduction

La famille des µP 8051 est très populaire, et tous les processeurs dérivés ont un noyau commun
de ressources matérielles et un jeu d’instruction basique.

1.1. Schéma bloc simplifié

Le schéma simplifié est représenté ci-contre, pour le mode µC.


On retrouve l’unité centrale (CPU) cadencée par un oscillateur
d’horloge (OSC), qui communique via des bus avec la mémoire
programme (ROM) et la mémoire de données (RAM), et qui est
assisté par plusieurs périphériques : entrées-sorties parallèles
(Parallel I/O) en 4 blocs de 8 bits, deux Timers et un port de
communication série (Serial Port). Ces périphériques peuvent interrompre le fonctionnement
du programme via des lignes d’interruption (Interrupt Control).
L’ordre de grandeur des ressources en mode µC n’a rien à voir avec celui des micro-
ordinateurs usuels (quelques Ko de ROM et quelques dizaines à centaines d’octets de RAM)

1.2. Alimentation

L’alimentation par deux bornes est en général


insuffisante pour garantir une distribution à basse
impédance partout : on utilise souvent plusieurs alims,
et on raccorde des condensateurs de découplages
entre chaque borne VDD et VSS. Les µC ont toujours été
optimisés pour une très faible consommation (les PC
aussi, de plus en plus), pour pouvoir les utiliser dans
des systèmes à pile (comme le Sex Appeal). Avec
l’évolution technologique, on a tendance à baisser la tension d’alim ou à les multiplier (avec
moins de tension pour le CPU que pour les périphs). Le CPU doit être particulièrement bien
alimenté, via des pistes de largeur suffisante et un bon découplage de toutes les bornes
d’alimentation (la plupart des cartes actuelles sont imprimées en multi-couches : un plan de
masse, un plan d’alims, ...).

1.3. Horloge

Etant donné que les multivibrateurs astables, c’est juste bon pour faire fonctionner un Mac (et
encore...), on va plutôt utiliser un oscillateur à quartz qui est un signal d’horloge stable et
suffisamment précis pour la plupart des applications. Un oscillateur se compose d’un ampli de

Electronique Numérique | Chapitre 7 : La famille 8051 24


gain A (NMOS) et d’une rétroaction de gain B
(quartz, Rf et capas), dans lequel AB est un réel
positif supérieur à 1. Ainsi, toute perturbation à
l’entrée y revient en phase et amplifiée par AB (2
pôles complexe conjugués). Ensuite, il faut qu’une
non-linéarité agisse sur le produit AB pour le
ramener à 1 et l’y maintenir (2 pôles imaginaires
purs).
Coupons par la pensée la rétroaction devant la
grille du NMOS. Le gain à vide de ce dernier est Av =
-gmR0, mais en charge, le gain doit prendre en
compte l’impédance ZL, ce qui donne un gain A plus
faible. Les impédances Zf et Zi définissent le gain B.
La base de l’oscillation est le quartz, dont
l’impédance varie fortement avec la fréquence (ce
qui influence A et B) étant donné qu’il s’agit d’un matériau piézoélectrique (fournit
une tension électrique si on applique une tension mécanique, ou inversement)
qu’on a entouré de deux plaques parallèles, ce qui est équivalent à un circuit série
RLC en parallèle avec une capa de monture (cf. ci-contre). On obtient deux
fréquences de résonance très proches : la résonance série (réactance nulle et
résistance Rx très faible) et la résonance parallèle (réactance nulle et résistance très
élevée). L’intérêt du quartz est une bonne stabilité de ces
fréquences avec la température et un caractère très aigu de la
résonance (un exemple ci-contre est donné pour un quartz de 4,6
MHz, dont on observe une faible bande passante, ce qui montre
bien que l’oscillation ne peut se produire qu’au voisinage de la
résonance). Le transistor va déphaser le signal de 180°, et les capa
ne vont le redresser que d’un peu moins de 180°, et il faudra donc

utiliser l’oscillateur en réactance positive, pour remettre le signal en


phase.
Notons que l’oscillation peut être perturbée par les condensateurs
parasites qui font partie intégrante du processus d’oscillation (mais
sont en général mal connus), auxquels on ajoute les variations des
caractéristiques du transistor (avec V et T). On définit le coefficient de
qualité comme le rapport entre l’énergie fournie par le transistor à
chaque période et l’énergie stockée dans les réactances du circuit
oscillant (vu le coefficient très élevé du quartz, le temps de démarrage peut être de plusieurs
dizaines de ms, chaque période n’apportant qu’une fraction de l’énergie réactive).
En pratique, le câblage doit être soigné et les inductances de connexion parasites doivent être
limitées (rapprocher le quartz du CPU, prévoir une piste de masse proche du quartz pour y
connecter C 1 et C2). Aussi, les couplages capacitifs entre pistes voisines peuvent être
polluants, et on évitera donc de voisiner trop longtemps deux postes d’horloges différentes,
une piste d’oscillateur et une autre piste (avec un signal à
flanc raides), ou une piste d’horloge et une autre piste (avec
signal analogique de faible amplitude).

Electronique Numérique | Chapitre 7 : La famille 8051 25


2. Initialisation d’un µP ou RESET

...

2.1. ...

...

2.2. ...

...

3. Mémoire programme

...

3.1. Aspects qualitatifs

...

3.2. Aspects temporels

...

3.3. Conclusion

...

Electronique Numérique | Chapitre 7 : La famille 8051 26