Post on 29-May-2018
UNITE ARITHMETIQUE ET LOGIQUE
(UAL) 4 BITS :
Additionneur 4 bits
Soustracteur 4 bits
Multiplieur 4 bits
Diviseur 4 bits
4 opérations logiques de 4 bits
2
1- Opérations Arithmétiques :
Additionneur 4bits : L’additionneur 4 bits est déjà fait dans les rapports précédents.
Circuit d’après MS11 :
V112 V
A0
Ke y = A
B0
Ke y = B
A1
Ke y = C
B1
Ke y = D
A2
Ke y = E
B2
Ke y = F
A3
Ke y = G
B3
Ke y = H
HB1
FA
IO1IO1
IO2IO2
IO3IO3
IO4IO4
IO5IO5
HB2
FA
IO1IO1
IO2IO2
IO3IO3
IO4IO4
IO5IO5
HB3
FA
IO1IO1
IO2IO2
IO3IO3
IO4IO4
IO5IO5
HB4
FA
IO1IO1
IO2IO2
IO3IO3
IO4IO4
IO5IO5
S0
2.5 V
S1
2.5 V
S2
2.5 V
S3
2.5 V
C 2.5 V
3
Soustracteur 4 bits Le soustracteur 4 bits est déjà fait dans les rapports précédents.
Circuit d’après MS11 :
Multiplieur 4 bits
Présentation :
Le multiplieur 4 bits est réalisé avec 16 portes AND et 3 additionneurs de 4 bits, les
portes AND permettent de faire les multiplications logiques entre les entrées, après ces
opérations de multiplication les additionneurs vont réaliser l’addition logique
verticalement, puis on obtient les résultats de sortie.
Ce multiplieur 4 bits a 8 entrées et 8 sorties et il est capable de faire n’importe qu’elle
multiplication arithmétique de 4 bits.
HB1
Soustracteur complet 1 bits
AA
BB
CC
SS
RR
HB2
Soustracteur complet 1 bits
AA
BB
CC
SS
RR
HB3
Soustracteur complet 1 bits
AA
BB
CC
SS
RR
HB4
Soustracteur complet 1 bits
AA
BB
CC
SS
RR
A0
Ke y = A
B0
Ke y = B
V112 V
A1
Ke y = A
B1
Ke y = B
A2
Ke y = A
B2
Ke y = B
A3
Ke y = A
B3
Ke y = B
S0
2.5 V
S1
2.5 V
S2
2.5 V
S3
2.5 V
C 2.5 V
4
Voila l’opération : A0…A3 et B0…B3 sont des entrées, et S0…S7 sont des sorties.
Logigramme :
Les circuits en couleur orange sont des additionneurs de 4 bits.
5
Circuit d’après MS11 :
HB16
MLTR 4
A0A0
A1A1
A2A2
A3A3
B0B0
B1B1
B2B2
B3B3
S0S0
S1S1
S2S2
S3S3
S4S4
S5S5
S6S6
S7S7
A0
Ke y = A
A1
Ke y = A
A2
Ke y = A
A3
Ke y = A
B0
Ke y = A
B1
Ke y = A
B2
Ke y = A
B3
Ke y = A
V112 V
S0
2.5 V
S1 2.5 V
S2 2.5 V
S3 2.5 V
S4 2.5 V
S5 2.5 V
S6 2.5 V
S7 2.5 V
6
Diviseur 4 bits
Présentation :
La division binaire s'effectue à l'aide de soustractions et de décalages, comme la division
décimale, sauf que les digits du quotient ne peuvent être que 1 ou 0. Le bit du quotient est
1 si on peut soustraire le diviseur, sinon il est 0.
Prenons par exemple un nombre de 8 bits et divisons-le par un nombre de 4 bits, en visant
un résultat exprimable sur 4 bits, et un reste de 8 bits en détaillant toutes les opérations :
Dans notre cas on prend un nombre de 4 bits et divisons-le par un nombre de 4 bits, en
visant un résultat exprimable sur 4 bits, et un reste de 4 bits :
Nous tirerons les enseignements suivants de ces exemples :
Il est possible d'obtenir une division par une suite (ou une cascade) de soustractions et de
décalages.
2) les emprunts de sortie des soustractions sont égaux à l'inverse des bits correspondants
du quotient.
3) à chaque soustraction, il faut pouvoir transmettre soit le nouveau reste, soit le reste
précédent (restauration), selon qu'elle donne un emprunt de sortie nul ou non.
7
En visant une décomposition combinatoire, nous allons construire un soustracteur de 1 bit
incorporant le sélecteur de sortie mentionné :
Les équations de sortie de ce module s'établissent facilement :
Bit de reste: R = (D xor S xor BI) and N or D and N
Emprunt: BO = D and S or D and BI or S and BI
Un tel module peut être câblé en réseau pour obtenir un diviseur d'un nombre quelconque
de bits, en utilisant les enseignements 1), 2) et 3) ci-dessus pour diviser un nombre A de 4
bits par un nombre B de 4 bits et obtenir un quotient Q et un reste R de 4 bits :
8
Soustracteur et multiplexeur :
A l’intérieur :
Logigramme de diviseur 4 bits (21 soustracteur-mux) :
HB1
soustracteur-muX-
BIBI
BB
AA
RR
NN
BOBO
BI
B
A
R
N
BO
HB2
Soustracteur complet 1 bits
AA
BB
CC
SS
RR
HB3
MuX (1Eadresse)
e1e1
e2e2
adresseadresse
sortiesortie
9
Circuit d’après MS11 :
2- 4 Opérations logiques de 4 bits
OR
HB1
déviseur 4 bits-boitier
A0A0
A1A1
A2A2
A3A3
B0B0
B1B1
B2B2
B3B3
Q0Q0
Q1Q1
Q2Q2
Q3Q3
R0R0
R1R1
R2R2
R3R3
A3Ke y = A
Q1 2.5 V
R2 2.5 V
V112 V
B0Ke y = A
B1Ke y = A
A2Ke y = A
A1
Ke y = A
B2Ke y = A
A0
Ke y = A
B3Ke y = A
R1 2.5 V
R3 2.5 V
R0 2.5 V
Q0 2.5 V
Q2 2.5 V
Q3 2.5 V
a0
b0
a1
b1
a2
b2
a3
b3
s0
s1
s2
s3
U91
OR2
U92
OR2
U93
OR2
U94
OR2
10
XOR
AND
NOR
a0
b0
a1
b1
a2
b2
a3
b3
s0
s1
s2
s3
U95
XOR2
U96
XOR2
U97
XOR2
U98
XOR2
a0
b0
a1
b1
a2
b2
a3
b3
s0
s1
s2
s3
U99
AND2
U100
AND2
U101
AND2
U102
AND2
a0
b0
a1
b1
a2
b2
a3
b3
s0
s1
s2
s3
U103
NOR2
U104
NOR2
U105
NOR2
U106
NOR2
11
3- Démultiplexeur a 3 entrées d’adresse :
Il sert à sélectionner l’opération (addition ou soustraction ou multiplication …) dans
l’UAL.
Table de vérité : (E= donné)
C B A S0 S1 S2 S3 S4 S5 S6 S7
0 0 0 E 0 0 0 0 0 0 0
0 0 1 0 E 0 0 0 0 0 0
0 1 0 0 0 E 0 0 0 0 0
0 1 1 0 0 0 E 0 0 0 0
1 0 0 0 0 0 0 E 0 0 0
1 0 1 0 0 0 0 0 E 0 0
1 1 0 0 0 0 0 0 0 E 0
1 1 1 0 0 0 0 0 0 0 E
12
Logigramme :
Circuit d’après MS11 :
HB1
demux
EE
AA
BB
CC
S0S0
S1S1
S2S2
S3S3
S4S4
S5S5
S6S6
S7S7
E
Ke y = A
A
Ke y = A
B
Ke y = A
C
Ke y = A
S0 2.5 V S1
2.5 V
S2
2.5 VS3
2.5 VS4
2.5 V
S5
2.5 V
S6
2.5 VS7
2.5 VV112 V
13
4- Parity flag(PF) Parité : si le résultat de l'opération contient un nombre pair de 1 cet indicateur est mis à
1, sinon zéro.
5- Sign flag(SF) S est positionné à 1 si le bit de poids fort du résultat d'une addition ou soustraction est 1;
sinon SF=0. SF est utile lorsque l'on manipule des entiers signés, car le bit de poids fort
donne alors le signe du résultat.
6- Carry flag(CF) Retenue : cet indicateur et mis à 1 lorsque il y a une retenue du résultat. Il
intervient dans les opérations d'additions (retenue) et de soustractions (borrow) sur des
entiers naturels. Il est positionné en particulier par les instructions ADD, SUB et
CMP (comparaison entre deux valeurs), CF = 1 s'il y a une retenue après l'addition ou la
soustraction du bit de poids fort des opérandes.
7-Unité Arithmétique Et Logique (UAL 4bits) Présentation : Ce type de composant est implémenté dans un microcontrôleur, c’est le composant
central qui permet de réaliser tous les calculs.
Grâce à des bus il accède :
Aux registres du microcontrôleur,
Aux données numériques contenues dans les mémoires mortes et les mémoires vives,
Aux différents périphériques d’entrées/sorties du microcontrôleur.
14
Schéma de notre UAL 4 bits :
Table d’opérations de 4 bits :