SPRUIV7B May 2022 – September 2023 AM620-Q1 , AM623 , AM625 , AM625-Q1 , AM625SIP
M4F is a micro controller with 32b address, which is only able to access up to 4GB address space. However, Sitara SoC supports 36b address and majority of the memory region beyond lower 4GB are implemented. Region based address translation block, called RAT, is introduced to allow R5 core to access full 36b SoC memory map.
Each R5 core has its own RAT block, and only R5 core itself is able to program the RAT.
Figure 7-11 shows the main R5’s default 32b memory map view when main R5 is out of reset.
The full RAT functionality is described in Region-based Address Translation (RAT) Module.
RAT block enables R5 core to have full access on the SoC memory map including the memory region at and above 0x1_0000_0000.
Figure 7-13 shows how R5 access various end points, including its own ATCM, BTCM, VIM and SoC memory and peripherals. R5’s ATCM is by default at address 0x0, and its BTCM is at address 0x4101_0000. R5 uses address 0x2FFF_0000 to access its VIM and 0x2FFE_0000 to access the RAT configuration region and all the other transactions between address range 0x2000_0000 to 0x2FFF_FFFF are sent to the 32b peripheral interface to access the peripherals in SoC. The transactions with the rest of address are sent to RAT block, which could go through address remapping function from original R5’s 32b address to 36b SoC address.
Starting Address | End Address | Region | Notes |
---|---|---|---|
0x 0000_ 0000 | 0x0000_ 7FFF | ATCM | ATCM is by default disabled. Before it is enabled, its address can be remapped to a different location through CP15. Access from othre masters uses the SoC level memory address assigned to ATCM. |
0x0000_ 8000 | 0x03FF_FFFF | sent to SoC leve through 64b VBUSM initiator | |
0x0400_0000 | 0x07FD_FFFF | peripheral region. Sent to SoC level to access the SoC level peripherals in address range of 0x2000_0000 to 0x2FFD_FFFF. | |
0x07FE_0000 | 0x07FE_0FFF | R5's own RTA configuration region | |
0x07FF_0000 | 0x07FF_3FFF | R5's own VIM | |
0x0800_0000 | 0x410F_FFFF | sent to SoC leve through 64b VBUSM initiator. Do not use RAT for address remapping. | |
0x4101_0000 | 0x4101_7FFF | R5's BTCM | BTCM by default is enabled. And access from SoC level uses the SoC level memory address assigned to BTCM. |
0x4101_8000 | 0x7FFF_FFFF | sent to SoC leve through 64b VBUSM initiator. Do not use RAT for address remapping. | |
0x8000_0000 | 0xFFFF_FFFF | Could use RAT for address remapping if it is needed before sent to 64b VBUSM initiator. |