Universidad Rey Juan Carlos Ingeniera de Telecomunicacin
Electrnica Digital I
Bloques combinacionales estndar
Norberto Malpica Beln Arredondo Ingeniera de Telecomunicacin
Circuitos combinacionales
Electrnica Digital I
Contenido
1. 2. 3. 4. 5. 6. 7. Introduccin Codificadores Decodificadores Multiplexores Demultiplexores Desplazadores Dispositivos Lgicos Programables 7.1 Memorias ROM. 7.2 PLA y PAL. Comparadores Binarios Sumadores Binarios. Restadores Binarios. Unidad aritmtico lgica combinacional (UAL, ALU).
8. 9. 10. 11.
Circuitos combinacionales
Electrnica Digital I
1. Introduccin a los circuitos combinacionales
En los circuitos combinacionales la salida Z en un determinado instante de tiempo ti slo depende de la entrada X en ese mismo instante de tiempo ti , es decir que no tienen capacidad de memoria
Z(t) = F(X(t))
Z = F(X)
Z
Ejemplo: Sumador
Circuitos combinacionales
Electrnica Digital I
Introduccin a los circuitos combinacionales
Decodificadores y Codificadores Decodificador: Se activa la salida correspondiente al nmero binario codificado en la entrada. Codificador: Se codifica en binario sobre la salida el nmero de la entrada que est activa. Multiplexores y Demultiplexores
2n
MUX
DECOD
2n
enable
2n
COD
enable enable
Multiplexor: La salida corresponde a la entrada codificada por las seales de control Demultiplexor: El valor de la entrada sale por la salida codificada por las seales de control
enable
DEMUX
2n
n
Circuitos combinacionales Electrnica Digital I
Introduccin a los circuitos combinacionales
Niveles de descripcin de un circuito digital Nivel algortmico o comportamental: describe la funcin Nivel RTL (lgebra de seales, tabla de verdad) Nivel estructural (lgico o esquemtico)
Precisin Complejidad Precisin //Complejidad
AL N IO
Nivel conmutador (circuital y elctrico)
Funcionalidad Funcionalidad
AL
AR QU ITE
Arquitectura Arquitectura Nivel RT Nivel RT Diseo Lgico Diseo Lgico Puertas Puertas
+ +
Circuitos combinacionales
IC S
ELCTRICO ELCTRICO
Electrnica Digital I
Niveles de abstraccin Niveles de abstraccin
N FU
Requisitos y Requisitos y especificaciones especificaciones
CT UR
2. Codificadores
El codificador identifica qu entrada de las 2n est activa y genera como salida su representacin binaria, siempre y cuando el mdulo est activo. Un codificador tiene 2n entradas de datos xi y n salidas de datos yj y una salida A Si E est inactivo, todas las salidas inactivas. Si E est activo y todas las entradas de datos xi estn inactivas, todas las salidas (yj y A) permanecen inactivas. Si se activa la entrada de datos xi y E est activo: Las salidas yj componen el nmero i codificado en binario. Se activa la salida A. Expresin de conmutacin: yi = E x j
Circuitos combinacionales Electrnica Digital I
Codificadores
El comportamiento del codificador sin prioridad es:
Y = yj 2j
j =0 n 1
i si x i = H y E = H y x k = L k i Y = indefinido si x i , x j /x i = x j = H con i j L resto de casos
H si algn x i = H y E = H La salida de actividad A se define como: A = L resto de casos
Expresin de conmutacin: yi = E x j
Circuitos combinacionales
Electrnica Digital I
Codificadores
Ejemplo: diseo de un codificador sin prioridad de 8 a 3. Funciones lgicas A = E (x0+x1+x2+x3+x4+x5+x6+x7) Y0 = E (x1+x3+x5 +x7) Y1 = E (x2+x3+x6 +x7) Y2 = E (x4+x5+x6 +x7) Comercial: 74148
Circuitos combinacionales
Electrnica Digital I
Codificadores
Ejemplo: diseo de un codificador sin prioridad de 8 a 3. Descripcin Estructural
Circuitos combinacionales
Electrnica Digital I
Codificadores
Ejemplo: diseo de un codificador sin prioridad de 8 a 3. Simulacin No tiene sentido, Ao, A1, A2!!!
Circuitos combinacionales
Electrnica Digital I
10
Codificadores con prioridad
Qu pasa si hay de ms de una entrada activa? Qu aparecer en la salida? Codificadores con Prioridad: Las salidas yj codifican en binario el nmero correspondiente a la entrada activa con mayor peso
Los codificadores pueden encadenarse para formar codificadores con mayor nmero de bits. Eout se activa cuando Ein est activo y no hay ninguna entrada de datos activa. Si la salida Eout se conecta a la entrada Ein de otro codificador permite su encadenamiento.
Circuitos combinacionales Electrnica Digital I
11
Codificadores con prioridad
El comportamiento del codificador con prioridad es:
i si x i = H y Ein = H y x k = L k > i Y = L resto de los casos H si algn x i = H y E = H A= L resto de los casos H si x i = L(i ) y E = H Eout = L resto de los casos
Circuitos combinacionales
Electrnica Digital I
12
Codificador de 8 a 3 con prioridad
X (7:0) Y (2:0)
COD8a3 Con prioridad
A
entity COD8a3_prior is port( X : in std_logic_vector (7 downto 0); Y : out std_logic_vector (2 downto 0); A : out std_logic); end COD8a3_prior;
architecture comportamental1 of COD8a3_prior is begin Y <= 111 when X(7) =1 else 110 when X(6) =1 else 101 when X (5) =1 else 100 when X (4) =1 else 011 when X (3) =1 else 010 when X (2) =1 else 001 when X(1) =1 else 000; A <= 0 when DATAIN = 00000000 else 1; end comportamental1;
Circuitos combinacionales
Electrnica Digital I
13
Codificadores con prioridad
Materializacin del codificador de prioridad: El bloque de resolucin de prioridades materializa las expresiones de conmutacin siguientes:
Circuitos combinacionales
Electrnica Digital I
14
Codificadores con prioridad: ejemplo Cod4a2
Ejemplo: codificador con prioridad de 4 a 2.
Circuitos combinacionales
Electrnica Digital I
15
Codificadores con prioridad: ejemplo Cod4a2
Ejemplo: codificador de prioridad de 4 a 2. Bloque de resolucin de prioridades
Circuitos combinacionales
Electrnica Digital I
16
Codificadores con prioridad: ejemplo Cod4a2
Codificador de 4 a 2 Sin prioridad
Circuitos combinacionales
Electrnica Digital I
17
Codificadores con prioridad: ejemplo Cod4a2
Circuitos combinacionales
Electrnica Digital I
18
3. Decodificadores
Un decodificador (o decodificador de n a 2n) es un mdulo con n entradas y 2n salidas, adems de una seal de activacin (Enable) de entrada El decodificador activa la salida 2i- sima cuando se presenta la combinacin binaria i en las entradas, siempre y cuando el mdulo est activo. Es decir, se activa la salida correspondiente al nmero binario codificado en la entrada. El comportamiento del decodificador
Expresin de conmutacin:
Circuitos combinacionales
Electrnica Digital I
19
Decodificador 2 a 4
X (1:0) Y (3:0)
DECOD 2a4
ENABLE
entity DECOD2a4 is port( X: in std_logic_vector (1 downto 0); ENABLE : in std_logic; Y : out std_logic_vector (3 downto 0)); end DECOD2a4;
architecture comportamental1 of DECOD2a4 is signal DataEnable: std_logic_vector (2 downto 0); begin DataEnable <= ENABLE & DATAIN; with dataEnable SELECT Y<= 1000 when 111; 0100 when 110; 0010 when 101; 0001 when 100; 0000 when others; end comportamental1;
Circuitos combinacionales
Electrnica Digital I
20
Decodificadores
Ejemplo: diseo de un decodificador de 2 a 4:
Funciones lgicas
Circuitos combinacionales
Electrnica Digital I
21
Decodificadores: diseo jerrquico
Comercial: 74238 Ejemplo: diseo jerrquico de un decodificador de 4 a 16 mediante decodificadores de 3 a 8. Decodificador de 3 a 8
Circuitos combinacionales
Electrnica Digital I
22
Decodificadores: diseo jerrquico
Ejemplo: diseo jerrquico de un decodificador de 4 a 16 mediante decodificadores de 3 a 8.
Circuitos combinacionales
Electrnica Digital I
23
Decodificadores: diseo jerrquico
Ejemplo: diseo jerrquico de un decodificador de 4 a 16 mediante decodificadores de 3 a 8. Resultados de simulacin.
Circuitos combinacionales
Electrnica Digital I
24
Sntesis de FC con Decodificadores
Un decodificador (o decodificador de n a 2n) es un mdulo que materializa todos los minterms de una funcin de n variables. Expresin de conmutacin: Se puede materializar cualquier FC de n variables expresada como suma de minterms sin ms que usar un decodificador de n a 2n y una puerta OR con tantas entradas como sumandos tenga la expresin de la FC.
Circuitos combinacionales
Electrnica Digital I
25
Sntesis de FC con Decodificadores
Ejemplo: diseo de las funciones f1,f2 y f3 mediante decodificadores.
Circuitos combinacionales
Electrnica Digital I
26
Sntesis de FC con Decodificadores
Materializar un codificador BCD a 7 segmentos mediante decodificadores
a ( x 3, x 2, x1, x 0) =
m(0,2,3,5,6,7,8,9) m(2,3,4,5,6,8,9)
g ( x 3, x 2, x1, x 0) =
Circuitos combinacionales
Electrnica Digital I
27
Aplicaciones de los Decodificadores
Chips de memoria : Convierte el n binario que designa la direccin de una celda de memoria en la fila o columna correspondiente. Sistemas de memoria de microprocesadores: Seleccionando diferentes bancos de memoria. Sistemas de entrada/salida de microprocesadores: Seleccionando distintos dispositivos. Descodificando instrucciones de microprocesadores: Habilitando diferentes unidades funcionales Displays (descodificador BCD-7 segmentos, etc) Teclados (asignando valores binarios a cdigos ASCII, etc)
Circuitos combinacionales
Electrnica Digital I
28
4. Multiplexores
Un multiplexor (o multiplexor de 2n a 1) es un mdulo combinacional con 2n entradas y 1 salida, adems de una seal de activacin y n seales de control. El multiplexor conecta una de las 2n entradas a la salida salidas. Esta entrada se selecciona con la palabra de control S. El comportamiento del multiplexor: entonces:
Expresin de conmutacin:
Circuitos combinacionales
Electrnica Digital I
29
MUX 2 a 1
entity MUX is port( E0,E1 : in bit; SEL: in bit; Z : out bit); end MUX;
Comercial: 74157
architecture comportamental1 of MUX is begin Z <= E0 when SEL = 0 else E1; end comportamental1; architecture comportamental2 of MUX is begin P1: process(E0, E1, SEL) begin if SEL = 0 then Z <= E0; else Z <= E1; end if; end process P1; end comportamental2;
E0 E1
0 1
SEL
Circuitos combinacionales
Electrnica Digital I
30
Multiplexores
Ejemplo: diseo de un multiplexor de 4 entradas (4 a 1). Comercial: 74293
Circuitos combinacionales
Electrnica Digital I
31
Sntesis de FC con multiplexores
Un nico multiplexor de 2n a 1 permite materializar cualquier funcin de conmutacin de n variables. La expresin de conmutacin de una FC como suma de productos consiste en la suma de los minterms mi para los que la FC, f(i), toma valor cierto, es decir:
Obviando E, esta expresin coincide con la expresin del multiplexor si se identifican: xi = f(i) i=0,...,2n-1 y (sn-1,...,s0) =(an-1,...,a0). Esto significa que para materializar f basta con conectar las entradas binarias de la funcin a las entradas de control del multiplexor y conectar el valor f(i) que toma la funcin (fila i de la tabla de verdad) con la entrada de datos xi del multiplexor.
32
Circuitos combinacionales
Electrnica Digital I
Sntesis de FC con multiplexores
Ejemplo: diseo mediante un nico multiplexor de la funcin f siguiente.
Circuitos combinacionales
Electrnica Digital I
33
Sntesis de FC con multiplexores
Ejemplo: diseo mediante multiplexores de un sumador binario completo de 1 bit.
Circuitos combinacionales
Electrnica Digital I
34
Sntesis de FC con multiplexores
Ejemplo: diseo mediante multiplexores de un sumador binario completo de 1 bit.
Circuitos combinacionales
Electrnica Digital I
35
Sntesis de FC con multiplexores
Qu pasa si la materializacin se hace con un multiplexor con menor n de entradas (n) de control que variables de la funcin? Seleccionar n de las variables de entrada para usarlas como control y utilizar las restantes para generar los valores de las 2n entradas del multiplexor Cada una de las funciones de k entradas puede realizarse con multiplexores de k entradas de control o con otros mdulos.
Circuitos combinacionales
Electrnica Digital I
36
Sntesis de FC con multiplexores
Ejemplo: diseo de la funcin f siguiente mediante un multiplexor de 4 a 1 y puertas lgicas.
Circuitos combinacionales
Electrnica Digital I
37
Sntesis de FC con multiplexores
Circuitos combinacionales
Electrnica Digital I
38
Sntesis de FC con multiplexores
Circuitos combinacionales
Electrnica Digital I
39
Sntesis de FC con multiplexores
La seleccin de otras seales de control puede variar la materializacin. Por ejemplo, si se escogen a y d.
Circuitos combinacionales
Electrnica Digital I
40
Aplicaciones de los Multiplexores
Un MUX puede implementar cualquier funcin lgica con un n de variables igual a los selectores. Un MUX se implementa con un n razonable de puertas NAND. MUX de pocas entradas se utilizan como elemento bsico de los bloques lgicos programables de FPGAs. Conversin paralelo-serie. Multiplexacin de bits de direccin en memorias grandes
Circuitos combinacionales
Electrnica Digital I
41
5. Demultiplexores
Un demultiplexor (o demultiplexor de 2n a 1) es un mdulo con 1 entrada y 2n salidas, adems de una seal de activacin y n seales de control.
El demultiplexor conecta la entrada con una de las 2n salidas que se selecciona con la palabra de control S. Su funcionamiento es inverso al realizado por el multiplexor.
Circuitos combinacionales
Electrnica Digital I
42
DEMUX 3 a 8
Y (7:0) X ENABLE
DEMUX3a8
entity DEMUX3a8 is port( X,ENABLE : in std_logic; CONTROL : in std_logic_vector (2 downto 0); Y : out std_logic_vector (7 downto 0)); end DEMUX3a8; architecture comportamental of DEMUX3a8 is signal DataControl: std_logic_vector (3 downto 0); signal Entrada: std_logic; begin DataEnable <= ENABLE & CONTROL; Entrada <= X; with dataEnable SELECT Y(7)<= Entrada when 1111; Y(6)<= Entrada when 1110; Y(5)<= Entrada when 1101; Y(4)<= Entrada when 1100; Y(3)<= Entrada when 1011; Y(2)<= Entrada when 1010; Y(1)<= Entrada when 1001; Y(0)<= Entrada when 1000; Y <= (others =>0)when others; end comportamental;
CONTROL (2:0)
Circuitos combinacionales
Electrnica Digital I
43
6. Desplazadores
Un desplazador (shifter) es un mdulo combinacional con n+2 entradas de datos y n salidas, adems de una seal de activacin y seales de control. El desplazador puede mover o no bits a derecha e izquierda en desplazamientos abiertos o cerrados (rotaciones) bajo las rdenes de las seales control.
La construccin habitual suele consistir en un conjunto de multiplexores.
Circuitos combinacionales Electrnica Digital I
44
Desplazadores
Circuitos combinacionales
Electrnica Digital I
45
7. Dispositivos lgicos programables
Dispositivos lgicos programables: conjunto de circuitos integrados formados por cierto nmero de puertas lgicas y/o mdulos bsicos y/o biestables cuyas conexiones pueden ser personalizadas o programadas, bien sea por el fabricante o por el usuario. La gran ventaja de estos dispositivos reside en que los fabricantes pueden realizar grandes tiradas de estos CI lo que abarata sus costes de produccin y los usuarios posteriormente pueden personalizar sus diseos en sus propios laboratorios sin grandes inversiones: Consumos medios, aunque hay familias especializadas en bajo consumo Velocidad intermedia Fiabilidad alta Tiempo de desarrollo muy bajo, sin dependencia de terceros Metodologa sencilla Equipamiento sencillo Aumentan la confidencialidad de las placas
Circuitos combinacionales Electrnica Digital I
46
Dispositivos lgicos programables
Evolucin temporal y escala de integracin:
PAL,PLDs CPLDs FPGAs Suma de productos de entradas y salidas realimentadas Varias PALs interconexionadas entre s Bloques lgicos configurables con rutas de interconexin no prefijadas 200-1000 1k-10k 10k-10M
PLDs PLDs SPLDs SPLDs CPLDs CPLDs
PROMs PROMs
PLAs PLAs
PALs PALs
GALs GALs
PLD: SPLD: CPLD: PROM: PAL: PLA: GAL:
Programmable Logic Device Simple PLD Complex PLD Programmable ROM Programmable Array Logic Programmable Logic Array Generic Array Logic
Circuitos combinacionales
Electrnica Digital I
47
FPGAs
Circuitos combinacionales
Electrnica Digital I
48
FPGAs
Circuitos combinacionales
Electrnica Digital I
49
FPGAs. Arquitectura
Circuitos combinacionales
Electrnica Digital I
50
Circuitos combinacionales
Electrnica Digital I
51
7.1. Memorias ROM
Una memoria es un dispositivo de almacenamiento de informacin RAM Random Acess Memory ROM Read-Only Memory PROM Programmable ROM EPROM Erasable and Programmable ROM EEPROM Electrically erasable PROM
m Bus de direcciones Bus de datos Seales de control
Memoria 2m x N
Estructura interna: Los datos se almacenan en grupos llamados posiciones de memoria. Cada posicin de memoria tiene una direccin. Slo se puede acceder a una direccin a la vez Las direcciones estn codificadas y se indican a travs el bus de direcciones Los datos son ledos o escritos por el bus de datos Capacidad de una memoria: M x N bits (M direcciones de N bits cada una)
Circuitos combinacionales Electrnica Digital I
52
Memorias ROM
Una memoria ROM (Read Only Memory - memoria de solo lectura) es un mdulo combinacional con n entradas de direcciones y k salidas de datos, adems de una o varias seales de activacin o seleccin. Una memoria ROM es un CI programable (por el fabricante o los usuarios) en el que se pueden personalizar ciertas conexiones. Existen distintos tipos segn los datos sean o no permanentes (ROM, PROM o EPROM, EEPROM), sean no programables o programables (ROM o PROM, EPROM, EEPROM) , y cuantas veces, y como se realice fsicamente el borrado y la programacin (EPROM - UV, EEPROM - elctrica).
Circuitos combinacionales
Electrnica Digital I
53
Memorias ROM
Una ROM se compone internamente de dos grupos de puertas: un grupo de puertas AND (en realidad incluye tambin un conjunto de inversores) y un grupo de puertas OR.
El grupo de puertas AND estn programadas de antemano y conectadas de forma inalterable, mientras que el grupo de puertas OR son programables por el usuario.
Circuitos combinacionales
Electrnica Digital I
54
Memorias ROM
El grupo de puertas AND se puede ya entender como un decodificador de n a 2n con el que se generan todos los minterms para cualquier funcin de n variables (direcciones). Ese decodificador (prefijado) junto a un grupo de puertas OR programables permite materializar cualquier FC de n variables (ver Sntesis de FC con decodificadores).
Circuitos combinacionales
Electrnica Digital I
55
Memorias ROM
Ejemplo: Materializar el comparador de magnitud de dos palabras binarias de dos bits que cumple lo siguiente:
La solucin consiste en seleccionar las salidas que generan los minterms de las funciones y programar las conexiones en el grupo OR para cada una de las salidas. Se almacena directamente la tabla de verdad.
Circuitos combinacionales Electrnica Digital I
56
Memorias ROM
Una ROM se puede entender como una tabla que almacena datos con la siguiente estructura interna abstracta, donde cada dato ocupa una posicin de la tabla denominada direccin.
Como la nica parte programable es la OR se suele representar mediante la matriz de conexiones OR con 1s y 0s indicando conexin o no conexin respectivamente, de nuevo materializando directamente la tabla de verdad.
Circuitos combinacionales Electrnica Digital I
57
Memorias ROM
Ejemplo: Disear en ROM un conversor de cdigo BCD a XS-3
Circuitos combinacionales
Electrnica Digital I
58
7.2. Dispositivos programables PLA,PAL
Una memoria ROM materializa FCs directamente como suma de minterms ya que el grupo de puertas AND est prefijado. Cuando una FC slo utiliza unos pocos minterms o admite una fuerte simplificacin utilizar una ROM puede ser un despilfarro. Para este tipo de situaciones se utilizan dispositivos PLA con conexiones programables tanto en el grupo de puertas AND como en el grupo de puertas OR. Las PALs son un caso particular de las PLA con conexiones OR preprogramadas.
Circuitos combinacionales
Electrnica Digital I
59
8. Comparadores
Son sistemas combinacionales que reciben dos datos de entrada A y B y los comparan en binario puro, devolviendo 3 salidas que indican si A>B, A=B A<B Comparador de 1 bit Circuito lgico Tabla de verdad
Cronograma
Smbolo
Circuitos combinacionales
Electrnica Digital I
60
Comparadores
Comparador de 2 bits Ecuaciones M10 = M1 + I1 M0 Circuito lgico
m10 = m1 + I1 m 0 I10 = I1 I0
Cronograma
Circuitos combinacionales
Electrnica Digital I
61
Comparadores conectables en cascada
Estos comparadores disponen de tres entradas que permiten introducir en un comparador las salidas de otro que compara bits de menor peso. El resultado final de la comparacin lo dan las salidas del comparador de los bits de mayor peso. Tabla de verdad de un comparador conectable en cascada para nmeros de 4 bits
Circuitos combinacionales
Electrnica Digital I
62
Comparadores conectables en cascada Comercial: 74HC85
Disponen de tres entradas que permiten introducir en un comparador las salidas de otro que compara bits de menor peso. El resultado final de la comparacin lo dan las salidas del comparador de los bits de mayor peso. Smbolo Comparador de 4 bits
Conexin de dos comparadores en serie
Circuitos combinacionales
Electrnica Digital I
63
Comparadores conectables en cascada
PARALELO LSB
MSB SERIE
Circuitos combinacionales Electrnica Digital I
64
9. Sumadores: semisumador elemental
El semisumador (half adder) es un circuito que suma dos bits de entrada ai y bi y devuelve un bit de resultado zi y un bit de acarreo ci.
a
cout = ab
+
Sum
Tabla de verdad
Sum = a b
CarryOut
Circuito con puertas lgicas
Cronograma
Circuitos combinacionales
Electrnica Digital I
65
Sumadores: sumador elemental completo
El sumador completo (full adder) es un circuito que suma dos bits de entrada ai y bi ms un acarreo de entrada ci-1 y devuelve un bit de resultado zi y un bit de acarreo ci. Tabla de verdad
a c cOUTs b
ce IN a
+
s
cce IN
+
b c
cOUT = ab + acIN+bcIN s = a b cIN
s cOUT
Cronograma
Circuitos combinacionales
Electrnica Digital I
66
Sumadores:
Sumador paralelo con acarreo en serie
Comercial: 74283 (4 bits, acarreo anticipado)
En los ejemplos anteriores el acarreo se va propagando consecutivamente de un sumador a otro. Sumador paralelo con acarreo anticipado (carry look ahead) Se usa una estrategia combinacional (generate, propagate) para adelantar la salida del acarreo en una etapa y reducir su tiempo de propagacin, a partir del conocimiento de todas las entradas. Requiere varios niveles de lgica, compensa el retardo en sumas de muchos bits. Los integrados 74HC283 y 74LS283 son sumadores de dos ns de 4 bits, e incorporan un diseo de acarreo anticipado. Extensin de sumadores a ns de ms bits. Un sumador de nmeros de 8 bits se obtiene fcilmente conectando el acarreo de salida (C4) del sumador de 4 bits al de entrada (C0) del otro.
Circuitos combinacionales Electrnica Digital I
67
Sumador con propagacin de acarreo en serie
Se construye asociando n sumadores elementales completos (full adder) que reciben y procesan todos ellos los datos en paralelo, si bien el acarreo se propaga en serie de un sumador a otro (Circuito lento) Circuito con sumadores elementales
Circuitos combinacionales
Electrnica Digital I
68
Sumador con propagacin de acarreo en serie
El retardo del sumador elemental es: Z: 1 puerta. COUT: 2 puertas. El retardo del sumador serie con acarreo propagado es muy significativo. Ejemplo: sumar A=1011 y B=0101. El resultado es Z=0000 con COUT=1, y se produce un acarreo en el primer sumador que se va propagando hasta el ltimo. Los retardos son: retardo(Z0) = 1 retardo(C0) = 2 retardo(Z1) = 1 + retardo(C0) = 3 retardo(C1) = 2 + retardo(C0) = 4 retardo(Z2) = 1 + retardo(C1) = 1+4 = 5 retardo(C2) = 2 + retardo(C1) = 2+4 = 6 retardo(Z3) = 1 + retardo(C2) = 1+6 = 7 retardo(C3) = 2 + retardo(C2) = 2+6 = 8
Circuitos combinacionales Electrnica Digital I
69
Sumador de n bits con propagacin de acarreo en serie
A
n n
cs
+
n
ce
Circuito con sumadores elementales
an-1 bn-1
a b
a1 b 1
a b
a0 b0
a ce cs b
cn-1
cs
+
s
ce
...
cs
+
s
+
s
ce
c-1
sn-1
Circuitos combinacionales
s1
Electrnica Digital I
s0
70
10. Restadores binarios
Para restar dos nmeros binarios de n bits podemos hacer una suma del minuendo con el complemento a 2 del sustraendo: Para complementar el sustraendo, invertimos todos sus bits e introducimos un 1 en el acarreo de entrada del sumador menos significativo. Por este procedimiento tambin haba que invertir el acarreo de salida. Esto funciona tanto para binario puro como para complemento a 2 (en complemento a 2 el acarreo se desprecia, y habra que detectar el posible desbordamiento de otro modo).
an-1 bn-1 a1 b1 a 0 b0
a cs
a ce
a ce cs
cn-1
+
s
...
cs
+
s
+
s
ce
'1'
sn-1
Circuitos combinacionales Electrnica Digital I
s1
s0
71
Sumar y restar nmeros binarios
Podemos unir los circuitos anteriores y construir uno que haga sumas y restas en funcin de una seal de control SUMADOR / RESTADOR DE N BITS.
an-1 bn-1 an-2 bn-2 a1 b1 a 0 b0 Op
a cs
a ce cs
a ce
a ce cs
+
s
+
s
...
cs
+
s
+
s
ce
sn-1
sn-1
s1
s0
cn-1
Circuitos combinacionales
Op = 0 OPERACIN DE SUMA Op = 1 OPERACIN DE RESTA
Electrnica Digital I
72
11. Unidad Aritmtico Lgica Combinacional
Una unidad aritmtica y lgica (UAL, ALU) es un circuito combinacional que realiza las operaciones aritmticas y lgicas bsicas en el computador. Operaciones aritmticas bsicas: suma y resta de enteros y desplazamientos unitarios. Operaciones lgicas bsicas: NOT, AND, OR, EXOR, NAND, NOR. Las implementacin de circuitos para operaciones lgicas es muy sencilla: basta simplemente con una batera de puertas lgicas y un multiplexor accionado por las correspondientes seales de seleccin. Ejemplo: circuito para realizar AND y OR, AND y XOR para dos datos de un bit.
a
0 1 2 3 Operacin Resultado
Circuitos combinacionales
Electrnica Digital I
73
Unidad Aritmtico Lgica Combinacional
Otro ejemplo: IDT7381
Circuitos combinacionales Electrnica Digital I
74