Sumador Cuatro Bits Vhdl Quartus II



El sumador que se muestra suma dos número binarios de 4 bits cada uno.


Sumador binario de cuarto bits - Electrónica UnicromA = A3A2A1A0 y B = B3B2B1B0 y
la suma será S = Cout3S3S2S1S0

El bit menos significativo en los dos sumandos A y B es Ao y Bo y el bit más significativo es A3 y B3.



Suma binaria de cuarto bits tomando en cuenta los acarreos - Electrónica Unicrom

La suma se inicia en el sumador completo 0 (el inferior) con las suma de Ao y Bo, si esta suma tuviese acarreo (Cout = 1) este pasaría al sumador 1, y así sucesivamente hasta llegar al sumador 3 en la parte superior del gráfico.

Si el sumador superior tiene acarreo ("1"), éste se refleja en la suma al lado izquierdo de la sumatoria final.

El acarreo entrante inferior no se conecta.

Codigo VHDL

LIBRARY ieee ;
USE ieee.std logic 1164.all ;

ENTITY sumadorcuatrobits IS
PORT ( a1,a2,a3,a4,b1,b2,b3,b4 : IN STD LOGIC ;
x1,x2,x3,x4,cs : OUT STD LOGIC ) ;
END sumadorcuatrobits ;

ARCHITECTURE suma OF sumadorcuatrobits IS

signal w :std_logic;
signal x :std_logic;
signal y :std_logic;
signal z :std_logic;
signal t :std_logic;
signal t1:std_logic;
signal t2:std_logic;
signal t3:std_logic;
signal c :std_logic;
signal c1:std_logic;
signal c2:std_logic;
signal c3:std_logic;

BEGIN

process(a1,a2,a3,a4,b1,b2,b3,b4)

t <= (a1 AND NOT b1) OR (NOT a1 AND b1);
w <= t;
c <= (a1 AND b1);
t1 <= (a2 AND NOT b2) OR (NOT a2 AND b2);
x <= (t1 AND NOT c) OR (NOT t1 AND c);
c1 <= (a2 AND b2) OR (a2 AND c)OR (c AND b2);
t2 <= (a3 AND NOT b3) OR (NOT a3 AND b3);
y <= (t2 AND NOT c1) OR (NOT t2 AND c1);
c2 <= (a3 AND b3) OR (a3 AND c1)OR (c1 AND b3);
t3 <= (a4 AND NOT b4) OR (NOT a4 AND b4);
z <= (t3 AND NOT c2) OR (NOT t3 AND c2);
c3 <= (a4 AND b4) OR (a4 AND c2)OR (c2 AND b4);

end process;

x1 <= w;
x2 <= x;
x3 <= y;
x4 <= z;
cs <= c3;

END suma;

x1 <= w;
x2 <= x;
x3 <= y;
x4 <= z;
cs <= c;

END LogicFunction ;