Assertion Execution State Tables for Faster Verification Compilation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The compilation of complex assertions in verification projects is time-consuming due to the need to generate transition functions for each state, which is exacerbated by the large number of assertions involved.

Innovation Solution

A method involving the generation of a data structure during compilation and a state transition table during execution, allowing direct invocation of executable transition functions based on the state transition table, reducing the time required for generating transition functions for each state.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If transition functions are generated for each state of complex assertions during compilation, then the execution accuracy and completeness of assertion verification is improved, but the compilation time increases significantly

Engineering Contradiction:
Improveassertion verification completenessVSAvoidcompilation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the assertion verification process into two distinct phases: compilation phase and execution phase. During compilation, only a data structure describing the assertion is generated without creating transition functions for each state. The transition functions are then generated on-demand during execution based on the pre-compiled data structure. This segmentation eliminates the need to generate all transition functions during compilation, significantly reducing compilation time while maintaining verification completeness during execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by compiling and storing the assertion's data structure (including state information, transition relationships, and verification conditions) during the compilation phase, but delays the generation of actual transition functions until execution time. This preliminary preparation of structural information allows the system to have ready-to-use verification logic without the overhead of generating all executable transition functions in advance, thus resolving the time-completeness contradiction.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If a large number of assertions are compiled with full transition function generation, then the verification coverage is improved, but the overall verification project efficiency deteriorates

Engineering Contradiction:
Improveverification coverageVSAvoidverification project efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the assertion processing into separate compilation and execution stages, where only lightweight data structure compilation occurs during the compilation stage. This allows multiple assertions to be compiled quickly without the heavy overhead of generating transition functions for each assertion. The actual transition function generation is deferred to execution time, enabling high verification coverage across many assertions while maintaining project efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a compact data structure representation (a form of copy) of the assertion during compilation, which contains all necessary information about states, transitions, and verification conditions. This data structure serves as a template that can be quickly instantiated into actual transition functions during execution. The copying approach allows the system to handle numerous assertions efficiently by working with lightweight representations rather than full executable code during compilation.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12572445B2Methods, electronic devices and storage media for executing assertions
Publication Date: 2026.03.10 XEPIC TECH (BEIJING) CO LTD
  • US12572445B2 patent drawing
  • US12572445B2 patent drawing
  • US12572445B2 patent drawing

AI summary

A method for executing an assertion includes obtaining a description of the assertion that includes a plurality of events to be verified, determining a plurality of states of the assertion according to the plurality of events to be verified, generating a data structure according to the description where the data structure includes timing information, initializing the data structure at runtime to generate a state transition table that includes a plurality of state numbers determined according to the timing information and a plurality of transition types corresponding to the plurality of states and respectively correspond to executable transition functions each for one of the plurality of states, and executing the executable transition functions based on the state transition table to determine an execution result of the assertion.