Memory access monitoring
AssigneeArm Limited
InventorsGeoffrey Wyman Blake, Pavel Shamis
Life of this patent
Estimating the term…
Abstract
An apparatus has a monitoring data store for storing monitoring data indicating regions of a memory address space to be monitored for changes, which can include at least two non-contiguous regions. Processing circuitry updates the monitoring data in response to an update monitor instruction. Monitoring circuitry monitors accesses to the memory system and provides a notification to the processing circuitry when data associated with one of the monitored regions has changed. This improves performance and energy efficiency by reducing the overhead of polling changes to multiple regions.
Claims22
An apparatus comprising:
- processing circuitry to perform data processing, the processing circuitry associated with an instruction decoder to decode instructions;
- a monitoring data store to store monitoring data indicative of addresses of a plurality of regions for which an interrupt is to be provided to the processing circuitry when data associated with one of the plurality of regions has changed, wherein the monitoring data store is configured to store said monitoring data indicative of said addresses of said plurality of regions separate from storage of said data associated with said plurality of regions in a cache or memory;
- wherein the processing circuitry is responsive to an update monitor instruction decoded by the instruction decoder to update the monitoring data stored by the monitoring data store, wherein the update monitor instruction identifies at least one address identifying at least one new region, for which the interrupt is to be provided to the processing circuitry, to be added to the plurality of regions for which the addresses are indicated by the monitoring data;
- and
- in response to the processing circuitry processing one or more update monitor instructions decoded by the instruction decoder specifying addresses of two or more non-contiguous regions of the memory address space, the monitoring data store is configured to store the monitoring data indicating the addresses of said at least two non-contiguous regions of the memory address space simultaneously;
- monitoring circuitry to monitor accesses to a memory system and to provide an interrupt to the processing circuitry in response to detecting that data associated with at least one region of said plurality of regions indicated by the monitoring data has changed;
- and
- in response to a report monitoring result instruction decoded by the instruction decoder, the processing circuitry is configured to request the monitoring circuitry to return an indication of at least one address of said at least one region for which said data has changed.
A method comprising:
- in response to decoding an update monitor instruction by an instruction decoder, updating monitoring data indicative of addresses of a plurality of regions for which an interrupt is to be provided to processing circuitry when data associated with one of the plurality of regions has changed, the monitoring data stored in a monitoring data store separate from storage of said data associated with said plurality of regions in a cache or memory;
- wherein the update monitor instruction identifies at least one address identifying at least one new region, for which the interrupt is to be provided to the processing circuitry, to be added to the plurality of regions indicated by the monitoring data;
- in response to the processing circuitry processing one or more update monitor instructions decoded by the instruction decoder specifying addresses of two or more non-contiguous regions of the memory address space, the monitoring data store is configured to store the monitoring data indicating the addresses of said at least two non-contiguous regions of the memory address space simultaneously;
- monitoring accesses to a memory system;
- and
- providing an interrupt to the processing circuitry in response to detecting that data associated with at least one region of said plurality of regions indicated by the monitoring data has changed;
- and
- in response to decoding a report monitoring result instruction, requesting monitoring circuitry to return an indication of at least one address of said at least one region for which said data has changed.
Dependencies are inferred from the claim text.