4
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
1
COMBINACIONALS
4.1 Anàlisi i disseny de circuits combinacionals
4.2 Blocs aritmètics
4.3 Blocs funcionals
4.4 Unitat aritmètica-lògica
Dr. Joaquim Salvi, Dr. Arnau Oliver
Escola Politècnica Superior
Universitat de Girona
2
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
4.1 Anàlisi i disseny de circuits combinacionals
Un circuit combinacional és aquell en el que les sortides en un
instant de temps només depenen del valor de les entrades en
aquell instant de temps.
𝑠 𝑡𝑖 = 𝑓(𝑥 𝑡𝑖 )
Circuit
Combinacional
𝑠 𝑡𝑖𝑥 𝑡𝑖
3
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
A B C F1 F2
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
Anàlisi i disseny de circuits combinacionals
A B C
F
1
F
2
Anàlisi
Disseny
4
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Anàlisi d’un circuit combinacional
A partir d’un circuit volem analitzar el seu comportament
(enginyeria inversa). Procedirem de la següent manera:
1.- Retolar les entrades i les sortides assignant una variable a
cada una d’elles.
2.- Retolar les sortides de cada porta lògica assignant-hi una
variable.
3.- Construir la taula de veritat a partir de les entrades fins
arribar a les sortides.
4.- Obtenir la funció de cada sortida a partir de la taula de
veritat
5.- Deduir el comportament del circuit.
5
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Anàlisi d’un circuit combinacional
Ex: Analitzar el següent circuit combinacional:
A B C
F1
F2
6
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Anàlisi d’un circuit combinacional
1.- Entrades/Sortides 2.- Sortides de les portes
A B C
F1
F2
T1
T2
T3
T4
T5
T6
T7
7
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Anàlisi d’un circuit combinacional
3.- Construir la taula de veritat
A B C T1 T2 T3 T4 T5 T6 T7 F1 F2
0 0 0 0 0 0 0 0 1 0 0 0
0 0 1 0 0 0 0 1 1 1 1 0
0 1 0 0 0 0 0 1 1 1 1 0
0 1 1 0 0 1 0 1 0 0 0 1
1 0 0 0 0 0 0 1 1 1 1 0
1 0 1 0 1 0 0 1 0 0 0 1
1 1 0 1 0 0 0 1 0 0 0 1
1 1 1 1 1 1 1 1 0 0 1 1
8
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Anàlisi d’un circuit combinacional
4.- Obtenir la funció de cada sortida 5.- Deduir el circuit
𝐹1 = 𝐴 𝐵𝐶 + 𝐴𝐵 𝐶 + 𝐴 𝐵 𝐶 + 𝐴𝐵𝐶
𝐹1 val 1 quan tenim un 1 o 3 uns, es a dir un nombre senar de 1s.
𝐹2 = 𝐴𝐵 + 𝐴𝐶 + 𝐵𝐶
𝐹2 val 1 quan tenim dos 1s.
Aleshores 𝐹1 equival al sumant i 𝐹2 al carry d’un sumador
complet.
F.A.
A
B
C
F1
F2
9
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Disseny d’un circuit combinacional
Fan-out: nombre màxim de d’entrades que es poden connectar
a una mateixa sortida sense alterar el voltatge (valor) d’aquesta
sortida.
Si el disseny ens portés a superar el fan-out, hem de reduir-lo
incloent portes intermitges.
10
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Anàlisi d’un circuit combinacional
Temps de propagació de porta (tp): És el temps que triga una
porta en actualitzar la sortida quan canvien les entrades.
Aquest retard és de l’ordre de nanosegons i depèn de la
tecnologia.
a
b
s
a
b
s
t
tp
11
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Anàlisi d’un circuit combinacional
Temps de propagació de porta (tp): Aquests retards poden
donar lloc a impulsos inesperats.
Per això serà tant important que els sistemes estiguin
sincronitzats (tema 5) per un clock.
A
B
s
t
tp NAND
1 B
A
0
C
S
C
tp OR
tp AND
12
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
13
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
A B C F1 F2
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
Anàlisi i disseny de circuits combinacionals
A B C
F
1
F
2
Anàlisi
Disseny
14
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Disseny d’un circuit combinacional
Mètode a seguir:
1.- Enunciat del problema
2.- Determinar les entrades i les sortides necessàries
3.- Assignar variables a les entrades i les sortides
4.- Deduir la taula de veritat de cada sortida en funció de les
entrades
5.- Simplificar les funcions de les sortides a partir de teoremes
o Karnough
6.- Implementar el circuit lògic
15
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Disseny d’un circuit combinacional
Ex: Implementar un convertidor de codi Gray a codi BCD de 4
bits.
2.- Necessitem 4 entrades que expressen 4 bits d’un codi gray i
4 sortides que expressen 4 bits d’un codi BCD
3.- Entrades (A,B,C,D) codi Gray
4.- Sortides (W,X,Y,Z) codi BCD
16
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Disseny d’un circuit combinacional
:
4.- Deduir la
taula de veritat:
DEC Codi Gray A B C D W X Y Z
0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 1
2 0 0 1 1 0 0 1 0
3 0 0 1 0 0 0 1 1
4 0 1 1 0 0 1 0 0
5 0 1 1 1 0 1 0 1
6 0 1 0 1 0 1 1 0
7 0 1 0 0 0 1 1 1
8 1 1 0 0 1 0 0 0
9 1 1 0 1 1 0 0 1
10 1 1 1 1 1 0 1 0
11 1 1 1 0 1 0 1 1
12 1 0 1 0 1 1 0 0
13 1 0 1 1 1 1 0 1
14 1 0 0 1 1 1 1 0
15 1 0 0 0 1 1 1 1
GRAY BCD
17
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Disseny d’un circuit combinacional
:
4.- Deduir la
taula de veritat:
DEC Codi Gray A B C D W X Y Z
0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 1 0 0 0 1
2 0 0 1 1 0 0 1 0 0 0 1 1
3 0 0 1 0 0 0 1 1 0 0 1 0
4 0 1 1 0 0 1 0 0 0 1 1 1
5 0 1 1 1 0 1 0 1 0 1 1 0
6 0 1 0 1 0 1 1 0 0 1 0 0
7 0 1 0 0 0 1 1 1 0 1 0 1
8 1 1 0 0 1 0 0 0 X X X X
9 1 1 0 1 1 0 0 1 X X X X
10 1 1 1 1 1 0 1 0 X X X X
11 1 1 1 0 1 0 1 1 X X X X
12 1 0 1 0 1 1 0 0 1 0 0 0
13 1 0 1 1 1 1 0 1 1 0 0 1
14 1 0 0 1 1 1 1 0 X X X X
15 1 0 0 0 1 1 1 1 X X X X
GRAY BCD
18
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Disseny d’un circuit combinacional
:
4.- Simplificar per Karnough:
00 01 11 10
00 1 X
01 1 X
11 X X
10 X X
AB
CD
00 01 11 10
00 1 X
01 1 X
11 1 X X
10 1 X X
AB
CD 𝑋 = 𝐴𝐵W = 𝐴
00 01 11 10
00 1 X
01 1 X
11 1 X X
10 1 X X
AB
CD
00 01 11 10
00 1 X
01 1 1 X
11 1 X X
10 1 X X
AB
CD
𝑍 = 𝐴 𝐵 C D
𝐴𝐵 𝐶
𝐵𝐶
𝑌 = 𝐵𝐶 + 𝐴𝐵 𝐶
19
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Disseny d’un circuit combinacional
:
5.- Implementar el circuit lògic:
A B C D
W
X
Y
Z
20
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
4.2 Blocs Aritmètics
Semi Sumador - Half-Adder
𝑆 = 𝐴𝐵 + 𝐴 𝐵 = 𝐴 𝐵
𝐶 = 𝐴𝐵
A B S C
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
H.A.
A B
S
C
A B
C
S
21
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador Complet - Full-Adder
𝑆 = 𝐶𝑖 𝐴𝐵 + 𝐶𝑖 𝐴 𝐵 + 𝐶𝑖 𝐴 𝐵 + 𝐶𝑖 𝐴𝐵 = 𝐶𝑖 𝐴 𝐵 + 𝐶𝑖 𝐴 𝐵 =
𝐶𝑖 𝐴 𝐵
𝐶 = 𝐴𝐵 + 𝐶𝑖 𝐴 + 𝐶𝑖 𝐵
Ci A B S C0
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
F.A.
A B
S
Co Ci Ci
A B
CO
S
22
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador de 4 bits:
F.A.
A0 B0
S0
C1 C0=0F.A.
A1 B1
S1
F.A.
A2 B2
S2
C2
F.A.
A3 B3
S3
C3
S4
23
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador de 8 bits a partir de sumadors de 4 bits
F.A.
de 4 bits
A0B0
S0
C0=0
A1B1
S1
A2 B2
S2
C4
A3 B3
S3S8
F.A.
de 4 bits
A4B4
S4
A5B5
S5
A6 B6
S6
A7 B7
S7
24
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador amb carry avançant – CLA Carry Look-Ahead Adder
Soluciona els retràs de propagació del carry.
Ex: Sumador de 2 bits amb F.A.
X=1 i Y=1 → Generem carry (Ag)
X=1 o Y=1 → Propaguem carry (Ap)
Cout = Ag + Ap·Cin
Ag0 = X0Y0 Ap0 = X0 + Y0
C1 = Ag0 + Ap0Ci
Ag1 = X1Y1 Ap1 = X1 + Y1
C2 = Ag1 + Ap1C1 =
= Ag1 + Ap1 Ag0 + Ap0Ci =
= Ag1 + Ap1Ag0 + Ap1Ap0Ci
Y0 X0
S0
C1 CiF.A.
Y1 X1
S1
F.A.
C2
25
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador amb carry avançant – CLA Carry Look-Ahead Adder
Podem per tant implementar el circuit sense utilitzar els carry de sortida
Y0 X0
S0
Ci Y1 X1
S1
C2
F.A.
X
Y
Ci
Co
S
F.A.
X
Y
Ci
Co
S
26
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador amb carry avançant – CLA Carry Look-Ahead Adder
74LS83A
A1
27
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador/Restador de 4 bits: Utilitzarem de base un sumador de
4 bits i nombres en C’2 i un detector d’overflow.
28
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Aritmètics
Sumador/Restador de 4 bits: Utilitzarem de base un sumador de
4 bits i nombres en C’2 i un detector d’overflow.
𝑂𝑣 = (𝐵3 𝐴3)(𝐵3 𝑆3)
A2A3A0A1B2 B3B0 B1𝑆/𝑅
F.A.
de 4 bits
S3
Ci
S2S1S0
Co Detector
d’ overflow
Ov
29
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
4.2 Blocs Funcionals
Comparador de 4 bits: Els comparadors ens permeten
comparar dos nombre dient-nos si són iguals o quin dels dos
es major/menor que l’altre
Comparador
de 4 bits
A<B
A2A3A0A1B2B3B0B1
A=B
A>B
A<B
A=B
A>B
Input A vs B Output
X A>B A>B
X A<B A<B
A=B A=B A=B
A<B A=B A<B
A>B A=B A>B
30
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Comparador de 8 bits a partir de comparadors de 4 bits.
31
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Comparador de 8 bits a partir de comparadors de 4 bits.
Comparador
de 4 bits
A6 A7A4A5B6 B7B4 B5
A<B
A=B
A>B
Comparador
de 4 bits
A<B
A2A3A0A1B2B3B0B1
A=B
A>B
Vcc
GND
A<B
A=B
A>B
A<B
A=B
A>B
A<B
A=B
A>B
32
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Comparador de 4 bits
74LS85
33
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Decodificador: Un decodificador té 𝑛 entrades i 2 𝑛 sortides.
Cada combinació d’entrades excita la única sortida que li
correspon en funció del codi que decodifica.
Decodificador binari 2x4:
𝑂0 = 𝐶𝑆 𝐼1 𝐼0 𝑂1 = 𝐶𝑆 𝐼1 𝐼0 𝑂2 = 𝐶𝑆𝐼1 𝐼0 𝑂3 = 𝐶𝑆𝐼1 𝐼0
CS
DEC/BIN
2x4I1
I0
O1
O0
O3
O2
CS I1 I0 O3 O2 O1 O0
0 X X 0 0 0 0
1 0 0 0 0 0 1
1 0 1 0 0 1 0
1 1 0 0 1 0 0
1 1 1 1 0 0 0
34
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Decodificador Gray 3x8:
CS I2 I1 I0 O7 O6 O5 O4 O3 O2 O1 O0
0 X X X 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0 0 1
1 0 0 1 0 0 0 0 0 0 1 0
1 0 1 0 0 0 0 0 1 0 0 0
1 0 1 1 0 0 0 0 0 1 0 0
1 1 0 0 1 0 0 0 0 0 0 0
1 1 0 1 0 1 0 0 0 0 0 0
1 1 1 0 0 0 0 1 0 0 0 0
1 1 1 1 0 0 1 0 0 0 0 0
CS
DEC/Gray
3x8
I1
I0
O5
O4
O7
O6
I2
O1
O0
O2
O3
35
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Implementar un decodificador binari 4x16 amb decodificadors
2x4:
36
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Implementar un decodificador binari 4x16 amb decodificadors
2x4:
DEC/
BIN
2x4I1
I0
O1
O0
O3
O2
CS
O1
O0
O3
O2
DEC/
BIN
2x4I1
I0
O5
O4
O7
O6
CS
O1
O0
O3
O2
DEC/
BIN
2x4I1
I0
O9
O8
O11
O10
CS
O1
O0
O3
O2
DEC/
BIN
2x4I1
I0
O13
O12
O15
O14
CS
O1
O0
O3
O2
DEC/
BIN
2x4I1
I0
CS
O1
O0
O3
O2
I1
I0
I3
I2
CS
37
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Implementar un decodificador binari 3x8 amb decodificadors
2x4:
38
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Implementar un decodificador binari 3x8 amb decodificadors
2x4:
DEC/
BIN
2x4I1
I0
O1
O0
O3
O2
CS
O1
O0
O3
O2
DEC/
BIN
2x4I1
I0
O5
O4
O7
O6
CS
O1
O0
O3
O2
I1
I0
I2
39
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
El decodificador es pot combinar amb portes OR per a generar
funcions lògiques:
𝑓 𝐴, 𝐵, 𝐶 =
𝑚
(0,3,4,7)
DEC/
BIN
3x8
I1
I0
O5
O4
O7
O6
I2
O1
O0
O2
O3
CS
Vcc
A
B
C
f
40
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Codificador: Un codificador té 2 𝑛 entrades i 𝑛 sortides. La
sortida correspon al codi que codifica l’entrada activa.
Codificador binari 4x2
Problemes: A) amb aquesta implementació, només 1 entrada
pot estar activa; B) No podem diferenciar entre codificar I0 o
no codificar rés (Cs=0)
CS
COD/BIN
2x4 A1
A0
CS I3 I2 I1 I0 A1 A0
0 X X X X 0 0
1 0 0 0 1 0 0
1 0 0 1 0 0 1
1 0 1 0 0 1 0
1 1 0 0 0 1 1
I1
I0
I3
I2
41
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Codificador amb prioritat: Aquest codificador resolt els
problemes del codificador anterior
Codificador binari 4x2 amb prioritat
GS: Indica si hi ha alguna entrada activa
EO: Activa quan no hi ha cap entrada activa. Pot habilitar un codificador de
menor prioritat.
EI I3 I2 I1 I0 A1 A0 GS EO
0 X X X X 0 0 0 0
1 0 0 0 0 0 0 0 1
1 0 0 0 1 0 0 1 0
1 0 0 1 X 0 1 1 0
1 0 1 X X 1 0 1 0
1 1 X X X 1 1 1 0
EI
COD/BIN
2x4
A1
A0
I1
I0
I3
I2
EO
GS
42
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Codificador binari 4x2 amb prioritat
I3 I2 I1 I0EI
A0
A1
GS
Eo
43
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Codificador binari 8x3 amb prioritat a partir de codificadors 4x2
amb prioritat
44
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Codificador binari 8x3 amb prioritat a partir de codificadors 4x2
amb prioritat
EI
COD/
BIN
2x4
A1
A0
I5
I4
I7
I6
EO
GS
COD/
BIN
2x4
A1
A0
I1
I0
I3
I2
EO
GS
I1
I0
I3
I2
EI
EI
I1
I0
I3
I2
Eo
A0
A1
GS
A2
45
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Codificador binari 8x3 amb prioritat: Fixem-nos que el 74LS148
és actiu a baixa.
74LS148
46
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Convertidor de codi: els convertidors són circuits compostos
d’un decodificador i un codificador per a poder convertir d’un
codi a un altre.
DEC/BIN
n x 2n
COD/GRAY
n x 2n
n n2n
BIN/GRAY
n x 2n
n n
47
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Convertidor de codi binari a codi Gray de 3 bits
DEC/BIN
n x 2n
COD/GRAY
2n x n A2
A1
A0
A2
A1
A0
D1
D0
D3
D2
D5
D4
D7
D6
DEC Codi
Gray
Codii
Binari
0 0 0 0 0 0 0
1 0 0 1 0 0 1
2 0 1 1 0 1 0
3 0 1 0 0 1 1
4 1 1 0 1 0 0
5 1 1 1 1 0 1
6 1 0 1 1 1 0
7 1 0 0 1 1 1
48
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Convertidor de codi binari a codi Gray de 3 bits
DEC/BIN
n x 2n
COD/GRAY
2n x n A2
A1
A0
A2
A1
A0
D1
D0
D3
D2
D5
D4
D7
D6
DEC/
BIN
n x 2n
COD/
BIN
2n x n
D1
D0
D3
D2
D5
D4
D7
D6
D1
D0
D3
D2
D5
D4
D7
D6 A2
A1
A0
A2
A1
A0
DEC Codi
Gray
Codii
Binari
0 0 0 0 0 0 0
1 0 0 1 0 0 1
2 0 1 1 0 1 0
3 0 1 0 0 1 1
4 1 1 0 1 0 0
5 1 1 1 1 0 1
6 1 0 1 1 1 0
7 1 0 0 1 1 1
49
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Multiplexor: Un multiplexor és un commutador digital de
manera que a partir de 𝑛 senyals de selecció podem
seleccionar quina de les 2 𝑛 entrades passa a la sortida.
Multiplexor 2x4
S1 S0
S1 S0 Z
0 0 I0
0 1 I1
1 0 I2
1 1 I3
I1
I0
I3
I2
Z
50
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Multiplexor 3x8 74LS151
51
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Multiplexor com a generador de funcions lògiques: Associarem
les variables de més pes de la funció a les senyals de selecció del
multiplexor. Les entrades al multiplexor dependran de les variables
que no s’hagin associat als senyals de selecció.
Ex: donada la següent funció: 𝑓 𝐴, 𝐵, 𝐶 = 𝑚(1,2,6,7)
A B C f
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 1
1 1 1 1
52
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Amb un mux 3x8
A=S2 B=S1 C=S0 f Z
0 0 0 0 I0
0 0 1 1 I1
0 1 0 1 I2
0 1 1 0 I3
1 0 0 0 I4
1 0 1 0 I5
1 1 0 1 I6
1 1 1 1 I7
Z
S2 S0
I1
I0
I3
I2
A
B
Vcc
GND
S1
C
I5
I4
I7
I6
53
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Amb un mux 2x4
A=S1 B=S0 C f Z
0 0 0 0
I0
0 0 1 1
0 1 0 1
I1
0 1 1 0
1 0 0 0
I2
1 0 1 0
1 1 0 1
I3
1 1 1 1
Z
S1 S0
I1
I0
I3
I2
A
B
C
Vcc
GND
54
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Amb un mux 1x2
A=S1 B C f Z
0 0 0 0
I0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 0
I1
1 0 1 0
1 1 0 1
1 1 1 1
Z
S0
I0
I1
A
B
C
55
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Amb n mux 2x4
A B C f
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 1
1 1 1 1
Z
S1 S0
I1
I0
I3
I2
A
Vcc
GND
S1 S0
I1
I0
I3
I2
S1 S0
I1
I0
I3
I2
C
B
56
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Demultiplexor: Un demultiplexor és un commutador digital de
manera que a partir de 𝑛 senyals de selecció podem
seleccionar quina de les 2 𝑛 sortides passa a tenir el valor de
l’entrada.
Demultiplexor 2x4
S1 S0 Y0 Y1 Y2 Y3
0 0 D 0 0 0
0 1 0 D 0 0
1 0 0 0 D 0
1 1 0 0 0 D
S1 S0
Y1
Y0
Y3
Y2
D
57
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Demultiplexor com a decodificador: Un demultiplexor amb
l’entrada D = 1 equival a un decodificador binari.
Per aquest motiu no trobarem 2 circuits diferents, sinó un mateix
circuit per implementar decodificadors i demultiplexors.
S1 S0
Y1
Y0
Y3
Y2
1
S1
S0
Y1
Y0
Y3
Y2
DEC/
BIN
2X4
58
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Demultiplexor / Decodificador
74LS138
59
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Blocs Funcionals
Demultiplexor com a generador de funcions. Ens cal afegir una
porta OR per recollir les sortides que són minterns de la funció.
A B C f
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 1
1 1 1 1
Y1
Y0
Y3
Y2
S1 S0
Y1
Y0
Y3
Y2
S1 S0
1
Y1
Y0
Y3
Y2
S1 S0
A
B
C
f
60
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
4.4 Unitat aritmètico-lògica
A partir dels blocs aritmètics i els blocs funcionals, ens
demanen implementar una unitat aritmètico-lògica de 4 bits
que implementi com a mínim les següents funcions:
Aritmètiques:
• Suma (A+B), Increment (A+1), Resta (A-B), Decrement (A-1)
Lògiques:
• OR (A+B), AND (A·B), XOR (A B), NOT ( 𝐴 )
61
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
3 bits de Selecció (S2S1S0): 8 operacions (4 aritmètiques i 4 lògiques)
Operands A3-0 i B3-0 de 4 bits
Resultat F3-0 de 4 bits
A l’utilitzar sumadors tindrem també Cin i Cout
ALU de
4 bits
Cin
A3-0
B3-0
S2
S1
S0
Cout
F3-0
62
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
S2 = 0  operacions aritmètiques
A+B F = A+B+0 Op1 = A; Op2 = B; Cin = 0
A+1 F = A+0s+1 Op1 = A; Op2 = 0s; Cin = 1
A-B F = A+B+1 Op1 = A; Op2 = B; Cin = 1
A-1 F = A+1s+0 Op1 = A; Op2 =1s; Cin = 0
63
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
S2 = 0  operacions aritmètiques
Si tenim en compte totes les operacions:
S1 S0
Entrada
Y
F = A + Y + Cin
Cin = 0 Cin = 1
0 0 0s F = A (transferència) F = A + 1 (increment)
0 1 B F = A + B (suma) F = A + B + 1
1 0 B F = A + B F = A + B + 1 (resta)
1 1 1s F= A – 1 (decrement) F = A (transferència)
64
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
S2 = 0  operacions aritmètiques
Posem ara Yi en una taula de veritat funció de S1S0 i Bi
i simplifiquem per Karnough
Yi = S0Bi+S1Bi
S1 S0 Bi Yi
0 0 0 0
Yi = 0
0 0 1 0
0 1 0 0
Yi = B
0 1 1 1
1 0 0 1
Yi = B
1 0 1 0
1 1 0 1
Yi = 1
1 1 1 1
00 01 11 10
0 0 0 1 0
1 1 0 1 1
S0Bi
S1
𝑆1 𝐵𝑖
𝑆0 𝐵𝑖
65
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
Implementació de F = A + Y + Cin
Full
Adder
4 bits
Cin
A3-0
S1
S0
Cout
F3-0
X3-0
S3-0
Cout
Cin
Y3-0
B3-0 Circuit
Combi-
nacional
Circuit Aritmètic
66
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
Disseny del Circuit Combinacional
B0
S1 S0
Y0
B1
Y1
B2
Y2
B3
Y3
Circuit Combinacional
67
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
S2 = 1  operacions lògiques
S1 S0 Operació
0 0 A · B
0 1 A + B
1 0 A  B
1 1 A
68
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
S2 = 1  operacions lògiques
Implementació del circuit lògic
S1 S0
I1
I0
I3
I2
Fi
Ai
Bi
Circuit Lògic
i | i = 0 .. 3
69
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Unitat aritmètico-lògica
Implementem l’ALU emprant tots els circuits dissenyats
Circuit
Aritmètic
Cin
A3-0
B3-0
S1
S0
Cout
Circuit
Lògic
A3-0
B3-0
S1
S0
Cin
Cout
F3-0
A3-0
B3-0
S1
S0
F3-0
I1
I0
S0
F3-0
S2
ALU de 4 bits
70
SISTEMES COMBINACIONALS
ESTRUCTURA I TECNOLOGIA DE COMPUTADORS
Més informació:
Estructura i Tecnologia de Computadors, tema 4
https://www.documentauniversitaria.cat/botiga.php?a=llibre&id=809
www.unigrades.eu
Floyd, Thomas L. (2009). Digitals Fundamentals. Pearson
International. – Capítols 5 i 6

Tema 4 Sistemes Combinacionals

  • 1.
    4 ESTRUCTURA I TECNOLOGIADE COMPUTADORS 1 COMBINACIONALS 4.1 Anàlisi i disseny de circuits combinacionals 4.2 Blocs aritmètics 4.3 Blocs funcionals 4.4 Unitat aritmètica-lògica Dr. Joaquim Salvi, Dr. Arnau Oliver Escola Politècnica Superior Universitat de Girona
  • 2.
    2 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS 4.1 Anàlisi i disseny de circuits combinacionals Un circuit combinacional és aquell en el que les sortides en un instant de temps només depenen del valor de les entrades en aquell instant de temps. 𝑠 𝑡𝑖 = 𝑓(𝑥 𝑡𝑖 ) Circuit Combinacional 𝑠 𝑡𝑖𝑥 𝑡𝑖
  • 3.
    3 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS A B C F1 F2 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Anàlisi i disseny de circuits combinacionals A B C F 1 F 2 Anàlisi Disseny
  • 4.
    4 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Anàlisi d’un circuit combinacional A partir d’un circuit volem analitzar el seu comportament (enginyeria inversa). Procedirem de la següent manera: 1.- Retolar les entrades i les sortides assignant una variable a cada una d’elles. 2.- Retolar les sortides de cada porta lògica assignant-hi una variable. 3.- Construir la taula de veritat a partir de les entrades fins arribar a les sortides. 4.- Obtenir la funció de cada sortida a partir de la taula de veritat 5.- Deduir el comportament del circuit.
  • 5.
    5 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Anàlisi d’un circuit combinacional Ex: Analitzar el següent circuit combinacional: A B C F1 F2
  • 6.
    6 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Anàlisi d’un circuit combinacional 1.- Entrades/Sortides 2.- Sortides de les portes A B C F1 F2 T1 T2 T3 T4 T5 T6 T7
  • 7.
    7 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Anàlisi d’un circuit combinacional 3.- Construir la taula de veritat A B C T1 T2 T3 T4 T5 T6 T7 F1 F2 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 0 1 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 0 1 0 0 1 0 0 0 1 1 1 0 1 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 0 1 1
  • 8.
    8 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Anàlisi d’un circuit combinacional 4.- Obtenir la funció de cada sortida 5.- Deduir el circuit 𝐹1 = 𝐴 𝐵𝐶 + 𝐴𝐵 𝐶 + 𝐴 𝐵 𝐶 + 𝐴𝐵𝐶 𝐹1 val 1 quan tenim un 1 o 3 uns, es a dir un nombre senar de 1s. 𝐹2 = 𝐴𝐵 + 𝐴𝐶 + 𝐵𝐶 𝐹2 val 1 quan tenim dos 1s. Aleshores 𝐹1 equival al sumant i 𝐹2 al carry d’un sumador complet. F.A. A B C F1 F2
  • 9.
    9 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Disseny d’un circuit combinacional Fan-out: nombre màxim de d’entrades que es poden connectar a una mateixa sortida sense alterar el voltatge (valor) d’aquesta sortida. Si el disseny ens portés a superar el fan-out, hem de reduir-lo incloent portes intermitges.
  • 10.
    10 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Anàlisi d’un circuit combinacional Temps de propagació de porta (tp): És el temps que triga una porta en actualitzar la sortida quan canvien les entrades. Aquest retard és de l’ordre de nanosegons i depèn de la tecnologia. a b s a b s t tp
  • 11.
    11 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Anàlisi d’un circuit combinacional Temps de propagació de porta (tp): Aquests retards poden donar lloc a impulsos inesperats. Per això serà tant important que els sistemes estiguin sincronitzats (tema 5) per un clock. A B s t tp NAND 1 B A 0 C S C tp OR tp AND
  • 12.
    12 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS
  • 13.
    13 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS A B C F1 F2 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Anàlisi i disseny de circuits combinacionals A B C F 1 F 2 Anàlisi Disseny
  • 14.
    14 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Disseny d’un circuit combinacional Mètode a seguir: 1.- Enunciat del problema 2.- Determinar les entrades i les sortides necessàries 3.- Assignar variables a les entrades i les sortides 4.- Deduir la taula de veritat de cada sortida en funció de les entrades 5.- Simplificar les funcions de les sortides a partir de teoremes o Karnough 6.- Implementar el circuit lògic
  • 15.
    15 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Disseny d’un circuit combinacional Ex: Implementar un convertidor de codi Gray a codi BCD de 4 bits. 2.- Necessitem 4 entrades que expressen 4 bits d’un codi gray i 4 sortides que expressen 4 bits d’un codi BCD 3.- Entrades (A,B,C,D) codi Gray 4.- Sortides (W,X,Y,Z) codi BCD
  • 16.
    16 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Disseny d’un circuit combinacional : 4.- Deduir la taula de veritat: DEC Codi Gray A B C D W X Y Z 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 2 0 0 1 1 0 0 1 0 3 0 0 1 0 0 0 1 1 4 0 1 1 0 0 1 0 0 5 0 1 1 1 0 1 0 1 6 0 1 0 1 0 1 1 0 7 0 1 0 0 0 1 1 1 8 1 1 0 0 1 0 0 0 9 1 1 0 1 1 0 0 1 10 1 1 1 1 1 0 1 0 11 1 1 1 0 1 0 1 1 12 1 0 1 0 1 1 0 0 13 1 0 1 1 1 1 0 1 14 1 0 0 1 1 1 1 0 15 1 0 0 0 1 1 1 1 GRAY BCD
  • 17.
    17 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Disseny d’un circuit combinacional : 4.- Deduir la taula de veritat: DEC Codi Gray A B C D W X Y Z 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 2 0 0 1 1 0 0 1 0 0 0 1 1 3 0 0 1 0 0 0 1 1 0 0 1 0 4 0 1 1 0 0 1 0 0 0 1 1 1 5 0 1 1 1 0 1 0 1 0 1 1 0 6 0 1 0 1 0 1 1 0 0 1 0 0 7 0 1 0 0 0 1 1 1 0 1 0 1 8 1 1 0 0 1 0 0 0 X X X X 9 1 1 0 1 1 0 0 1 X X X X 10 1 1 1 1 1 0 1 0 X X X X 11 1 1 1 0 1 0 1 1 X X X X 12 1 0 1 0 1 1 0 0 1 0 0 0 13 1 0 1 1 1 1 0 1 1 0 0 1 14 1 0 0 1 1 1 1 0 X X X X 15 1 0 0 0 1 1 1 1 X X X X GRAY BCD
  • 18.
    18 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Disseny d’un circuit combinacional : 4.- Simplificar per Karnough: 00 01 11 10 00 1 X 01 1 X 11 X X 10 X X AB CD 00 01 11 10 00 1 X 01 1 X 11 1 X X 10 1 X X AB CD 𝑋 = 𝐴𝐵W = 𝐴 00 01 11 10 00 1 X 01 1 X 11 1 X X 10 1 X X AB CD 00 01 11 10 00 1 X 01 1 1 X 11 1 X X 10 1 X X AB CD 𝑍 = 𝐴 𝐵 C D 𝐴𝐵 𝐶 𝐵𝐶 𝑌 = 𝐵𝐶 + 𝐴𝐵 𝐶
  • 19.
    19 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Disseny d’un circuit combinacional : 5.- Implementar el circuit lògic: A B C D W X Y Z
  • 20.
    20 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS 4.2 Blocs Aritmètics Semi Sumador - Half-Adder 𝑆 = 𝐴𝐵 + 𝐴 𝐵 = 𝐴 𝐵 𝐶 = 𝐴𝐵 A B S C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 H.A. A B S C A B C S
  • 21.
    21 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador Complet - Full-Adder 𝑆 = 𝐶𝑖 𝐴𝐵 + 𝐶𝑖 𝐴 𝐵 + 𝐶𝑖 𝐴 𝐵 + 𝐶𝑖 𝐴𝐵 = 𝐶𝑖 𝐴 𝐵 + 𝐶𝑖 𝐴 𝐵 = 𝐶𝑖 𝐴 𝐵 𝐶 = 𝐴𝐵 + 𝐶𝑖 𝐴 + 𝐶𝑖 𝐵 Ci A B S C0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 F.A. A B S Co Ci Ci A B CO S
  • 22.
    22 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador de 4 bits: F.A. A0 B0 S0 C1 C0=0F.A. A1 B1 S1 F.A. A2 B2 S2 C2 F.A. A3 B3 S3 C3 S4
  • 23.
    23 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador de 8 bits a partir de sumadors de 4 bits F.A. de 4 bits A0B0 S0 C0=0 A1B1 S1 A2 B2 S2 C4 A3 B3 S3S8 F.A. de 4 bits A4B4 S4 A5B5 S5 A6 B6 S6 A7 B7 S7
  • 24.
    24 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador amb carry avançant – CLA Carry Look-Ahead Adder Soluciona els retràs de propagació del carry. Ex: Sumador de 2 bits amb F.A. X=1 i Y=1 → Generem carry (Ag) X=1 o Y=1 → Propaguem carry (Ap) Cout = Ag + Ap·Cin Ag0 = X0Y0 Ap0 = X0 + Y0 C1 = Ag0 + Ap0Ci Ag1 = X1Y1 Ap1 = X1 + Y1 C2 = Ag1 + Ap1C1 = = Ag1 + Ap1 Ag0 + Ap0Ci = = Ag1 + Ap1Ag0 + Ap1Ap0Ci Y0 X0 S0 C1 CiF.A. Y1 X1 S1 F.A. C2
  • 25.
    25 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador amb carry avançant – CLA Carry Look-Ahead Adder Podem per tant implementar el circuit sense utilitzar els carry de sortida Y0 X0 S0 Ci Y1 X1 S1 C2 F.A. X Y Ci Co S F.A. X Y Ci Co S
  • 26.
    26 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador amb carry avançant – CLA Carry Look-Ahead Adder 74LS83A A1
  • 27.
    27 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador/Restador de 4 bits: Utilitzarem de base un sumador de 4 bits i nombres en C’2 i un detector d’overflow.
  • 28.
    28 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Aritmètics Sumador/Restador de 4 bits: Utilitzarem de base un sumador de 4 bits i nombres en C’2 i un detector d’overflow. 𝑂𝑣 = (𝐵3 𝐴3)(𝐵3 𝑆3) A2A3A0A1B2 B3B0 B1𝑆/𝑅 F.A. de 4 bits S3 Ci S2S1S0 Co Detector d’ overflow Ov
  • 29.
    29 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS 4.2 Blocs Funcionals Comparador de 4 bits: Els comparadors ens permeten comparar dos nombre dient-nos si són iguals o quin dels dos es major/menor que l’altre Comparador de 4 bits A<B A2A3A0A1B2B3B0B1 A=B A>B A<B A=B A>B Input A vs B Output X A>B A>B X A<B A<B A=B A=B A=B A<B A=B A<B A>B A=B A>B
  • 30.
    30 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Comparador de 8 bits a partir de comparadors de 4 bits.
  • 31.
    31 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Comparador de 8 bits a partir de comparadors de 4 bits. Comparador de 4 bits A6 A7A4A5B6 B7B4 B5 A<B A=B A>B Comparador de 4 bits A<B A2A3A0A1B2B3B0B1 A=B A>B Vcc GND A<B A=B A>B A<B A=B A>B A<B A=B A>B
  • 32.
    32 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Comparador de 4 bits 74LS85
  • 33.
    33 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Decodificador: Un decodificador té 𝑛 entrades i 2 𝑛 sortides. Cada combinació d’entrades excita la única sortida que li correspon en funció del codi que decodifica. Decodificador binari 2x4: 𝑂0 = 𝐶𝑆 𝐼1 𝐼0 𝑂1 = 𝐶𝑆 𝐼1 𝐼0 𝑂2 = 𝐶𝑆𝐼1 𝐼0 𝑂3 = 𝐶𝑆𝐼1 𝐼0 CS DEC/BIN 2x4I1 I0 O1 O0 O3 O2 CS I1 I0 O3 O2 O1 O0 0 X X 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 1 0 1 1 0 0 1 0 0 1 1 1 1 0 0 0
  • 34.
    34 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Decodificador Gray 3x8: CS I2 I1 I0 O7 O6 O5 O4 O3 O2 O1 O0 0 X X X 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 1 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 0 0 0 CS DEC/Gray 3x8 I1 I0 O5 O4 O7 O6 I2 O1 O0 O2 O3
  • 35.
    35 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Implementar un decodificador binari 4x16 amb decodificadors 2x4:
  • 36.
    36 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Implementar un decodificador binari 4x16 amb decodificadors 2x4: DEC/ BIN 2x4I1 I0 O1 O0 O3 O2 CS O1 O0 O3 O2 DEC/ BIN 2x4I1 I0 O5 O4 O7 O6 CS O1 O0 O3 O2 DEC/ BIN 2x4I1 I0 O9 O8 O11 O10 CS O1 O0 O3 O2 DEC/ BIN 2x4I1 I0 O13 O12 O15 O14 CS O1 O0 O3 O2 DEC/ BIN 2x4I1 I0 CS O1 O0 O3 O2 I1 I0 I3 I2 CS
  • 37.
    37 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Implementar un decodificador binari 3x8 amb decodificadors 2x4:
  • 38.
    38 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Implementar un decodificador binari 3x8 amb decodificadors 2x4: DEC/ BIN 2x4I1 I0 O1 O0 O3 O2 CS O1 O0 O3 O2 DEC/ BIN 2x4I1 I0 O5 O4 O7 O6 CS O1 O0 O3 O2 I1 I0 I2
  • 39.
    39 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals El decodificador es pot combinar amb portes OR per a generar funcions lògiques: 𝑓 𝐴, 𝐵, 𝐶 = 𝑚 (0,3,4,7) DEC/ BIN 3x8 I1 I0 O5 O4 O7 O6 I2 O1 O0 O2 O3 CS Vcc A B C f
  • 40.
    40 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Codificador: Un codificador té 2 𝑛 entrades i 𝑛 sortides. La sortida correspon al codi que codifica l’entrada activa. Codificador binari 4x2 Problemes: A) amb aquesta implementació, només 1 entrada pot estar activa; B) No podem diferenciar entre codificar I0 o no codificar rés (Cs=0) CS COD/BIN 2x4 A1 A0 CS I3 I2 I1 I0 A1 A0 0 X X X X 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 1 0 1 1 0 0 0 1 1 I1 I0 I3 I2
  • 41.
    41 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Codificador amb prioritat: Aquest codificador resolt els problemes del codificador anterior Codificador binari 4x2 amb prioritat GS: Indica si hi ha alguna entrada activa EO: Activa quan no hi ha cap entrada activa. Pot habilitar un codificador de menor prioritat. EI I3 I2 I1 I0 A1 A0 GS EO 0 X X X X 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 1 0 0 1 X 0 1 1 0 1 0 1 X X 1 0 1 0 1 1 X X X 1 1 1 0 EI COD/BIN 2x4 A1 A0 I1 I0 I3 I2 EO GS
  • 42.
    42 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Codificador binari 4x2 amb prioritat I3 I2 I1 I0EI A0 A1 GS Eo
  • 43.
    43 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Codificador binari 8x3 amb prioritat a partir de codificadors 4x2 amb prioritat
  • 44.
    44 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Codificador binari 8x3 amb prioritat a partir de codificadors 4x2 amb prioritat EI COD/ BIN 2x4 A1 A0 I5 I4 I7 I6 EO GS COD/ BIN 2x4 A1 A0 I1 I0 I3 I2 EO GS I1 I0 I3 I2 EI EI I1 I0 I3 I2 Eo A0 A1 GS A2
  • 45.
    45 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Codificador binari 8x3 amb prioritat: Fixem-nos que el 74LS148 és actiu a baixa. 74LS148
  • 46.
    46 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Convertidor de codi: els convertidors són circuits compostos d’un decodificador i un codificador per a poder convertir d’un codi a un altre. DEC/BIN n x 2n COD/GRAY n x 2n n n2n BIN/GRAY n x 2n n n
  • 47.
    47 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Convertidor de codi binari a codi Gray de 3 bits DEC/BIN n x 2n COD/GRAY 2n x n A2 A1 A0 A2 A1 A0 D1 D0 D3 D2 D5 D4 D7 D6 DEC Codi Gray Codii Binari 0 0 0 0 0 0 0 1 0 0 1 0 0 1 2 0 1 1 0 1 0 3 0 1 0 0 1 1 4 1 1 0 1 0 0 5 1 1 1 1 0 1 6 1 0 1 1 1 0 7 1 0 0 1 1 1
  • 48.
    48 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Convertidor de codi binari a codi Gray de 3 bits DEC/BIN n x 2n COD/GRAY 2n x n A2 A1 A0 A2 A1 A0 D1 D0 D3 D2 D5 D4 D7 D6 DEC/ BIN n x 2n COD/ BIN 2n x n D1 D0 D3 D2 D5 D4 D7 D6 D1 D0 D3 D2 D5 D4 D7 D6 A2 A1 A0 A2 A1 A0 DEC Codi Gray Codii Binari 0 0 0 0 0 0 0 1 0 0 1 0 0 1 2 0 1 1 0 1 0 3 0 1 0 0 1 1 4 1 1 0 1 0 0 5 1 1 1 1 0 1 6 1 0 1 1 1 0 7 1 0 0 1 1 1
  • 49.
    49 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Multiplexor: Un multiplexor és un commutador digital de manera que a partir de 𝑛 senyals de selecció podem seleccionar quina de les 2 𝑛 entrades passa a la sortida. Multiplexor 2x4 S1 S0 S1 S0 Z 0 0 I0 0 1 I1 1 0 I2 1 1 I3 I1 I0 I3 I2 Z
  • 50.
    50 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Multiplexor 3x8 74LS151
  • 51.
    51 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Multiplexor com a generador de funcions lògiques: Associarem les variables de més pes de la funció a les senyals de selecció del multiplexor. Les entrades al multiplexor dependran de les variables que no s’hagin associat als senyals de selecció. Ex: donada la següent funció: 𝑓 𝐴, 𝐵, 𝐶 = 𝑚(1,2,6,7) A B C f 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 1 1 1 1 1
  • 52.
    52 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Amb un mux 3x8 A=S2 B=S1 C=S0 f Z 0 0 0 0 I0 0 0 1 1 I1 0 1 0 1 I2 0 1 1 0 I3 1 0 0 0 I4 1 0 1 0 I5 1 1 0 1 I6 1 1 1 1 I7 Z S2 S0 I1 I0 I3 I2 A B Vcc GND S1 C I5 I4 I7 I6
  • 53.
    53 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Amb un mux 2x4 A=S1 B=S0 C f Z 0 0 0 0 I0 0 0 1 1 0 1 0 1 I1 0 1 1 0 1 0 0 0 I2 1 0 1 0 1 1 0 1 I3 1 1 1 1 Z S1 S0 I1 I0 I3 I2 A B C Vcc GND
  • 54.
    54 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Amb un mux 1x2 A=S1 B C f Z 0 0 0 0 I0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 0 I1 1 0 1 0 1 1 0 1 1 1 1 1 Z S0 I0 I1 A B C
  • 55.
    55 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Amb n mux 2x4 A B C f 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 1 1 1 1 1 Z S1 S0 I1 I0 I3 I2 A Vcc GND S1 S0 I1 I0 I3 I2 S1 S0 I1 I0 I3 I2 C B
  • 56.
    56 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Demultiplexor: Un demultiplexor és un commutador digital de manera que a partir de 𝑛 senyals de selecció podem seleccionar quina de les 2 𝑛 sortides passa a tenir el valor de l’entrada. Demultiplexor 2x4 S1 S0 Y0 Y1 Y2 Y3 0 0 D 0 0 0 0 1 0 D 0 0 1 0 0 0 D 0 1 1 0 0 0 D S1 S0 Y1 Y0 Y3 Y2 D
  • 57.
    57 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Demultiplexor com a decodificador: Un demultiplexor amb l’entrada D = 1 equival a un decodificador binari. Per aquest motiu no trobarem 2 circuits diferents, sinó un mateix circuit per implementar decodificadors i demultiplexors. S1 S0 Y1 Y0 Y3 Y2 1 S1 S0 Y1 Y0 Y3 Y2 DEC/ BIN 2X4
  • 58.
    58 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Demultiplexor / Decodificador 74LS138
  • 59.
    59 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Blocs Funcionals Demultiplexor com a generador de funcions. Ens cal afegir una porta OR per recollir les sortides que són minterns de la funció. A B C f 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 1 1 1 1 1 Y1 Y0 Y3 Y2 S1 S0 Y1 Y0 Y3 Y2 S1 S0 1 Y1 Y0 Y3 Y2 S1 S0 A B C f
  • 60.
    60 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS 4.4 Unitat aritmètico-lògica A partir dels blocs aritmètics i els blocs funcionals, ens demanen implementar una unitat aritmètico-lògica de 4 bits que implementi com a mínim les següents funcions: Aritmètiques: • Suma (A+B), Increment (A+1), Resta (A-B), Decrement (A-1) Lògiques: • OR (A+B), AND (A·B), XOR (A B), NOT ( 𝐴 )
  • 61.
    61 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica 3 bits de Selecció (S2S1S0): 8 operacions (4 aritmètiques i 4 lògiques) Operands A3-0 i B3-0 de 4 bits Resultat F3-0 de 4 bits A l’utilitzar sumadors tindrem també Cin i Cout ALU de 4 bits Cin A3-0 B3-0 S2 S1 S0 Cout F3-0
  • 62.
    62 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica S2 = 0  operacions aritmètiques A+B F = A+B+0 Op1 = A; Op2 = B; Cin = 0 A+1 F = A+0s+1 Op1 = A; Op2 = 0s; Cin = 1 A-B F = A+B+1 Op1 = A; Op2 = B; Cin = 1 A-1 F = A+1s+0 Op1 = A; Op2 =1s; Cin = 0
  • 63.
    63 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica S2 = 0  operacions aritmètiques Si tenim en compte totes les operacions: S1 S0 Entrada Y F = A + Y + Cin Cin = 0 Cin = 1 0 0 0s F = A (transferència) F = A + 1 (increment) 0 1 B F = A + B (suma) F = A + B + 1 1 0 B F = A + B F = A + B + 1 (resta) 1 1 1s F= A – 1 (decrement) F = A (transferència)
  • 64.
    64 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica S2 = 0  operacions aritmètiques Posem ara Yi en una taula de veritat funció de S1S0 i Bi i simplifiquem per Karnough Yi = S0Bi+S1Bi S1 S0 Bi Yi 0 0 0 0 Yi = 0 0 0 1 0 0 1 0 0 Yi = B 0 1 1 1 1 0 0 1 Yi = B 1 0 1 0 1 1 0 1 Yi = 1 1 1 1 1 00 01 11 10 0 0 0 1 0 1 1 0 1 1 S0Bi S1 𝑆1 𝐵𝑖 𝑆0 𝐵𝑖
  • 65.
    65 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica Implementació de F = A + Y + Cin Full Adder 4 bits Cin A3-0 S1 S0 Cout F3-0 X3-0 S3-0 Cout Cin Y3-0 B3-0 Circuit Combi- nacional Circuit Aritmètic
  • 66.
    66 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica Disseny del Circuit Combinacional B0 S1 S0 Y0 B1 Y1 B2 Y2 B3 Y3 Circuit Combinacional
  • 67.
    67 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica S2 = 1  operacions lògiques S1 S0 Operació 0 0 A · B 0 1 A + B 1 0 A  B 1 1 A
  • 68.
    68 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica S2 = 1  operacions lògiques Implementació del circuit lògic S1 S0 I1 I0 I3 I2 Fi Ai Bi Circuit Lògic i | i = 0 .. 3
  • 69.
    69 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Unitat aritmètico-lògica Implementem l’ALU emprant tots els circuits dissenyats Circuit Aritmètic Cin A3-0 B3-0 S1 S0 Cout Circuit Lògic A3-0 B3-0 S1 S0 Cin Cout F3-0 A3-0 B3-0 S1 S0 F3-0 I1 I0 S0 F3-0 S2 ALU de 4 bits
  • 70.
    70 SISTEMES COMBINACIONALS ESTRUCTURA ITECNOLOGIA DE COMPUTADORS Més informació: Estructura i Tecnologia de Computadors, tema 4 https://www.documentauniversitaria.cat/botiga.php?a=llibre&id=809 www.unigrades.eu Floyd, Thomas L. (2009). Digitals Fundamentals. Pearson International. – Capítols 5 i 6