Está en la página 1de 6

UNIVERSIDAD TECNOLGICA DE PANAMA

CENTRO REGIONAL DE AZUERO

FACULTAD DE INGENIERIA ELCTRICA

INFORME #7 DE

DISEO DE CIRCUITOS ELECTRNICOS DIGITALES

Unidad lgica

Cdigo
Aritmtica (alu)
vhdl
PROFESORA:

DANIEL BANDA

ELABORADO POR:

Corro, Hctor 6-719-1360

GRUPO 7IT141
OBJETIVO

Utilizar el simulador de ISIS PROTEUS para realizar una unidad lgica


aritmtica de 2 bits.
Comprender el funcionamiento de un circuito multiplicador.

INTRODUCCIN
La unidad aritmtica lgica o unidad aritmtico-lgica, tambin conocida como ALU
(siglas en ingls de arithmetic logic unit), es un circuito digital que calcula operaciones
aritmticas (como suma, resta, multiplicacin, etc.) y operaciones lgicas (si, y, o, no),
entre valores (generalmente uno o dos) de los argumentos.

Muchos tipos de circuitos electrnicos necesitan realizar algn tipo de operacin


aritmtica, as que incluso el circuito dentro de un reloj digital tendr una ALU
minscula que se mantiene sumando 1 al tiempo actual, y se mantiene comprobando si
debe activar el sonido de la alarma, etc.

Por mucho, los circuitos electrnicos ms complejos son los que estn construidos
dentro de los chips de microprocesadores modernos. Por lo tanto, estos procesadores
tienen dentro de ellos un ALU muy complejo y potente. De hecho, un microprocesador
moderno (y los mainframes) puede tener mltiples ncleos, cada ncleo con mltiples
unidades de ejecucin, cada una de ellas con mltiples ALU.
PROCEDIMIENTOS Y RESULTADOS
1. Realizamos el cdigo de la ALU en el simulador Xilinx ISE Design Suite de manera
que cumpla con las operaciones (en orden) que aparecen en la tabla No. 1.

Tabla No. 1

S OPERACIN
0 0 0 SUMA (A + B)
0 0 1 A OR B
0 1 0 MULTIPLICACIN (A * B)
0 1 1 A AND B
1 0 0 RESTA (A B)
1 0 1 A XOR B
1 1 0 CDIGO DE ERROR
1 1 1 CDIGO DE ERROR

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
use IEEE.NUMERIC_STD.ALL;

entity codalu is
Port ( s : in STD_LOGIC_VECTOR (2 downto 0);
A, B : in STD_LOGIC_VECTOR (3 downto 0);
y : out STD_LOGIC_VECTOR (7 downto 0));
end codalu;

architecture Behavioral of codalu is

begin
process (A,B,s)
begin
if (s = "000") then
y <= A + B;
elsif (s = "001") then
y <= A or B;
elsif (s = "010") then
y <= A * B;
elsif (s = "011") then
y <= A and B;
elsif (s = "100") then
y <= A - B;
elsif (s = "101") then
y <= A xor B;
elsif (s = "1100" or s = "111") then
y <= "11110000";
end if;
end process;

end Behavioral;

2. Capturas de pantalla correspondiente a los ejemplos

La grfica mostrada en la simulacin del programa Xilinx muestran las operaciones


realizadas en el orden que se mostraba en la tabla 1:

Los primeros 50 ns se realiza la suma de 4(0100) y 8 (1000) dando como resultado 12


(1100)

Los siguientes 50 ns se realiza la suma de 6 (0110) y 10 (1010) dando como resultado


16 (10000). Nota: debido a que la salida solo mostr 4 bits el resultado en simulacin
dio 0000.

Durante los siguientes 50 ns se realiza la operacin lgica OR entre 11 (1011) y 14


(1110) dando como resultado 15 (1111).

Al pasar 50 ns se realiza la operacin lgica OR entre 1 (0001) y 8 (1000) dando como


resultado 9 (1001).

Transcurridos 50 ns ms se realiza la multiplicacin de 15 (1111) y 15 (1111) dando


como resultado 225 (11100001).

Los siguientes 50 ns se realiza la multiplicacin de 13 (1101) y 15 (0011) dando como


resultado 39 (00100111).

Pasados 50 ns se realiza la operacin lgica AND entre 5 (0101) y 11 (1011) dando


como resultado 1 (0001).
Los siguientes 50 ns se realiza la operacin lgica AND entre 11 (1011) y 15 (1111)
dando como resultado 11 (1011).

Con el pasar de 50 ns se lleva a cabo la resta de 13 (1101) menos 8 (1000) arrojando


como resultado 5 (0101)

Al transcurrir 50 ns ms se realiza la resta de 9 (1001) menos 14 (1110) dando un


resultado de 5 (1011)

Para los primeros 50 ns siguientes se realizan la operacin lgica XOR entre 5(0101) Y
9 (1001) mostrando en la salida 12 (1100).

Para los siguientes 50 ns siguientes se realizan la operacin lgica XOR entre 12 (1100)
Y 6 (0110) mostrando en la salida 10 (1010).

Por ltimo se comprueban las dos salidas de error que corresponden a S=110 y S=111
que dan una salida 11110000 (240).
CONCLUSIN

Dentro de la unidad lgica aritmtica es el circuito encargado de realizar todas las


operaciones dentro de un sistema (microprocesador) y todas se realizan
simultneamente, pero posee un selector (multiplexor) que se encarga de mostrar en la
salida el valor de la operacin seleccionada atendiendo al valor de la seal de control.

También podría gustarte