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

Subversion Repositories raytrac

[/] [raytrac/] [branches/] [fp/] [memblock.vhd] - Diff between revs 150 and 151

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

Rev 150 Rev 151
Line 20... Line 20...
--     You should have received a copy of the GNU General Public License
--     You should have received a copy of the GNU General Public License
--     along with raytrac.  If not, see <http://www.gnu.org/licenses/>.
--     along with raytrac.  If not, see <http://www.gnu.org/licenses/>.
 
 
library ieee;
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_1164.all;
 
use work.arithpack.all;
 
 
entity memblock is
entity memblock is
        generic (
        generic (
 
 
                width : integer := 32;
                width : integer := 32;
Line 59... Line 60...
architecture memblock_arch of memblock is
architecture memblock_arch of memblock is
 
 
        type    vectorblock12 is array (11 downto 0) of std_logic_vector(width-1 downto 0);
        type    vectorblock12 is array (11 downto 0) of std_logic_vector(width-1 downto 0);
        type    vectorblock08 is array (07 downto 0) of std_logic_vector(width-1 downto 0);
        type    vectorblock08 is array (07 downto 0) of std_logic_vector(width-1 downto 0);
        type    vectorblock02 is array (01 downto 0) of std_logic_vector(widthadmemblock-1 downto 0);
        type    vectorblock02 is array (01 downto 0) of std_logic_vector(widthadmemblock-1 downto 0);
        constant rstMasterValue : std_logic := '0';
 
 
 
        component scfifo
 
        generic (
 
                add_ram_output_register :string;
 
                almost_full_value               :natural;
 
                allow_wrcycle_when_full :string;
 
                intended_device_family  :string;
 
                lpm_hint                                :string;
 
                lpm_numwords                    :natural;
 
                lpm_showahead                   :string;
 
                lpm_type                                :string;
 
                lpm_width                               :natural;
 
                lpm_widthu                              :natural;
 
                overflow_checking               :string;
 
                underflow_checking              :string;
 
                use_eab                                 :string
 
        );
 
        port(
 
                rdreq           : in std_logic;
 
                aclr            : in std_logic;
 
                empty           : out std_logic;
 
                clock           : in std_logic;
 
                q                       : out std_logic_vector(lpm_width-1 downto 0);
 
                wrreq           : in std_logic;
 
                data            : in std_logic_vector(lpm_width-1 downto 0);
 
                almost_full : out std_logic;
 
                full            : out std_logic
 
        );
 
        end component;
 
 
 
 
 
        component altsyncram
 
        generic (
 
                address_aclr_b                  : string;
 
                address_reg_b                   : string;
 
                clock_enable_input_a    : string;
 
                clock_enable_input_b    : string;
 
                clock_enable_output_b   : string;
 
                intended_device_family  : string;
 
                lpm_type                                : string;
 
                numwords_a                              : natural;
 
                numwords_b                              : natural;
 
                operation_mode                  : string;
 
                outdata_aclr_b                  : string;
 
                outdata_reg_b                   : string;
 
                power_up_uninitialized  : string;
 
                ram_block_type                  : string;
 
                rdcontrol_reg_b                 : string;
 
                read_during_write_mode_mixed_ports      : string;
 
                widthad_a                               : natural;
 
                widthad_b                               : natural;
 
                width_a                                 : natural;
 
                width_b                                 : natural;
 
                width_byteena_a                 : natural
 
        );
 
        port (
 
                wren_a          : in std_logic;
 
                clock0          : in std_logic;
 
                address_a       : in std_logic_vector(widthad_a-1 downto 0);
 
                address_b       : in std_logic_vector(widthad_b-1 downto 0);
 
                rden_b          : in std_logic;
 
                q_b                     : out std_logic_vector(width-1 downto 0);
 
                data_a          : in std_logic_vector(width-1 downto 0)
 
 
 
        );
 
        end component;
 
        signal s0ext_wr_add_one_hot : std_logic_vector(external_writeable_blocks-1+1 downto 0); --! La se &ntilde;al extra es para la escritura de la cola de instrucciones.
        signal s0ext_wr_add_one_hot : std_logic_vector(external_writeable_blocks-1+1 downto 0); --! La se &ntilde;al extra es para la escritura de la cola de instrucciones.
        signal s0ext_wr_add                     : std_logic_vector(external_writeable_widthad+widthadmemblock-1 downto 0);
        signal s0ext_wr_add                     : std_logic_vector(external_writeable_widthad+widthadmemblock-1 downto 0);
        signal s0ext_rd_add                     : std_logic_vector(external_readable_widthad-1 downto 0);
        signal s0ext_rd_add                     : std_logic_vector(external_readable_widthad-1 downto 0);
        signal s0int_rd_add                     : std_logic_vector(widthadmemblock-1 downto 0);
        signal s0int_rd_add                     : std_logic_vector(widthadmemblock-1 downto 0);
        signal s0ext_wr,s0ext_rd        : std_logic;
        signal s0ext_wr,s0ext_rd        : std_logic;

powered by: WebSVN 2.1.0

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