SPRUJ79 November 2024 F29H850TU , F29H859TU-Q1
Each CPU has a dataline buffer in common for all RAMs. This buffer is only used for RAM accesses, and accesses to other regions of the memory map are not be buffered or served from the dataline buffer. The Flash read interface and ROM controllers have dedicated line buffers local to the controller and are 256-bit wide memories.
Each CPU has a program bridge to interface 64-bit memories. This bridge is common for all 64-bit RAMs connected to a CPU and bridges the 128-bit bus of the CPU and the 64-bit buses of the LDx and CDx memory controller. Global bridge access allows data access to any RAM from any CPU which does not already have direct access, with a tradeoff of being three wait states to access the memory.
Memory controllers have a fast access port and slow access port. Fast access ports are zero wait state and limited, while slow access ports are one wait state and can have improved throughput if the initiator supports burst mode. Each CPU also has a debug access port, which are arbitrated externally. Only one port is routed to the memory controller. Debug accesses are connected to slow access ports.
Safe interconnect checks are done in initiators and memory controllers. Any errors resulting from HSM accesses are aggregated in the HSM-ESM, whiles others are aggregated in the ESM.
ECC granularity for RAM data is 32 bits. Write accesses of 8 or 16 bits require a read-modify-write operation. M0 memory is the similar to LDAx memory, and access permissions are determined by the SSU.
The LDAx memories are accessible from the CPU and HSM and can be used as shared memories or dedicated memories. Freedom from interference is provided so the CPU does not get access to secure HSM data. The LDAx memories have a multi-layer protection:
Read and write to the LDAx memories is only allowed if both systems allow the access type, otherwise an access violation error is generated to the respective system.