Object-Oriented Circuit Autorouter for Complex Constraint Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current autorouters face challenges in concurrently satisfying multiple design constraints for high-end printed circuit board designs, as these constraints often conflict and cannot be expressed as a single numeric value, making it difficult to route nets effectively.

Innovation Solution

An object-oriented circuit autorouter is developed with a constraint-driven architecture that includes a routing data model, detail geometric routing engine, and command and control module, allowing for the direct handling of multiple constraints through constraint handlers and actions, objectives, and intents, enabling concurrent handling of complex constraints without relying on cost functions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple design constraints are handled by routing constrained nets first or by tuning cost functions, then timing constraints can be met, but the approach reaches its limits when almost every net has multiple design constraints that interact and conflict

Engineering Contradiction:
Improveconstraint satisfactionVSAvoidrouting algorithm complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the routing problem by separating constraint handling from cost-based decision making. Each design constraint is treated as an independent objective that generates its own set of allowable actions, rather than trying to combine all constraints into a single cost function. This segmentation allows the system to handle multiple conflicting constraints without exponential complexity growth.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the routing problem by using an object-oriented framework where constraints are represented as first-class objects with their own methods and properties. This dimensional shift from numerical cost optimization to object-based constraint satisfaction enables the system to naturally handle complex, interacting constraints that cannot be expressed as simple numeric values.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If cost functions are tuned to prioritize delay-constrained nets, then timing constraints are met, but it becomes impossible to further tune cost functions when multiple conflicting constraints cannot be expressed as a single numeric value

Engineering Contradiction:
Improvetiming constraint complianceVSAvoidconstraint handling flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal constraint handling framework where the same object-oriented infrastructure supports all types of design constraints (timing, crosstalk, manufacturing, etc.). Each constraint type is implemented as a specialized object that inherits from a common base class, allowing the system to uniformly handle diverse constraint types without requiring separate cost function tuning mechanisms for each constraint category.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent makes the constraint handling system dynamic by allowing constraints to be added, removed, or modified at runtime without requiring complete re-tuning of cost functions. The object-oriented design enables constraints to dynamically generate their own action sets based on current routing state, allowing the system to adapt to changing design requirements and conflicting constraints flexibly.

Inventive Principle:
Principle #15Dynamics

3Productivity

If traditional autorouter algorithms are used with numerous conflicting constraints, then routing decisions become difficult or impossible, but the new object-oriented approach enables concurrent handling of complex constraints

Engineering Contradiction:
Improverouting completion rateVSAvoidconstraint conflict resolution
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent introduces constraint handler objects as intermediaries between the routing algorithm and the design constraints. These handler objects translate high-level constraint specifications into low-level routing actions, mediating the conflict between multiple constraints by generating compatible action sets. This intermediary layer shields the core routing algorithm from the complexity of constraint conflicts while maintaining high routing completion rates.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7761836B1Circuit autorouter with object oriented constraints
Publication Date: 2010.07.20 CADENCE DESIGN SYST INC
  • US7761836B1 patent drawing
  • US7761836B1 patent drawing
  • US7761836B1 patent drawing

AI summary

In one embodiment of the invention, an object oriented autorouter is disclosed for routing nets in a circuit. The object oriented autorouter includes a routing data model (RDM); at least one routing engine, such as a single connection router (SCR), a topographical (TOPO) transformation engine, and a detail geometric (DETAIL) engine, and a command and control module (CCM) coupled together. The RDM reads and write data with a design database as well as reading one or more object oriented design constraints. Each of the routing engines have at least one action to operate on the design database to improve compliance of the circuit to a constraint. The CCM controls the overall routing process of the nets in the circuit and includes at least one director to invoke at least one of the routing engines to achieve compliance with one or more constraints.