Está en la página 1de 11
ESCUELA DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA PROGRAMA ACADÉMICO DE TECNOLOGÍA EN ELECTRÓNICA CURSO 710200M –

ESCUELA DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA PROGRAMA ACADÉMICO DE TECNOLOGÍA EN ELECTRÓNICA CURSO 710200M TÉCNICAS DIGITALES PERIODO AGOSTO DICIEMBRE DE 2013

PRÁCTICA 3 DISEÑO DE CIRCUITOS ARITMÉTICOS: SUMADOR/RESTADOR DE 8 BITS Y MULTIPLICADOR BASADO EN SUMA-DESPLAZAMIENTO

I. Objetivos

Experimentar el diseño digital a través de diferentes enfoques de diseño.

Emplear el bloque funcional FULL ADDER para diseñar e implementar un sumador/restador de dos números de 8 bits.

Comprender la utilidad de las señales de acarreo de entrada y de salida.

Implementar circuitos aritméticos usando circuitos integrados de bloques funcionales.

Comprender la utilidad de la representación Complemento a 2 (2C) en la suma y resta de números binarios.

Emplear la compuerta AND como multiplicador de 2 bits, y combinar esta operación con las sumas apropiadas para implementar un multiplicador de números de 4 bits en representación signo-magnitud (SM).

Comparar el diseño y comportamiento entre un multiplicador basado en suma-desplazamiento y un multiplicador sintetizado a partir de la tabla de verdad.

II. Procedimiento

A continuación se describen las actividades a realizar en esta práctica de laboratorio.

1. Diseño de un sumador/restador de 8 bits usando compuertas

Para este diseño se usará un bloque FULL ADDER de 8 bits y 8 compuertas XOR. Una señal de control S_R permitirá escoger la operación a realizar, de acuerdo a la Tabla 1.1.

Señal S_R

Operación

 

0 Suma

 

1 Resta

Tabla 1.1 Operación a realizar de acuerdo a la señal S_R.

El proceso de diseño inicia con el diseño de un FULL ADDER de 1 bit. Este diseño se replica ocho veces y se interconecta apropiadamente para obtener un FULL ADDER de 8 bits. En esta práctica se usará el concepto de acarreo de propagado.

1.1 Diseño de un FULL ADDER de 1 bit

Este bloque tiene tres bits de entrada (A, B y C in ) y dos bits de salida (S y C out ). La salida S es igual a la suma

binaria A + B + C in , y la salida C out es igual al acarreo generado por la suma binaria. La tabla de verdad del

C

A

B

S

C

 

in

     

out

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

Tabla 1.2 Tabla de verdad del FULL ADDER de 1 bit.

Con base en la Tabla 1.2, se deduce las funciones lógicas para la suma S y el carry de salida C out .

lógicas para la suma S y el carry de salida C o u t . Se

Se implementa el circuito en Quartus II, tal y como se muestra en la Figura 1.1.

en Quartus II, tal y como se muestra en la Figura 1.1. Figura 1.1 Diagrama esquemático

Figura 1.1 Diagrama esquemático de un circuito FULL ADDER.

De esta manera se concluye el diseño de un circuito FULL ADDER. Es importante tener en cuenta que este diseño NO ES ÚNICO; existen diferentes maneras de implementar un FULL ADDER. Por ejemplo, se podría diseñar un FULL ADDER usando únicamente compuertas NAND o usando únicamente compuertas NOR, entre muchas otras opciones.

1.2 Creación de archivos de símbolo en Quartus II

Cuando se desea implementar un circuito complejo a partir de bloques más sencillos, previamente diseñados, es muy conveniente empaquetar el bloque sencillo en un archivo de símbolo, de tal forma que este se pueda

replicar cuantas veces sea necesario dentro del circuito complejo. Debido a que se desea un FULL ADDER de 8 bits a partir de varios FULL ADDERs de 1 bit, entonces se debe empaquetar el circuito FULL ADDER de la Figura 3.1 en un archivo de símbolo, el cual tendrá formato .bsf (block symbol file). Para tal efecto, se siguen los siguientes pasos:

1. Asegurarse de estar trabajando dentro de un proyecto, NO dentro de un archivo aislado.

2. Abrir el archivo de diagrama esquemático (archivo con formato .bdf) que contiene el diseño que se desea empaquetar.

3. Menú file

4. Debe aparecer un mensaje que confirme la creación satisfactoria del archivo de símbolo. Si ocurren errores,

estos se deben solucionar dentro del archivo de diagrama esquemático y luego repetir todos los pasos anteriores.

opción Create / Update

opción Create symbol file for current files.

1.3 Interconexión de 8 bloques FULL ADDER de 1 bit para implementar un FULL ADDER de 8 btis

Si el archivo de símbolo fue creado correctamente, entonces este se puede encontrar en el directorio Project del cuadro de diálogo Symbol, tal y como se muestra en la Figura 1.2.

diálogo Symbol , tal y como se muestra en la Figura 1.2. Figura 1.2 Cuadro de

Figura 1.2 Cuadro de diálogo Symbol mostrando el símbolo FA1bit

Se debe crear un nuevo archivo en el cual se replica 8 veces el FULL ADDER de 1 bit y se implementa el circuito mostrado en la Figura 1.3.

Figura 1.3 Diagrama esquemático de un FULL ADDER de 8 bits implementado a partir de

Figura 1.3 Diagrama esquemático de un FULL ADDER de 8 bits implementado a partir de 8 FULL ADDERs de 1 bit con la configuración de acarreo propagado.

Observe que el concepto de acarreo propagado implica que el pin C out de un bloque FA1bit va conectado al

pin C in del siguiente bloque FA1bit, tal y como se muestra en la Figura 1.3.

1.4 Añadir el hardware necesario para obtener un sumador/restador de 8 bits

El circuito de la Figura 1.3 sólo puede realizar la suma entre dos operandos de 8 bits cada uno. Para que este circuito tenga la funcionalidad de sumador/restador es necesario agregar más hardware.

Recuerde que si los operandos A y B se representan en código complemento a dos (código 2C), entonces la resta A B equivale a la suma de A y el complemento a dos de B, teniendo en cuenta que el resultado debe interpretarse como un número en código 2C. De esta manera, el hardware adicional requerido debe cumplir la función la función de complementar a dos el operando B.

Para complementar a dos un número se requiere dos pasos. Primero se niega cada bit del número y luego se suma 1 al resultado. La negación de cada bit se realiza mediante una compuerta XOR, y la tarea de sumar 1 al resultado se realiza introduciendo un 1 en el carry de entrada del circuito sumador/restador, tal y como se muestra en la Figura 1.4.

Figura 1.4 Diagrama esquemático de un circuito sumador/restador de 8 bits. De esta manera se

Figura 1.4 Diagrama esquemático de un circuito sumador/restador de 8 bits.

De esta manera se concluye el diseño del circuito sumador/restador de 8 bits empleando compuertas. El siguiente paso es comprobar el correcto funcionamiento mediante simulación. La Figura 1.5 muestra los resultados de simulación del circuito presentado en la Figura 1.4.

de simulación del circuito presentado en la Figura 1.4. Figura 1.5 Resultados de simulación del circuito

Figura 1.5 Resultados de simulación del circuito sumador/restador de la Figura 3.4.

2. Diseño de un sumador/restador de 8 bits usando el bloque funcional 7483

En la sección 3 se diseñó el circuito sumador/restador de 8 bits empleando compuertas discretas que fueron empaquetadas por conveniencia para facilitar la tarea de diseño. En esta sección, el bloque FULL ADDER de 8 bits será diseñado usando dos circuitos integrados 7483 (Figura 2.1), los cuales corresponden al bloque funcional FULL ADDER de 4 bits con acarreo anticipado.

a)

b)

a) b) Figura 2.1 Bloque funcional 7483 FULL ADDER de 4 bits con acarreo anticipado. a)
a) b) Figura 2.1 Bloque funcional 7483 FULL ADDER de 4 bits con acarreo anticipado. a)

Figura 2.1 Bloque funcional 7483 FULL ADDER de 4 bits con acarreo anticipado. a) Diagrama de conexión del circuito integrado. b) Símbolo lógico.

El concepto de acarreo anticipado no será tratado en el curso. Sin embargo, es importante tener en cuenta que este esquema de acarreo disminuye el tiempo que tarda el sumador para entregar un resultado válido, es decir, aumenta la velocidad del sumador. Para mayor información consulte en la literatura el concepto de carry lookahead.

Debido a que cada circuito integrado 7483 es capaz de sumar dos números de 4 bits, entonces el sumador de dos números de 8 bits se obtiene conectando dos bloques 7483 en configuración de acarreo propagado, tal y como se muestra en la Figura 2.2. Observe que el hardware encargado de complementar a dos el dato B permanece intacto.

Figura 2.2 Diagrama esquemático del circuito sumador/restador de 8 bits que emplea dos circuitos integrados

Figura 2.2 Diagrama esquemático del circuito sumador/restador de 8 bits que emplea dos circuitos integrados

7483.

3. Diseño de un multiplicador basado en suma-desplazamiento para datos de 4 bits en código signo-magnitud

En esta sección se diseña un circuito multiplicador combinacional siguiendo el usual algoritmo de suma y desplazamiento, el cual se utiliza a menudo para multiplicar manualmente dos números de varios dígitos. En este caso, se multiplicarán dos números de 4 bits en código signo-magnitud, esto implica que el MSB de cada número corresponde al signo y los tres bits restantes corresponden a la magnitud.

La multiplicación de dos números en código signo-magnitud requiere que se multipliquen los signos de acuerdo a la ley de signos, y que se multipliquen las magnitudes. Para multiplicar los signos se utiliza una compuerta XOR, y para multiplicar las magnitudes se utiliza el algoritmo de suma-desplazamiento, tal y como se muestra a continuación.

C

A

B

S

C

 

in

     

out

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

De acuerdo al procedimiento anterior, se puede deducir la expresión aritmética para cada bit del producto final de la siguiente manera:

P0 = A0.B0 P1 = A1.B0 + A0.B1 + carry(P0) P2 = A2.B0 + A1.B1 + A0.B2 + carry(P1) P3 = A2.B1 + A1.B2 + carry(P2) P4 = A2.B2 + carry(P3) P5 = carry(P4)

Advertencia: Las anteriores expresiones para P0, P1, P2, P3, P4 y P5 son expresiones aritméticas. No confundirlas con expresiones lógicas Boolenas.

A partir de las anteriores expresiones aritméticas se diseña el circuito multiplicador (Figura 3.3) usando dos

bloques 7483, los cuales realizan las sumas necesarias. La respectiva simulación de este circuito se muestra en

La respectiva simulación de este circuito se muestra en la Figura 3.4. Figura 3.3 Diagrama esquemático

la Figura 3.4.

simulación de este circuito se muestra en la Figura 3.4. Figura 3.3 Diagrama esquemático del circuito

Figura 3.3 Diagrama esquemático del circuito multiplicador basado en suma-desplazamiento para datos de 4 bits en código signo-magnitud.

Figura 3.4 Resultados de simulación del circuito de la Figura 3.3.

IV. Evaluación de la práctica

Esta práctica de laboratorio tiene dos calificaciones, en donde cada una equivale al 50% de la nota total de la práctica. La primera calificación corresponde al trabajo realizado en clase, y la segunda calificación corresponde al informe escrito.

1. Trabajo en clase

Simule todos los circuitos presentados en esta guía de laboratorio. Diseñe e implemente en el protoboard un circuito sumador de tres números de 3 bits cada uno. Utilice únicamente dos circuitos integrados 7483 y todos los cables, resistores, LEDs y switches necesarios. Asuma que los 3 números son números binarios sin signo.

2. Informe escrito

Importante: para que el documento quede bien presentado deben usar la plantilla de la IEEE, la cual corresponde al archivo IEEE Reference Template.doc.

El informe escrito es un documento bien presentado que incluye:

1. Abstract. Es un breve resumen (máximo 8 líneas) escrito en Inglés.

2. Introducción. En uno o dos párrafos debe describir qué es lo que se está presentando en el informe, cómo se obtuvieron los resultados y para qué se llevó a cabo la presente práctica de laboratorio.

3. Diseño de circuitos aritméticos. Analice y describa el funcionamiento de cada circuito estudiado en esta práctica. A partir del circuito sumador de tres números de 3 bits que usted diseñó en clase, se desea diseñar un circuito que sume tres números de 4 bits. ¿Cuáles son los cambios y la menor cantidad de hardware que se debe agregar al circuito para lograr dicho propósito? Presente el diseño y la simulación del sumador de tres números de 4 bits. Asuma que los 3 números son números binarios sin signo. Diseñe un multiplicador para datos de 4 bits en representación signo-magnitud a partir de la tabla de verdad.

4. Resultados de simulación. Se deben mostrar figuras con las capturas de pantalla que comprueben que la simulación de cada circuito fue correctamente realizada. Cada figura debe ser brevemente descrita en un párrafo.

5. Discusión Describa cómo usted diseñaría un sumador para datos de 8 bits a partir de la respectiva tabla de verdad. Compare procedimiento de la tabla de verdad con el procedimiento empleado en esta guía de laboratorio, el cual se basa en el uso de bloques funcionales sencillos que se interconectan adecuadamente para diseñar circuitos más complejos. Discuta las ventajas y desventajas de cada procedimiento y de cada circuito. Compare el multiplicador sintetizado a partir de la tabla de verdad con el multiplicador basado en suma-desplazamiento. Discuta las ventajas y desventajas de cada procedimiento de diseño y de cada circuito.

6. Investigación. Responder a las siguientes preguntas. ¿Por qué se utiliza la compuerta XOR para negar los bits del dato B en los circuitos sumador/restador? ¿Qué sucede en los circuitos sumador/restador si los datos de entrada y salida no se interpretan como números en código 2C? Exponga sus argumentos a través de ejemplos.

IV. Evaluación de la práctica

Esta práctica de laboratorio tiene dos calificaciones, en donde cada una equivale al 50% de la nota total de la práctica. La primera calificación corresponde al trabajo realizado en clase, y la segunda calificación corresponde al informe escrito.

1. Trabajo en clase

Simule todos los circuitos presentados en esta guía de laboratorio. Diseñe un circuito sumador de tres números de 3 bits cada uno. Utilice únicamente dos circuitos integrados 7483. Asuma que los 3 números son números binarios sin signo.

2. Informe escrito

Importante: para que el documento quede bien presentado deben usar la plantilla de la IEEE, la cual corresponde al archivo IEEE Reference Template.doc.

El informe escrito es un documento bien presentado que incluye:

1. Abstract. Es un breve resumen (máximo 8 líneas) escrito en Inglés.

2. Introducción. En uno o dos párrafos debe describir qué es lo que se está presentando en el informe, cómo se obtuvieron los resultados y para qué se llevó a cabo la presente práctica de laboratorio.

3. Diseño de circuitos aritméticos. Analice y describa el funcionamiento de cada circuito estudiado en esta práctica. A partir del circuito sumador de tres números de 3 bits que usted diseñó en clase, se desea diseñar un circuito que sume tres números de 4 bits. ¿Cuáles son los cambios y la menor cantidad de hardware que se debe agregar al circuito para lograr dicho propósito? Presente el diseño y la simulación del sumador de tres números de 4 bits. Asuma que los 3 números son números binarios sin signo. Diseñe un multiplicador para datos de 4 bits en representación signo-magnitud a partir de la tabla de verdad.

4. Resultados de simulación. Se deben mostrar figuras con las capturas de pantalla que comprueben que la simulación de cada circuito fue correctamente realizada. Cada figura debe ser brevemente descrita en un párrafo.

5. Discusión Describa cómo usted diseñaría un sumador para datos de 8 bits a partir de la respectiva tabla de verdad. Compare procedimiento de la tabla de verdad con el procedimiento empleado en esta guía de laboratorio, el cual se basa en el uso de bloques funcionales sencillos que se interconectan adecuadamente para diseñar circuitos más complejos. Discuta las ventajas y desventajas de cada procedimiento y de cada circuito. Compare el multiplicador sintetizado a partir de la tabla de verdad con el multiplicador basado en suma-desplazamiento. Discuta las ventajas y desventajas de cada procedimiento de diseño y de cada circuito.

7. Conclusiones

V. Bibliografía

Fairchild Semiconductor Corporation. South Portland, U.S.A

Marzo de 2003. (búsqueda de las hojas

de datos de los IC utilizados en la práctica, para especificidad de su funcionamiento e interconexión) http://www.fairchildsemi.com/

HAYES, Jhon P. Introducción al Diseño Lógico Digital. Adisson Wesley Iberoamericana. Wilmington, EUA. 1996.

NELSON, Victor P. Análisis y diseño de Citrcuitos Lógicos Digitales. Prentice Hall.

TOKHEIM, Roger L. Principios Digitales. Serie Shaum. Mc Graw Hill.

TOCCI, Ronald J. Sistemas Digitales. Principios y aplicaciones. Prentice Hall.

WAKERLY, Jhon F. Diseño Digital Principios y Practicas. Prentice Hall Hispanoamericana. Naulcapan de Juárez, México.1992.