|
41 | 41 | size_byte: "0x00020000", |
42 | 42 | }], |
43 | 43 | }, |
44 | | - { name: "hyperram", // HyperRAM memory |
| 44 | + { name: "rev_tag", // Revocation tag memory |
45 | 45 | type: "device", |
46 | 46 | clock: "clk_sys_i", |
47 | 47 | reset: "rst_sys_ni", |
48 | 48 | xbar: false, |
49 | 49 | addr_range: [{ |
50 | | - base_addr: "0x40000000", |
51 | | - size_byte: "0x00100000", |
| 50 | + base_addr: "0x30000000", |
| 51 | + size_byte: "0x00000800", |
52 | 52 | }], |
53 | 53 | }, |
54 | | - { name: "rev_tag", // Revocation tag memory |
| 54 | + { name: "hyperram", // HyperRAM memory |
55 | 55 | type: "device", |
56 | 56 | clock: "clk_sys_i", |
57 | 57 | reset: "rst_sys_ni", |
58 | 58 | xbar: false, |
59 | 59 | addr_range: [{ |
60 | | - base_addr: "0x30000000", |
61 | | - size_byte: "0x00000800", |
| 60 | + base_addr: "0x40000000", |
| 61 | + size_byte: "0x00100000", |
62 | 62 | }], |
63 | 63 | }, |
64 | 64 | % for block in config.blocks: |
|
151 | 151 | size_byte: "0x00010000", |
152 | 152 | }], |
153 | 153 | }, |
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}"}", |
155 | 158 | type: "device", |
156 | 159 | clock: "clk_sys_i", |
157 | 160 | reset: "rst_sys_ni", |
158 | 161 | xbar: false, |
159 | 162 | 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)}", |
162 | 165 | }], |
| 166 | + % for (setting, value) in block.xbar.items(): |
| 167 | + ${setting}: ${value}, |
| 168 | + % endfor |
163 | 169 | }, |
164 | | - { name: "spi_ethmac", |
| 170 | + % endfor |
| 171 | + % endif |
| 172 | + % endfor |
| 173 | + { name: "spi_lcd", |
165 | 174 | type: "device", |
166 | 175 | clock: "clk_sys_i", |
167 | 176 | reset: "rst_sys_ni", |
168 | 177 | xbar: false, |
169 | 178 | addr_range: [{ |
170 | | - base_addr: "0x80301000", |
| 179 | + base_addr: "0x80300000", |
171 | 180 | size_byte: "0x00001000", |
172 | 181 | }], |
173 | 182 | }, |
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", |
178 | 184 | type: "device", |
179 | 185 | clock: "clk_sys_i", |
180 | 186 | reset: "rst_sys_ni", |
181 | 187 | xbar: false, |
182 | 188 | 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", |
185 | 191 | }], |
186 | | - % for (setting, value) in block.xbar.items(): |
187 | | - ${setting}: ${value}, |
188 | | - % endfor |
189 | 192 | }, |
190 | | - % endfor |
191 | | - % endif |
192 | | - % endfor |
193 | 193 | { name: "usbdev", // USB device |
194 | 194 | type: "device", |
195 | 195 | clock: "clk_usb_i", |
|
200 | 200 | size_byte: "0x00001000", |
201 | 201 | }], |
202 | 202 | }, |
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 | | - }, |
214 | 203 | { name: "rv_plic", // RISC-V platform interrupt controller |
215 | 204 | type: "device", |
216 | 205 | clock: "clk_sys_i", |
|
225 | 214 | }], |
226 | 215 | pipeline: true, |
227 | 216 | }, |
| 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 | + }, |
228 | 228 | ], |
229 | 229 | connections: { |
230 | 230 | ibex_lsu: [ |
231 | 231 | "sram", |
232 | | - "hyperram", |
233 | 232 | "rev_tag", |
234 | | - "dbg_dev", |
| 233 | + "hyperram", |
235 | 234 | "pinmux", |
236 | | - "system_info", |
237 | 235 | "rgbled_ctrl", |
238 | 236 | "hw_rev", |
239 | 237 | "xadc", |
| 238 | + "system_info", |
240 | 239 | "timer", |
241 | | - "spi_lcd", |
242 | | - "spi_ethmac", |
243 | 240 | % for block in config.blocks: |
244 | 241 | % for i in range(block.instances): |
245 | 242 | "${f"{block.name}{i}"}", |
246 | 243 | % endfor |
247 | 244 | % endfor |
| 245 | + "spi_lcd", |
| 246 | + "spi_ethmac", |
248 | 247 | "usbdev", |
249 | 248 | "rv_plic", |
| 249 | + "dbg_dev", |
250 | 250 | ], |
251 | 251 | dbg_host: [ |
252 | 252 | "sram", |
|
0 commit comments