0% encontró este documento útil (0 votos)
157 vistas8 páginas

Diseño de ALU en Electrónica Digital

La unidad aritmético lógica (UAL) realiza operaciones lógicas y aritméticas entre dos operandos de n bits. En una computadora digital, la UAL se localiza en la CPU y realiza operaciones con datos de la memoria o dispositivos externos. La UAL requiere entradas para seleccionar operaciones y está compuesta por unidades lógica y aritmética.

Cargado por

Jhon Gonzales
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
157 vistas8 páginas

Diseño de ALU en Electrónica Digital

La unidad aritmético lógica (UAL) realiza operaciones lógicas y aritméticas entre dos operandos de n bits. En una computadora digital, la UAL se localiza en la CPU y realiza operaciones con datos de la memoria o dispositivos externos. La UAL requiere entradas para seleccionar operaciones y está compuesta por unidades lógica y aritmética.

Cargado por

Jhon Gonzales
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

12.

Unidad aritmetico logica (UAL)

Es un circuito digital que realiza operaciones lógicas y aritméticas entre dos operados de
n bits.
12.1. Estructura de una computadora digital

En una computadora digital, la unidad aritmético lógica se localiza en la CPU (Unidad


Central de Proceso) y realiza operaciones con los datos que provienen de la memoria o
de dispositivos externos taly como se representa en la Figura 138.

Dispositivos
de E/S Unidad Aritmético
Lógica. (UAL) Memoria

Unidad
de control

Figura 138

12.2. Diseño de una Unidad Aritmético Lógica: ALU


Como se ha definido anteriormente, una ALU realiza operaciones aritméticas y lógicas
y por lo tanto requerirá de entradas que permitan la selección de una u otra operación.
Asi pues, como entradas, a parte de los operandos, dispondrá de k líneas de selección
que permitirán seleccionar hasta 2k operaciones diferentes. Normalmente, se destina una
de las k líneas a la distinción entre las operaciones lógicas de las aritméticas. El símbolo
esquemático para una ALU es el representado en la Figura 139.

Electrónica Digital. Tema 4. - 211 -


Figura 139
El procedimiento de diseño conlleva los siguientes pasos: asignación de una
combinación de las k líneas a las operacines a realizar, diseño de la unidad lógica (o
aritmética), diseño de la unidad aritmética (o lógica) y finalmente, la fusión de las dos
subunidades para completar la ALU. Apliquemos este procedimiento para diseñar una
ALU que realice las siguientes operaciones sobre dos números (A y B) de n bits:

Operaciones Operaciones
Aritméticas Lógicas
A+B AND
A-B OR
A+1 XOR
A-1 NOT A

La primera decision a tomar es cuánto debe valer k. En este caso 3, ya que son 8 el
número de operaciones a seleccionar. S2 S1 S0 . Ta y como se ha expuesto en el párrafo
anterior se Si se designa uno de estos bits para diferenciar entre operaciones aritméticas
o lógicas.Sea éste el bit de mayor peso S2 . Así S1 S0 se utilizarán para diferenciar las
cuatro operaciones de cada grupo.

Electrónica Digital. Tema 4. - 212 -


Si S2 es 0 se realizarán operaciones aritméticas y si su valor es 1, se realizaran lógicas.
El resto de asignaciones se hará según la siguiente tabla:
S2 S1 S0 Función Operaciones a realizar
0 0 0 A+B FA = an-1, ......a0 + bn-1, ......b0 + 00….0
0 0 1 A-B FA = an-1, ......a0 + b n-1 , ......b 0 + 0…..01

0 1 0 A+1 FA = an-1, ......a0 + 00….01 = an-1, ......a0 + 00 …..0 +0… 1


0 1 1 A-1 FA = an-1, ......a0 + 11….1 + 00…..0
1 0 0 AND FL = ai. bi ; i = 0,...n-1
1 0 1 OR FL = ai.+ bi ; i = 0,...n-1
1 1 0 NOT A FL = a i

1 1 1 XOR FL = ai.⊕ bi ; i = 0,...n-1


Tabla 35
Los siguientes pasos serán diseñar la unidad aritmética y la lógica.
Unidad Aritmética
Si nos fijamos en las operacines aritméticas a realizar, se observa que siempre debe
realizarse la misma operación: una suma, donde uno de los operandos siempre es el
valor de A, el otro operando es variable y el acarreo inicial que varía de una operación a
otra . Es decir,
FA = A + ALGO = A + Y + C0
El desarrollo de esta operación es:
cn −1 ... ci ... c0
an −1 ... ai ... a0
cn yn −1 ... yi ... y0
f An f An −1 ... f Ai ... f A0
Ecuación 8
Donde se ha representado mediante un recuadro rojo los cirsutios básicos a diseñar. Así
pues, se diseña el bloque i-ésimo (fAi = ai + yi + ci ) y la suma total consistirá en conectar
en serie n bloques. Puesto que el valor de Y depende de la combinación de S1 S0 ,
deberá representarse en el diagrama de bloques tal y como se muestra en la Figura 140.
En ella pueden distinguirse dos subcircuitos; el donominado ALGO y el Full Adder. Sin
embargo, unicamante habrá que diseñar el primero de ellos, ya que el diseño del Fulll
Adder se realizó en el apartado de Sumadores.

Electrónica Digital. Tema 4. - 213 -


ai bi

S0
ALGO S1

yi

ci+1
ci
Full Adder

fAi

Figura 140
La tabla de verdad y circuito de ALGO serán:

S1 S0 bi yi yi = S 0 ⊕ S1bi
0 0 0 0
bi
0 0 1 1
0 1 0 1
S1 yi
0 1 1 0
1 0 0 0 S0
1 0 1 0
1 1 0 1
1 1 1 1

Figura 141
Si el número de bits de los operandos es n, entonces se cablearán en serie n circutios tal
y como se ilustra en la Figura 142.

Electrónica Digital. Tema 4. - 214 -


Figura 142

Resulta evidente la inclusión de un bloque extra denomindao Bloque C0. Dicho bloque
es necesario para la generación del acarreo inicial, que evidentemente, depende,
también, de S1 S0 . Así, la tabla de verdad su diseño y la función lógica obtenida a partir
de la misma será el siguiente:

S0 S1 C0 C0 = S 0 ⊕ S1
0 0 0 S0 S1
0 1 1
1 0 1
C0 Generador de
1 1 0 acarreo inicial

Si en lugar de realizar la asignación de la Tabla 35 se Realiza la asignación representada


en la Tabla 36, el circuito correspondiente al acarreo de entrada podría reducirse a la
línea S0. ya que en esta nueva asignación se ha hecho coincidir el valor de ese bit con el
valor del acarreo en cada operación.

Electrónica Digital. Tema 4. - 215 -


S2 S1 S0 Función Operaciones a realizar
0 0 0 A+B FA = an-1, ......a0 + bn-1, ......b0 + 00….0
0 0 1 A-B FA = an-1, ......a0 + b n-1 , ......b 0 + 0…..01

0 1 0 A+1 FA = an-1, ......a0 + 11….1 + 00…..0


0 1 1 A-1 FA = an-1, ......a0 + 00….01 = an-1, ......a0 + 00 …..0 +0…0 1
Tabla 36

Por ello, el circuito completo sería:

Electrónica Digital. Tema 4. - 216 -


Unidad Lógica
Las operaciones lógicas deben realizarse entre cada pareja de bit i-esimo de los
operandos A y B. Por lo tanto, se diseña el circuito para cada pareja de dichos bits y
posteriormete se repite para cada uno de los bits de los operandos A y B. El diagrama de
bloques correspondiente se presenta en la Figura 143.

Figura 143
El diseño del bloque i-ésimo puede implementarse utilizando la función lógica obtenida
a partir Tabla de Verdad Tabla 37) ó utilizando un multiplexor de 4 a 1 (Figura 144),
cuyas entradas de selección sean S1S0

Tabla 37

Figura 144

Electrónica Digital. Tema 4. - 217 -


ALU Completa
Una vez diseñadas las unidades lógica y aritmética, la salida de la ALU deberá ser sólo
una de ellas. Para ello, basta con utilizar un multiplexor que seleccione en base a la
entrada S2. El multiplexor será tal que contenga n multiplexores de 2 a 1 líneas.

Electrónica Digital. Tema 4. - 218 -

También podría gustarte