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/] [single_port_ram.IP] - Blame information for rev 38

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

Line No. Rev Author Line
1 25 alirezamon
#######################################################################
2
##      File: single_port_ram.IP
3
##
4
##      Copyright (C) 2014-2016  Alireza Monemi
5
##
6 38 alirezamon
##      This file is part of ProNoC 1.8.0
7 25 alirezamon
##
8
##      WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT
9
##      MAY CAUSE UNEXPECTED BEHAIVOR.
10
################################################################################
11
 
12 38 alirezamon
$ipgen = bless( {
13
                  'description_pdf' => '/mpsoc/src_peripheral/ram/RAM.pdf',
14
                  'unused' => undef,
15
                  'gui_status' => {
16
                                    'timeout' => 0,
17
                                    'status' => 'ideal'
18
                                  },
19
                  'modules' => {
20
                                 'wb_single_port_ram' => {}
21
                               },
22
                  'parameters' => {
23
                                    'Aw' => {
24
                                              'global_param' => 'Parameter',
25
                                              'info' => 'Memory address width',
26
                                              'type' => 'Spin-button',
27
                                              'redefine_param' => 1,
28
                                              'default' => '12',
29
                                              'content' => '4,31,1'
30 25 alirezamon
                                            },
31 38 alirezamon
                                    'INITIAL_EN' => {
32
                                                      'content' => '"YES","NO"',
33
                                                      'redefine_param' => 1,
34
                                                      'default' => '"NO"',
35
                                                      'info' => 'If selected as "ENABLED", the memory content will be initialized at compilation time using MEM_CONTENT_FILE_NAME.',
36
                                                      'type' => 'Combo-box',
37
                                                      'global_param' => 'Localparam'
38
                                                    },
39
                                    'WB_Aw' => {
40
                                                 'global_param' => 'Don\'t include',
41
                                                 'info' => undef,
42
                                                 'type' => 'Fixed',
43
                                                 'redefine_param' => 1,
44
                                                 'default' => 'Aw+2',
45
                                                 'content' => ''
46 34 alirezamon
                                               },
47 38 alirezamon
                                    'BYTE_WR_EN' => {
48
                                                      'info' => 'Byte enable',
49
                                                      'type' => 'Combo-box',
50
                                                      'global_param' => 'Localparam',
51
                                                      'redefine_param' => 1,
52
                                                      'content' => '"YES","NO"',
53
                                                      'default' => '"YES"'
54
                                                    },
55
                                    'TAGw' => {
56
                                                'global_param' => 'Localparam',
57
                                                'info' => 'Parameter',
58
                                                'type' => 'Fixed',
59
                                                'content' => '',
60
                                                'default' => '3',
61
                                                'redefine_param' => 1
62
                                              },
63
                                    'FPGA_VENDOR' => {
64
                                                       'content' => '"ALTERA","GENERIC"',
65
                                                       'redefine_param' => 1,
66
                                                       'default' => '"GENERIC"',
67
                                                       'info' => '',
68
                                                       'type' => 'Combo-box',
69
                                                       'global_param' => 'Localparam'
70
                                                     },
71
                                    'MEM_CONTENT_FILE_NAME' => {
72
                                                                 'default' => '"ram0"',
73
                                                                 'content' => '',
74
                                                                 'redefine_param' => 1,
75
                                                                 'type' => 'Entry',
76
                                                                 'info' => 'MEM_FILE_NAME:
77 34 alirezamon
The memory file name (without file type extension ) that is used for writting the memory content either at run time or at initialization time.
78
 
79
File Path:
80
For bus-based SoC the file path is {ProNoC_work}/SOC/{soc_name}/sw/RAM/{file_type}/{MEM_FILE_NAME}.
81
For NoC-based MPSoC the file path is {ProNoC_work}/MPSOC/{mpsoc_name}/sw/tile{tile_num}/RAM/{file_type}/{MEM_FILE_NAME}
82
 
83
file_type:
84
bin: raw binary format . It will be used by JTAG_WB to change the memory content at runtime.
85
memh: hexadecimal-string format . It will be used for initialing the Generic RAM using $readmemh command.
86
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 . ',
87 38 alirezamon
                                                                 'global_param' => 'Localparam'
88
                                                               },
89
                                    'Dw' => {
90
                                              'content' => '8,1024,1',
91
                                              'redefine_param' => 1,
92
                                              'default' => '32',
93
                                              'global_param' => 'Parameter',
94
                                              'info' => 'Memory data width in Bits.',
95
                                              'type' => 'Spin-button'
96
                                            },
97
                                    'JTAG_INDEX' => {
98
                                                      'content' => '',
99
                                                      'default' => 'CORE_ID',
100
                                                      'redefine_param' => 1,
101
                                                      'info' => '   A unique index number which will be used for accessing to the memory content using JTAG cable.The default value is the processing tile id (CORE_ID) . You can also inter a unique number for each individula memory.
102 34 alirezamon
 
103
   In case you have \'n\' memory in each processing core you can define their index as "n*CORE_ID+1 , n*CORE_ID+2 ...n*CORE_ID+n-1).
104
 
105
   You also can disabled JTAG access here and connect one jtag to wb interface (jtag_wb) to the wishbone bus. Using single jtag index number, a jtag_wb module can read/wr any IP that is connected to wishbone bus slave port (including all memory units).
106
 
107 38 alirezamon
',
108
                                                      'type' => 'Entry',
109
                                                      'global_param' => 'Localparam'
110
                                                    },
111
                                    'CTIw' => {
112
                                                'content' => '',
113
                                                'redefine_param' => 1,
114
                                                'default' => '3',
115
                                                'global_param' => 'Localparam',
116
                                                'type' => 'Fixed',
117
                                                'info' => 'Parameter'
118
                                              },
119
                                    'SELw' => {
120
                                                'content' => '',
121
                                                'redefine_param' => 1,
122
                                                'default' => 'Dw/8',
123
                                                'info' => 'Parameter',
124
                                                'type' => 'Fixed',
125
                                                'global_param' => 'Localparam'
126
                                              },
127
                                    'BURST_MODE' => {
128
                                                      'default' => '"ENABLED"',
129
                                                      'content' => '"DISABLED","ENABLED"',
130
                                                      'redefine_param' => 1,
131
                                                      'info' => 'Enable the Wishbone bus Incrementing burst mode data transfer. Support Linear burst and 4,8,16-beat wrap burst types. ',
132
                                                      'type' => 'Combo-box',
133
                                                      'global_param' => 'Localparam'
134
                                                    },
135
                                    'BTEw' => {
136
                                                'redefine_param' => 1,
137
                                                'default' => '2',
138
                                                'content' => '',
139
                                                'type' => 'Fixed',
140
                                                'info' => 'Parameter',
141
                                                'global_param' => 'Localparam'
142
                                              },
143
                                    'INIT_FILE_PATH' => {
144
                                                          'type' => 'Fixed',
145
                                                          'info' => undef,
146
                                                          'global_param' => 'Localparam',
147
                                                          'content' => '',
148
                                                          'default' => 'SW_LOC',
149
                                                          'redefine_param' => 1
150
                                                        },
151
                                    'JTAG_CONNECT' => {
152
                                                        'type' => 'Combo-box',
153
                                                        'info' => 'JTAG_CONNECT:
154
if it is not disabled then the actual memory is implemented as a dual port RAM with the second port is connected either to In-System Memory Content Editor or Jtag_to_wb. This allows that the memory content can be read/written using JTAG.   ',
155
                                                        'global_param' => 'Localparam',
156
                                                        'default' => '"DISABLED"',
157
                                                        'redefine_param' => 1,
158
                                                        'content' => '"DISABLED", "JTAG_WB" , "ALTERA_IMCE"'
159
                                                      }
160
                                  },
161
                  'version' => 22,
162
                  'ports' => {
163
                               'reset' => {
164
                                            'type' => 'input',
165
                                            'range' => '',
166
                                            'intfc_port' => 'reset_i',
167
                                            'intfc_name' => 'plug:reset[0]'
168
                                          },
169
                               'sa_bte_i' => {
170
                                               'intfc_name' => 'plug:wb_slave[0]',
171
                                               'intfc_port' => 'bte_i',
172
                                               'type' => 'input',
173
                                               'range' => 'BTEw-1     :   0'
174
                                             },
175
                               'sa_ack_o' => {
176
                                               'intfc_name' => 'plug:wb_slave[0]',
177
                                               'intfc_port' => 'ack_o',
178
                                               'range' => '',
179
                                               'type' => 'output'
180
                                             },
181
                               'sa_sel_i' => {
182
                                               'intfc_port' => 'sel_i',
183
                                               'intfc_name' => 'plug:wb_slave[0]',
184
                                               'range' => 'SELw-1     :   0',
185
                                               'type' => 'input'
186
                                             },
187
                               'sa_err_o' => {
188
                                               'type' => 'output',
189
                                               'range' => '',
190
                                               'intfc_name' => 'plug:wb_slave[0]',
191
                                               'intfc_port' => 'err_o'
192
                                             },
193
                               'sa_tag_i' => {
194
                                               'intfc_name' => 'plug:wb_slave[0]',
195
                                               'intfc_port' => 'tag_i',
196
                                               'type' => 'input',
197
                                               'range' => 'TAGw-1     :   0'
198
                                             },
199
                               'sa_dat_i' => {
200
                                               'type' => 'input',
201
                                               'range' => 'Dw-1       :   0',
202
                                               'intfc_port' => 'dat_i',
203
                                               'intfc_name' => 'plug:wb_slave[0]'
204
                                             },
205
                               'sa_cyc_i' => {
206
                                               'intfc_name' => 'plug:wb_slave[0]',
207
                                               'intfc_port' => 'cyc_i',
208
                                               'type' => 'input',
209
                                               'range' => ''
210
                                             },
211
                               'sa_rty_o' => {
212
                                               'intfc_name' => 'plug:wb_slave[0]',
213
                                               'intfc_port' => 'rty_o',
214
                                               'range' => '',
215
                                               'type' => 'output'
216
                                             },
217
                               'sa_cti_i' => {
218
                                               'range' => 'CTIw-1     :   0',
219
                                               'type' => 'input',
220
                                               'intfc_name' => 'plug:wb_slave[0]',
221
                                               'intfc_port' => 'cti_i'
222
                                             },
223
                               'sa_we_i' => {
224
                                              'type' => 'input',
225
                                              'range' => '',
226
                                              'intfc_port' => 'we_i',
227
                                              'intfc_name' => 'plug:wb_slave[0]'
228
                                            },
229
                               'sa_dat_o' => {
230
                                               'intfc_port' => 'dat_o',
231
                                               'intfc_name' => 'plug:wb_slave[0]',
232
                                               'type' => 'output',
233
                                               'range' => 'Dw-1       :   0'
234
                                             },
235
                               'clk' => {
236
                                          'type' => 'input',
237
                                          'range' => '',
238
                                          'intfc_name' => 'plug:clk[0]',
239
                                          'intfc_port' => 'clk_i'
240
                                        },
241
                               'sa_stb_i' => {
242
                                               'intfc_name' => 'plug:wb_slave[0]',
243
                                               'intfc_port' => 'stb_i',
244
                                               'range' => '',
245
                                               'type' => 'input'
246
                                             },
247
                               'sa_addr_i' => {
248
                                                'intfc_port' => 'adr_i',
249
                                                'intfc_name' => 'plug:wb_slave[0]',
250
                                                'range' => 'Aw-1       :   0',
251
                                                'type' => 'input'
252
                                              }
253
                             },
254
                  'parameters_order' => [
255
                                          'Dw',
256
                                          'Aw',
257
                                          'BYTE_WR_EN',
258
                                          'FPGA_VENDOR',
259
                                          'JTAG_CONNECT',
260
                                          'JTAG_INDEX',
261
                                          'TAGw',
262
                                          'SELw',
263
                                          'CTIw',
264
                                          'BTEw',
265
                                          'WB_Aw',
266
                                          'BURST_MODE',
267
                                          'MEM_CONTENT_FILE_NAME',
268
                                          'INITIAL_EN',
269
                                          'INIT_FILE_PATH'
270
                                        ],
271
                  'plugs' => {
272
                               'reset' => {
273
                                            '0' => {
274
                                                     'name' => 'reset'
275
                                                   },
276
                                            'type' => 'num',
277
                                            'value' => 1,
278
                                            'reset' => {}
279
                                          },
280
                               'wb_slave' => {
281
                                               'type' => 'num',
282
                                               '0' => {
283
                                                        'name' => 'wb',
284
                                                        'addr' => '0x0000_0000  0x3fff_ffff             RAM',
285
                                                        'width' => 'WB_Aw'
286
                                                      },
287
                                               'wb_slave' => {},
288
                                               'value' => 1
289
                                             },
290
                               'clk' => {
291
                                          'value' => 1,
292
                                          'clk' => {},
293
                                          'type' => 'num',
294
                                          '0' => {
295
                                                   'name' => 'clk'
296
                                                 }
297
                                        }
298
                             },
299
                  'hdl_files' => [
300
                                   '/mpsoc/src_peripheral/ram/wb_single_port_ram.v',
301
                                   '/mpsoc/src_peripheral/ram/generic_ram.v',
302
                                   '/mpsoc/src_peripheral/ram/byte_enabled_generic_ram.sv',
303
                                   '/mpsoc/src_peripheral/ram/wb_bram_ctrl.v'
304
                                 ],
305
                  'ip_name' => 'single_port_ram',
306
                  'ports_order' => [
307
                                     'clk',
308
                                     'reset',
309
                                     'sa_dat_i',
310
                                     'sa_sel_i',
311
                                     'sa_addr_i',
312
                                     'sa_tag_i',
313
                                     'sa_cti_i',
314
                                     'sa_bte_i',
315
                                     'sa_stb_i',
316
                                     'sa_cyc_i',
317
                                     'sa_we_i',
318
                                     'sa_dat_o',
319
                                     'sa_ack_o',
320
                                     'sa_err_o',
321
                                     'sa_rty_o'
322
                                   ],
323
                  'module_name' => 'wb_single_port_ram',
324
                  'description' => 'Single port ram with wishbone bus interface.',
325
                  'file_name' => '/home/alireza/Mywork/mpsoc/src_peripheral/ram/wb_single_port_ram.v',
326
                  'category' => 'RAM'
327
                }, 'ip_gen' );

powered by: WebSVN 2.1.0

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