Patterned DMA Engine for Non-Contiguous Memory Transfer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data transfer methods using Direct Memory Access (DMA) and Remote Direct Memory Access (RDMA) are inefficient when dealing with non-contiguous memory spaces, as they require complex pattern specifications for each transaction, leading to high memory and computational overhead.
Innovation Solution
The implementation of a network device with circuitry that receives requests to transfer data between memories using pre-registered and pre-associated patterns and memory keys, allowing for efficient data transfer by re-associating keys with different patterns as needed, and enabling ad-hoc pattern definitions within transactions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If complex pattern specifications are used for each data transfer transaction, then data transfer capability is achieved, but memory overhead and computational overhead increase significantly
Solution Approach 1:
The patent applies preliminary action by pre-registering patterns and pre-establishing their associations with memory keys before actual data transfer operations. This allows the system to avoid complex pattern specifications during each transaction, as the patterns are already prepared and linked to memory keys in advance, thereby reducing computational and memory overhead during data transfer operations
Solution Approach 2:
The patent implements universality by creating a reusable pattern library where single patterns can be associated with multiple memory keys and used across different data transfer transactions. This multi-functional approach allows one pattern definition to serve multiple purposes, eliminating the need for complex unique pattern specifications for each transaction and reducing overall system overhead
2Productivity
If pre-registered patterns are associated with memory keys, then computational overhead is reduced, but flexibility to define ad-hoc patterns decreases
Solution Approach 1:
The patent applies dynamics by implementing a flexible association mechanism between patterns and memory keys that can be modified during operation. The system allows re-associating memory keys with different patterns and supports ad-hoc pattern definitions when needed, enabling the system to adapt between using pre-registered patterns for efficiency and defining custom patterns for flexibility, thus resolving the contradiction between productivity and adaptability
Data Source
AI summary
A Direct Memory Access (DMA) device includes an interface and a DMA engine. The interface is configured to communicate with a first memory and with a second memory. The DMA engine is configured to (i) receive a request to transfer data between the first memory and the second memory in accordance with a pattern of offsets to be accessed in the first memory or in the second memory, and (ii) transfer the data in accordance with the request.


