Verification system for simulator
First Claim
1. A computer program product for use in conjunction with a computer system, the computer program product configured to direct the computer system to verify operation of a specified system, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising:
- verification procedures for interconnection with a set of simulation procedures so as to interleave performance of system verification operations with system simulation operations;
the verification procedures including instructions for executing a test bench so as to define operational correctness and/or performance criteria for the specified system, the operational correctness and/or performance criteria including an Expect Event, the Expect Event comprising a combination of one or more signal values that are expected to occur during simulation of the specified system, and a time frame during which the signal value combination is expected to occur;
wherein the time frame for the Expect Event has a specified simulation start time and a specified nonzero, finite duration; and
the verification procedures including instructions for blocking execution of a thread of execution associated with the test bench until the earlier of the combination of one or more signal values occurring during simulation of the specified system and the time frame expiring.
0 Assignments
0 Petitions
Accused Products
Abstract
An electronic circuit verification system and method includes an HDL circuit simulator and a circuit simulation verifier that pass control back and forth between each other, and that cooperate so as to perform circuit verification tasks than would be very difficult to perform using only the HDL circuit simulator. The circuit simulation verifier executes a test bench so as to define operational correctness and/or performance criteria, including at least one Expect Event, each Expect Event comprising a combination of one or more signal values that are expected to occur during simulation, and a time frame during which the signal value combination is expected to occur. The circuit simulation verifier includes instructions for blocking execution of a thread of execution associated with the test bench until the earlier of the combination of one or more signal values occurring during simulation and the time frame expiring.
95 Citations
37 Claims
-
1. A computer program product for use in conjunction with a computer system, the computer program product configured to direct the computer system to verify operation of a specified system, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising:
-
verification procedures for interconnection with a set of simulation procedures so as to interleave performance of system verification operations with system simulation operations; the verification procedures including instructions for executing a test bench so as to define operational correctness and/or performance criteria for the specified system, the operational correctness and/or performance criteria including an Expect Event, the Expect Event comprising a combination of one or more signal values that are expected to occur during simulation of the specified system, and a time frame during which the signal value combination is expected to occur;
wherein the time frame for the Expect Event has a specified simulation start time and a specified nonzero, finite duration; andthe verification procedures including instructions for blocking execution of a thread of execution associated with the test bench until the earlier of the combination of one or more signal values occurring during simulation of the specified system and the time frame expiring. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A simulation and verification system, comprising:
-
a simulator and verifier coupled so as to pass control back and forth between each other; the verifier executing a test bench so as to define operational correctness and/or performance criteria for a specified system, the operational correctness and/or performance criteria including at least one Expect Event, each Expect Event comprising a combination of one or more signal values that are expected to occur during simulation of the specified system, and a time frame during which the signal value combination is expected to occur;
wherein the time frame for each Expect Event has a specified simulation start time and a specified nonzero, finite duration; andthe verifier including instructions for blocking execution of a thread of execution associated with the test bench until the earlier of the combination of one or more signal values occurring during simulation of the specified system and the time frame expiring. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A computer program product for use in conjunction with a computer system, the computer program product configured to direct the computer system to verify operation of a specified system, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising:
-
verification procedures for interconnection with a set of simulation procedures so as to interleave performance of verification operations with simulation operations; the verification procedures including instructions for executing a test bench so as to define operational correctness and/or performance criteria for the specified system, the operational correctness and/or performance criteria including at least one Full Expect Event, each Full Expect Event comprising a combination of one or more signal values that are expected to remain true for an associated time frame during simulation of the specified system;
wherein the time frame for each Full Expect Event has a specified simulation start time and a specified nonzero, finite duration; andthe verification procedures including instructions for performing a failure action if the signal value combination for a respective Full Expect Event fails to remain true during the respective Full Expect Event'"'"'s associated time frame.
-
-
26. A simulation and verification system, comprising:
-
a simulator and verifier coupled so as to pass control back and forth between each other; the verifier executing a test bench so as to define operational correctness and/or performance criteria for a specified system, the operational correctness and/or performance criteria including at least one Full Expect Event, each Full Expect Event comprising a combination of one or more signal values that are expected to remain true for an associated time frame during simulation of the specified system;
wherein the time frame for each Full Expect Event has a specified simulation start time and a specified nonzero, finite duration; andthe verifier including instructions for performing a failure action if the signal value combination for a respective Full Expect Event fails to remain true during the respective Full Expect Event'"'"'s associated time frame.
-
-
27. A computer program product for use in conjunction with a computer system, the computer program product configured to direct the computer system to verify operation of a specified system, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising:
-
verification procedures for interconnection with a set of simulation procedures so as to interleave performance of verification operations with simulation operations; the verification procedures including instructions for executing a test bench so as to define operational correctness and/or performance criteria for the specified system, the test bench including multiple concurrent threads, each thread having associated actions to be performed by the thread when execution of the thread is enabled; and the verification procedures further including thread synchronization instructions for blocking execution of respective ones of the threads until, for each blocked thread, a respective defined combination of events occurs. - View Dependent Claims (28, 29, 30, 31, 32)
-
-
33. A simulation and verification system, comprising:
-
a simulator and verifier coupled so as to pass control back and forth between each other; the verifier executing a test bench so as to define operational correctness and/or performance criteria for the specified system, the test bench including multiple concurrent threads, each thread having associated actions to be performed by the thread when execution of the thread is enabled; and the verifier further including thread synchronization instructions for blocking execution of respective ones of the threads until, for each blocked thread, a respective defined combination of events occurs; wherein the combination of events comprises a combination of event signals generated by various ones of the threads during execution of the threads; and the verification procedures include instructions for creating and executing child threads in response to execution of a predefined fork command by a parent thread comprising one of the multiple threads, and for blocking the parent thread'"'"'s execution after execution of the fork command. - View Dependent Claims (34, 35, 36, 37)
-
Specification