Professional Documents
Culture Documents
Chapitre 1
Electronique Numrique & Logique : Introduction
Electronique niveaux discrets : 0 et 1 (0V et 5V)
L'lectronique numrique et logique manipule les mmes signaux que l'lectronique
analogique (tensions, courants), mais ces signaux sont discrets. Par signaux discrets,
on entend des signaux qui ne peuvent prendre que des valeurs disjointes clairement
spares, par opposition aux signaux continus qui peuvent prendre des valeurs
quelconques arbitrairement voisines les unes des autres, un peu comme les entiers
sont discrets par opposition aux nombres rels qui sont continus.
A priori on s'intresse l'lectronique binaire : les signaux ne peuvent prendre que
deux valeurs, 0 ou 1. Dans les circuits physiques, ces deux valeurs sont reprsentes
par des niveaux de tension bien spars, par exemple 0V et 5V. Le systme binaire
prsente de nombreux avantages. Les 4 oprations (+, -, x, /) y sont simples, on peut
cabler un systme binaire l'aide de simples relais ouverts ou ferms (c'est
d'ailleurs sous cette forme mcanique que les premiers ordinateurs ont t raliss),
et l'existence de 2 niveaux seulement minimise le nombre de "frontires", donc le
nombre d'erreurs possibles, ce qui est impratif pour pouvoir disposer de
calculateurs permettant de raliser des calculs arbitrairement longs.
Les circuits lectroniques numriques et logiques utilisent des composants identiques
ceux de llectronique analogique, mais en rgime non linaire (commutation).
Ces composants sont des transistors (d'o l'appellation parfois rencontre de "Total
Transistor Logic") et permettent de raliser des interrupteurs, des diodes, des
rsistances, etc.
L'lments binaire de base s'appelle le Binary Digit (BIT) ; il peut prendre deux
valeurs : 0 ou 1. Il peut tre interprt en tant que nombre binaire (crit en base 2,
contenant uniquement des 0 et des 1), et cela donne lieu l'application numrique de
cette lectronique (Exemple : fonction addition).
Il peut tre interprt en tant qu'lment de choix : soit lun (0) soit lautre (1), et
cela donne lieu l'application logique de cette lectronique. Les circuits de base
(comportant un nombre rduit de transistors) de l'lectronique numrique et
logique ralisent des oprations logiques simples : ET (AND), OU (OR), NON
(NOT), XOR, etc. A partir de ces briques de base de la logique, on peut ensuite
raliser toutes les fonctions logiques complexes. Ces oprations de base sont dfinies
par leur table de vrit (un peu comme les oprations de calcul de base sont dfinies
par les tables d'addition et de multiplication). Pour revenir l'exemple de
l'addition, il n'existe pas de circuit de base qui ralise l'addition mais on peut crire
l'opration "addition de deux bits" en fonction d'oprations logiques simples. On
crit en fait la table de vrit de l'addition. On aboutit ainsi combiner les 2
approches et considrer une Electronique Numrique & Logique, ou digitale.
"a bit", en anglais veut dire "un peu", et il faut effectivement de nombreux bits pour
coder la moindre information. On manipule alors des "mots" binaires de plusieurs
bits (8, 16, 32, 64, etc.).
1
Electronique digitale
Electronique Numrique
L'lectronique numrique traite des nombres binaires (en base 2 : 1100011 =
20+21+...+25+26=99). Si A1B1C1D1 et A2B2C2D2 reprsentent des nombres (de 4
bits : de 0 15), on peut calculer leur somme, leur diffrence, leur produit, etc. Les
calculatrices, les ordinateurs, etc., sont bass sur l'utilisation de ces oprations.
Exemples de circuits numriques simples : le 74LS83 permet de raliser l'addition
de 2 nombres de 4 bits, le 74LS85 permet de comparer 2 nombres de 4 bits, (>, <,
=), etc.
Electronique Logique
L'information binaire sert reprsenter des Grandeurs binaires : Vrai ou Faux,
Blanc ou Noir, Oui ou Non.... 1 ou 0. Cela permet par exemple le contrle de
processus partir de capteurs qui donnent des informations sur l'tat du systme.
Un exemple (trs) simple : un plafonnier de voiture s'allume en fonction de
l'information fournie par deux variables D et G qui reprsentent ltat d'ouverture
ou de fermeture des portes. Si P est la variable qui dtermine l'allumage de la lampe
au plafond, l'quation logique donnant P est :
P = D ou G. A partir de cette quation, on reprsente le schma symbolique de la
fonction "plafonnier", puis son schma lectronique. Quelques exemples de
fonctions logiques simples : botier de 4 portes ET 2 entres : 74LS08 ; botier de
4 portes OU 2 entres : 74LS32, etc.
De lAnalogique au Numrique/Logique
Le monde analogique et le monde digital
Les signaux du monde "rel" sont le plus souvent analogiques, c'est dire qu'ils
peuvent prendre n'importe quelle valeur (ce n'est plus vrai au niveau microscopique
o les effets quantiques se font sentir). On dit aussi qu'ils sont continus, et en
l'absence de bruit, entre 2 valeurs, on peut toujours en intercaler une troisime. A
l'oppos, le monde digital manipule des signaux qui ne peuvent pas prendre
n'importe quelle valeur, un peu comme l'ensemble des nombres entiers o l'on ne
trouve pas de "signal" entre 2 et 3.
Ce qui peut sembler une limitation ("blocage" du signal digital) apporte aussi un
avantage norme pour la transmission et le traitement des donnes : si le signal ne
peut pas prendre toutes les valeurs possibles mais seulement certaines bien dfinies
au dpart, alors on pourra plus facilement savoir quand une erreur est intervenue, si
le signal ne "tombe" pas dans les bornes autorises. Dans la srie tl culte "Le
prisonnier", le hros se rebelle souvent en criant "je ne suis pas un numro, je suis
un homme libre !" ; les signaux digitaux sont souvent comme des numros, et n'ont
pas la libert de varier, contrairement aux signaux analogiques.
Electronique digitale
En fait, si on y regarde de plus prs, la "libert" des signaux analogiques est une
illusion. La prsence de bruit superpos au signal empche l'utilisateur de
dterminer si le signal qu'il utilise a telle valeur prcise. En lectronique comme en
physique, on dtermine une mesure avec une certaine incertitude. Il est alors
illusoire de chercher a distinguer deux valeurs qui ne sont pas suffisamment
spares l'une de l'autre car le bruit les "mlange", de mme qu'il est impossible de
chercher ce qu'il y a entre 2 et 3 dans le monde des entiers. Ce flou omniprsent
dans le monde analogique permet d'tablir un "pont" entre l'analogique et le
numrique, et de "modliser" le monde analogique par sa reprsentation numrique.
De lAnalogique au Digital : les 2 critres
Le traitement des signaux digitaux se fera toujours sur des signaux en tension. Si le
signal initial n'est pas une tension, on utilise un capteur qui transforme de manire
continue le signal mesur (pression, temprature, vitesse, etc.) en tension. Le
passage d'une tension analogique (continue) sa version digitalise (numrise) se
fait par l'intermdiaire d'un circuit appel Convertisseur Analogique Digital (ADC
en anglais). La ralisation de cette opration se fait en deux temps : chantillonnage
puis numrisation, et doit respecter deux critres.
Critre temporel - Cadence d'chantillonnage - Thorme de Shannon
Le signal numrique doit tre estim suffisamment souvent : si la tension d'origine
varie entre deux chantillons, on perd de l'information. Inversement, si la tension
d'origine ne varie pas, il est inutile de prendre de nouveaux chantillons. En se
plaant dans l'option la plus simple o on ne fait pas varier la cadence
d'chantillonnage, on voit qu'on est limit par les parties du signal qui varient le
plus vite ( plus haute frquence) et qu'il faut choisir une cadence d'chantillonnage
qui permette de "passer" les parties HF du signal. On s'appuie pour cela sur un
thorme mathmatique qui stipule qu'on ne perd pas d'information en remplaant
une fonction continue par une srie d'chantillons rgulirement espacs d'un
intervalle E o E<1/2.Fmax, Fmax tant la frquence maximum dans le spectre de la
fonction.
Critre en tension - Dynamique - Ajustement du rapport Signal/Bruit
On suppose que l'chantillonnage de la tension initiale est ralise une cadence
suffisante, chacun des chantillons permet de garder la tension une valeur fixe
pendant que l'ADC en fournit une reprsentation numrique. Le passage de la
tension analogique sa reprsentation digitale se fera sans perte d'information si le
niveau minimum entre deux valeurs significatives est le mme des deux cots du
circuit. Du cot digital, il s'agit du LSB, de l'cart entre un nombre et son plus
proche voisin ; du cot analogique, il s'agit de la valeur rms du bruit superpos au
signal. De mme qu'il n'y a pas d'information entre deux nombres entiers, il n'y a
pas d'information entre deux valeurs de tension analogique qui ne sont pas espaces
d'une quantit suprieure au bruit (on ne peut pas les distinguer). Si V est
l'amplitude du signal analogique d'entre, avec un bruit , et Nmax le nombre
3
Electronique digitale
Electronique digitale
Chapitre 2
Circuits logiques - Caractristiques lectriques
Constitution des circuits logiques - Commutation
Les circuits numriques et logiques vhiculent des signaux lectriques binaires qui
ne peuvent prendre que 2 tats qu'on appelle tats Haut (H) et Bas (L). Ces tats sont
cods par des niveaux de tension distincts ; en logique dite positive, l'tat Haut (H)
correspond au niveau de tension le plus lev : 5 V, et l'tat Bas (L) au niveau de
tension le plus bas : 0 V.
NB: en logique ngative, c'est l'inverse (tat H = 0 V / tat L = 5 V).
Note: les contraintes de miniaturisation et de consommation des circuits numriques
actuels poussent utiliser des niveaux de tension de moins en moins levs (3.3 V,
et encore moins, jusqu' 1.8V), mais sauf exception, on continuera travailler ici en
0/5 V. De toute faon, tant qu'on garde la notation H/L, on effectue les oprations
numriques et logiques sans se proccuper des niveaux de tension utiliss.
Les circuits logiques sont constitus de transistors, qui fonctionnent en
commutation. L'lectronique logique utilise exclusivement les deux tats que
l'lectronique analogique d'efforce d'viter : le blocage et la saturation. Les circuits
logiques sont en fait constitus d'interrupteurs.
Plusieurs familles technologiques sont disponibles. A base de transistors bipolaires,
qui fonctionnent en rgime satur/bloqu, on est dans le domaine de la TTL (Total
Transistor Logic). A base de transistors effet de champ MOS-n et MOS-p, on
utilise des montages complmentaires n-p, et on est dans le domaine de la logique
CMOS.
Le circuit logique le plus simple que l'on puisse concevoir est le circuit inverseur ;
on peut le raliser avec un seul transistor. On peut le cabler trs simplement sur une
plaquette d'essai. Quand la tension d'entre vaut 5V ("1" logique) la tension de
sortie vaut 0V ("0" logique). En fait, le plus simple des circuits logiques existant
dans le commerce comporte dj un nombre respectable de transistors. La porte
logique universelle est la porte NAND car elle permet de raliser toutes les autres
fonctions logiques.
Transmission du signal digital
Marge de bruit statique
Un des intrt de l'utilisation du signal binaire consiste en la grande diffrence de
tension existant entre le niveau bas et le niveau haut. Le signal est alors protg
contre la plupart des parasites. De plus, pour que la transmission du signal digital
soit toujours interprte sans erreur, il existe une convention qui tablit les marges
de valeur des tensions d'entre et de sortie affectes au niveaux L et H. Par exemple,
en logique TTL (0-5V), le constructeur d'un circuit logique garantit qu'en sortie de
ses circuits, un niveau L sera cod par une tension VOL comprise entre 0 et 0.4V ; en
5
Electronique digitale
mme temps, il est garanti que le signal sera interprt en entre du circuit suivant
comme un L si la tension correspondante VIL est situe entre -0.4 et 0.8V. La marge
de bruit statique correspondante est donc de 0.4V. Le mme genre de convention est
adopt pour le niveau H : en sortie, la tension VOH est garantie d'tre comprise entre
2.4V et 5V, alors qu'un signal compris entre 2 et 5.5V sera interprt en entre
(VIH) comme un H. La marge de bruit est galement de 0.4V.
Les conventions diffrent selon la technologie du circuit (TTL ou CMOS) mais
l'ide reste la mme : la gamme des valeur de tensions affecte un niveau en sortie
est incluse dans la gamme des valeurs de tensions interprtes en entre du circuit
suivant pour ce niveau.
Marge de bruit dynamique
Il peut arriver que le signal prsente des parasites d'amplitude suprieure la marge
de bruit de 0.4V. Cependant, si ce parasite dure suffisamment peu de temps, il se
peut que le circuit n'ait pas le temps de ragir ( cause de capacits parasites
essentiellement). On obtient alors ce qu'on nomme une marge de bruit dynamique
qui peut tre suprieure la marge de bruit statique.
Caractristiques lectriques des circuits logiques
Les circuits logiques sont trop souvent considrs comme des "boites noires" sans
prendre en compte leurs caractristiques lectriques. De nombreux problmes
peuvent tre vits si on respecte ces caractristiques.
La sortie d'un circuit logique TTL est quasiment toujours constitue d'un tage dit
Totem-pole, constitu de deux transistors en montage push-pull. Au niveau H, la
sortie dbite un courant IOH dans l'entre du circuit suivant qui doit le consommer
(IIH). A l'tat bas, c'est l'inverse : la sortie du circuit prcdent consomme un
courant IOL qui doit tre fourni par le circuit suivant (IIL).
Une consquence de la structure compare des tages d'entre et de sortie des
circuits logique est qu'une entre non connecte (en l'air) est interprte comme
tant l'tat H. Il est donc vivement conseill de toujours cabler explicitement les
entres non utilises 5V (de prfrence via une rsistance de 1k) ou la masse
selon le niveau logique que l'on veut y fixer. Une entre en l'air sera a priori
interprte H, mais elle sera galement trs sensible aux parasites, surtout dans les
circuits squentiels o intervient une horloge, dans les compteurs, processeurs, etc.
Dans les familles de circuits utilisant la technologie CMOS, les courants d'entre
sont diffrents, du fait de la trs grande impdance des grilles de transistor MOS.
La fonction de transfert d'un circuit logique donne la caractristique US(UE) de la
porte concerne. A partir de 0V, si UE augmente, jusqu' 0.8V il ne se passe rien
(l'entre suivante "voit" un tat L), puis survient une zone instable o la sortie est
indtermine. Cette zone est "interdite" car la sortie peut alors prsenter des
oscillations (passage 0/1/0/1...). Enfin, lorsque le signal UE dpasse 2V, l'tage
suivant "bascule" et "voit" un niveau H. Il est donc dangereux en logique d'utiliser
des signaux qui varient trop lentement en fonction du temps. Pour se protger
contre cet effet, on utilise des circuits particuliers appels trigger de Schmidt qui
possdent un effet d'hystrsis et ne basculent pas sur le mme niveau selon que le
signal d'entre augmente ou diminue.
6
Electronique digitale
Lorsqu'une les sorties de deux circuits logiques sont relies entre elles, si elles ne
prennent pas les mmes niveaux tout instant, il peut arriver qu'un niveau H (5V)
soit reli un niveau L (0V), crant un court-circuit. Un court-circuit est tolr
mais pendant un temps rduit (une seule sortie la fois et pendant moins d'une
seconde). La consquence de court-circuits trop frquents dans un montage mal
conu par exemple, sera de faire vieillir prmaturment le montage, voire
d'entraner sa destruction !
La consommation d'un circuit va dterminer le dgagement de chaleur en
fonctionnement. Elle s'obtient par le produit de la tension d'alimentation (toujours
la mme, fixe 5V, 3.3V, etc.) par le courant d'alimentation ICC. Elle varie selon
la famille technologique du circuit et est le plus souvent de l'ordre de quelque
dizaines de mW par circuit. La consommation d'un circuit logique n'est pas la
mme dans l'tat H et dans l'tat L. Elle peut atteindre et dpasser le Watt pour des
circuits spciaux comme les microprocesseurs. La consommation TTL est
indpendante de la frquence de fonctionnement jusqu' un certain point o les
capacits parasites se font sentir (1/C devient trop faible). Par contre dans les
circuits CMOS, la consommation dpend trs vite de la frquence car cette famille
de circuits comporte des capacits parasites omniprsentes (l'entre d'un transistor
MOS, sur une grille isole, est une capacit !).
Lorsqu'un circuit logique commute, sa sortie change brusquement d'tat, et peut
tre amene consommer brutalement un courant important. Pour viter que cet
appel de courant fasse chuter la tension d'alimentation au niveau du circuit, il est
recommand de monter en parallle des entres d'alimentation 0/5V un
condensateur de dcouplage qui fournira le courant en cas de transition haute
frquence ; ce condensateur joue le rle de filtre passe bas sur l'entre
d'alimentation.
Lorsqu'on veut protger un point d'un montage (entre ou sortie) contre des valeurs
de tensions susceptibles d'endommager des circuits, on peut installer en parallle des
diodes de protection au 5V ou la masse.
Entrance et Sortance (fan in / fan out)
Lorsqu'on branche plusieurs circuits en sortie d'un mme premier, la loi de
conservation du courant entrane des rgles sur le nombre maximum de circuits
qu'on peut brancher en parallle en sortie d'un premier. On dfinit ainsi la sortance
l'tat H : IOH/IIH, l'tat bas : IIL/IOL. Pour les circuits TTL, elle est typiquement de
l'ordre de 10. Par exemple, pour le circuit 74LS00 : IOH = -0.4 mA / IIH = 20 A
-> NH = 80. IOL = 8 mA / IIL = -0.4 mA -> NL = 20. La sortance effective du
LS00 est de 20
Nomenclature des circuits logiques
Selon la technologie utilise dans la ralisation du circuit, on le repre par une srie
de lettres. De mme, dans une famille donne, les circuits peuvent possder des
caractristiques diffrentes (optimisation en vitesse, en faible consommation, etc.).
Famille technologique
TTL
Type
F, LS, ALS
7
Electronique digitale
ECL
CMOS
Dans une famille et un type donn, les fonctions logiques ralises sont ensuite
repres par des numros (00, 01, 02, etc.)
Avant la mention du type dans la famille, on trouve en TTL un numro
supplmentaire qui indique si le circuit rpond aux normes civiles (74) ou militaires
(54).
On peut galement trouver une lettre supplmentaire qui indique le type de boitier
du circuit : boitier plastique (N) ou cramique (J, qui possde des proprits
thermiques diffrentes), boitier miniaturis (D). Au total, on pourra trouver une
rfrence telle que : SN 74 ALS 00A N
SN : Famille standard
74 : circuit civil (0 +70C) / 54 : gamme militaire (-55 +125C)
ALS : sous famille de TTL
00 : Numro dimmatriculation de la fonction (voir rpertoire)
00-A : Advanced = plus rapide que le ALS 00 normal
N : type de boitier (ici : plastique) ; existe aussi en cramique (J), etc.
On distingue galement les circuits par leur densit d'intgration, c'est dire le
nombre de transistor que l'on peut implanter par mm2 de silicium : SSI : quelques
portes / circuit ; MSI : 10 - 100 portes / boitier ; LSI : 100 - 1000 portes / boitier ;
VLSI : > 1000 portes / boitier ; Mmoires, processeurs : > 106 cellules / boitier
Paramtres temporels
La rapidit d'un circuit est dtermine par son temps de transfert. Ce temps peut
tre diffrent selon que la commutation a lieu de H vers L (tPHL) ou de L vers H
(tPLH). La relation consommation/rapidit dtermine l'usage du circuit ; le circuit
idal bascule vite sans consommer de courant. On peut ainsi comparer les
caractristiques des diffrentes familles de circuits.
Le temps de transfert de toute une chaine de circuits s'obtient par la somme de tous
les temps de transferts des circuits de la chaine. lorsqu'on a affaire deux chaines
fonctionnant en parallle, il est important d'tudier les temps de propagation
respectifs des deux chaines pour reprer d'ventuels alas de fonctionnement.
Lecture d'un schma de circuit logique
La documentation de chaque circuit logique comporte un certain nombre
d'informations standardises qu'il est essentiel de savoir rapidement dcoder. On
trouve notamment le schma de cablage du circuit, avec la liste des connexions
indiquant les entres et les sorties, et la sortance correspondante. Les entres/sorties
indiques de manire inverse (/E ou /Z) sont actives l'tat bas (L). L'action des
entres et les valeurs des sorties correspondantes est indique dans une table de
vrit. Un schma logique base de portes lmentaires complte cette information
et permet de comprendre comment fonctionne le circuit (mme si le schma rel du
circuit est plus complexe). Enfin, la documentation donne les caractristiques
lectriques du circuit qui sont essentielles pour pouvoir raliser le montage physique
sur table.
8
Electronique digitale
Electronique digitale
Chapitre 3
Collecteur ouvert - Haute impdance - Bus de donnes Etage de sortie collecteur ouvert
Schma lectrique de sortie de porte TTL
Quelle que soit la porte logique considre (ET, OU, NAND, etc), le schma
lectrique de l'tage de sortie est toujours le mme : un tage "totem-pole"
comportant essentiellement deux transistors qui ne sont jamais passant en mme
temps. Il existe un autre type de montage de l'tage de sortie o seul le transistor
cabl la masse (transistor "du bas") est prsent. Le signal de sortie est prendre
sur le collecteur de ce transistor, d'o l'appellation de collecteur ouvert pour un tel
montage. Ce transistor se comporte comme un interrupteur la masse, ouvert ou
passant, correspondant respectivement aux tats de sortie H ou L, dans le montage
totem-pole. Pour retrouver un signal logique 5V/0V en sortie du montage
collecteur ouvert, il faut rajouter une rsistance de tirage 5V. Il existe quelques
circuits logiques possdant une version avec sortie collecteur ouvert (CO), la
fonction restant la mme mais la sortie est modifie. Ces versions CO sont repres
par un astrisque '*'. Ainsi le circuit -00 est un boitier de portes NAND, et le
circuit -01* est la version CO du mme boitier.
Applications "analogiques" du montage collecteur ouvert
Il est frquent de vouloir visualiser le niveau de signal logique en un point du
circuit par l'utilisation d'une diode lectroluminescente (LED). Par contre il est
dconseill de brancher une telle diode directement en sortie d'une porte logique,
surtout si celle-ci attaque une autre porte. Le niveau de courant qui passe dans une
LED est trs diffrent de celui pour lequel les portes logiques sont prvus, et le
fonctionnement du montage pourrait s'en trouver perturb. Une solution peut tre
de placer un montage collecteur ouvert pour piloter la LED. On placera une
rsistance de protection d'environ 300 en srie avec la diode pour la protger. Il
existe des boitiers contenant 6 inverseurs avec sortie en collecteur ouvert (74LS05)
qui permettent de piloter plusieurs LED en mme temps (pour visualiser un mot de
4 bits, par exemple). Cependant, on peut aussi bien utiliser un simple transistor npn
2N2222, si on doit piloter une seule charge.
Le circuit collecteur ouvert peut tre utilis pour raliser une conversion de
niveau de tension affecte au niveau H. Par exemple, pour passer d'un circuit TTL
(0-5V) un circuit CMOS (0-12V), on utilise la commande du transistor de sortie
du montage CO pour ouvrir ou fermer un circuit la masse et faire passer le point
de collecteur de 0 (+/- la tension rsiduelle de saturation) 12V.
Si la base du transistor de sortie est commande par des signaux carrs d'amplitude
5V, on retrouvera sur le collecteur des signaux carrs de mme priode mais
d'amplitude diffrente, selon la tension d'alimentation en sortie. Les signaux carrs
10
Electronique digitale
(p)
+ 5V
MOS 1
S
(n)
MOS 2
11
Electronique digitale
appelle un tel tat Haute impdance car les deux transistors du totem prsentent une
trs haute impdance entre la sortie et la masse et entre la sortie et le point 5V. Ce
troisime tat est not 'Z'.
Le blocage simultan des deux transistors de sortie est command par une entre
supplmentaire souvent note /E ou /OE (Output Enable), qu'on reprsente par une
connexion supplmentaire sur le ct des triangles figurant les buffers (voir figure
ci-dessous).
(p)
Gp
+ 5V
OE
MOS 1
S =X
(n)
Gn
MOS 2
Electronique digitale
13
Electronique digitale
Chapitre 4
Fonctions logiques - Oprations - Circuits associs
Variables et fonctions logiques
Le signal manipul par l'lectronique digitale ne prend que 2 valeurs que l'on va
interprter dans ce chapitre du point de vue logique (V/F, O/N, etc.). Du point de
vue lectrique, il s'agit de valeurs de tensions (0/5 V), et du point de vue
reprsentation, on adoptera la notation 0/1 par souci de simplicit. Dans un circuit
logique, l'information consiste en signaux qu'on appelle des variables logiques,
utilises en entre de fonctions logiques varies pour obtenir des rsultats. L'action
d'une fonction logique est dfinie par sa table de vrit, qui donne le rsultat en
sortie pour toutes les combinaisons possibles des variables d'entre. Le terme
"fonction logique" ne doit pas prter confusion, ni faire croire qu'on ne traitera
dans ce chapitre aucun problme li au numrique. Ainsi l'addition de deux bits peut
tre envisag du point de vue logique, via sa table de vrit.
La logique combinatoire concerne des oprations logiques o la sortie dpend
directement de l'tat des entres. Une table de vrit suffit dterminer le
fonctionnement d'une fonction logique combinatoire.
La logique squentielle concerne des oprations logiques o la sortie dpend non
seulement de l'tat des entres un instant donn mais aussi de l'histoire de ces
entres, c'est dire de la squence des vnements qui se sont drouls l'entre de
la fonction logique considre. C'est la logique squentielle qui prvaut dans le
fonctionnement des microprocesseurs, par exemple.
Fonctions logiques combinatoires lmentaires - Circuits associs
Inverseur
Entre
0
1
ET logique (AND)
A
B
AB
0
0
0
0
1
0
1
0
0
1
1
1
14
Electronique digitale
OU logique (OR)
A
B
A+B
0
0
0
0
1
1
1
0
1
1
1
1
OU exclusif (XOR)
A
B
A xor B
0
0
0
0
1
1
1
0
1
1
1
0
A
B
AB
A
B
AB A
B
A
B
A+B A
B
A+ B
A B
AB+AB
Les portes logiques de base sont disponibles dans les familles de circuits intgrs les
plus courants : 00 : NAND, 04 : inverseur, 08 : ET, 32 : OU, 86 : XOR, etc.
Algbre de Boole
En mathmatique, il existe une algbre pour calculer avec des variables prenant
deux valeurs seulement (0/1), mise au point par le mathmaticien Boole. Il y a
quelques rgles permettant de calculer plus simplement (identits remarquables) et
si une incertitude subsiste, il est toujours possible de recourir la table de vrit.
Ainsi on a notamment :
1.X = X ; 0.X = 0 ; 1+X = 1 ; 0+X= X ; X+/X=1 ; X./X =0 ; X+X=X ;
XA+X/A=X(A+/A)=X ; X+X/Y=X(1+/Y)=X, etc.
15
Electronique digitale
Electronique digitale
00
0
0
01
0
1
11
1
1
10
0
1
17
Electronique digitale
a
f
e
d
a
1
0
1
1
0
1
0
1
1
1
18
Electronique digitale
Chapitre 5
Nombres binaires - Oprations - Circuits associs
Numrotation binaire
L'utilisation d'un signal binaire permet entre autre de coder des nombres en base 2.
Ainsi le nombre 1101 en base 2 vaut 1x23+1x22+0x21+1x20=13 en base 10. Le bit le
plus droite du nombre binaire est le bit de poids faible (Less Significant Bit, ou
LSB) ; il reprsente "uniquement" l'information de parit du nombre. Le bit le plus
gauche est le bit de poids fort (Most Significant Bit, ou MSB) ; il reprsente plus
de la moiti de la valeur du nombre.
Le codage en base 2 consomme plus de chiffres qu'en base dix : 23<10, donc il y a
en moyenne un peu plus de 3 fois plus de bits que de chiffres dcimaux pour coder
le mme nombre. Avec N bits, on peut coder 2N valeurs ; ainsi un octet permet de
coder 28=256 valeurs. On peut convertir un nombre de la base 10 la base 2 par la
mthode des divisions successives par 2 ; ainsi 3710=1001012.
Pour condenser la notation binaire des nombres, on utilise l'hexadcimal (codage en
base 16). Cette base possde 10 chiffres identiques au systme dcimal auxquels on
ajoute 6 chiffres nouveaux qu'on reprsente simplement par les 6 premires lettres
majuscules de l'alphabet : A, B, C, D, E et F.
Il faut 4 bits pour coder un chiffre en hexadcimal. Pour distinguer un nombre en
hexadcimal d'un nombre en dcimal, on reprsente parfois le premier prcd d'un
'$'. Ainsi on a : $10=16 ; $F=15 ; $100=256 ; $1FF=511 ; $400=1024, etc.
Les multiples les plus utiliss sont le Kilo, le Mga, le Giga, etc. binaires :
1K=210=1024 (#1000) ; 1M=220=1K2=1048576 ; 1G=230=1K3=1073741824.
Nombres entier positifs
Avec N bits, on code 2N entiers positifs. Par exemple, sur 4 bits, on code 16 valeurs
: 0000=0, 0001=1, 0010=2, 0011=3, 0100=4, 0101=5, 0110=6, 0111=7, 1000=8,
1001=9, 1010=10, 1011=11, 1100=12, 1101=13, 1110=14, 1111=15.
Code BCD
Il s'agit d'un code "binaire cod dcimal" o l'on utilise 4 bits pour coder les
nombres de 0 9. ce codage gaspille un grand nombre de bits (ainsi 10 s'crit 0001
0000) mais il peut sembler pratique justement parce qu'il ne manipule pas de chiffre
hexadcimal qu'il faudrait convertir avant de l'afficher.
Code G R A Y
Le code Gray permet de compter en ne changeant qu'un seul bit lorsqu'on passe
d'un nombre au nombre immdiatement suprieur. On obtient le codage suivant en
cherchant le nombre le plus proche qui ne diffre que d'un bit du prcdent.
19
Electronique digitale
Ce code s'appelle aussi code rflchi car le codage des nombres comportant un bit
de poids fort supplmentaire est le symtrique des codages des
0000
nombres prcdents. Ce codage est utilis pour les capteurs de position
de manire ce qu'il n'y ait pas de valeur intermdiaire fausse si tous
0001
les bits du code ne changent pas en mme temps : en codage "normal",
0011
le passage de 3 4, c'est dire de 0011 0100, peut faire apparaitre
0010
les valeurs 0111, ou 0010 ou 0000, et encore d'autres si les bits ne
0110
commutent pas tous exactement en mme temps.
0111
0101
0100
etc.
Nombres signs
Pour coder des nombres de -N +N, il faut deux fois plus de bits que pour coder
les nombres de 0 N, c'est dire qu'il faut un bit d'information supplmentaire. Ce
bit est le bit de signe, il indique si le nombre est positif ou ngatif. Comme les
nombres positifs considrs jusqu' prsent comportaient un bit de poids fort gal
0, il est lgitime d'adopter un bit de signe gal 1 pour les nombres ngatifs.
Le codage adopt par les calculateurs pour les
nombres signs est obtenu par la mthode du
complment 2 : on obtient l'oppos d'un nombre
en inversant tous ses bits et en lui ajoutant 1.
L'opration de calcul du nombre -3 est dtaille
-3
dans le tableau ci-contre.
On peut vrifier quelques avantages de cette mthode : le nombre +0 est cod de la
mme manire que -0 ; si on additionne +3 et -3, on obtient bien 0 ( condition de
ne garder que le mme nombre de bits qu'au dpart pour coder le rsultat).
Comme +/-0 prend une place du ct des nombres positifs, on peut coder un entier
positif de moins que de nombre ngatif ; ainsi, avec 16 bits, on code des entiers de 32768 +32767, c'est la gamme de variation des entiers standards (cods sur 2
octets) dans un ordinateur 16 bits. Sur un ordinateur 32 bits, les entiers standards
sont cods de -2 109 +2 109 environ.
+3
Inversion des bits
Addition 1
0011
1100
1100
+0001
1101
Nombres rels
Pour coder les nombres rels, on utilise la notation mantisse/exposant : chaque
nombre est reprsent comme +/-M 2E, o l'exposant E est un entier sign.
Dans le code IEEE, un "real*4" est un nombre rel cod sur 4 octets selon la
convention suivante : R = [S][... 8 bits...][... 23 bits ...]
[S]
[... 8 bits...]
Signe +/- :
0/1
Exposant : +/-127
20
Electronique digitale
On notera la gamme de valeurs accessibles dans ce codage : 2127 1.7 1038, de sorte
que l'on peut coder des nombres de 10-38 10+38 environ,, et 2238.4 106, de sorte
que la prcision est de l'ordre de +/-10-7.
Dans la mme convention, un rel*8 sera cod avec 11 bits d'exposants et 52 bits de
mantisse, ce qui permet de coder des nombres de 10-308 10+308 avec une prcision
d'environ 10-16.
Le codage adopt pour reprsenter les rels dpend de l'architecture de la machine
de calcul. Les diffrents constructeurs (IBM, DEC, Apple, etc.) ont des conventions
de codage des rels diffrentes et il faut faire attention lors du passage de l'une
l'autre.
Arithmtique binaire
Addition
L'addition de deux nombres de 1 bit ncessite dj un circuit 3 entres et 2 sorties
pour grer correctement la propagation de la retenue. On trouve dans le commerce
des circuits additionneurs cabls sur 4 bits, comme le 74LS283, par exemple.
Multiplication
Le dcalage d'un bit vers la gauche correspond une multiplication par 2 (4:0100 > 1000:8) ; le dcalage vers la droite correspond la division par 2 (4:0100 ->
0010:2). Cette mthode est utilise par les algorithmes de multiplication. Un
exemple de circuit multiplieur est le -558, qui multiplie deux nombres de 8 bits
pour fournir un nombre de 16 bits en sortie.
Comparaison
La srie des circuits -682, 684, 688 effectue la comparaison de deux nombres de 8
bits et fournit en sortie les variables P=Q, et P>Q (le rsultat P<Q est obtenu
partir des deux premiers).
Unit arithmtique et logique
Ce circuit (ALU en anglais) se trouve au cur de tout micro processeur. Un
microprocesseur manipule des donnes au sens large du terme : il les stocke, les
transfre, les compare, effectue des oprations arithmtiques et logiques, etc. l'ALU
comporte deux entres X et Y pour deux nombres de N bits ( par exemple le circuit
-181 travaille sur des nombre de 4 bits) et une sortie qui fournit le rsultat de
l'opration. Cette opration est slectionne parmi 16 possibles l'aide de 4 bits de
slection S0-S3.
Codage des caractres
Pour coder l'ensemble des caractres utiliss dans toutes les critures du monde, il
faut un grand nombre de bit. Cependant, pour des raisons historiques, le plus
clbre des codes de caractres, le code ASCII ne permet de coder que 127
caractres. ASCII signifie American Standard Code for Information Interchange,
21
Electronique digitale
ce qui explique peut-tre cela... Le code ascii permet de coder les caractres
imprimables sur une tltype (anctre de l'imprimante), ainsi que divers caractres
de contrle (retour la ligne, saut de page, etc.).
Il existe plusieurs extensions du code ascii qui permettent en particulier de coder les
lettres avec accent, et divers autres caractres, mais ces extensions ne sont pas
forcment toutes compatibles entre elles.
Transmission de donnes
Contrle de parit
La transmission de donnes binaires est a priori plus fiable que la transmission de
signal analogique, du fait de l'existence d'une marge de bruit. Cependant, quel que
soit le mode de transmission adopt, on peut rendre celle-ci plus sure en adoptant un
contrle entre la donne mise et la donne reue. Le contrle de parit consiste
rajouter au mot mis un bit supplmentaire de tel sorte que le nombre de bits gaux
1 dans le mot rsultant soit pair ("even parity") ou impair ("odd parity").
Autrement dit, la somme de tous les bits du mot final doit tre paire ou impaire
selon la parit adopte. Ainsi en parit impaire, le caractre 'H', cod $48=1001000
(qui comporte un nombre pair de bits 1) en ascii se verra transform en
$C8=11001000 (dont la somme de tous les bits, gale 3, est paire). En parit
paire, le mot $48 restera cod $48. Le bit supplmentaire est appel bit de parit.
Avant un transfert de donnes, les deux systmes qui communiquent (gnralement
deux ordinateurs) se mettent d'accord sur le type de parit adopt pour la
transmission ; chaque envoi d'un mot binaire, l'metteur rajoute un bit de parit,
et le rcepteur vrifie que chaque mot reu respecte la parit convenue. Si la parit
n'est pas respecte, cela signifie qu'un bit du mot global a chang de valeur au cours
du transfert, et le rcepteur demande une r-mission du mot.
Le circuit -280 dtermine la parit d'un mot binaire : il possde 9 entres et deux
sorties, odd et even, donnant respectivement 1/0 selon que le mot d'entre
comporte un nombre pair ou impair de bits 1.
Le contrle de parit ne permet pas de savoir quel bit a t modifi pendant la
transmission et il peut ne pas dtecter une erreur si deux bits ont chang de valeur.
D'autres codes, comme le code de Hamming, qui ajoute plusieurs bits de contrle
chaque mot envoy, peuvent permettre, la rception, de dterminer quel bit est en
erreur, et de le corriger.
Liaison RS232
La transmission en parallle (un fil par bit) de mots binaires comportant un grand
nombre de bits d'une machine l'autre rclamerait trop de fils. De plus, si on
dfinit le cable de transmission pour une taille de mot donne (par exemple 16 bits),
le format devient rapidement obsolte avec l'volution technologique. Une solution
consiste convertir les mots binaires de parallle en srie pour pouvoir les
transmettre sur deux fils seulement (un fil de rfrence et un fil de signal, en
diffrentiel). L'utilisation de paires (de fils) torsades est trs rpandue dans la
transmission de donnes. Elle a l'avantage de rendre la transmission insensible aux
parasites par induction lectromagntique car la tension parasite induite changeant
de signe chaque boucle (torsade), le signal rsultant sur la longueur du fil est
minime.
22
Electronique digitale
23
Electronique digitale
Chapitre 6
Bascules, Compteurs, Machines tats & Squenceurs
Etat logique et mmoire: introduction
Dans un circuit logique combinatoire, comme tous ceux rencontrs jusque l, l'tat
des entres dtermine pleinement l'tat des sorties, par le biais de la table de vrit
(si on nglige les tats transitoires de quelques ns qui correspondent aux temps de
propagation dans les circuits et dans les fils). On peut cependant concevoir des
circuits avec rtroaction qui se comportent de manire un peu plus subtile. Ainsi, si
on ralise un circuit avec deux portes NOR dont les sorties sont reboucles sur les
entres, on obtient un circuit deux entres A et B et deux sorties correspondantes
X et Y. Dans l'tat AB=00, les deux tats XY=01 et XY=10 sont galement
possibles. On a toujours Y=/X, mais il n'est pas possible de prvoir X et Y partir
de A et B, et ce n'est pas un effet de temps de transfert.
Toujours avec des entres AB=00, si on dcide de partir d'un tat de sortie bien
dfini, comme XY=01, et que l'on fait passer B 1, alors XY passe dans l'tat 10.
Si B repasse 0, rien ne change plus, XY reste dans l'tat 10. Et si on part de l'tat
XY=10, le passage de B 1 (puis 0 si on le souhaite) ne change rien. On vrifie
que l'impulsion B : 0-1-0 force le circuit dans l'tat stable XY=10. Comme on a
toujours Y=/X, on peut caractriser la sortie par Y seulement (qu'on note alors Q)
et on vrifie que l'entre B est une entre de "remise 0" (entre Reset, dont le
passage 1 entraine le passage de Q 0).
Inversement, quel que soit l'tat de dpart de XY, une impulsion A : 0-1-0 fera
basculer le systme dans l'tat XY=01 (tat Q=1), l'entre A est une entre de
"remise 1" (Set).
On peut imaginer des systmes boucls base de portes NAND mais le principe
reste toujours le mme : l'tat de la sortie XY (/QQ) ne dpend pas directement de
l'tat des entres R et S, mais de la squence des valeurs qu'elles ont prises. Dans le
cas d'un systme boucl base de NAND, ce sont les passages A/B : 1-0-1 qui
dclenchent le changement d'tat en sortie. Dans tous les cas, ce ne sont pas les tats
des variables d'entres qui font changer la sortie mais le passage de l'une ou l'autre
des entres de 0 1 ou de 1 0. On voit apparatre la notion de commande d'un
circuit logique par un signal dpendant du temps et dont les "fronts" (edges, de
passage de 0 1 ou de 1 0) sont actifs. On appelle un front de monte leading
edge, et de descente, trailing edge.
NB. la prise en compte des temps de transfert reste d'actualit car aucun
changement ne s'effectue instantanment, en lectronique logique comme en
physique, mais ces temps de transfert ne gnrent pas ici d'ambiguit, quelle que
soit leur valeur, le comportement du circuit reste identique.
24
Electronique digitale
Electronique digitale
26
Electronique digitale
1
0
1
0
1
2
1
1
1
1
Quelle que soit la mthode utilise, il est plus sr de prvoir galement les sauts
effectuer partir d'tats thoriquement jamais atteints. En effet, la mise sous
tension ou du fait de parasites, le systme peut trs bien se retrouver dans un des
tats non prvus, et s'y trouver "bloqu" si rien n'est prvu pour l'en faire sortir.
Systmes tats
L'utilisation de compteurs synchrones permet de raliser des circuits capables de
traiter des situations variables dans le temps ; on nomme ces circuits des machines
tat. Ces circuits peuvent fonctionner de manire autonome, d'autres, plus
complexes, tiennent compte non seulement des diffrents tats dans lesquels ils
passent mais aussi de variables supplmentaires extrieures qui interviennent alors
dans la squence d'tats suivie.
On ralise une machine tats en suivant une srie d'tapes bien dfinies. On
commence par dterminer la liste des tats souhaits, qu'on repre par des lettres
plutt que par des nombres (pour ne pas risquer d'ambiguit quant au premier tat
"1" ou "0" par exemple). Il peut tre utile de tracer le graphe d'tats du systme
27
Electronique digitale
28
Electronique digitale
Chapitre 7
CIRCUITS MMOIRES
Introduction
Le traitement de l'information numrique ncessite souvent de pouvoir stocker cette
information (donnes, programmes, etc.). Pour cela on utilise des circuits
mmoires. La bascule D rencontre prcdemment est un circuit mmoire
rudimentaire sur un bit (la sortie Q recopie, c'est dire mmorise l'entre D
pendant une priode d'horloge). Un registre dcalage permet de stocker un mot
binaire entier.
Il existe aujourd'hui des circuits permettant de stocker beaucoup plus qu'un simple
mot (l'entreprise NEC a rcemment fabriqu un circuit mmoire de 4Giga-octets,
mais donner des chiffres dans un cours sur le numrique est risqu car ils sont sans
cesse dpasss). La capacit d'une mmoire se compte en octets.
RAM & ROM
Il existe deux types de circuit mmoire, celles qui gardent l'information lorsque le
courant est coup, appeles initialement mmoires mortes parce qu'on ne peut rcrire par la suite, et celles qui sont volatiles, appeles mmoires vives car on peut y
crire de l'information plusieurs fois. Les mmoires mortes et vives sont repres
par des acronymes qui ne sont pas opposs, ROM (Read Only Memory) pour
mmoire morte et RAM (Random access Memory) pour mmoire vive. Par
exemple, un disque compact (laser) contenant des donnes est un type particulier de
mmoire morte (CD-ROM). Cependant, on ne considrera dans ce chapitre que les
mmoires constitues de circuits lectroniques.
Capacit, Format, Brochage
Quel que soit le support physique utilis pour constituer la mmoire, l'information
disponible dans la mmoire est disponible sous forme structure. Vue de l'extrieur,
l'information binaire est stocke dans des cases mmoires repres par une adresse.
L'adresse est un mot binaire fourni en entre (par l'utilisateur) et la donne est un
mot binaire fourni en sortie (par le circuit mmoire).
La taille des cases peut varier : 1 bit, 8 bits, 16 bits, etc., c'est le format de la
mmoire. Le nombre de cases disponibles dans un mme circuit peut varier : 256,
512, 1024, etc., c'est la capacit de la mmoire. La capacit de la mmoire
dtermine le nombre de bits d'adresse ncessaires (8 bits pour adresser 256 valeurs,
par exemple), et le format de la mmoire dtermine le nombre de bits fournits en
sortie. Aux connexions d'adresse et de donnes, s'ajoutent des bits de contrle
(gnralement au nombre de 3 ou 4) qui sont utiliss pour dterminer si la mmoire
est slectionne ou pas (broche CS), si elle est utilise en criture ou en lecture
(broche R/W), si la sortie est en haute impdance ou pas (broche OE), etc.
29
Electronique digitale
Electronique digitale
d'effacement peut prendre plusieurs minutes. On peut galement effacer les PROM
de manire lectrique, on parle alors d'EEPROM (Electrically EPROM).
Paramtres lectriques et temporels
Comme tous les circuits numriques connus, les mmoires possdent des paramtres
de fonctionnement, lectriques et temporels. Il y a mme un plus grand nombre de
paramtres temporels que pour un circuit normal, car les oprations d'criture et de
lecture doivent tre effectues de manire trs prcises. On distingue notamment les
tats suivants :
Etat de veille : linformation est conserve sous tension dalimentation rduite. Pas
de possibilit de lire ou dcrire. Etat passif (standby) : boitier hors veille mais non
slectionn : la consommation est rduite. Etat actif : circuit mmoire slectionn
(CE ou CS actif) : la mmoire peut tre lue/crite.
La consommation d'une mmoire peur tre importante et varie selon le rythme de
travail (temps de cycle). Une mmoire aura par ailleurs les paramtres temporels
suivants :
Temps daccs : t entre ordre donn et excution (terme gnral) Temps
dcriture : t entre linstant o toute linformation ncessaire lcriture est
transmise la mmoire et linstant o linfo est effectivement crite. Temps de
lecture : Idem / lecture (data prsente en sortie). Temps de cycle : t entre deux
oprations conscutives. Dure de validit (des donnes en sortie) : temps pendant
lequel les donnes sont disponibles en sortie. Temps de maintien : t pendant lequel
un signal doit tre maintenu pour tre compris (exemple : temps de prsence de
ladresse en entre, etc.). Temps de rcupration (recovery time) : t ncessaire
pour passer dune opration la suivante.
Exemple de cycle dcriture
Dans un cycle d'criture moyen, il faut tout d'abord slectionner le circuit
concern, puis prsenter l'adresse, puis la donne et enfin envoyer un ordre /W
d'criture. Aprs criture, les signaux (actifs 0) "remontent" 1 dans l'ordre
inverse.
CS
Adrr
Data
W
31
Electronique digitale
32