FPGA Logic Synthesis Optimization via AI Design Explorer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current FPGA design flows face challenges in optimizing logic synthesis due to the need for unique recipes for each design, leading to inefficiencies in LUT resource utilization and performance, particularly in Field-Programmable Gate Arrays (FPGAs), where existing tools struggle to find the optimal synthesis script for varying logic structures.

Innovation Solution

The introduction of a design explorer that uses artificial intelligence and parallel exploration techniques to dynamically build synthesis recipes, integrating with logic synthesizers like ABC or LSOracle, enabling breadth-first exploration and adaptive transformation sequences to improve LUT mapping and logic level reduction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If standard recipes are used for logic synthesis, then ease of operation is improved, but manufacturing precision deteriorates

Engineering Contradiction:
Improveease of operationVSAvoidmanufacturing precision
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The patent implements dynamic recipe generation that adapts to each specific logic design rather than using static standard recipes. The system automatically adjusts transformation sequences based on the characteristics of the input logic network, enabling both ease of operation and high manufacturing precision simultaneously.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes parameters of the synthesis process by dynamically selecting and sequencing transformations based on design-specific parameters. This allows the recipe to be optimized for each particular logic design while maintaining ease of use through automation.

Inventive Principle:
Principle #35Parameter changes

2Manufacturing precision

If unique recipes are created for each design, then manufacturing precision is improved, but device complexity worsens

Engineering Contradiction:
Improvemanufacturing precisionVSAvoiddevice complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The system provides self-service by automatically generating unique optimization recipes for each design without requiring external expert intervention. The automated recipe generation engine analyzes the logic network and creates optimal transformation sequences independently, achieving high manufacturing precision while avoiding the complexity of manual recipe creation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical process of manual recipe creation by experts with an automated computational system. This substitution eliminates the complexity associated with human expert involvement while maintaining or improving manufacturing precision through algorithmic optimization.

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

3Manufacturing precision

If extensive logic optimization is performed, then manufacturing precision is improved, but loss of time worsens

Engineering Contradiction:
Improvemanufacturing precisionVSAvoidloss of time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-evaluating transformation options and sequencing them optimally before full optimization execution. This preliminary analysis enables the system to achieve high manufacturing precision more efficiently by avoiding unnecessary transformations and focusing computational effort on the most promising optimization paths.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuity of useful action through iterative optimization that continuously refines the logic network. The system performs transformations in continuous passes, building upon previous results to achieve progressive improvement without redundant operations, thereby reducing total optimization time while maintaining high precision.

Inventive Principle:
Principle #20Continuity of useful action

4Ease of manufacture

If standard recipes are used across many designs, then ease of manufacture is improved, but productivity deteriorates

Engineering Contradiction:
Improveease of manufactureVSAvoidproductivity
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent replaces manual recipe creation and selection processes with automated systems that generate optimization recipes programmatically. This substitution maintains ease of manufacture through automation while significantly improving productivity by eliminating the time-consuming process of creating unique recipes for each design.

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

Solution Approach 2:

The system dynamically changes parameters of the synthesis process based on each design's characteristics, enabling automated adaptation that improves productivity. The parameter-driven approach allows the system to maintain ease of manufacture through automation while achieving design-specific optimization that standard recipes cannot provide.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20230342185A1Boolean Network Improvement
Publication Date: 2023.10.26 RAPIDSILICON US INC
  • US20230342185A1 patent drawing
  • US20230342185A1 patent drawing
  • US20230342185A1 patent drawing

AI summary

Technology is described for improvement of a Boolean Network. The method can include applying a plurality of transformation scripts to a Boolean Network to form a plurality of levels of a transformation tree with nodes representing transformation metrics for the transformation scripts applied to the Boolean Network. The nodes in individual levels of the transformation tree can be prioritized based in part on a cost function that uses the transformation metrics to identify an improved node as compared to less improved nodes in each of the plurality of levels of the transformation tree. Another operation may be identifying a transformation script using improved nodes of the transformation tree.