Line 23... |
Line 23... |
nlw : integer := 32; -- Next Level Width (V.D width)
|
nlw : integer := 32; -- Next Level Width (V.D width)
|
viw : integer := 18; -- Vector input Width
|
viw : integer := 18; -- Vector input Width
|
col : integer := 4; -- Number of Colums
|
col : integer := 4; -- Number of Colums
|
);
|
);
|
port ( -- Input Control Signal
|
port ( -- Input Control Signal
|
clk, rst, nxtRay, nxtSphere : in std_logic;
|
clk, rst, nxtRay : in std_logic;
|
-- Clk, Rst, the usual control signals.
|
-- Clk, Rst, the usual control signals.
|
-- enabled, the machine is running when this input is set.
|
-- enabled, the machine is running when this input is set.
|
-- enabled, all the counters begin again.
|
-- enabled, all the counters begin again.
|
|
nxtSphere : in std_logic_vector (col-1 downto 0);
|
|
|
|
|
-- Input Values
|
-- Input Values
|
iRayx: in std_logic_vector (viw - 1 downto 0);
|
iRayx: in std_logic_vector (viw - 1 downto 0);
|
iRayy: in std_logic_vector (viw - 1 downto 0);
|
iRayy: in std_logic_vector (viw - 1 downto 0);
|
Line 65... |
Line 65... |
|
|
dotCellx : dotCell port map (
|
dotCellx : dotCell port map (
|
|
|
clk => clk,
|
clk => clk,
|
rst => rst,
|
rst => rst,
|
nxtSphere => nxtSphere,
|
nxtSphere => nxtSphere(i),
|
nxtRay => nxtRay,
|
nxtRay => nxtRay,
|
vxInput => iSphrCenterx((i+1)*viw-1 downto i*viw),
|
vxInput => iSphrCenterx((i+1)*viw-1 downto i*viw),
|
vyInput => iSphrCentery((i+1)*viw-1 downto i*viw),
|
vyInput => iSphrCentery((i+1)*viw-1 downto i*viw),
|
vzInput => iSphrCenterz((i+1)*viw-1 downto i*viw),
|
vzInput => iSphrCenterz((i+1)*viw-1 downto i*viw),
|
vxOutput => oSphrCenterx((i+1)*viw-1 downto i*viw),
|
vxOutput => oSphrCenterx((i+1)*viw-1 downto i*viw),
|