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

Subversion Repositories jart

[/] [jart/] [branches/] [ver0branch/] [sphereRegisterBlock.vhd] - Blame information for rev 74

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 65 jguarin200
 
2
-- The Spheres Register Bank.
3
 
4
library ieee;
5
use ieee.std_logic_1164.all;
6 74 jguarin200
use work.powerGrid.all;
7 65 jguarin200
 
8
entity sphereRegisterBlock is
9
        generic (
10
                OPMODE  : integer := OP4;               -- By default push out 4 spheres at same time.
11 74 jguarin200
                SZMODE  : integer := SZBETA             -- By default the max sphere numbers is 2048, but could be .
12 65 jguarin200
        );
13
        port (
14
                -- The usual control signals.
15
                clk, ena: in std_logic;
16
 
17
                -- Write enable signals, address bus.
18
                wen             : in std_logic_vector   (CIDSZADD(OPMODE(SZINDEX))*4-1 downto 0);
19
                add             : in std_logic_vector   (REGSZADD(OPMODE)-SZMODE  downto 0);
20
 
21
                -- incoming data from 32 bits width bus.
22
                datain  : in std_logic_vector   (BUSW-1 downto 0);
23
 
24
 
25
                -- outcoming data to 54 bit width bus multiplexer selector and intersection test cube.
26
                Vx              : out std_logic_vector  (OPMODE*HBUSW-1 downto 0);
27
                Vy              : out std_logic_vector  (OPMODE*HBUSW-1 downto 0);
28
                Vz              : out std_logic_vector  (OPMODE*HBUSW-1 downto 0);
29
                K               : out std_logic_vector  (OPMODE*BUSW-1 downto 0)
30
        );
31
 
32
end entity;
33
 
34
 
35
 
36
architecture rtl of sphereRegisterBlock is
37
 
38
 
39
 
40
begin
41
 
42
        -- OP1 : output to 1 column
43
        rb1x : if OPMODE=OP1 generate
44
                rop1_inst : rop1
45
                        generic map(
46
                                SZMODE => SZMODE
47
                        )
48
                        port map (
49
                                clk             => clk,
50
                                ena             => ena,
51
                                wen             => wen,
52
                                add             => add,
53
                                datain  => datain,
54
                                Vx              => Vx,
55
                                Vy              => Vy,
56
                                Vz              => Vz,
57
                                K               => K
58
                        );
59
        end generate;
60
 
61
        -- OP2 : output to 2 columns
62
        rb2x : if OPMODE=OP2 generate
63
                rop2_inst : rop2
64
                        generic map(
65
                                SZMODE => SZMODE
66
                        )
67
                        port map (
68
                                clk             => clk,
69
                                ena             => ena,
70
                                wen             => wen,
71
                                add             => add,
72
                                datain  => datain,
73
                                Vx              => Vx,
74
                                Vy              => Vy,
75
                                Vz              => Vz,
76
                                K               => K
77
                        );
78
        end generate;
79
 
80
        -- OP24
81
        rb4x : if OPMODE=OP4 generate
82
                rop4_inst : rop4
83
                        generic map(
84
                                SZMODE => SZMODE
85
                        )
86
                        port map (
87
                                clk             => clk,
88
                                ena             => ena,
89
                                wen             => wen,
90
                                add             => add,
91
                                datain  => datain,
92
                                Vx              => Vx,
93
                                Vy              => Vy,
94
                                Vz              => Vz,
95
                                K               => K
96
                        );
97
        end generate;
98
 
99
 
100
 
101
 end rtl;
102
 
103
 
104
 

powered by: WebSVN 2.1.0

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