3.8.9. Address map

If the AMBA Designer configuration method is not used and command line parameters are used instead, then the address map gets calculated automatically as follows:

The decode-stage can have a fully customized address map when using the AMBA Designer configuration method and each slave port can have and independent view of the address space. Example 3.1 shows a slave port address map description. See the AMBA Design Kit User Guide for parameter descriptions.

Example 3.1. 

<slave_interface name="SI1">
    <address_region interface="MI0" mem_lo="40000000" mem_hi="4fffffff" remapping="move"/>
    <address_region interface="MI0" mem_lo="70000000" mem_hi="7fffffff" remapping="alias"/>
    <address_region interface="MI1" mem_lo="80000000" mem_hi="9fffffff" remapping="none"/>
    <address_region interface="MI2" mem_lo="a0000000" mem_hi="bfffffff" remapping="move"/>
    <address_region interface="MI3" mem_lo="00000000" mem_hi="1fffffff" remapping="move"/>

    <remap_region   interface="MI0" mem_lo="00000000" mem_hi="1fffffff" bit="0"/>
    <remap_region   interface="MI1" mem_lo="50000000" mem_hi="5fffffff" bit="0"/>
    <remap_region   interface="MI2" mem_lo="60000000" mem_hi="6fffffff" bit="1"/>
    <remap_region   interface="MI3" mem_lo="c0000000" mem_hi="dfffffff" bit="0"/>


Address region

The address region parameters determine the routing of transactions to the master interfaces. Each master interface can have multiple non-contiguous address regions, when multiple sets of address region parameters are defined. However, the address regions of different master interfaces must not overlap. The mem_lo parameter defines the lower bound address and the mem_hi parameter defines the upper bound address for the master interface.

The remapping configuration parameter defines the behavior of master interfaces that support address remapping. It becomes active when the relevant REMAP bit is set. The following types of address remapping behavior exist:

  • If the remapping parameter is set to alias or none, the remapping creates an alias of the defined region in the new address space.

  • If the remapping parameter is set to move, the address region gets removed from the original address space and master interface appears at the location defined by the remap region in the new address space

Remap region

These regions get activated when using the remap facility and each remap region is associated with a bit of the REMAP signal.

When the relevant remap bit is set, the remap regions take higher priority than normal address regions for the same master interface. Also any normal regions that have the remapping parameter set to 'move', get removed from the address space. If more than one bit is asserted for the same master interface, the least significant bit takes priority.

Figure 3.11 shows the address map of the slave interface, defined in the above example, at different remap states.

The address map is explained at the remap state REMAP = 0001:

  • In normal address map MI0 appears at two non-contiguous regions 0x40000000 and 0x70000000. When remap bit 0 is set the 0x40000000 region was removed because the remapping parameter is set to 'move' and MI0 appears at the new remap region 0x00000000 to 0x1FFFFFFF. The MI0 region at 0x70000000 is not removed because its remapping parameter is declared as alias.

  • When remap bit 0 is set, MI1 appears at the new remap region 0x50000000 to 0x5FFFFFFF and at the region at 0x80000000 did not get changed because its remapping is set to 'none'.

  • MI2 did not change even though its remapping is declared as move, because it is associated with remap bit 1 which is not set at the current remap state

  • MI3 is moved to a new base address 0xC0000000.


MI0 can be considered as ROM and MI3 can be considered as RAM. At boot time, the REMAP signal is set to 0001 and ROM can be seen at base address 0x00000000. After booting the REMAP signal is set to 0000, the RAM now appears at 0x00000000 and the ROM is moved up in the address space to 0x40000000.

Figure 3.11.  Address map at different remap states

Copyright © 2003, 2007 ARM Limited. All rights reserved.ARM DDI 0243C