No. On-chip breakpoints are evaluated by the processor core using the addresses it fetches during execution. When the Memory Management Unit (MMU) is enabled, these are virtual addresses, not physical addresses.
As a result, an on-chip breakpoint cannot be set directly on a physical address.
Specifying the address space A: does not change this behavior. Although A: refers to a physical address space for memory access commands, it has no effect when setting an on-chip breakpoint. The specified address is still interpreted as a virtual address by the breakpoint hardware.
If you need to break on a specific physical address, determine all virtual addresses that are currently mapped to that physical address and set an on-chip breakpoint on each of them.
The following command lists all virtual-to-physical mappings for a given physical address:
MMU.INFO <physical_address>Keep in mind that this approach only works for mappings that already exist when the breakpoints are set. If the operating system or application creates or changes the MMU mappings later (for example, by updating page tables), the newly mapped virtual addresses will not automatically receive breakpoints and must be configured separately.
Add a comment