CGRA Print Unit for Intermediate Value Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Accessing intermediate values in dataflow computations is challenging in dataflow architectures due to their high parallelism and lack of program counters, making debugging and monitoring difficult compared to conventional architectures.
Innovation Solution
A system and method for a Coarse-Grained Reconfigurable Architecture (CGRA) that allows saving and accessing intermediate values by inserting a print unit between data sources and sinks, enabling debugging capabilities similar to conventional architectures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a dataflow architecture with high parallelism is used, then computation speed and efficiency are improved, but access to intermediate values for debugging becomes difficult
Solution Approach 1:
The patent introduces print units as intermediary components between data sources and data sinks in the dataflow graph. These print units intercept intermediate values during computation and make them accessible for debugging purposes, without disrupting the high-speed parallel dataflow processing. The print units act as mediators that allow external observation of internal computation states while maintaining the architecture's computational efficiency.
2Ease of operation
If conventional architecture with program counters is used, then debugging is easier, but parallelism and computation efficiency are reduced
Solution Approach 1:
The patent segments the dataflow computation by introducing print units at specific points in the dataflow graph. This segmentation allows the computation to be divided into observable stages without disrupting the overall parallel execution. Each print unit creates a localized observation point that provides debugging capability similar to conventional architectures, while the rest of the system maintains high parallelism and efficiency.
3Ease of operation
If print units are inserted for debugging access, then intermediate value accessibility is improved, but device complexity increases
Solution Approach 1:
The print units are designed as universal components that can be inserted at multiple points in the dataflow graph without requiring different designs for each location. These multi-functional units serve both the debugging function of capturing intermediate values and the computational function of allowing data to pass through to subsequent operations. This universality minimizes the increase in device complexity while providing comprehensive debugging access.
Data Source
AI summary
In a Coarse-Grained Reconfigurable Architecture (CGRA) system, two configuration files are used. The CGRA system has an array of configurable units that includes a plurality of switches, a print configurable unit, a source configurable unit, and one or more sink configurable units, The first configuration file, upon being executed by the CGRA system, configures the CGRA system to send output data directly from the source configurable unit to the one or more sink configurable units through the plurality of switches. The second configuration file, upon being executed into the CGRA system, configures the CGRA system to send the output data from the source configurable unit to the print configurable unit through the plurality of switches, send the output data from the print configurable unit to both a memory that is accessible by a host computing unit, and the one or more sink configurable units.


