44 lines
902 B
VHDL
44 lines
902 B
VHDL
ARCHITECTURE studentVersion OF pipelineCounter IS
|
|
|
|
signal b : signed(countOut'range);
|
|
signal sum : signed(countOut'range);
|
|
|
|
COMPONENT pipelineAdder
|
|
GENERIC (
|
|
bitNb : positive := 32;
|
|
stageNb : positive := 4
|
|
);
|
|
PORT (
|
|
reset : IN std_ulogic;
|
|
clock : IN std_ulogic;
|
|
cIn : IN std_ulogic;
|
|
a : IN signed (bitNb-1 DOWNTO 0);
|
|
b : IN signed (bitNb-1 DOWNTO 0);
|
|
sum : OUT signed (bitNb-1 DOWNTO 0);
|
|
cOut : OUT std_ulogic
|
|
);
|
|
END COMPONENT;
|
|
|
|
BEGIN
|
|
|
|
b <= to_signed(1, b'length);
|
|
|
|
adder: pipelineAdder
|
|
GENERIC MAP (
|
|
bitNb => countOut'length,
|
|
stageNb => stageNb
|
|
)
|
|
PORT MAP (
|
|
reset => reset,
|
|
clock => clock,
|
|
cIn => '0',
|
|
a => sum,
|
|
b => b,
|
|
sum => sum,
|
|
cOut => open
|
|
);
|
|
|
|
countOut <= unsigned(sum);
|
|
|
|
END ARCHITECTURE studentVersion;
|