Static Analysis of Circuit Netlists with Prototyping Statements
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing static analysis tools for circuit designs ignore prototyping statements, leading to discrepancies between simulation and synthesis phases, resulting in design issues like multiple drivers, hanging logic, and errors that require numerous iterations in the design process.
Innovation Solution
A system that processes circuit design specifications including prototyping statements, generates a netlist graph, modifies it to incorporate these statements, and performs static analysis, ensuring consistency between simulation and static analysis results.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If static analysis tools ignore prototyping statements, then the analysis process is simpler and faster, but the results are inconsistent with simulation and contain design issues
Solution Approach 1:
The system performs preliminary processing of prototyping statements by translating them into equivalent netlist modifications before static analysis. This allows the static analysis tool to work with a modified netlist that incorporates the effects of prototyping statements, ensuring consistency with simulation while maintaining analysis speed.
Solution Approach 2:
The system introduces an intermediary processing layer that translates prototyping statements into netlist modifications. This intermediary layer acts as a bridge between the simulation domain (which understands prototyping statements) and the static analysis domain (which works with netlists), allowing both tools to produce consistent results without requiring the static analyzer to directly interpret prototyping statements.
2Reliability
If static analysis tools process prototyping statements directly, then the results are more accurate and consistent with simulation, but the analysis complexity and runtime increase
Solution Approach 1:
The system extracts the complex prototyping statement processing logic from the static analysis tool and places it in a separate preprocessing stage. The static analyzer only needs to handle the modified netlist, while the prototyping statement translation is performed beforehand, reducing the complexity burden on the analysis tool.
Solution Approach 2:
The system creates a copy of the netlist and modifies this copy to incorporate prototyping statement effects, rather than requiring the static analyzer to directly interpret and process prototyping statements. This copying approach allows the original netlist to remain unchanged while providing an enhanced version for analysis.
3Manufacturing precision
If multiple design iterations are performed to resolve simulation-static analysis mismatches, then design accuracy improves, but the design cycle time increases
Solution Approach 1:
The system performs preliminary incorporation of prototyping statement effects into the netlist before static analysis, ensuring that the analysis results are consistent with simulation from the first iteration. This prevents the need for multiple corrective iterations and reduces overall design cycle time while maintaining design accuracy.
Data Source
AI summary
A system receives a specification of a circuit design for performing simulation of the circuit design. The specification includes one or more prototyping statements. A prototyping statement is processed by simulation of the circuit design. The system generates a netlist graph based on the specification of the circuit design. The system ignores the prototyping statements while generating the netlist graph. The system modifies the netlist graph to incorporate the prototyping statements of the specification. The netlist graph is modified by adding at least a net to the netlist graph based on a prototyping statement. The system performs static analysis based on the modified netlist graph.


