Incremental Compilation for Electronic Design Automation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Electronic design automation (EDA) tools require significant time to process large systems, especially when only localized changes are made, as they often re-process the entire system, which is inefficient and can lead to unfavorable design changes.

Innovation Solution

The implementation of preservation criteria and constraints to identify and preserve unmodified portions of a system, allowing for incremental compilation by reusing previous design results and pruning data structures to reduce compilation runtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If EDA tools re-process the entire system from scratch, then design completeness is ensured, but compilation time increases significantly

Engineering Contradiction:
Improvedesign completenessVSAvoidcompilation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the design system into preservable and non-preservable portions based on modification status. The compilation process is segmented to process only non-preservable portions while reusing results from preservable portions, thereby reducing compilation time while maintaining design completeness through selective preservation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary identification of preservable portions before the main compilation process. By pre-determining which portions can be preserved and storing their design results, the system avoids re-processing these portions, thus reducing compilation time while ensuring that preservation decisions are made with complete information.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If EDA tools preserve unmodified portions of the system, then compilation time is reduced, but design stability may be compromised

Engineering Contradiction:
Improvecompilation timeVSAvoiddesign stability
Core Design Contradiction:
Loss of timeVSStability of the object's composition

Solution Approach 1:

The patent implements feedback mechanisms where design results from preserved portions are validated against the current design state. The system continuously monitors whether preserved portions remain compatible with modifications in non-preservable portions, ensuring design stability while maintaining compilation time savings through incremental updates.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent makes the preservation status dynamic rather than static. Portions that were previously preservable may become non-preservable if their compatibility changes, and vice versa. This dynamic adjustment ensures design stability while optimizing compilation time by adapting preservation decisions to the current design state.

Inventive Principle:
Principle #15Dynamics

3Productivity

If preservation constraints are applied to unmodified portions, then compilation efficiency improves, but device complexity increases

Engineering Contradiction:
Improvecompilation efficiencyVSAvoiddata structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts and removes preservable portions from the active compilation data structures, storing them separately. This extraction reduces the complexity of data structures that need to be processed during compilation while maintaining compilation efficiency through selective reprocessing of only non-preservable portions.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a new dimension to the compilation process by adding preservation status as an additional attribute to design portions. This dimensional change allows the system to track and manage preservable portions separately, improving compilation efficiency without significantly increasing the complexity of core data structures.

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

Data Source

PatentUS10073941B1Method and apparatus for performing efficient incremental compilation
Publication Date: 2018.09.11 ALTERA CORP
  • US10073941B1 patent drawing
  • US10073941B1 patent drawing
  • US10073941B1 patent drawing

AI summary

A method for designing a system on a target device includes identifying candidate portions in the system to preserve based on similarities between the system and another system. Preservation criteria are applied on the candidate portions in the system to preserve to identify portions of the system to preserve. Design results from the another system are reused for portions in the system that are preserved.