InicioCiencia EducacionDiseño de una ALU personalizada en VHDL para fpga basys 2

Diseño de una ALU personalizada en VHDL para fpga basys 2

Ciencia Educacion1/12/2015
DEFINICIÓN

En computación, la unidad aritmético lógica, también conocida como ALU (siglas en inglés de arithmetic logic unit), es un circuito digital que calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (si, y, o, no), entre dos o mas números.

Código para el modulo de VHDL

-- ALU DE 4 BITS
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity ALU is
Port ( A,B : in STD_LOGIC_VECTOR (4 downto 0);
C : out STD_LOGIC_VECTOR (4 downto 0);
OPERACION : in STD_LOGIC_VECTOR (2 downto 0));
end ALU;
architecture Behavioral of ALU is
begin
PROCESS(OPERACION)
BEGIN
CASE OPERACION IS
WHEN "000" =>
C <= A + B;
WHEN "001" =>
C <= A - B;
WHEN "010" =>
C <= A + 1;
WHEN "011" =>
C <= B + 1;
WHEN "100" =>
C <= A AND B;
C(4) <= '0';
WHEN "101" =>
C <= A OR B;
C(4) <= '0';
WHEN "110" =>
C <= A XOR B;
C(4) <= '0';
WHEN OTHERS =>
C <= NOT (A OR B);
C(4) <= '0';
END CASE;
END PROCESS;
end Behavioral;

Código para el modulo UCF

NET "A[0]" LOC = P11;
NET "A[1]" LOC = L3;
NET "A[2]" LOC = K3;
NET "A[3]" LOC = B4;
NET "A[4]" LOC = C12; # IGNORAR
NET "B[0]" LOC = G3;
NET "B[1]" LOC = F3;
NET "B[2]" LOC = E2;
NET "B[3]" LOC = N3;
NET "B[4]" LOC = A13; #IGNORAR
NET "C[0]" LOC = M5;
NET "C[1]" LOC = M11;
NET "C[2]" LOC = P7;
NET "C[3]" LOC = P6;
NET "C[4]" LOC = N5;
NET "OPERACION[0]" LOC = G12;
NET "OPERACION[1]" LOC = C11;
NET "OPERACION[2]" LOC = M4;
Datos archivados del Taringa! original
5puntos
51visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
1visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

T
Tanori93🇦🇷
Usuario
Puntos0
Posts63
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.