Está en la página 1de 8

Universidad Nacional de Ingeniería

Facultad de Ingeniería Mecánica


Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

LABORATORIO 2

Profesor : Augusto José Tam Tapia


Sección :A
Fecha presentación : Lunes 10 de Junio del 2019
Hora : De 20 a 22 horas
Aula : Por definir

Indicaciones:

• Máximo 7 alumnos por grupo.


• Se tiene que traer una laptop por grupo.

1. INTRODUCCIÓN

Como con la mayoría de los circuitos, hay muchas formas de diseñar el circuito de la ALU. Un mé-
todo es hacer algo similar a lo que hicimos con el circuito sumador/restador(ya lo hemos estudiado
previamente con el nombre de sumador-restador binario de “n” bits con capacidad de detectar des-
bordamiento) comenzando con el diseño básico de conectar varios sumadores completos (FA) juntos
en serie. Y al igual que para el circuito sumador/restador, modificaremos las dos entradas de ope-
randos a los FAs de manera apropiada, para que los FA produzcan los resultados correctos.

Para hacer sumas y restas, modificaremos el segundo operando(y) a los FAs haciendo algo similar
a la compuerta XOR que se usó en el circuito sumador/restador, pero con algunas leves modifica-
ciones. Etiquetaremos a este circuito de caja negra como AE(Arithmetic Extender), su función como
su nombre lo dice, es la aritmética extendida.

Para hacer operaciones lógicas, necesitamos hacer algo un poco más extenso. Después de todo,
recuerden que los FAs solo pueden sumar números y en el Capítulo 4 del curso se vio cómo se
podían usar los FAs tanto para sumar como para restar números.

Sin embargo, los FAs no pueden realizar operaciones lógicas, por lo tanto, lo que deberemos ha-
cer es tener otro sub-circuito para realizar las operaciones lógicas y luego pasar el resultado de las
operaciones lógicas a través de los FAs a la salida. Por lo tanto, para las operaciones lógicas, no
queremos que los FAs modifiquen el número que se está pasando a través de su primer operando
(x), y la forma de hacerlo es hacer que los FAs adicionen un “0” al número. Etiquetaremos a este
sub-circuito de caja negra como LE(Logic Extender).

Además, dependiendo de la operación que queramos realizar, el carrier inicial, c0 , debe configurarse
de manera apropiada. En el diseño, esto se realiza mediante el sub-circuito de caja negra CE(Carry
Extender).

1
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

Se necesitan líneas de selección para indicar a la ALU cuál de las varias operaciones debe realizar.
Si queremos que la ALU pueda realizar cuatro operaciones, necesitaremos dos líneas de selección,
s1 y s0 , porque dos bits darán cuatro combinaciones diferentes (00, 01, 10 y 11). Dado que las salidas
de los bloques LE(Logic Extender), AE(Arithmetic Extender) y CE(Carry Extender) dependen de la
operación que queremos realizar, por lo tanto, las líneas de selección también son entradas para
estos tres cuadros.

Figura 1 – El circuito de una ALU de 2 bits.

El circuito general para la ALU de 2 bits se muestra en la Figura 1. Si ustedes comparan este circuito
con el circuito del sumador/restador en las Figuras 2 and 3, verá que son muy similares excepto por
las tres cajas negras agregadas, LE , AE y CE. Y al igual que con el circuito sumador/restador, para
agregar más bits a la ALU, simplemente se tiene que repetir el patrón.

2
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

Figura 2 – Circuito correspondiente al sumador-restado binario de 4 bits, con detección de desbordamiento.

Figura 3 – Circuito en detalle de la Figura 2.

Lo que ahora tenemos que hacer es crear los tres circuitos para LE, AE y CE. Las construcciones de
estos circuitos, por supuesto, dependerán de las operaciones que queramos implementar, y la forma
de hacerlo es la misma que el diseño de cualquier otro circuito combinacional. Con fines ilustrativos,

3
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

se diseñara una ALU que puede realizar cuatro operaciones: suma, resta, AND y OR. Siguiendo la
metodología de diseño de circuitos lógicos combinacionales, primero crearemos la tabla de verdad
para cada uno de estos tres circuitos, el paso siguiente es reducir la función booleana mediante
manipulación algebraica o el método del Mapa de Karnaugh.

Comenzamos con las especificaciones operativas de nuestra ALU como se muestra en la Figu-
ra 4(a). Analizaremos la Tabla de funciones con cuidado, entonces, para la combinación s1 s0 = 00,
se efectuará la suma de A + B. Y de igual manera que para el circuito sumador/restador, queremos
que el primer operando de los FAs sea A y el segundo operando de los FAs sea B, por lo tanto, el
LE emitirá ai (el bit i-ésimo de A) y el AE emitirá bi (el bit i-ésimo de B). Recuerde que del circuito
sumador/restador que para la adición, queremos que el acarreo inicial c0 sea 0, por lo tanto, CE
emitirá un 0.

Figura 4 – ALU de 2 bits:(a)Tabla de funciones; (b)Tabla de verdad de LE; (c)Tabla de verdad de AE; (d)Tabla de verdad
de CE.

Para la combinación s1 s0 = 01, se realizará la resta de A−B. Recuerde del circuito sumador/restador

4
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

que para restar, necesitamos invertir el segundo operando B y luego poner en 1 al carrier inicial c0 .
Por lo tanto, la AE emitirá b0i y la CE emitirá un 1.

Para las dos operaciones lógicas, dichas operaciones se efectuarán en la LE, de modo que la LE
emitirá el resultado de la operación lógica respectiva. Por lo tanto, para la combinación s1 s0 = 10,
donde la ALU realizará la operación AND lógica, la LE emitirá el resultado de ai AN D bi . De manera
similar, para la combinación s1 s0 = 11, la ALU realizará la operación OR lógica, el LE emitirá el
resultado de ai OR bi . Para todas las operaciones lógicas, se quiere que los FAs no agreguen nada,
por lo que la AE, que genera la salida al segundo operando de los FAs, debería generar un 0. De
manera similar, la CE debería generar un 0.

Entonces, a partir del análisis anterior, podemos llegar a las tres tablas de verdad para LE, AE y
CE, como se muestra en la Figura 4(b), (c) y (d) respectivamente. Dadas estas tres tablas de verdad
para LE, AE y CE, ahora ustedes podrían derivar sus correspondientes circuitos. En la Figura 6 se
muestran los diagramas de circuito para la LE, AE y CE, el circuito lógico completo de la ALU de 2
bits, para realizar las cuatro operaciones, se muestra en la Figura 5.

Figura 5 – Circuito lógico completo de una ALU de 2 bits, esta puede realizar las operaciones: suma, resta, AND y OR.

5
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

Figura 6 – Diagramas de circuito: (a)Logic extender(LE); (b)Arithmetic extender(AE); (c)Carry extender(CE).

2. OBJETIVOS

En esta práctica de laboratorio el alumno aprenderá acerca de la Unidad Aritmética-Lógica(ALU


por sus siglas en inglés). Este es el componente principal dentro del microprocesador para realizar
operaciones lógicas y aritméticas simples. Las operaciones lógicas son como las de las compuertas
lógicas básicas, es decir la AND, OR y NOT. Las operaciones aritméticas son simples sumas y
restas. Las operaciones aritméticas más complejas, como la multiplicación y la división, se realizan
en otros componentes dedicados. El alumno diseñara ALUs de 2 y 4 bits, implementará los circuitos
y verificará sus operaciones.

3. PROCEDIMIENTO EXPERIMENTAL

(a) Implementar en protoboard la ALU de 2 bits que se muestra en la Figura 5, pruebe su circuito
implementado con todas las combinaciones posibles para los operandos(a1 b1 y a0 b0 ), apunte
sus resultados y compárelos con los que se muestran en la Figura 7. (3ptos)

(b) Diseñar(lápiz y papel) e implementar(protoboard) una ALU de 4 bits que tenga las funciones
de la Figura 8. (3ptos/3ptos)

(c) Diseñar(lápiz y papel) e implementar(PCB) una ALU de 4 bits que tenga las funciones que se
muestran en la Figura 9. (6ptos/5ptos)

6
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

Figura 7 – Universo de operaciones que se pueden efectuar con la ALU de 2 bits de la Figura 5, los 4 bits en las
entradas(Por ejemplo: 0-0-00), de izquierda a derecha significan, bit de desbordamiento de binarios con signo, bit de
desbordamiento de binarios sin signo, f1 y f2 .

Figura 8

7
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Departamento Académico de Ingeniería Aplicada
Asignatura: Diseño de Sistemas Digitales MT201
Periodo Académico 2019-1

Figura 9

También podría gustarte