1 votos

Sumador de ondas portadoras - VHDL

¿Cómo puedo conectar los sumadores completos entre sí para formar un sumador de ondas de arrastre? Esto es lo que tengo hasta ahora.

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;

-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--use IEEE.NUMERIC_STD.ALL;

-- Uncomment the following library declaration if instantiating
-- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;

entity CarryRippleAdder is
    Port ( Carry_in : in  STD_LOGIC;
           input_A : in  STD_LOGIC;
           input_B : in  STD_LOGIC;
           Carry_out : out  STD_LOGIC);
end CarryRippleAdder;

architecture Behavioral of CarryRippleAdder is

-- FullAdder
COMPONENT FullAdder
PORT(
    A_in : IN std_logic_vector(15 downto 0);
    B_in : IN std_logic_vector(15 downto 0);
    C_in: IN std_logic;
    C_out : out  std_logic;
    S_out : out  std_logic_vector(15 downto 0)
    );
END COMPONENT;

begin
 -- FullAdder0
    FA0: Fuller PORT MAP(
              C_in => Carry_in
              A_in 
       B_in
       C_out 
          S_out
);

end Behavioral;

3voto

Jonas Puntos 1764

Supongo que quieres utilizar un montón de sumadores de un bit para crear (lo que parece) un sumador de 16 bits.

Así que su entidad de nivel superior debería tener entradas y salidas de señal de 16 bits, y debería instanciar el sumador de 1 bit. Aquí hay una imagen de ejemplo que muestra 4 bits de sumador:

pic

En el caso de lo anterior, las entradas a su entidad deben ser

A    : in std_logic_vector(3 downto 0);
B    : in std_logic_vector(3 downto 0);
C_in : in std_logic;

y la salida debe ser

S     : out std_logic_vector(3 downto 0);
C_out : out std_logic;

Instala el sumador de un bit, conéctalo como en el diagrama para tantos bits como necesites, y ya está.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X