UNITE ARITHMETIQUE ET LOGIQUE (UAL) 4 BITS : Additionneur 4

Transcription

UNITE ARITHMETIQUE ET LOGIQUE (UAL) 4 BITS : Additionneur 4
 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
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 :
S0
2.5 V
HB1
A0
Ke y = A
IO1 IO1
IO2 IO2
IO3 IO3
IO4
IO5
IO4
IO5
B0
FA
Ke y = B
S1
A1
Ke y = C
2.5 V
HB2
IO1 IO1
IO2 IO2
IO3 IO3
IO4
IO5
IO4
IO5
B1
S2
FA
Ke y = D
2.5 V
HB3
A2
Ke y = E
IO1 IO1
IO2 IO2
IO3 IO3
IO4
IO5
IO4
IO5
B2
FA
Ke y = F
A3
Ke y = G
B3
IO1 IO1
IO2 IO2
IO3 IO3
IO4
IO5
IO4
IO5
C
FA
2
2.5 V
HB4
Ke y = H
V1
12 V
S3
2.5 V
 Soustracteur 4 bits
Le soustracteur 4 bits est déjà fait dans les rapports précédents.
 Circuit d’après MS11 :
A0
Ke y = A
S0
HB1
A
B
C
A
B
C
S
R
S
R
2.5 V
B0
Ke y = B
Soustracteur complet 1 bits
A1
Ke y = A
2.5 V
HB2
A
B
C
A
B
C
S
R
S
R
S2
B1
Ke y = B
A2
Ke y = A
S1
2.5 V
Soustracteur complet 1 bits
HB3
A
B
C
A
B
C
S
R
S
R
S3
2.5 V
B2
Ke y = B
A3
Ke y = A
Soustracteur complet 1 bits
HB4
A
B
C
A
B
C
S
R
S
R
C
2.5 V
B3
V1Ke y = B
12 V
Soustracteur complet 1 bits
 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.
3
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.
4
 Circuit d’après MS11 :
A0
Ke y = A
2.5 V
A1
S0
Ke y = A
A2
S1
HB16
Ke y = A
A3
Ke y = A
A0
A1
A2
A3
B0
B1
B2
B3
A0
A1
A2
A3
B0
B1
B2
B3
S0
S1
S2
S3
S4
S5
S6
S7
MLTR 4
S0
S1
S2
S3
S4
S5
S6
S7
S2
S3
2.5 V
2.5 V
2.5 V
B0
Ke y = A
S4
B1
2.5 V
Ke y = A
S5
B2
2.5 V
Ke y = A
B3
S6
2.5 V
Ke y = A
V1
12 V
5
S7
2.5 V
 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.
6
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 :
7
Soustracteur et multiplexeur :
HB1
BI
B
A
BI
B
A
R
N
BO
R
N
BO
soustracteur-muX-
A l’intérieur :
BI
B
R
HB3
HB2
A
A A
B B
C C
S
R
S
R
e1 e1
e2 e2
adresse
adresse
sortiesortie
MuX (1Eadresse)
Soustracteur complet 1 bits
 Logigramme de diviseur 4 bits (21 soustracteur-mux) :
8
N
BO
 Circuit d’après MS11 :
Q0
2.5 V
A0
Q1
Ke y = A
A1
2.5 V
Ke y = A
A2
A3
A0
A1
A2
A3
B0
B1
B2
B3
Ke y = A
B0
Ke y = A
B1
Q2
HB1
Ke y = A
A0
A1
A2
A3
B0
B1
B2
B3
Q0
Q1
Q2
Q3
R0
R1
R2
R3
Q0
Q1
Q2
Q3
R0
R1
R2
R3
Q3
2.5 V
R0
2.5 V
déviseur 4 bits-boitier
Ke y = A
B2
2.5 V
R1
2.5 V
Ke y = A
B3
R2
Ke y = A
V1
12 V
R3
2- 4 Opérations logiques de 4 bits

a0
b0
a1
OR
U91
OR2
U92
b1
s0
OR2
s1
s2
a2
U93
b2
OR2
a3
U94
b3
OR2
9
s3
2.5 V
2.5 V

XOR
a0
U95
b0
s0
XOR2
a1
s1
U96
s2
b1
s3
XOR2
a2
U97
b2
XOR2
a3
U98
b3
XOR2

AND
a0
U99
b0
AND2
a1
U100
b1
s0
AND2
a2
U101
b2
s1
s2
s3
AND2
a3
U102
b3
AND2

a0
NOR
U103
b0
NOR2
a1
U104
b1
s1
NOR2
a2
U105
b2
NOR2
a3
U106
b3
NOR2
10
s0
s2
s3
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
0
0
0
E
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
0
11
S1
0
E
0
0
0
0
0
0
S2
0
0
E
0
0
0
0
0
S3
0
0
0
E
0
0
0
0
S4
0
0
0
0
E
0
0
0
S5
0
0
0
0
0
E
0
0
S6
0
0
0
0
0
0
E
0
S7
0
0
0
0
0
0
0
E
Logigramme :
Circuit d’après MS11 :
E
2.5 V
S0
S1
2.5 V
Ke y = A
S2
A
Ke y = A
B
Ke y = A
C
S3
HB1
E
A
B
C
E
A
B
C
S0
S1
S2
S3
S4
S5
S6
S7
S0
S1
S2
S3
S4
S5
S6
S7
2.5 V
S4
2.5 V
2.5 V
S5
2.5 V
demux
S6
Ke y = A
S7
V1
12 V
12
2.5 V
2.5 V
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.
13
Schéma de notre UAL 4 bits :
 Table d’opérations de 4 bits :
14