You are on page 1of 76

Cours dlectronique numrique

Maryam Siadat & Camille Diou

Premire partie

Les nombres

Chapitre 1
Les systmes de numration

George Boole 2 nov. 1815, Lincoln, R.-U. 8 dc. 1864, Ballintemple, Irlande

1.1

La reprsentation polynomiale

La reprsentation polynomiale dun nombre est sa reprsentation sous la forme suivante : an1 bn1 + an2 bn2 + an3 bn3 + + a2 b2 + a1 b + a0 + a1 b1 + a2 b2 + + am bm o b est appele la base. Si la base 10 nous est familire, dautres bases existent et les bases les plus utilises en informatique sont les bases 10, 2, 8 et 16 appeles respectivement dcimale , binaire , octale et hexadcimale .

1.2
1.2.1

Le systme binaire
Introduction

Le systme dcimal est malheureusement difcile adapter aux mcanismes numriques, car il est difcile de concevoir du matriel lectronique fonctionnant sur dix plages de tensions diffrentes. On lui prfrera donc le systme binaire : base B=2 ; 2 symboles : 0 et 1 appels lments binaires ou bits (bit=Binary digIT ) ;

1.2. Le systme binaire

le systme binaire est pondr par 2 : les poids sont les puissances de 2 ;

Exemple :
26 1 25 0 24 1 23 1 22 0 21 0 20 1 , 21 0 23 1 23 1

les diffrentes puissances de 2 sont : 20 21 22 23 24 25 26 27 28 29 210 1 2 4 8 16 32 64 128 256 512 1024 un ensemble de 8 bits est appel octet (ou byte).

1.2.2

Comptage binaire

On prsente les nombres binaires en gnral avec un nombre xe de bits, nombre impos par les circuits mmoires utiliss pour reprsenter ces nombres. Suite des nombres binaires 4 bits :

Poids :

23 0 0 0 0 0 0 0 0

22 0 0 0 0 1 1 1 1

21 0 0 1 1 0 0 1 1

20 0 1 0 1 0 1 0 1

B10 0 1 2 3 4 5 6 7

Poids :

23 1 1 1 1 1 1 1 1

22 0 0 0 0 1 1 1 1

21 0 0 1 1 0 0 1 1

20 0 1 0 1 0 1 0 1

B10 8 9 10 11 12 13 14 15

Le bit le plus signicatif le bit le plus gauche est appel bit de poids fort ou MSB (Most Signicant Bit). Le bit le moins signicatif le bit le plus droite est appel bit de poids faible ou LSB (Less Signicant Bit). Si on utilise N bits, on peut reprsenter 2N valeurs diffrentes de 20 2N 1 Exemple :
N = 8 : 00000000 11111111 255
Remarque : Comme lon traite souvent en micro-informatique de nombres 8 ou 16 lments binaires (e.b.), on se sert des systmes : octal : base 8 ; hexadcimal : base 16.

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 1 : Les systmes de numration

1.3

Le systme octal

base B=8 ; 8 symboles : 0, 1, 2, 3, 4, 5, 6, 7 ; Lintrt de ce systme est que la base 8 est une puissance de 2 (8 = 23 ), donc les poids sont aussi des puissances de 2. Chaque symbole de la base 8 est exprim sur 3 e.b. : (ai )8 = bi2 bi1 bi0 Exemple :
(52, 3)8 = 101 010, 011

1.4

Le systme hexadcimal

base B=16 ; 15 symboles : 0, 1, 2, . . . , 9, A, B, C, D, E, F appels digits ; chaque symbole est exprim en binaire sur 4 bits ; Exemple :
(F 3D, 2)16 = 1111 0111 1101, 0010

1.5
1.5.1

Conversion dun systme de numration un autre


Base B vers base 10

(an . . . a0 )B = an Bn + + a0 B0 = (am . . . a0 )10 Exemple :


(1001, 1)2 = 1.23 + 0.22 + 0.21 + 1.20 + 1.21 = 8 + 0 + 0 + 1 + 0, 5 = 9, 5 (A12)16 = A.162 + 1.161 + 2.160 = 2560 + 16 + 2 = 2578

1.5.2
A

Base 10 vers base B

Premire mthode Elle consiste soustraire successivement la plus grande puissance de B

c M. Siadat & C. Diou

Cours dlectronique numrique

1.5. Conversion dun systme de numration un autre

Exemple :
100 = 1.26 36 = 1.25 4 = 1.22 + 36 (100)10 = (1100100)2 + 4 + 0

Deuxime mthode

Elle consiste diviser par B autant de fois que cela est ncessaire pour obtenir un quotient nul. Ensuite on crit les restes dans lordre inverse de celui dans lequel ils ont t obtenus. Pour la partie fractionnaire on multiplie par B (rsultat nul ou selon la prcision demande) Exemple :
(20, 4)10 = (?)2 Partie entire :
20 0 2 10 0

Partie fractionnaire :
0, 4 2 0, 8 1 0, 8 2 1, 6 1 0, 6 2 1, 2

2 5 1

2 2 0

0 2 1 1 2 0

Le rsultat est donc 10100,0110.

1.5.3

Base 2n vers base 2

Chaque symbole de la base B = 2n peut tre reprsent par n e.b. Exemple :


(3A9)16 = (0011 1010 1001)2 (742, 5)8 = (111 100 010, 101)2

1.5.4

Base 2 vers base 2n

Il suft de regrouper les e.b. par paquets de n e.b.

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 1 : Les systmes de numration

Exemple :
(1011011)2 = ( 001 011 011 )2
1 3 5 3

= (133)8 = (5B)16

(0101 1011)2
B

1.5.5

Base i vers base j

si i et j sont des puissances de 2, on utilise la base 2 comme relais ; Exemple :


base 8 base 2 base 16

sinon, on utilise la base 10 comme relais. Exemple :


base 5 base 10 base 2

c M. Siadat & C. Diou

Cours dlectronique numrique

1.5. Conversion dun systme de numration un autre

10

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 2
Codage des nombres dans les machines numriques

Blaise Pascal 19 juin 1623, Clermont, France 19 aot 1662, Paris, France

Les systmes logiques sont constitus de mcanismes qui ne permettent de noter que 2 tats : 0 ou 1. Une mmoire lmentaire est donc une unit contenant 0 ou 1. Plusieurs de ces units sont assembles pour reprsenter un nombre binaire. Exemple :
mmoire 8 bits :
ordre dcriture ordre de lecture

valeur en bits
Ces mmoires sont indissociables et lordre dassemblage donne le poids de chaque bit.

11

2.1. Reprsentation des nombres entiers positifs

2.1

Reprsentation des nombres entiers positifs

Les nombres sont reprsents en binaire sur n bits : n = nombre dunits mmoires (n = 8, 16, 32, 64, . . .) On peut reprsenter des nombres allant de 0 2n1 .

2.2

Reprsentation binaire des entiers signs

Traditionnellement on met un signe pour reprsenter les nombres ngatifs. Mais les systmes logiques ne permettent de prsenter quun des deux symboles 0 et 1, il faut chercher une convention pour remplacer le .

2.2.1

Reprsentation module et signe

Solution la plus simple : on ajoute un e.b. gauche du module pour le signe. Ainsi, un nombre commenant par un 0 sera positif, alors quun nombre commenant par un 0+ 1 sera ngatif : 1 Exemple :
avec 4 e.b. Les valeurs vont de 7 +7 Signe 1 1 1 1 1 1 1 1 Module 111 110 101 100 011 010 001 000 Valeur -7 -6 -5 -4 -3 -2 -1 0 Signe 0 0 0 0 0 0 0 0 Module 111 110 101 100 011 010 001 000 Valeur 7 6 5 4 3 2 1 0

Problme : on a ici deux reprsentations diffrentes pour le zro : 00...0 et 10...0.

2.2.2

Reprsentation en complment restreint (complment 1)

A = A : pour prendre linverse dun nombre, il suft de le complmenter (inversion de tous ses bits). Comme dans le cas prcdent, la nature du premier bit donnera le signe : 0+ 1

12

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 2 : Codage des nombres dans les machines numriques

Exemple :
avec 4 e.b. : +5 5 0101 1010

Problme : de nouveau, on a deux reprsentations diffrentes pour le zro.

2.2.3

Reprsentation en complment vrai (complment 2)

Cest la reprsentation la plus utilise. Le bit le plus gauche est encore le bit de 0+ signe : 1 A A A+A 1+A+A = A+1 = an1 an2 a0 = 11 ... 1 = 1 00 ... 0
0

(on complmente chaque coefcient) (car on reprsente sur n bits seulement)

A = A + 1 est appel compment 2


Remarque : pour passer dune valeur ngative une valeur positive, on applique aussi le complment 2; une seule reprsentation pour le zro ; avec des mots de n e.b., on obtient 2n valeurs diffrentes, de 0 2n1 1 pour les valeurs positives, et de 1 2n1 pour les valeurs ngatives ; Exemple :

n=8

nb > 0 de 0 127 nb < 0 de 1 128

nb 0 bit de signe = 0 nb < 0 bit de signe = 1 pour reprsenter un nombre positif sur une mmoire de taille donne, on complte les cases vides de gauche par des 0 ; pour reprsenter un nombre ngatif sur une mmoire de taille donne, on complte les cases vides de gauche par des 1 ; Exemple : +13 sur 8 bits : 00001101, -13 sur 8 bits : 11110011

c M. Siadat & C. Diou

Cours dlectronique numrique

13

2.3. Reprsentation des nombres rels dans un calculateur

2.3

Reprsentation des nombres rels dans un calculateur

Dans un calculateur, un nombre est toujours crit sous forme d1 bloc de n e.b. (considr comme un entier N ). Pour reprsenter les nombres fractionnaires il est ncessaire de dnir la position de la virgule : pour ce faire, il existe deux mthodes.

2.3.1

La reprsentation en virgule xe

On dcide que la virgule est toujours une position donne (un entier peut tre reprsentatif dun nombre fractionnaire si on connat la place de la virgule). Exemple :
Virgule au rang K (K chiffres aprs la virgule) : La valeur N crite en mmoire aura les poids suivants : N = 2N 1K 20 21 2K 0 N (2n 1)2K Virgule au rang 0 : N = 2N 1 20 0 N 2N 1

Inconvnient de la mthode : problme de gestion de la virgule notamment dans les multiplications (pour les additions et soustractions pas de problme, la position de la virgule ne change pas) ; limitation de la taille de la partie entire et de la partie dcimale Exemple :
Si on dcide 2 symboles pour les parties entires et 2 symboles pour les parties fractionnaires, on ne peut plus crire 256,1.

utilisation limite lorsquon traite des donnes de grandeurs diffrentes, car on doit prendre un grand nombre de bit de part et dautre de la virgule pour pouvoir reprsenter des grandeurs trs faible et des grandeurs trs importantes.

2.3.2

La reprsentation en virgule ottante


mantisse

Le nombre N est reprsent sous la forme : exposant 1re approche

Soit N = a3 a2 a1 a0 , a1 a2 a3 : N peut se noter : (a6 a5 a4 a3 a2 a1 a0 ).23 exposant = 3 mantisse = a6 a5 a4 a3 a2 a1 a0

14

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 2 : Codage des nombres dans les machines numriques

Les valeurs de la mantisse et lexposant seront nots en complment 2 en mmoire du calculateur Exemple :
Soit la mmoire de taille suivante : 4 bits 12 bits exposant mantisse Coder la valeur 26,75 en virgule ottante. (26, 75)10 = (11010, 110)2 exposant = 3 (11010, 11)2 = (11010110).23 mantisse = 11010110 1101 0000011010110
exp=3 mantisse=214

26, 75 = 214.23

2me approche Mthode inverse on considre que le bit le plus gauche de la mantisse pour poids 21 . Soit : N = a3 a2 a1 a0 , a1 a2 a3 N peut aussi se noter (0, a1 a2 a3 a4 a5 a6 a7 ). 24
mantisse exp

Exemple :
Mme exemple que prcdemment : (26, 75)10 = (11010, 110)2 (0, 11010110).25 0101 110101100000

Remarque : Les ordinateurs utilisent cette reprsentation avec 32 bits pour la mantisse et 8 bits pour lexposant. En gnral, on utilise la reprsentation inverse, avec le bit le plus gauche = 1, soit une mantisse normalise 0, 5 M < 1

2.4
2.4.1

Arithmtique binaire
Addition

Laddition en binaire se fait avec les mmes rgles quen dcimal : on commence additionner les bits de poids faibles puis on a des retenues lorsque la somme de deux bits de mme poids dpasse la valeur de lunit la plus grande (dans le cas du binaire : 1). Cette retenue est reporte sur le bit de poids plus fort suivant.

c M. Siadat & C. Diou

Cours dlectronique numrique

15

2.4. Arithmtique binaire

La table daddition binaire est la suivante : A 0 0 1 1 B 0 1 0 1 C 0 1 1 0 retenue 0 0 0 1 (carry)

+ + + +

= = = =

Exemple :
Addition des nombres de 4 bits :
+ = 0 1 1 0 0 1 1 1 0 1 0 1 + = (+3) (-6) -3 + = 0 0 1 1 1 1 1 0 0 1 1 1 , , , 1 0 0 1 1 0 + = 7,75 5,25 -3,00

La retenue de la deuxime opration indique un dpassement de capacit (overow) : le bit de signe est 1 alors quil aurait d tre 0 (addition de deux nombres positifs).

2.4.2

Soustraction

Dans la soustraction binaire, on procde comme en dcimal. Quand la quantit soustraire est suprieure la quantit dont on soustrait, on emprunte 1 au voisin de gauche. En binaire, ce 1 ajoute 2 la quantit dont on soustrait, tandis quen dcimal il ajoute 10. La table de soustraction binaire est la suivante : A 0 0 1 1 B 0 1 0 1 C 0 1 1 0 retenue 0 1 0 0 (borrow)

= = = =

Exemple :
1 1 0 0 0 1 0 1 1 1 , , , 0 1 1 5 3,5 1,5 1 0 0 1 0 1 0 0 1 1 1 0 1 1 0 1 3 12 -9

Remarque : On peut utiliser le complment 2 de la valeur soustraire puis on additionne. Cela se passe de cette manire dans les calculateurs.

16

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 2 : Codage des nombres dans les machines numriques

Exemple :
72 :
7: 2: -2 : 0 0 1 0 0 1 1 0 1 1 1 1 1 0 0 1 + 0 1 0 0 1 0 1 1 1 1 1 0 1 0 1

On ne tient pas compte de la retenue.

2.4.3

Multiplication

La table de multiplication en binaire est trs simple : A 0 0 1 1 B 0 1 0 1 C 0 0 0 1

x x x x

= = = =

La multiplication se fait en formant un produit partiel pour chaque digit du multiplieur (seul les bits non nuls donneront un rsultat non nul). Lorsque le bit du multiplieur est nul, le produit partiel est nul, lorsquil vaut un, le produit partiel est constitu du multiplicande dcal du nombre de positions gal au poids du bit du multiplieur. Exemple :
0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 1 = 1 1 0 0 = = 0

multiplicande multiplieur

5 2

10

Remarque : La multiplication binaire par 2N , se rsume un dcalage de N bits vers la gauche. On introduira donc droite N zro. Exemple :

8 4 sur 8 bits :
0 0 0 0 1 0 0 0

= =

0 0

16 4 sur 8 bits :
1 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0

2.4.4

Division

La table de division binaire est la suivante :

c M. Siadat & C. Diou

Cours dlectronique numrique

17

2.4. Arithmtique binaire

A 0 0 1 1

/ / / /

B 0 1 0 1

= = = =

C impossible 0 impossible 1

La division binaire seffectue laide de soustractions et de dcalages, comme la division dcimale, sauf que les digits du quotient ne peuvent tre que 1 ou 0. Le bit du quotient est 1 si on peut soustraire le diviseur, sinon il est 0. Exemple :
Division du nombre (10010000111)2 par (1011)2 = (1101001)2 reste (100)2 , cest--dire 1159/11 = 105, reste 4.
1 0 1 0 0 0 1 1 0 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 1 0 0 1

0 1 0 -

0 1 1 1 0

1 0 1

1 1 0

1 1 0

Remarque : La division binaire par 2N , se rsume un dcalage de N bits vers la droite. En arithmtique signe, il faut penser recopier gauche le bit de signe autant de fois que ncessaire. Exemple :

8/4 sur 8 bits :


0 0 0 0 1 0 0 0

= 0 = 1

16/4 sur 8 bits :


1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0

18

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 3
Les codes numriques

Howard Hathaway Aiken 9 mars 1900, Hoboken, E.-U. 14 mars 1973, St Louis, E.-U.

Codage : opration qui tablit une correspondance entre un ensemble source (nombre, caractre, symbole) vers un ensemble but contenant des combinaisons de 0 et de 1.

3.1
3.1.1

Codes numriques pondrs


Code binaire pur

code pondr par des puissances de 2. Utilis en arithmtique binaire. Ses drives sont le code octal et le code hexadcimal.

3.1.2

Code DCB (Dcimal Cod Binaire)

chaque chiffre dcimal (0, 1, . . . , 9) est cod en binaire avec 4 e.b. Code pondr avec les poids 1, 2, 4, 8, 10, 20, 40, 80, 100, . . . Plus facile pour coder des grands nombre, il est surtout utilis pour lafchage des nombres.
Remarque : Ne pas confondre DCB et code binaire pur : quand on code selon le code binaire pur on prend le nombre dans son intgralit et on le convertit ; par contre, quand on code en DCB on code

19

3.1. Codes numriques pondrs

chaque chiffre indpendamment les uns des autres. Exemple :


(137)10 = = (010001001)2 (001011111)DCB

3.1.3

Code binaire de Aiken

Pondr par 2421, cest un code autocomplmentaire. (les reprsentations de 2 chiffres dont la somme est 2 sont complmentaires lune de lautre. Il peut tre constitu par les rgles suivantes : de 0 4 on code en binaire pur ; de 5 9 on ajoute 6 et on code en binaire pur. (c..d. 5 5 + 6 = 11, 6 6 + 6 = 12, . . .) Exemple :
dcimal 0 1 2 3 4 2 0 0 0 0 0 Aiken 4 2 0 0 0 0 0 1 0 1 1 0 dcimal 1 0 1 0 1 0 5 6 7 8 9 2 1 1 1 1 1 Aiken 4 2 0 1 1 0 1 0 1 1 1 1 1 1 0 1 0 1

Ce code est utilis dans certains calculateurs pour effectuer des soustractions par additions de la forme complmentaire.

3.1.4

Les codes biquinaires

Cest un code compos dun groupe de n bits (en gnral 5) dont un seul parmi n progresse la fois, et dun groupe de m bits (1 2) assurant la distinction entre n > 5 et n 5. Exemple :
dcimal 0 1 2 3 4 S 0 0 0 0 0 O 1 1 1 1 1 4 0 0 0 0 1 3 0 0 0 1 0 2 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 dcimal 5 6 7 8 9 S 1 1 1 1 1 O 0 0 0 0 0 4 1 1 1 1 1 3 0 0 0 1 0 2 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0

Chaque combinaison a un nombre pair de 1 : scurit de transmission. Ce code est utilis dans les calculatrices.

20

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 3 : Les codes numriques

3.2
3.2.1

Codes numriques non pondrs


Code major de trois (excdant de neuf)

On prend chaque chiffre dcimal +3, puis on convertit en binaire. On a parfois recours ce code en raison de la facilit avec laquelle on peut faire certains calculs arithmtiques. Exemple :
(48)10 4 +3 7 0111 8 +3 11 1011

3.2.2

Code de Gray (binaire rchi)

Un seul bit change entre deux nombres conscutifs (notion dadjacence). Exemple :
Dcimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 Gray 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0

Le code prsente 4 symtries miroir. Il est cyclique : il se referme sur lui-mme.

Ce code est utilis dans les tableaux de Karnaugh (c.f. section ?? page ??), dans des circuits dentre/sortie, et dans certains convertisseurs analogique/numrique. Il ne convient pas pour larithmtique binaire.

3.3

Codes dtecteurs derreurs et autocorrecteurs

Ces codes sont utiliss pour contrler la transmission des donnes.

c M. Siadat & C. Diou

Cours dlectronique numrique

21

3.3. Codes dtecteurs derreurs et autocorrecteurs

Souvent, on utilise un nombre de bits suprieur celui strictement ncessaire pour coder linformation elle-mme.

3.3.1

Codes biquinaires

c.f. section ?? page ??.

3.3.2

Les codes P parmi n

Ce sont des codes autovricateurs (dtecteurs derreurs mais pas autocorrecteurs). Ces codes possdent n e.b. dont P sont 1 ; la position des 1 permet de reconnatre un lment cod. Exemple :
Pour transmettre linformation numrique dans les centraux tlphoniques (cross bar), on utilise un code 2 parmi 5 (ou code 74210) pour reprsenter les chiffres dcimaux. Il existe 10 combinaisons :
Dcimal 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 1 1 1 1 2 parmi 5 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 0 0 0 0 0 1 0 1 0 1 0 0 1 1 0 1 0 0 1 0 0 0

3.3.3

Les codes contrle de parit

Dans ces codes, on ajoute un e.b. de sorte que lensemble des bits transmettre (ou le mot) ait un nombre pair (parit paire) ou impaire (parit impaire) de 1 . Exemple :
0101 0 0101 0111 1 0111

Remarque : Dans lapplication de la mthode de la parit, lmetteur et le rcepteur se mettent daccord lavance sur la parit surveiller (paire ou impaire). Remarque : Pour dtecter la place dun e.b. faux, il faut coder dans 2 dimensions selon les lignes et les colonnes.

22

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 3 : Les codes numriques

Exemple :
0 1 0 1 0 1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 0 1 1 1 0 1 0 1 0 1 0 0 1 0 0 0 0 1 1 0 0 1 0 0 1 0 1 1 1

Transmission

Ce code dtecte les erreurs simples condition que le.b. de parit ne soit pas erron.

3.3.4

Code de Hamming

Ce code est utilis dans les transmissions de donnes. Il localise et corrige les chiffres erronns (en ajoutant des e.b. supplmentaires aux e.b. de linformation). Le nombre binaire dinformation effective est : N = ABCD = 4 Le nombre binaire dinformation transmise est : N = abcde f g = 7 avec a = b= c= d= e= f= g= A B C D A C D A B C D B C D

3.4

Les codes alphanumriques

Ils servent coder des chiffres, des lettres, des signes de ponctuations et des caractres spciaux (26 caractres minuscules, 26 caractres majuscules, 7 signes, 20 40 caractres spciaux comme +,|,=,%,...)

3.4.1

Le code ASCII (American Standard Code for Information Interchange)

Cest le plus rpandu. On le retrouve pratiquement dans tous les ordinateurs et leurs organes priphriques, pour leurs dialogues et la reprsentation des textes en mmoire. Chaque symbole (caractre dimprimerie) est cod par 7 e.b. (un 8me e.b. peut servir de parit) : 27 = 128 combinaisons diffrentes.

c M. Siadat & C. Diou

Cours dlectronique numrique

23

3.4. Les codes alphanumriques

24

Cours dlectronique numrique

c M. Siadat & C. Diou

Deuxime partie

La logique combinatoire

25

Chapitre 4
Fonctions et oprateurs logiques

Augustus De Morgan 27 juin 1806, Madura, Indes 18 mars 1871, Londres, R.-U.

4.1

Introduction

Les sytmes logiques fonctionnent en mode binaire les variables dentre et de sortie ne prennent que deux valeurs : 0 ou 1 . Ces valeurs (tats) 0 et 1 correspondent des plages dnies lavance. Exemple :
Technologie lectrique TTL : 1 2,4 5 V 0 0 0,8 V Technologie pneumatique : 1 prsence de pression 0 abscence de pression

Les valeurs 0 et 1 ne reprsentent ps des nombres rels mais plutt ltat dune variable (logique) on les appelle donc niveaux logiques . Convention des synonymes des 0 et 1 : Ces deux valeurs peuvent tre nommes de diffrentes faons :

27

4.2. Variables logiques (binaires)

Niv. log. 0 Faux Ouvert Arrt Bas Non On dnit deux types de logiques : Logique positive : niveau haut tat logique 1 (+5 V) niveau bas tat logique 0 (0 V)

Niv. log. 1 Vrai Ferm Marche Haut Oui

Logique ngative : niveau haut tat logique 0 (0 V) niveau bas tat logique 1 (+5 V)

La logique binaire base sur lalgbre de Boole permet de dcrire dans un modle mathmatique les manipulations et traitement des informations binaires, et danalyser les sytmes numriques.

Il existe 3 fonctions lmentaires dans lalgbre de Boole : addition logique : appele OU, symbolise par un plus : + ; multiplication logique : appele ET, symbolise par un point : . ; complmentation : appele NON, symbolise par un surlignement : tout circuit numrique peut tre dni laide dune fonction logique (expression logique) qui reprsente la variable de la sortie en fonction des variables dentre.

4.2

Variables logiques (binaires)

Ce sont des variables ne pouvant prendre que deux valeurs distinctes : 0 ou 1 . Une variable binaire peut reprsenter nimporte quel dispositif binaire (contact, lampe, lectrovanne,...) Convention : Tout appareil est schmatis ltat de repos. Dans tous les cas, laction sur un appareil sera note a, b, ... et la non action a, b, ... Exemple :
Bouton poussoir contact repos et contact travail. 1er cas : schma dun contact ouvert au repos dit contact travail . 2 cas : schma dun contact ferm au repos dit contact repos .

28

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 4 : Fonctions et oprateurs logiques

Exemple :
Relais : cest un interrupteur oprant de faon lectromagntique ; lorsquun courant appropri passe dans le charbon, une force magntique dplace les armatures imposant louverture ou la fermeture des contacts. Il est prsent dans sa position non alimentee (au repos). Ils peuvent tre ferms ou ouverts au repos.

Charbon
Symbole dun relais double normalement ouvert et ferm

T = (A+B).C

4.3

Oprateurs logiques lmentaires

Les fonctions logiques sont conues partir dun groupe doprateurs lmentaires appels portes . Chaque oprateur est reprsent par un symbole et sa fonction est dnie par une table de vrit.

4.3.1

NON (NOT)

A 0 1

A 1 0

4.3.2

ET (AND)

&

A 0 0 1 1

B 0 1 0 1

X 0 0 0 1

Proprits du ET : x.1 = x x.0 = 0 x.x = 0 x.x = x

lment neutre : 1 lment absorbant : 0

4.3.3

OU (OR)

c M. Siadat & C. Diou

Cours dlectronique numrique

29

4.4. Description des circuits logiques

A 0 0 1 1

B 0 1 0 1

X 0 1 1 1

Proprits du OU : x+1 = 1 x+0 = x x+x = 1 x+x = x

lment neutre : 0 lment absorbant : 1

4.3.4

NON-OU (NOR)

S=A+B

4.3.5

NON-ET (NAND)

&

S=A.B

4.3.6

OU exclusif (XOR)

S=AB

4.3.7

Concidence : NON-OU exclusif (XNOR)


S=AB

4.4

Description des circuits logiques

Tout circuit logique peut tre dcrit par des fonctions logiques et/ou une table de vrit, et tre ralis partir des oprateurs logiques lmentaires.

4.4.1

Table de vrit

La table de vrit nous fait connatre la raction dun circuit logique aux diverses combinaisons de niveaux logiques appliques ses entres.

30

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 4 : Fonctions et oprateurs logiques

Exemple :
A 0 1 B 0 . . . 1 C 0 1 X ? . . . ? Y ? . . . ?

A B C

X Y

Exemple :
Donner la table de vrit dun circuit 3 entres A,B,C et 2 sorties X,Y tel que : X=1 si les 3 entres ont le mme niveau Y=1 si A=B

4.4.2

Logigramme

Un logigramme est un schma illustrant lexpression dune fonction logique sans tenir compte des constituants technologiques. Exemple :
A B C X

X=A.B+C

Remarque : Notation : Par convention, une entre ou une sortie doprateur logique active un niveau haut sera note a, b, sel, etc. Une entre ou une sortie doprateur logique active un niveau bas sera note c, d, MEM, etc.

4.5

Universalit des portes NON-ET et NON-OU


Thorme de De Morgan : 1. Le complment dun produit est gal la somme des complments des termes du produit : S = a.b = a + b 2. Le complment dune somme est gal au produit des complments des termes de la somme : S = a+b = a.b

Le thorme de De Morgan et ses consquences est : trs utile pour simplier des expressions ;

c M. Siadat & C. Diou

Cours dlectronique numrique

31

4.5. Universalit des portes NON-ET et NON-OU

valable galement si a ou b sont des expressions contenant plusieurs variables Exemple :


(A .B + C) = (A.B).C = A. B .C

consquences : 1. une porte NON-OU est une porte ET avec ses entres inverses :

2. une porte NON-ET est une porte OU avec ses entres inverses :

Universalit des portes NON-ET et des portes NON-OU : Toutes les portes logiques lmentaires (ET, OU, NON) peuvent tre ralises avec des portes NON-OU ou NON-ET.

4.5.1

Universalit des portes NON-OU


a a+b a b a+a a

NON :

ET :

OU :

a+b

4.5.2

Universalit des portes NON-ET


a a.b a

NON : Exemple :

a.a

OU :

ET :

a b

a.b

Raliser la fonction X=AB+CD laide du CI (circuit intgr) suivant :


14 13 12 11 10 9 8 VCC

& &

3 6 8 11

7400 :
1 2 3 4 5 6 7

&
X

A B C D

AB

&

CD

32

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 4 : Fonctions et oprateurs logiques

Remarque : la mme approche peut etre faite pour les portes OU exclusif ; les oprateurs NAND, NOR, OU exclusif, ainsi que le groupe doprateurs (ET, OU, NON) sont appels des oprateurs complets puisquils peuvent raliser seuls toutes les oprations logiques.

4.5.3

Famille des circuits logiques


TTL (Transistor-Transistor Logic) le plus populaire (54xx, 74xx) ; ECL (Emitter-Coupled Logic) pour des circuits rapides (10xxx) ; MOS (Metal Oxyd Semiconductor) haute intgration ; CMOS (Complementary Metal Oxyd Semiconductor) faible consom. (40xx) ; I2L (Integrated Injection Logic) haute intgration.

Certains fonctionnent en logique positive, dautres en logique ngative.

4.6
4.6.1

Simplication dexpressions logiques


Mthode algbrique

Il nest pas facile de trouver le rsultat minimal application des thormes de De Morgan, factorisation, astuce, ... Exemple :
x+xy = x(1+y)+xy = x+xy+xy = x+y x.(x+y) = x+xy = x ABC + ABC + ABC + ABC = AC + AB + BC (thorme dallgement) (absorption)

4.6.2

Diagramme de Karnaugh et termes adjacents

Deux termes sont adjacents quand ils ne diffrent lun de lautre que par une seule variable. ABC et ABC sont adjacents. Un digramme de Karnaugh est une table dimplication logique dispose de telle manire que deux termes logiquement adjacents soient galement adjacents gomtriquement. Le diagramme de Karnaugh est un outil graphique, mthodique. Il permet dobtenir une solution optimale la simplication logique. A Forme du diagramme de Karnaugh

Comme la table de vrit, il met en vidence le rapport entre les entres et les sorties (chaque ligne de la table de vrit correspond une case du diagramme de Karnaugh).

c M. Siadat & C. Diou

Cours dlectronique numrique

33

4.6. Simplication dexpressions logiques

Exemple :
X A 0 0 1 1 B 0 1 0 1 X 1 0 0 1 A 0 1 B 0 1 0 1 0 1 A 1 0 X B 0 1

Exemple :
X B A 0 00 01 11 10 X B C

3 entres :

Exemple :
X CD AB 00 01 B 11 A 00 01 11 10 X D C

4 entres :

10

Remarque : Les tableaux de Karnaugh se prsentent comme des cylindres ferms dans les deux sens.

Mthode de simplication 1. dessiner la table de Karnaugh correspondant la fonction ; 2. on entame les 1 isols ; 3. on runit les octets de 1 adjacents ; 4. on runit les quartes de 1 adjacents ; 5. on runit les doublets de 1 adjacents pour runir tous les 1 du tableaux ; 6. effectuer laddition logique e tous les termes rsultants des runions, sachant que : un octet de 1 permet dliminer les 3 variables qui se trouvent sous les deux formes (complment et non complment) ; un quartet de 1 permet dliminer les 2 variables qui se trouvent sous les deux formes (complment et non complment) ; un doublet de 1 permet dliminer la variable qui se trouve sous les deux formes (complment et non complment) ;

34

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 4 : Fonctions et oprateurs logiques

Tableau de Karnaugh 5 variables


E 0 X CD AB 00 01 11 10 00 01 11 10 AB 00 01 11 10 X CD 00 01 11 10 AB 1 X CDE 000 001 011 010 110 111 101 100

00 01 11 10

E X D C D

B A

Tableau de Karnaugh 6 variables


F C X DE AB 00 01 11 10 X DE AB 00 01 11 10 00 01 11 10 AB 00 111 01 101 11 10 F X E D F 100 X DE 00 01 11 10 110 00 01 11 10 AB 00 01 11 10 011 010 0 X DE 00 01 11 10 X ABC DEF 000 001 011 010 110 111 101 100 1

000 001

Remarque : il peut exister des tats indiffrents (nots X). Ces tats correspondent des combinaisons dentre impossibles. On les remplacera par 1 ou 0 de faon avoir la simplication la plus optimale ; on peut utiliser une meme case plusieurs fois, puisque x + x + x + + x = x.

4.6.3

Mthodes algorithmiques

Au del de 6 variables, on utilise des mthodes algorithmiques (mthode de Ruine).

c M. Siadat & C. Diou

Cours dlectronique numrique

35

4.6. Simplication dexpressions logiques

36

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 5
Les circuits combinatoires

Charles Babbage 26 dc. 1791, Teignmouth, R.-U. 1871, London, R.-U.

5.1

Circuits logiques combinatoires usuels

Circuit combinatoire : circuit dont les sorties dpendent uniquement de la combinaison des tats des entres linstant de lobservation.

5.1.1
A

Circuits de transcodage (codeurs, dcodeurs, convertisseurs)

Codeur (encodeur)

Circuit M=2N entres et N sorties qui code en binaire le rang de la seule entre active.
V A0 S0 S1 S2

une seule entre active la fois

A1 A2

reprsentation en sortie sur N bits

A m-1

n-1

37

5.1. Circuits logiques combinatoires usuels

Exemple :
Codeur dcimal-DCB : 10 entres, 4 sorties
0 1 2 3 4 5 6 7 8 9

S S S

1 2 3

A9 1 1 1 1 1 1 1 1 1 0

A8 1 1 1 1 1 1 1 1 0 1

A7 1 1 1 1 1 1 1 0 1 1

A6 1 1 1 1 1 1 0 1 1 1

A5 1 1 1 1 1 0 1 1 1 1

A4 1 1 1 1 0 1 1 1 1 1

A3 1 1 1 0 1 1 1 1 1 1

A2 1 1 0 1 1 1 1 1 1 1

A1 1 0 1 1 1 1 1 1 1 1

A0 0 1 1 1 1 1 1 1 1 1

S3 0 0 0 0 0 0 0 0 1 1

S2 0 0 0 0 1 1 1 1 0 0

S1 0 0 1 1 0 0 1 1 0 0

S0 0 1 0 1 0 1 0 1 0 1

Application : codeur de clavier numrique


0 1 2

reprsentation DCB
9

Remarque : Les codeurs de priorits sont une version modie du codeur : quand deux entres sont actives, cest lentre correspondant au nombre le plus haut qui est choisi.

Dcodeur

Le dcodeur est un circuit qui tablit la correspondance entre un code dentre sur N bits et M lignes de sortie (M 2N ).

38

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 5 : Les circuits combinatoires

Pour chacune des combinaisons dentre, une seule ligne de sortie est valide. Exemple :
Dcodeur DCB-dcimal : 4 entres, 10 sorties.
Remarque : La plupart des dcodeurs sont dots dune ou plusieurs entres de validation qui comandent son fonctionnement.

Applications des dcodeurs 1 : Adressage dune mmoire


ligne 0 ligne 1 ligne i 10 lignes adresse i autorisation accs mmoire ligne 1023 8 lignes de donnes
0 1 1 0 1 1 1 1

0 1 1 0 1 1 1 1

une mmoire est un tableau dlments binaires (diviss en lignes et colonnes) ; pour lire un mot mmoire, il faut lui envoyer le numro de ligne souhait (adresse) ; souvent, le dcodeur est interne la mmoire. 2 : Gnration de fonction Toute fonction logique peut tre ralise partir dune combinaison de dcodeur. Exemple :
F=ABC+ABC+AB+C
Remarque : Il nest pas ncessaire de simplier la fonction avant la ralisation.

Mise en cascade des dcodeurs Utilisation de lentre de validation.

c M. Siadat & C. Diou

Cours dlectronique numrique

39

5.1. Circuits logiques combinatoires usuels

Exemple :
Raliser un dcodeur 3 entres en utilisant 2 dcodeurs 2 entres.
e0 e 1 V s e0 e 1 e 2 V s4 s5 s6 s7

s0 s1 s2 s3

Raliser un dcodeur 16 sorties laide de dcodeurs 4 sorties.

Transcodeurs (convertisseurs)

Circuit p entres et k sorties qui convertit un nombre crit dans un code C1 en un nombre crit dans un code C2. Exemple :
Code binaire code Gray Code DCB code afchage chiffre (dcodeur 7 segments)

5.1.2
A

Multiplexeursdmultiplexeurs

Multiplexeurs (MUX)

Circuit 2n entres dinformations, n entres de slection, et une sortie. Il permet laiguillage de lune de ces entres vers la sortie. Exemple :
MUX 2 entres de donnes
sel E 0 E 1

MUX

E1 X X

E0 X X

sel 0 1

out E0 E1

out

S=sel.E0 + sel.E1

Remarque : La table de vrit devient rapidement trs importante ( partir de 4 entres). On exprime alors la

40

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 5 : Les circuits combinatoires

fonction de sortie directement

Exemple :
MUX 4 entres ( 2 entres de slection a1 a0 ) S=a1 .a0 .E0 + a1 .a0 .E1 +

Application des MUX 1. Conversion paralllesrie : on place successivement les valeurs 00, 01, 10, 11 sur a1 a0 .
1 1 0 1

S=1011

a1 a0
0 0 1 1 0 1 0 1

Ralis par un compteur

2. Gnrateur de fonctions : toute fonction logique peut tre ralise partir des MUX. Les entres de slection (commande) sont alors les variables de la fonction. 3. Slection de mots : le MUX est ralis partir de n MUX 2 entres travaillant avec la mme commande de slection.
Source info 1 Ex: clavier n bits Source info 2 Ex: lecteur de disquettes n bits

slection

MUX aiguillage

n bits

destination

Remarque : Intrt : il nest pas ncessaire de simplier la fonction avant de la raliser.

Exemple :
F = ABC + ABC Utilisation de MUX 8 vers 1. S = ABCE0 + ABCE1 + + ABCE4 +

c M. Siadat & C. Diou

Cours dlectronique numrique

41

5.1. Circuits logiques combinatoires usuels

Dmultiplexeurs (DEMUX)

Circuit 2n sorties, 1 entre dinformation, n entres de commande. Il permet laguillage dinformation de lentre vers lune des sorties.
Remarque : Le MUXDEMUX est un circuit programmable : les relations entre entres et sorties sont modiables.

Exemple :
Transmission avec multiplexage/dmultiplexage.

source 0 MUX source n metteur voie de transmission rcepteur DEMUX

rcept. 0 rcept. n

5.1.3

Le comparateur

Il dtecte lgalit entre deux nombres A et B. Certains circuits permettent galement de dtecter si A est suprieur ou bien infrieur B. A Comparateur de 2 e.b. ai 0 0 1 1 bi 0 1 0 1 Ei 1 0 0 1 Si 0 0 1 0 Ii 0 1 0 0 Ei = Si = Ii = Di = ai =bi ai >bi ai <bi ai =bi = ab = a.b = a.b = ab

42

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 5 : Les circuits combinatoires

Comparateur de 2 nombres
E

S3 a3 b3
E

E3 I
3

A<B

S2 a2 b2
E

E2 I
2

A>B

S1 a1 b1 E1 I
1

A=B

5.1.4

Lunit arithmtique et logique (UAL)

Utilise dans pratiquement tous les systmes informatiques, elle ralise des oprations arithmtiques (addition, soustraction, etc.) et logiques (ET, OU, etc.). Cest un circuit programmable : les relations entre les donnes en sortie et les donnes en entre sont modiables.

A
4

oprandes

B C0
4

slection opration

S0 S1 S2 S3 M C4

rsultat

PG

Les sorties P et G servent la mise en cascade des ALUs, et donc au calcul de retenue anticipe.

c M. Siadat & C. Diou

Cours dlectronique numrique

43

5.2. Synthse des circuits combinatoires

C0

C0

C0

C0

PG C0 C4

PG C8

PG C12

PG

Gnrateur de retenue anticipe

5.2
5.2.1

Synthse des circuits combinatoires


Prsentation
Si le nombre de variables mises en uvre est faible (typiquement infrieur 10), les circuits sont raliss directement laide de la table de vrit, ventuellement aprs simplication de la fonction logique. Dans le cas contraire, la fonction est dcompose en diffrents blocs fonctionnels analyss sparment. Le choix des composants utiliss est bas sur diffrents critres : nombre de boitiers, cot, disponibilit, points test, complexit des connexions, etc. Les diffrents choix sont : a) utilisation de portes simples (OU, ET, NON) ou des portes NON-OU et NONET ; b) dveloppement de circuits intgrs (CI) spcialiss. Le problme du cot de dveloppement et de fabrication impose une production en trs grandes sries ; c) utilisation de circuits intgrs combinatoires : MUX, DEMUX ; dcodeurs ; circuits logiques programmables : PROM, PAL, etc.

Cahier des charges

Analyse du problme Choix dune technologie Choix des composants Etablissement du schma

Protoype dessai

Ralisation finale

44

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 5 : Les circuits combinatoires

5.2.2
A

Circuits logiques programmables

Introduction

La ralisation pratique dun systme logique dit cbl consiste utiliser les composants CI disponibles sur le march. Cela oblige le concepteur dcomposer un systme donn en blocs fonctionnels proposs par les constructeurs et optimiser son choix. Lapparition des circuits adaptables dits programmables par le constructeur ou lutilisateur apporte une solution ce problme. B Structure des circuits logiques programmables

Toute fonction logique de n variables peut se mettre sous la forme dune somme de produits. Cela implique que toute fonction logique peut tre ralise par lutilisation dune structure comportant deux ensembles fonctionnels : un ensemble doprateurs ET organiss sous forme de matrice permet de gnrer les produits des variables dentre ; un ensemble doprateurs OU permet de sommer les produits. La programmation de ces circuits est possible grce des fusibles placs chaque noeud, et consiste griller les fusibles de manire supprimer le contact entre les lignes. 1. PROM (Programmable Read-Only Memory) ou PLE (Programmable Logic Element) Contrairement au FPLA dont les deux matrices sont programmables (cf. section c ?? page ??), les structures de type PROM voient leur matrice ET ge en usine, formant les 2n fonctions possibles des n entres. La matrice OU reste quant elle entirement programmable. chaque sortie de la mmoire correspond une fonction (sortie 3 tats) ; la matrice ET correspond en fait un dcodeur n 2n (dcodeur dadresse) ; une fonction est ralise en programmant sa table de vrit, cest--dire en mettant en mmoire la valeur de f pour lensemble des combinaisons des entres.
e1 e2

en

s1 s2

sm

: interconnexion non programme

: interconnexion programme

c M. Siadat & C. Diou

Cours dlectronique numrique

45

5.2. Synthse des circuits combinatoires

Exemple :
Raliser le circuit N N 2 (N : nombre cod en DCB sur 4 bits) laide de la PROM suivante (PROM 6 entres et 8 sorties capacit de 26 = 64 octets) :

A0 A1 A2 A3 0 0

Dcodage dadresse (matrice ET fixe) S S S S S S S S


7 6 5 4 3 2 1

2. PAL (Programmable Array Logic) La structure des PAL est oppose celle des PROM : la matrice OU est ge alors que la matrice ET est programmable. Les circuits PAL existent galement en logique squentielle.
s1 s2 e1 e2

en

sm

3. FPLA (Field Programmable Logic Array) : matrice OU et ET programmable

46

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 5 : Les circuits combinatoires

e1 e2

Exemple :
A B C

en

s1 s2

s1 s2 sm

sm

La structure des FPLA autorise une trs grande souplesse dans la programmation. Par consquent, cest le circuit le plus souvent propos pour la ralisation des fonctions logiques.

S1 = A + BC S2 = ABC S3 = AC

5.2.3

Programmation des circuits logiques programmables

Les PROMs et PALs se programment assez facilement avec des programmateurs universels standards dans lesquels est incorpor un module spcique pour chaque constructeur ; les FPLAs ncessitent des programmateurs plus sophistiqus cause des doubles matrices programmer.

c M. Siadat & C. Diou

Cours dlectronique numrique

47

5.2. Synthse des circuits combinatoires

48

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 6
Fonctions et oprateurs arithmtiques

John von Neumann 28 dc. 1903, Budapest, Hongrie 8 fv. 1957, Washington DC, E.-U.

49

50

Cours dlectronique numrique

c M. Siadat & C. Diou

Troisime partie

Les circuits squentiels

51

Chapitre 7
Les bascules
Alan Mathison Turing 23 juin 1912, Londres, R.-U. 8 juin 1954, R.-U.

7.1

Introduction

Circuit squentiel : circuit dont ltat des sorties dpend non seulement des entres mais galement de ltat antrieur des sorties. Ces circuits doivent donc tre capables de mmoriser. Exemple :
1 2 M=0 L=0 A=0 M=1 L=1 A=0 3 4 M=0 L=1 A=0 M=0 L=0 A=1 5 M=0 L=0 A=0

Dans un tel systme, une mme combinaison des variables dentre ne correspond pas toujours la mme valeur la sortie (3 et 5). La fonctionnalit dpend de lordre des oprations (ordre de droulement des squence) systme squentiel. Les fonctions squentielles de base sont : mmorisation ; comptage ; dcalage. Les circuits squentiels fondamentaux sont : bascules (3 types) ;

53

7.2. Bascule RS

compteurs ; registres ; RAM (Random Access Memory). Ces circuits peuvent travailler soit en mode synchrone, soit en mode asynchrone : mode asynchrone tout moment, les signaux dentre peuvent provoquer le changement dtat des sorties (aprs un certain retard quon appelle temps de rponse . Ces systmes sont difciles concevoir et dpanner. mode synchrone Le moment exact o les sorties peut changer dtat est command par un signal dhorloge (train dondes carres ou rectangulaires). Les changements dtat seffectuent tous pendant une transition appele front (montant ou descendant). La majorit des systmes numriques squentiels sont synchrones mme si certaines parties peuvent tre asynchrone (ex. : reset). Les avantages principaux du mode synchrone sont : prparer les entres sans perturber les sorties ; protger des parasites survenant en entre. Les bascules que lon peut considrer comme des mmoires lmentaires, sont les briques de base des circuits squentiels. Ce sont les circuits de mmorisation les plus rpandus dans les systmes numriques en raison de leur rapidit de fonctionnement, de la facilit dcriture et de lecture dinformation, et de la grande simplicit de leur interconnexion avec des portes logiques. On trouve deux grandes familles de bascules : bascules de mmorisation : elles possdent les commandes de mise zro, mise un, mmorisation ; bascules de comptage : elles possdent en outre une commande de changement dtat.

7.2

Bascule RS

La bascule RS est le circuit squentiel le plus simple. Son rle consiste mmoriser une information fugitive.

Symbole
R : reset S : set

54

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 7 : Les bascules

Diagramme temporel
Quand une impulsion est applique 1 entre pour imposer un certain tat la bascule, celle-ci demeure dans cet tat, mme aprs que limpulsion ait disparu. Q garde son tat lorsque S passe de 1 0 et lorsque R passe de 1 0.

Table de vrit
S 0 0 0 0 1 1 1 1 R 0 0 1 1 0 0 1 1 Qt 0 1 0 1 0 1 0 1 Q+ 0 1 0 0 1 1 X X

S 0 0 1 1

R 0 1 0 1

Q+ Q 0 1 X

mmorisation mise 0 mise 1 interdit

Tableau de Karnaugh
S Q Q 0 1 0 0 R X X 1 1

Si X=1 Q=S+R.Q (avec priorit de mise 1).

somme de produit ralisation laide de portes NAND. Si X=0 Q=R.(S+Q) (avec priorit de mise 0).

produit de sommes ralisation laide de portes NOR.


Remarque : Dans les deux cas, lorsquon passe de ltat (R,S)=(1,1) (R,S)=(0,0) en passant soit par ltat stable correspondant (R,S)=(1,0), soit par ltat stable correspondant (R,S)=(0,1), selon la rapidit relative des passages 01 de chacun des signaux, alors la sortie peut prendre aussi

c M. Siadat & C. Diou

Cours dlectronique numrique

55

7.2. Bascule RS

bien ltat Q=1 que Q=0.

il faut donc interdire la combinaison R=S=1 an de lever lambigut pour un tat R=S=0 venant aprs un tat R=S=1.

Fonctionnement de la bascule avec des NOR


quand R=S=0, il y a deux possibilits et nous verrons que ltat pris par la bascule dpend des valeurs appliques prcdemment aux entres :

si Q = 0 G = 1 et Q = 0 S=0 si Q = 1 G = 0 et Q = 1

S=0

memorisation

Examinons si S :01 et R=0 Si Q=0 larrive de limpulsion sur S, alors S = 1 Q = 0 Q = 1

Si Q=1 larrive de limpulsion sur S, alors S = 1 Q = 0 Q reste 1 lapplication dune impulsion de niveau haut sur S place la bascule dans ltat Q=1. opration de mise 1 SET Si on applique R :01 et S=0 R :01 Si Q=0 Q=0 Q = 1 R :01 Si Q=1 Q=0 Q = 1 lapplication dune impulsion de niveau haut sur R place la bascule dans ltat Q=0. opration de mise 0 RESET R=S=1 Q=Q=0 condition indsirable, puisque Q et Q doivent tre linverse lun de lautre de plus, incertitude lorsque S et R reveiennent 0 R=S=1 ne doit pas servir

56

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 7 : Les bascules

7.3

Bascule RS synchrone

Symbole

Ralisation

Table de vrit
S X 0 0 1 1 R X 0 1 0 1 H

QN+1 QN QN 1 0 X

La sortie est indice est vaut QN avant le front de lhorloge et QN+1 aprs le front de lhorloge. S et R ninuencent pas Q sauf pendant les quelques nanosecondes durant lesquelles CLK passe du niveau bas au niveau haut (pour les circuits actifs sur front montant). Exemple :

7.4

Bascule JK

Les bascules JK sont seulement en fonctionnement synchrone. Elles sont plus polyvalentes que les basculent RS, car elles nont pas dtat ambigu et R = S = 1 QN+1 = QN

c M. Siadat & C. Diou

Cours dlectronique numrique

57

7.4. Bascule JK

Symbole

Ralisation

Table de vrit
J X 0 1 0 1 K X 0 0 1 1 H

QN+1 QN QN 1 0 QN

mmorisation forage 1 forage 0 commutation

Remarque : Pour que le basculement fonctionne, il faut avoir H trs troite, autrement il y a rebasculement.

Tableau de Karnaugh et fonction logique


K QN+1 QN 0 1 1 1 J 1 0 0 0

QN+1 = J.QN + K.QN Les bascules JK sont trs courantes dans les systmes numriques Exemple :

58

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 7 : Les bascules

7.5

Bascule D synchrone

Symbole

Table de vrit
H

DN 1 0

QN+1 1 0

QN+1 prend la valeur de DN aprs le front actif : QN+1 = DN Cest une bascule de recopie : on lemploie seulement en synchrone.

Ralisation

Idem pour la ralisation partir des JK.


Remarque : La sortie Q nest gale lentre D qu des moments bien prcis le signal Q est diffrent du signal D.

7.6

Bascule verrouillage (latch)

Symbole Fonctionnement
quand CLK=0 lentre D na aucun effet (mmorise) ; quand CLK=1 Q suit les changements de D la bascule est transparente.
Remarque : Notez labsence du symbole sur lentre CLK.

c M. Siadat & C. Diou

Cours dlectronique numrique

59

7.7. Bascule T

7.7

Bascule T

Symbole

Table de vrit
T 0 1 QN+1 QN QN

Cette bascule est utilisable uniquement en mode synchrone. Elle sobtient par exemple partir dune bascule JK.

7.8

Entres prioritaires asynchrones des bascules

La plupart des bascules synchrones possdent des entres prioritaires. Elles agissent indpendamment de lhorloge et des entres synchrones des bascules. Elles servent forcer, tout moment, la mise 1 ou 0 de la bascule, quelles que soient les conditions dentre. Exemple :
Preset 1 0 1 0 Clear 1 1 0 0 Q fonctionnement normal 1 0 ambigu, interdit

Les entres asynchrones peuvent tre vraies ltat bas (cas le plus frquent) ou ltat haut. En gnral, on applique juste une impulsion ces entres pour faire une initialisation. Dsignations synonymes : Clear RAZ Reset DC Clear
Remarque : Les entres synchrones sont des niveaux de tension continue

Preset RAU Set DC Set

60

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 7 : Les bascules

7.9

Applications des bascules

7.9.1

Mmoire

mmorisation dune information fugitive Exemple :


Mmorisation dune commande de marche

7.9.2

Antirebond pour commutateur


Exemple :

7.9.3

Synchronisation
Exemple :

Solution :

c M. Siadat & C. Diou

Cours dlectronique numrique

61

7.9. Applications des bascules

7.9.4

Dtection dune squence dentre


Exemple :

Solution :

dtection du sens de rotation dun moteur.

7.9.5

Division de frquence

La division de frquence par 2 (et donc 2N ) peut tre ralise facilement laide des diffrents registres. Bascule D DN =QN+1 . On veut QN+1 =QN DN = QN

Bascule JK

Bascule RS

62

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 8
Registres : stockage et transfert de donnes

Richard Wesley Hamming 11 fv. 1915 Chicago, E.-U. 7 jan. 1998 Monterey, E.-U.

Registre : ensemble de n bascules synchronises permettant de stocker momentanment une information sur n bits.

8.1

Dnition

Un registre est un circuit constitu de n bascules synchronises permettant de stocker temporairement un mot binaire de n bits en vue de son transfert dans un autre circuit (pour traitement, afchage, mmorisation, etc.) Le schma dun tel systme comporte autant de bascules (de type D) que dlments binaires mmoriser. Toutes les bascules sont commandes par le mme signal dhorloge. Moyennant une interconnexion entre les cellules (les bascules D), un registre est capable doprer une translation des chiffres du nombre initialement stock. Le dplacement seffectue soit vers la droite soit vers la gauche. Le registre est alors appel registre dcalage . Applications : conversion srie-parallle dune information numrique ; oprations de multiplications et divisions par deux ; ligne retard numrique ; mmoires accs squentiel Registre universel : il rsume les diffrentes entres et sorties dun registre

63

8.2. Registre criture et lecture parallles

dcalage procurant tous les modes de fonctionnement possibles.

8.2

Registre criture et lecture parallles

Tous les bits du mot traiter sont crits (entre criture E=1), ou lus, (entre lecture L=1), simultanment.

stockage en parallle et transfert en parallle dun mot de 4 bits.

8.3

Registre dcalage : criture srie et lecture srie

Aprs 4 pulsations de CLK, les 4 bits sont entrs dans le registre. Aprs 4 autres cycles dhorloge, les 4 bits sont dplacs vers la sortie. Leur application est essentiellement le calcul arithmtique binaire. CLK est alors lentre de dcalage.

64

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 8 : Registres : stockage et transfert de donnes

8.4

Registre dcalage : criture srie et lecture parallle

Lorsque lentre est stocke, chaque bit apparat simultanment sur les lignes de sortie. Le registre dcalage est utilis comme convertisseur srie-parallle. Il est ncessaire la rception lors dune transmission srie.

8.5

Registre dcalage : criture parallle et lecture srie

Utilis comme convertisseur parallle-srie, il est ncessaire lmission lors dune transmission srie.

c M. Siadat & C. Diou

Cours dlectronique numrique

65

8.5. Registre dcalage : criture parallle et lecture srie

66

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 9
Les compteurs
Claude Elwood Shannon 30 avr. 1916, Gaylord, E.-U. 24 fv. 2001, Medford, E.-U.

Compteur : circuit squentiel dcrivant un cycle de comptage rgulier ou quelconque.

9.1
9.1.1

Compteur asynchrone ( propagation)


Compteur asynchrone cycle rgulier
Exemple :
Compteur asynchrone 4 bits (compte de 0 15).

a) Ralisation laide de bascules JK

La sortie de chaque bascule agit comme le signal dhorloge de la suivante. Fonctionnement J=K=1 ; toutes les bascules commutent sur des fronts descendants ; la bascule A commute chaque front descendant du signal dhorloge ; la sortie de la bascule 1 sert dhorloge pour la bascule 2 B commute chaque

67

9.1. Compteur asynchrone ( propagation)

fois que A passe de 1 0 ; de la mme manire, C commute lorsque B passe de 1 0, et D commute lorsque C passe de 1 0. b) Table dimplication squentielle Elle montre les tats binaires pris par les bascules aprs chaque front descendant. N 0 1 2 3 4 5 . . . 15 16 . . . D 0 0 0 0 0 0 . . . 1 0 . . . C 0 0 0 0 1 1 . . . 1 0 . . . B 0 0 1 1 0 0 . . . 1 0 . . . A 0 1 0 1 0 1 . . . 1 0 . . .

Si on imagine que DCBA reprsente un nombre binaire, le compteur ralise la suite des nombres binaires allant de 0000 1111 (soit de 0 15). A prs la 15me impulsion, les bascules sont dans la condition 1111. Quand la 16me impulsion arrive, le compteur afche 0000 : un nouveau cycle commence. c) Chronogramme

chaque bascule divise par deux la frquence dhorloge qui alimente son entre finitale CLK : fD = . 16 Application : avec ce genre de circuit, on peut diviser la frquence initiale par nimporte quelle puissance de 2. d) Modulo cest le nombre dtat occups par le compteur pendant un cycle complet ; le modulo maximal dun compteur n bits (n bascules) est 2n ; ex. : compteur 4 bits 16 tats distincts modulo 16.

9.1.2

Compteur asynchrone modulo N < 2n ( cycle rgulier)

a) Mthode

68

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 9 : Les compteurs

Pour 2N-1 < N < 2N , on ralise un compteur modulo 2n (avec n bascules), puis on raccourcit le cycle en jouant sur les entres RAZ des bascules. Exemple :
Compteur asynchrone modulo 6 : 22 < 6 < 23 on ralise un compteur modulo 3 avec 3 bascules, et on ramne le compteur 000 ds que Q2 Q1 Q0 = 110.

ds que la sortie de la porte NAND passe 0, les bascules sont forces 0 : le compteur se remet compter partir de 0. le compteur ralis compte de 000 101 (de 0 5) puis recommence un nouveau cycle modulo 6

b) Table dimplication squentielle N 0 1 2 3 4 5 6 Q2 0 0 0 0 1 1 1 Q1 0 0 1 1 0 0 1 Q0 0 1 0 1 0 1 0

Q2 Q1 Q0 = 110 est un tat temporaire. Il existe mais pendant une dure trs courte. Cest un tat indsirable que lon nomme parfois glitch. c) Chronogramme

Remarque : Les sorties Q2 et Q1 ne sont pas des ondes carres.

9.1.3

Comptage asynchrone dans un ordre quelconque (cycle irrgulier)

1re mthode

c M. Siadat & C. Diou

Cours dlectronique numrique

69

9.1. Compteur asynchrone ( propagation)

On ralise un compteur de mme modulo, puis on transcode ses sorties pour obtenir le cycle demand. Exemple :
Cycle 2, 5, 6, 8, 4, 10

N 0 1 2 3 4 5

Q2 0 0 0 0 1 1

Q1 0 0 1 1 0 0

Q0 0 1 0 1 0 1

Q3 0 0 0 1 0 1

Q2 0 1 1 0 1 0

Q1 1 0 1 0 0 1

Q0 0 1 0 0 0 0

2 5 6 8 4 10

2me mthode Utilisation des entres RAZ et EAU. Exemple :


Cycle 0, 1, 2, 3, 5, 6, 8, 9, 11, 12, 15 : on ralise un compteur modulo 16 et on agit sur les RAU pour sauter les tapes.

9.1.4

Exemple de CI

Il existe de nombreuses puces en technologies TTL et CMOS. Parmi les plus populaires on trouve en TTL le 7493 qui est un compteur 4 bits, et en CMOS le 4024 qui est un compteur 7 bits.

Circuit interne

MR Master Reset.

70

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 9 : Les compteurs

9.1.5

Dcompteurs asynchrones

Il suft de piloter chaque entre CLK des bascules au moyen de la sortie complmente de la bascule prcdente. Exemple :
Dcompteur modulo 8

Chronogramme :

9.1.6

Inconvnients des compteurs asynchrones

Chaque bascule introduit un retard de tp (tp =25ns). Comme les retards sadditionnent, la nime bascule, on a un retard de ntp . utilisation limite en frquence, particulirement lorsque le nombre de bits est lev. les sorties ne changent pas dtat en mme temps, ce qui implique un problme dinterface avec des circuits rapides (temps de lecture infrieur au retard entre plusieurs bits).

9.2
9.2.1

Compteur synchrone (parallle)


Ralisation

Elle est possible avec des bascules JK, D ou T.

c M. Siadat & C. Diou

Cours dlectronique numrique

71

9.2. Compteur synchrone (parallle)

Exemple :
Ralisation dun compteur modulo 8 ( cycle complet) laide de bascules T Table dexcitation Q2 Q1 Q0 Q+ Q+ Q+ T2 T1 T0 2 1 0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 1 0 0 1 1 1 1 0 0 1 0 1 0 0 1 1 0 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 0 0 0 0 1 1 On constate que : T0 = 1 et T1 =Q0 et T2 =Q1 Q0

9.2.2

Exemples de circuit intgr

Compteur pr-rglable 74160 (74161, 74162, 74163) ltat initial du compteur est rglable laide des entres D1 , D2 , D3 , D4 ; validation : elle permet de verrouiller le compteur.

Circuit 74160 74161 74162 74163

Comptage synchr. DCB synchr. bin. synchr. DCB synchr. bin.

Chargement synchrone synchrone synchrone synchrone

RAZ asynchrone asynchrone synchrone synchrone

RAZ synchrone : indpendant de lhorloge. RAZ asynchrone : 000 est obtenu au coup dhorloge suivant linstant ou clear est port ltat actif 0.

72

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 9 : Les compteurs

Compteur rversible pr-rglable 74193

MR : entre de rinitialisation asynchrone Q0 . . . Q3 : sorties des bascules P0 . . . P3 : entre des donnes parallles PL : entre de chargement asynchrone CPU : entre du signal dhorloge de comptage CPD : entre du signal dhorloge de dcomptage EC : valide le comptage ED : valide le dcomptage

Remarque : Toutes les commandes agissant sur le comptage sont regroupes sur la gure ci-dessous :

9.2.3
A

Applications

Compteur de frquence

Circuit qui mesure et afche la frquence dun signal impulsionnel (mesure de frquence inconnue).

Principe dun compteur de frquence : dure pendant laquelle les impulsions sont comptes

c M. Siadat & C. Diou

Cours dlectronique numrique

73

9.2. Compteur synchrone (parallle)

: RAZ met le compteur zro :f=


Remarque : Le compteur est un montage en cascade de compteurs DCB, chacun ayant une unit dcodeur/afcheur (afchage dcimal). La prcision de cette mthode est fonction de lintervalle dchantillonnage.
contenu t2 t1

Horloge numrique

74

Cours dlectronique numrique

c M. Siadat & C. Diou

Chapitre 10
Mthodes dtude des circuits squentiels

Charles Lutwidge Dodgson ou Lewis Carroll 1832-1898

De nombreux outils permettent danalyser le fonctionnement et/ou de prvoir lvolution dun systme squentiel : 1) Mthodes descriptives : a) les tables dtat : elles donnent ltat futur des sorties pour les lments de m+ moire inclus dans les systmes et ltat des sorties : A B S S ; b) les diagrammes des temps (chronogrammes) : ils dcrivent la succession des signaux dentre, des tats des lments de mmoire. Ils reprsentent la succession des tats logiques en fonction du temps. 2) Les diagrammes dtats ou graphes : ce sont des reprsentations formelles avec nuds et ches pour reprsenter les tats stables et les transitions. Le graphe donne une image gomtrique dune table de vrit. 3) Le grafcet : automatismes industriels : tape transition tape. 4) Les thories formelles : quations qui reprsentent laction effectuer et ltat futur dun lment de mmoire en fonction des entres et de ltat prsent des mmoires.

75

You might also like