Fabric-Graph Flow for Configurable Circuit Resource Costing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Configurable integrated circuits (ICs) face challenges in determining optimal component configurations for data paths without considering data flow blockages, leading to inefficient resource allocation and path determination.

Innovation Solution

The approach calculates a probabilistic data flow through components, determining costs based on blocked flow and relative component costs, using a simplified connection matrix to identify the cheapest path for data transmission, and defining configurations to implement these paths efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If configurable components are assigned to data paths without considering data flow blockages, then component configuration is simplified, but resource allocation efficiency deteriorates

Engineering Contradiction:
Improvecomponent configurationVSAvoidresource allocation efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system performs preliminary calculation of probabilistic data flow through components before assigning them to paths. By pre-computing the flow characteristics and blocking costs, the system enables informed configuration decisions that optimize resource allocation while maintaining operational simplicity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system calculates the cost of using each component based on the probabilistic flow that would be blocked, creating a feedback mechanism that guides path selection. This feedback loop allows the system to continuously optimize resource allocation by selecting paths with lower blocking costs.

Inventive Principle:
Principle #23Feedback

2Productivity

If probabilistic data flow calculation is performed for all components, then path optimization is improved, but computational complexity increases

Engineering Contradiction:
Improvepath optimizationVSAvoidcomputational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system focuses probabilistic flow calculations on specific regions or groups of components rather than uniformly processing all components. By identifying and evaluating only the relevant components for each path consideration, the system reduces computational overhead while maintaining optimization quality.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system performs probabilistic flow calculations for a subset of components that are most relevant to the current path evaluation, rather than exhaustively calculating for all components in the IC. This partial action approach achieves sufficient optimization without the full computational burden.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If connection matrix is simplified to reduce calculation burden, then computational efficiency is improved, but measurement precision of data flow deteriorates

Engineering Contradiction:
Improvecomputational efficiencyVSAvoiddata flow calculation accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system transforms the connection matrix from a complex multi-dimensional structure to a simplified 2-dimensional representation. This parameter change in the matrix structure enables efficient computation while the probabilistic flow calculation methodology compensates for the simplification to maintain adequate precision.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9047431B2System and method for using fabric-graph flow to determine resource costs
Publication Date: 2015.06.02 ALTERA CORP
  • US9047431B2 patent drawing
  • US9047431B2 patent drawing
  • US9047431B2 patent drawing

AI summary

A system and method of determining paths of components when placing and routing configurable circuits. The method identifies a probabilistic data flow through multiple components using a simplified connection matrix. The simplified connection matrix is used to determine a probabilistic data flow through the components without data flowing from any component to itself. The probabilistic data flow is used to determine a probabilistic data flow through the components with some of the components having data flowing from themselves back to themselves. The probabilistic data flow through each component and the number of inputs of the components are used to determine a cost for each component. The cost of a path through the circuit is determined from the costs of the individual components in the path. The costs of the components are used to determine which path of components to use.