|
Now lets examine the ORP Subsystem. It is core role to handle cache misses asynchronously without blocking the main cache pipeline.
As shown in the flow diagram on the right, when a cache miss occurs, it enters the ORP Subsystem and flows through two modules.
First, the Outstanding Manager. It maintains an outstanding table that tracks all pending miss requests, recording information such as the PID and request order. This table is essential for managing multiple in-flight DMA requests and ensuring responses are correctly matched to their original requests.
Second, the Context Adapter. It interfaces directly with the RNICs DMA engine via the AXI interface. When the Outstanding Manager forwards a miss request, the Context Adapter initiates a DMA read to fetch the required context from host memory. When the response returns, it flows back through the Outstanding Manager, which retrieves the corresponding miss information and loops it back to the Scheduler Subsystem for cache update.
If we need to support a different context type, switching from QPC to MTT, we only need to modify the Context Adapter module. All other modules remain unchanged. This directly addresses Challenge 4 , the diverse context types in RDMA systems.
This asynchronous design also helps address Challenge 2 by efficiently batching and managing host memory accesses. |