Vous êtes sur la page 1sur 6

FACULTAD DE CIENCIAS EXACTAS, FSICAS Y NATURALES

Ao 2012 1 Cuatrimestre

Electrnica Digital 1
Trabajos Prcticos de Laboratorio
Informe:

Unidad Aritmtica y Lgica

Comisin N 9 (Nueve)

Sambataro, Pablo.
Batallan Facundo.
Colombo, Agustn.
CONSIGNA

El objetivo de este trabajo fue disear, implementar, simular y comprobar en la


placa FPGA el funcionamiento de una ALU con operandos A y B de 4 bits, y
salida R de 4 bits.

Como se ve en la figura, la funcin a realizar por la ALU se define con 4 bits


individuales de control C, permitiendo las siguientes funciones:

-R=A+B

-R=A-B

- idem anteriores pero con saturacin al mximo positivo o mximo negativo

- R = A&B bit a bit

- R = A|B bit a bit

La ALU debe adems tener un bit de salida que indique cuando hubo carry de
salida, y otro bit de salida que indique cundo hubo overflow.
DESARROLLO

Para la implementacin de los AND y OR, los multiplexores y el sumador


binario, utilizamos los bloques ya incluidos en las libreras.

Por otro lado, el bloque Saturador lo implementamos con el siguiente cdigo en


VHDL:

architecture Behavioral of Sat is

begin

process (ADSU0, ADSU1, ADSU2, ADSU3, OVF, SAT)

begin

if OVF='1' and SAT='1' then

if ADSU3='0' then SAT0<='0'; else SAT0<='1';end if;

if ADSU3='0' then SAT1<='0'; else SAT0<='1';end if;

if ADSU3='0' then SAT2<='0'; else SAT0<='1';end if;

if ADSU3='0' then SAT3<='1'; else SAT0<='0';end if;

else

SAT0<=ADSU0;

SAT1<=ADSU1;

SAT2<=ADSU2;

SAT3<=ADSU3;

end if;

end process;

end Behavioral;

Al tener todos los bloques listos, los conectamos coherentemente quedando un


circuito similar al planteado anteriormente. Del circuito anterior creamos un
bloque de la ALU completa:
Luego asignamos los distintos inputs y outputs del bloque ALU a las diferentes
posibilidades de entrada y salida que tiene la FPGA de que disponemos,
siguiendo el siguiente esquema:

Asignamos el operando A a los SW0 (bit menos significativo) a SW3 (bit mas
significativo) y el B a los SW4 (bit menos significativo) a SW7 (bit mas
significativo), los bits de control C con BTN0 a BTN3(de C1 a C4
respectivamente), y los bits de salida de carry y overflow con LD0 y LD4
respectivamente.

El siguiente paso fue hacer una simulacin del circuito, para comprobar que el
bloque programado por nosotros funcionaba correctamente y estaba conectado
de manera coherente al resto del circuito, pudiendo de esta manera
asegurarnos de que todo andaba como debera.

Pasada la prueba de simulacin, decidimos generar el archivo .bit, que es el


archivo que finalmente vamos a instalar en la FPGA para finalizar el proyecto
comprobando ya de manera practica y definitiva el correcto funcionamiento de
nuestra Unidad Aritmtica y Lgica.
DESCRIPCION DE LA EXPERIENCIA

A manera de conclusin, podemos decir que a pesar de que a simple vista y


con la primera lectura el proyecto pareca sencillo, al final no lo fue tanto.
Tuvimos algunos problemas para adaptarnos al lenguaje VHDL pero pudimos
solucionarlos y seguir adelante. A fin de cuentas las horas de trabajo sirvieron
para aprender sobre este nuevo lenguaje y sobre las posibilidades de
implementacin que ofrece trabajar con placas FPGA, a la vez que afianzamos
y pusimos en prctica los conocimientos sobre aritmtica binaria adquiridos
durante las clases previas.

Vous aimerez peut-être aussi