29
Electronique Numérique Résumé du cours Par Jonathan Verlant-Chenet Version 1.3 (25 octobre 2006)

Electronique Numérique (Résumé v1.3)

  • Upload
    tsolhi

  • View
    824

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Electronique Numérique (Résumé v1.3)

Electronique Numérique

Résumé du cours

Par Jonathan Verlant-Chenet Version 1.3 (25 octobre 2006)

Page 2: Electronique Numérique (Résumé v1.3)

Table des matières

C H A P I T R E 1 . CARACTERISATION DES CIRCUITS LOGIQUES .. . . . . . . . . . . . . . . . . . . . 1

1. RAPPELS SUR LES IMPULSIONS LOGIQUES......................................................................... 1 2. CRITERES 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

C H A P I T R E 2 . FAMILLES LOGIQUES BIPOLAIRES .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1. DIODE LOGIC (DL) ................................................................................................. 4 2. DIODE & TRANSISTOR LOGIC (DTL)............................................................................. 4

2.1. Porte NOT ............................................................................................................ 4 2.2. Porte NAND .......................................................................................................... 4 2.3. Temps de propagation.......................................................................................... 5

3. TRANSISTOR & TRANSISTOR LOGIC (TTL) ...................................................................... 6 3.1. Porte NAND .......................................................................................................... 6 3.2. Porte inverseuse ................................................................................................... 6 3.3. TTL Open Collector............................................................................................... 7 3.4. Variantes.............................................................................................................. 8

4. EMITTER COUPLED LOGIC (ECL) ................................................................................. 8

C H A P I T R E 3 . FAMILLES LOGIQUES MOS .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1. LE TRANSISTOR MOS .............................................................................................. 9 1.1. Structure interne .................................................................................................. 9 1.2. Principe de fonctionnement .................................................................................. 9

2. CIRCUITS SIMPLES NMOS ET PMOS (RTL)................................................................... 10 3. CIRCUITS 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. CIRCUITS 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. PRECAUTIONS ..................................................................................................... 14

Page 3: Electronique Numérique (Résumé v1.3)

C H A P I T R E 4 . MULTIVIBRATEURS.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1. BISTABLES.......................................................................................................... 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. MONOSTABLES .................................................................................................... 19 2.1. Rappels sur le RC ............................................................................................... 19 2.2. Monostables réalisés à l’aide de portes............................................................... 20

3. ASTABLES .......................................................................................................... 20 3.1. A deux constantes de temps............................................................................... 20 3.2. A une constante de temps .................................................................................. 21 3.3. Le 555................................................................................................................ 21

C H A P I T R E 5 . CIRCUITS DE SELECTION.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1. MULTIPLEXEURS ................................................................................................... 22 2. DEMULTIPLEXEURS ................................................................................................ 22 3. DECODEURS ....................................................................................................... 22

C H A P I T R E 6 . INTRODUCTION AUX µP.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1. PRELIMINAIRES .................................................................................................... 23 2. CATEGORIES DE MICROPROCESSEURS........................................................................... 23

C H A P I T R E 7 . LA FAMILLE 8051 .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

1. INTRODUCTION.................................................................................................... 24 1.1. Schéma bloc simplifié ......................................................................................... 24 1.2. Alimentation ...................................................................................................... 24 1.3. Horloge .............................................................................................................. 24

2. INITIALISATION D’UN µP OU RESET ........................................................................... 26 2.1. ... ....................................................................................................................... 26 2.2. ... ....................................................................................................................... 26

3. MEMOIRE PROGRAMME ........................................................................................... 26 3.1. Aspects qualitatifs.............................................................................................. 26 3.2. Aspects temporels .............................................................................................. 26 3.3. Conclusion ......................................................................................................... 26

Page 4: Electronique Numérique (Résumé v1.3)

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

1

C H A P I T R E 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 tr 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 : VHI pour l’état HI (5V) et VLO 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

Page 5: Electronique Numérique (Résumé v1.3)

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

2

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 et VoL), qui doivent être tels que oH iH

oL iL

V VV V

>⎧⎪⎨

<⎪⎩

(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 (R0 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 (IoH) lié à une tension acceptable (VoH). Si chaque circuit de sortie consomme IiH, alors la sortance statique est

définie par : oHHI

iH

IFI

= (nombre de sorties connectables

à la sortie en HI). Le même raisonnement s’applique pour le niveau LO, de sorte qu’on ait VoL, 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

même : oLLO

iL

IFI

= , et la sortance utile est la valeur minimale entre FLO et FHI.

• 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

qui va déterminer la sortance. En effet, selon dvi Cdt

= , si un transistor délivre un courant i,

augmenter C (parasite) diminue la variation de tension, et allonge la transition.

Page 6: Electronique Numérique (Résumé v1.3)

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

3

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 :

[ ]p avM t P ns.mW pJ= =

Page 7: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires

4

C H A P I T R E 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 V0 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.

Page 8: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires

5

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 T1 doit

véhiculer son propre courant de saturation CC CE,SAT

C

V VR−

. A ce

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

passantes : CC CE,SAT

B

V V Vn

R

∗− − .

On voit sur la droite de charge page précédente que, pour être en saturation, il faut que B Ci iβ > , c’est-à-dire

1

CC

CC CE,SAT

CC CE,SAT CC CE,SATCC

B C Bprovenant des sor tancesprovenant de T

V VCC CC CC B

V VB C B B C B C

V V V V VV 2V nR R R

V V V R1 nn nR R R R R R R

∗∗ − − −−β > +

β⇒ β > + ⇒ > + ⇒ < β −

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 C CBR Cτ = β (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 tsat. Si on veut avoir un niveau logique VoL meilleur, il faut donc un temps de propagation moins bon.

Page 9: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires

6

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 AK EB B E CC B B CCtrès faible

courant de fuite

V V V V V R i V 0⎛ ⎞⎜ ⎟

= = − = − − <⎜ ⎟⎜ ⎟⎝ ⎠

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 T2, 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 T5, é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 T4). La résistance au collecteur de T4 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 iLV 0,8V= , on peut garantir

oHV 2,4V= , et si on pose iHV 2V= , on peut garantir oLV 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 (iCCL = 1mA) avec une alimentation VCC=5V, c’est-à-dire de l’ordre de 10mW. La puissance dynamique est négligeable.

Page 10: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires

7

Il existe une légère dissymétrie entre les deux temps de transition. Lors des transitoires, on doit tenir compte de CL (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

CC,max oL CC,max oLoL 2 iL pu

pu

???

oL 2 iLentréesaval

V V V VI N I R

R I N I⇒

− −≤ + ≥

• Si maintenant, toutes les sorties sont HI (cas le plus favorable), alors Rpu voit comme courant la somme des courants provenant des N1 et des N2. La chute de potentiel aux bornes de Rpu doit être telle que

( ) ( ) ( )oH CC,max pu 1OH 2 iH oH CC,max pu 1OH 2 iH CC,max oH pu 1 OH 2 iH

chute de potentiel

CC,max oHpu

1OH 2 iH

V V R NI N I V V R NI N I V V R NI N I

V VR

NI N I

≤ − + ⇒ − ≤ − + ⇒ − ≥ +

−⇒ ≥

+

Au final, on a donc : CC,max oL CC,max oHpu

oL 2 iL 1OH 2 iH

V V V VR

I N I NI N I− −

≤ ≤− +

. Si on prend la valeur inférieure, la

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

Page 11: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 2 : Familles logiques bipolaires

8

3.4. Variantes

• Si on veut convertir un NAND en inverseur, on voit dans la table de vérités ci-contre, que laisser une entrée à 1 (HI) suffirait. Pour ce faire, on pourrait laisser une entrée « en l’air », mais elle serait trop sensible au bruit. On pourrait relier l’entrée inutilisée à l’autre entrée, mais on augmenterait CL. On va donc relier l’entrée inutilisée à VCC. Maintenant, si on veut transformer un NOR en inverseur, c’est en LO qu’il faut laisser une entrée : on la relie donc à la masse via une basse impédance.

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 T6 (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 (VCE,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.

X Y NAND 0 0 1 0 1 1 1 0 1 1 1 0

X Y NOR 0 0 1 0 1 0 1 0 0 1 1 0

Page 12: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 3 : Familles logiques MOS

9

C H A P I T R E 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 (SiO2) 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é).

Page 13: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 3 : Familles logiques MOS

10

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 VoL 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 M1), 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 RD é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.

Page 14: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 3 : Familles logiques MOS

11

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 VDD dans une large gamme, contrairement aux TTL.

Page 15: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 3 : Familles logiques MOS

12

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 Vth, 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 à VDD/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 :

DD TR L

2 2HI LO L DD L DDPULSE LO HI HI LO L DD TR DD TRLO HI

2 V Q LO HI :perdu LO HI : stocké dans Cdans le PMOS HI LO :perdu dans NMOS

C V C VW W W W V I dt V I dt2 2− −

= − −−

= + + = + + +∫ ∫

( )2 2PULSE DD TR L DD i L DDW 2V Q C V C C V⇒ = + = + , avec TR

iDD

2QCV

= considéré

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.

Page 16: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 3 : Familles logiques MOS

13

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 tp inversement proportionnel à VDD. Remarquons aussi que l’abaissement de VDS permet de faire des transistors plus petits (donc de CL 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 CL). 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.

Page 17: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 3 : Familles logiques MOS

14

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 Rpu 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

pu inR Cτ = . 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.

Page 18: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 3 : Familles logiques MOS

15

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

Page 19: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 4 : Multivibrateurs

16

C H A P I T R E 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).

Page 20: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 4 : Multivibrateurs

17

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

Page 21: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 4 : Multivibrateurs

18

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 Q0 à LO. Ce flanc descendant de Q0 fait passer Q1 à 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 Q2 à changer d’état par la rétroaction de la sortie Q2 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

Page 22: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 4 : Multivibrateurs

19

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 : Qn(tk) = Qn-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 4tp 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 Tm 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.

Page 23: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 4 : Multivibrateurs

20

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, VA 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 Tm = 0,7RC. Remarquons que la longueur de l’impulsion d’entrée Ti doit être supérieure à Tm, 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 Ti < 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 TmL. La période est donc l’addition de ces deux temps, et on définit le rapport cyclique comme étant TmH/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

Page 24: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 4 : Multivibrateurs

21

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 VA 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 à R2C2, 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 C2), 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 D1L, 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 N2 : 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.

Page 25: Electronique Numérique (Résumé v1.3)

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

22

C H A P I T R E 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 tp 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.

Page 26: Electronique Numérique (Résumé v1.3)

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

23

C H A P I T R E 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 Na 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).

Page 27: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 7 : La famille 8051

24

C H A P I T R E 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

Page 28: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 7 : La famille 8051

25

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

Page 29: Electronique Numérique (Résumé v1.3)

Electronique Numérique | Chapitre 7 : La famille 8051

26

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

...