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/] [mod_sim_exp_core.vhd] - Diff between revs 43 and 45

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

Rev 43 Rev 45
Line 79... Line 79...
    fifo_push   : in  std_logic;  -- push data in exponent fifo
    fifo_push   : in  std_logic;  -- push data in exponent fifo
    fifo_full   : out std_logic;  -- high if fifo is full
    fifo_full   : out std_logic;  -- high if fifo is full
    fifo_nopush : out std_logic;  -- high if error during push
    fifo_nopush : out std_logic;  -- high if error during push
      -- control signals
      -- control signals
    start          : in  std_logic; -- start multiplication/exponentiation
    start          : in  std_logic; -- start multiplication/exponentiation
    run_auto       : in  std_logic; -- single multiplication if low, exponentiation if high
    exp_m          : in  std_logic; -- single multiplication if low, exponentiation if high
    ready          : out std_logic; -- calculations done
    ready          : out std_logic; -- calculations done
    x_sel_single   : in  std_logic_vector (1 downto 0); -- single multiplication x operand selection
    x_sel_single   : in  std_logic_vector (1 downto 0); -- single multiplication x operand selection
    y_sel_single   : in  std_logic_vector (1 downto 0); -- single multiplication y operand selection
    y_sel_single   : in  std_logic_vector (1 downto 0); -- single multiplication y operand selection
    dest_op_single : in  std_logic_vector (1 downto 0); -- result destination operand selection
    dest_op_single : in  std_logic_vector (1 downto 0); -- result destination operand selection
    p_sel          : in  std_logic_vector (1 downto 0); -- pipeline part selection
    p_sel          : in  std_logic_vector (1 downto 0); -- pipeline part selection
Line 151... Line 151...
    result_dest_op => result_dest_op,
    result_dest_op => result_dest_op,
    collision      => collision,
    collision      => collision,
    clk            => clk
    clk            => clk
  );
  );
 
 
        result_dest_op <= dest_op_single when run_auto = '0' else "11"; -- in autorun mode we always store the result in operand3
        result_dest_op <= dest_op_single when exp_m = '0' else "11"; -- in autorun mode we always store the result in operand3
 
 
  -- A fifo for auto-run operand selection
  -- A fifo for auto-run operand selection
  the_exponent_fifo : fifo_primitive
  the_exponent_fifo : fifo_primitive
  port map(
  port map(
    clk    => clk,
    clk    => clk,
Line 176... Line 176...
    clk              => clk,
    clk              => clk,
    reset            => reset,
    reset            => reset,
    start            => start,
    start            => start,
    x_sel_single     => x_sel_single,
    x_sel_single     => x_sel_single,
    y_sel_single     => y_sel_single,
    y_sel_single     => y_sel_single,
    run_auto         => run_auto,
    run_auto         => exp_m,
    op_buffer_empty  => fifo_empty,
    op_buffer_empty  => fifo_empty,
    op_sel_buffer    => fifo_dout,
    op_sel_buffer    => fifo_dout,
    read_buffer      => fifo_pop,
    read_buffer      => fifo_pop,
    done             => ready,
    done             => ready,
    calc_time        => calc_time,
    calc_time        => calc_time,

powered by: WebSVN 2.1.0

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