Reinforcement Learning for Digital Circuit Gate Sizing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Digital circuit design optimization faces challenges due to the NP-hard nature of netlist adjustment, leading to an exponentially large solution space and the risk of getting stuck in local optima for power, performance, and area (PPA) improvements, which existing heuristics struggle to efficiently address.

Innovation Solution

A reinforcement learning-based technique that generates a k-hop neighborhood graph, encodes it into a state vector, and applies a machine learning model to determine adjustments for gate sizing, buffering, logic restructuring, and other adjustments, while performing static timing analysis to update the model and improve PPA convergence.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If heuristics are deployed for gate sizing to keep runtime linear, then productivity is improved, but manufacturing precision deteriorates due to getting stuck at local optima

Engineering Contradiction:
ImproveruntimeVSAvoidPPA quality
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent replaces traditional heuristic-based mechanical search methods with a reinforcement learning system that uses neural networks to predict optimal adjustments. The RL agent learns from simulated experiences and applies policy networks to determine gate sizing adjustments, substituting the mechanical heuristic search with an intelligent learning-based system that achieves both efficiency and precision.

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

Solution Approach 2:

The patent changes the approach from fixed heuristic rules to dynamic parameter adjustment based on learned policies. The reinforcement learning model adapts its decisions based on the current circuit state, adjusting gate sizes according to learned patterns rather than predetermined heuristics, enabling the system to escape local optima while maintaining linear runtime through efficient policy evaluation.

Inventive Principle:
Principle #35Parameter changes

2Manufacturing precision

If the global solution space is explored to achieve best PPA, then manufacturing precision is improved, but productivity deteriorates due to exponentially large solution space

Engineering Contradiction:
ImprovePPA qualityVSAvoidturn-around-time
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent segments the exponentially large global solution space into manageable local neighborhoods around each gate. Instead of exploring all possible gate sizing combinations globally, the reinforcement learning agent evaluates adjustments locally based on neighborhood graphs, reducing the search space from exponential to polynomial complexity while maintaining solution quality through iterative refinement.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-training the reinforcement learning model on simulated circuit data before actual optimization. The policy networks are pre-learning optimal adjustment patterns from synthetic examples, so during actual gate sizing, the system can quickly evaluate and apply adjustments without extensive real-time search, achieving both speed and precision.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11741282B2Reinforcement learning-based adjustment of digital circuits
Publication Date: 2023.08.29 SYNOPSYS INC
  • US11741282B2 patent drawing
  • US11741282B2 patent drawing
  • US11741282B2 patent drawing

AI summary

Systems and methods for adjusting a digital circuit design are described. For example, the method may include selecting a first path in the digital circuit design. The first path includes a plurality of gates. The method also includes generating a k-hop neighborhood graph of the first path, encoding the k-hop neighborhood graph into a state vector, and applying a machine learning model to the state vector to determine an adjustment to be made on a first gate of the plurality of gates. The method further includes changing the first gate based on the adjustment.