You are on page 1of 62

Chapitre 1 SYSTEMES DE NUMERATION ET OPERATIONS ARITHMETIQUES

ASYSTEMES DE NUMERATION :

Pour quune information numrique soit traite par un circuit, elle doit tre mise sous forme adapte celui-ci. Il y a lieu alors de choisir un systme de numration de base B (B un nombre entier naturel 2). De nombreux systmes de numration sont utiliss en technologie numrique. Les plus courants sont les systmes dcimal, binaire et hexadcimal.

- Les diffrents types de numration :


1- Systme Dcimal : Le systme dcimal comprend 10 chiffres qui sont 0,1,2,3,4,5,6,7,8,9. Ce systme est appel aussi systme base 10, il sest impos tout naturellement lHomme qui possde dix doigts. Exemple 1 : 2 5 7 = 2 . 1 0 2 + 5 . 10 1 + 7 . 10 0 Le 2 est le chiffre de poids le plus fort. Le 7 est le chiffre de poids le plus faible. Exemple 2 : 2745,214 = 2.103 + 7.102 + 4.101 + 5.100 + 2.10-1 + 1.10-2 + 4.10-3 De manire gnral, tout nombre est gale la somme de produits de chaque chiffre par le poids de son rang dans le nombre. 2- Systme Binaire : Le systme dcimal est difficile adapter aux systmes numriques. Par exemple, il est difficile de concevoir des quipements lectroniques qui puissent fonctionner avec dix niveaux de tensions diffrents. Par contre, il est trs facile dimaginer des systmes lectroniques qui fonctionnent seulement avec deux niveaux de tension. Cest le raison pour laquelle la plus part des systmes numriques ont recours au systme binaire (base 2) comme systme de numration. Dans le systme binaire, il ny a que deux chiffres possibles 0 et 1. Dans le systme binaire, le chiffre binaire est souvent abrg en bit. Exemple 1 : 1011 = 1.23 + 0.22 + 1.21 + 1.20 = 11(10)

Cours circuits Logiques

El Amjed HAJLAOUI

Exemple 2 : 1011,101 = 1.23 + 0.22 + 1.21 + 1.20 + 1.2-1 + 0.2-2 + 1.2-3 = 11.62510 3- Systme Hexadcimal : Le systme hexadcimal ou base 16 contient 16 chiffres qui sont les dix chiffres 0 9 plus les lettres A, B, C, D, E, F. Le tableau ci-dessous montre les quivalences entre les systmes hexadcimal, dcimal et binaire.
Hexadcimal 0 1 2 3 4 5 6 7 8 9 A B C D E F Dcimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Binaire 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Exemples : 356(16) = 3.162 + 5.161 + 6.160 = 854(10) 2AF(16) = 2.162 + 10.161 + 15.160 = 687(10) Notez dans le deuxime exemple quon a substitu A la valeur 10 et F la valeur 15.

- Les diffrent types de conversions


Il sagit de processus de conversion dun systme de base B1 un systme de base B2. 1- Conversion Binaire- Dcimal : Tout nombre binaire peut tre transform en son quivalent dcimal simplement en additionnant les poids des diverses positions o se trouve la valeur 1. Voici un exemple : 1 1 0 1 1

1.24 + 1.23 + 0.22 + 1.21 + 1.20 = 16+8+2+1 = 2710

Cours circuits Logiques

El Amjed HAJLAOUI

2- Conversion Dcimal- Binaire : Pour convertir un nombre dcimal en nombre binaire, on recourt la rpartition de la division par 2 du nombre dcimal convertir et au report des restes pour chaque division jusqu ce que le quotient soit 0. Le nombre binaire cherch est obtenu en crivant le premier reste la position du bit de poids le plus faible et le dernier reste la position du bit de poids le plus fort. Exemple : 25 2 1 12 2 0 6 0 2 3 1 Donc 2510 = 11001 3- Conversion Hexadcimal Dcimal : Un nombre hexadcimal peut tre converti en son quivalence dcimal en additionnant le produit de chaque chiffre du nombre hexadcimal par le poids correspondant. Exemple : 2AF16 = 2.162 + 10.161 + 15.160 = 512 +160 +15 = 68710 4-Conversion Dcimal - Hexadcimal : Pour convertir un nombre dcimal en nombre hexadcimal, on procde la division successive par 16. Exemple : 423 16 7 26 16 10 1 1 16 0 2 1 1 2 0

Donc 42310 = 1A716 On remarque que les restes suprieurs 9 exprims au moyen des lettres A F. 5- Conversion Hexadcimal Binaire La conversion dun nombre hexadcimal en nombre binaire ne pose aucun problme, puisque chaque chiffre hexadcimal est remplac par son quivalence binaire de 4 bits. Exemple : 9 F 1001 1111 2 0010 = 100111110010

Cours circuits Logiques

El Amjed HAJLAOUI

6- Conversion Binaire Hexadcimal Cette conversion est tout simplement linverse de la prcdente. Le nombre binaire est divis en groupe de 4 bits, puis on substitue chaque groupe son chiffre hexadcimal quivalent. Au besoin, on ajoute des 0 gauche pour obtenir un groupe de 4 bits. Exemple : 0011 1010 0110 3 A 6 = 3A616

B-

ARITHMETIQUE BINAIRE

- Ecriture dun nombre binaire signe


Un nombre binaire sign est compos par : Le nombre binaire en question ( grandeur exacte) Exemple : 4710 = 101111 Un bit de signe indique si le nombre est positif ou ngatif. Ce bit de signe est le premier bit gauche de lensemble de bits. Exemple : Nombre positif : +4710 = 0 1 0 1 1 1 1
Bit de signe grandeur = 4710 exacte

Nombre ngatif :

-4710 = 1

101111

Bit de grandeur = 4710 Signe exacte

Cette mthode prsente plusieurs inconvnients : - Pour effectuer une opration sur des entiers positifs et ngatifs, il faut tester systmatiquement le bit de signe. - Il est ncessaire de dfinir une opration de soustraction des valeurs absolues. - Il existe deux reprsentations du 0, qui peut tre interprt comme 0 positif ou ngatif. Cest pour ces raisons quon nutilise pas cette convention pour crire les nombres ngatifs, mais plutt la notation en complment 2, qui est dfinit de la faon suivante :

Complment 2 :
Le complment 2 dun nombre binaire sobtient en changeant chaque 0 par 1 et chaque 1 par 0( cette tape est appele complment 1) et en ajoutant 1 au bit de poids le plus faible. La notation en complment 2 est trs utile car avec, on peut faire une soustraction en effectuant en ralit une addition. Cela est trs important dans le cas des ordinateurs et les calculateurs, puisque avec les mmes circuits, on effectue ladition et la soustraction. Exemple : le complment 2 de 4510 = 101101 est : Le complment 1 : 010010 + 1 Le complment 2 : 010011 Remarque 1 : Pour revenir dun nombre complment 2 au nombre binaire initial, il faut de nouveau complmenter 2. Remarque 2 : En notation en complment 2 et avec N bits, on reprsente les nombres signs compris entre -2N-1 2N-1 -1 Cours circuits Logiques 4 El Amjed HAJLAOUI

A titre dexemple : pour N = 3 bits, on a :


Valeur Dcimal

-8=-23 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7=23 -1

Nombre Binaire Signe en Complment 2

1000 1001 1010 1011 1100 1101 1110 1111 0000 0001 0010 0011 0100 0101 0110 0111

- Addition Binaire
Trois cas peuvent se prsenter avec laddition binaire : Laddition de deux nombres positifs. Laddition de deux nombres de signes contraires. Laddition de deux nombres ngatifs. La mthode consiste crire les nombres positifs en notation exacte et remplacer les nombres ngatifs par leur complment 2 avant laddition. Si le rsultat est positif, il est en notation exacte, sil est ngatif, il est en notation complment 2. 1-Addition des nombres non signes Effectuons laddition des deux nombres suivants. Lcriture de laddition est la suivante : 1er nombre : +910 2me nombre : +410 Rsultat : 1001 0100 1101

REMARQUE TRES IMPORTANTE : Il faut sassurer que le rsultat se tient dans N bits, pour cela le rsultat doit se tenir dans lintervalle [0,2N -1], sinon, il y aura un dpassement et par consquence le rsultat est inexact. Exemple : 1er nombre : +910 1001 2me nombre : +810 1000 Rsultat 1 0001 dpassement

Cours circuits Logiques

El Amjed HAJLAOUI

2-Addition des nombres signes : Effectuons laddition des deux nombres suivants : 710 410 ; Comme 410 est un nombre ngatif, il faut le remplacer par son complment 2. Donc laddition est : 710 0111 410 1100 complment 2 de 4 1 0011 310

Dbordement liminer

Effectuons laddition des deux nombres suivants : -610 + -210 Comme -610 et -210 sont des nombres ngatifs, il faut les remplacer par leur complment 2. Donc laddition est : -610 1010 complment 2 de 6 -210 1110 complment 2 de 2 1 1000
Dbordement liminer

Le rsultat est un nombre ngatif, on doit prendre son complment 2. Le rsultat est donc en notation exacte 1000 = 810 en valeur absolue. REMARQUE TRES IMPORTANTE : En arithmtique signe sur N bits, il faut sassurer que le rsultat soit dans lintervalle [-2N-1 ,2N-1 -1], pour que le rsultat ne soit pas erron. Exemples : 1er nombre : +910 1001 2me nombre : -1 1111 complment 2 de 1 1 1000 le rsultat est ngatif, ce qui est absurde

1er nombre : 2me nombre :

Dbordement liminer -610 1010 complment 2 de 6 -310 1101 complment 2 de 3

1 0111 le rsultat est positif, ce qui est absurde


Dbordement liminer

N.B. : Avec laddition des nombres signs, le dbordement est toujours ignor.

-MILTIPLICATION BINAIRE
On multiplie les nombres binaires de la mme faon quon multiplie les nombres dcimaux. Voici un exemple de multiplication de nombres binaires non signs. 1 0 0 1 910 x 1 0 1 1 1110 1001 1001 0000 1001 1 1 0 0 0 1 1 9910

Cours circuits Logiques

El Amjed HAJLAOUI

dans cet exemple, les valeurs sont en notation binaire exacte et il ny a pas de bit de signe. La marche suivre est la mme que pour les multiplications dcimales. Les circuits numriques nadditionnent pas lensemble des produits partiels directement mais deux par deux : le premier avec le deuxime puis la somme obtenue avec le troisime et ainsi de suite. Cest ce quon illustre ci-aprs : 1 0 0 1 premier produit partiel 1 0 0 1 second produit partiel dcal vers la gauche 1 1 0 1 1 somme des deux premiers produits partiels 0000 troisime produit partiel dcal vers la gauche 0 1 1 0 1 1 somme des trois premiers produits partiels 1001 quatrime produit partiel dcal vers la gauche 1 1 0 0 0 1 1 somme des quatre produits partiels Si les nombres sont ngatifs, ce sont leurs complments 2 qui sont pris en considration avant la multiplication et le rsultat est en notation exacte. Si lun des nombres est ngatif, on prend son complment 2 avant la multiplication, le rsultat est le complment 2 du produit cherch. REMARQUE TRES IMPORTANTE : Il faut toujours sassurer que le rsultat se tient dans lintervalle [0,2N -1] avec des nombres non signs N bits, ou dans lintervalle [-2N-1 ,2N-1 -1] avec des nombres signs. 410 - - - - - - - 00100 -410 - - - - - - - 11100
Complment 2

-310 - - - - - - 11101
Complment 2

-310 - - - - - - - 11101
complment 2

Donc x 11101 00100


Complment 2 (en valeur absolue)

donc x 11100 11101

= 1 1 1 0 1 0 0 -------01100= 1210

=11001 0 1 1 0 0 = +1210

V- DIVISION BINAIRE
La division binaire est identique celle de la division de deux nombres dcimaux. Exemple : 110110 -1010 00111 -00000 1110 -1010 0100 Cours circuits Logiques 7 El Amjed HAJLAOUI

Soit 1101102 = 10102 x 1012 + 1002 Si les nombres sont signs, la division seffectue de la mme faon que la multiplication : Si les nombres sont ngatifs, on prend leurs complments 2 avant la division, le quotient est en notation exacte. Si lun des nombres est ngatif, on prend son complment 2 avant la division, le rsultat est le complment 2 du quotient cherch.

C- ARITHMETIQUE HEXADECIMALE
Les nombres hexadcimaux sont utiliss dans la programmation en langage machine, et aussi pour dsigner les adresses indiquant les cases mmoires.

- Addition Hexadcimal :
Ce type daddition est effectu de la mme faon que laddition dcimale, tout en notant que le chiffre le plus grand en hexadcimal est F. La procdure propose est celui-ci : Additionner les deux chiffres hexadcimaux comme des chiffres dcimaux, en remplaant mentalement les lettres par leurs quivalences. Si la somme 15, inscrire directement le chiffre hexadcimal. Si la somme 16, soustraire 16 et reporter 1 sur le rang gauche. Exemples : 58 + 34 -------= 8C 58 + 4B --------=A3 3AF +43C --------=7EB CAFE + CAF E ----------=195FC

- Soustraction Hexadcimale
On peut soustraire les nombres hexadcimaux en utilisant la mme mthode que celle pour les nombres binaires. Le diminuteur hexadcimal est complment 2 puis additionner au diminuante. 1re mthode : convertir le nombre hexadcimal en binaire, prendre le complment 2 de son quivalent binaire puis convertir le rsultat en hexadcimal. 2me mthode : soustraire chaque chiffre hexadcimal de F, puis ajouter 1. Exemples : 1re mthode : 7 3 A -------0111 0011 1010-------1000 1100 0110-------8 C 6
binaire

2me mthode :

complment 2

hexadcimal

F F F - 7 3 A --- --- --- soustraire chaque chiffre de F 8 C 5 + 1 additionner 1 -------------8 C 6 le complment 2 du nombre hexadcimal Cours circuits Logiques 8 El Amjed HAJLAOUI

Exercice : Effectuer la soustraction des deux nombres hexadcimaux suivants : 592 C5B = ?

D- Les Codes
Laction de faire correspondre des nombres, des lettres ou des mots, un groupe spcial de symboles sappelle codage. Ce groupe de symboles sappelle code.

-Code BCD (Binary Coded Decimal)


On reprsente chaque chiffre dun nombre dcimal par son quivalent binaire sur 4 bits comme le montre le tableau suivant. Code 0 1 2 3 4 5 6 7 8 9 Dcimal Code 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 BCD Quand on code en BCD, chaque chiffre individuel est remplac par son quivalent binaire. 8 7 4 dcimal Exemple : 1000 0111 0100 BCD

-Code Major de Trois


Le code major de trois dun nombre dcimal se calcule de la mme faon que le code BCD, sauf quon ajoute trois chaque chiffre dcimal avant doprer la conversion. Exemple : 4 9 +3 +3 --------7 12 0111 1100 Le tableau suivant donne la liste du code major de trois pour les dix chiffres dcimaux. 0 1 2 3 4 5 6 7 8 9 Code Dcimal 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 Code Major de 3

- Code de Gray
Cest un code qui appartient la catgorie des codes dit distance minimale, du fait qune reprsentation code ne diffre de celle qui la prcde que par un bit, comme le montre le tableau suivant :

Cours circuits Logiques

El Amjed HAJLAOUI

Dcimal Binaire Gray Dcimal Binaire Gray 0000 0000 1000 1100 0 8 0001 0001 1001 1101 1 9 0010 0011 1010 1111 2 10 0011 0010 1011 1110 3 11 0100 0110 1100 1010 4 12 0101 0111 1101 1011 5 13 0110 0101 1110 1001 6 14 0111 0100 1111 1000 7 15 Le code Gray sert souvent dans des situations o dautres codes, comme le code binaire, peuvent produire des rsultats ambigus quand il y a changement de plusieurs bits. Par exemple, en code binaire, quand on passe de 0111 1000 les 4 bits changent en mme temps. Cette transition effectue par le circuit en question, pourra occasionner un ou plusieurs tats intermdiaires. Donc, il peut arriver que par exemple le bit de poids le plus fort (ou un autre) change avant les autres, on observera les transitions suivantes : 0 1 1 1 chiffre 7 1 1 1 1 code erron 1 0 0 0 chiffre 8 Lapparition de 1111 qui est seulement temporaire, peut donner lieu un fonctionnement imprvisible des circuits contrls par ces bits. Avec le code de Gray, une telle situation est impossible puisquun seul bit est chang la fois au cours dune transition.

Cours circuits Logiques

10

El Amjed HAJLAOUI

CHAPITRE 2 ALGEBRE DE BOOLE ET PORTES LOGIQUES


Les circuits numriques fonctionnent en mode binaire, c'est--dire en mode dans lequel les tensions sont 0 ou 1. Cest une caractristique des circuits logiques qui font appel lalgbre de Boole pour lanalyse et la conception des circuits numriques. Lalgbre Boolenne se distingue de lalgbre ordinaire par des variables qui ne peuvent prendre que les deux valeurs possibles 0 et 1. Dans lalgbre de Boole, on ne trouve que trois oprations Boolennes lmentaires : Laddition logique, dite aussi OU. Le symbole de cette opration est (+). La multiplication logique, dite aussi ET. Le symbole de cette opration est (.). Linverse logique, dite aussi NON. Le symbole de cette opration est (---).

- La Porte OU (OR)
Soit deux variables logiques indpendantes, A et B. Laddition logique de ces deux variables donne : X = A + B Dans cette quation, le signe + nindique pas une addition ordinaire, mais plutt laddition logique (opration ou) dont les rgles sont dfinis dans la table de vrit ci-dessous : A 0 0 1 1 B 0 1 0 1 X=A+B 0 1 1 1

Le circuit lectronique qui ralise cette fonction est la porte OU (OR) ayant au moins deux entres et dont la sortie est gale la somme logique des entres.

Remarque : La mme discussion sapplique plus de deux entres. La figure ci-dessous montre une porte OU trois entre ainsi que table de vrit.

Cours circuits Logiques

11

El Amjed HAJLAOUI

A 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

C 0 1 0 1 0 1 0 1

X=A+B+C 0 1 1 1 1 1 1 1

-La porte ET (AND)


Si deux variables logiques A et B sont combines par la multiplication logique (ET), le rsultat sexprime ainsi : X = A . B Dans cette expression, le signe (.) signifie lopration boolenne ET, dont les rgles sont donnes dans la table de vrit ci-dessous : A 0 0 1 1 B 0 1 0 1 X= A. B 0 0 0 1

Le circuit lectronique ralisant cette fonction est la porte ET ayant au moins deux entres et dont la sortie est gale au produit logique des entres.

Remarque : Il exista des portes ET plus de deux entres. A titre dexemple la figure cidessous montre une porte ET trois entres. A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C X =A . B . C 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1

Cours circuits Logiques

12

El Amjed HAJLAOUI

- La Porte NON
Lopration NON, contrairement aux oprations prcdentes, ne concerne quune seule variable dentre. Si une variable A est soumise une opration NON, le rsultat X est donn par : X= Le circuit lectrique qui ralise cette fonction est linverseur ayant une seule entre. A X= 0 1 1 0

Tout circuit logique quelle que soit sa complexit, peut tre dcrit au moyen des oprations boolennes dj dcrites, car la porte ET, la porte OU et la porte inverseuse sont les circuits constitutifs lmentaire des systmes numriques.

V- Porte NI (NOR), Porte NON- ET (NAND)


En technique numrique, on retrouve trs souvent deux autres types de portes logiques : la porte NI et la porte NON ET. En ralit ces portes correspondent des combinaisons doprations lmentaires ET, OU et NON. 1- Porte NI (NOR) La porte NI est quivalente une porte OU suivie dun inverseur. Lexpression de sortie dune fonction NI est : X=A+B Le tableau de vrit ainsi que le symbole de la porte NI sont donns par le figure ci-dessous : A 0 0 1 1 B 0 1 0 1 A+B 0 1 1 1 A+B 1 0 0 0

Cours circuits Logiques

13

El Amjed HAJLAOUI

2- Porte NON ET (NAND) La porte NON ET est quivalent une porte ET suivie dun inverseur. Le symbole de la porte NON ET est :

V- Porte OU Exclusif (XOR), NI Exclusif (XNOR)


Deux circuits logiques spciaux interviennent souvent dans les systmes numriques : le circuit OU exclusif et le circuit NI exclusif. 1-OU exclusif (XOR) Cest une porte logique deux entres A, B. ces deux entres sont combines pour que la sortie soit gale : X=AB Le signe reprsente lopration OU exclusif. La table de vrit ainsi que le symbole dune porte OU exclusif sont donns par la figure cidessous : A B X=A (+) B 0 0 0 0 1 1 1 0 1 1 1 0

La porte OU exclusif produit en sortie un niveau Haut quand les signaux sur les deux entres sont opposs.

Cours circuits Logiques

14

El Amjed HAJLAOUI

2- NI exclusif : Le NI exclusif a un fonctionnement oppos celui du circuit OU exclusif. Le table de vrit ainsi que le symbole de la porte NI exclusif sont donns par la figure cidessous : A 0 0 1 1 B 0 1 0 1

AB 1 0 0 1

La porte NI produit en sortie un niveau Haut quand les deux entres sont identiques.

V-Thormes de Boole
1- Thormes pour une variable Ce tableau ci-dessous rsume le groupe des thormes une variable logique X : X .0 = 0 X.1 = X X+1 =1 X+0 =X

X .X = X X+X = X _ _ X. X = 0 X+X =1 2- Thormes pour plusieurs variables X+Y = Y+X X .Y = Y .X X +(Y+Z) = (X+Y) +Z =X+Y+Z X. (Y .Z) = (X. Y). Z =X .Y .Z X. (Y+Z) = X .Y + X .Z X +(Y .Z) = (X+Y). (X+Z) X+X. Y =X X. (X+Y) = X _ X + X .Y = X+Y Preuve : _ _ X + X .Y = X + X .Y + X. Y car X= X + X .Y _ _ = X+ Y. (X +X) = X .Y X. (X +Y)= X .Y 15 El Amjed HAJLAOUI

Cours circuits Logiques

3- Thormes de Morgan Deux des plus importants des thormes de lalgbre Boolenne sont donns par le mathmaticien DE MORGAN : _ _ X +Y = X. Y _ _ X .Y = X+Y Vrification : X 0 0 1 1 Y 0 1 0 1 ____ X+Y 1 0 0 0 _ _ X .Y 1 0 0 0 ____ X .Y 1 1 1 0 _ _ X+Y 1 1 1 0

VII - Simplification Algbrique


Les thormes de lalgbre de Boole tudis prcdemment peuvent nous tre dun grand secours pour simplifier une expression logique. Pour cela prenons quelques exemples : Exemple-1- : _ _ Z = A .B .C + A .BC + ABC _ _ =A .B(C+C) + A .B .C _ =A .B + A .B .C _ =A. (B+B .C) _ Daprs le thorme : X+X .Y = X+Y Z =A .(B+C) _ _ Exemple-2- : Z = (A+B). (A+B+D)D _ ___ _ _ _ _ _ _ _ = A. A .D +A .B .D+A .D. D+B .A .D +B .B .D +B .D .D 0 0 0 _ _ _ _ = A. B. D +B. A .D +B. D _ _ _ =B. D. (A+A)+B. D _ _ =B .D.(A+A+1) _ =B. D

Cours circuits Logiques

16

El Amjed HAJLAOUI

Exemple-3-:

_ _ _ _ Z= A. B+A. B+A. B _ _ _ =B. (A+A) +A .B _ _ =B + A .B _ _ __ =A+B car X + X. Y =X + Y

La simplification des expressions Boolennes, seffectue en appliquant les thormes de lalgbre de Boole. Parfois, il nest pas toujours facile de savoir quels thormes il faut utiliser, pour obtenir le rsultat, ou de savoir si lexpression simplifie est sous sa forme minimale, et quil ny a pas dautres simplifications possibles. Pour ces raisons, on utilise souvent le diagramme de KARNAUGH. 1-Diagrammme de Karnaugh : Le digramme de Karnaugh est un outil graphique qui permet de simplifier de manire mathmatique une expression Boolenne dun circuit logique. Les rgles suivre pour llaboration dun tableau de Karnaugh sont les suivantes : Le diagramme de Karnaugh dune fonction logique n variables est constitu dun rectangle divis en 2N cases. Chaque case correspond donc une combinaison de ltat logique que peut prendre la variable de sortie. Lordre des variables en abscisse et en ordonne est choisi de telle sorte que lorsquon passe dune case une case adjacente, une seule variable soit modifie (on codifie le tableau selon le code Gray). Le regroupement des cases doit tre gale une puissance de 2, soit 2, 4, 8cases. Pour le regroupement des cases priphriques, on suppose que le tableau est de forme cylindrique, et pour le regroupement des cases de coins, on peut supposer que le tableau la forme dune sphre.

2-Exemples a- Cas des deux variables _ B B _ A 1 A 0 0 1 _ _ X= A .B + A. B

Cours circuits Logiques

17

El Amjed HAJLAOUI

_ B B _ A 1 A 0 1 1 _ X =A + B

b- Cas des trois variables _ C C _ _ A .B _ A .B A .B _ A .B 0 1 1 0 0 0 0 0 _ X = B .C

_ C C _ _ A .B 0 _ A .B 1 A .B 0 _ A .B 0 0 1 0 0 X=C _ X=A.B

Cours circuits Logiques

18

El Amjed HAJLAOUI

_ C C _ _ A .B _ A .B A .B _ A .B 0 0 0 1 1 1 _ _ X= B . C

0 1 _ C C 0 C 0 1 0 1 0 0 1 _ _ X = A+B .C

_ _ A .B 1 _ _ A .B C 0 _ _ A .B 1 A .B 0 __ A .B 1 A .B 1 A .B _ A .B 0 0

c- Cas de quatre variables : _ _ _ _ C .D C .D C .D C .D _ _ A .B _ A .B A .B _ A .B 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 0

_ _ _ X = A. B .C .D + A .C D + B .D

_ _ _ _ C .D C .D C .D C .D _ _ A .B _ A .B A .B _ A .B 0 0 0 1 1 1 0 1 0 1 0 0 0 1 1 1

_ _ _ _ _ _ X =A. B. D +B. C .D + B. C .D +A .B .D

Cours circuits Logiques

19

El Amjed HAJLAOUI

_ _ _ _ C .D C .D C .D C .D _ _ A .B _ A .B A .B _ A .B 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1

_ _ X = B. D

_ _ _ _ C .D C .D C .D C .D _ _ A .B _ A .B A .B _ A .B 0 1 1 0 0 1 1 0 1 1 0 0 0 1 0 0

_ _ _ X= A. B +B .C +A. C .D

_ _ _ _ C .D C .D C .D C .D _ _ A .B _ A .B A .B _ A .B 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

_ X= B

_ _ _ _ C .D C .D C .D C .D _ _ A .B _ A .B A .B _ A .B 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0

_ X=C

Cours circuits Logiques

20

El Amjed HAJLAOUI

d- Cas de cinq variables _ _ _ _ C. D C. D C. D C. D _ _ _ A. B .E _ _ A. B .E _ A. B .E _ _ A. B .E _ A. B .E A. B .E _ A. B .E _ _ A. B .E 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 0 1 1 0 1 0 1 0 _ _ _ X= B. E + A .B .E. C + A. B. E

e- Cas de six variables _ _ _ _ _ _ _ _ _ _ _ _ C. D. F C. D. F C. D. F C. D. F C. D .F C. D. F C. D. F C. D. F _ _ _ A. B. E _ _ A. B. E _ A. B. E _ _ A. B. E _ A. B. E A. B. E _ A. B. E _ _ A. B. E 1 1 1 1 0 0 1 1 1 1 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 0 0 0

0 0 0 0 0 _ _ _ _ _ _ X= C. F. E + A. B. E. F + A. B. E .F + B. E. D. F

N.B: Pour plus de variables, il faut faire appel dautres mthodes.

Cours circuits Logiques

21

El Amjed HAJLAOUI

VIII - Conception de Circuits Logiques Combinatoires


Une fois lexpression logique de sortie est tablie par exemple partir dune table de vrit, on la simplifie en utilisant le diagramme de Karnaugh ou les thormes de Boole. A partir de cette expression simplifie, on peut construire le circuit logique correspondant. Exemple 1 : dterminer le circuit logique trois entres A, B, C de faon que la sortie X est haute quand au moins deux entres sont ltat Haut. La table de vrit est donc la suivante : A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 X 0 0 0 1 0 1 1 1 _ A. B. C _ A. B. C _ A. B. C

A. B. C _ _ _ Donc X = A. B .C + A. B .C + A. B .C + A. B .C Cette expression peut tre simplifi laide de diagramme de Karnaugh : _ C C 0 1 1 1

_ _ A. B 0 _ A. B 0 A. B 1 _ A. B 0

Donc X= A. B + A. C +B. C Exemple 2 : Dterminer le circuit logique quatre entres A, B, C, D,(dont les valeurs sont donnes au tableau suivant) qui donnent en sortie un niveau Haut quand le chiffre prsent sur les entres est suprieur 00110 = 610 A 0 0 0 B 0 0 0 C 0 0 1 D 0 1 0 X 0 0 0

Cours circuits Logiques

22

El Amjed HAJLAOUI

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

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

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

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

0 0 0 0 1 1 1 1 1 1 1 1 1 _ A. B. C. D _ _ _ A. B. C. D _ _ A. B. C. D _ _ A. B. C. D _ A. B. C. D _ _ A. B. C. D _ A. B. C. D _ A. B. C. D A. B. C. D

_ _ _ _ _ _ _ _ _ _ _ X = A .B .C .D+ A .B .C .D+ A .B .C .D+ A .B .C .D+ A .B .C .D+ A .B .C .D+ _ _ A .B .C .D+ A .B .C .D+ A .B .C .D En utilisant le diagramme de Karnaugh, on simplifie cette expression. _ _ _ _ C. D C. D C. D C. D _ _ A. B 0 0 0 0 _ A. B 0 0 1 0 A. B 1 1 1 1 _ A. B 1 1 1 1 _ X= A+ A .B C. D =A+ B. C. D Exemple 3 : la fin de lanne scolaire, un lyce examine le cas de chaque lve. Trois critres sont utiliss : Ayant une moyenne lexamen :M Est redoublant :R Ayant une bonne apprciation Le rglement de ltablissement est le suivant : 1- Tout lve qui a la moyenne passe au niveau suprieur.

Cours circuits Logiques

23

El Amjed HAJLAOUI

2-Tout redoublant qui na pas la moyenne est renvoy. 3-Tout lve non redoublant, qui na pas eu la moyenne mais ayant une bonne apprciation, est admis redoubler. 4-Tout lve non redoublant, qui na pas eu la moyenne et nayant pas de bonne apprciation est rorient. Dresser la table de vrit et crire lexpression logique de chaque cas du rglement du lyce en fonction des critres utiliss. M 0 0 0 0 1 1 1 1 R 0 0 1 1 0 0 1 1 B NIVEAU SUP RENVOYE REDOUBLE REORIENTE 0 0 0 0 1 1 0 0 1 0 0 0 1 0 0 1 0 1 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 1 1 0 0 0

Le diagramme de Karnaugh correspondant. __ RB __ M Reo M _ RB Red RB Renv _ RB Renv

N.Sup N.Sup N.Sup N.Sup On a : _ _ _ Reo = M. R. B _ _ Red = M. R. B _ Renv = M. R N.Sup = M

Cours circuits Logiques

24

El Amjed HAJLAOUI

CHAPITRE III DECODEURS - CODEURS MULTIPLEXEURS DEMULTIPLEXEURS


A- Dcodeurs - Dfinition
Un dcodeur est un circuit numrique qui a N entres et 2N sorties. Pour chacune des combinaisons possibles des entres, seule une ligne de sortie est valide (soit un niveau Haut, soit un niveau Bas selon le type du dcodeur).

N entres

2N sorties

Certains dcodeurs sont dots dune ou plusieurs entres de validation qui servent commander son fonctionnement. La figure ci-dessous nous montre lexemple dun dcodeur en CI (74138) trs utile, ayant trois voies dentre donc 23 = 8 voies de sortie (dcodeur 1 parmi 8). Remarquez que pour un code dentre donn, une seule sortie est vraie au niveau Bas. A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Q0 0 1 1 1 1 1 1 1 Q1 1 0 1 1 1 1 1 1 Q2 1 1 0 1 1 1 1 1 Q3 1 1 1 0 1 1 1 1 Q4 1 1 1 1 0 1 1 1 Q5 1 1 1 1 1 0 1 1 Q6 1 1 1 1 1 1 0 1 Q7 1 1 1 1 1 1 1 0

Les dcodeurs servent chaque fois quon a besoin dune sortie soit valide, quand une certaine combinaison de niveaux est prsente lentre. Ces niveaux dentre sont frquemment fournis par un compteur qui dnombre sans arrt les sorties du dcodeur et peuvent alors servir une tche de synchronisation ou de squencement pour mettre en marche ou en arrt diffrents dispositifs.

II- Dcodeur DCB- Dcimal


La figure ci-dessous montre le schma logique dun dcodeur DCB- dcimal (7442). Une sortie ne passe 0 quau moment o son entre correspondante DCB est applique. Par Cours circuits Logiques 25 El Amjed HAJLAOUI

exemple la sortie O5 ne devient au niveau Bas que lorsque les valeurs sur les entres sont DCBA = 0101.

A B C D Sortie active __ B B B B Q0 __ B B B H Q1 __ B B H B Q2 __ B B H H Q3 __ B H B B Q4 __ B H B H Q5 __ B H H B Q6 __ B H H H Q7 __ H B B B Q8 __ H B B H Q9 H B H B AUCUNE H B H H AUCUNE H H B B AUCUNE H H B H AUCUNE H H H B AUCUNE H H H H AUCUNE

Cours circuits Logiques

26

El Amjed HAJLAOUI

III- Dcodeur DCB- 7 segments


Un domaine dapplication considrable de dcodeurs est celui de la conversion de donnes binaires en une forme se prtant un affichage numrique. Les dix chiffres de 0 9 sont affichs au moyen dun afficheur 7segments. Ces symboles sont reprsents au moyen de 7 segments lumineux qui sont des diodes lectroluminescentes LED ou des cristaux liquides.

La table de vrit ci-dessus dtaillant le fonctionnement du dcodeur permettant un affichage des diffrents chiffres. Les variables dentre son crites en DCB : elles sont dcoder. Par exemple pour afficher le chiffre 6, il faut teindre les segments a et b, les autres sont allums. Le dcodeur 7446 et7447 ont t conus de faon allumer certains segments mme si le code dentre est suprieur 9 (1001).

B- Codeurs I- Dfinition
Le processus inverse du dcodage est le codage. Un codeur M voies dentre dont une seule est active lui correspond une reprsentation de sortie de N bits.

CODEUR

2N sorties N entres

II- Codeur DCB


Nous avons vu prcdemment le dcodeur DCB- dcimal qui fait correspondre un code de 4 bits une seule des dix voies de sortie possible. A linverse, un codeur dix voies dentre

Cours circuits Logiques

27

El Amjed HAJLAOUI

(les chiffres dcimaux) produit en sortie lquivalent binaire du chiffre dcimal correspondant cette entre. La table de vrit du codeur est la suivante : Chiffre E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 S3 S2 S1 S0 dcimal 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 1 0 0 0 0 0 0 0 0 0 1 0 3 0 0 0 1 0 0 0 0 0 0 0 0 1 1 4 0 0 0 0 1 0 0 0 0 0 0 1 0 0 5 0 0 0 0 0 1 0 0 0 0 0 1 0 1 6 0 0 0 0 0 0 1 0 0 0 0 1 1 0 7 0 0 0 0 0 0 0 1 0 0 0 1 1 1 8 0 0 0 0 0 0 0 0 1 0 1 0 0 0 9 0 0 0 0 0 0 0 0 0 1 1 0 0 1 Les quations logiques associes aux sorties sont: S0 = E1 + E3 + E5 + E7 + E9 S1 = E2 + E3 + E6 + E7 S2 = E4 + E5 + E6+ E7 S3 = E8 + E9 Limplantation du circuit logique correspondant ces quations est le suivant :

Lentre E0 nest pas relie car les sorties affichent 0000 lorsque toutes les autres entres sont ltat 0. Ce codeur ne fonctionne convenablement que si une seule entre est active la fois. Si deux entres sont actives simultanment 1 les entres E2 et E4 , on obtient en sortie le nombre binaire 0110, ce qui correspond au code binaire de lentre E6 . pour viter les erreurs, il faut utiliser un codeur de priorit.

C- Multiplexeur I- Dfinition
Un multiplexeur est circuit logique ayant plusieurs entres de donnes, mais seulement une sortie qui communique les donnes. Laiguillage des donnes dentre vers la sortie est command par les entres Select (ou entre dadresse).

Cours circuits Logiques

28

El Amjed HAJLAOUI

2n Entres

1 Sortie MUX

II- Exemples de Multiplexeurs


1- Multiplexeur 2 entres : Un multiplexeur 2 entres est un circuit logique qui est form de deux entres I0 et I1, et une seule entre de slection S.

Lexpression de sortie est donc : Z = I0 . S + I1 . S Quand S = 0 Z = I0 Ce qui implique que Z est identique au signal dentre I0 , signal qui peut tre au niveau logique permanent ou variable. Quand S =1 Z = I1 Ce qui montre que la sortie Z est identique lentre I1 . 2- Multiplexeur 4 entres Le mme principe de base sert construire un multiplexeur 4 entres comme celui de la figure ci- dessous.

S1 0 0 1 1 Cours circuits Logiques

S0 0 1 0 1 29

Sortie Z= I0 Z= I1 Z= I2 Z= I3 El Amjed HAJLAOUI

Dans ce cas, il y a 4 entres I0, I1, I2, I3 qui sont transmises la sortie selon le choix indiqu par lune des quatre combinaisons possibles des sorties de slection S0 S1. 3- Multiplexeur 8 entres La figure ci- dessous montre le schma dun multiplexeur huit entres (74151). E _ S2 S1 S0 Z X B B H H H H H H X B H B H B H B H H _ I0 _ I1 _ I2 _ I3 _ I4 _ I5 _ I6 _ I7 Z B I0 I1 I2 I3 I4 I5 I6 _ I7

H X B B B B B B B B B H B H B H B H

Cours circuits Logiques

30

El Amjed HAJLAOUI

Ce multiplexeur dispose dune entre de validation E et il fournit la sortie normale et la sortie complmente. Quand E = 0, les entres de slection S0, S1, S2 choisissent une entre de donne (I0 I7 ) qui se trouve la sortie Z. _ Quand E= 1, le multiplexeur est invalide de sorte que Z = 0, quel que soit le code dentre de slection, comme le montre le tableau de la figure ci- dessus.

III- Applications des Multiplexeurs


Les applications des multiplexeurs dans le domaine des techniques numriques sont nombreuses et varies. Nous citons les plus importantes. 1- Gnration dune fonction logique Il est possible dutiliser les multiplexeurs pour matrialiser directement les fonctions logiques partir dune table de vrit, sans devoir passer par le processus de simplification. Quand on utilise un multiplexeur cette fin, les entres de slection reoivent les variables logiques et chaque entre est raccorde en permanence 0 ou 1, de faon respecter la table de vrit. La figure ci-dessous montre comment on utilise un multiplexeur 8 entres pour matrialiser un circuit logique qui fonctionne conformment la table de vrit ci- dessous : C 0 0 0 0 1 1 1 1 Cours circuits Logiques B 0 0 1 1 0 0 1 1 A 0 1 0 1 0 1 0 1 Z 0 1 1 0 0 0 0 1 31 El Amjed HAJLAOUI

I0 I1

I2

I3 I4 I5 I6 I7

74151 MUX

Les variables A, B, C sont raccordes respectivement S0, S1, S2. La sortie Z doit tre 0 quand CBA= 000, donc lentre du multiplexeur I0 doit tre raccorde 0. De la mme faon, Z= 0 quand CBA = 011, 100, 101, 110, de sorte quand les entres I3 I4 I5 et I6 sont raccordes en permanence 0. La sortie Z= 1 quand CBA = 001, 010 et 111 de sorte que les entres I1, I2 et I7 du multiplexeur sont raccords en permanence 1. Il est facile de voir que la table de vrit 3 variables peut tre matrialise du moyen dun _ _ _ _ Multiplexeur 8 entres. Z = A .B. C + A. B. C + A. B. C 2-Conversion parallle- srie Dans de nombreuses applications numriques, le traitement des donnes binaire se fait en parallle (simultanment) parce que cest une technique plus rapide. Cependant, quand on doit transfrer ces donnes sur de longues distances, il nest pas souhaitable de fonctionner en parallle parce que cela exige un grand nombre de lignes de transmission. Cest la raison pour laquelle les donnes binaires sont souvent converties sous forme srie avant dtre transmises un endroit loign. Une des faons deffectuer la conversion parallle- srie consiste utiliser un multiplexeur de la manire illustre par la figure ci- dessous :

Cours circuits Logiques

32

El Amjed HAJLAOUI

X0 X1 X2 X3 X4 X5 X6 X7

74151
MULTIPLEXEUR 8 ENTREES

J CLK K

J CLK K

J CLK K

Les donnes sont prsentes sur les sorties du registre X et viennent alimenter le multiplexeur 8 entres. Un compteur 3 bits (Modulo- 8) sert produire les bits du code de slection S2 S1 S0, et ce code parcourt toutes les valeurs 000 111 quand les impulsions dhorloge sont appliques ce compteur. De cette faon, la sortie du multiplexeur sera X0 pendant la premire priode du signal dhorloge, X1 pendant la deuxime priode et ainsi de suite. La forme donde quon observe sur Z est une reprsentation srie de la donne dentre parallle. On remarque que le bit de poids faible X0 est transmis en premier et le bit de poids fort X7 est transmis en dernier. 3- Ordonnancement doprations Un Ordonnanceur est circuit qui respecte un circuit qui respecte une squence prtablie, et chaque tape de la squence, il met en marche une partie du procd physique. Un exemple dOrdonnanceur de commande est donn par la figure ci- dessous : _ Au dpart, le compteur est 0000, donc la sortie O0 du dcodeur gal 0 et toutes les autres _ _ sont 1, de sorte que les entres de lactionneur du procd sont toutes 0. La sortie Z= I0 = 1. Limpulsion DEBUT lance lopration dOrdonnancement et met dans le compteur ltat _ 001. la sortie O1 du dcodeur se trouve maintenant au niveau Bas, ce qui dclenche lactionneur 1 correspondant la premire tape du procd. Un peu plus tard, la sortie du capteur -1 passe 1, ce qui indique la fin de la premire tape. _ _ Ce niveau Haut se trouve prsent lentre I1 du multiplexeur donc Z = I1 . La valeur base _ de Z est applique lentre CLK du compteur qui sera incrment la valeur 010. _ La sortie O2 passe au niveau Bas, ce qui dclenche lactionneur -2 correspondant la seconde tape du procd. Quand cette tape est acheve, la sortie du capteur -2 passe au niveau Haut, _ Cours circuits Logiques 33 El Amjed HAJLAOUI

produisant ainsi un niveau Bas sur Z et faisant incrmenter le compteur la valeur 011. La mme chose se rpte pour chacun des autres tapes. A la fin de la septime tape, la sortie du compteur passe au niveau Haut amenant ainsi le compteur de 111 000, tat o il demeure jusqu ce quune autre impulsion DEBUT ramorce la squence. 4- Aiguillage des donnes Les multiplexeurs peuvent servir aiguiller les donnes entre plusieurs sources et une seule destination.

D- Dmultiplexeur I- Dfinition
Un dmultiplexeur est circuit logique qui a une seule entre et N voies de sortie. Il reoit les donnes dentre et choisit de les diriger vers une des N voies de sortie possibles, il fonctionne comme un commutateur.

Une Entre

DMultiplexeur

2n Sorties

II- Exemple
La figure ci-dessous montre un dmultiplexeur huit voies de sortie. La ligne dentre I est connecte aux huit portes ET, mais une seule de ces portes est valide par les entres SELECT.

Cours circuits Logiques

34

El Amjed HAJLAOUI

S2 0 0 0 0 1 1 1 1

S1 0 0 1 1 0 0 1 1

S0 0 1 0 1 0 1 0 1

O7 0 0 0 0 0 0 0 1

O6 0 0 0 0 0 0 1 0

O5 0 0 0 0 0 1 0 0

O4 0 0 0 0 1 0 0 0

O3 0 0 0 1 0 0 0 0

O2 0 0 1 0 0 0 0 0

O1 0 1 0 0 0 0 0 0

O0 1 0 0 0 0 0 0 0

Ce circuit dmultiplexeur est trs semblable celui du dcodeur dentre 3 voies et de sorties 8 voies, si on excepte le fait quune entre I a t ajout chaque porte. Or de nombreux dcodeurs intgrs ont une entre de validation. Ce genre de dcodeur peut donc servir de dmultiplexeur. Les entres du code ABC jouent le rle des entres SELECT et lentre de VALIDATION joue le rle dentre des donnes I. cest donc une des raisons pour laquelle les fabricants de CI donnent souvent le nom de dcodeur/ dmultiplexeur ce dispositif.

Cours circuits Logiques

35

El Amjed HAJLAOUI

CHAPITRE IV Les Circuits Arithmtiques


Les quatre oprations binaires : laddition, soustraction, la multiplication et la division peuvent tre effectues laide de manipulation sur laddition .Pour cet effet on utilise deux types de circuits, les demi- additionneurs et les additionneurs complets .

A- ADDITIONNEUR
DEMI-ADDITIONNEUR Cest un circuit qui fournit la somme et la retenue de deux chiffres binaires. Appelons A et B les deux variables dentre reprsentant les bits additionner. On a la table de vrit de laddition binaire : Ai 0 0 1 1 Bi 0 1 0 1 Si 0 1 1 0 Ri 0 0 0 1

On a donc daprs le tableau ci-dessus : Si = Ai .Bi+Ai .Bi Ri = Ai .Bi

Le demi-additionneur ne peut faire que laddition des deux chiffres de plus faible poids, puisquil ne peut pas prendre en compte la retenue qui provient dune colonne prcdente. Pour relever cette difficult on utilise ladditionneur complet ADDITIONNEUR COMPLET Cest un circuit qui fournit la somme et la retenue de deux chiffres binaires et de la retenue du rang prcdent. Pour cela ladditionneur complet est un circuit trois entres Ai, Bi et Ri-1(report prcdent) Et possdant toujours deux sorties somme Si et retenue Ri. La table de vrit de ladditionneur complet est la suivante:

Cours circuits Logiques

36

El Amjed HAJLAOUI

Ai 0 0 0 0 1 1 1 1

Bi 0 0 1 1 0 0 1 1

Ri-1 0 1 0 1 0 1 0 1

Si 0 1 1 0 1 0 0 1

Ri 0 0 0 1 0 1 1 1 Ai. Bi 1 1 Ai. Bi 0 1

Ri-1 Ri-1

Ai. Bi 0 0

Ai. Bi 0 1

Lexpression de la somme Si est alors : Si = Ai.Bi.Ri-1+Ai. Bi. Ri-1+Ai.Bi.Ri-1+Ai.Bi.Ri-1 Lexpression de la retenue Ri est : Ri=Ai.Bi.Ri-1+Ai.Bi.Ri-1+Ai.Bi.Ri-1+Ai.Bi.Ri-1 Cette expression peut se simplifier laide de diagramme de Karnaugh Ri = Ai. Bi+Bi. Ri-1+Qi.Ri-1 Donc limplantation de ladditionneur sera la suivante :

ADDTIONNEUR PARALLELE 1-ADDITIONNEUR PARALLELE A DEUX NOMBRES cet additionneur est capable de fournir laddition de deux nombres binaires. Pour cela il ncessite un additionneur complet (AC) pour chaque chiffre traiter.

Cours circuits Logiques

37

El Amjed HAJLAOUI

a0 b0 a1 b1 a2 b2

S0 S1

S2

a3 A S3 b3 A titre dexemple le 7483 est additionneur parallle 4 bits, dont le schma est le suivant. A3 A2 A1 A0 additionneur parallle de 4 bits 74LS83

C4

S3 S2 S1 S0 B3 B2 B1 B0 Il est possible de raccorder deux ou plusieurs additionneurs parallles en cascade afin dadditionner des nombres ayant un plus grand nombre de bits. A titre dillustration, la figure ci-dessous montre deux additionneurs 7483, qui sont relis de faon additionner deux nombres 8 bits. A7 A6 A5 A4 A3 A2 A1 A0 C8 Additionneur de 4 bits B7 B6 B5 B4 S7 S6 S5 S4 S3 S2 S1 S0 Additionneur de 4 bits B3 B2 B1 B0

Cours circuits Logiques

38

El Amjed HAJLAOUI

ADDITIONNEUR SERIE Dans ladditionneur srie, les chiffres additionner sont prsents squentiellement, cest dire les uns aprs les autres un additionneur complet. Nb binaire N1 A S additionneur complet B Rn Nb S

Nb binaire N2 D Q

Les nombres additionner N1etN2 et la somme S sont stocks dans des registres dcalage. Chaque chiffre des nombres N1etN2 est dcal dans ladditionneur quand arrive le front d horloge (H), en commenant par le chiffre de plus faible poids. En supposant que la sortie de la bascule D est initialement ltat 0, lapplication de la premire impulsion dhorloge a pour effet de prsenter le chiffre de faible poids des deux nombres N1et N2 aux entres A et B de ladditionneur. La borne apparat en sortie : la retenue est applique lentre de la bascule D. A limpulsion dhorloge suivante, le chiffre suivant des deux nombres N1et N2 est prsenter aux entres A et B de ladditionneur, la somme prcdente S est dcale dans le registre dcalage, la retenue prcdente est enregistre par la bascule, et se prsente alors lentre de Rn-1 de ladditionneur. Cette procdure se rpte jusqu la fin de laddition des chiffres des deux nombres N1et N2.On note bien que ladditionneur srie est moins rapide que ladditionneur parallle pour donner le rsultat de laddition.

B- SOUSTRACTEUR
La soustraction se rsume une opration daddition, si on exprime les nombres ngatifs selon la notation en complment 2. Quand on soustrait en utilisant la notion en complment 2, le diminuteur est complment 2 puis additionn au diminuante. Le circuit additionneur parallle 7483 peut tre modifi pour obtenir le complment 2 du diminuteur contenu par exemple dans un registre B. En effet on utilise les sorties complmentes du registre B et on applique 1 lentre C0, de sorte quon additionne ainsi un 1 au bit de poids le plus faible. Cest ainsi quon obtient la somme dun nombre avec un nombre complment 2, comme le montre la figure ci-dessous. A3 A2 C4 A1 A0 C0-1

ADDITIONNEUR PARALLELE

B3 B2 Cours circuits Logiques

B2 B1 S3 S2 S1

S0 El Amjed HAJLAOUI

39

ADDITIONNEUR BCD La marche suivre pour additionner en BCD est la suivante Additionner les reprsentations codes BCD pour chaque rang du chiffre dcimal Pour les rangs du nombre dont la somme est infrieur 9, la repense est dj une reprsentation BCD Quand la somme dpasse 9, il faut faire une correction en additionnant 6(0110) et additionner le report au rang suprieur

EXEMPLE
889 +376 1265 1000 1000 1001 0011 0111 0110 1100 0000 1111 0110 0110 0110

terme de correction

report 1 0010 0110 0101 Un additionneur BCD doit pouvoir matrialiser les tapes prcdentes. En gnrale, si deux reprsentations codes BCD A3A2A1A0 et B3B2B1B0 sont appliques un additionneur parallle 4 bits, qui ralise lopration suivante : A3A2A1A0 + B3B2B1B0 S4S3S2S1S0 S4est en ralit C4, report produit par le rang de bits le plus fort. En BCD, il existe 6 pseudo-ttrades qui sont 1010, 1011, 1100, 1101, 1110 et 1111. Chaque fois que le rsultat soit une pseudo-ttrade ou S4=1, il faut faire la correction en ajoutant 6(0110). 00 01 11 10 Pour cela il faut dtecter ces pseudo ttrades 00 0 1 3 2 ainsi que la retenue dordre le plus lev S4. 01 4 5 7 6 Le diagramme de Karnaugh suivant, nous 11 12 13 15 14 montre comment on effectue cette opration. 10 8 9 11 10

P: presence de pseudo-ttrade P=S2S3+S1S3= S3(S1+S2) Comme la correction doit se faire en prsence dune pseudo-ttrade ou en prsence de S4, dfinit alors le terme X par : X=S4+S3(S1+S2)

Cours circuits Logiques

40

El Amjed HAJLAOUI

Quand X=1, il faut additionner la correction (0110). La figure ci-dessous montre le circuit complet dun additionneur BCD, y compris les portes logique qui produisent le terme de correction X. D-MULTIPLICATION Lopration de la multiplication est illustre par lexemple suivant : 1011 MULTIPLICANDE 1101 MULTIPLICATEUR 1011 0000 01011 1011 110111 1011 10001111 Le circuit ralisant cette fonction doit comporte : Un registre Q dcalage de 8 bits qui contient le multiplicande. Il dcale son contenue vers la gauche chaque descendant de CLK. Un registre B dcalage de 4 bits qui contient le multiplicateur. il dcale son contenu vers la droite chaque front descendant de CLK. Un registre X qui sert daccumulateur, cest dans ce registre que les produits partiels sont additionns.

C- COMPARATEUR
Un comparateur est un circuit dont la fonction est dindiquer, si un nombre binaire est infrieur, gale ou suprieur un autre nombre binaire. 1-COMPARATEUR DE 2 NOMBRES BINAIRES A 1 BIT le tableau ci-dessous montre une comparaison de 2 nombres binaires 1 bit. ai 0 0 1 1 bi 0 1 O 1 Si(>) Ii(<) Ei(=) 0 0 1 0 1 0 1 0 0 0 0 1

Cours circuits Logiques

41

El Amjed HAJLAOUI

On a donc Si=ai. bi Ii= ai. bi Ei= ai. Bi+ ai. bi

A3 .B3 A3>B3 A3<B3 A3=B3 A3=B3 A3=B3 A3=B3 A3=B3 A3=B3 A3=B3 A3=B3 A3=B3 A3=B3 A3=B3

A2B2 X X A2>B2 A2<B2 A2=B2 A2=B2 A2=B2 A2=B2 A2=B2 A2=B2 A2=B2 A2=B2 A2=B2

A1B1 X X X X A1>B1 A1<B1 A1=B1 A1=B1 A1=B1 A1=B1 A1=B1 A1=B1 A1=B1

A0B0 X X X X X X A0>B0 A0<B0 A0=B0 A0=B0 A0=B0 A0=B0 A0=B0

IA>IB IA<IB IA=IB X X X X X X X X X X X X H B X B H X X X X X X X X X X X X B B HB X H B B H B

A>B A<B A=B H B B B H B H B H B H B H B B H B B H B H B H B H B H B B B H B B B B B H B B

Cours circuits Logiques

42

El Amjed HAJLAOUI

CHAPITRE V LES BASCULES


La bascule (flip flop) est llment de base de la logique squentielle, elle est aussi llment de mmorisation le plus important, qui est constitu de portes logiques. Ces bascules sont divises en deux groupes : Bascules asynchrones : la sortie de ces bascules peut changer dtat tout moment, quand une ou plusieurs entres changent. Bascules synchrones : la sortie de ces bascules ne change dtat qu un moment exact command par un signal appel signal dhorloge.

I- Bascule R- S 1- Bascules R- S Asynchrone :


a- Structure dune bascule RS asynchrone Cette bascule, la plus lmentaire, est constitue partir de deux portes NAND et ayant une table de vrit suivante : S 1 0 1 0 R 1 1 0 0 Q inchange Q=1 Q=0 Ambigu

S = R = 1(Mode mmoire) : cette condition correspond ltat repos car elle naffecte pas ltat de sortie de la bascule. Les sorties Q et Q demeurent dans ltat quelles occupaient avant lapplication de cette condition dentre. S = 0 , R= 1 (Ecriture dun 1) : cette condition entrane toujours la sortie dans ltat 1 o elle demeure mme aprs le retour de S au niveau Haut (on retrouve le cas prcdent). On dit que cest la condition de mise 1 de la bascule. S = 1, R = 0 (Ecriture dun 0) : cette condition entrane toujours la sortie dans ltat 0 o elle demeure mme aprs le retour de R au niveau Haut (tat -1). On dit que cest la condition de mise 0 de la bascule

Cours circuits Logiques

43

El Amjed HAJLAOUI

S = R = 0 : cette condition est quivalente vouloir mettre la bascule la fois 1 et 0, ce qui donne lieu des rsultats ambigus. La bascule R- S peut tre constitue partir de deux portes NOR au lieu de deux portes NAND. S 0 1 0 1 R 0 0 1 1 Q Inchange Q=1 Q=0 Ambigu

S = R= 0 (Mode mmoire, cette condition reprsente ltat normal de repos de la bascule en NOR, et ne modifie en rien ltat de sortie. Q et Q demeurent dans ltat quelles occupaient avant larrive de limpulsion dentre. S = 1, R = 0 (Ecriture dun 1) : cette condition a toujours pour effet de mettre Q ltat 1, tat qui ne change pas mme quand S revient 0. S = 0, R = 1 (Ecriture dun 0) : cette condition a toujours pour effet de mettre Q ltat 0, tat qui ne change pas mme quand R revient 0. S= R = 1 : cette condition est quivalente vouloir mettre la bascule 1 et 0 en mme temps, donc il ne faut jamais se servir de cette condition dentre. La bascule NOR fonctionne comme la bascule NAND, lexception des entres S et R qui, maintenant sont vraies au niveau Haut plutt quau niveau Bas, et de ltat de repos qui est S = R = 0. Q sera mis 1 par une impulsion de niveau Haut applique sur S, et sera mis 0 par une impulsion toujours de niveau Haut sur R. On remarque dans le symbole de la bascule en NOR quil ny a pas de rond associ aux entres, ceci indique que les entres sont vraies au niveau Haut. Exemple : b- Application de la bascule RS Une application trs utile de la bascule R- S est linterrupteur sans rebonds. Il est pratiquement impossible de construire un interrupteur mcanique dans lequel il ny aurait quune seule transition entre deux tensions, cause du phnomne de rebondissement des contacts. Ce phnomne est illustr par la figure ci- dessous :

Cours circuits Logiques

44

El Amjed HAJLAOUI

2- Bascule R- S synchrone :
a- Structure dune bascule RS synchrone Toutes les bascules synchrones disposent dune entre dhorloge que nous dsignons par labrviation CLK. Cette entre est symbolise par un petit triangle qui signale que cette bascule ne ragit quau passage dun des fronts du signal dhorloge. S 0 1 0 1 S 0 1 0 1 R CLK Q 0 Q0(inchange) 0 1 1 0 1 Ambigu R CLK Q 0 Q0(inchange) 0 1 1 0 1 Ambigu

Les entres R et S commandent la sortie Q de la bascule de la mme manire que dans le cas asynchrone, sauf quici la sortie nest pas modifie avant quarrive le front montant ou descendant du signal dhorloge. Une bascule R- S peut tre utilise pour supprimer ce rebondissement alatoire qui dure gnralement quelques millisecondes, mais qui peut tre trs gnant pour certaines applications. Supposons que linterrupteur soit au dbut en position 1, de sorte que R est au niveau Bas, donc Q=0. Quand linterrupteur est amen en position 2, R passe au niveau Haut et S au niveau Bas, cela a pour effet de placer la sortie Q 1. Maintenant, si linterrupteur rebondit S

Cours circuits Logiques

45

El Amjed HAJLAOUI

passe au niveau Haut, ce qui naffecte en rien la valeur de Q (car S= R= 1). On voit bien que Q reste inchang malgr les rebonds de la lame sur le contact 2. De mme, quand linterrupteur passe de la position 2 la position 1, S passe 1 et R 0, donc Q passe 0 et conserve cet tat mme si la lame rebondit. Donc linsertion de cette bascule, fait de sorte que Q effectue une seule transition quand linterrupteur change de position. b- Circuit interne de la bascule R -S dclenche par un signal dhorloge La figure ci-dessous nous montre une bascule R- S dclenche par un front (montant ou descendant). On note titre de passage que ces circuits sont intgrs dans la mme puce. On trouve dans un tel circuit trois sections : 1- Une bascule R- S en NAND (elle peut tre en NOR). 2- Un circuit daiguillage de limpulsion constitu par deux portes NAND. 3- Un circuit de dtection de front. Le circuit de dtection de front gnre une impulsion troite CLK*. La figure ci-dessous montre comment le signal CLK* est produit dans le cas des bascules dclenches par le front montant ou descendant dun signal dhorloge.

II- Bascule T (Toggle)


Une bascule T correspond une bascule R- S synchrone, dont les entres S et R sont __ Respectivement relies Q et Q. De cette faon, la bascule T permute ses sorties chaque impulsion dentre T. T Qt+1 __ Qt

III- Bascule J- K Synchrone 1- Description de la bascule JK synchrone


Une bascule J- K synchrone dclenche par un front montant dun signal dhorloge est donne par la figure ci-dessous avec sa table de vrit. J 0 1 0 K 0 0 1 CLK Q Q0(inchange) 1 0

Cours circuits Logiques

46

El Amjed HAJLAOUI

1 1

__ Q0(basculement)

Les entres J et K commandent ltat de la bascule comme les entres de la bascule R- S synchrone, lexception importante que J=K=1 ne donne pas lieu une situation ambigu. Quand cette condition survient, la bascule passe par ltat oppos larrive du front montant du CLK. Dans ce mode, si on laisse les entres J et K toutes les deux au niveau Haut, la bascule va passer ltat oppos chaque signal dhorloge. La table de vrit de la bascule J- K est identique la bascule R- S synchrone sauf pour __ J=k=1, on a pour rsultat Q= Q0 ce qui signifie que la nouvelle valeur de Q est linverse de celle existant avant le front montant de lhorloge, on dit quil y a basculement. A titre dexemple, la figure ci-dessous illustre le fonctionnement de la bascule J- K synchrone : Au dpart toutes les entres sont 0 et par hypothse la sortie Q est 1. Quand arrive le front montant de la premire impulsion dhorloge (point -a-) J=0 et K=1. Dans cette condition, la bascule est mise 0. Quand arrive la deuxime impulsion (point -c-), on a J=K=1 de sorte quau moment de la transition montante, la bascule passe ltat oppos soit Q=1. Au point e de la forme dhorloge, J et K sont tous les deux 0 et la bascule reste dans le mme tat pendant cette transition. Au point g, J=1 et K=0, on reconnat la condition qui met 1 la bascule. Toutefois, comme elle est dj 1, son tat demeure inchang. Au point i, J=K=1, ce qui fait passer la bascule dans un tat oppos. La m^me chose se produit au point K. On remarque la lumire de cet exemple que cette bascule ne ragit pas aux fronts descendants du CLK. Le symbole de la synchrone J- K synchrone dclenche par le front descendant est montr la figure ci-dessous : J 0 1 0 1 K 0 0 1 1 CLK Q Q0(inchange) 1 0 __ Q0(basculement)

Cours circuits Logiques

47

El Amjed HAJLAOUI

Le petit rond lentre de CLK indique que la bascule est dclenche quand a lieu la transition de 1 0du signal dhorloge (front descendant). La bascule J- K est plus polyvalente que la bascule R- S du fait quelle ne possde pas dtat ambigu. La bascule J- K fait tout ce que fait la bascule R- S plus le basculement (qui correspond J=K=1).

2- Circuit interne de la bascule J- K dclanche par un signal dhorloge


La figure ci-dessous reprsente le circuit interne dune bascule J- K dclenche par un signal dhorloge. On voit trs bien la mme structure interne de la bascule R- S dclenche par un signal _ dhorloge. La seule diffrence vient des sorties Q et Q qui sont ramenes sur les entres des portes NAND daiguillage de limpulsion. Cette connexion en rtroaction dote la bascule J- K du mode basculement quand J=K=1 . En effet, supposons qu larrive de limpulsion CLK, _ J=K=1 et Q=0 (donc Q=0), la porte NAND-1 dirige CLK* sur lentre S pour donner Q=1 Si nous supposons qu larrive de limpulsion CLLK, J=K=1 et Q=1 (Q=0), la porte NAND-2 dirige CLK* sur lentre R pour donner Q=0. Ainsi Q se trouve toujours dans ltat oppos du prcdent.

IV- Bascule D synchrone


Cette bascule dispose dune seule entre appele lentre D. le signal de synchronisation peut tre actif sur un front, la bascule est appele alors D edge triggered , ou actif sur le niveau et elle est appele D latch .

1- D-edge triggered :
La figure ci-dessous donne le symbole dune bascule D synchrone dclenche par un front montant du signal dhorloge. D CLK Q 0 0 1 1

Cours circuits Logiques

48

El Amjed HAJLAOUI

Cette bascule ne possde quune entre de commande synchrone appel D. le fonctionnement de la bascule D est trs simple. Q prend ltat de lentre D linstant du front montant de la CLK autrement dit, la valeur de D sera mmorise dans la bascule (Q prend la valeur de Q) un moment trs prcis celui du front montant de CLK . Les formes dondes sont illustres par la figure ci-dessous : Une bascule dclenche par un front descendant fonctionne exactement comme on vient de le dcrire, la seule exception que le passage de la valeur de D sur Q survient aux moments des fronts descendants de CLK. Ralisation dune bascule D-edge triggered Une bascule D dclenche par un signal dhorloge nest pas difficile construire : il suffit dajouter un inverseur une bascule R- S dclenche par un signal dhorloge ou une bascule J- K, comme le montre la figure ci-dessous :

2- Bascule D- latch (Verrou) :


La bascule D- edge triggered dclenche par un signal dhorloge possde un circuit dtecteur de front qui garantit que la sortie prend la valeur de D seulement quand se produit un front de CLK (front montant ou descendant selon le cas). Si ce dtecteur est supprim, on obtient un circuit qui fonctionne diffremment. Ce circuit est appel lment de mmoire ou D- latch, dont le schma est le suivant : CLK D Q 0 X Q0(inchange) 1 0 0 1 1 1 Lentre dhorloge,dans ce cas, nagit pas uniquement linstant de passage des fronts. En effet : Quand CLK est 1, la sortie Q la forme donde que D dans ce mode, on dit que llment de mmoire D est transparent. Quand CLK est la sortie Q demeure au niveau quelle avait avant que CLK passe au niveau 0. en dautre terme, la sortie est verrouille sur son niveau actuel et na change pas tant que CLK reste au niveau Bas, mme si D change. A titre dexemple, la figure ci-dessous montre la forme donde Q dune bascule D. Avant T1, CLK est au niveau bas, de sorte que Q est verrouille sur le niveau courant 0 et reste fixe malgr les changements du niveau D. durant lintervalle T1 T2, CLK est au

Cours circuits Logiques

49

El Amjed HAJLAOUI

niveau Haut, de sorte que Q varie exactement comme la signal D donc Q passe au niveau Haut en T et y demeure puisque D ne change pas. Quand CLK revient 0, en T2, Q est verrouill sur le niveau Haut, celui quil avait en T2 et reste ce niveau tant que CLK est au niveau Bas. En T3, quand CLK repasse au niveau Haut, Q reflte les changement de D, et cela jusquau retour de CLK au niveau Bas. Pendant lintervalle T3 et T4, la mmoire D est transparente. Et T4, Q se verrouille sur le niveau 0, qui est le niveau de la sortie linstant T4.

CHAPITRE VI COMPTEURS ET REGISTRES


A- Compteurs

Cours circuits Logiques

50

El Amjed HAJLAOUI

Les compteurs sont des lments trs utiles en logique squentielle. Ils permettent en effet dtablir une relation dordre de succession dvnements. Llment de base de ces compteurs est la bascule. Les compteurs sont classs en deux catgories suivant leur mode de fonctionnement. Les compteurs asynchrones (ou propagation) : la caractristique principale de ces compteurs asynchrones est la propagation en cascade de lordre de changement dtat de bascules. Les compteurs synchrones (ou parallles) : le signal dhorloge synchronise toutes les bascules simultanment.

I- Compteurs Asynchrones
1- Compteur Asynchrone MODULO 2N A titre dexemple, la figure ci-dessous montre un compteur 4 bits constitu partir dequatrebascuK.

Q0 J0 CLK0 _ Q0 K0

Q0 J0 CLK0 _ Q0 K0

Q0 J0 CLK0 _ Q0 K0

Q0 J0 CLK0 _ Q0 K0

Les impulsions dhorloges sont appliques la borne CLK de la bascule A qui commute chaque fois quarrive un front descendant. On note que toutes les bascules ont la condition J=K=1.

La sortie de la bascule A est le signal dhorloge pour la bascule B, de sorte que cette dernire commute chaque fois que le signal issu de A passe de 1 0. de la mme manire commute la bascule C quand la sortie B passe de 1 0 et D commute quand C passe de 1 0.

Cours circuits Logiques

51

El Amjed HAJLAOUI

Le tableau ci-contre montre la suite des tats binaires pris par les bascules aprs chaque impulsion dhorloge.

A la 15me impulsion, les bascules du compteur sont ltat 1111. Quand la 16me impulsion atteint la borne CLK de la bascule A, le compteur revient son tat initial, on dit que le compteur est recycl. Ce type de compteur, dans lequel la sortie de chaque bascule agit comme le signal dhorloge de la suivante, est appel compteur asynchrone. Ce nom vient du fait que les quatre bascules ne changent pas dtat toutes en mme temps la transition du signal dhorloge. Donc, il stablit un retard entre la rponse de chaque bascule et cest pour cette raison quon dsigne souvent ce circuit par compteur propagation. On analyse maintenant les formes dondes de ce compteur 4 bits qui sont donnes par la figure ci-dessous : On remarque que chaque bascule du compteur donnait en sortie une forme donde dont la frquence est la moiti de la frquence dhorloge. A titre dillustration, si on suppose que la frquence dhorloge est de 16 Khz, la forme donde la sortie de A est de 8 Khz, celle de B est 4 Khz, celle la sortie de C est de 2 Khz et celle la sortie de D est de 1 Khz. En rgle gnrale, la sortie de la dernire bascule dun compteur est une onde dont la frquence est celle du signal dhorloge divis par le MODULO du compteur. MODULO : le compteur tudi prcdemment possde 16 tats distincts (0000 1111), on dit que cest un compteur MODULO-16. Le MODULO est donc le nombre dtats occups par le compteur pendant un cycle complet avant son recyclage ltat initial. MODULO = 2N avec N : nombre de bascules formant le compteur On peut dire aussi quun compteur MODULO X est compteur diviseur par X. 2- Compteur asynchrone MODULO <2N Un compteur peut avoir un MODULO infrieur 2N (valeur maximale quon peut obtenir avec un compteur N bascules). Donc, pour construire un compteur MODULO X, il faut suivre les tapes suivantes :

Cours circuits Logiques

52

El Amjed HAJLAOUI

Trouver le plus petit nombre N tel que 2N X Connecter la sortie dune porte Nand aux entres RAZ de toutes les bascules du compteur.

si 2N = X les tapes suivantes sont inutiles.

Dterminer quelles bascules sont ltat 1 quand le nombre est X, et raccorder ces sorties qui sont 1 aux entres de la porte Nand. La figure ci-dessous montre un exemple dun compteur MODULO-6 obtenu partir dun compteur MODULO-8, ainsi que la forme donde correspondante. La figure ci-dessous montre un deuxime exemple dun compteur MODULO-14 et compteur MODULO-10 obtenu partir dun compteur MODULO-16. Exercice dapplication Raliser un compteur MODULO-60. On a 2N = 64 > 60 donc N=6, il faut un compteur six bascules. Dautre part, le compteur doit tre initialis quand il atteint le nombre 111100, les sorties quil faut raccorder aux entres de la porte NAND sont C, D, E et F comme le montre la figure cidessous :

A RAZ

J K

Cours circuits Logiques

53

El Amjed HAJLAOUI

3-Dcompteur asynchrone Tous les compteurs tudis comptaient progressivement partir de zro, ctaient tous les compteurs progressifs. Il est relativement facile de construire de dcompteurs asynchrones, c'est--dire qui partent dun nombre maximal pour arriver zro. Le mme circuit est utilis pour un dcompteur quun compteur, la diffrence que cette fois cest les sorties complmentes qui sont utilises, c'est--dire chaque entre CLK des bascules est relie la sortie complimente de la bascule qui la prcde, comme lindique la figure ci-dessous pour un compteur MODULO-8.

C J CLK _ C K

B CLK _ B

J K

_ CLK A K

4- Retard de propagation Les compteurs asynchrones (ou de propagation) sont les compteurs les plus simples, mais prsentent un inconvnient majeur d au principe fondamental de leur fonctionnement. Chaque bascule est dclenche par la transition de la sortie de la bascule qui la prcde. A cause du retard de propagation tpd, la premire bascule ne ragit quaprs cette dure partir du front dclenchant du signal dhorloge, la deuxime bascule ne rgit que 2. tpd aprs larrive dhorloge et ainsi de suiteAutrement dit, les retards de propagation introduits par les bascules sadditionnent de sorte que la nime bascule ne change dtat que N. tpd unit de temps aprs larrive de limpulsion dhorloge. La figure ci-dessous est une illustration de formes dondes dun compteur propagation de 3 bits. Dans cette exemple, le signal dhorloge CLK a une priode T=1000ns, le retard de propagation de chaque bascule est tpd =50 ns. On remarque que la sortie de la bascule A commute 50 ns aprs le front descendant CLK. De mme, B commute 50 ns aprs que la

Cours circuits Logiques

54

El Amjed HAJLAOUI

sortie A passe de 1 0 et C commute 50 ns aprs que la sortie B passe de 1 0. Au total, quand arrive la 4me impulsion de CLK, la sortie C passe au niveau Haut aprs un retard de 150 ns. Pour que le compteur fonctionne convenablement,il faut que : Thorloge > N.tpd donc FMAX = 1/N. tpd FMAX : est la frquence maximale de CLK.

II- Compteurs Synchrones


1- Ralisation dun compteur synchrone On a vu prcdemment que lassociation en cascade de bascule dans un compteur asynchrone entranait des retards de propagation. Ces retards limitent la frquence maximale dutilisation. On contourne cette limitation en utilisant des compteurs synchrones ou parallles, dans lesquels toutes les bascules sont dclenches simultanment (en parallle) par les impulsions dhorloge dentre. Le principe de fonctionnement dun compteur synchrone est illustr dans lexemple de la figure ci-dessous qui reprsente un compteur synchrone MODULO-16.

D CLK

C CLK

B CLK

A CLK

Si on compare le montage de ce compteur synchrone avec celui de son quivalent asynchrone, on relve les diffrences suivantes : Cours circuits Logiques 55 El Amjed HAJLAOUI

Les entres CLK de toutes les bascules sont raccordes ensemble afin que le signal dhorloge arrive simultanment sur toutes les bascules. Seule la bascule du rang de poids faible (Bascule A) ses entres J et K en permanence au niveau Haut. Les entres J, K des autres bascules sont pilotes par une certaine combinaison de sorties des bascules. Le compteur synchrone ncessite plus de circuits que le compteur asynchrone. 2- Fonctionnement dun compteur synchrone La bascule A change dtat chaque front descendant. Cest pour cette raison que ses entres J et K sont toujours gards 1. La bascule B change dtat chacun des fronts descendant survenant quand A=1. Ce fonctionnement est obtenu en raccordant la sortie de A aux entres J et K de la bascule B, de sorte que J=K=1 tant que A=1. La bascule C change dtat chacun des fronts descendants survenant quand A=B=1. Ce fonctionnement est ralis grce au raccordement du signal A B sur les entres J et K de la bascule C. Enfin, la bascule D commute chaque front descendant qui survient quand A=B=C=1. cela se produit quand on raccorde le signal A B C sur les entres J et K de la bascule D. Nous allons donner une procdure de conception plus rigoureuse du compteur synchrone MODULO-16. Avant de commencer la conception proprement dite, on rappelle le fonctionnement dune bascule J-K en partant dune approche diffrente : celle de la table dexcitation cidessous. Qn 0 0 1 1 Qn+1 0 1 0 1 J 0 1 X X K X X 1 0

X : tat indiffrent

Grce cette table dexcitation, on peut dduire partir de chaque tat de sortie des bascules J-K formant le compteur synchrone, ltat dentre correspondant. Le tableau suivant rsume les diffrents cas possibles.

Cours circuits Logiques

56

El Amjed HAJLAOUI

DCBA 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1

J0 1 X 1 X 1 X 1 X 1 X 1 X 1 X 1 X

K0 X 1 X 1 X 1 X 1 X 1 X 1 X 1 X 1

J1 0 1 X X 0 1 X X 0 1 X 0 0 1 X X

K1 X X 0 1 X X 0 1 X X 0 X X X 0 1

J2 0 0 0 1 X X X X 0 0 0 1 X X X X

K2 X X X X 0 0 0 1 X X X X 0 0 0 1

J3 0 0 0 0 0 0 0 1 X X X X X X X X

K3 X X X X X X X X 0 0 0 0 0 0 0 1

Cherchons lexpression boolenne de chaque entre Ji et Ki en utilisant le diagramme de Karnaugh. _ _ _ _ B.A B.A B.A B.A _ _ D.C _ D.C D.C _ D.C 1 1 1 X X X X X X X 1 1 1 1 _ _ D.C _ D.C D.C _ D.C _ _ _ _ B.A B.A B.A B.A 0 0 0 0 1 1 1 1 X X X X J1 = A X X X X

1 X J0 = 1

_ _ _ _ B.A B.A B.A B.A _ _ D.C _ D.C D.C _ D.C 0 X X 0 0 X X 0 1 X X 1 0 X 0 0

_ _ _ _ B.A B.A B.A B.A _ _ D.C _ D.C D.C _ D.C 0 0 X X 0 0 X X 0 1 X X 0 0 X X

Cours circuits Logiques

57

El Amjed HAJLAOUI

J2 = A.B _ _ _ _ B.A B.A B.A B.A _ _ D.C _ D.C D.C _ D.C X X X X K0 = 1 _ _ _ _ B.A B.A B.A B.A _ _ D.C _ D.C D.C _ D.C X 0 0 X X 0 0 X X 1 1 X X 0 0 X _ _ D.C _ D.C D.C _ D.C 1 1 1 1 1 1 1 1 X X X X _ _ D.C _ D.C D.C _ D.C

J3 = A.B.C _ _ _ _ B.A B.A B.A B.A X X X X X X X X K1 = A _ _ _ _ B.A B.A B.A B.A X X 0 0 X X 0 0 X X 1 0 X X 0 0 1 1 1 1 0 0 0 0

K2 = A.B

K3 = A.B.C

On retrouve bien les niveaux dentres ncessaires des diffrentes bascules J-K pour la conception du compteur synchrone MODULO-16 donn prcdemment. REMARQUE : Dans le cas dun compteur synchrone, toutes les bascules changent dtat en mme temps, c'est--dire quelles sont synchrones sur le front descendant des signaux dhorloge. Ainsi, contrairement aux compteurs asynchrones, les retards de propagation des bascules ne sadditionnent pas. Au contraire, le temps de rponse total dun compteur parallle est gal au retard dune seule bascule plus le temps de retard dune seule porte ET. Retard total = tpd (dune bascule) + tpd (dune porte ET) Cette quation montre qun compteur parallle peut fonctionner des frquences de loin suprieures celle dun compteur asynchrone ayant le mme nombre de bascules. Cest le grand atout des compteurs parallles.

Cours circuits Logiques

58

El Amjed HAJLAOUI

Application : Dterminer FMAX pour un compteur synchrone MODULO-16, si le tpd de chaque bascule est de 50 ns et tpd de chaque porte ET est de 20 ns. Comparer cette FMAX celle dun compteur asynchrone MODULO-16. t horloge > 50 + 20 = 70 ns Donc FMAX = 1/4.50 ns = 5 Mhz. 3- Dcompteur et compteur rversible parallle On peut construire un dcompteur parallle en utilisant les sorties complmentes des bascules pour alimenter les entres J K suivantes. Pour raliser un compteur/dcompteur parallle, on utilise les entres COMPTAGE et DECOMPTAGE pour dterminer si on alimente les entres J et K avec les sorties normales ou complmentes. Le compteur de la figure ci-dessous est un compteur rversible MODULO-8 (dit aussi compteur/dcompteur) qui dnombre les tats 000 jusqu 111 lorsque lentre de commande COMPTAGE est 1 et qui dnombre rgressivement les tats 111 jusqu 000 lorsque lentre de commande DECOMPTAGE est 1. 4-Compteur prrglage Plusieurs compteurs raliss en C.I sont prrglages, c'est--dire quil est possible dinstaller dans le compteur en tout instant un nombre de dpart dune faon asynchrone ou synchrone. La figure ci-dessous montre un compteur parallle 3 bits prrglage dune faon asynchrone. Un nombre quon souhaite introduire dans le compteur est introduit par les entres parallles PA, PB , PC . Ce transfert est indpendant des entres J K et de CLK. Leffet dhorloge CLK est neutralis tant que PL revient au niveau Haut, les bascules peuvent alors ragir aux entres CLK et le comptage peut reprendre en commenant par le nombre qui a t chang dans le compteur. donc FMAX = 1/70 = 14,3 Mhz Un compteur asynchrone MODULO-16 utilise 4 bascules ayant tpd = 50 ns

B- Les

registres

Cours circuits Logiques

59

El Amjed HAJLAOUI

Lutilisation des bascules, permet la mmorisation dun lment binaire. Le stockage dun ensemble de n lments (n bits) se fait en regroupant n bascules, pour constituer un registre. Il existe de diffrents types de registres qui peuvent tre classs selon leur type dcriture (chargement) et de lecture des donnes. Voici les diffrents types de registres : Registres criture srie/lecture srie Registres criture parallle/lecture parallle Registres criture parallle/lecture srie Registres criture srie/lecture parallle

I- Registre Ecriture Srie/Lecture Srie Cest un registre qui est form dun ensemble de bascules cbles de manire ce que les informations mmorises dans les bascules soient dportes dune bascule la suivante chaque impulsion dhorloge. La figure ci-dessous montre quatre bascules D cbles de manire constituer un registre dcalage de 4 bits. Les bascules D sont raccordes pour que la sortie Q3 dans Q1 , et celle de Q1 dans Q0 . Les formes dondes de la figure ci-dessous, montrent comment lapplication dune succession dimpulsions dhorloge dplace les donnes dentre de gauche droite dune bascule une autre. On suppose que toutes les bascules sont ltat bas avant lapplication du signal dhorloge. On remarque bien qu chaque front descendant de limpulsion dhorloge CLK, les sorties des bascules prennent la valeur de sortie quavait la bascule immdiatement gauche avant le front descendant. Evidemment Q3 prend la valeur fournie par la ligne dentre de donnes avant le front descendant CLK Exemple : la figure ci-dessous reprsente deux registres dcalage de 3 bits raccords de telle sorte que le contenu du registre X est transfr par le dcalage dans le registre Y. chacun de ces registres est form de trois bascules D. les impulsions dhorloge dclenchent le transfert de linformation selon le schma suivant : X2 --X1 --X0 --Y2 --Y1 --Y0. Supposons quavant larrive de la premire impulsion, le contenu du registre X est 101 c'est--dire (X2= 1, X1= 0, X0= 1) et quil ny ait que des zros dans le registre Y.

Cours circuits Logiques

60

El Amjed HAJLAOUI

On remarque : Au front descendant de chaque impulsion, les bascules prennent la valeur mmorise dans la bascule immdiatement gauche. Aprs trois impulsions dhorloge, le 101 mmoris dans le registre X a t transmis par dcalage dans le registre Y. Il a fallu trois impulsions pour transfrer trois bits dinformations.

REMARQUE : il est indispensable que les bascules du registre aient en temps de maintien tH excessivement faible, au moins infrieur au retard de propagation. Heureusement les bascules modernes dclenches par un signal dhorloge respectant cette exigence. II- Registre Ecriture Parallle/Lecture Parallle Dans un registre criture parallle, le chargement seffectue au mme instant dans toutes les bascules. Les informations ei se prsentent simultanment sur les bornes dentre du registre. La figure ci-dessous illustre le cas dun registre 4 bits criture et lecture parallles. III- Registre Ecriture Srie/Lecture Parallle Dans ce cas, les bits dentre sont appliques successivement (en srie) sur les bornes dentre. Chaque impulsion dhorloge CLK fait avancer les bits de sortie dune bascule la suivante. A la 4me impulsion CLK, le premier bit se trouve mmoris dans la dernire bascule, le second dans lavant dernire, le troisime dans la deuxime bascule et le dernier bit dentre dans la premire bascule. La lecture du contenu du registre se fait dune faon simultane, pour cela il faut attendre que le registre soit rempli (4 impulsions CLK sont ncessaires). IV- Registre Ecriture Parallle/Lecture Srie Comme le montre la figure suivante, un circuit logique additif de portes NAND est ncessaire pour charger ce registre. ____ A lentre PRE on a : PRE = . ei _______ Cours circuits Logiques 61 El Amjed HAJLAOUI

_____ _ A lentre CLR on a : CLR = . ei . = . ei + Si = 0 On a alors CLR = 1 PRE = 1 Si = 1 CLR = ei _ Q = ei (chargement) PRE = ei Quand lordre de changement apparat (quand = 1), les donnes ei des bascules sont appliques ses entres asynchrones, ce qui force les sorties des diffrentes bascules suivre les tats dentre, comme le montre les quations prcdentes. La lecture des donnes charges paralllement sachve aprs 4 impulsions dhorloge. On a alors

Cours circuits Logiques

62

El Amjed HAJLAOUI

You might also like