Use the MMU view to perform address translations or for an overview of the translation tables and virtual memory map.
This view enables you to:
Perform simple virtual to physical address translation.
Perform simple physical to virtual address translation.
Perform MMU page table walks.
See an overview of the virtual memory map.
Freeze the view to prevent it from being updated by a running target.
MMU Translation tab
The Translation tab enables you to translate:
Virtual address to physical address.
Physical address to one or more virtual addresses.
Figure 11-21 MMU Translation tab view
To perform an address translation in the Translation tab:
Enter a physical or virtual address in the address field. You can also enter an expression that evaluates to an address.
Select Physical to Virtual or Virtual to Physical depending on the translation type.
Click Translate to perform the address translation.
The Result shows the output address after the translation. The view also shows the details of the translation regime and parameters. You can customize these parameters using the MMU Settings dialog.
MMU Tables tab
Use the Tables tab to see the translation tables used by the selected translation regime. You can change the translation regime using the MMU Settings dialog.
Figure 11-22 MMU Tables tab view
The Tables tab contains the following columns:
- Input Address
Specifies the input address to the translation table. This is usually the virtual address, but it can also be an intermediate physical address.
Specifies the type of entry in the translation table, for example Page Table, Section, Super Section, Small Page, or Large Page.
- Output Address
Specifies the output address from the translation table. This is usually the physical address, but it can also be an intermediate physical address.
Specifies the memory attributes for the memory region.
The Tables tab also provides additional information for each row of the translation table:
- Descriptor Address
Specifies the address of the selected translation table location.
- Descriptor Value
Specifies the content of the selected translation table location.
- Input Address Range
Specifies the range of input addresses that are mapped by the selected translation table location.
- Next-level Table Address
Specifies the Descriptor Address for the next level of lookup in the translation table.
Memory Map tab
The Memory Map provides a view of the virtual memory layout by combining translation table entries that map to contiguous regions of physical memory with common memory type, cacheability, shareability, and access attributes.
Figure 11-23 Memory Map tab view
Toolbar and context menu options
The following options are available from the toolbar or context menu:
Links this view to the selected connection in the Debug Control view. This is the default. Alternatively you can link the view to a different connection. If the connection you want is not shown in the drop-down list you might have to select it first in the Debug Control view.
- MMU settings
This enables you to change the translation regime and input parameters. It contains:
Figure 11-24 MMU settings
The MMU Settings dialog contains:
- Translation Regimes and Stages
Use this to select the translation you want the debugger to use. The field lists the translation regimes and stages that the debugger is aware of. See the ARM Architecture Reference Manual for more information on the translation regimes.
Select <Follow System> to let the debugger follow the current system state. If the current system state has more than one translation stage, then DS-5 Debugger combines the translation stages when using <Follow System>.
- Use current translation settings
- Use this to instruct the debugger to use the current translation settings for the selected translation.
- Use custom translation settings
- Use this to instruct the debugger to override the current translation settings.
- Use this to specify override values for custom settings. For example you can change the address in TTBR0 or TTBR1.
- View Menu
The following View Menu options are available:
- New MMU View
Displays a new instance of the MMU view.
- Update View When Hidden
Enables the updating of the view when it is hidden behind other views. By default this view does not update when hidden.
Refreshes the view.
- Freeze Data
Toggles the freezing of data in the current view. This also disables or enables the Refresh option.
- Coalesce Invalid Entries
Condenses the contiguous rows of faulty or invalid input addresses into a single row in the Tables tab.