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

Subversion Repositories the_wizardry_project

[/] [the_wizardry_project/] [trunk/] [Wizardry/] [VHDL/] [Wizardry Top Level/] [Address Generation/] [JOP/] [xv4ram_block.vhd] - Blame information for rev 22

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 22 mcwaccent
--
2
-- xv4ram_block.vhd
3
--
4
-- Generated by BlockGen
5
-- Jan 30, 2009 11:29:28 AM
6
--
7
-- This module will synthesize on Spartan3 and Virtex2/2Pro/2ProX devices.
8
--
9
 
10
library IEEE;
11
use IEEE.std_logic_1164.all;
12
use IEEE.std_logic_arith.all;
13
use IEEE.std_logic_unsigned.all;
14
library unisim;
15
use unisim.vcomponents.all;
16
 
17
entity xram_block is
18
        port (
19
                a_rst  : in std_logic;
20
                a_clk  : in std_logic;
21
                a_en   : in std_logic;
22
                a_wr   : in std_logic;
23
                a_addr : in std_logic_vector(7 downto 0);
24
                a_din  : in std_logic_vector(31 downto 0);
25
                a_dout : out std_logic_vector(31 downto 0);
26
                b_rst  : in std_logic;
27
                b_clk  : in std_logic;
28
                b_en   : in std_logic;
29
                b_wr   : in std_logic;
30
                b_addr : in std_logic_vector(7 downto 0);
31
                b_din  : in std_logic_vector(31 downto 0);
32
                b_dout : out std_logic_vector(31 downto 0)
33
        );
34
end xram_block;
35
 
36
architecture rtl of xram_block is
37
 
38
        component RAMB16_S36_S36
39
                port (
40
                        DIA    : in std_logic_vector (31 downto 0);
41
                        DIB    : in std_logic_vector (31 downto 0);
42
                        ENA    : in std_logic;
43
                        ENB    : in std_logic;
44
                        WEA    : in std_logic;
45
                        WEB    : in std_logic;
46
                        SSRA   : in std_logic;
47
                        SSRB   : in std_logic;
48
                        DIPA   : in std_logic_vector (3 downto 0);
49
                        DIPB   : in std_logic_vector (3 downto 0);
50
                        DOPA   : out std_logic_vector (3 downto 0);
51
                        DOPB   : out std_logic_vector (3 downto 0);
52
                        CLKA   : in std_logic;
53
                        CLKB   : in std_logic;
54
                        ADDRA  : in std_logic_vector (8 downto 0);
55
                        ADDRB  : in std_logic_vector (8 downto 0);
56
                        DOA    : out std_logic_vector (31 downto 0);
57
                        DOB    : out std_logic_vector (31 downto 0)
58
                );
59
        end component;
60
 
61
        attribute INIT: string;
62
        attribute INIT_00: string;
63
        attribute INIT_01: string;
64
        attribute INIT_02: string;
65
        attribute INIT_03: string;
66
        attribute INIT_04: string;
67
        attribute INIT_05: string;
68
        attribute INIT_06: string;
69
        attribute INIT_07: string;
70
        attribute INIT_08: string;
71
        attribute INIT_09: string;
72
        attribute INIT_0a: string;
73
        attribute INIT_0b: string;
74
        attribute INIT_0c: string;
75
        attribute INIT_0d: string;
76
        attribute INIT_0e: string;
77
        attribute INIT_0f: string;
78
        attribute INIT_10: string;
79
        attribute INIT_11: string;
80
        attribute INIT_12: string;
81
        attribute INIT_13: string;
82
        attribute INIT_14: string;
83
        attribute INIT_15: string;
84
        attribute INIT_16: string;
85
        attribute INIT_17: string;
86
        attribute INIT_18: string;
87
        attribute INIT_19: string;
88
        attribute INIT_1a: string;
89
        attribute INIT_1b: string;
90
        attribute INIT_1c: string;
91
        attribute INIT_1d: string;
92
        attribute INIT_1e: string;
93
        attribute INIT_1f: string;
94
        attribute INIT_20: string;
95
        attribute INIT_21: string;
96
        attribute INIT_22: string;
97
        attribute INIT_23: string;
98
        attribute INIT_24: string;
99
        attribute INIT_25: string;
100
        attribute INIT_26: string;
101
        attribute INIT_27: string;
102
        attribute INIT_28: string;
103
        attribute INIT_29: string;
104
        attribute INIT_2a: string;
105
        attribute INIT_2b: string;
106
        attribute INIT_2c: string;
107
        attribute INIT_2d: string;
108
        attribute INIT_2e: string;
109
        attribute INIT_2f: string;
110
        attribute INIT_30: string;
111
        attribute INIT_31: string;
112
        attribute INIT_32: string;
113
        attribute INIT_33: string;
114
        attribute INIT_34: string;
115
        attribute INIT_35: string;
116
        attribute INIT_36: string;
117
        attribute INIT_37: string;
118
        attribute INIT_38: string;
119
        attribute INIT_39: string;
120
        attribute INIT_3a: string;
121
        attribute INIT_3b: string;
122
        attribute INIT_3c: string;
123
        attribute INIT_3d: string;
124
        attribute INIT_3e: string;
125
        attribute INIT_3f: string;
126
 
127
        attribute INIT_00 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
128
        attribute INIT_01 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
129
        attribute INIT_02 of cmp_ram_0: label is "1234567800000000000000000000000000000000000000000000000000000000";
130
        attribute INIT_03 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
131
        attribute INIT_04 of cmp_ram_0: label is "ffffff9100000002ffffff900000000400000000ffffff87ffffff8600000040";
132
        attribute INIT_05 of cmp_ram_0: label is "ffffff80000000ff0000ffff0000000500000003ffffffff0000000100000008";
133
        attribute INIT_06 of cmp_ram_0: label is "12345678123456781234567800000006800000000000001ffffffffeffffff85";
134
        attribute INIT_07 of cmp_ram_0: label is "0000000001326a3a123456781234567812345678123456781234567812345678";
135
        attribute INIT_08 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
136
        attribute INIT_09 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
137
        attribute INIT_0a of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
138
        attribute INIT_0b of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
139
        attribute INIT_0c of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
140
        attribute INIT_0d of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
141
        attribute INIT_0e of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
142
        attribute INIT_0f of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
143
        attribute INIT_10 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
144
        attribute INIT_11 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
145
        attribute INIT_12 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
146
        attribute INIT_13 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
147
        attribute INIT_14 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
148
        attribute INIT_15 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
149
        attribute INIT_16 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
150
        attribute INIT_17 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
151
        attribute INIT_18 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
152
        attribute INIT_19 of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
153
        attribute INIT_1a of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
154
        attribute INIT_1b of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
155
        attribute INIT_1c of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
156
        attribute INIT_1d of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
157
        attribute INIT_1e of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
158
        attribute INIT_1f of cmp_ram_0: label is "1234567812345678123456781234567812345678123456781234567812345678";
159
        attribute INIT_20 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
160
        attribute INIT_21 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
161
        attribute INIT_22 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
162
        attribute INIT_23 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
163
        attribute INIT_24 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
164
        attribute INIT_25 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
165
        attribute INIT_26 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
166
        attribute INIT_27 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
167
        attribute INIT_28 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
168
        attribute INIT_29 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
169
        attribute INIT_2a of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
170
        attribute INIT_2b of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
171
        attribute INIT_2c of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
172
        attribute INIT_2d of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
173
        attribute INIT_2e of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
174
        attribute INIT_2f of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
175
        attribute INIT_30 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
176
        attribute INIT_31 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
177
        attribute INIT_32 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
178
        attribute INIT_33 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
179
        attribute INIT_34 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
180
        attribute INIT_35 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
181
        attribute INIT_36 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
182
        attribute INIT_37 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
183
        attribute INIT_38 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
184
        attribute INIT_39 of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
185
        attribute INIT_3a of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
186
        attribute INIT_3b of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
187
        attribute INIT_3c of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
188
        attribute INIT_3d of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
189
        attribute INIT_3e of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
190
        attribute INIT_3f of cmp_ram_0: label is "0000000000000000000000000000000000000000000000000000000000000000";
191
 
192
        signal p_a_addr : std_logic_vector (8 downto 0);
193
        signal p_b_addr : std_logic_vector (8 downto 0);
194
 
195
begin
196
 
197
        p_a_addr <= "0" & a_addr;
198
        p_b_addr <= "0" & b_addr;
199
 
200
        cmp_ram_0 : RAMB16_S36_S36
201
                port map (
202
                        WEA => a_wr,
203
                        WEB => b_wr,
204
                        ENA => a_en,
205
                        ENB => b_en,
206
                        SSRA => a_rst,
207
                        SSRB => b_rst,
208
                        DIPA => "0000",
209
                        DIPB => "0000",
210
                        DOPA => open,
211
                        DOPB => open,
212
                        CLKA => a_clk,
213
                        CLKB => b_clk,
214
                        DIA => a_din(31 downto 0),
215
                        ADDRA => p_a_addr,
216
                        DOA => a_dout(31 downto 0),
217
                        DIB => b_din(31 downto 0),
218
                        ADDRB => p_b_addr,
219
                        DOB => b_dout(31 downto 0)
220
                );
221
 
222
end rtl;

powered by: WebSVN 2.1.0

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