Force-Directed Logic Block Placement for FPGA Routability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for placing circuits on reconfigurable logic devices, such as FPGAs, are inefficient and often result in suboptimal wirelength and routability due to the complexity of the placement and routing process, which is exacerbated by the need for flexible configurability and adherence to timing constraints.

Innovation Solution

A force-directed layout method is employed to determine the placement of logic blocks on reconfigurable logic devices, utilizing attractive and repulsive forces to cluster interconnected blocks while maintaining distance between them, thereby improving routability and reducing computational effort. This method involves calculating a circuit graph based on the connections between blocks and applying spring functions to achieve an energy-minimal state, allowing for structure-preserving placement and local refinements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If traditional placement methods are used for reconfigurable logic devices, then the placement process is simpler, but the wirelength and routability are suboptimal

Engineering Contradiction:
Improveplacement precisionVSAvoidplacement process complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent replaces traditional mechanical or algorithmic placement methods with a physics-based force-directed model. Logic blocks are treated as particles subject to attractive forces (representing connectivity requirements) and repulsive forces (representing routing congestion). This substitution transforms a complex combinatorial optimization problem into a physical simulation that naturally converges to optimal placements, improving both precision and handling of complexity.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent dynamically adjusts placement parameters during the compilation process by introducing adjustable force parameters (attractive and repulsive force magnitudes). These parameters can be modified based on timing constraints and routing requirements, allowing the placement to adapt and improve precision without requiring a complete redesign of the placement process.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If flexible configurability is implemented to meet timing constraints, then the system adaptability is improved, but the placement and routing complexity increases

Engineering Contradiction:
ImproveconfigurabilityVSAvoidplacement and routing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic placement model where logic blocks can be repositioned based on changing timing constraints and routing requirements. The force-directed model allows continuous adjustment of block positions during multiple compilation passes, enabling the system to adapt to different timing scenarios without manually redesigning the placement, thus managing complexity while maintaining high configurability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent incorporates feedback mechanisms where timing analysis results and routing congestion information are fed back into the force-directed placement model. This feedback loop allows the system to automatically adjust placement configurations to meet timing constraints, improving adaptability while the automated nature of the feedback process prevents complexity from escalating.

Inventive Principle:
Principle #23Feedback

3Productivity

If detailed placement optimization is performed, then the routing efficiency is improved, but the computational effort increases

Engineering Contradiction:
Improverouting efficiencyVSAvoidcomputational time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent replaces exhaustive search or detailed iterative optimization methods with a physics-based force-directed simulation. This substitution provides a good balance between routing efficiency and computational time by leveraging physical principles that naturally guide blocks toward optimal positions without requiring exhaustive exploration of all possible configurations.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent applies partial optimization by focusing computational effort on critical paths and heavily connected logic blocks during the force-directed simulation. Not all blocks require equal optimization attention, so the model applies stronger forces to critical blocks while using weaker or default forces for less critical blocks, improving routing efficiency for important paths while limiting overall computational time.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3333735B1Method and computer program for determining a placement of at least one circuit for a reconfigurable logic device
Publication Date: 2021.07.07 FRAUNHOFER GESELLSCHAFT ZUR FORDERUNG DER ANGEWANDTEN FORSCHUNG EV
  • EP3333735B1 patent drawingFigure 1
  • EP3333735B1 patent drawingFigure 1a
  • EP3333735B1 patent drawingFigure 2(a)~2(f)

AI summary

Embodiments relate to a method and computer program for determining a placement of at least one circuit for a reconfigurable logic device. The method comprises obtaining (110) information related to the at least one circuit. The at least one circuit comprises a plurality of blocks and a plurality of connections between the plurality of blocks. The plurality of blocks comprise a plurality of logic blocks. The method further comprises calculating (120) a circuit graph based on the information related to the at least one circuit. The circuit graph comprises a plurality of nodes and a plurality of edges. The plurality of nodes represent at least a subset of the plurality of blocks of the at least one circuit and wherein the plurality of edges represent at least a subset of the plurality of connections between the plurality of blocks of the at least one circuit. The method further comprises determining (130) a force-directed layout of the circuit graph. The force-directed layout is based on attractive forces based on the plurality of connections between the plurality of blocks and based on repulsive forces between the plurality of blocks. The method further comprises determining (140) a placement of the plurality of logic blocks onto a plurality of available logic cells of the reconfigurable logic device based on the force-directed layout of the circuit graph.