Deadlock Detection in Electronic Design via Formal Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current deadlock detection methods in electronic design verification are inefficient due to high computational intensity, reliance on user-provided stimuli, and the need for fairness constraints, which can lead to false negatives and are not scalable for complex designs, especially in multisystem SoCs.
Innovation Solution
A two-step formal verification technique that identifies deadlock candidates by sweeping the state space and determines if they are real deadlocks through a second search, eliminating the need for LTL liveness assertions and fairness constraints, and using formal verification to automatically calculate stimuli for deadlock detection.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional LTL liveness assertions are used for deadlock detection, then deadlock detection capability is provided, but computational intensity is high and scalability is poor
Solution Approach 1:
The patent segments the deadlock detection process into two distinct phases: (1) a first search phase that sweeps the state space to identify potential deadlock states, and (2) a second search phase that verifies whether the design can exit from those states. This segmentation divides the computationally intensive task into manageable portions, improving both efficiency and scalability while maintaining detection reliability.
Solution Approach 2:
The patent performs preliminary action by conducting the first search to identify deadlock candidates before performing the computationally heavier second search to verify them. This preliminary identification step filters out non-deadlock states early, reducing the overall computational burden and improving scalability to larger designs.
2Reliability
If LTL liveness assertions with fairness constraints are used, then deadlock detection is attempted, but false negatives occur and user expertise is required
Solution Approach 1:
The patent implements self-service by automatically generating the verification search without requiring users to manually write LTL assertions or configure fairness constraints. The system autonomously performs the two-phase search process, eliminating the need for specialized formal verification knowledge and reducing false negatives caused by improper constraint configuration.
3Ease of operation
If simulation techniques are used for deadlock detection, then user-provided stimulus can be tested, but effectiveness depends on user stimulus setup and timing requirements are hard to meet
Solution Approach 1:
The patent substitutes the mechanical simulation approach with a formal verification system that performs exhaustive state space exploration. Instead of relying on user-crafted stimulus waveforms and timing arrangements, the system systematically searches through all possible states, guaranteeing detection effectiveness independent of user expertise or timing constraints.
4Reliability
If CTL liveness assertions are used, then alternative deadlock checking is provided, but semantics are hard to explain and model checker support is limited
Solution Approach 1:
The patent adopts a simpler, more accessible formal verification approach that does not require complex CTL semantics or extensive model checker support. By using a two-phase search method with straightforward state exploration, the system achieves reliable deadlock detection with lower complexity tools and easier-to-understand operation, making formal verification accessible to a broader user base.
Data Source
AI summary
Disclosed are methods, systems, and articles of manufacture for implementing deadlock detection with formal verification techniques in an electronic design. These techniques identify one or more inputs that include at least an initial state of an electronic design and identify at least one deadlock candidate by sweeping at least a portion of a state space of the electronic design with formal verification techniques. These techniques then determine whether the at least one deadlock candidate is a real deadlock by using a second formal search with the formal verification techniques.


