Professional Documents
Culture Documents
4.0 Introducción
Circuitos combinacionales
Aquellos circuitos digitales con varias entradas y varias salidas, en los
cuales la relación entre cada salida y las entradas puede ser expresada
mediante una función lógica (expresiones algebraicas, tablas de verdad,
circuito con puertas lógicas, etc.), se denominan circuitos
combinacionales.
x1
F F(t) = (x1 (t) , x2(t), ... )
x2
E0 S0
Sistema
E1 S1
Combinacional
En Sm
1
Estructura de computadores Tema 4: Circuitos combinacionales
E0 E1 En S0 S1 Sn
Para sumar dos números de n bits, hay que sumar dos a dos los bits del
mismo peso y el acarreo de la suma de los bits de peso inmediato inferior.
a b S C
a Suma (S)
0 0 0 0 1/2
0 1 1 0
1 0 1 0 b
Σ Acarreo (C)
1 1 0 1
2
Estructura de computadores Tema 4: Circuitos combinacionales
S = a' · b + a · b' = a ⊕ b
C=a·b
S = (a+b) · (a'+b') =
= ((a+b) · (a'+b'))' ' = ((a+b)' + (a'+b')')' = ((a+b)’ + (a·b))' =
= (a+b) · (a·b)'
C=a·b
3
Estructura de computadores Tema 4: Circuitos combinacionales
S Cout
Cin\ab 00 01 11 10 Cin\ab 00 01 11 10
0 1 3 2 0 1 3 2
0 1 1 0 1
4 5 7 6 4 5 7 6
1 1 1 1 1 1 1
4
Estructura de computadores Tema 4: Circuitos combinacionales
1/2 1/2
Σ Σ
MSB an bn a3 b3 a2 b2 a1 b1 LSB
Cn C3 C2 C1 0 v.
Σn Σ3 Σ2 Σ1
Sn S3 S2 S1
5
Estructura de computadores Tema 4: Circuitos combinacionales
A B
A = a n ... a 1 (n bits)
n n B = b n ... b 1 (n bits)
S = S n ... S 1 (n bits)
Cn 0 v.
Σ n bits
n
Retardo de propagación
Expansión de sumadores
6
Estructura de computadores Tema 4: Circuitos combinacionales
Σ 4 bits
Cout Cout 0 v.
Σ 4 bits
4 4
S8..5 S4..1
a b D C
a Diferencia (D)
0 0 0 0
0 1 1 1 1/2
1 0 1 0
b
D Acarreo (C)
1 1 0 0
D = a' · b + a · b' = a ⊕ b
C = a' · b
7
Estructura de computadores Tema 4: Circuitos combinacionales
a b Cin D Cout
a Diferencia (D)
b
0 0 0 0 0 D
0 0 1 1 1
0 1 0 1 1 Cin Acarreo (Cout )
0 1 1 0 1
1 0 0 1 0 a y b = Variables de entrada
1 0 1 0 0 Cin = Acarreo entrada (etapa anterior)
1 1 0 0 0 D = Diferencia
1 1 1 1 1 Cout = Acarreo salida (etapa siguiente)
D Cout
Cin\ab 00 01 11 10 Cin\ab 00 01 11 10
0 1 3 2 0 1 3 2
0 1 1 0 1
4 5 7 6 4 5 7 6
1 1 1 1 1 1 1
Cout = a'·b + a'·C in + b·C in = (a'·b+a'·C in+b·C in)'' = ((a'·b)'·(a'·C in)'·(b· C in)')'
Cout
8
Estructura de computadores Tema 4: Circuitos combinacionales
a 1/2 1/2 D
b D D
Cin Cout
a
1/2 D
b D
1/2
Cout
Cin Σ
MSB an bn a3 b3 a2 b2 a1 b1 LSB
Cn C3 C2 C1 0 v.
Dn D3 D2 D1
Dn D3 D2 D1
9
Estructura de computadores Tema 4: Circuitos combinacionales
an a3 a2 a1 C2 = C1 + 1
Cn C3 C2 C1
Σn Σ3 Σ2 Σ1 “1”
Sn S3 S2 S1
bn b3 b2 b1
S’/R
S’/R = 0 è Sumar
S’/R = 1 è Restar
an a3 a2 a1
Cn C3 C2 C1
Σn Σ3 Σ2 Σ1
Suma: “0”
Resta: “1”
(C2 = C1 + 1)
Sn S3 S2 S1
10
Estructura de computadores Tema 4: Circuitos combinacionales
4.2.1 Codificadores
E0 E1 E2 E3
“m” entradas
Codificador m ≤ 2n
“n” salidas
S0 S1
Tenemos 8 entradas, una para cada dígito octal, y tres salidas que
generan el número binario correspondiente. Se supone que sólo una entrada
tiene un valor de 1 en cualquier momento.
Entradas Salidas
E7 E6 E5 E4 E3 E2 E1 E0 S2 S1 S0
0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 1 0 0 0 1 0
0 0 0 0 1 0 0 0 0 1 1
0 0 0 1 0 0 0 0 1 0 0
0 0 1 0 0 0 0 0 1 0 1
0 1 0 0 0 0 0 0 1 1 0
1 0 0 0 0 0 0 0 1 1 1
11
Estructura de computadores Tema 4: Circuitos combinacionales
Este decodificador tiene la limitación de que sólo puede estar activa una
entrada en un momento dado: si se activan simultáneamente dos entradas, la
salida produce una combinación incorrecta. Para resolver esta ambigüedad,
algunos circuitos codificadores deben establecer una prioridad de entrada
para asegurar que sólo se codifique una entrada. Por ejemplo, en este caso
podríamos haber establecido una prioridad más alta para las entradas con
subíndices mayores.
Entradas Salidas
E9 E8 E7 E6 E5 E4 E3 E2 E1 E0 S3 S2 S1 S0
0 0 0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0 1 0 0 0 0 1
0 0 0 0 0 0 0 1 0 0 0 0 1 0
0 0 0 0 0 0 1 0 0 0 0 0 1 1
0 0 0 0 0 1 0 0 0 0 0 1 0 0
0 0 0 0 1 0 0 0 0 0 0 1 0 1
0 0 0 1 0 0 0 0 0 0 0 1 1 0
0 0 1 0 0 0 0 0 0 0 0 1 1 1
0 1 0 0 0 0 0 0 0 0 1 0 0 0
1 0 0 0 0 0 0 0 0 0 1 0 0 1
12
Estructura de computadores Tema 4: Circuitos combinacionales
S3 = E 8 + E 9
S2 = E 4 + E 5 + E 6 + E 7
S1 = E 2 + E 3 + E 6 + E 7
S0 = E 1 + E 3 + E 5 + E 7 + E 9
13
Estructura de computadores Tema 4: Circuitos combinacionales
4.2.2 Decodificadores
E0 E1
“n” entradas
Decodificador m ≤ 2n
“m” salidas
S0 S1 S2 S3
Entradas Salidas
E3 E2 E1 E0 S9 S8 S7 S6 S5 S4 S3 S2 S1 S0
0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 1 0 0 0 0 0 0 0 0 1 0
0 0 1 0 0 0 0 0 0 0 0 1 0 0
0 0 1 1 0 0 0 0 0 0 1 0 0 0
0 1 0 0 0 0 0 0 0 1 0 0 0 0
0 1 0 1 0 0 0 0 1 0 0 0 0 0
0 1 1 0 0 0 0 1 0 0 0 0 0 0
0 1 1 1 0 0 1 0 0 0 0 0 0 0
1 0 0 0 0 1 0 0 0 0 0 0 0 0
1 0 0 1 1 0 0 0 0 0 0 0 0 0
1 0 1 0 x x x x x x x x x x
1 0 1 1 x x x x x x x x x x
1 1 0 0 x x x x x x x x x x
1 1 0 1 x x x x x x x x x x
1 1 1 0 x x x x x x x x x x
1 1 1 1 x x x x x x x x x x
14
Estructura de computadores Tema 4
E0 E1 E2 E3
S0
S9
E3E2 \ E1E0 00 01 11 10
00 0 0 0 0
01 0 0 0 0 S9 = E3 · E 2' · E 1' · E 0 = E3 · E 0
11 x x x x
10 0 1 x x
NOTA. Existen decodificadores con salida activa por nivel bajo (“0”),
como por ejemplo el 74154, que es un decodificador de 4 a 16.
15
Estructura de computadores Tema 4
A a..g a
Circuito
B f b
combinacional: g
C decodificador BCD e c
D a 7 segmentos
d
16
Estructura de computadores Tema 4
Como el código BCD tan sólo tiene los valores 0..9, las últimas 6
combinaciones (10-15) nunca aparecerán en las entradas, por lo que tenemos
la opción de tratarlas como condiciones indiferentes en las salidas ("x").
17
Estructura de computadores Tema 4
Segmento "a":
DC \ BA 00 01 11 10
00 1 1 1
01 B
1 1 1
11 x x x x C'·A'
10 1 1 x x
D C·A
a = D + B + C·A + C'·A'
18
Estructura de computadores Tema 4
Segmento "a":
DC \ BA 00 01 11 10
00 1 1 1
01 1 1 1 D'·B
11 0 0 0 0
10 1 1 0 0
19
Estructura de computadores Tema 4
20
Estructura de computadores Tema 4
4.3.1 Multiplexores
Esquemáticamente:
Multiplexor Demultiplexor
E0
E1 MUX "m" entradas de información
4 S "n" entradas de control (m=2n)
E2 entradas 1 única salida (S)
E3
C0 C1
21
Estructura de computadores Tema 4
E0
E1
S
E2
E3
C0 C1
Ejemplos de multiplexor:
22
Estructura de computadores Tema 4
E0 MUX
MUX
2
MUX
S
5
MUX
MUX
4
E15
C0 C1 C2 C3
23
Estructura de computadores Tema 4
Ejemplo
MUX 4
C E0 (00)
C’ E1 (01)
E2 (10) F
0
1 E3 (11)
C1 C0
(MSB) a b (LSB)
24
Estructura de computadores Tema 4
Ejemplo
A partir de la función lógica, vamos a diseñar el circuito utilizando un
multiplexor y la lógica necesaria. Primero utilizaremos un multiplexor de 8
entradas de datos y luego uno de 4 entradas.
Multiplexor de 8 entradas
MUX 8
1 E0 (000)
0 E1 (001)
0 E2 (010)
1 E3 (011)
1 E4 (100) F
0 E5 (101)
1 E6 (110)
1 E7 (111)
C2 C1 C0
(MSB) a b c (LSB) 25
Estructura de computadores Tema 4
Multiplexor de 4 entradas
MUX 4
c’ E0
c E1
F
E2
c’
1 E3
C1 C0
(MSB) a b (LSB)
26
Estructura de computadores Tema 4
4.3.2 Demultiplexores
S0
DEMUX 1 entrada única (E)
S1
E 4 "n"entradas de control (m=2n)
salidas S2 "m" salidas
S3
C0 C1
El circuito es:
Si examinamos el circuito
E veremos que el circuito demultiplexor
S0
es idéntico a un decodificador de 2 a
S1 4 líneas con entrada de habilitación:
• Conversor serie-paralelo
27
Estructura de computadores Tema 4
S1 (A<B)
A
COMP A = a n ... a 1 (n bits)
n S2 (A=B)
B = b n ... b 1 (n bits)
B S3 (A>B)
n
La tabla de verdad:
Entradas Salidas
a b S1 (a<b) S2 (a=b) S3 (a>b)
0 0 0 1 0
0 1 1 0 0
1 0 0 0 1
1 1 0 1 0
• S1 = a'·b
• S2 = a'·b' + a·b = (a ⊕ b)' = ( a'·b + a·b' )'
• S3 = a·b'
a S1 (a<b)
S2 (a=b)
b S3 (a>b)
28
Estructura de computadores Tema 4
a1 S1 (a<b)
S2 (a=b)
b1 S3 (a>b)
a2 S1 (a<b)
S2 (a=b)
b2 S3 (a>b)
A=B
a3 S1 (a<b)
S2 (a=b)
b3 S3 (a>b)
a4 S1 (a<b)
S2 (a=b)
b4 S3 (a>b)
29
Estructura de computadores Tema 4
a
a=b
b
a1
a1=b1
b1
a2 A=B
a2=b2
b2
a3
a3=b3
b3
a4
a4=b4
b4
30
Estructura de computadores Tema 4
31
Estructura de computadores Tema 4
• Paridad par:
- el generador de paridad se encarga de añadir un bit de paridad tal
que tengamos un número par de 1's.
- el comprobador de paridad se encarga de comprobar que el
número de 1's recibidos es par.
• Paridad impar:
- el generador de paridad se encarga de añadir un bit de paridad tal
que tengamos un número impar de 1's.
- el comprobador de paridad se encarga de comprobar que el
número de 1's recibidos es impar.
32
Estructura de computadores Tema 4
Ejemplo:
C=x ⊕y ⊕z⊕P x
y
C
z
P
33