Snapshot-Based DUT Initialization for Simulation Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current functional verification techniques for electronic designs are inefficient due to long initialization and shutdown routines during simulation, leading to limited throughput and long turnaround cycles, especially in system-level tests on large DUTs, and fail to allow new test code on restored snapshots, focusing only on DUT or test environment without synchronization.

Innovation Solution

A method and system for saving and restoring initialization actions on a DUT and its test environment, enabling the reuse of saved states for new tests by compiling and loading new test software, and using inter-process and inter-executable communication for synchronization, allowing users to run initialization once and reuse it for different tests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If initialization routine actions are executed during simulation to configure the DUT, then the DUT is properly configured for testing, but the simulation time increases significantly (2-3 hours)

Engineering Contradiction:
ImproveDUT configuration completenessVSAvoidsimulation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by saving the DUT state after initialization routine actions are completed in a first simulation session. This pre-saved state can then be restored in subsequent simulation sessions, eliminating the need to re-execute time-consuming initialization routines while ensuring the DUT is properly configured from the start of each new test session.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If a simulation state is saved after initialization to allow resuming, then initialization time is reduced for subsequent tests, but new test code cannot be loaded onto the restored snapshot

Engineering Contradiction:
Improveinitialization timeVSAvoidnew test code compatibility
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The patent uses copying by creating a restorable snapshot image of the DUT state that can be copied and restored in subsequent sessions. The system compiles new test code into this restored snapshot image, allowing new test scenarios to be executed on the restored state without re-running initialization, thus maintaining both time efficiency and test code adaptability.

Inventive Principle:
Principle #26Copying

3Device complexity

If existing verification techniques focus on only one aspect (DUT or test environment), then the verification process is simpler, but synchronization between DUT and testbench cannot be reestablished after restore

Engineering Contradiction:
Improveverification process complexityVSAvoidsynchronization between DUT and testbench
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent merges the verification of both the DUT and the test environment by saving and restoring the state of the combined system. When a snapshot is restored, the system automatically reestablishes synchronization between the DUT and testbench, ensuring both components are in consistent states without requiring separate verification processes.

Inventive Principle:
Principle #5Merging (Combining)

4Reliability

If system-level tests are executed on large DUTs with complete simulation, then comprehensive verification is achieved, but throughput is limited and turnaround cycle is long

Engineering Contradiction:
Improveverification comprehensivenessVSAvoidthroughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by performing comprehensive initialization and configuration in a first simulation session, saving the resulting state. Subsequent simulation sessions can then quickly restore this pre-configured state and execute new tests without re-performing the comprehensive initialization, thereby maintaining verification comprehensiveness while significantly improving throughput and reducing turnaround cycles.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11719749B1Method and system for saving and restoring of initialization actions on dut and corresponding test environment
Publication Date: 2023.08.08 CADENCE DESIGN SYST INC
  • US11719749B1 patent drawing
  • US11719749B1 patent drawing
  • US11719749B1 patent drawing

AI summary

A computer implemented method may include executing a first simulation test for testing a device under test (DUT) and a corresponding test environment; saving a snapshot image of the DUT and of the corresponding test environment upon completion of initialization actions included in the first simulation test to configure the DUT; compiling a DUT part of a second simulation test into the saved snapshot image of the DUT to obtain a restore image for the DUT; loading the restore image of the DUT and restoring the snapshot image of the test environment; loading a test environment part of the second simulation test; and executing the second simulation test on the DUT and corresponding test environment.