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

Subversion Repositories raytrac

[/] [raytrac/] [branches/] [fp_sgdma/] [raytrac.vhd] - Diff between revs 246 and 248

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

Rev 246 Rev 248
Line 198... Line 198...
        signal sburstcount_sink         : std_logic_vector(mb downto 0);
        signal sburstcount_sink         : std_logic_vector(mb downto 0);
 
 
        signal sflood_condition         : std_logic;
        signal sflood_condition         : std_logic;
        signal sflood_burstcount        : std_logic_vector(mb downto 0);
        signal sflood_burstcount        : std_logic_vector(mb downto 0);
 
 
        signal sp0,sp1,sp2                      : std_logic_vector(31 downto 0);
        signal sp0,sp1,sp2,sp3,sp4,sp5,sp6,sp7,sp8: std_logic_vector(31 downto 0);
        --! Arithmetic Pipeline and Data Path Control
        --! Arithmetic Pipeline and Data Path Control
        component ap_n_dpc
        component ap_n_dpc
        port (
        port (
 
 
                p0,p1,p2                                        : out std_logic_vector(31 downto 0);
                p0,p1,p2,p3,p4,p5,p6,p7,p8      : out std_logic_vector(31 downto 0);
                clk                                             : in    std_logic;
                clk                                             : in    std_logic;
                rst                                             : in    std_logic;
                rst                                             : in    std_logic;
                ax                                              : in    std_logic_vector(31 downto 0);
                ax                                              : in    std_logic_vector(31 downto 0);
                ay                                              : in    std_logic_vector(31 downto 0);
                ay                                              : in    std_logic_vector(31 downto 0);
                az                                              : in    std_logic_vector(31 downto 0);
                az                                              : in    std_logic_vector(31 downto 0);
Line 243... Line 243...
        arithmetic_pipeline_and_datapath_controller : ap_n_dpc
        arithmetic_pipeline_and_datapath_controller : ap_n_dpc
        port map (
        port map (
                p0                              => sp0,
                p0                              => sp0,
                p1                              => sp1,
                p1                              => sp1,
                p2                              => sp2,
                p2                              => sp2,
 
                p3                              => sp3,
 
                p4                              => sp4,
 
                p5                              => sp5,
 
                p6                              => sp6,
 
                p7                              => sp7,
 
                p8                              => sp8,
 
 
                clk                             => clk,
                clk                             => clk,
                rst                             => rst,
                rst                             => rst,
                ax                                      => sreg_block(reg_ax),
                ax                                      => sreg_block(reg_ax),
                ay                                      => sreg_block(reg_ay),
                ay                                      => sreg_block(reg_ay),
                az                                      => sreg_block(reg_az),
                az                                      => sreg_block(reg_az),
Line 731... Line 738...
                        sslave_address          <= slave_address;
                        sslave_address          <= slave_address;
                        sslave_write            <= slave_write;
                        sslave_write            <= slave_write;
                        sslave_read                     <= slave_read;
                        sslave_read                     <= slave_read;
                        sslave_writedata        <= slave_writedata;
                        sslave_writedata        <= slave_writedata;
 
 
                        sreg_block(reg_vz) <= sp0;
 
                        sreg_block(reg_vy) <= sp1;
 
                        sreg_block(reg_vx) <= sp2;
 
                        for i in reg_scalar downto reg_scalar loop
                        for i in reg_scalar downto reg_scalar loop
                                if sslave_address=i then
                                if sslave_address=i then
                                        if sslave_write='1' then
                                        if sslave_write='1' then
                                                sreg_block(i) <= sslave_writedata;
                                                sreg_block(i) <= sslave_writedata;
                                        end if;
                                        end if;
                                end if;
                                end if;
                        end loop;
                        end loop;
                        for i in 15 downto 0 loop
                        for i in 15 downto 0 loop
                                if sslave_address=i then
                                if sslave_address=i then
                                        if sslave_read='1' then
                                        if sslave_read='1' then
 
 
 
                                                if (i<10 and i>3) or i=0 then
                                                slave_readdata <= sreg_block(i);
                                                slave_readdata <= sreg_block(i);
 
                                                elsif i=1 then
 
                                                        slave_readdata <= sp0;
 
                                                elsif i=2 then
 
                                                        slave_readdata <= sp1;
 
                                                elsif i=3 then
 
                                                        slave_readdata <= sp2;
 
                                                elsif i=10 then
 
                                                        slave_readdata <= sp3;
 
                                                elsif i=11 then
 
                                                        slave_readdata <= sp4;
 
                                                elsif i=12 then
 
                                                        slave_readdata <= sp5;
 
                                                elsif i=13 then
 
                                                        slave_readdata <= sp6;
 
                                                elsif i=14 then
 
                                                        slave_readdata <= sp7;
 
                                                elsif i=15 then
 
                                                        slave_readdata <= sp8;
 
                                                end if;
 
 
                                        end if;
                                        end if;
                                end if;
                                end if;
                        end loop;
                        end loop;
                end if;
                end if;
        end process;
        end process;

powered by: WebSVN 2.1.0

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