| |||
| Home > RVISS Reference > Memory model interface > armul_HarvardMemAccess | |||
This is the memory access function used for true Harvard models, where both busses present the required access parameters in the same function call.
void armul_HarvardMemAccess(void *handle, ARMwordaddress1, ARMword *data1, ARMul_accaccess1, int *return1, ARMwordaddress2, ARMword *data2, ARMul_accaccess2, int *return2)
where:
handleis the value of interf->handle set
in MemInit.
address1is the value on the data address bus.
data1is a pointer to the data for the data memory access. See Data for reads and writes for details.
access1encodes the type of cycle for the data memory access. On some processors, for example, cached processors, some of the signals are not valid. See Macros for access types for details of the macros for determining access type.
return1is the return value for the data memory access:
indicates successful completion of the cycle
tells the processor to busy-wait and try the access again next cycle
signals an abort.
address2is the value on the instruction address bus.
data2is a pointer to the data for the instruction memory access. See Data for reads and writes for details.
access2encodes the type of cycle for the instruction memory access. On some processors, for example, cached processors, some of the signals are not valid. See Macros for access types for details of the macros for determining access type.
return2is the return value for the instruction memory access:
indicates successful completion of the cycle
tells the processor to busy-wait and try the access again next cycle
signals an abort.