You are on page 1of 31

OPRATIONS LOGIQUES BOOLENNES DE BASE Opration ET (AND) Symbole lectronique :

b a & c

Ecriture: Fonction logique : abc --------------000 010 100 111 La porte ET dtecte le cas o toutes ses entres sont l'tat haut (1).
1

Opration OU (OR) Symbole lectronique :


a b 1 c

Ecriture : Fonction logique : abc --------------000 011 101 111 La porte OU dtecte le cas o toutes ses entres sont l'tat bas (0).

Opration NON (NOT) Symbole lectronique :


1

Ecriture: Fonction logique : ab ------01 10

Opration NON-ET (NAND) Symbole lectronique :


a b & c

Ecriture: Fonction logique : abc --------------001 011 101 110

Opration NON-OU (NOR) Symbole lectronique : Ecriture Fonction logique : abc --------------001 010 100 110

a b

Opration OU EXCLUSIF (XOR) Symbole lectronique :


a b =1 c

Ecriture: Fonction logique : abc --------------000 011 101 110

La porte OU EXCLUSIF dtecte le cas o ses entres sont diffrentes. Remarque Il est possible de concevoir des circuits logiques partir dun seul type de circuits lmentaire. Exemple : Utilisation de portes logiques Ralisez la fonction OU EXCLUSIF l'aide de portes NON-ET uniquement.

Conception et ralisation de systmes logiques Etude dun comparateur binaire. 1) Principe de base Le principe consiste comparer dabord les bits les plus significatifs ( Most Significant Bit ou M S B) . Sils sont diffrents, il est inutile de continuer la comparaison. Par contre sils sont gaux, il faut comparer les bits de poids immdiatement infrieur et ainsi de suite. Organigramme pour deux mots de deux bits.

A1!B1 OUI NON A1>B1 OUI

NON

A0!B0

NON

NON

A0 >B0 OUI

A<B

A>B

A<B

A>B

A=B

Tableau danalyse.
a b E 1 0 0 1 S 0 0 1 0 I 0 1 0 0

0 0 ab 0 1 1 1 0 1

Pour A = B :

E= a b +

Pour A > B :

S= a
a

Pour A < B : I =

b =
ab

E=

S+ I

ab+ab

Remarque : On peut donc raliser un comparateur laide de circuits logiques.


10

2) Prsentation du circuit intgr HEF 4585 B Le circuit intgr HEF 4585B permet de comparer deux mots de 4 bits ( A3 A0 et B3 B0). Ce circuit possde trois sorties : - A suprieur B :O
A>B

- A infrieur B : O A<B - A gal B : O A=B Trois entre dextension ( I A>B , I A<B , I A=B ) permettent la mise en cascade de plusieurs circuits afin deffectuer un comparaison sur des mots plus grands.

11

Montage de base et fonctionnement.


A 1010 1010 &

1 0101

0111

A+ B

B 0110

1 1001

1 0110

& 1011

& 1100

A B

A A

B = 0 B = 1

A = B

A ! B

A + A +

B B

= 1 = 0

A > B A < B 12

3) Ralisation dun comparateur 12 bits. La ralisation dun comparateur 12 bits ncessite lemploi de trois comparateurs monts en cascade. La mise en cascade est conditionne par la lecture de la table de vrit qui indique quelles sont les entres prioritaires. Montage :
A3 A0 LSB A7 A4 A8 A11 MS B

1 0

A>B A=B A<B

B3 B0

B7 B4

B8 B11 13

Explications : Pour permettre les comparaisons, les entres dextension des positions de plus faible poids doivent tre connectes comme suit : I A=B et I A>B = 1 , I A<B = 0 . Pour des mots suprieurs quatre bits, les circuits peuvent tre mis en cascade en connectant I A<B O A<B , I A=B O A=B et I A>B 1.

14

Additionneur Additionneur parallle Code sur un bit, la table de vrit de l'addition est : A B A + B Retenue 0 0 0 1 1 0 1 1 Demi-additionneur partir de cette table de vrit on peut par exemple construire le circuit suivant, appel demi-additionneur :
15

0 1 1 0

0 0 0 1

Demi-additionneur (1 bit) o A et B sont les entres, S la somme A + B et C la retenue. Additionneur complet Un additionneur complet ncessite une entre supplmentaire : une retenue. L'intrt de celle-ci est de permettre le chanage des circuits. La table de vrit d'un additionneur complet est :
16

A B REntre A + B + REntre RSortie 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 1 1 1

Le circuit correspondant, l'additionneur complet, est compos de deux demi-additionneurs en srie accompagns d'une logique pour
17

calculer la retenue (un OU entre les deux retenues gnrables par chacun des demi-additionneurs) :

Un additionneur complet 1 bit Additionneur parallle propagation de retenue Il est possible de chaner plusieurs additionneurs un bit pour en fabriquer un capable de traiter des mots de longueurs arbitraires :
18

Quatre additionneurs 1 bit chans pour former un additionneur 4 bits. L'inconvnient de ce circuit est sa lenteur car il dpend du temps de propagation de la retenue de module en module. Cette conception ne peut tre choisie pour des circuits dpassant quelques bits, moins de n'avoir aucune contrainte de temps.

19

Additionneur parallle retenue anticipe Dans ce qui suit on note A et B le cumulande et le cumulateur. R est la retenue. Xindice indique le bit auquel on s'intresse, 0 tant l'indice de poids le plus faible. La fonction logique OU est note + . La fonction logique ET est note . ou n'est pas note du tout (ainsi A B est l'quivalent de A . B ou A ET B). Tout d'abord on constate que le calcul de la retenue est tout fait faisable thoriquement : dans la pratique il ncessite beaucoup trop de portes logiques. Pour le second additionneur, la retenue (en entre) est gale : R1 = (A0 . B0) + (A0 . R0) + (B0 . R0) (1) Pour le troisime additionneur, la retenue est gale : R2 = (A1 . B1) + (A1 . R1) + (B1 . R1) (2)
20

et ainsi de suite. On peut substituer R1 dans (2) par sa valeur (1). On voit immdiatement que le rsultat est une formule trs longue rendant cette technique totalement impraticable pour un additionneur de, par exemple, 16 bits.

Additionneur 1 bit avec les sorties p et g complmentaires Il faut donc trouver un compromis entre vitesse et complexit du circuit charg de calculer les retenues. Cela peut se faire par
21

l'utilisation de deux valeurs intermdiaires : la retenue propage et la retenue gnre. Nommes p et g, elles sont dfinies ainsi : p, la retenue propage sera gale 1 si l'un des bits du cumulande ou cumulateur est 1 : pi = Ai OUexclusif Bi. g, la retenue gnre sera gale 1 si la fois le bit en question du cumulande et du cumulateur sont 1 : gi = Ai ET Bi. Comme en base 10, si les deux chiffres additionner forment un rsultat suprieur 9, alors une retenue est gnre, et si deux chiffres forment le total 9, alors la retenue (ventuellement issue de la colonne de chiffres prcdente) sera propage. On peut facilement modifier un additionneur complet pour en extraire ces deux nouveaux signaux. Ensuite, on peut constater que la retenue du second additionneur peut tre facilement calcule : en effet, partir du premier
22

additionneur et de ses sorties p et g, la retenue sera 1 si g est 1 (elle est gnre), ou bien p est 1 en mme temps qu'on dj une retenue. Cest--dire : R1 = g0 OU (p0 ET R0), et ainsi de suite : R2 = g1 + (p1 . g0) + (p1 . p0 . r0) R3 = g2 + (p2 . g1) + (p2 . p1 . g0) + (p2 . p1 . p0 . r0) R4 = g3 + (p3 . g2) + (p3 . p2 . g1) + (p3 . p2 . p1 . g0) + (p3 . p2 . p1 . p0 . r0)

23

Additionneur 4 bits utilisant une unit de calcul anticip de la retenue On peut tendre ce principe des additionneurs N bits, chacun compos de N additionneurs 1 bit et son unit de calcul anticip de la retenue. Par exemple, un bloc de base avec N = 4 peut tre reprsent schmatiquement comme ceci :
24

Additionneur 4 bits avec sorties P et G Ces blocs sont leur tour cascadables pour former un additionneur 16 bits :

25

Additionneur 16 bits partir de blocs 4 bits

26

Additionneur srie Les premiers ordinateurs utilisaient un additionneur srie. Ce circuit n'est plus combinatoire mais capable de produire un bit du rsultat chaque impulsion de l'horloge qui le cadence. Un tel circuit est extrmement simple :

27

28

Additionneur srie 1 bit. Le chronogramme schmatise le droulement de l'opration X + Y = S avec X = 5, Y = 7, S = 12. Ce circuit est constitu de trois parties : la porte ET commande par l'entre L qui permet de spcifier l'arrive du premier bit de poids faible dans le circuit ; une bascule de type D pour mmoriser la valeur de la retenue l'tape prcdente ; un additionneur complet 1 bit dont les entres X et Y sont les nombres ajouter et dont l'entre Retenue est relie la sortie de la bascule D. Le chronogramme indique bien que 5 (X) + 7 (Y) = 12 (S) (101 + 111 = 0011 en binaire, en lisant de droite gauche). L'tat des retenues Co et Coo est indiqu de manire purement informative.
29

Optimisation des additionneurs Les additionneurs sont au cur des units arithmtique et logique des processeurs. Des techniques trs particulires sont mises en uvre pour additionner le plus vite possible, le plus souvent en utilisant des techniques complexes de prdiction de la retenue (cf. rfrences). Par exemple on peut dtecter des blocs (srie de bits conscutifs) ne gnrant pas de retenue, et donc trs rapides additionner. On peut aussi calculer deux rsultats indpendamment et en parallle, l'un avec une retenue, l'autre sans, et ensuite choisir le bon (via un multiplexeur).

30

Exemple : Train datterrissage dun avion

31