2.3.83. MEMMAP

Enables you to control memory mapping and to define temporary memory map entries.

Syntax

MEMMAP [,qualifier...] [={address|address-range}]

where:

qualifier

One of the following:

access:text

Set the memory access type to text, which must be one of the predefined strings:

RAM

Memory can be read and written with no specific provision.

ROM

Memory can only be read.

WOM

Memory can only be written.

NOM

There is no memory in this region.

Flash

There is Flash memory in this region. It can always be read, and it can be written as required using the Flash memory procedure if this is defined. Also, see the fauto, fclk, and fme qualifiers.

Auto

There is memory in this region but the type is inferred by the image that is loaded. Memory in regions not defined by the image are assumed to be absent (equivalent to NOM).

Prompt

There is memory in this region but you set the type by responding to a prompt when loading an image to it. The default is there is no memory.

asize:size

The size of memory accesses, where size is one of:

1

1-byte accesses

2

2-byte accesses

4

4-byte accesses

8

8-byte accesses

autosection

When loading an image, create memory mappings automatically from the sections of the image. This is default behavior.

define

Creates a new memory region using the address range in address. You can specify additional information about the region with the type, access, and description qualifiers.

delete

Deletes memory map entries:

  • if you supply a memory map entry start address in address, delete that entry

  • if you supply no arguments, delete all memory maps.

description:text

Set the name of this memory map region to text. This is used to label the entry for your own reference.

disable

Turns off memory mapping control. The debugger assumes that all memory is RAM.

enable

Turns on memory mapping control. This is the default.

The debugger only accesses the target memory in regions that are defined in the map, and uses the access method to determine the operations that are permitted.

fauto

Enables the Flash auto-write mode.

fclk:speed

If fauto is used and the harware requires a clock frequency, this qualifier specifies the clock in Hz.

fme:filename

For Flash memory, the Flash programming method file (*.fme) that is to be used. You must enter the full path and file name, enclosed in double quotation marks.

type:text

Set the memory type to text, which must be one of the defined memory type strings for the processor architecture. For ARM processors, the only available type is Any.

updateautomap

Update the memory map based on the information provided in the board file. This is automatically done when:

  • the debugger starts up

  • the target program stops

  • the registers that control the map are changed by you.

This qualifier enables you to manually request a map update.

address

The start address of the memory region, specified as a single address. Use this form with the delete qualifier.

address-range

The memory region, specified as an address range. Use this form with the define qualifier. The start and the end of the range is included in the range.

Note

For targets that support the TrustZone technology, prefix the start address with S: or N: to identify the Secure World or Normal World. The prefix S: is the default.

Description

The MEMMAP command enables you to:

  • Enable and disable memory mapping.

  • Define new temporary memory regions based on type and access rights. The list of valid access rights and types is defined by the Debug Interface and target processor.

  • Delete memory map entries.

If you have assigned a BCD file to your Debug Configuration, then memoray mapping is automatically enabled when you connect to a target associated with that Debug Configuration. Any memory map settings in a BCD file assigned to the related Debug Configuration are not changed. If you disable and enable memory mapping, any changes you make to the memory map with MEMMAP are preserved. However, the changes are lost when you disconnect. When you next connect to the target, the original memory map from the assigned BCD file is restored.

Examples

The following examples show how to use MEMMAP:

memmap,define 0x10000..0x20000

Creates a memory map region from 0x10000 to 0x20000, inclusive. The length of the region is 0x10001 bytes.

memmap,define N:0x10000..0x20000

Creates a memory map region from 0x10000 to 0x20000, inclusive, in the Normal World for a target that supports the TrustZone technology. The length of the region is 0x10001 bytes.

memmap,define 0x10000..+0x10000

Creates a memory map region from 0x10000 to 0x1FFFF, inclusive. The length of the region is 0x10000 bytes.

mmap,def,access:Flash,type:Any,asize:4,descr:"Intel",fme:"C:\myflash\IntegratorAP\flash_IntegratorAP.fme"=0x24000000..0x25FFFFFF

Define a Flash memory region called Intel, using 4-byte memory accesses, and using the Flash programming method file located in C:\myflash\IntegratorAP\flash_IntegratorAP.fme.

mmap,def,access:RAM,type:Any,description:"Data space"=0x0000..0x7FFF

Define a read/write memory region called Data space in the first 32KB of memory.

mmap,def,access:ROM,type:Any,descr:"Bootrom"=0x10000..+0xFFFF

Define the 64KB region starting at 0x10000 as a read-only region called Bootrom.

mmap,delete =0x10000

Delete the memory map entry that starts at 0x10000, resetting the map for that area to the Auto map.

mmap,delete

Delete all memory map entries, resetting the map to the default Auto map over the whole address space.

mmap,disable

Disable memory mapping.

Alias

MMAP is an alias of MEMMAP.

See also

Copyright © 2002-2011 ARM. All rights reserved.ARM DUI 0175N
Non-ConfidentialID052111