3.2 Arm®v8‑A Foundation Platform memory map

This section describes the memory map for the Arm®v8‑A Foundation Platform.

The following list shows the Secure and Non-secure access permissions that are enabled by using the --(no-)secure-memory parameter.

Table 3-2 Access permissions

  --no-secure-memory --secure-memory
S Secure and Non-secure accesses are permitted. Secure access is permitted, Non-secure access aborts.
S/NS Secure and Non-secure accesses are permitted. Secure and Non-secure accesses are permitted.

The following table shows the global memory map for the Armv8‑A Foundation Platform. This map is based on the Versatile™ Express RS2 memory map with extensions.

Note:

  • Unless you use the --quiet command-line option, areas of memory that are highlighted in the table return a warning to the console, together with RAZ/WI access behavior. This rule is applicable to Foundation Model v2 and Foundation Platform v9.
  • Writes are ignored.
  • Accesses from Foundation Model v1 cause an abort exception.

Note:

The Security column in the following table applies to the Foundation Model v2 and Foundation Platform v9 only.

Table 3-3 Armv8‑A Foundation Platform memory map

Start address End address Foundation v1 peripheral Foundation v2 and v9 peripherals Size Security (v2 and v9 only)
0x00_0000_0000 0x00_03FF_FFFF RAM Trusted Boot ROM, secureflash 64MB S
0x00_0400_0000 0x00_0403_FFFF RAM Trusted SRAM 256KB S
0x00_0600_0000 0x00_07FF_FFFF RAM Trusted DRAM 32MB S
0x00_0800_0000 0x00_0BFF_FFFF - NOR flash, flash0 64MB S/NS
0x00_0C00_0000 0x00_0FFF_FFFF - NOR flash, flash1 64MB S/NS
0x00_1800_0000 0x00_19FF_FFFF - VRAM 32MB a -
0x00_1A00_0000 0x00_1AFF_FFFF Ethernet, SMSC 91C111 Ethernet, SMSC 91C111 16MB S/NS
0x00_1C01_0000 0x00_1C01_FFFF System Registers System Registers 64KB S/NS
0x00_1C02_0000 0x00_1C02_FFFF - System Controller, SP810 64KB S/NS
0x00_1C04_0000 0x00_1C07_FFFF - Warning + RAZ/WI - -
0x00_1C09_0000 0x00_1C09_FFFF UART0, PL011 UART0, PL011 64KB S/NS
0x00_1C0A_0000 0x00_1C0A_FFFF UART1, PL011 UART1, PL011 64KB S/NS
0x00_1C0B_0000 0x00_1C0B_FFFF UART2, PL011 UART2, PL011 64KB S/NS
0x00_1C0C_0000 0x00_1C0C_FFFF UART3, PL011 UART3, PL011 64KB S/NS
0x00_1C0D_0000 0x00_1C0D_FFFF - Warning + RAZ/WI - -
0x00_1C0F_0000 0x00_1C0F_FFFF - Watchdog, SP805 64KB S/NS
0x00_1C10_0000 0x00_1C10_FFFF - Base Platform Power Controller 64KB S/NS
0x00_1C11_0000 0x00_1C11_FFFF - Dual-Timer 0, SP804 64KB S/NS
0x00_1C12_0000 0x00_1C12_FFFF - Dual-Timer 1, SP804 64KB S/NS
0x00_1C13_0000 0x00_1C13_FFFF Virtio block device Virtio block device 64KB S/NS
0x00_1C14_0000 0x00_1C14_FFFF - Virtio Plan 9 for v9, Warning + RAZ/W for v2.1 64KB S/NS
0x00_1C15_0000 0x00_1C15_FFFF - Virtio net device 64KB S/NS
0x00_1C17_0000 0x00_1C17_FFFF - Realtime Clock, PL031 64KB S/NS
0x00_1C1A_0000 0x00_1FFF_FFFF - Warning + RAZ/W - -
0x00_1F00_0000 0x00_1F00_0FFF - Non-trusted ROM 4KB S/NS
0x00_2A43_0000 0x00_2A43_FFFF - REFCLK CNTControl, Generic Timer 64KB S
0x00_2A44_0000 0x00_2A44_FFFF - EL2 Generic Watchdog Control 64KB S/NS
0x00_2A45_0000 0x00_2A45_FFFF - EL2 Generic Watchdog Refresh 64KB S/NS
0x00_2A49_0000 0x00_2A49_FFFF - Trusted Watchdog, SP805 64KB S
0x00_2A4A_0000 0x00_2A4A_FFFF - Warning + RAZ/W - -
0x00_2A80_0000 0x00_2A80_FFFF - REFCLK CNTRead, Generic Timer 64KB S/NS
0x00_2A81_0000 0x00_2A81_FFFF - AP_REFCLK CNTCTL, Generic Timer 64KB S/NS
0x00_2A82_0000 0x00_2A82_FFFF - AP_REFCLK CNTBase0, Generic Timer 64KB S
0x00_2A83_0000 0x00_2A83_FFFF - AP_REFCLK CNTBase1, Generic Timer 64KB S/NS
0x00_2C00_0000 0x00_2C00_1FFF - GIC Physical CPU interface, GICCb 8KB S/NS
0x00_2C00_1000 0x00_2C00_1FFF GIC Distributor GIC Distributorc 4KB -
0x00_2C00_2000 0x00_2C00_2FFF GIC Processor Interface GIC Processor Interfacec 4KB -
0x00_2C00_4000 0x00_2C00_4FFF GIC Processor Hyp Interface GIC Processor Hyp Interfacec 4KB -
0x00_2C00_5000 0x00_2C00_5FFF GIC Hyp Interface GIC Hyp Interfacec 4KB -
0x00_2C00_6000 0x00_2C00_7FFF GIC Virtual CPU Interface GIC Virtual CPU Interfacec 8KB -
0x00_2C01_0000 0x00_2C01_0FFF - GIC Virtual Interface Control, GICH 4KB S/NS
0x00_2C02_F000 0x00_2C03_0FFF - GIC Virtual CPU Interface, GICV 8KB S/NS
0x00_2C09_0000 0x00_2C09_FFFF - Warning + RAZ/W - -
0x00_2E00_0000 0x00_2E00_FFFF - Non-trusted SRAM 64KB S/NS
0x00_2F00_0000 0x00_2F00_FFFF - GICv3 Distributor GICDb 64KB S/NS
0x00_2F10_0000 0x00_2F1F_FFFF - GICv3 Distributor GICR 1MB S/NS
0x00_7FE6_0000 0x00_7FE6_0FFF - Trusted Random Number Generator 4KB S
0x00_7FE7_0000 0x00_7FE7_0FFF - Trusted Non-volatile counters 4KB S
0x00_7FE8_0000 0x00_7FE8_0FFF - Trusted Root-Key Storage 4KB S
0x00_8000_0000 0x00_FFFF_FFFF DRAM (0GB - 2GB) DRAM (0GB - 2GB) 2GB S/NS
0x08_8000_0000 0x09_FFFF_FFFF DRAM (2GB - 8GB) DRAM (2GB - 8GB) 6GB S/NS
a 8MB of VRAM is replicated 4 times in memory.
b The Foundation Model v2.1 only. Not the Foundation Platform.
c The Foundation Platform uses the GICv3 memory map by default.
Non-ConfidentialPDF file icon PDF version100961_1180_00_en
Copyright © 2012–2019 Arm Limited or its affiliates. All rights reserved.