diff --git a/sitemap.xml.gz b/sitemap.xml.gz index 137e864c..db5c0e3a 100644 Binary files a/sitemap.xml.gz and b/sitemap.xml.gz differ diff --git a/tg/synth/index.html b/tg/synth/index.html index 829a2daa..a84a6cfb 100644 --- a/tg/synth/index.html +++ b/tg/synth/index.html @@ -650,6 +650,19 @@
Given Carfield's complexity and heterogeneity, in the following we provide an overview of Carfield's on-chip memory requirements to help ASIC developers who wants to implement Carfield or integrate it into larger platforms.
+Carfield makes large use of scratchpad memories (SPM), implemented as SRAMs and explicitely managed +in SW. To help the reader, we consider an SPM as described by the following parameters:
+NumWords
: The number of words. Assuming the SPM as a matrix, it corresponds to the number of
+ rows. Assuming the domain's memory system has address width AddrWidth
, then NumWords =
+ 2**(AddrWidth)
, i.e. 2**AddrWidth
data words can be addressed.DataWidth
: The data width of a word in the domain's memory system. Typically, it is 32-bit
+ or 64-bit. If ECC is implemented, it is larger to account for the extra bits.NumBanks
: number of banks of size (NumWords*DataWidth)/8
B.The total size is computed as
+Total size [B] = (NumWords * DataWidth [bit] * NumBanks)/8 [B]
+
TODO
diff --git a/um/arch/index.html b/um/arch/index.html index 5ef49952..35213fc1 100644 --- a/um/arch/index.html +++ b/um/arch/index.html @@ -1211,8 +1211,8 @@This section shows Carfield's memory map. The group This section shows Carfield's memory map. The group Internal to Cheshire
in the table below
-mirrors the memory map described in the dedicatd documentation for
+Internal to Cheshire
in the table below only
+recalls the memory map described in the dedicatd documentation for
Cheshire and is explicitely shown here for
clarity.
End Address (excl.) | Length | Size | +Permissions | +Cacheable | +Atomics | Region | Device | @@ -1234,12 +1237,18 @@+ | + | + |
---|---|---|---|---|---|---|---|---|---|
0x0000_0000 |
0x0004_0000 |
0x04_0000 |
256 KiB | +(debug) | ++ | Debug | Debug CVA6 | 0x0100_0000 |
+ | + | + | Reserved | @@ -1256,6 +1268,9 @@ | 0x0100_1000 |
0x00_1000 |
4 KiB | +rw | ++ | Config | AXI DMA Config | @@ -1264,6 +1279,9 @@0x0200_0000 |
+ | + | + | Reserved | @@ -1272,6 +1290,9 @@ | 0x0204_0000 |
0x04_0000 |
256 KiB | +rx | ++ | Memory | Boot ROM | @@ -1280,6 +1301,9 @@0x0208_0000 |
0x04_0000 |
256 KiB | +rw | ++ | Irq | CLINT | @@ -1288,6 +1312,9 @@0x020c_0000 |
0x04_0000 |
256 KiB | +rw | ++ | Irq | IRQ Routing | @@ -1296,6 +1323,9 @@0x0210_0000 |
0x04_0000 |
256 KiB | +rw | ++ | Irq | AXI-REALM unit | @@ -1304,6 +1334,9 @@0x0300_0000 |
+ | + | + | Reserved | @@ -1312,14 +1345,20 @@ | 0x0300_1000 |
0x00_1000 |
4 KiB | +rw | ++ | Config | -CSRs | +Cheshire PCRs |
0x0300_1000 |
0x0300_2000 |
0x00_1000 |
4 KiB | +rw | ++ | Config | LLC | 0x0300_3000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -UART | +UART |
0x0300_3000 |
0x0300_4000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -I2C | +I2C | |
0x0300_4000 |
0x0300_5000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -SPIM | +SPIM | |
0x0300_5000 |
0x0300_6000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -GPIO | +GPIO | |
0x0300_6000 |
0x0300_7000 |
0x00_1000 |
4 KiB | +rw | ++ | Config | Serial Link | 0x0300_8000 |
0x00_1000 |
4 KiB | +rw | ++ | Config | VGA | @@ -1376,6 +1433,9 @@0x0300_A000 |
0x00_1000 |
8 KiB | +rw | ++ | Config | UNBENT (bus error unit) | @@ -1384,14 +1444,20 @@0x0300_B000 |
0x00_1000 |
4 KiB | +rw | ++ | Config | -Tagger (cache partitioning) | +Tagger (LLC partitioning) |
0x0300_8000 |
0x0400_0000 |
+ | + | + | Reserved | 0x1000_0000 |
0x40_0000 |
64 MiB | +rw | ++ | Irq | PLIC | @@ -1408,6 +1477,9 @@0x0C00_0000 |
0x40_0000 |
64 MiB | +rw | ++ | Irq | CLICs | @@ -1416,6 +1488,9 @@0x1400_0000 |
0x40_0000 |
64 MiB | +rwx | +yes | +yes | Memory | LLC Scratchpad | @@ -1424,6 +1499,9 @@0x1800_0000 |
0x40_0000 |
64 MiB | +rwx | ++ | yes | Memory | LLC Scratchpad | @@ -1432,6 +1510,9 @@0x2000_0000 |
+ | + | + | Reserved | @@ -1440,6 +1521,9 @@ | + | rw | ++ | @@ -1448,14 +1532,20 @@ | 0x2000_1000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -ETHERNET | +Ethernet |
0x2000_1000 |
0x2000_2000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | CAN BUS | 0x2000_3000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | (empty) | @@ -1472,6 +1565,9 @@0x2000_4000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | (empty) | @@ -1480,38 +1576,53 @@0x2000_5000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -GP TIMER 1 (System timer) | +GP timer 1 (System timer) |
0x2000_5000 |
0x2000_6000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -GP TIMER 2 (Advanced timer) | +GP timer 2 (Advanced timer) | |
0x2000_6000 |
0x2000_7000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -GP TIMER 3 | +GP timer 3 | |
0x2000_7000 |
0x2000_8000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -WATCHDOG timer | +Watchdog timer | |
0x2000_8000 |
0x2000_9000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | (empty) | 0x2000_a000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | HyperBUS | @@ -1528,6 +1642,9 @@0x2000_b000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | Pad Config | @@ -1536,6 +1653,9 @@0x2000_c000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | L2 ECC Config | @@ -1544,6 +1664,9 @@0x2001_1000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | Carfield Control and Status | @@ -1552,14 +1675,20 @@0x2002_1000 |
0x00_1000 |
4 KiB | +rw | ++ | I/O | -PLL/CLOCK | +(if any) PLL/CLOCK |
0x2800_1000 |
0x4000_0000 |
+ | + | + | Reserved | 0x4000_1000 |
0x00_1000 |
4 KiB | +rw | ++ | Irq | Mailboxes | @@ -1576,6 +1708,9 @@0x5000_0000 |
+ | + | + | Reserved | @@ -1584,6 +1719,9 @@ | 0x5080_0000 |
0x80_0000 |
8 MiB | +rw | ++ | Accelerators | Integer Cluster | @@ -1592,6 +1730,9 @@0x5100_0000 |
+ | + | + | Reserved | @@ -1600,6 +1741,9 @@ | 0x5180_0000 |
0x80_0000 |
8 MiB | +rw | ++ | Accelerators | FP Cluster | @@ -1608,6 +1752,9 @@0x6000_0000 |
+ | + | + | Reserved | @@ -1616,6 +1763,9 @@ | 0x6002_0000 |
0x02_0000 |
128 KiB | +rw | ++ | yes | Safe domain | Safety Island Memory | @@ -1624,6 +1774,9 @@0x6020_0000 |
0x1e_0000 |
+ | rw | ++ | Safe domain | reserved | @@ -1631,7 +1784,10 @@0x6020_0000 |
0x6030_0000 |
0x10_0000 |
+1 MiB | +rw | + | yes | Safe domain | Safety Island Peripherals | @@ -1640,6 +1796,9 @@0x6080_0000 |
0x50_0000 |
+ | rw | ++ | Safe domain | reserved | @@ -1648,6 +1807,9 @@0x7000_0000 |
+ | + | + | Reserved | @@ -1656,6 +1818,9 @@ | 0x7002_0000 |
0x02_0000 |
128 KiB | +rwx | +yes | +yes | Memory | LLC Scratchpad | @@ -1664,6 +1829,9 @@0x7810_0000 |
0x10_0000 |
1 MiB | +rwx | +yes | +yes | Memory | L2 Scratchpad (Port 1, interleaved) | @@ -1672,6 +1840,9 @@0x7820_0000 |
0x10_0000 |
1 MiB | +rwx | +yes | +yes | Memory | L2 Scratchpad (Port 1, non-interleaved) | @@ -1680,6 +1851,9 @@0x7830_0000 |
0x10_0000 |
1 MiB | +rwx | +yes | +yes | Memory | L2 Scratchpad (Port 2, interleaved) | @@ -1688,6 +1862,9 @@0x7840_0000 |
0x10_0000 |
1 MiB | +rwx | +yes | +yes | Memory | L2 Scratchpad (Port 2, non-interleaved) | @@ -1696,6 +1873,9 @@0x20_8000_0000 |
0x20_0000_0000 |
128 GiB | +rwx | +yes | +yes | Memory | LLC/DRAM |