Skip to content

Commit 380849c

Browse files
committed
[rtl] Order the ip blocks base on address
Signed-off-by: Douglas Reis <doreis@lowrisc.org>
1 parent 46141e7 commit 380849c

4 files changed

Lines changed: 206 additions & 206 deletions

File tree

data/xbar_main.hjson

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -41,24 +41,24 @@
4141
size_byte: "0x00020000",
4242
}],
4343
},
44-
{ name: "hyperram", // HyperRAM memory
44+
{ name: "rev_tag", // Revocation tag memory
4545
type: "device",
4646
clock: "clk_sys_i",
4747
reset: "rst_sys_ni",
4848
xbar: false,
4949
addr_range: [{
50-
base_addr: "0x40000000",
51-
size_byte: "0x00100000",
50+
base_addr: "0x30000000",
51+
size_byte: "0x00000800",
5252
}],
5353
},
54-
{ name: "rev_tag", // Revocation tag memory
54+
{ name: "hyperram", // HyperRAM memory
5555
type: "device",
5656
clock: "clk_sys_i",
5757
reset: "rst_sys_ni",
5858
xbar: false,
5959
addr_range: [{
60-
base_addr: "0x30000000",
61-
size_byte: "0x00000800",
60+
base_addr: "0x40000000",
61+
size_byte: "0x00100000",
6262
}],
6363
},
6464
{ name: "gpio0",
@@ -208,26 +208,6 @@
208208
size_byte: "0x00010000",
209209
}],
210210
},
211-
{ name: "spi_lcd",
212-
type: "device",
213-
clock: "clk_sys_i",
214-
reset: "rst_sys_ni",
215-
xbar: false,
216-
addr_range: [{
217-
base_addr: "0x80300000",
218-
size_byte: "0x00001000",
219-
}],
220-
},
221-
{ name: "spi_ethmac",
222-
type: "device",
223-
clock: "clk_sys_i",
224-
reset: "rst_sys_ni",
225-
xbar: false,
226-
addr_range: [{
227-
base_addr: "0x80301000",
228-
size_byte: "0x00001000",
229-
}],
230-
},
231211
{ name: "pwm0",
232212
type: "device",
233213
clock: "clk_sys_i",
@@ -336,24 +316,33 @@
336316
size_byte: "0x1000",
337317
}],
338318
},
339-
{ name: "usbdev", // USB device
319+
{ name: "spi_lcd",
340320
type: "device",
341-
clock: "clk_usb_i",
342-
reset: "rst_usb_ni",
321+
clock: "clk_sys_i",
322+
reset: "rst_sys_ni",
343323
xbar: false,
344324
addr_range: [{
345-
base_addr: "0x80400000",
325+
base_addr: "0x80300000",
346326
size_byte: "0x00001000",
347327
}],
348328
},
349-
{ name: "dbg_dev", // Debug module fetch interface
350-
type: "device",
351-
clock: "clk_sys_i",
352-
reset: "rst_sys_ni",
353-
xbar: false,
354-
pipeline: true,
329+
{ name: "spi_ethmac",
330+
type: "device",
331+
clock: "clk_sys_i",
332+
reset: "rst_sys_ni",
333+
xbar: false,
355334
addr_range: [{
356-
base_addr: "0xB0000000",
335+
base_addr: "0x80301000",
336+
size_byte: "0x00001000",
337+
}],
338+
},
339+
{ name: "usbdev", // USB device
340+
type: "device",
341+
clock: "clk_usb_i",
342+
reset: "rst_usb_ni",
343+
xbar: false,
344+
addr_range: [{
345+
base_addr: "0x80400000",
357346
size_byte: "0x00001000",
358347
}],
359348
},
@@ -371,21 +360,29 @@
371360
}],
372361
pipeline: true,
373362
},
363+
{ name: "dbg_dev", // Debug module fetch interface
364+
type: "device",
365+
clock: "clk_sys_i",
366+
reset: "rst_sys_ni",
367+
xbar: false,
368+
pipeline: true,
369+
addr_range: [{
370+
base_addr: "0xB0000000",
371+
size_byte: "0x00001000",
372+
}],
373+
},
374374
],
375375
connections: {
376376
ibex_lsu: [
377377
"sram",
378-
"hyperram",
379378
"rev_tag",
380-
"dbg_dev",
379+
"hyperram",
381380
"pinmux",
382-
"system_info",
383381
"rgbled_ctrl",
384382
"hw_rev",
385383
"xadc",
384+
"system_info",
386385
"timer",
387-
"spi_lcd",
388-
"spi_ethmac",
389386
"gpio0",
390387
"gpio1",
391388
"gpio2",
@@ -401,8 +398,11 @@
401398
"spi0",
402399
"spi1",
403400
"spi2",
401+
"spi_lcd",
402+
"spi_ethmac",
404403
"usbdev",
405404
"rv_plic",
405+
"dbg_dev",
406406
],
407407
dbg_host: [
408408
"sram",

data/xbar_main.hjson.tpl

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -41,24 +41,24 @@
4141
size_byte: "0x00020000",
4242
}],
4343
},
44-
{ name: "hyperram", // HyperRAM memory
44+
{ name: "rev_tag", // Revocation tag memory
4545
type: "device",
4646
clock: "clk_sys_i",
4747
reset: "rst_sys_ni",
4848
xbar: false,
4949
addr_range: [{
50-
base_addr: "0x40000000",
51-
size_byte: "0x00100000",
50+
base_addr: "0x30000000",
51+
size_byte: "0x00000800",
5252
}],
5353
},
54-
{ name: "rev_tag", // Revocation tag memory
54+
{ name: "hyperram", // HyperRAM memory
5555
type: "device",
5656
clock: "clk_sys_i",
5757
reset: "rst_sys_ni",
5858
xbar: false,
5959
addr_range: [{
60-
base_addr: "0x30000000",
61-
size_byte: "0x00000800",
60+
base_addr: "0x40000000",
61+
size_byte: "0x00100000",
6262
}],
6363
},
6464
% for block in config.blocks:
@@ -151,45 +151,45 @@
151151
size_byte: "0x00010000",
152152
}],
153153
},
154-
{ name: "spi_lcd",
154+
% for block in config.blocks:
155+
% if not block.name == "gpio":
156+
% for i in range(block.instances):
157+
{ name: "${f"{block.name}{i}"}",
155158
type: "device",
156159
clock: "clk_sys_i",
157160
reset: "rst_sys_ni",
158161
xbar: false,
159162
addr_range: [{
160-
base_addr: "0x80300000",
161-
size_byte: "0x00001000",
163+
base_addr: "${hex(block.memory_start + i * block.memory_size)}",
164+
size_byte: "${hex(block.memory_size)}",
162165
}],
166+
% for (setting, value) in block.xbar.items():
167+
${setting}: ${value},
168+
% endfor
163169
},
164-
{ name: "spi_ethmac",
170+
% endfor
171+
% endif
172+
% endfor
173+
{ name: "spi_lcd",
165174
type: "device",
166175
clock: "clk_sys_i",
167176
reset: "rst_sys_ni",
168177
xbar: false,
169178
addr_range: [{
170-
base_addr: "0x80301000",
179+
base_addr: "0x80300000",
171180
size_byte: "0x00001000",
172181
}],
173182
},
174-
% for block in config.blocks:
175-
% if not block.name == "gpio":
176-
% for i in range(block.instances):
177-
{ name: "${f"{block.name}{i}"}",
183+
{ name: "spi_ethmac",
178184
type: "device",
179185
clock: "clk_sys_i",
180186
reset: "rst_sys_ni",
181187
xbar: false,
182188
addr_range: [{
183-
base_addr: "${hex(block.memory_start + i * block.memory_size)}",
184-
size_byte: "${hex(block.memory_size)}",
189+
base_addr: "0x80301000",
190+
size_byte: "0x00001000",
185191
}],
186-
% for (setting, value) in block.xbar.items():
187-
${setting}: ${value},
188-
% endfor
189192
},
190-
% endfor
191-
% endif
192-
% endfor
193193
{ name: "usbdev", // USB device
194194
type: "device",
195195
clock: "clk_usb_i",
@@ -200,17 +200,6 @@
200200
size_byte: "0x00001000",
201201
}],
202202
},
203-
{ name: "dbg_dev", // Debug module fetch interface
204-
type: "device",
205-
clock: "clk_sys_i",
206-
reset: "rst_sys_ni",
207-
xbar: false,
208-
pipeline: true,
209-
addr_range: [{
210-
base_addr: "0xB0000000",
211-
size_byte: "0x00001000",
212-
}],
213-
},
214203
{ name: "rv_plic", // RISC-V platform interrupt controller
215204
type: "device",
216205
clock: "clk_sys_i",
@@ -225,28 +214,39 @@
225214
}],
226215
pipeline: true,
227216
},
217+
{ name: "dbg_dev", // Debug module fetch interface
218+
type: "device",
219+
clock: "clk_sys_i",
220+
reset: "rst_sys_ni",
221+
xbar: false,
222+
pipeline: true,
223+
addr_range: [{
224+
base_addr: "0xB0000000",
225+
size_byte: "0x00001000",
226+
}],
227+
},
228228
],
229229
connections: {
230230
ibex_lsu: [
231231
"sram",
232-
"hyperram",
233232
"rev_tag",
234-
"dbg_dev",
233+
"hyperram",
235234
"pinmux",
236-
"system_info",
237235
"rgbled_ctrl",
238236
"hw_rev",
239237
"xadc",
238+
"system_info",
240239
"timer",
241-
"spi_lcd",
242-
"spi_ethmac",
243240
% for block in config.blocks:
244241
% for i in range(block.instances):
245242
"${f"{block.name}{i}"}",
246243
% endfor
247244
% endfor
245+
"spi_lcd",
246+
"spi_ethmac",
248247
"usbdev",
249248
"rv_plic",
249+
"dbg_dev",
250250
],
251251
dbg_host: [
252252
"sram",

0 commit comments

Comments
 (0)