processor_info_v2 ram_access_subscribe
API Reference Manual  /  5 Model-to-Simulator Interfaces  / 

processor_memory_inspection

Description
The processor_memory_inspection interface is implemented by processor models for memory inspection.

Function logical_inspection_port returns a port that can be used to issue transactions from the point of view of the processor. The user is expected to use a logical/virtual address when accessing this port. The processors architectural atoms are appended to the transaction. An internal MMU lookup is performed to translate the logical/virtual address to a physical address. The transaction is then forwarded to the physical_memory attached to the processor. This will give the same access rights to the memory hierarchy as if the processor itself had issued the transaction. This function can return NULL if the processor does not support logical/virtual memory addressing.

Function physical_inspection_port returns a port that can be used to issue transactions from the point of view of the processor. The user is expected to use a physical address when accessing this port. The processors architectural atoms are appended to the transaction when using this port, before the transaction is forwarded to the physical_memory attached to the processor. This will give the same access rights to the memory hierarchy as if the processor itself had issued the transaction.

SIM_INTERFACE(processor_memory_inspection) {
        conf_object_t *(*logical_inspection_port)(conf_object_t *obj);
        conf_object_t *(*physical_inspection_port)(conf_object_t *obj);
};

#define PROCESSOR_MEMORY_INSPECTION_INTERFACE "processor_memory_inspection"

Execution Context
Cell Context for all methods.

processor_info_v2 ram_access_subscribe