Dynamic Direct Memory Transfer Adaptation for Mismatched Bus Widths
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data processing systems with mismatched data-bus widths, direct memory transfer (DMT) is disabled, leading to increased latency and reduced performance due to the need for data to pass through a home node, which creates additional hops and inefficient bandwidth utilization.
Innovation Solution
A home node is configured to dynamically decide whether to enable DMT based on the relative data-bus widths of requestor and slave nodes, and data combiners are introduced within the interconnect structure to facilitate DMT in specific cases, allowing direct data transfer between nodes with different bus widths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If DMT is disabled in systems with mismatched data-bus widths, then system complexity is reduced and compatibility is maintained, but read latency increases and performance deteriorates
Solution Approach 1:
The system dynamically enables or disables DMT based on the data-bus width match between requestor and slave nodes. When widths match, DMT is enabled for direct transfer; when they mismatch, DMT is disabled and data transfers through the home node. This dynamic adaptation resolves the contradiction by allowing low-latency direct transfer when possible while maintaining compatibility when necessary.
Solution Approach 2:
The system changes the data transfer path parameter based on bus width compatibility. By monitoring the data-bus width parameters of connected nodes and adjusting the transfer mode accordingly, the system achieves optimal performance when parameters match while maintaining operational capability when they don't match.
2Productivity
If data transfers through home node in mismatched bus-width systems, then compatibility is maintained, but bandwidth utilization decreases and performance is reduced
Solution Approach 1:
The system dynamically selects the data transfer path based on bus width compatibility. When requestor and slave nodes have matching data-bus widths, the system enables direct memory transfer for high bandwidth utilization. When widths mismatch, it automatically routes through the home node to maintain compatibility, thus dynamically optimizing bandwidth while preserving operational capability.
Solution Approach 2:
The home node acts as an intermediary that enables compatibility between nodes with mismatched data-bus widths. When direct transfer is not possible due to width mismatch, the home node mediates the data transfer by receiving data from one width and forwarding it to another, thus maintaining system compatibility while accepting the bandwidth penalty only when necessary.
3Productivity
If DMT is enabled in mismatched bus-width systems, then read latency is reduced and performance improves, but data width mismatches cause transfer errors
Solution Approach 1:
The system dynamically determines DMT enablement based on real-time assessment of data-bus width compatibility between requestor and slave nodes. This dynamic decision-making ensures that DMT is only enabled when reliability conditions are met (matching widths), while still achieving high throughput in compatible configurations.
Solution Approach 2:
The system uses feedback from bus width comparison to control DMT enablement. By continuously monitoring the data-bus width parameters and using this feedback to decide whether to enable direct transfer, the system ensures reliable operation while maximizing performance when conditions permit.
Data Source
AI summary
A method and apparatus for controlling direct memory transfer (DMT) in a data processing system with mismatched bus-widths in which a home node automatically determines, from a read request received from a requestor node, whether DMT should be enabled or disabled dependent on the bus-widths of the requestor node and a target slave node and on the size of the access. Optionally, when the slave node has a smaller bus width than the requestor node, a data combiner at an upload port for the target slave node merges two or more data beats of requested data received from the target slave node to form a single wider beat and transmits the single wider beat to the requestor node. A counter may be used to determine when a data buffer in the data combiner has sufficient space to store data beats to be merged.


