Diagrama de bloques ALU 1 bit:
1) Sumador
Para Cout:
2) Restador
𝑌 = 𝐴 𝑋𝑂𝑅 𝐵 𝑋𝑂𝑅 𝐶𝑖𝑛
Para Cout:
_ _
𝐶𝑜𝑢𝑡 = 𝐴. 𝐶𝑖𝑛 + 𝐵. 𝐶𝑖𝑛 + 𝐴 . 𝐵
3) Negación lógica
_
Y= 𝐴
4) AND
Y= AB
5) OR
Y= A + B
6) XOR
Y= A XOR B
Código VHDL:
RTL:
Simulación:
Resta NOT A AND OR XOR
Suma
Se realiza simulación con cada una de las operaciones posibles suma, resta, Negación lógica,
AND, OR, XOR, se verifica los resultados para Y y Cout y coinciden con la tabla de verdad,
ademas en operaciones de la ALU donde no utiliza Cout se establece como salida un ‘0’ para
que no tome valor ‘U’
Para realizar la ALU de 8 bits es simplemente conectar 8 bloques de ALU_1_bit, conectando los
carry de salida con el carry de entrada del siguiente bit como se muestra en el siguiente
diagrama de bloques:
Código VHDL:
RTL:
Simulación:
Se realiza simulación de cada una de las operaciones de la ALU con diferentes valores de A y B
de 8 Bits, se obtienen los valores esperados en cada operación cumpliendo la tabla de verdad
de cada operación de la ALU.
Sumador
Restador
Negación lógica
AND
OR
XOR