Professional Documents
Culture Documents
v=maoLsSSRecA
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity fadd is
port(
A:IN STD_LOGIC;
B:IN STD_LOGIC;
cin:IN STD_LOGIC;
sum:out std_logic;
carry:out std_logic
);
end fadd;
component HAdd is
port(
a,b:IN std_logic;
c,s:OUT std_logic
);
end component;
component OR1 is
port(
p,q:in std_logic;
r:out std_logic
);
end component;
begin
end arch_fa;
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity HAdd is
port(
a,b:IN std_logic;
c,s:OUT std_logic
);
end HAdd;
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity OR1 is
port(
p,q:IN std_logic;
r:OUT std_logic
);
end OR1;
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
testbench
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY fadd_tb IS
END fadd_tb;
COMPONENT fadd
PORT(
A : IN std_logic;
B : IN std_logic;
cin : IN std_logic;
sum : OUT std_logic;
carry : OUT std_logic
);
END COMPONENT;
BEGIN
uut: fadd PORT MAP (
A => A,
B => B,
cin => cin,
sum => sum,
carry => carry
);
stim_proc_A: process
begin
A<='1';
wait for 100 ns;
A<='0';
wait;
end process;
stim_proc_B: process
begin
B<='1';
wait;
end process;
stim_proc_cin: process
begin
cin<='0';
wait for 100 ns;
cin<='1';
wait;
end process;
END;