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

Subversion Repositories amber

[/] [amber/] [trunk/] [hw/] [vlog/] [lib/] [xs6_sram_512x128_byte_en.v] - Blame information for rev 87

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 36 csantifort
//////////////////////////////////////////////////////////////////
2
//                                                              //
3
//  Wrapper for Xilinx Spartan-6 RAM Block                      //
4
//                                                              //
5
//  This file is part of the Amber project                      //
6
//  http://www.opencores.org/project,amber                      //
7
//                                                              //
8
//  Description                                                 //
9
//  512 words x 128 bits with a per byte write enable           //
10
//                                                              //
11
//  Author(s):                                                  //
12
//      - Conor Santifort, csantifort.amber@gmail.com           //
13
//                                                              //
14
//////////////////////////////////////////////////////////////////
15
//                                                              //
16
// Copyright (C) 2010 Authors and OPENCORES.ORG                 //
17
//                                                              //
18
// This source file may be used and distributed without         //
19
// restriction provided that this copyright statement is not    //
20
// removed from the file and that any derivative work contains  //
21
// the original copyright notice and the associated disclaimer. //
22
//                                                              //
23
// This source file is free software; you can redistribute it   //
24
// and/or modify it under the terms of the GNU Lesser General   //
25
// Public License as published by the Free Software Foundation; //
26
// either version 2.1 of the License, or (at your option) any   //
27
// later version.                                               //
28
//                                                              //
29
// This source is distributed in the hope that it will be       //
30
// useful, but WITHOUT ANY WARRANTY; without even the implied   //
31
// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      //
32
// PURPOSE.  See the GNU Lesser General Public License for more //
33
// details.                                                     //
34
//                                                              //
35
// You should have received a copy of the GNU Lesser General    //
36
// Public License along with this source; if not, download it   //
37
// from http://www.opencores.org/lgpl.shtml                     //
38
//                                                              //
39
//////////////////////////////////////////////////////////////////
40
 
41
 
42
module xs6_sram_512x128_byte_en
43
#(
44
parameter SRAM0_INIT_0 = 256'h0,
45
parameter SRAM0_INIT_1 = 256'h0,
46
parameter SRAM0_INIT_2 = 256'h0,
47
parameter SRAM0_INIT_3 = 256'h0,
48
parameter SRAM0_INIT_4 = 256'h0,
49
parameter SRAM0_INIT_5 = 256'h0,
50
parameter SRAM0_INIT_6 = 256'h0,
51
parameter SRAM0_INIT_7 = 256'h0,
52
parameter SRAM0_INIT_8 = 256'h0,
53
parameter SRAM0_INIT_9 = 256'h0,
54
parameter SRAM0_INIT_10 = 256'h0,
55
parameter SRAM0_INIT_11 = 256'h0,
56
parameter SRAM0_INIT_12 = 256'h0,
57
parameter SRAM0_INIT_13 = 256'h0,
58
parameter SRAM0_INIT_14 = 256'h0,
59
parameter SRAM0_INIT_15 = 256'h0,
60
parameter SRAM0_INIT_16 = 256'h0,
61
parameter SRAM0_INIT_17 = 256'h0,
62
parameter SRAM0_INIT_18 = 256'h0,
63
parameter SRAM0_INIT_19 = 256'h0,
64
parameter SRAM0_INIT_20 = 256'h0,
65
parameter SRAM0_INIT_21 = 256'h0,
66
parameter SRAM0_INIT_22 = 256'h0,
67
parameter SRAM0_INIT_23 = 256'h0,
68
parameter SRAM0_INIT_24 = 256'h0,
69
parameter SRAM0_INIT_25 = 256'h0,
70
parameter SRAM0_INIT_26 = 256'h0,
71
parameter SRAM0_INIT_27 = 256'h0,
72
parameter SRAM0_INIT_28 = 256'h0,
73
parameter SRAM0_INIT_29 = 256'h0,
74
parameter SRAM0_INIT_30 = 256'h0,
75
parameter SRAM0_INIT_31 = 256'h0,
76
parameter SRAM0_INIT_32 = 256'h0,
77
parameter SRAM0_INIT_33 = 256'h0,
78
parameter SRAM0_INIT_34 = 256'h0,
79
parameter SRAM0_INIT_35 = 256'h0,
80
parameter SRAM0_INIT_36 = 256'h0,
81
parameter SRAM0_INIT_37 = 256'h0,
82
parameter SRAM0_INIT_38 = 256'h0,
83
parameter SRAM0_INIT_39 = 256'h0,
84
parameter SRAM0_INIT_40 = 256'h0,
85
parameter SRAM0_INIT_41 = 256'h0,
86
parameter SRAM0_INIT_42 = 256'h0,
87
parameter SRAM0_INIT_43 = 256'h0,
88
parameter SRAM0_INIT_44 = 256'h0,
89
parameter SRAM0_INIT_45 = 256'h0,
90
parameter SRAM0_INIT_46 = 256'h0,
91
parameter SRAM0_INIT_47 = 256'h0,
92
parameter SRAM0_INIT_48 = 256'h0,
93
parameter SRAM0_INIT_49 = 256'h0,
94
parameter SRAM0_INIT_50 = 256'h0,
95
parameter SRAM0_INIT_51 = 256'h0,
96
parameter SRAM0_INIT_52 = 256'h0,
97
parameter SRAM0_INIT_53 = 256'h0,
98
parameter SRAM0_INIT_54 = 256'h0,
99
parameter SRAM0_INIT_55 = 256'h0,
100
parameter SRAM0_INIT_56 = 256'h0,
101
parameter SRAM0_INIT_57 = 256'h0,
102
parameter SRAM0_INIT_58 = 256'h0,
103
parameter SRAM0_INIT_59 = 256'h0,
104
parameter SRAM0_INIT_60 = 256'h0,
105
parameter SRAM0_INIT_61 = 256'h0,
106
parameter SRAM0_INIT_62 = 256'h0,
107
parameter SRAM0_INIT_63 = 256'h0,
108
 
109
 
110
parameter SRAM1_INIT_0 = 256'h0,
111
parameter SRAM1_INIT_1 = 256'h0,
112
parameter SRAM1_INIT_2 = 256'h0,
113
parameter SRAM1_INIT_3 = 256'h0,
114
parameter SRAM1_INIT_4 = 256'h0,
115
parameter SRAM1_INIT_5 = 256'h0,
116
parameter SRAM1_INIT_6 = 256'h0,
117
parameter SRAM1_INIT_7 = 256'h0,
118
parameter SRAM1_INIT_8 = 256'h0,
119
parameter SRAM1_INIT_9 = 256'h0,
120
parameter SRAM1_INIT_10 = 256'h0,
121
parameter SRAM1_INIT_11 = 256'h0,
122
parameter SRAM1_INIT_12 = 256'h0,
123
parameter SRAM1_INIT_13 = 256'h0,
124
parameter SRAM1_INIT_14 = 256'h0,
125
parameter SRAM1_INIT_15 = 256'h0,
126
parameter SRAM1_INIT_16 = 256'h0,
127
parameter SRAM1_INIT_17 = 256'h0,
128
parameter SRAM1_INIT_18 = 256'h0,
129
parameter SRAM1_INIT_19 = 256'h0,
130
parameter SRAM1_INIT_20 = 256'h0,
131
parameter SRAM1_INIT_21 = 256'h0,
132
parameter SRAM1_INIT_22 = 256'h0,
133
parameter SRAM1_INIT_23 = 256'h0,
134
parameter SRAM1_INIT_24 = 256'h0,
135
parameter SRAM1_INIT_25 = 256'h0,
136
parameter SRAM1_INIT_26 = 256'h0,
137
parameter SRAM1_INIT_27 = 256'h0,
138
parameter SRAM1_INIT_28 = 256'h0,
139
parameter SRAM1_INIT_29 = 256'h0,
140
parameter SRAM1_INIT_30 = 256'h0,
141
parameter SRAM1_INIT_31 = 256'h0,
142
parameter SRAM1_INIT_32 = 256'h0,
143
parameter SRAM1_INIT_33 = 256'h0,
144
parameter SRAM1_INIT_34 = 256'h0,
145
parameter SRAM1_INIT_35 = 256'h0,
146
parameter SRAM1_INIT_36 = 256'h0,
147
parameter SRAM1_INIT_37 = 256'h0,
148
parameter SRAM1_INIT_38 = 256'h0,
149
parameter SRAM1_INIT_39 = 256'h0,
150
parameter SRAM1_INIT_40 = 256'h0,
151
parameter SRAM1_INIT_41 = 256'h0,
152
parameter SRAM1_INIT_42 = 256'h0,
153
parameter SRAM1_INIT_43 = 256'h0,
154
parameter SRAM1_INIT_44 = 256'h0,
155
parameter SRAM1_INIT_45 = 256'h0,
156
parameter SRAM1_INIT_46 = 256'h0,
157
parameter SRAM1_INIT_47 = 256'h0,
158
parameter SRAM1_INIT_48 = 256'h0,
159
parameter SRAM1_INIT_49 = 256'h0,
160
parameter SRAM1_INIT_50 = 256'h0,
161
parameter SRAM1_INIT_51 = 256'h0,
162
parameter SRAM1_INIT_52 = 256'h0,
163
parameter SRAM1_INIT_53 = 256'h0,
164
parameter SRAM1_INIT_54 = 256'h0,
165
parameter SRAM1_INIT_55 = 256'h0,
166
parameter SRAM1_INIT_56 = 256'h0,
167
parameter SRAM1_INIT_57 = 256'h0,
168
parameter SRAM1_INIT_58 = 256'h0,
169
parameter SRAM1_INIT_59 = 256'h0,
170
parameter SRAM1_INIT_60 = 256'h0,
171
parameter SRAM1_INIT_61 = 256'h0,
172
parameter SRAM1_INIT_62 = 256'h0,
173
parameter SRAM1_INIT_63 = 256'h0,
174
 
175
 
176
 
177
parameter SRAM2_INIT_0 = 256'h0,
178
parameter SRAM2_INIT_1 = 256'h0,
179
parameter SRAM2_INIT_2 = 256'h0,
180
parameter SRAM2_INIT_3 = 256'h0,
181
parameter SRAM2_INIT_4 = 256'h0,
182
parameter SRAM2_INIT_5 = 256'h0,
183
parameter SRAM2_INIT_6 = 256'h0,
184
parameter SRAM2_INIT_7 = 256'h0,
185
parameter SRAM2_INIT_8 = 256'h0,
186
parameter SRAM2_INIT_9 = 256'h0,
187
parameter SRAM2_INIT_10 = 256'h0,
188
parameter SRAM2_INIT_11 = 256'h0,
189
parameter SRAM2_INIT_12 = 256'h0,
190
parameter SRAM2_INIT_13 = 256'h0,
191
parameter SRAM2_INIT_14 = 256'h0,
192
parameter SRAM2_INIT_15 = 256'h0,
193
parameter SRAM2_INIT_16 = 256'h0,
194
parameter SRAM2_INIT_17 = 256'h0,
195
parameter SRAM2_INIT_18 = 256'h0,
196
parameter SRAM2_INIT_19 = 256'h0,
197
parameter SRAM2_INIT_20 = 256'h0,
198
parameter SRAM2_INIT_21 = 256'h0,
199
parameter SRAM2_INIT_22 = 256'h0,
200
parameter SRAM2_INIT_23 = 256'h0,
201
parameter SRAM2_INIT_24 = 256'h0,
202
parameter SRAM2_INIT_25 = 256'h0,
203
parameter SRAM2_INIT_26 = 256'h0,
204
parameter SRAM2_INIT_27 = 256'h0,
205
parameter SRAM2_INIT_28 = 256'h0,
206
parameter SRAM2_INIT_29 = 256'h0,
207
parameter SRAM2_INIT_30 = 256'h0,
208
parameter SRAM2_INIT_31 = 256'h0,
209
parameter SRAM2_INIT_32 = 256'h0,
210
parameter SRAM2_INIT_33 = 256'h0,
211
parameter SRAM2_INIT_34 = 256'h0,
212
parameter SRAM2_INIT_35 = 256'h0,
213
parameter SRAM2_INIT_36 = 256'h0,
214
parameter SRAM2_INIT_37 = 256'h0,
215
parameter SRAM2_INIT_38 = 256'h0,
216
parameter SRAM2_INIT_39 = 256'h0,
217
parameter SRAM2_INIT_40 = 256'h0,
218
parameter SRAM2_INIT_41 = 256'h0,
219
parameter SRAM2_INIT_42 = 256'h0,
220
parameter SRAM2_INIT_43 = 256'h0,
221
parameter SRAM2_INIT_44 = 256'h0,
222
parameter SRAM2_INIT_45 = 256'h0,
223
parameter SRAM2_INIT_46 = 256'h0,
224
parameter SRAM2_INIT_47 = 256'h0,
225
parameter SRAM2_INIT_48 = 256'h0,
226
parameter SRAM2_INIT_49 = 256'h0,
227
parameter SRAM2_INIT_50 = 256'h0,
228
parameter SRAM2_INIT_51 = 256'h0,
229
parameter SRAM2_INIT_52 = 256'h0,
230
parameter SRAM2_INIT_53 = 256'h0,
231
parameter SRAM2_INIT_54 = 256'h0,
232
parameter SRAM2_INIT_55 = 256'h0,
233
parameter SRAM2_INIT_56 = 256'h0,
234
parameter SRAM2_INIT_57 = 256'h0,
235
parameter SRAM2_INIT_58 = 256'h0,
236
parameter SRAM2_INIT_59 = 256'h0,
237
parameter SRAM2_INIT_60 = 256'h0,
238
parameter SRAM2_INIT_61 = 256'h0,
239
parameter SRAM2_INIT_62 = 256'h0,
240
parameter SRAM2_INIT_63 = 256'h0,
241
 
242
parameter SRAM3_INIT_0 = 256'h0,
243
parameter SRAM3_INIT_1 = 256'h0,
244
parameter SRAM3_INIT_2 = 256'h0,
245
parameter SRAM3_INIT_3 = 256'h0,
246
parameter SRAM3_INIT_4 = 256'h0,
247
parameter SRAM3_INIT_5 = 256'h0,
248
parameter SRAM3_INIT_6 = 256'h0,
249
parameter SRAM3_INIT_7 = 256'h0,
250
parameter SRAM3_INIT_8 = 256'h0,
251
parameter SRAM3_INIT_9 = 256'h0,
252
parameter SRAM3_INIT_10 = 256'h0,
253
parameter SRAM3_INIT_11 = 256'h0,
254
parameter SRAM3_INIT_12 = 256'h0,
255
parameter SRAM3_INIT_13 = 256'h0,
256
parameter SRAM3_INIT_14 = 256'h0,
257
parameter SRAM3_INIT_15 = 256'h0,
258
parameter SRAM3_INIT_16 = 256'h0,
259
parameter SRAM3_INIT_17 = 256'h0,
260
parameter SRAM3_INIT_18 = 256'h0,
261
parameter SRAM3_INIT_19 = 256'h0,
262
parameter SRAM3_INIT_20 = 256'h0,
263
parameter SRAM3_INIT_21 = 256'h0,
264
parameter SRAM3_INIT_22 = 256'h0,
265
parameter SRAM3_INIT_23 = 256'h0,
266
parameter SRAM3_INIT_24 = 256'h0,
267
parameter SRAM3_INIT_25 = 256'h0,
268
parameter SRAM3_INIT_26 = 256'h0,
269
parameter SRAM3_INIT_27 = 256'h0,
270
parameter SRAM3_INIT_28 = 256'h0,
271
parameter SRAM3_INIT_29 = 256'h0,
272
parameter SRAM3_INIT_30 = 256'h0,
273
parameter SRAM3_INIT_31 = 256'h0,
274
parameter SRAM3_INIT_32 = 256'h0,
275
parameter SRAM3_INIT_33 = 256'h0,
276
parameter SRAM3_INIT_34 = 256'h0,
277
parameter SRAM3_INIT_35 = 256'h0,
278
parameter SRAM3_INIT_36 = 256'h0,
279
parameter SRAM3_INIT_37 = 256'h0,
280
parameter SRAM3_INIT_38 = 256'h0,
281
parameter SRAM3_INIT_39 = 256'h0,
282
parameter SRAM3_INIT_40 = 256'h0,
283
parameter SRAM3_INIT_41 = 256'h0,
284
parameter SRAM3_INIT_42 = 256'h0,
285
parameter SRAM3_INIT_43 = 256'h0,
286
parameter SRAM3_INIT_44 = 256'h0,
287
parameter SRAM3_INIT_45 = 256'h0,
288
parameter SRAM3_INIT_46 = 256'h0,
289
parameter SRAM3_INIT_47 = 256'h0,
290
parameter SRAM3_INIT_48 = 256'h0,
291
parameter SRAM3_INIT_49 = 256'h0,
292
parameter SRAM3_INIT_50 = 256'h0,
293
parameter SRAM3_INIT_51 = 256'h0,
294
parameter SRAM3_INIT_52 = 256'h0,
295
parameter SRAM3_INIT_53 = 256'h0,
296
parameter SRAM3_INIT_54 = 256'h0,
297
parameter SRAM3_INIT_55 = 256'h0,
298
parameter SRAM3_INIT_56 = 256'h0,
299
parameter SRAM3_INIT_57 = 256'h0,
300
parameter SRAM3_INIT_58 = 256'h0,
301
parameter SRAM3_INIT_59 = 256'h0,
302
parameter SRAM3_INIT_60 = 256'h0,
303
parameter SRAM3_INIT_61 = 256'h0,
304
parameter SRAM3_INIT_62 = 256'h0,
305
parameter SRAM3_INIT_63 = 256'h0,
306
 
307
parameter UNUSED       = 1'd1
308
 
309
)
310
 
311
(
312
input              i_clk,
313
input      [127:0] i_write_data,
314
input              i_write_enable,
315
input      [8:0]   i_address,
316
input      [15:0]  i_byte_enable,
317
output     [127:0] o_read_data
318
 
319
);
320
 
321
 
322
wire [23:0] nc24_00, nc24_01, nc24_02, nc24_03;
323
wire [15:0] wea;
324
 
325
assign wea = {16{i_write_enable}} & i_byte_enable;
326
 
327
 
328
  RAMB16BWER #(
329
    .DATA_WIDTH_A ( 36              ),
330
    .DATA_WIDTH_B ( 36              ),
331
    .DOA_REG      ( 0               ),
332
    .DOB_REG      ( 0               ),
333
    .EN_RSTRAM_A  ( "FALSE"         ),
334
    .EN_RSTRAM_B  ( "FALSE"         ),
335
    .SRVAL_A      ( 36'h000000000   ),
336
    .INITP_00     ( 256'h0          ),
337
    .INITP_01     ( 256'h0          ),
338
    .INITP_02     ( 256'h0          ),
339
    .INITP_03     ( 256'h0          ),
340
    .INITP_04     ( 256'h0          ),
341
    .INITP_05     ( 256'h0          ),
342
    .INITP_06     ( 256'h0          ),
343
    .INITP_07     ( 256'h0          ),
344
 
345
    .INIT_00 ( SRAM0_INIT_0  ),
346
    .INIT_01 ( SRAM0_INIT_1  ),
347
    .INIT_02 ( SRAM0_INIT_2  ),
348
    .INIT_03 ( SRAM0_INIT_3  ),
349
    .INIT_04 ( SRAM0_INIT_4  ),
350
    .INIT_05 ( SRAM0_INIT_5  ),
351
    .INIT_06 ( SRAM0_INIT_6  ),
352
    .INIT_07 ( SRAM0_INIT_7  ),
353
    .INIT_08 ( SRAM0_INIT_8  ),
354
    .INIT_09 ( SRAM0_INIT_9  ),
355
    .INIT_0A ( SRAM0_INIT_10 ),
356
    .INIT_0B ( SRAM0_INIT_11 ),
357
    .INIT_0C ( SRAM0_INIT_12 ),
358
    .INIT_0D ( SRAM0_INIT_13 ),
359
    .INIT_0E ( SRAM0_INIT_14 ),
360
    .INIT_0F ( SRAM0_INIT_15 ),
361
    .INIT_10 ( SRAM0_INIT_16 ),
362
    .INIT_11 ( SRAM0_INIT_17 ),
363
    .INIT_12 ( SRAM0_INIT_18 ),
364
    .INIT_13 ( SRAM0_INIT_19 ),
365
    .INIT_14 ( SRAM0_INIT_20 ),
366
    .INIT_15 ( SRAM0_INIT_21 ),
367
    .INIT_16 ( SRAM0_INIT_22 ),
368
    .INIT_17 ( SRAM0_INIT_23 ),
369
    .INIT_18 ( SRAM0_INIT_24 ),
370
    .INIT_19 ( SRAM0_INIT_25 ),
371
    .INIT_1A ( SRAM0_INIT_26 ),
372
    .INIT_1B ( SRAM0_INIT_27 ),
373
    .INIT_1C ( SRAM0_INIT_28 ),
374
    .INIT_1D ( SRAM0_INIT_29 ),
375
    .INIT_1E ( SRAM0_INIT_30 ),
376
    .INIT_1F ( SRAM0_INIT_31 ),
377
    .INIT_20 ( SRAM0_INIT_32 ),
378
    .INIT_21 ( SRAM0_INIT_33 ),
379
    .INIT_22 ( SRAM0_INIT_34 ),
380
    .INIT_23 ( SRAM0_INIT_35 ),
381
    .INIT_24 ( SRAM0_INIT_36 ),
382
    .INIT_25 ( SRAM0_INIT_37 ),
383
    .INIT_26 ( SRAM0_INIT_38 ),
384
    .INIT_27 ( SRAM0_INIT_39 ),
385
    .INIT_28 ( SRAM0_INIT_40 ),
386
    .INIT_29 ( SRAM0_INIT_41 ),
387
    .INIT_2A ( SRAM0_INIT_42 ),
388
    .INIT_2B ( SRAM0_INIT_43 ),
389
    .INIT_2C ( SRAM0_INIT_44 ),
390
    .INIT_2D ( SRAM0_INIT_45 ),
391
    .INIT_2E ( SRAM0_INIT_46 ),
392
    .INIT_2F ( SRAM0_INIT_47 ),
393
    .INIT_30 ( SRAM0_INIT_48 ),
394
    .INIT_31 ( SRAM0_INIT_49 ),
395
    .INIT_32 ( SRAM0_INIT_50 ),
396
    .INIT_33 ( SRAM0_INIT_51 ),
397
    .INIT_34 ( SRAM0_INIT_52 ),
398
    .INIT_35 ( SRAM0_INIT_53 ),
399
    .INIT_36 ( SRAM0_INIT_54 ),
400
    .INIT_37 ( SRAM0_INIT_55 ),
401
    .INIT_38 ( SRAM0_INIT_56 ),
402
    .INIT_39 ( SRAM0_INIT_57 ),
403
    .INIT_3A ( SRAM0_INIT_58 ),
404
    .INIT_3B ( SRAM0_INIT_59 ),
405
    .INIT_3C ( SRAM0_INIT_60 ),
406
    .INIT_3D ( SRAM0_INIT_61 ),
407
    .INIT_3E ( SRAM0_INIT_62 ),
408
    .INIT_3F ( SRAM0_INIT_63 ),
409
 
410
    .INIT_FILE              ( "NONE"            ),
411
    .RSTTYPE                ( "SYNC"            ),
412
    .RST_PRIORITY_A         ( "CE"              ),
413
    .RST_PRIORITY_B         ( "CE"              ),
414
    .SIM_COLLISION_CHECK    ( "GENERATE_X_ONLY" ),
415
    .SIM_DEVICE             ( "SPARTAN6"        ),
416
    .INIT_A                 ( 36'h000000000     ),
417
    .INIT_B                 ( 36'h000000000     ),
418
    .WRITE_MODE_A           ( "WRITE_FIRST"     ),
419
    .WRITE_MODE_B           ( "WRITE_FIRST"     ),
420
    .SRVAL_B                ( 36'h000000000     ))
421
  u_sram0 (
422
    .REGCEA ( 1'd0                              ),
423
    .CLKA   ( i_clk                             ),
424
    .ENB    ( 1'd0                              ),
425
    .RSTB   ( 1'd0                              ),
426
    .CLKB   ( 1'd0                              ),
427
    .REGCEB ( 1'd0                              ),
428
    .RSTA   ( 1'd0                              ),
429
    .ENA    ( 1'd1                              ),
430
    .DIPA   ( 4'd0                              ),
431
    .WEA    ( wea[3:0]                          ),
432
    .DOA    ( o_read_data[31:0]                 ),
433
    .ADDRA  ( {i_address[8:0], 5'd0}            ),
434
    .ADDRB  ( 14'd0                             ),
435
    .DIB    ( 32'd0                             ),
436
    .DOPA   (                                   ),
437
    .DIPB   ( 4'd0                              ),
438
    .DOPB   (                                   ),
439
    .DOB    (                                   ),
440
    .WEB    ( 4'd0                              ),
441
    .DIA    ( i_write_data[31:0]                )
442
  );
443
 
444
 
445
 
446
  RAMB16BWER #(
447
    .DATA_WIDTH_A   ( 36            ),
448
    .DATA_WIDTH_B   ( 36            ),
449
    .DOA_REG        ( 0             ),
450
    .DOB_REG        ( 0             ),
451
    .EN_RSTRAM_A    ( "FALSE"       ),
452
    .EN_RSTRAM_B    ( "FALSE"       ),
453
    .SRVAL_A        ( 36'h000000000 ),
454
    .INITP_00       ( 256'h0        ),
455
    .INITP_01       ( 256'h0        ),
456
    .INITP_02       ( 256'h0        ),
457
    .INITP_03       ( 256'h0        ),
458
    .INITP_04       ( 256'h0        ),
459
    .INITP_05       ( 256'h0        ),
460
    .INITP_06       ( 256'h0        ),
461
    .INITP_07       ( 256'h0        ),
462
 
463
    .INIT_00 ( SRAM1_INIT_0  ),
464
    .INIT_01 ( SRAM1_INIT_1  ),
465
    .INIT_02 ( SRAM1_INIT_2  ),
466
    .INIT_03 ( SRAM1_INIT_3  ),
467
    .INIT_04 ( SRAM1_INIT_4  ),
468
    .INIT_05 ( SRAM1_INIT_5  ),
469
    .INIT_06 ( SRAM1_INIT_6  ),
470
    .INIT_07 ( SRAM1_INIT_7  ),
471
    .INIT_08 ( SRAM1_INIT_8  ),
472
    .INIT_09 ( SRAM1_INIT_9  ),
473
    .INIT_0A ( SRAM1_INIT_10 ),
474
    .INIT_0B ( SRAM1_INIT_11 ),
475
    .INIT_0C ( SRAM1_INIT_12 ),
476
    .INIT_0D ( SRAM1_INIT_13 ),
477
    .INIT_0E ( SRAM1_INIT_14 ),
478
    .INIT_0F ( SRAM1_INIT_15 ),
479
    .INIT_10 ( SRAM1_INIT_16 ),
480
    .INIT_11 ( SRAM1_INIT_17 ),
481
    .INIT_12 ( SRAM1_INIT_18 ),
482
    .INIT_13 ( SRAM1_INIT_19 ),
483
    .INIT_14 ( SRAM1_INIT_20 ),
484
    .INIT_15 ( SRAM1_INIT_21 ),
485
    .INIT_16 ( SRAM1_INIT_22 ),
486
    .INIT_17 ( SRAM1_INIT_23 ),
487
    .INIT_18 ( SRAM1_INIT_24 ),
488
    .INIT_19 ( SRAM1_INIT_25 ),
489
    .INIT_1A ( SRAM1_INIT_26 ),
490
    .INIT_1B ( SRAM1_INIT_27 ),
491
    .INIT_1C ( SRAM1_INIT_28 ),
492
    .INIT_1D ( SRAM1_INIT_29 ),
493
    .INIT_1E ( SRAM1_INIT_30 ),
494
    .INIT_1F ( SRAM1_INIT_31 ),
495
    .INIT_20 ( SRAM1_INIT_32 ),
496
    .INIT_21 ( SRAM1_INIT_33 ),
497
    .INIT_22 ( SRAM1_INIT_34 ),
498
    .INIT_23 ( SRAM1_INIT_35 ),
499
    .INIT_24 ( SRAM1_INIT_36 ),
500
    .INIT_25 ( SRAM1_INIT_37 ),
501
    .INIT_26 ( SRAM1_INIT_38 ),
502
    .INIT_27 ( SRAM1_INIT_39 ),
503
    .INIT_28 ( SRAM1_INIT_40 ),
504
    .INIT_29 ( SRAM1_INIT_41 ),
505
    .INIT_2A ( SRAM1_INIT_42 ),
506
    .INIT_2B ( SRAM1_INIT_43 ),
507
    .INIT_2C ( SRAM1_INIT_44 ),
508
    .INIT_2D ( SRAM1_INIT_45 ),
509
    .INIT_2E ( SRAM1_INIT_46 ),
510
    .INIT_2F ( SRAM1_INIT_47 ),
511
    .INIT_30 ( SRAM1_INIT_48 ),
512
    .INIT_31 ( SRAM1_INIT_49 ),
513
    .INIT_32 ( SRAM1_INIT_50 ),
514
    .INIT_33 ( SRAM1_INIT_51 ),
515
    .INIT_34 ( SRAM1_INIT_52 ),
516
    .INIT_35 ( SRAM1_INIT_53 ),
517
    .INIT_36 ( SRAM1_INIT_54 ),
518
    .INIT_37 ( SRAM1_INIT_55 ),
519
    .INIT_38 ( SRAM1_INIT_56 ),
520
    .INIT_39 ( SRAM1_INIT_57 ),
521
    .INIT_3A ( SRAM1_INIT_58 ),
522
    .INIT_3B ( SRAM1_INIT_59 ),
523
    .INIT_3C ( SRAM1_INIT_60 ),
524
    .INIT_3D ( SRAM1_INIT_61 ),
525
    .INIT_3E ( SRAM1_INIT_62 ),
526
    .INIT_3F ( SRAM1_INIT_63 ),
527
 
528
    .INIT_FILE              ( "NONE"            ),
529
    .RSTTYPE                ( "SYNC"            ),
530
    .RST_PRIORITY_A         ( "CE"              ),
531
    .RST_PRIORITY_B         ( "CE"              ),
532
    .SIM_COLLISION_CHECK    ( "GENERATE_X_ONLY" ),
533
    .SIM_DEVICE             ( "SPARTAN6"        ),
534
    .INIT_A                 ( 36'h000000000     ),
535
    .INIT_B                 ( 36'h000000000     ),
536
    .WRITE_MODE_A           ( "WRITE_FIRST"     ),
537
    .WRITE_MODE_B           ( "WRITE_FIRST"     ),
538
    .SRVAL_B                ( 36'h000000000     ))
539
  u_sram1  (
540
    .REGCEA ( 1'd0                              ),
541
    .CLKA   ( i_clk                             ),
542
    .ENB    ( 1'd0                              ),
543
    .RSTB   ( 1'd0                              ),
544
    .CLKB   ( 1'd0                              ),
545
    .REGCEB ( 1'd0                              ),
546
    .RSTA   ( 1'd0                              ),
547
    .ENA    ( 1'd1                              ),
548
    .DIPA   ( 4'd0                              ),
549
    .WEA    ( wea[7:4]                          ),
550
    .DOA    ( o_read_data[63:32]                ),
551
    .ADDRA  ( {i_address[8:0], 5'd0}            ),
552
    .ADDRB  ( 14'd0                             ),
553
    .DIB    ( 32'd0                             ),
554
    .DOPA   (                                   ),
555
    .DIPB   ( 4'd0                              ),
556
    .DOPB   (                                   ),
557
    .DOB    (                                   ),
558
    .WEB    ( 4'd0                              ),
559
    .DIA    ( i_write_data[63:32]               )
560
  );
561
 
562
 
563
  RAMB16BWER #(
564
    .DATA_WIDTH_A   ( 36            ),
565
    .DATA_WIDTH_B   ( 36            ),
566
    .DOA_REG        ( 0             ),
567
    .DOB_REG        ( 0             ),
568
    .EN_RSTRAM_A    ( "FALSE"       ),
569
    .EN_RSTRAM_B    ( "FALSE"       ),
570
    .SRVAL_A        ( 36'h000000000 ),
571
    .INITP_00       ( 256'h0        ),
572
    .INITP_01       ( 256'h0        ),
573
    .INITP_02       ( 256'h0        ),
574
    .INITP_03       ( 256'h0        ),
575
    .INITP_04       ( 256'h0        ),
576
    .INITP_05       ( 256'h0        ),
577
    .INITP_06       ( 256'h0        ),
578
    .INITP_07       ( 256'h0        ),
579
 
580
    .INIT_00 ( SRAM2_INIT_0  ),
581
    .INIT_01 ( SRAM2_INIT_1  ),
582
    .INIT_02 ( SRAM2_INIT_2  ),
583
    .INIT_03 ( SRAM2_INIT_3  ),
584
    .INIT_04 ( SRAM2_INIT_4  ),
585
    .INIT_05 ( SRAM2_INIT_5  ),
586
    .INIT_06 ( SRAM2_INIT_6  ),
587
    .INIT_07 ( SRAM2_INIT_7  ),
588
    .INIT_08 ( SRAM2_INIT_8  ),
589
    .INIT_09 ( SRAM2_INIT_9  ),
590
    .INIT_0A ( SRAM2_INIT_10 ),
591
    .INIT_0B ( SRAM2_INIT_11 ),
592
    .INIT_0C ( SRAM2_INIT_12 ),
593
    .INIT_0D ( SRAM2_INIT_13 ),
594
    .INIT_0E ( SRAM2_INIT_14 ),
595
    .INIT_0F ( SRAM2_INIT_15 ),
596
    .INIT_10 ( SRAM2_INIT_16 ),
597
    .INIT_11 ( SRAM2_INIT_17 ),
598
    .INIT_12 ( SRAM2_INIT_18 ),
599
    .INIT_13 ( SRAM2_INIT_19 ),
600
    .INIT_14 ( SRAM2_INIT_20 ),
601
    .INIT_15 ( SRAM2_INIT_21 ),
602
    .INIT_16 ( SRAM2_INIT_22 ),
603
    .INIT_17 ( SRAM2_INIT_23 ),
604
    .INIT_18 ( SRAM2_INIT_24 ),
605
    .INIT_19 ( SRAM2_INIT_25 ),
606
    .INIT_1A ( SRAM2_INIT_26 ),
607
    .INIT_1B ( SRAM2_INIT_27 ),
608
    .INIT_1C ( SRAM2_INIT_28 ),
609
    .INIT_1D ( SRAM2_INIT_29 ),
610
    .INIT_1E ( SRAM2_INIT_30 ),
611
    .INIT_1F ( SRAM2_INIT_31 ),
612
    .INIT_20 ( SRAM2_INIT_32 ),
613
    .INIT_21 ( SRAM2_INIT_33 ),
614
    .INIT_22 ( SRAM2_INIT_34 ),
615
    .INIT_23 ( SRAM2_INIT_35 ),
616
    .INIT_24 ( SRAM2_INIT_36 ),
617
    .INIT_25 ( SRAM2_INIT_37 ),
618
    .INIT_26 ( SRAM2_INIT_38 ),
619
    .INIT_27 ( SRAM2_INIT_39 ),
620
    .INIT_28 ( SRAM2_INIT_40 ),
621
    .INIT_29 ( SRAM2_INIT_41 ),
622
    .INIT_2A ( SRAM2_INIT_42 ),
623
    .INIT_2B ( SRAM2_INIT_43 ),
624
    .INIT_2C ( SRAM2_INIT_44 ),
625
    .INIT_2D ( SRAM2_INIT_45 ),
626
    .INIT_2E ( SRAM2_INIT_46 ),
627
    .INIT_2F ( SRAM2_INIT_47 ),
628
    .INIT_30 ( SRAM2_INIT_48 ),
629
    .INIT_31 ( SRAM2_INIT_49 ),
630
    .INIT_32 ( SRAM2_INIT_50 ),
631
    .INIT_33 ( SRAM2_INIT_51 ),
632
    .INIT_34 ( SRAM2_INIT_52 ),
633
    .INIT_35 ( SRAM2_INIT_53 ),
634
    .INIT_36 ( SRAM2_INIT_54 ),
635
    .INIT_37 ( SRAM2_INIT_55 ),
636
    .INIT_38 ( SRAM2_INIT_56 ),
637
    .INIT_39 ( SRAM2_INIT_57 ),
638
    .INIT_3A ( SRAM2_INIT_58 ),
639
    .INIT_3B ( SRAM2_INIT_59 ),
640
    .INIT_3C ( SRAM2_INIT_60 ),
641
    .INIT_3D ( SRAM2_INIT_61 ),
642
    .INIT_3E ( SRAM2_INIT_62 ),
643
    .INIT_3F ( SRAM2_INIT_63 ),
644
 
645
    .INIT_FILE              ( "NONE"            ),
646
    .RSTTYPE                ( "SYNC"            ),
647
    .RST_PRIORITY_A         ( "CE"              ),
648
    .RST_PRIORITY_B         ( "CE"              ),
649
    .SIM_COLLISION_CHECK    ( "GENERATE_X_ONLY" ),
650
    .SIM_DEVICE             ( "SPARTAN6"        ),
651
    .INIT_A                 ( 36'h000000000     ),
652
    .INIT_B                 ( 36'h000000000     ),
653
    .WRITE_MODE_A           ( "WRITE_FIRST"     ),
654
    .WRITE_MODE_B           ( "WRITE_FIRST"     ),
655
    .SRVAL_B                ( 36'h000000000     ))
656
  u_sram2 (
657
    .REGCEA ( 1'd0                              ),
658
    .CLKA   ( i_clk                             ),
659
    .ENB    ( 1'd0                              ),
660
    .RSTB   ( 1'd0                              ),
661
    .CLKB   ( 1'd0                              ),
662
    .REGCEB ( 1'd0                              ),
663
    .RSTA   ( 1'd0                              ),
664
    .ENA    ( 1'd1                              ),
665
    .DIPA   ( 4'd0                              ),
666
    .WEA    ( wea[11:8]                         ),
667
    .DOA    ( o_read_data[95:64]                ),
668
    .ADDRA  ( {i_address[8:0], 5'd0}            ),
669
    .ADDRB  ( 14'd0                             ),
670
    .DIB    ( 32'd0                             ),
671
    .DOPA   (                                   ),
672
    .DIPB   ( 4'd0                              ),
673
    .DOPB   (                                   ),
674
    .DOB    (                                   ),
675
    .WEB    ( 4'd0                              ),
676
    .DIA    ( i_write_data[95:64]               )
677
  );
678
 
679
 
680
 
681
  RAMB16BWER #(
682
    .DATA_WIDTH_A   ( 36            ),
683
    .DATA_WIDTH_B   ( 36            ),
684
    .DOA_REG        ( 0             ),
685
    .DOB_REG        ( 0             ),
686
    .EN_RSTRAM_A    ( "FALSE"       ),
687
    .EN_RSTRAM_B    ( "FALSE"       ),
688
    .SRVAL_A        ( 36'h000000000 ),
689
    .INITP_00       ( 256'h0        ),
690
    .INITP_01       ( 256'h0        ),
691
    .INITP_02       ( 256'h0        ),
692
    .INITP_03       ( 256'h0        ),
693
    .INITP_04       ( 256'h0        ),
694
    .INITP_05       ( 256'h0        ),
695
    .INITP_06       ( 256'h0        ),
696
    .INITP_07       ( 256'h0        ),
697
 
698
    .INIT_00 ( SRAM3_INIT_0  ),
699
    .INIT_01 ( SRAM3_INIT_1  ),
700
    .INIT_02 ( SRAM3_INIT_2  ),
701
    .INIT_03 ( SRAM3_INIT_3  ),
702
    .INIT_04 ( SRAM3_INIT_4  ),
703
    .INIT_05 ( SRAM3_INIT_5  ),
704
    .INIT_06 ( SRAM3_INIT_6  ),
705
    .INIT_07 ( SRAM3_INIT_7  ),
706
    .INIT_08 ( SRAM3_INIT_8  ),
707
    .INIT_09 ( SRAM3_INIT_9  ),
708
    .INIT_0A ( SRAM3_INIT_10 ),
709
    .INIT_0B ( SRAM3_INIT_11 ),
710
    .INIT_0C ( SRAM3_INIT_12 ),
711
    .INIT_0D ( SRAM3_INIT_13 ),
712
    .INIT_0E ( SRAM3_INIT_14 ),
713
    .INIT_0F ( SRAM3_INIT_15 ),
714
    .INIT_10 ( SRAM3_INIT_16 ),
715
    .INIT_11 ( SRAM3_INIT_17 ),
716
    .INIT_12 ( SRAM3_INIT_18 ),
717
    .INIT_13 ( SRAM3_INIT_19 ),
718
    .INIT_14 ( SRAM3_INIT_20 ),
719
    .INIT_15 ( SRAM3_INIT_21 ),
720
    .INIT_16 ( SRAM3_INIT_22 ),
721
    .INIT_17 ( SRAM3_INIT_23 ),
722
    .INIT_18 ( SRAM3_INIT_24 ),
723
    .INIT_19 ( SRAM3_INIT_25 ),
724
    .INIT_1A ( SRAM3_INIT_26 ),
725
    .INIT_1B ( SRAM3_INIT_27 ),
726
    .INIT_1C ( SRAM3_INIT_28 ),
727
    .INIT_1D ( SRAM3_INIT_29 ),
728
    .INIT_1E ( SRAM3_INIT_30 ),
729
    .INIT_1F ( SRAM3_INIT_31 ),
730
    .INIT_20 ( SRAM3_INIT_32 ),
731
    .INIT_21 ( SRAM3_INIT_33 ),
732
    .INIT_22 ( SRAM3_INIT_34 ),
733
    .INIT_23 ( SRAM3_INIT_35 ),
734
    .INIT_24 ( SRAM3_INIT_36 ),
735
    .INIT_25 ( SRAM3_INIT_37 ),
736
    .INIT_26 ( SRAM3_INIT_38 ),
737
    .INIT_27 ( SRAM3_INIT_39 ),
738
    .INIT_28 ( SRAM3_INIT_40 ),
739
    .INIT_29 ( SRAM3_INIT_41 ),
740
    .INIT_2A ( SRAM3_INIT_42 ),
741
    .INIT_2B ( SRAM3_INIT_43 ),
742
    .INIT_2C ( SRAM3_INIT_44 ),
743
    .INIT_2D ( SRAM3_INIT_45 ),
744
    .INIT_2E ( SRAM3_INIT_46 ),
745
    .INIT_2F ( SRAM3_INIT_47 ),
746
    .INIT_30 ( SRAM3_INIT_48 ),
747
    .INIT_31 ( SRAM3_INIT_49 ),
748
    .INIT_32 ( SRAM3_INIT_50 ),
749
    .INIT_33 ( SRAM3_INIT_51 ),
750
    .INIT_34 ( SRAM3_INIT_52 ),
751
    .INIT_35 ( SRAM3_INIT_53 ),
752
    .INIT_36 ( SRAM3_INIT_54 ),
753
    .INIT_37 ( SRAM3_INIT_55 ),
754
    .INIT_38 ( SRAM3_INIT_56 ),
755
    .INIT_39 ( SRAM3_INIT_57 ),
756
    .INIT_3A ( SRAM3_INIT_58 ),
757
    .INIT_3B ( SRAM3_INIT_59 ),
758
    .INIT_3C ( SRAM3_INIT_60 ),
759
    .INIT_3D ( SRAM3_INIT_61 ),
760
    .INIT_3E ( SRAM3_INIT_62 ),
761
    .INIT_3F ( SRAM3_INIT_63 ),
762
 
763
    .INIT_FILE              ( "NONE"            ),
764
    .RSTTYPE                ( "SYNC"            ),
765
    .RST_PRIORITY_A         ( "CE"              ),
766
    .RST_PRIORITY_B         ( "CE"              ),
767
    .SIM_COLLISION_CHECK    ( "GENERATE_X_ONLY" ),
768
    .SIM_DEVICE             ( "SPARTAN6"        ),
769
    .INIT_A                 ( 36'h000000000     ),
770
    .INIT_B                 ( 36'h000000000     ),
771
    .WRITE_MODE_A           ( "WRITE_FIRST"     ),
772
    .WRITE_MODE_B           ( "WRITE_FIRST"     ),
773
    .SRVAL_B                ( 36'h000000000     ))
774
  u_sram3  (
775
    .REGCEA ( 1'd0                              ),
776
    .CLKA   ( i_clk                             ),
777
    .ENB    ( 1'd0                              ),
778
    .RSTB   ( 1'd0                              ),
779
    .CLKB   ( 1'd0                              ),
780
    .REGCEB ( 1'd0                              ),
781
    .RSTA   ( 1'd0                              ),
782
    .ENA    ( 1'd1                              ),
783
    .DIPA   ( 4'd0                              ),
784
    .WEA    ( wea[15:12]                        ),
785
    .DOA    ( o_read_data[127:96]               ),
786
    .ADDRA  ( {i_address[8:0], 5'd0}            ),
787
    .ADDRB  ( 14'd0                             ),
788
    .DIB    ( 32'd0                             ),
789
    .DOPA   (                                   ),
790
    .DIPB   ( 4'd0                              ),
791
    .DOPB   (                                   ),
792
    .DOB    (                                   ),
793
    .WEB    ( 4'd0                              ),
794
    .DIA    ( i_write_data[127:96]              )
795
  );
796
 
797
 
798
endmodule

powered by: WebSVN 2.1.0

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