Line 27... |
Line 27... |
generic (
|
generic (
|
|
|
width : integer := 32;
|
width : integer := 32;
|
blocksize : integer := 512;
|
blocksize : integer := 512;
|
widthadmemblock : integer :=9;
|
widthadmemblock : integer :=9;
|
|
|
external_writeable_blocks : integer := 12;
|
external_writeable_blocks : integer := 12;
|
external_readable_blocks : integer := 8;
|
external_readable_blocks : integer := 8;
|
external_readable_widthad : integer := 3;
|
external_readable_widthad : integer := 3;
|
external_writeable_widthad : integer := 4
|
external_writeable_widthad : integer := 4
|
);
|
);
|
Line 43... |
Line 42... |
instrfifo_empty,instrfifo_full: out std_logic;
|
instrfifo_empty,instrfifo_full: out std_logic;
|
ext_rd,ext_wr: in std_logic;
|
ext_rd,ext_wr: in std_logic;
|
ext_wr_add : in std_logic_vector(external_writeable_widthad+widthadmemblock-1 downto 0);
|
ext_wr_add : in std_logic_vector(external_writeable_widthad+widthadmemblock-1 downto 0);
|
ext_rd_add : in std_logic_vector(external_readable_widthad-1 downto 0);
|
ext_rd_add : in std_logic_vector(external_readable_widthad-1 downto 0);
|
ext_d: in std_logic_vector(width-1 downto 0);
|
ext_d: in std_logic_vector(width-1 downto 0);
|
resultfifo_full,resultfifo_empty : out std_logic_vector(external_readable_blocks-1 downto 0);
|
--!sresultfifo_full,resultfifo_empty : out std_logic_vector(external_readable_blocks-1 downto 0);
|
int_d : in std_logic_vector(external_readable_blocks*width-1 downto 0);
|
int_d : in std_logic_vector(external_readable_blocks*width-1 downto 0);
|
ext_q,instrfifo_q : out std_logic_vector(width-1 downto 0);
|
ext_q,instrfifo_q : out std_logic_vector(width-1 downto 0);
|
int_q : out std_logic_vector(external_writeable_blocks*width-1 downto 0);
|
int_q : out std_logic_vector(external_writeable_blocks*width-1 downto 0);
|
int_rd_add : in std_logic_vector(2*widthadmemblock-1 downto 0);
|
int_rd_add : in std_logic_vector(2*widthadmemblock-1 downto 0);
|
instrfifo_d : in std_logic_vector(width-1 downto 0);
|
instrfifo_d : in std_logic_vector(width-1 downto 0);
|
Line 164... |
Line 163... |
results_blocks:
|
results_blocks:
|
for i in 7 downto 0 generate
|
for i in 7 downto 0 generate
|
sint_d(i) <= int_d((i+1)*width-1 downto i*width);
|
sint_d(i) <= int_d((i+1)*width-1 downto i*width);
|
resultsfifo : scfifo
|
resultsfifo : scfifo
|
generic map ("ON",511,"ON","Cyclone III","RAM_BLOCK_TYPE_M9K",512,"OFF","SCIFIFO",32,9,"ON","OFF","ON")
|
generic map ("ON",511,"ON","Cyclone III","RAM_BLOCK_TYPE_M9K",512,"OFF","SCIFIFO",32,9,"ON","OFF","ON")
|
port map (s0ext_rd_ack(i),resultfifo_flush,resultfifo_empty(i),clk,s0ext_q(i),resultfifo_wr,sint_d(i),open,resultfifo_full(i));
|
port map (s0ext_rd_ack(i),resultfifo_flush,resultfifo_empty(i),clk,s0ext_q(i),resultfifo_wr,sint_d(i),open,sresultfifo_full(i));
|
end generate results_blocks;
|
end generate results_blocks;
|
|
|
--! Instanciación de la cola de resultados de salida.
|
--! Instanciación de la cola de resultados de salida.
|
operands_blocks:
|
operands_blocks:
|
for i in 11 downto 0 generate
|
for i in 11 downto 0 generate
|