Simultaneous Parameter-Driven and Deterministic Hardware Simulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for verifying hardware design functionality separate parameter-driven random test scenarios from deterministic test scenarios, leading to undetected bugs and lack of synchronization control, with manual testcases requiring updates for randomization parameter changes and maintaining multiple copies for different biases.
Innovation Solution
A system and method enabling simultaneous execution of parameter-driven random and deterministic commands in a simulation environment using a command managing device, a random command generator, and a manually-driven testcase port, allowing independent modification of randomization biases without interrupting deterministic command execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If parameter-driven random test scenarios are executed separately from deterministic test scenarios, then test execution simplicity is maintained, but test coverage completeness deteriorates because bugs resulting from interactions between specialized test scenarios and random traffic go undetected
Solution Approach 1:
The patent merges parameter-driven random test scenarios and deterministic test scenarios into a single unified simulation environment. The command managing device receives and processes both random commands from the random command generator and deterministic commands from the testcase port simultaneously, allowing interaction bugs to be detected while maintaining manageable complexity through structured command arbitration.
Solution Approach 2:
The command managing device serves multiple functions: it arbitrates between random and deterministic commands, manages command queues, handles synchronization control, and coordinates with both the random command generator and testcase port. This multi-functional approach consolidates what would otherwise require separate systems, improving reliability without proportionally increasing complexity.
2Adaptability or versatility
If manual testcases include random stimulus with fixed randomization parameters, then test scenario functionality is achieved, but adaptability deteriorates because randomization parameters cannot be modified without updating testcase files and creating multiple copies
Solution Approach 1:
The patent segments the randomization parameter control from the testcase logic. The random command generator receives parameters from a parameter file rather than from within the testcase file itself. This separation allows randomization parameters to be modified independently of testcase logic, improving adaptability while reducing testcase management complexity by eliminating the need to create and maintain multiple testcase copies.
Solution Approach 2:
The command managing device acts as an intermediary between the parameter file and the command execution system. It reads randomization parameters from the parameter file and applies them when generating or processing random commands, decoupling parameter management from testcase management and enabling flexible parameter changes without modifying testcase files.
3Reliability
If deterministic testcases are executed without synchronization control in a random parameter-driven environment, then test execution simplicity is maintained, but functionality deteriorates because synchronization control often included in targeted testcases cannot be supported
Solution Approach 1:
The command managing device serves as an intermediary that implements synchronization control mechanisms. It receives synchronization commands from the testcase port, coordinates with the random command generator to pause or control random command generation during critical deterministic test sections, and manages command queues to ensure proper execution ordering. This intermediary approach enables synchronization control without requiring fundamental changes to the random parameter-driven execution model.
Data Source
AI summary
A method for allowing simultaneous parameter-driven and deterministic simulation during verification of a hardware design, comprising: enabling a plurality of random parameter-driven commands from a random command generator to execute in a simulation environment during verification of the hardware design through a command managing device; and enabling a plurality of deterministic commands from a manually-driven testcase port to execute in the simulation environment simultaneously with the plurality of random parameter-driven commands during verification of the hardware design through the command managing device, the plurality of deterministic commands and the plurality of random parameter-driven commands each verify the functionality of the hardware design.


