Académique Documents
Professionnel Documents
Culture Documents
SYSTEMES DE NUMERATION
ET OPERATIONS ARITHMETIQUES
A- SYSTEMES DE NUMERATION :
Pour qu’une information numérique soit traitée par un circuit, elle doit être mise sous
forme adaptée à celui-ci. Il y a lieu alors de choisir un système de numération de base B
(B un nombre entier naturel ≥ 2).
De nombreux systèmes de numération sont utilisés en technologie numérique. Les
plus courants sont les systèmes décimal, binaire et hexadécimal.
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 :
2- Système Binaire :
Le système décimal est difficile à adapter aux systèmes numériques. Par exemple, il est
difficile de concevoir des équipements électroniques qui puissent fonctionner avec dix
niveaux de tensions différents. Par contre, il est très facile d’imaginer des systèmes
électroniques qui fonctionnent seulement avec deux niveaux de tension. C’est le raison
pour laquelle la plus part des systèmes numériques ont recours au système binaire (base 2)
comme système de numération. Dans le système binaire, il n’y a que deux chiffres
possibles 0 et 1.
Dans le système binaire, le chiffre binaire est souvent abrégé en bit.
Exemple 1 :
3- Système Hexadécimal :
Le système hexadécimal 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 systèmes hexadécimal, décimal
et binaire.
Hexadécimal Décimal Binaire
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
A 10 1010
B 11 1011
C 12 1100
D 13 1101
E 14 1110
F 15 1111
Exemples :
356(16) = 3.162 + 5.161 + 6.160 = 854(10)
Tout nombre binaire peut être transformé en son équivalent décimal 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
1 12 2
0 6 2
0 3 2
1 1 2
1 0
Donc 2510 = 11001
10 1 16
1 0
Donc 42310 = 1A716
On remarque que les restes supérieurs à 9 exprimés au moyen des lettres A à F.
Exemple :
9 F 2
1001 1111 0010 = 100111110010
B- ARITHMETIQUE BINAIRE
Le complément à 2 : 010011
Remarque 1 : Pour revenir d’un nombre complémenté à 2 au nombre binaire initial, il faut de
nouveau complémenter à 2.
Remarque 2 : En notation en complément à 2 et avec N bits, on représente les nombres signés
compris entre -2N-1 à 2N-1 -1
Effectuons l’addition des deux nombres suivants. L’écriture de l’addition est la suivante :
Résultat : 1101
Résultat 1 0001
↑
dépassement
1 0011 ← 310
↑
Débordement à éliminer
Effectuons l’addition des deux nombres suivants : -610 + -210
Comme -610 et -210 sont des nombres négatifs, il faut les remplacer par leur complément à 2.
Donc l’addition est : -610 → 1010 complément à 2 de 6
-210 → 1110 complément à 2 de 2
1 1000
↑
Débordement à éliminer
Le résultat est un nombre négatif, on doit prendre son complément à 2.
Le résultat est donc en notation exacte 1000 = 810 en valeur absolue.
N.B. : Avec l’addition des nombres signés, le débordement est toujours ignoré.
ΙΙΙ-MILTIPLICATION BINAIRE
On multiplie les nombres binaires de la même façon qu’on multiplie les nombres
décimaux. Voici un exemple de multiplication de nombres binaires non signés.
1 0 0 1 → 910
x 1 0 1 1 → 1110
1001
1001
0000
1001
1 1 0 0 0 1 1 → 9910
Il faut toujours s’assurer que le résultat se tient dans l’intervalle [0,2N -1] avec des nombres
non signés à N bits, ou dans l’intervalle [-2N-1 ,2N-1 -1] avec des nombres signés.
410 - - - - - - -→ 00100 -410 - - - - - - -→ 11100
Complément à 2
-310 - - - - - - → 11101 -310 - - - - - - - → 11101
Complément à 2 complément à 2
Donc donc
11101 11100
x 00100 x 11101
Exemple :
110110
-1010
00111
-00000
1110
-1010
0100
C- ARITHMETIQUE HEXADECIMALE
Les nombres hexadécimaux sont utilisés dans la programmation en langage machine, et
aussi pour désigner les adresses indiquant les cases mémoires.
Ι- Addition Hexadécimal :
Ce type d’addition est effectué de la même façon que l’addition décimale, tout en
notant que le chiffre le plus grand en hexadécimal est F.
La procédure proposée est celui-ci :
• Additionner les deux chiffres hexadécimaux comme des chiffres décimaux, en
remplaçant mentalement les lettres par leurs équivalences.
• Si la somme ≤ 15, inscrire directement le chiffre hexadécimal.
• Si la somme ≥ 16, soustraire 16 et reporter 1 sur le rang à gauche.
Exemples :
58 58 3AF CAFE
+ 34 + 4B +43C + CAF E
-------- --------- --------- -----------
= 8C =A3 =7EB =195FC
D- Les Codes
L’action de faire correspondre à des nombres, des lettres ou des mots, un groupe
spécial de symboles s’appelle codage. Ce groupe de symboles s’appelle code.
Code 0 1 2 3 4 5 6 7 8 9
Décimal
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.
Exemple : 8 7 4 décimal
↑ ↑ ↑
1000 0111 0100 BCD
Le tableau suivant donne la liste du code majoré de trois pour les dix chiffres décimaux.
Code Décimal 0 1 2 3 4 5 6 7 8 9
Code Majoré de 3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100
ALGEBRE DE BOOLE
ET PORTES LOGIQUES
Les circuits numériques fonctionnent en mode binaire, c'est-à-dire en mode dans lequel les
tensions sont 0 ou 1. C’est une caractéristique des circuits logiques qui font appel à l’algèbre
de Boole pour l’analyse et la conception des circuits numériques. L’algèbre Booléenne se
distingue de l’algèbre ordinaire par des variables qui ne peuvent prendre que les deux valeurs
possibles 0 et 1.
Dans l’algèbre de Boole, on ne trouve que trois opérations Booléennes élémentaires :
• L’addition logique, dite aussi OU. Le symbole de cette opération est (+).
• La multiplication logique, dite aussi ET. Le symbole de cette opération est (.).
• L’inverse logique, dite aussi NON. Le symbole de cette opération est (---).
Ι- La Porte OU (OR)
Soit deux variables logiques indépendantes, A et B. L’addition logique de ces deux
variables donne : X = A + B
Dans cette équation, le signe + n’indique pas une addition ordinaire, mais plutôt l’addition
logique (opération ou) dont les règles sont définis dans la table de vérité ci-dessous :
A B X=A+B
0 0 0
0 1 1
1 0 1
1 1 1
Le circuit électronique qui réalise cette fonction est la porte OU (OR) ayant au moins deux
entrées et dont la sortie est égale à la somme logique des entrées.
A B X= A. B
0 0 0
0 1 0
1 0 0
1 1 1
Le circuit électronique réalisant cette fonction est la porte ET ayant au moins deux entrées et
dont la sortie est égale au produit logique des entrées.
Remarque : Il exista des portes ET à plus de deux entrées. A titre d’exemple la figure ci-
dessous montre une porte ET à trois entrées.
A B C X =A . B . C
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
A X=Ā
0 1
1 0
Tout circuit logique quelle que soit sa complexité, peut être décrit au moyen des opérations
booléennes déjà décrites, car la porte ET, la porte OU et la porte inverseuse sont les circuits
constitutifs élémentaire des systèmes numériques.
La porte NI est équivalente à une porte OU suivie d’un inverseur. L’expression de sortie
d’une fonction NI est :
X=A+B
Le tableau de vérité ainsi que le symbole de la porte NI sont donnés par le figure ci-dessous :
A B A+B A+B
0 0 0 1
0 1 1 0
1 0 1 0
1 1 1 0
C’est une porte logique à deux entrées A, B. ces deux entrées sont combinées pour que la
sortie soit égale :
X=A⊕B
La porte OU exclusif produit en sortie un niveau Haut quand les signaux sur les deux
entrées sont opposés.
A B A⊕B
0 0 1
0 1 0
1 0 0
1 1 1
La porte NI produit en sortie un niveau Haut quand les deux entrées sont identiques.
VΙ-Théorèmes de Boole
1- Théorèmes pour une variable
X .0 = 0 X+1 =1
X.1 = X X+0 =X
X .X = X X+X = X
_ _
X. X = 0 X+X =1
• 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
Deux des plus importants des théorèmes de l’algèbre Booléenne sont donnés par le
mathématicien DE MORGAN : _ _
X +Y = X. Y
_ _
X .Y = X+Y
Vérification :
____ _ _ ____ _ _
X Y X+Y X .Y X .Y X+Y
0 0 1 1 1 1
0 1 0 0 1 1
1 0 0 0 1 1
1 1 0 0 0 0
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)
_
D’après le théorème : 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
1-Diagrammme de Karnaugh :
2-Exemples
_
B B
_
A 1 0 _ _
X= A .B + A. B
A 0 1
_
C C
_ _
A .B 0 0
_ _
A .B 1 0 X = B .C
A .B 1 0
_
A .B 0 0
_
C C
_ _
A .B 0 0 _
_ X=A.B
A .B 1 1
A .B 0 0
_
A .B 0 0
X=C
A .B 0 0
_
A .B 0 1
_ _ _ _
C .D C .D C .D C .D
_ _ _ _ _
A .B 0 0 0 1 X = A. B .C .D + A .C D + B .D
_
A .B 0 1 1 0
A .B 0 1 1 0
_
A .B 0 0 1 0
_ _ _ _
C .D C .D C .D C .D
_ _ _ _ _ _ _ _
A .B 0 1 0 0 X =A. B. D +B. C .D + B. C .D +A .B .D
_
A .B 0 1 1 1
A .B 0 0 0 1
_
A .B 1 1 0 1
A .B 0 0 0 0
_
A .B 1 0 0 1
_ _ _ _
C .D C .D C .D C .D
_ _ _ _ _
A .B 0 0 1 0 X= A. B +B .C +A. C .D
_
A .B 1 1 1 1
A .B 1 1 0 0
_
A .B 0 0 0 0
_ _ _ _
C .D C .D C .D C .D
_ _ _
A .B 1 1 1 1 X= B
_
A .B 0 0 0 0
A .B 0 0 0 0
_
A .B 1 1 1 1
_ _ _ _
C .D C .D C .D C .D
_ _ _
A .B 1 1 0 0 X=C
_
A .B 1 1 0 0
A .B 1 1 0 0
_
A .B 1 1 0 0
_ _ _ _
C. D C. D C. D C. D
_ _ _
A. B .E 0 0 0 0
_ _
A. B .E 1 1 1 1
_
A. B .E 1 1 1 1 _ _ _
_ _ X= B. E + A .B .E. C + A. B. E
A. B .E 0 0 0 0
_
A. B .E 0 0 1 1
A. B .E 0 0 0 0
_
A. B .E 1 1 1 1
_ _
A. B .E 0 0 0 0
_ _ _ _ _ _ _ _ _ _ _ _
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 1 1 0 0 0 0 0 0
_ _
A. B. E 1 1 0 0 0 0 0 0
_
A. B. E 1 1 0 0 1 1 1 1
_ _
A. B. E 1 1 0 0 0 0 0 0
_
A. B. E 0 0 0 0 0 0 0 0
A. B. E 0 0 0 0 0 1 1 0
_
A. B. E 1 1 1 1 0 1 1 0
_ _
A. B. E 0 0 0 0 0 0 0 0
_ _ _ _ _ _
X= C. F. E + A. B. E. F + A. B. E .F + B. E. D. F
A B C X
0 0 0 0
0 0 1 0
0 1 0 0
_
0 1 1 1 A. B. C
1 0 0 0
_
1 0 1 1 A. B. C
_
1 1 0 1 A. B. C
1 1 1 1 A. B. C
_ _ _
Donc X = A. B .C + A. B .C + A. B .C + A. B .C
Cette expression peut être simplifié à l’aide de diagramme de Karnaugh :
_
C C
_ _
A. B 0 0
_
A. B 0 1
A. B 1 1
_
A. B 0 1
Donc X= A. B + A. C +B. C
Exemple 2 :
Déterminer le circuit logique à quatre entrées A, B, C, D,(dont les valeurs sont données au
tableau suivant) qui donnent en sortie un niveau Haut quand le chiffre présent sur les entrées
est supérieur à 00110 = 610
A B C D X
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
1 1 1 1 1 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
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 l’année scolaire, un lycée examine le cas de chaque élève. Trois
critères sont utilisés :
• Ayant une moyenne à l’examen :M
• Est redoublant :R
• Ayant une bonne appréciation
Le règlement de l’établissement est le suivant :
1- Tout élève qui a la moyenne passe au niveau supérieur.
__ _ _
RB RB RB RB
__
M Reo Red Renv Renv
On a : _ _ _ _
Reo = M. R. B Renv = M. R
_ _
Red = M. R. B N.Sup = M
Ι- Définition
Un décodeur est un circuit numérique qui a N entrées et 2N sorties. Pour chacune des
combinaisons possibles des entrées, seule une ligne de sortie est validée (soit à un niveau
Haut, soit à un niveau Bas selon le type du décodeur).
N entrées 2N sorties
Certains décodeurs sont dotés d’une ou plusieurs entrées de validation qui servent à
commander son fonctionnement.
La figure ci-dessous nous montre l’exemple d’un décodeur en CI (74138) très utile, ayant
trois voies d’entrée donc 23 = 8 voies de sortie (décodeur 1 parmi 8). Remarquez que pour un
code d’entrée donné, une seule sortie est vraie au niveau Bas.
A B C Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
0 0 0 0 1 1 1 1 1 1 1
0 0 1 1 0 1 1 1 1 1 1
0 1 0 1 1 0 1 1 1 1 1
0 1 1 1 1 1 0 1 1 1 1
1 0 0 1 1 1 1 0 1 1 1
1 0 1 1 1 1 1 1 0 1 1
1 1 0 1 1 1 1 1 1 0 1
1 1 1 1 1 1 1 1 1 1 0
Les décodeurs servent chaque fois qu’on a besoin d’une sortie soit validée, quand une
certaine combinaison de niveaux est présentée à l’entrée. Ces niveaux d’entrée sont
fréquemment fournis par un compteur qui dénombre sans arrêt les sorties du décodeur et
peuvent alors servir à une tâche de synchronisation ou de séquencement pour mettre en
marche ou en arrêt différents dispositifs.
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
Le décodeur 7446 et7447 ont été conçus de façon à allumer certains segments même si le
code d’entrée est supérieur à 9 (1001).
B- Codeurs
I- Définition
Le processus inverse du décodage est le codage. Un codeur à M voies d’entrée dont une
seule est active lui correspond une représentation de sortie de N bits.
CODEUR
2N sorties
N entrées
L’entrée E0 n’est pas reliée car les sorties affichent 0000 lorsque toutes les autres entrées sont
à l’état 0.
Ce codeur ne fonctionne convenablement que si une seule entrée est activée à la fois. Si
deux entrées sont activées simultanément à 1 les entrées E2 et E4 , on obtient en sortie le
nombre binaire 0110, ce qui correspond au code binaire de l’entrée E6 . pour éviter les erreurs,
il faut utiliser un codeur de priorité.
C- Multiplexeur
I- Définition
Un multiplexeur est circuit logique ayant plusieurs entrées de données, mais seulement une
sortie qui communique les données.
L’aiguillage des données d’entrée vers la sortie est commandé par les entrées Select (ou
entrée d’adresse).
Un multiplexeur à 2 entrées est un circuit logique qui est formé de deux entrées I0 et I1, et
une seule entrée de sélection S.
2- Multiplexeur à 4 entrées
Le même principe de base sert à construire un multiplexeur à 4 entrées comme celui de la
figure ci- dessous.
S1 S0 Sortie
0 0 Z= I0
0 1 Z= I1
1 0 Z= I2
1 1 Z= I3
Cours circuits Logiques 29 El Amjed HAJLAOUI
Dans ce cas, il y a 4 entrées I0, I1, I2, I3 qui sont transmises à la sortie selon le choix indiqué
par l’une des quatre combinaisons possibles des sorties de sélection S0 S1.
3- Multiplexeur à 8 entrées
La figure ci- dessous montre le schéma d’un multiplexeur à huit entrées (74151).
_
E S2 S1 S0 Z Z
H X X X H B
_
B B B B I0 I0
_
B B B H I1 I1
_
B B H B I2 I2
_
B B H H I3 I3
_
B H H B I4 I4
_
B H H H I5 I5
_
B H H B I6 I6
_ _
B H H H I7 I7
Il est possible d’utiliser les multiplexeurs pour matérialiser directement les 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 de sélection reçoivent les variables
logiques et chaque entrée est raccordée en permanence à 0 ou à 1, de façon à respecter la table
de vérité.
La figure ci-dessous montre comment on utilise un multiplexeur à 8 entrées pour
matérialiser un circuit logique qui fonctionne conformément à la table de vérité ci- dessous :
C B A Z
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 1
74151 MUX
Les variables A, B, C sont raccordées respectivement à S0, S1, S2. La sortie Z doit être à 0
quand CBA= 000, donc l’entrée du multiplexeur I0 doit être raccordée à 0.
De la même façon, Z= 0 quand CBA = 011, 100, 101, 110, de sorte quand les entrées I3 I4 I5
et I6 sont raccordées en permanence à 0.
La sortie Z= 1 quand CBA = 001, 010 et 111 de sorte que les entrées I1, I2 et I7 du
multiplexeur sont raccordés en permanence à 1.
Il est facile de voir que la table de vérité à 3 variables peut être matérialise du moyen d’un
_ _ _ _
Multiplexeur à 8 entrées. Z = A .B. C + A. B. C + A. B. C
X1
X2
74151
X3
MULTIPLEXEUR
X4 8 ENTREES
X5
X6
X7
A J A J A J
K K K
Les données sont présentées sur les sorties du registre X et viennent alimenter le
multiplexeur à 8 entrées. Un compteur 3 bits (Modulo- 8) sert à produire les bits du code de
sélection S2 S1 S0, et ce code parcourt toutes les valeurs 000 à 111 quand les impulsions
d’horloge sont appliquées à ce compteur.
De cette façon, la sortie du multiplexeur sera X0 pendant la première période du signal
d’horloge, X1 pendant la deuxième période et ainsi de suite. La forme d’onde qu’on observe
sur Z est une représentation série de la donnée d’entrée parallèle. 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 d’opérations
Un Ordonnanceur est circuit qui respecte un circuit qui respecte une séquence préétablie, et
à chaque étape de la séquence, il met en marche une partie du procédé physique.
Un exemple d’Ordonnanceur de commande est donné par la figure ci- dessous :
_
Au départ, le compteur est à 0000, donc la sortie O0 du décodeur égal à 0 et toutes les autres
_ _
sont à 1, de sorte que les entrées de l’actionneur du procédé sont toutes à 0. La sortie Z= I0 =
1.
L’impulsion DEBUT lance l’opération d’Ordonnancement et met dans le compteur l’état
_
001. la sortie O1 du décodeur se trouve maintenant au niveau Bas, ce qui déclenche
l’actionneur 1 correspondant à la première étape du procédé.
Un peu plus tard, la sortie du capteur -1 passe à 1, ce qui indique la fin de la première étape.
_ _
Ce niveau Haut se trouve à présent à l’entrée I1 du multiplexeur donc Z = I1 . La valeur base
_
de Z est appliquée à l’entrée CLK du compteur qui sera incrémenté à la valeur 010.
_
La sortie O2 passe au niveau Bas, ce qui déclenche l’actionneur -2 correspondant à la seconde
étape du procédé. Quand cette étape est achevée, la sortie du capteur -2 passe au niveau Haut,
_
Les multiplexeurs peuvent servir à aiguiller les données entre plusieurs sources et une seule
destination.
D- Démultiplexeur
I- Définition
Un démultiplexeur est circuit logique qui a une seule entrée et N voies de sortie. Il reçoit
les données d’entrée et choisit de les diriger vers une des N voies de sortie possibles, il
fonctionne comme un commutateur.
2n
Une DéMultiplexeur
Sorties
Entrée
II- Exemple
La figure ci-dessous montre un démultiplexeur à huit voies de sortie. La ligne d’entrée I est
connectée aux huit portes ET, mais une seule de ces portes est validée par les entrées
SELECT.
Ai Bi Si Ri
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Le demi-additionneur ne peut faire que l’addition des deux chiffres de plus faible poids,
puisqu’il ne peut pas prendre en compte la retenue qui provient d’une colonne précédente.
Pour relever cette difficulté on utilise l’additionneur complet
ADDITIONNEUR COMPLET
ADDTIONNEUR PARALLELE
1-ADDITIONNEUR PARALLELE A DEUX NOMBRES
cet additionneur est capable de fournir l’addition de deux nombres binaires. Pour cela il
nécessite un additionneur complet (AC) pour chaque chiffre à traiter.
S1
a1 A
b1
a2 A S2
b2
a3 A S3
b3
A titre d’exemple le 7483 est additionneur parallèle 4 bits, dont le schéma est le suivant.
A3 A2 A1 A0
additionneur parallèle
C4 de 4 bits 74LS83
S3 S2 S1 S0 B3 B2 B1 B0
Additionneur de 4 Additionneur de 4
C8 bits bits
B7 B6 B5 B4 B3 B2 B1 B0
S7 S6 S5 S4
S3 S2 S1 S0
Nb binaire A S Nb S
N1 additionneur
complet
B Rn
Nb binaire
N2
D Q
Les nombres à additionner N1etN2 et la somme S sont stockés dans des registres à décalage.
Chaque chiffre des nombres N1etN2 est décalé dans l’additionneur quand arrive le front
d ‘horloge (H), en commençant par le chiffre de plus faible poids.
En supposant que la sortie de la bascule D est initialement à l’état 0, l’application de la
première impulsion d’horloge a pour effet de présenter le chiffre de faible poids des deux
nombres N1et N2 aux entrées A et B de l’additionneur. La borne apparaît en sortie : la retenue
est appliquée à l’entrée de la bascule D. A l’impulsion d’horloge suivante, le chiffre suivant
des deux nombres N1et N2 est présenter aux entrées A et B de l’additionneur, la somme
précédente S est décalée dans le registre à décalage, la retenue précédente est enregistrée par
la bascule, et se présente alors à l’entrée de Rn-1 de l’additionneur. Cette procédure se répète
jusqu’à la fin de l’addition des chiffres des deux nombres N1et N2.On note bien que
l’additionneur série est moins rapide que l’additionneur parallèle pour donner le résultat de
l’addition.
B- SOUSTRACTEUR
La soustraction se résume à une opération d’addition, si on exprime les nombres négatifs
selon la notation en complément à2.
Quand on soustrait en utilisant la notion en complément à 2, le diminuteur est complémenté
à2 puis additionné au diminuante.
Le circuit additionneur parallèle 7483 peut être modifié pour obtenir le complément à 2 du
diminuteur contenu par exemple dans un registre B.
En effet on utilise les sorties complémentées du registre B et on applique 1 à l’entrée C0, de
sorte qu’on additionne ainsi un 1 au bit de poids le plus faible. C’est ainsi qu’on obtient la
somme d’un nombre avec un nombre complémenté à 2, comme le montre la figure ci-dessous.
A3 A2 A1 A0
EXEMPLE
A3A2A1A0
+ B3B2B1B0
S4S3S2S1S0
S4est en réalité C4, report produit par le rang de bits le plus fort.
En BCD, il existe 6 pseudo-tétrades qui sont 1010, 1011, 1100, 1101, 1110 et 1111. Chaque
fois que le résultat soit une pseudo-tétrade ou S4=1, il faut faire la correction en ajoutant
6(0110).
00 01 11 10
Pour cela il faut détecter ces pseudo tétrades
00 0 1 3 2
ainsi que la retenue d’ordre 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 opération.
10 8 9 11 10
D-MULTIPLICATION
L’opération de la multiplication est illustrée par l’exemple suivant :
1011 MULTIPLICANDE
1101 MULTIPLICATEUR
1011
0000
01011
1011
110111
1011
10001111
Le circuit réalisant cette fonction doit comporte :
C- COMPARATEUR
Un comparateur est un circuit dont la fonction est d’indiquer, si un nombre binaire est
inférieur, égale ou supérieur à 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.
La bascule (flip flop) est l’élément de base de la logique séquentielle, elle est aussi
l’élément de mémorisation le plus important, qui est constitué de portes logiques. Ces
bascules sont divisées en deux groupes :
Bascules asynchrones : la sortie de ces bascules peut changer d’état à tout moment, quand une
ou plusieurs entrées changent.
Bascules synchrones : la sortie de ces bascules ne change d’état qu’à un moment exact
commandé par un signal appelé signal d’horloge.
I- Bascule R- S
1- Bascules R- S Asynchrone :
a- Structure d’une bascule RS asynchrone
Cette bascule, la plus élémentaire, est constituée à partir de deux portes NAND et ayant
une table de vérité suivante :
S R Q
1 1 inchangée
0 1 Q=1
1 0 Q=0
0 0 Ambiguë
S = 0 , R= 1 (Ecriture d’un 1) : cette condition entraîne toujours la sortie dans l’état 1 où elle
demeure même après le retour de S au niveau Haut (on retrouve le cas précédent). On dit que
c’est la condition de mise à 1 de la bascule.
S = 1, R = 0 (Ecriture d’un 0) : cette condition entraîne toujours la sortie dans l’état 0 où elle
demeure même après le retour de R au niveau Haut (état -1). On dit que c’est la condition de
mise à 0 de la bascule
S R CLK Q
0 0 ↑ Q0(inchangée)
1 0 ↑ 1
0 1 ↑ 0
1 1 ↑ Ambiguë
S R CLK Q
0 0 ↓ Q0(inchangée)
1 0 ↓ 1
0 1 ↓ 0
1 1 ↓ Ambiguë
Les entrées R et S commandent la sortie Q de la bascule de la même manière que dans le cas
asynchrone, sauf qu’ici la sortie n’est pas modifiée avant qu’arrive le front montant ou
descendant du signal d’horloge.
Une bascule R- S peut être utilisée pour supprimer ce rebondissement aléatoire qui dure
généralement quelques millisecondes, mais qui peut être très gênant pour certaines
applications.
Supposons que l’interrupteur soit au début en position 1, de sorte que R est au niveau
Bas, donc Q=0. Quand l’interrupteur 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 l’interrupteur rebondit S
Une bascule J- K synchrone déclenchée par un front montant d’un signal d’horloge est
donnée par la figure ci-dessous avec sa table de vérité.
J K CLK Q
0 0 ↑ Q0(inchangée)
1 0 ↑ 1
0 1 ↑ 0
J K CLK Q
0 0 ↓ Q0(inchangée)
1 0 ↓ 1
0 1 ↓ 0
1 1 ↓ __
Q0(basculement)
1- D-edge triggered :
La figure ci-dessous donne le symbole d’une bascule D synchrone déclenchée par un
front montant du signal d’horloge.
D CLK Q
0 ↑ 0
1 ↑ 1
Une bascule déclenchée par un front descendant fonctionne exactement comme on vient
de le décrire, à la seule exception que le passage de la valeur de D sur Q survient aux
moments des fronts descendants de CLK.
Réalisation d’une bascule D-edge triggered
Une bascule D déclenchée par un signal d’horloge n’est pas difficile à construire : il
suffit d’ajouter un inverseur à une bascule R- S déclenchée par un signal d’horloge ou une
bascule J- K, comme le montre la figure ci-dessous :
CLK D Q
0 X Q0(inchangée)
1 0 0
1 1 1
L’entrée d’horloge,dans ce cas, n’agit pas uniquement à l’instant de passage des fronts.
En effet :
Quand CLK est à 1, la sortie Q à la forme d’onde que D dans ce mode, on dit que l’élément de
mémoire D est transparent.
Quand CLK est à la sortie Q demeure au niveau qu’elle avait avant que CLK passe au niveau
0. en d’autre terme, la sortie est verrouillée sur son niveau actuel et na change pas tant que
CLK reste au niveau Bas, même si D change.
A titre d’exemple, la figure ci-dessous montre la forme d’onde Q d’une bascule D.
Avant T1, CLK est au niveau bas, de sorte que Q est verrouillée sur le niveau courant 0
et reste fixe malgré les changements du niveau D. durant l’intervalle T1 à T2, CLK est au
CHAPITRE VI
COMPTEURS ET REGISTRES
A- Compteurs
I- Compteurs Asynchrones
Q0 J0 Q0 J0 Q0 J0 Q0 J0
CLK0 CLK0 CLK0 CLK0
_ _ _ _
Q0 K0 Q0 K0 Q0 K0 Q0 K0
En règle générale, la sortie de la dernière bascule d’un compteur est une onde
dont la fréquence est celle du signal d’horloge divisé par le MODULO du compteur.
Exercice d’application
A J
RAZ K
Tous les compteurs étudiés comptaient progressivement à partir de zéro, c’étaient tous
les compteurs progressifs. Il est relativement facile de construire de décompteurs asynchrones,
c'est-à-dire qui partent d’un nombre maximal pour arriver à zéro.
Le même circuit est utilisé pour un décompteur qu’un compteur, à la différence que
cette fois c’est les sorties complémentées qui sont utilisées, c'est-à-dire chaque entrée CLK
des bascules est reliée à la sortie complimentée de la bascule qui la précède, comme l’indique
la figure ci-dessous pour un compteur MODULO-8.
C J B J A J
CLK CLK
_ _ _ CLK
C K B K A K
4- Retard de propagation
Les compteurs asynchrones (ou de propagation) sont les compteurs les plus simples,
mais présentent un inconvénient majeur dû au principe fondamental de leur fonctionnement.
Chaque bascule est déclenchée par la transition de la sortie de la bascule qui la précède. A
cause du retard de propagation tpd, la première bascule ne réagit qu’après cette durée à partir
du front déclenchant du signal d’horloge, la deuxième bascule ne régit que 2. tpd après
l’arrivée d’horloge et ainsi de suite…Autrement dit, les retards de propagation introduits par
les bascules s’additionnent de sorte que la nième bascule ne change d’état que N. tpd unité de
temps après l’arrivée de l’impulsion d’horloge.
La figure ci-dessous est une illustration de formes d’ondes d’un compteur à propagation
de 3 bits.
Dans cette exemple, le signal d’horloge CLK a une période 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 après le front descendant CLK. De même, B commute 50 ns après que la
D J C J B J A J
K K K K
La bascule A change d’état à chaque front descendant. C’est pour cette raison que ses
entrées J et K sont toujours gardés à 1.
La bascule B change d’état à chacun des fronts descendant survenant quand A=1.
Ce fonctionnement est obtenu en raccordant la sortie de A aux entrées J et K de la bascule B,
de sorte que J=K=1 tant que A=1.
La bascule C change d’état à chacun des fronts descendants survenant quand A=B=1.
Ce fonctionnement est réalisé grâce au raccordement du signal A B sur les entrées 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 entrées J et K de la bascule D.
Nous allons donner une procédure de conception plus rigoureuse du compteur
synchrone MODULO-16.
Avant de commencer la conception proprement dite, on rappelle le fonctionnement
d’une bascule J-K en partant d’une approche différente : celle de la table d’excitation ci-
dessous.
Qn Qn+1 J K
0 0 0 X
0 1 1 X
1 0 X 1
1 1 X 0
X : état indifférent
Grâce à cette table d’excitation, on peut déduire à partir de chaque état de sortie des
bascules J-K formant le compteur synchrone, l’état d’entrée correspondant.
Le tableau suivant résume les différents cas possibles.
_ _ _ _ _ _ _ _
B.A B.A B.A B.A B.A B.A B.A B.A
_ _ _ _
D.C 1 X X 1 D.C 0 1 X X
_ _
D.C 1 X X 1 D.C 0 1 X X
D.C 1 X X 1 D.C 0 1 X X
_ _
D.C 1 X X 1 D.C 0 1 X X
J0 = 1 J1 = A
_ _ _ _
_ _ _ _ B.A B.A B.A B.A
B.A B.A B.A B.A _ _
_ _ D.C 0 0 0 0
D.C 0 0 1 0 _
_ D.C 0 0 1 0
D.C X X X X
D.C X X X X
D.C X X X 0 _
_ D.C X X X X
D.C 0 0 1 0
_ _ _ _ _ _ _ _
B.A B.A B.A B.A B.A B.A B.A B.A
_ _ _ _
D.C X 1 1 X D.C X X 1 0
_ _
D.C X 1 1 X D.C X X 1 0
D.C X 1 1 X D.C X X 1 0
_ _
D.C X 1 1 X D.C X X 1 0
K0 = 1 K1 = A
_ _ _ _ _ _ _ _
B.A B.A B.A B.A B.A B.A B.A B.A
_ _ _ _
D.C X X X X D.C X X X X
_ _
D.C 0 0 1 0 D.C X X X X
D.C 0 0 1 0 D.C 0 0 1 0
_ _
D.C X X X X D.C 0 0 0 0
K2 = A.B K3 = A.B.C
On retrouve bien les niveaux d’entrées nécessaires des différentes bascules J-K pour la
conception du compteur synchrone MODULO-16 donné précédemment.
REMARQUE :
Dans le cas d’un compteur synchrone, toutes les bascules changent d’état en même
temps, c'est-à-dire quelles sont synchrones sur le front descendant des signaux d’horloge.
Ainsi, contrairement aux compteurs asynchrones, les retards de propagation des bascules ne
s’additionnent pas.
Au contraire, le temps de réponse total d’un compteur parallèle est égal au retard d’une
seule bascule plus le temps de retard d’une seule porte ET.
Retard total = tpd (d’une bascule) + tpd (d’une porte ET)
Cette équation montre q’un compteur parallèle peut fonctionner à des fréquences de loin
supérieures à celle d’un compteur asynchrone ayant le même nombre de bascules. C’est le
grand atout des compteurs parallèles.
4-Compteur préréglage
Plusieurs compteurs réalisés en C.I sont préréglages, c'est-à-dire qu’il est possible
d’installer dans le compteur en tout instant un nombre de départ d’une façon asynchrone ou
synchrone.
La figure ci-dessous montre un compteur parallèle 3 bits préréglage d’une façon
asynchrone.
Un nombre qu’on souhaite introduire dans le compteur est introduit par les entrées
parallèles PA, PB , PC . Ce transfert est indépendant des entrées J K et de CLK. L’effet
d’horloge CLK est neutralisé tant que PL revient au niveau Haut, les bascules peuvent alors
réagir aux entrées CLK et le comptage peut reprendre en commençant par le nombre qui a été
changé dans le compteur.
B- Les registres
C’est un registre qui est formé d’un ensemble de bascules câblées de manière à ce que
les informations mémorisées dans les bascules soient déportées d’une bascule à la suivante à
chaque impulsion d’horloge.
La figure ci-dessous montre quatre bascules D câblées de manière à constituer un
registre à décalage de 4 bits.
Les bascules D sont raccordées pour que la sortie Q3 dans Q1 , et celle de Q1 dans Q0 .
Les formes d’ondes de la figure ci-dessous, montrent comment l’application d’une
succession d’impulsions d’horloge déplace les données d’entrée de gauche à droite d’une
bascule à une autre. On suppose que toutes les bascules sont à l’état bas avant l’application du
signal d’horloge.
On remarque bien qu’à chaque front descendant de l’impulsion d’horloge CLK, les
sorties des bascules prennent la valeur de sortie qu’avait la bascule immédiatement à gauche
avant le front descendant. Evidemment Q3 prend la valeur fournie par la ligne d’entrée de
données avant le front descendant CLK
Exemple : la figure ci-dessous représente deux registres à décalage de 3 bits raccordés
de telle sorte que le contenu du registre X est transféré par le décalage dans le registre Y.
chacun de ces registres est formé de trois bascules D. les impulsions d’horloge déclenchent le
transfert de l’information selon le schéma suivant : X2 --→X1 --→X0 --→Y2 --→Y1 --→Y0.
Supposons qu’avant l’arrivée de la première impulsion, le contenu du registre X est 101
c'est-à-dire (X2= 1, X1= 0, X0= 1) et qu’il n’y ait que des zéros dans le registre Y.
Dans ce cas, les bits d’entrée sont appliquées successivement (en série) sur les bornes
d’entrée. Chaque impulsion d’horloge CLK fait avancer les bits de sortie d’une bascule à la
suivante.
A la 4ème impulsion CLK, le premier bit se trouve mémorisé dans la dernière bascule, le
second dans l’avant dernière, le troisième dans la deuxième bascule et le dernier bit d’entrée
dans la première bascule.
La lecture du contenu du registre se fait d’une façon simultanée, pour cela il faut
attendre que le registre soit rempli (4 impulsions CLK sont nécessaires).
Comme le montre la figure suivante, un circuit logique additif de portes NAND est
nécessaire pour charger ce registre.
____
A l’entrée PRE on a : PRE = α . ei
_______