Line 64... |
Line 64... |
y_sel_single : in std_logic_vector(1 downto 0);
|
y_sel_single : in std_logic_vector(1 downto 0);
|
run_auto : in std_logic;
|
run_auto : in std_logic;
|
op_buffer_empty : in std_logic;
|
op_buffer_empty : in std_logic;
|
op_sel_buffer : in std_logic_vector(31 downto 0);
|
op_sel_buffer : in std_logic_vector(31 downto 0);
|
read_buffer : out std_logic;
|
read_buffer : out std_logic;
|
buffer_noread : in std_logic;
|
|
done : out std_logic;
|
done : out std_logic;
|
calc_time : out std_logic;
|
calc_time : out std_logic;
|
-- multiplier side
|
-- multiplier side
|
op_sel : out std_logic_vector(1 downto 0);
|
op_sel : out std_logic_vector(1 downto 0);
|
load_x : out std_logic;
|
load_x : out std_logic;
|
Line 128... |
Line 127... |
elsif start_up_counter(2) /= '1' then
|
elsif start_up_counter(2) /= '1' then
|
start_up_counter <= start_up_counter + '1';
|
start_up_counter <= start_up_counter + '1';
|
else
|
else
|
start_up_counter <= "100";
|
start_up_counter <= "100";
|
end if;
|
end if;
|
else
|
|
start_up_counter <= start_up_counter;
|
|
end if;
|
end if;
|
end process;
|
end process;
|
|
|
-- select operands (autorun/single run)
|
-- select operands (autorun/single run)
|
x_sel <= x_sel_buffer when (run_auto = '1') else x_sel_single;
|
x_sel <= x_sel_buffer when (run_auto = '1') else x_sel_single;
|
Line 160... |
Line 157... |
elsif multiplier_ready = '1' then
|
elsif multiplier_ready = '1' then
|
calc_time_i <= '0';
|
calc_time_i <= '0';
|
else
|
else
|
calc_time_i <= calc_time_i;
|
calc_time_i <= calc_time_i;
|
end if;
|
end if;
|
else
|
|
calc_time_i <= calc_time_i;
|
|
end if;
|
end if;
|
end process CALC_TIME_PROC;
|
end process CALC_TIME_PROC;
|
calc_time <= calc_time_i;
|
calc_time <= calc_time_i;
|
|
|
-- what happens when a multiplication has finished
|
-- what happens when a multiplication has finished
|