OpenCores
URL https://opencores.org/ocsvn/an-fpga-implementation-of-low-latency-noc-based-mpsoc/an-fpga-implementation-of-low-latency-noc-based-mpsoc/trunk

Subversion Repositories an-fpga-implementation-of-low-latency-noc-based-mpsoc

[/] [an-fpga-implementation-of-low-latency-noc-based-mpsoc/] [trunk/] [mpsoc/] [perl_gui/] [lib/] [ip/] [RAM/] [dual_port_ram.IP] - Blame information for rev 48

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 25 alirezamon
#######################################################################
2
##      File: dual_port_ram.IP
3
##
4 48 alirezamon
##      Copyright (C) 2014-2019  Alireza Monemi
5 25 alirezamon
##
6 48 alirezamon
##      This file is part of ProNoC 1.9.1
7 25 alirezamon
##
8
##      WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT
9 48 alirezamon
##      MAY CAUSE UNEXPECTED BEHAVIOR.
10 25 alirezamon
################################################################################
11
 
12 38 alirezamon
$ipgen = bless( {
13
                  'modules' => {
14
                                 'wb_dual_port_ram' => {}
15
                               },
16
                  'ip_name' => 'dual_port_ram',
17 48 alirezamon
                  'gui_status' => {
18
                                    'timeout' => 0,
19
                                    'status' => 'ideal'
20 38 alirezamon
                                  },
21 48 alirezamon
                  'file_name' => 'mpsoc/rtl/src_peripheral/ram/wb_dual_port_ram.v',
22 38 alirezamon
                  'ports' => {
23 48 alirezamon
                               'clk' => {
24
                                          'intfc_port' => 'clk_i',
25
                                          'type' => 'input',
26
                                          'intfc_name' => 'plug:clk[0]',
27
                                          'range' => ''
28
                                        },
29
                               'sb_sel_i' => {
30
                                               'type' => 'input',
31
                                               'intfc_port' => 'sel_i',
32
                                               'intfc_name' => 'plug:wb_slave[1]',
33
                                               'range' => 'SELw-1     :   0'
34
                                             },
35
                               'sb_err_o' => {
36
                                               'type' => 'output',
37
                                               'intfc_port' => 'err_o',
38
                                               'intfc_name' => 'plug:wb_slave[1]',
39
                                               'range' => ''
40
                                             },
41
                               'sa_we_i' => {
42
                                              'intfc_port' => 'we_i',
43 38 alirezamon
                                              'type' => 'input',
44 48 alirezamon
                                              'intfc_name' => 'plug:wb_slave[0]',
45
                                              'range' => ''
46 38 alirezamon
                                            },
47 48 alirezamon
                               'sa_err_o' => {
48
                                               'range' => '',
49
                                               'intfc_name' => 'plug:wb_slave[0]',
50 38 alirezamon
                                               'intfc_port' => 'err_o',
51 48 alirezamon
                                               'type' => 'output'
52 34 alirezamon
                                             },
53 48 alirezamon
                               'sb_stb_i' => {
54
                                               'type' => 'input',
55
                                               'intfc_port' => 'stb_i',
56
                                               'intfc_name' => 'plug:wb_slave[1]',
57 38 alirezamon
                                               'range' => ''
58 34 alirezamon
                                             },
59 48 alirezamon
                               'sa_dat_o' => {
60
                                               'type' => 'output',
61
                                               'intfc_port' => 'dat_o',
62
                                               'range' => 'Dw-1       :   0',
63
                                               'intfc_name' => 'plug:wb_slave[0]'
64
                                             },
65
                               'sa_cyc_i' => {
66
                                               'type' => 'input',
67
                                               'intfc_port' => 'cyc_i',
68
                                               'range' => '',
69
                                               'intfc_name' => 'plug:wb_slave[0]'
70
                                             },
71 38 alirezamon
                               'sa_ack_o' => {
72
                                               'intfc_name' => 'plug:wb_slave[0]',
73 48 alirezamon
                                               'range' => '',
74 38 alirezamon
                                               'intfc_port' => 'ack_o',
75
                                               'type' => 'output'
76
                                             },
77 48 alirezamon
                               'reset' => {
78
                                            'intfc_name' => 'plug:reset[0]',
79
                                            'range' => '',
80
                                            'intfc_port' => 'reset_i',
81
                                            'type' => 'input'
82
                                          },
83
                               'sb_we_i' => {
84
                                              'range' => '',
85
                                              'intfc_name' => 'plug:wb_slave[1]',
86
                                              'type' => 'input',
87
                                              'intfc_port' => 'we_i'
88
                                            },
89
                               'sb_cti_i' => {
90
                                               'range' => 'CTIw-1     :   0',
91
                                               'intfc_name' => 'plug:wb_slave[1]',
92
                                               'type' => 'input',
93
                                               'intfc_port' => 'cti_i'
94 38 alirezamon
                                             },
95 48 alirezamon
                               'sa_bte_i' => {
96
                                               'range' => 'BTEw-1     :   0',
97
                                               'intfc_name' => 'plug:wb_slave[0]',
98 38 alirezamon
                                               'type' => 'input',
99 48 alirezamon
                                               'intfc_port' => 'bte_i'
100 38 alirezamon
                                             },
101 48 alirezamon
                               'sa_cti_i' => {
102
                                               'type' => 'input',
103
                                               'intfc_port' => 'cti_i',
104
                                               'intfc_name' => 'plug:wb_slave[0]',
105
                                               'range' => 'CTIw-1     :   0'
106
                                             },
107 38 alirezamon
                               'sa_tag_i' => {
108
                                               'type' => 'input',
109 48 alirezamon
                                               'intfc_port' => 'tag_i',
110 38 alirezamon
                                               'range' => 'TAGw-1     :   0',
111
                                               'intfc_name' => 'plug:wb_slave[0]'
112
                                             },
113 48 alirezamon
                               'sb_tag_i' => {
114
                                               'intfc_port' => 'tag_i',
115 38 alirezamon
                                               'type' => 'input',
116 48 alirezamon
                                               'range' => 'TAGw-1     :   0',
117
                                               'intfc_name' => 'plug:wb_slave[1]'
118 38 alirezamon
                                             },
119
                               'sb_bte_i' => {
120 48 alirezamon
                                               'intfc_name' => 'plug:wb_slave[1]',
121 38 alirezamon
                                               'range' => 'BTEw-1     :   0',
122
                                               'intfc_port' => 'bte_i',
123 48 alirezamon
                                               'type' => 'input'
124 38 alirezamon
                                             },
125
                               'sb_cyc_i' => {
126
                                               'intfc_name' => 'plug:wb_slave[1]',
127 48 alirezamon
                                               'range' => '',
128 38 alirezamon
                                               'type' => 'input',
129
                                               'intfc_port' => 'cyc_i'
130
                                             },
131 48 alirezamon
                               'sa_dat_i' => {
132
                                               'range' => 'Dw-1       :   0',
133
                                               'intfc_name' => 'plug:wb_slave[0]',
134 38 alirezamon
                                               'type' => 'input',
135 48 alirezamon
                                               'intfc_port' => 'dat_i'
136 38 alirezamon
                                             },
137 48 alirezamon
                               'sb_dat_o' => {
138
                                               'intfc_port' => 'dat_o',
139
                                               'type' => 'output',
140
                                               'intfc_name' => 'plug:wb_slave[1]',
141
                                               'range' => 'Dw-1       :   0'
142 38 alirezamon
                                             },
143
                               'sb_dat_i' => {
144 48 alirezamon
                                               'type' => 'input',
145 38 alirezamon
                                               'intfc_port' => 'dat_i',
146
                                               'intfc_name' => 'plug:wb_slave[1]',
147 48 alirezamon
                                               'range' => 'Dw-1       :   0'
148 38 alirezamon
                                             },
149 48 alirezamon
                               'sb_addr_i' => {
150
                                                'range' => 'Aw-1       :   0',
151
                                                'intfc_name' => 'plug:wb_slave[1]',
152
                                                'intfc_port' => 'adr_i',
153
                                                'type' => 'input'
154
                                              },
155
                               'sb_rty_o' => {
156
                                               'intfc_port' => 'rty_o',
157 38 alirezamon
                                               'type' => 'output',
158
                                               'range' => '',
159
                                               'intfc_name' => 'plug:wb_slave[1]'
160
                                             },
161 48 alirezamon
                               'sa_addr_i' => {
162
                                                'type' => 'input',
163
                                                'intfc_port' => 'adr_i',
164
                                                'range' => 'Aw-1       :   0',
165
                                                'intfc_name' => 'plug:wb_slave[0]'
166
                                              },
167
                               'sa_rty_o' => {
168
                                               'type' => 'output',
169
                                               'intfc_port' => 'rty_o',
170
                                               'range' => '',
171 38 alirezamon
                                               'intfc_name' => 'plug:wb_slave[0]'
172
                                             },
173 48 alirezamon
                               'sa_stb_i' => {
174
                                               'intfc_name' => 'plug:wb_slave[0]',
175 38 alirezamon
                                               'range' => '',
176
                                               'intfc_port' => 'stb_i',
177 48 alirezamon
                                               'type' => 'input'
178 38 alirezamon
                                             },
179 48 alirezamon
                               'sa_sel_i' => {
180
                                               'range' => 'SELw-1     :   0',
181 38 alirezamon
                                               'intfc_name' => 'plug:wb_slave[0]',
182 48 alirezamon
                                               'intfc_port' => 'sel_i',
183
                                               'type' => 'input'
184 38 alirezamon
                                             },
185 48 alirezamon
                               'sb_ack_o' => {
186 38 alirezamon
                                               'range' => '',
187
                                               'intfc_name' => 'plug:wb_slave[1]',
188
                                               'type' => 'output',
189 48 alirezamon
                                               'intfc_port' => 'ack_o'
190 38 alirezamon
                                             }
191
                             },
192 48 alirezamon
                  'description' => 'Dual port ram.',
193
                  'parameters' => {
194
                                    'FPGA_VENDOR' => {
195
                                                       'info' => 'Parameter',
196
                                                       'redefine_param' => 1,
197
                                                       'default' => '"GENERIC"',
198
                                                       'content' => '"ALTERA","XILINX","GENERIC"',
199
                                                       'global_param' => 'Localparam',
200
                                                       'type' => 'Combo-box'
201
                                                     },
202
                                    'Dw' => {
203
                                              'content' => '4,1024,1',
204
                                              'global_param' => 'Localparam',
205
                                              'type' => 'Spin-button',
206
                                              'info' => 'Ram data width in Bits',
207
                                              'default' => '32',
208
                                              'redefine_param' => 1
209
                                            },
210
                                    'INIT_FILE_PATH' => {
211
                                                          'content' => '',
212
                                                          'global_param' => 'Don\'t include',
213
                                                          'type' => 'Fixed',
214
                                                          'info' => undef,
215
                                                          'default' => 'SW_LOC',
216
                                                          'redefine_param' => 1
217
                                                        },
218
                                    'BYTE_WR_EN' => {
219
                                                      'redefine_param' => 1,
220
                                                      'default' => '"YES"',
221
                                                      'info' => 'Parameter',
222
                                                      'type' => 'Combo-box',
223
                                                      'global_param' => 'Localparam',
224
                                                      'content' => '"YES","NO"'
225
                                                    },
226
                                    'PORT_A_BURST_MODE' => {
227
                                                             'default' => '"ENABLED"',
228
                                                             'redefine_param' => 1,
229
                                                             'info' => ' wisbone bus burst mode enable/disable on port A',
230
                                                             'content' => '"DISABLED","ENABLED"',
231
                                                             'type' => 'Combo-box',
232
                                                             'global_param' => 'Localparam'
233
                                                           },
234
                                    'INITIAL_EN' => {
235
                                                      'info' => 'If selected as "YES", the memory content will be initialized at compilation time using MEM_CONTENT_FILE_NAME.',
236
                                                      'redefine_param' => 1,
237
                                                      'default' => '"NO"',
238
                                                      'content' => '"YES","NO"',
239
                                                      'global_param' => 'Localparam',
240
                                                      'type' => 'Combo-box'
241
                                                    },
242
                                    'BTEw' => {
243
                                                'default' => '2',
244
                                                'redefine_param' => 1,
245
                                                'info' => 'Parameter',
246
                                                'type' => 'Fixed',
247
                                                'global_param' => 'Localparam',
248
                                                'content' => ''
249
                                              },
250
                                    'CTIw' => {
251
                                                'info' => 'Parameter',
252
                                                'default' => '3',
253
                                                'redefine_param' => 1,
254
                                                'global_param' => 'Localparam',
255
                                                'type' => 'Fixed',
256
                                                'content' => ''
257
                                              },
258
                                    'WB_Byte_Aw' => {
259
                                                      'global_param' => 'Don\'t include',
260
                                                      'type' => 'Fixed',
261
                                                      'content' => '',
262
                                                      'info' => 'Wishbone bus address width in byte',
263
                                                      'redefine_param' => 0,
264
                                                      'default' => 'WB_Aw+2'
265
                                                    },
266
                                    'WB_Aw' => {
267
                                                 'content' => '4,31,1',
268
                                                 'global_param' => 'Localparam',
269
                                                 'type' => 'Spin-button',
270
                                                 'info' => 'Wishbon bus reserved address with range. The reserved address will be 2 pow(WB_Aw) in words. This value should be larger or eqal than memory address width (Aw).',
271
                                                 'default' => '20',
272
                                                 'redefine_param' => 1
273
                                               },
274
                                    'MEM_CONTENT_FILE_NAME' => {
275
                                                                 'global_param' => 'Localparam',
276
                                                                 'type' => 'Entry',
277
                                                                 'content' => '',
278
                                                                 'info' => 'MEM_FILE_NAME:
279
The memory file name (without file type extension ) that is used for writting the memory content at initialization time.
280
 
281
File Path:
282
For bus-based SoC the file path is {ProNoC_work}/SOC/{soc_name}/sw/RAM/{file_type}/{MEM_FILE_NAME}.
283
For NoC-based MPSoC the file path is {ProNoC_work}/MPSOC/{mpsoc_name}/sw/tile{tile_num}/RAM/{file_type}/{MEM_FILE_NAME}
284
 
285
file_type:
286
memh: hexadecimal-string format . It will be used for initialing the Generic RAM using $readmemh command.
287
mif: memory initialization file format. This file can be used to initialize Altera FPGA memory. Also if the JTAG_CONECT is selected as ALTERA_IEMC it can be used for changing memory content at run time . ',
288
                                                                 'default' => '"ram0"',
289
                                                                 'redefine_param' => 1
290
                                                               },
291
                                    'RAM_INDEX' => {
292
                                                     'type' => 'Entry',
293
                                                     'global_param' => 'Localparam',
294
                                                     'content' => '',
295
                                                     'default' => 'CORE_ID',
296
                                                     'redefine_param' => 1,
297
                                                     'info' => 'RAM_INDEX is a unique number which will be used for initialing the memory content only.
298
 
299
'
300
                                                   },
301
                                    'CORE_NUM' => {
302
                                                    'content' => '',
303
                                                    'type' => 'Fixed',
304
                                                    'global_param' => 'Localparam',
305
                                                    'redefine_param' => 1,
306
                                                    'default' => 'CORE_ID',
307
                                                    'info' => 'Parameter'
308
                                                  },
309
                                    'Aw' => {
310
                                              'info' => 'Ram address width',
311
                                              'redefine_param' => 1,
312
                                              'default' => '12',
313
                                              'global_param' => 'Localparam',
314
                                              'type' => 'Spin-button',
315
                                              'content' => '2,31,1'
316
                                            },
317
                                    'TAGw' => {
318
                                                'info' => 'Parameter',
319
                                                'redefine_param' => 1,
320
                                                'default' => '3',
321
                                                'global_param' => 'Localparam',
322
                                                'type' => 'Fixed',
323
                                                'content' => ''
324
                                              },
325
                                    'PORT_B_BURST_MODE' => {
326
                                                             'info' => 'wisbone bus burst mode ebable/disable on port B',
327
                                                             'redefine_param' => 1,
328
                                                             'default' => '"ENABLED"',
329
                                                             'content' => '"DISABLED","ENABLED"',
330
                                                             'global_param' => 'Localparam',
331
                                                             'type' => 'Combo-box'
332
                                                           },
333
                                    'SELw' => {
334
                                                'content' => '',
335
                                                'type' => 'Fixed',
336
                                                'global_param' => 'Localparam',
337
                                                'redefine_param' => 1,
338
                                                'default' => 'Dw/8',
339
                                                'info' => 'Parameter'
340
                                              }
341
                                  },
342
                  'parameters_order' => [
343
                                          'Dw',
344
                                          'Aw',
345
                                                                                  'WB_Aw',
346
                                          'BYTE_WR_EN',
347
                                          'FPGA_VENDOR',
348
                                          'CORE_NUM',
349
                                          'TAGw',
350
                                          'SELw',
351
                                          'CTIw',
352
                                          'BTEw',
353
                                          'WB_Byte_Aw',
354
                                          'RAM_INDEX',
355
                                          'PORT_A_BURST_MODE',
356
                                          'PORT_B_BURST_MODE',
357
                                          'INITIAL_EN',
358
                                          'MEM_CONTENT_FILE_NAME',
359
                                          'INIT_FILE_PATH'
360
 
361
                                        ],
362
                  'version' => 11,
363
                  'description_pdf' => '/mpsoc/rtl/src_peripheral/ram/RAM.pdf',
364
                  'plugs' => {
365
                               'clk' => {
366
                                          '0' => {
367
                                                   'name' => 'clk'
368
                                                 },
369
                                          'type' => 'num',
370
                                          'value' => 1,
371
                                          'clk' => {}
372
                                        },
373
                               'wb_slave' => {
374
                                               '1' => {
375
                                                        'name' => 'wb_b',
376
                                                        'width' => 'WB_Byte_Aw',
377
                                                        'addr' => '0x0000_0000  0x3fff_ffff             RAM'
378
                                                      },
379
                                               '0' => {
380
                                                        'name' => 'wb_a',
381
                                                        'addr' => '0x0000_0000  0x3fff_ffff             RAM',
382
                                                        'width' => 'WB_Byte_Aw'
383
                                                      },
384
                                               'wb_slave' => {},
385
                                               'value' => 2,
386
                                               'type' => 'num'
387
                                             },
388
                               'reset' => {
389
                                            'reset' => {},
390
                                            'type' => 'num',
391
                                            'value' => 1,
392
                                            '0' => {
393
                                                     'name' => 'reset'
394
                                                   }
395
                                          }
396
                             },
397
                  'category' => 'RAM',
398
                  'unused' => undef,
399
                  'module_name' => 'wb_dual_port_ram',
400
                  'hdl_files' => [
401
                                   '/mpsoc/rtl/src_peripheral/ram/generic_ram.v',
402
                                   '/mpsoc/rtl/src_peripheral/ram/byte_enabled_generic_ram.sv',
403
                                   '/mpsoc/rtl/src_peripheral/ram/wb_dual_port_ram.v',
404
                                   '/mpsoc/rtl/src_peripheral/ram/wb_bram_ctrl.v'
405
                                 ],
406
                  'ports_order' => [
407
                                     'clk',
408
                                     'reset',
409
                                     'sa_dat_i',
410
                                     'sa_sel_i',
411
                                     'sa_addr_i',
412
                                     'sa_tag_i',
413
                                     'sa_cti_i',
414
                                     'sa_bte_i',
415
                                     'sa_stb_i',
416
                                     'sa_cyc_i',
417
                                     'sa_we_i',
418
                                     'sa_dat_o',
419
                                     'sa_ack_o',
420
                                     'sa_err_o',
421
                                     'sa_rty_o',
422
                                     'sb_dat_i',
423
                                     'sb_sel_i',
424
                                     'sb_addr_i',
425
                                     'sb_tag_i',
426
                                     'sb_cti_i',
427
                                     'sb_bte_i',
428
                                     'sb_stb_i',
429
                                     'sb_cyc_i',
430
                                     'sb_we_i',
431
                                     'sb_dat_o',
432
                                     'sb_ack_o',
433
                                     'sb_err_o',
434
                                     'sb_rty_o'
435
                                   ]
436 38 alirezamon
                }, 'ip_gen' );

powered by: WebSVN 2.1.0

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