Task-Based Multi-Process IC Design Synthesis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional parallelization techniques in integrated circuit design face challenges in partitioning physical and logical synthesis, leading to long run times due to the difficulty in determining the effects of changes on the entire design, making it hard to efficiently parallelize these processes.

Innovation Solution

A task-based multi-process design synthesis methodology is introduced, where objects from an integrated circuit design are grouped into subsets and assigned to child processes that perform transforms and notify the parent process of successful candidates, allowing the parent to only perform transforms on successful objects, thereby reducing overhead and optimizing the design.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If conventional parallelization techniques are used to speed up synthesis operations, then processing speed should improve, but the difficulty in partitioning physical and logical synthesis and determining the effects of changes leads to increased complexity and long run times

Engineering Contradiction:
Improveprocessing speedVSAvoidpartitioning complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The design is divided into discrete objects that can be independently processed. Each object represents a unit of work that can be evaluated and transformed separately, allowing the synthesis process to be partitioned into manageable subsets that can be processed in parallel without complex interdependencies.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Child processes perform preliminary evaluation of transforms on object subsets before the parent process commits to applying them. This preliminary action identifies candidate objects that are likely to benefit from transforms, allowing the parent process to focus computational resources only on promising candidates rather than all objects.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If transforms are performed on all objects to ensure thorough optimization, then design quality improves, but processing time increases significantly

Engineering Contradiction:
Improvedesign qualityVSAvoidprocessing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

Instead of performing transforms on all objects, the system performs transforms on a subset of candidate objects identified by child processes. This partial action approach maintains design quality by focusing on objects most likely to benefit from optimization while significantly reducing processing time by avoiding unnecessary transforms on non-candidate objects.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Child processes autonomously evaluate objects and identify which ones are candidates for transforms. This self-service mechanism allows the system to automatically filter objects based on their potential to benefit from optimization, eliminating the need for the parent process to evaluate every object and thereby reducing overall processing time while maintaining quality.

Inventive Principle:
Principle #25Self-service

3Reliability

If the parent process performs all transforms directly, then control and quality assurance are maintained, but processing efficiency decreases due to overhead

Engineering Contradiction:
Improvecontrol qualityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The processing workload is segmented between child processes and the parent process. Child processes handle the evaluation and identification of candidate objects, while the parent process maintains control over the actual transform application. This segmentation allows parallel processing to improve efficiency while the parent process preserves reliability by maintaining ultimate control and quality assurance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Child processes act as intermediaries that evaluate objects and communicate candidate information back to the parent process. This intermediary layer enables the system to leverage parallel processing for evaluation while the parent process remains the authoritative controller for transform application, thus maintaining both efficiency and control quality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8677304B2Task-based multi-process design synthesis
Publication Date: 2014.03.18 GLOBALFOUNDRIES US INC
  • US8677304B2 patent drawing
  • US8677304B2 patent drawing
  • US8677304B2 patent drawing

AI summary

A task-based multi-process design synthesis methodology relies on a plurality of child processes to assist a parent process in performing optimizations on an integrated circuit design. Objects from an integrated circuit design are grouped into subsets and assigned to child processes, with each child process performing a transform on each of the objects in the subset assigned to that child process and determining which of the objects in the subset are candidate objects for which performance of the transform has been successful. The child processes then notify the parent process of those objects that qualify as candidate objects, so that the parent process only has to perform the transform on the candidate objects, thereby relieving the parent process from the overhead associated with performing the transform on non-candidate objects for which the transform has been determined by the child processes as not being successful.