DMA Prefetching Through Cache-Policy Data Placement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional DMA engines expend bandwidth and require software intervention to store data in intermediate caches, leading to latency and inefficiencies in prefetching operations.
Innovation Solution
A DMA engine is configured to load data without storing it, allowing cache replacement policies to determine data placement in intermediate caches based on priority, thereby reducing bandwidth usage and latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a DMA engine stores data in intermediate caches, then data is available for processing, but bandwidth is consumed and software intervention is required
Solution Approach 1:
The patent extracts the data storage function from the DMA engine itself, allowing the DMA engine to load data without storing it. Instead, intermediate caches along the data path autonomously capture and store the data based on their own replacement policies, eliminating the bandwidth overhead and software intervention required by conventional approaches.
Solution Approach 2:
The patent enables intermediate caches to serve themselves by autonomously deciding whether to store prefetched data based on their own replacement policies. This self-service mechanism eliminates the need for software intervention to manage cache storage, allowing caches to independently optimize their own content based on current system needs.
2Ease of operation
If a DMA engine manually stores data in caches, then data placement is controlled, but software intervention increases latency
Solution Approach 1:
The patent implements self-service by allowing intermediate caches to autonomously determine data placement based on their own replacement policies. This eliminates software intervention in the data placement process, reducing prefetching latency while maintaining effective cache utilization through the caches' inherent ability to make placement decisions.
3Quantity of substance
If conventional DMA engines copy data to caches, then caches are populated, but cache pollution occurs
Solution Approach 1:
The patent extracts the data copying function from the DMA engine, preventing it from directly populating caches. Instead, intermediate caches selectively capture data based on their own replacement policies, ensuring that only relevant data is stored in caches and eliminating cache pollution caused by indiscriminate data copying.
Data Source
AI summary
A processing system includes one or more DMA engines that load data from memory or another cache location without storing the data after loading it. As the data propagates past caches located between the memory or other cache location that stores the requested data (“intermediate caches”), the data is selectively copied to the intermediate caches based on a cache replacement policy. Rather than the DMA engine manually storing the data into the intermediate caches, the cache replacement policies of the intermediate caches determine whether the data is copied into each respective cache and a replacement priority of the data. By bypassing storing the data, the DMA engine effectuates prefetching to the intermediate caches without expending unnecessary bandwidth or searching for a memory location to store the data, thus reducing latency and saving energy.


