ENSET

ECOLE NORMALE SUPERIEURE D’ENSEIGNEMENT TECHNIQUE

ENSE

ELECTRONIQUE NUMERIQUE, CIRCUITS LOGIQUES À ARCHITECTURE PROGRAMMABLE ET SYSTEME Notes de cours

Par NGOUNE Jean -Paul

Sous la supervision de M. GAMOM Roland Christian

Electronique Numérique/CLAPS – ENSET de Douala

1

ELECTRONIQUE NUMERIQUE/CLAPS Plan du cours

Chapitre 1 : Logique combinatoire : Conception des circuits logiques combinatoires 1.1 Décodeur 1.2 Codeur 1.3 Transcodeur 1.4 Multiplexeur 1.5 Démultiplexeur 1.6 Circuits arithmétiques

Chapitre II : Logique séquentielle 2.1 Les fonctions logiques séquentielles de base (Bascules) 2.2 Registres et compteurs.

Chapitre III : Circuits logiques à architecture programmable (CLAPS) : Conceptions et évolution technologique 3.1 Evolution technologique des CLAPS : Des PALS aux FPGA 3.1 Principes de conception : ROM, PROM, PAL-GAL, PLA-PLD-CPLD, FPGA, RAM, ASIC.

Chapitre IV : Machines à états 4.1 Le graphe d’état 4.2 La composition d’une machine à états 4.3 Le codage des états 4.4 Des machines à états aux processeurs.

Chapitre V : Modélisation et synthèse des circuits numériques 4.1 Un langage de description de circuits numériques : Le VHDL 4.2 Un environnement de développement des circuits numériques : QUARTUS II 4.3 Travaux pratiques

Electronique Numérique/CLAPS – ENSET de Douala

2

Bibliographie

[1] Jean-Luc Danger et al. [2] Tony R. Kuphaldt [3] Guy Almouzni [4] Ronald J. Tocci [5] Laurent Aubard et al. [6] Philippe Letenneur [7] Alain Guyot [8] Michel Robert

Electronique numérique intégrée Lessons In Electric circuits : Vol. IV-Digital Electronique numérique Circuits numériques: Théorie et applications Initiation aux circuits logiques programmables Circuits logiques programmables Circuits VLSI programmables Circuits et systèmes intégrés microélectroniques :

technologies, conception

Electronique Numérique/CLAPS – ENSET de Douala

3

CHAPITRE I :
LOGIQUE COMBINATOIRE : CONCEPTION DES CIRCUITS LOGIQUES COMBINATOIRES.

1.0 Introduction Les circuits logiques combinatoires sont ceux dont l’état logique des sorties à chaque instant est fonction uniquement de la combinaison des états logiques des entrées. De tels circuits ne disposent d’aucun mécanisme de mémorisation ; par conséquent, leurs sorties réagissent seulement aux signaux logiques présents à leurs entrées. Dans le présent chapitre, nous nous proposons d’étudier quelques uns des circuits combinatoires les plus communs. Pour chaque circuits nous présenterons le principe de fonctionnement et éventuellement le rôle joué par ces derniers dans quelques applications spécifiques.

1.1 Le décodeur 1.1.1 Définition Le décodeur est un circuit logique qui établit la correspondance entre un code d’entrée binaire de N bits et M lignes de sortie. En effet, pour chacune des combinaisons possibles d’entrée, une seule ligne de sortie est validée Pour un code d’entrée à N bits 2N combinaisons d’entrées sont possibles. I0 . . . IN-1 . . . OM-1 M sorties, une seule est active à la fois O0 Cependant, certains décodeurs n’utilisent pas toute la gamme des 2N codes d’entrées possibles, mais seulement un sous ensemble de celle-ci. De nombreux décodeurs sont conçus pour avoir des sorties vraies au niveau bas, c'est-à-dire que seule la sortie N entrée choisie est au niveau bas tandis que les autres sont au niveau haut. Décodeur N vers M

1.1.2 Principe

Electronique Numérique/CLAPS – ENSET de Douala

4

1.1.3 Réalisation des décodeurs Nous nous proposons de réaliser un décodeur à 3 entrées et 8 lignes de sorties ( on remarquera que 8 = 23) • Table de vérité

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

O0 1 0 0 0 0 0 0 0

O1 0 1 0 0 0 0 0 0

O2 0 0 1 0 0 0 0 0

O3 0 0 0 1 0 0 0 0

O4 0 0 0 0 1 0 0 0

O5 0 0 0 0 0 1 0 0

O6 0 0 0 0 0 0 1 0

O7 0 0 0 0 0 0 0 1

Equations des sorties

O0 = A.B .C O1 = A.B .C O2 = A.B.C O3 = A.B.C

O4 = A.B .C O5 = A.B .C O6 = A.B.C O7 = A.B.C

Logigramme à portes logiques
A B C

O0

O1

. . .
O7

Electronique Numérique/CLAPS – ENSET de Douala

5

1.1.4 Application des décodeurs •

Adressage d’une mémoire

Une mémoire peut être représenté par un tableau divisé en lignes et en colonnes. Chaque case du tableau est un registre pouvant stocker un mot mémoire (un octet par exemple). Pour lire un mot mémoire, il faut envoyer à la mémoire un numéro unique correspondant à la case mémoire dans laquelle est stockée la donnée : c’est son adresse. Une mémoire comportant 1024 cases mémoires d’un octet chacune (1 kilo-octet) nécessitera un bus d’adresse à 10 lignes (210 = 1024). Un décodeur interne à la mémoire permet la sélection d’une seule case mémoire à chaque adresse envoyée.

Ligne 0

10100110
Adresse Décodeur 10 vers 1024

Case mémoire d’un octet

10

Ligne 1023

. . .

Autorisation d’accès à la mémoire (Chip select)

Figure 1.1 : Adressage d’une mémoire Exercice 1.1 : a) Quelle est la capacité d’une mémoire (en octet) dont le bus d’adresse possède 16 lignes. b) De combien de lignes est constitué le bus d’adresse d’une mémoire ayant une capacité de 32ko. •

Décodeur DCB-7segments

Dans de nombreux affichages numériques, les dix chiffres 0-9 et parfois les caractères hexadécimaux A-F sont configurés au moyen de segments. Chaque segment est constitué d’un matériau qui émet de la lumière quand il est traversé par un courant (cristaux liquides ou diodes électroluminescentes (DEL)). Electronique Numérique/CLAPS – ENSET de Douala 6

Le décodeur DCB-7 segments accepte en entrée les 4 bits DCB et rend actives les sorties qui vont permettre de faire passer un courant dans les segments qui figurent le chiffre
Chaque segment est constitué d’une ou deux DEL

décimal correspondant

Résistance chutrice

a b Entrée DCB Décodeur DCB-7 segments c . . . g

Figure 1.2 : Décodeur DCB-7 segments attaquant un afficheur DEL à 7segments.

Exercice 1.2 : a) Concevoir un décodeur DCB – 7 segments avec sorties actives au niveau haut. b) Concevoir un décodeur DCB – décimal.

Remarque 1.1 : Quelques circuits intégrés décodeurs • • • 74LS138 : Décodeur un parmi 8 (3 vers 8) ; 74LS42 : Décodeur DCB - décimal (entrée DCB – sortie 10 voies) ; 7448 : Décodeur DCB – 7 segments avec sortie actives au niveau haut.

Electronique Numérique/CLAPS – ENSET de Douala

7

1.2 Le codeur 1.2.1 Définition Un codeur est un circuit logique qui traduit les valeurs d’une entrée dans un code choisi. Il réalise la fonction duale (inverse) du décodeur. Un codeur a un certain nombre de voie d’entrée dont une seule peut être activée à la fois. A chaque activation d’entrée, il apparaît un unique code de sortie à N bits. Ce principe est utilisé dans la réalisation des claviers électroniques. 1.2.2 Principe Le principe du décodeur peut être illustré par le schéma suivant

I0

O0

. . . IM-1

Codeur

. . . ON-1

M entrées, une seule est active à la fois

Code de sortie de N bits

1.2.3 Réalisation des codeurs

Nous nous proposons de réaliser un codeur décimal – DCB. Lorsque l’une des dix entrées est activée, il apparaît en sortie le code DCB correspondant à cette entrée. Par exemple, si l’entrée I3 est au niveau haut le code DCB disponible en sortie sera 0011. •

Table de vérité

La table de vérité d’un tel codeur comporte 10 entrées et 4 lignes de sortie destinées à produire les codes DCB correspondant aux entrées.

Electronique Numérique/CLAPS – ENSET de Douala

8

I0 1 0 0 0 0 0 0 0 0 0

I1 0 1 0 0 0 0 0 0 0 0

I2 0 0 1 0 0 0 0 0 0 0

I3 0 0 0 1 0 0 0 0 0 0

I4 0 0 0 0 1 0 0 0 0 0

I5 0 0 0 0 0 1 0 0 0 0

I6 0 0 0 0 0 0 1 0 0 0

I7 0 0 0 0 0 0 0 1 0 0

I8 0 0 0 0 0 0 0 0 1 0

I9 0 0 0 0 0 0 0 0 0 1

D 0 0 0 0 0 0 0 0 1 1

C 0 0 0 0 1 1 1 1 0 0

B 0 0 1 1 0 0 1 1 0 0

A 0 1 0 1 0 1 0 1 0 1

Le principe de ce circuit est simple : il suffit pour chaque bit de sortie de déterminer pour quelles conditions d’entrées ce bit est au niveau logique haut, puis de faire l’addition logique des résultats. Par exemple, la table de vérité montre A (bit DCB de poids le plus faible) doit être à 1 quand l’une ou l’autre des entrées I1, I3, I5, I7, ou I9 est au niveau logique haut. Nous avons donc : A = I1 + I 3 + I 5 + I 7 + I 9 Suivant le même principe, nous obtenons les autres sorties : D = I8 + I 9 C = I4 + I5 + I6 + I7 B = I 2 + I3 + I6 + I7 • Logigramme à portes logiques
I0

D
I1 I2 I3 I4 I5 I6 I7 I8 I9

C

B

A

Electronique Numérique/CLAPS – ENSET de Douala

9

Si aucune des entrées n’est activée, la sortie affichée est 0000, c’est la raison pour laquelle, l’entrée I0 n’est pas connectée.

Remarque 1.2 : Codeurs de priorité. Le codeur ci-dessus produirait un résultat erroné si au moins deux entrées sont rendues actives simultanément. Un codeur de priorité est une version modifiée du codeur élémentaire. Cette version modifiée possède les circuits logiques nécessaires pour que le code de sortie choisi, quand deux entrées sont activées simultanément, soit celui qui correspond au nombre le plus haut. Par exemple, si I4 et I6 sont activées à la fois, la sortie produite par le codeur (de priorité) sera 0110, sortie qui correspond au code DCB de l’entrée I6.

Exercice 1.3 : a) Réaliser un codeur octal – binaire entrée 8 voies, sortie 3 voies). b) Concevoir un système permettant d’afficher les dix chiffres décimaux sur un afficheur 7 segments à partir d’un clavier à 10 touches.

Remarque 1.3 : Exemple de circuit intégré codeur •

74147 : Codeur de priorité décimal – DCB.

1.3 Le transcodeur 1.3.1 Définition Un transcodeur est un circuit logique permettant de passer du nombre N écrit dans un code C1 au même nombre N écrit dans le code C2. Le Nombre N s’exprimera par exemple à l’aide des variables A, B, C, D dans le code C1, et à l’aide des variables X, Y, Z dans le code C2 (le nombre de variables n’est pas forcément identique dans les deux codes). La synthèse d’un transcodeur revient donc à exprimer chacune des variables du code de sortie en fonction de celles du code d’entrée, c'est-à-dire :

X = f ( A, B, C , D) Y = f ( A, B, C , D) Z = f ( A, B, C , D)
1.3.2 Réalisation des transcodeurs Nous nous proposons de réaliser un transcodeur binaire pur – binaire réfléchi (code Gray) sur 3 bits.

Electronique Numérique/CLAPS – ENSET de Douala

10

Table de vérité

Code binaire pur A 0 0 0 0 1 1 1 1 •
X
A BC

Code binaire réfléchi X 0 0 0 0 1 1 1 1 Y 0 0 1 1 1 1 0 0 Z 0 1 1 0 0 1 1 0

B 0 0 1 1 0 0 1 1

C 0 1 0 1 0 1 0 1

Equations des sorties

00 0 1 0 1

01 0 1

11 0 1

10 0 1 X=A

Y
A

BC

00 0 1 0 1

01 0 1

11 1 0

10 1 0

Y = A.B + A.B Y = A⊕ B

Z
A

BC

00 0 1 0 0

01 1 1

11 0 0

10 1 1

Z = B .C + B.C Z = B ⊕C

Electronique Numérique/CLAPS – ENSET de Douala

11

Logigramme à portes logiques

A

X Y

B

C
Remarque 1.4 :

Z

Le décodeur DCB – 7 segments peut être perçu comme un transcodeur dont le code d’entrée est le DCB, et le code de sortie est représenté par les sept sorties destinées à l’afficheur 7 segments.

1.4 Le multiplexeur 1.4.1 Définition Un multiplexeur ou sélecteur de données est un circuit logique qui permet d’aiguiller vers une seule sortie les données provenant de sources multiples. La sélection de la donnée qui doit être aiguillée à la sortie est commandée par l’entrée SELECT (aussi appelée entrée d’adresse ou entrée de sélection) à laquelle est envoyée une adresse exclusive, correspondant à ladite donnée.

1.4.2 Principe Le multiplexeur peut être perçu comme un commutateur à pôles multiples commandé par une entrée d’adresse. 2n entrées de données Un code d’adresse à n bits permet de sélectionner une donnée parmi 2n données disponibles. n entrées d’adresse MUX Le multiplexeur peut être muni

E

d’une entrée de validation E (enable) permettant d’autoriser le fonctionnement

Sortie

de la puce, lorsqu’elle est à son état logique vrai. Dans notre cas, elle est vraie au niveau logique bas

Electronique Numérique/CLAPS – ENSET de Douala

12

1.4.3 Réalisation des multiplexeurs

a) Multiplexeur élémentaire à deux entrées Il dispose de deux entrées d’informations I0 et I1, et d’une ligne d’adresse A pouvant recevoir soit 0, soit 1. Quand l’entrée d’adresse est à 0, l’information I0 est aiguillée vers la sortie ; quand elle est à 1 l’information I1est aiguillée vers la sortie. •

Table de vérité A 0 1 S I0 I1
S = I 0 . 0 + I1.0 S = I0 S = I 0 A + I1 A

Quand A=0 nous avons :

L’information I0 est donc aiguillée vers la sortie. Il peut s’agir d’un niveau logique permanent ou d’in signal logique variable. Il peut aussi s’agir de tout un bus de données codées sous plusieurs octets! Quand A=1, nous avons : •
S = I 0 . 1 + I1.1 S = I1

Logigramme à portes logiques
I1
1 3 2

S

I0

A

b) Multiplexeur à 4 entrées Suivant le même principe, un multiplexeur à 4 entrées d’informations peut être conçu. Celui –ci nécessitera bien évidemment un bus d’adresse à deux bits (22 =4).

Electronique Numérique/CLAPS – ENSET de Douala

13

Table de vérité A 0 0 1 1 B 0 1 0 1 S I0 I1 I2 I3
S = A.B .I 0 + A.B.I1 + A.B .I 2 + A.B.I3

Logigramme à portes logiques
I0

I1 S I2

I3

A

B

Exercice 1.4 : Concevoir un multiplexeur à 8 entrées d’information.

Remarque 1.5 : Quelques circuits intégrés multiplexeur • • 74157 : Quadruple multiplexeur à deux entrées, 74151 : Multiplexeur à 8 entrées

1.4.4 Applications des multiplexeurs Les applications des multiplexeurs sont nombreuses et variées. Nous en étudions quelques unes. a) Conversion parallèle – série Dans de nombreux systèmes numériques, le traitement des données binaires se fait en parallèle ; cependant, lorsque ces données doivent être transférées sur une longue distance, il n’est plus adéquat de le faire en parallèle, car cela exige un grand nombre de lignes de transmission et génère également un grand nombre d’erreurs. La conversion parallèle - série permet d’aiguiller les données parallèles vers une seule ligne de transmission afin d’en Electronique Numérique/CLAPS – ENSET de Douala 14

faciliter le transfert. Une telle conversion peut être réalisée à l’aide d’un multiplexeur, comme l’illustre la figure suivante. Le compteur modulo – 8 génère successivement les adresses de 000 à 111. Chacune de ces adresses permet d’aiguiller vers la Multiplexeur à 8 entrées sortie Sortie sérielle des données sérielle l’une des 8

I0 I1 I2 I3 I4 I5 I6 I7

informations. Pour réaliser la conversion totale d’un octet, 8 cycles d’horloge sont nécessaires. Le bit de poids le plus faible I0 est transmis en

Registre mémoire contenant les données parallèles

Compteur modulo - 8

premier, tandis que le bit de poids fort I7 es transmis en dernier.

b) Génération d’une fonction logique Il est possible d’utiliser des multiplexeurs pour matérialiser directement des fonctions logiques à partir d’une table de vérité sans devoir passer par le processus de simplification. Quand on utilise un multiplexeur à cette fin, les entrées d’adresse reçoivent les variables logiques, tandis que chaque entrée de données est raccordée en permanence à 0 ou à 1 de façon à respecter la table de vérité. Soit à réaliser la fonction logique décrite par la table de vérité suivante à l’aide d’un multiplexeur à huit entrées d’information. 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 S 0 1 0 0 0 1 1 0 I0 I1 I2 I3 I4 I5 I6 I7 S
A B C

Vcc

E

I0 I1 I2 I3 I4 I5 I6 I7 MUX

Electronique Numérique/CLAPS – ENSET de Douala

15

Exercice 1.5 : Concevoir un multiplexeur à 4 entrées d’informations à l’aide d’un décodeur 1 parmi 4 et des portes logiques judicieusement choisies.

1.5 Le démultiplexeur 1.5.1 Définition Le démultiplexeur est un circuit logique qui permet d’aiguiller vers (une parmi) plusieurs sorties, les informations provenant d’une seule origine. Il réalise la fonction duale du multiplexeur. 1.5.2 Principe Le démultiplexeur dispose d’une seule entrée d’information, de n lignes d’adresse et de 2 sorties. Lorsqu’un code est envoyé sur les lignes d’adresse, la donnée disponible sur l’entrée d’information est aiguillée vers une seule des 2n sorties correspondant à ladite adresse.
Une entrée de donnée
n

Les sorties non aiguillées ne sont pas activée.
n entrées d’adresse

Le DEMUX

démultiplexeur

peut

comporter éventuellement une entrée de validation

2n sorties 1.5.3 Réalisation des démultiplexeurs Le principe du démultiplexeur est assez proche de celui d’un décodeur. Nous nous proposons de réaliser un démultiplexeur entrée une voie, sortie 4 voies. • A 0 0 1 1 B 0 1 0 1 Table de vérité O0 I 0 0 0 O1 0 I 0 0 O2 0 0 I 0 O3 0 0 0 I

O0 = A.B .I O1 = A.B.I O2 = A.B .I O3 = A.B.I

Electronique Numérique/CLAPS – ENSET de Douala

16

Logigramme à portes logiques
A B

I

O0

O1

O2

O3

Exercice 1.6 : Concevoir un démultiplexeur entrée une voie, sortie huit voies.

Remarque 1.6 : Exemple de circuit intégré démultiplexeur • 74LS138 : Décodeur / démultiplexeur entrée une voie, sorties huit voies.

Exercice 1.7 : Donner une application concrète du démultiplexeur.

1.6 Circuits arithmétiques 1.6.1 Additionneur Un additionneur est un circuit logique réalisant l’addition de deux nombres binaires. En pratique, un ordinateur ne peut additionner que deux nombres binaires à la fois, chacun des nombres pouvant avoir plusieurs bits. Le principe de l’addition binaire est assez proche de celui de l’addition des nombres décimaux. On effectue l’addition des bits en commençant par les bits de poids les plus faibles, et la retenue générée à chaque rang est directement répercutée sur le rang situé immédiatement à gauche. Il est important de noter la différence entre l’addition binaire (ou arithmétique) et l’addition Booléenne (ou logique)

Electronique Numérique/CLAPS – ENSET de Douala

17

Addition binaire 1+1=10 ⇒ 0 et report de 1 1+1+1= 11 ⇒ 1 et report de 1

Addition logique (fonction OU) 1+1=1 1+1+1=1

a) Le demi additionneur (DA) Le demi additionneur additionne deux nombres binaires codés sur un bit chacun. Il reçoit en entrée les deux bits à additionner et génère en sorties un nombre de deux bits ; le bit de poids faible est appelé bit de somme S tandis que le bit de poids fort est appelé bit de retenue Ro. • Table de vérité A 0 0 1 1 • B 0 1 0 1 S 0 1 1 0 Ro 0 0 0 1
S = A .B + A.B S = A⊕ B Ro = A.B

Logigramme à portes logiques

A

S

B Ro
b) Additionneur complet (AC) Le principe précédent peut être généralisé pour décrire l’addition de deux nombres binaires A et B de taille supérieure à un bit. Chacun des bits Ai et Bi sont additionnés un par un en commençant par les bits de poids faible. Il faut pour cela répercuter à l’étape i+1 l’éventuelle retenue provenant de l’addition de Ai et Bi , comme cela se fait dans l’addition des nombres décimaux. Une nouvelle variable Ri représentant le retenue entrante est alors introduite. Par analogie Ro est appelé retenue sortante. La retenue sortante de l’étape i représente donc la retenue entrante de l’étape i+1. Ce principe est illustré par la figure suivante.

Electronique Numérique/CLAPS – ENSET de Douala

18

B2

B1

B0

R3

R2 AC AC

R1 AC

R0

...

S2

A2

S1

A1

S0

A0

La retenue initiale Ro est bien évidemment égale à 0 puisqu’il n’y a pas de rang précédent au rang 0. • A 0 0 0 0 1 1 1 1
S
A BRi

Table de vérité B 0 0 1 1 0 0 1 1 Ri 0 1 0 1 0 1 0 1 S 0 1 1 0 1 0 0 1 Ro 0 0 0 1 0 1 1 1

00 0 1 0 1

01 1 0

11 0 1

10 1 0

S = A.B .Ri + A.B.Ri + A.B .Ri + A.B.Ri S = A (B ⊕ Ri ) + A B ⊕ Ri S = A ⊕ (B ⊕ Ri ) S = A (B .Ri + B.Ri ) + A(B .Ri + B.Ri )

(

)

Ro
A

BRi

00 0 1 0 0

01 0 1

11 1 1

10 0 1 R0 = A.Ri + A.B + B.Ri

Exercice 1.8 : Retrouver l’expression de la sortie Ro en utilisant la simplification booléenne.

Electronique Numérique/CLAPS – ENSET de Douala

19

Logigramme à portes logiques
A B Ri

S

Ro

Exercice 1.9 : Soit le système numérique suivant composé de deux demi additionneurs et d’une porte OU. Etablir sa table de vérité, puis conclure. A B DA So
Ro

S DA

Ri Ro

1.6.2 Le soustracteur La soustraction d’un nombre binaire B de l’autre nombre binaire A se ramène à l’addition de A et du complément à 2 de B. A − B = A + (− B) = A + C2 ( B) = A + ( B + 1) a) Demi soustracteur (DS) Le demi soustracteur réalise la soustraction d’un nombre binaire B d’un bit d’un autre nombre binaire B d’un bit. Il possède deux entrées que sont les nombres A et B, et deux sorties Di et Ro qui sont respectivement le bit de différence et la retenue sortante.

Electronique Numérique/CLAPS – ENSET de Douala

20

Table de vérité A 0 0 1 1 B 0 1 0 1 Di 0 1 1 0 Ro 0 1 0 0 Remarque : 0 – 1 = -1 = 11(en notation complément à 2) ⇒ 1 et retenue de 1

Di = A .B + A.B = A ⊕ B

Ro = A .B

Logigramme à portes logiques

A

Di

B Ro

b) Soustracteur complet (SC) Nous pouvons généraliser la structure précédente pour décrire la soustraction des nombres binaires de taille supérieure à un bit. Pour cela, il faut introduire une nouvelle variable Ri qui représente la retenue entrante. • A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 Table de vérité Ri 0 1 0 1 0 1 0 1 Di 0 1 1 0 1 0 0 1 Ro 0 1 1 1 0 0 0 1 Remarque : 0 - 1 – 1 =110 (- 210 en notation complément à 2, le bit de poids le plus fort est le bit de signe) ⇒ 0 et retenue de 1

Electronique Numérique/CLAPS – ENSET de Douala

21

Di
A

BRi

00 0 1 0 1

01 1 0

11 0 1

10 1 0

Di = A.B .Ri + A.B.Ri + A.B .Ri + A.B.Ri Di = A (B .Ri + B.Ri ) + A(B .Ri + B.Ri ) Di = A.(B ⊕ Ri ) + A. B ⊕ Ri Di = A ⊕ ( B ⊕ Ri )

(

)

Ro
A

BRi

00 0 1 0 0

01 1 0

11 1 1

10 1 0
R0 = A.Ri + A.B + B.Ri

Logigramme à portes logiques
A B Ri

Di

Ro

1.6.3 Le comparateur Un comparateur est un circuit logique capable de détecter l’égalité de deux nombres binaires et éventuellement d’indiquer le nombre le plus grand ou le plus petit. Les nombres à comparer doivent être codés sous un même nombre de bits. • Table de vérité S1 A 0 0 1 1 B 0 1 0 1 S2 S3

(A>B) (A=B) (A<B) 0 0 1 0 1 0 0 1 0 1 0 0

S1 = A.B S2 = A ⊕ B S3 = A.B

Electronique Numérique/CLAPS – ENSET de Douala

22

Logigramme à portes logiques
A B

S1

S2

S3

Exercice 1.10 : Concevoir un circuit logique qui effectue la comparaison de deux mots binaires ayant chacun deux bits.

Electronique Numérique/CLAPS – ENSET de Douala

23