Model Checking Tool Parallel State-Space Exploration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional bounded model checking techniques face the state-space explosion problem, making it impossible to exhaustively explore the state-space of large and complex circuit designs due to the vast number of states that need to be explored, limiting their ability to reach deep into the state-space.

Innovation Solution

A model checking tool that receives a circuit design encoded in a hardware description language, uses intermediate state definitions to guide the exploration of the state-space, exploring in parallel from multiple starting points to reduce the number of states that need to be explored, thereby mitigating the state-space explosion problem.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If conventional bounded model checking techniques are used to explore the state-space of a circuit design, then the exploration can be performed with limited resources, but the state-space explosion problem makes it impossible to explore deep into the state-space for large circuit designs

Engineering Contradiction:
Improvenumber of states exploredVSAvoidcircuit design complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments the state-space exploration into multiple parallel searches from different starting points. Instead of performing a single exhaustive search from one initial state, the system divides the exploration into multiple concurrent search threads, each starting from a different state in the state-space. This segmentation allows the system to cover a larger portion of the state-space without requiring exponential resources, effectively managing the complexity of large circuit designs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the exploration process by performing searches in parallel from multiple starting points simultaneously. This transforms the traditional single-threaded depth-first or breadth-first search into a multi-dimensional parallel exploration approach. By adding the dimension of parallelism across multiple starting states, the system can explore deeper into the state-space without being constrained by the exponential growth of states in the traditional single-search approach.

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

2Loss of time

If intermediate states are used to guide the state-space search, then the number of states explored is reduced, but the risk increases that important portions of the state-space may be missed

Engineering Contradiction:
Improvetime to reach target stateVSAvoidcompleteness of state-space coverage
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent segments the state-space coverage task across multiple parallel searches initiated from different starting points. Each search uses intermediate states to guide its exploration, but because multiple searches are running concurrently from diverse starting positions, the collective coverage of all searches ensures that important portions of the state-space are not missed. This segmentation approach maintains reliability while reducing the time each individual search needs to operate.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs partial explorations from multiple starting points rather than attempting a single complete exhaustive search. Each parallel search performs a bounded exploration using intermediate states to guide it, and the combination of these partial explorations achieves comprehensive coverage. This approach accepts that individual searches are partial but the aggregate effect provides complete or near-complete coverage with reduced time investment.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9372949B1Guided exploration of circuit design states
Publication Date: 2016.06.21 CADENCE DESIGN SYST INC
  • US9372949B1 patent drawing
  • US9372949B1 patent drawing
  • US9372949B1 patent drawing

AI summary

A model checking tool, which is used to test a circuit design, attempts to reach a target state from an initial state in the state-space of the circuit design using one or more intermediate states. Through an iterative process, the tool identifies intermediate states in the state-space of the circuit design that are used to generate starting states for subsequent iterations of the process. The intermediate states help to restrict the scope of the state-space search to reduce the time and memory requirements needed to reach the target state. The model checking tool also explores the state-space in parallel from a subset of computed restart states, which reduces the possibility of bypassing any essential intermediate or target states.