|
1 | 1 | `include "udp.rdl" |
| 2 | +`include "sonata_udp.rdl" |
2 | 3 | `include "../rtl/ip/system_info/data/system_info.rdl" |
3 | 4 | `include "../rtl/ip/spi/data/spi.rdl" |
4 | 5 | `include "../rtl/ip/rgbled_ctrl/data/rgbled_ctrl.rdl" |
|
7 | 8 | `include "../rtl/ip/usbdev/data/usbdev.rdl" |
8 | 9 | `include "../rtl/ip/i2c/data/i2c.rdl" |
9 | 10 | `include "../rtl/ip/uart/data/uart.rdl" |
10 | | -`include "../rtl/system/autogen/rv_plic/data/rv_plic.rdl" |
| 11 | +`include "../rtl/ip/xadc/data/xadc.rdl" |
| 12 | +`include "../rtl/ip/rev_ctl/data/rev_ctl.rdl" |
| 13 | +`include "../rtl/system/data/rv_plic.rdl" |
| 14 | +`include "../rtl/system/data/pinmux.rdl" |
| 15 | +`include "../rtl/system/data/rv_timer.rdl" |
11 | 16 |
|
12 | 17 | addrmap top_sonata { |
13 | | - external mem sram { memwidth = 0x20000; } SRAM @ 0x00100000; |
14 | | - external mem hyperram { memwidth = 0x100000; } HYPERRAM @ 0x40000000; |
15 | | - external mem rev_tag { memwidth = 0x800; } REV_TAG @ 0x30000000; |
| 18 | + external mem sram { |
| 19 | + mementries = 0x20000; memwidth=8; |
| 20 | + clk_input = '{ "clk_sys_i" }; |
| 21 | + rst_input = '{ "rst_sys_ni" }; |
| 22 | + } SRAM @ 0x00100000; |
| 23 | + |
| 24 | + external mem hyperram { |
| 25 | + mementries = 0x100000; memwidth=8; |
| 26 | + clk_input = '{ "clk_sys_i" }; |
| 27 | + rst_input = '{ "rst_sys_ni" }; |
| 28 | + } HYPERRAM @ 0x40000000; |
| 29 | + |
| 30 | + external mem rev_tag { |
| 31 | + mementries = 0x800; memwidth=8; |
| 32 | + clk_input = '{ "clk_sys_i" }; |
| 33 | + rst_input = '{ "rst_sys_ni" }; |
| 34 | + } REV_TAG @ 0x30000000; |
| 35 | + |
16 | 36 | gpio GPIO @ 0x80000000; |
17 | | - gpio GPIO_RPI @ 0x80000040; |
18 | | - gpio GPIO_ARDUINO @ 0x80000080; |
19 | | - gpio GPIO_PMOD[2] @ 0x800000C0 += 0x40; |
20 | | - gpio GPIO_PMODC @ 0x80000140; |
21 | | - pwm PWM[6] @ 0x80001000 += 0x08; |
22 | | - pwm PWM_LCD; |
| 37 | + |
| 38 | + pwm PWM @ 0x80001000; |
| 39 | + |
| 40 | + pinmux PINMUX @ 0x80005000; |
| 41 | + |
23 | 42 | rgbled_ctrl RGBLED_CTRL @ 0x80009000; |
| 43 | + |
| 44 | + rev_ctl HW_REV @ 0x8000A000; |
| 45 | + |
| 46 | + xadc XADC @ 0x8000B000; |
| 47 | + |
24 | 48 | system_info SYSTEM_INFO @ 0x8000C000; |
| 49 | + |
| 50 | + rv_timer TIMER @ 0x80040000; |
| 51 | + |
25 | 52 | uart uart[3] @ 0x80100000 += 0x1000; |
| 53 | + |
26 | 54 | i2c I2C[2] @ 0x80200000 += 0x1000; |
| 55 | + |
27 | 56 | spi SPI_LCD @ 0x80300000; |
| 57 | + |
28 | 58 | spi SPI_ETHMAC @ 0x80301000; |
| 59 | + |
29 | 60 | spi SPI[3] @ 0x80302000 += 0x1000; |
| 61 | + |
30 | 62 | usbdev USBDEV @ 0x80400000; |
| 63 | + |
| 64 | + // This block is overaligned to 0x0800_0000 bytes since OpenTitan RV_PLIC block expects it. |
31 | 65 | rv_plic RV_PLIC @ 0x88000000; |
32 | | - external mem dgb_dev { memwidth = 0x1000; } DBG_DEV @ 0xB0000000; |
| 66 | + |
| 67 | + external mem dgb_dev { |
| 68 | + mementries = 0x1000; memwidth=8; |
| 69 | + xbar = '{ parameter'{ type_: "bool", name: "pipeline", value: "true" }}; |
| 70 | + clk_input = '{ "clk_sys_i" }; |
| 71 | + rst_input = '{ "rst_sys_ni" }; |
| 72 | + } DBG_DEV @ 0xB0000000; |
33 | 73 | }; |
34 | 74 |
|
0 commit comments