OpenCores
URL https://opencores.org/ocsvn/mod_sim_exp/mod_sim_exp/trunk

Subversion Repositories mod_sim_exp

[/] [mod_sim_exp/] [trunk/] [rtl/] [vhdl/] [core/] [mont_ctrl.vhd] - Diff between revs 24 and 39

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 24 Rev 39
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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.