Flattened Netlist Trace Optimization via Intermediate Result Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional netlist tracing applications duplicate efforts when analyzing circuits with multiple instances of block circuitry, leading to inefficient processing and increased computational resource consumption.
Innovation Solution
The method involves generating and storing intermediate results for modules in a flattened netlist, allowing retrieval and addition to the total result when encountering instances, thereby optimizing trace operations and reducing processing time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional netlist tracing analyzes each node independently without storing intermediate results, then the tracing process is simple to implement, but it duplicates efforts when crossing multiple instances of the same block circuitry, leading to increased computational resource consumption and processing time
Solution Approach 1:
The patent applies preliminary action by pre-calculating and storing intermediate results when a module is first encountered during trace operations. The system evaluates a module's contribution to the total result once, stores this intermediate result in memory, and then retrieves it for all subsequent instances of the same module, avoiding redundant calculations and improving productivity
Solution Approach 2:
The patent uses copying by creating and storing intermediate result representations of module evaluations in memory. Instead of re-evaluating each module instance, the system copies the intermediate result data from the first evaluation and reuses it for all identical module instances along the trace path, significantly reducing computational resource consumption
2Loss of time
If intermediate results are stored and retrieved for each module instance, then processing time is reduced, but additional memory resources are required to store the intermediate results
Solution Approach 1:
The patent extracts only the essential intermediate results that are reusable across multiple module instances. By identifying and storing only the specific evaluation data that will be needed for identical modules, the system minimizes memory resource consumption while still achieving significant processing time reductions through selective result retrieval
3Productivity
If the tracing process evaluates each node independently without leveraging hierarchical order, then the implementation is straightforward, but it fails to optimize when the path crosses several instances of the same block circuitry
Solution Approach 1:
The system performs preliminary evaluation and storage of intermediate results for each unique module encountered during tracing. When the same module type is encountered again along the trace path, the pre-stored intermediate results are retrieved and applied, eliminating redundant computational work and improving efficiency without significantly complicating the overall tracing operation
Solution Approach 2:
The patent implements universality by creating a reusable intermediate result template from the first module evaluation that can be applied to all identical module instances. This universal intermediate result serves multiple functions across different module instances along the trace path, improving computational efficiency while maintaining ease of operation through a systematic approach
Data Source
AI summary
A method of trace optimization in a flattened netlist of a circuit is disclosed. The method generally includes the steps of (A) generating a first total result by tracing a first path through the flattened netlist, (B) writing an intermediate result in a memory, the intermediate result characterizing a module having a plurality of instances in the circuit, (C) adding the intermediate result as read from the memory to the first total result upon crossing each of the instances of the module along the first path and (D) writing the first total result into the memory.


