Abstract verification environment
AssigneeSilicon Graphics, Inc.
InventorsDennis Abts, Michael Roberts
Life of this patent
Estimating the term…
Abstract
A system and method of verifying an electronic system. A verification kernel is provided and the electronic system is expressed as a logic design. A wrapper is defined, wherein the wrapper is an interface between the logic design and the verification kernel. Tests to be run against the logic design are placed within a diagnostic program and an interface between the diagnostic program and the verification kernel is defined. The tests are then executed against the logic design. The results of the tests are captured and validated against expected results.
Claims40
A logic verification system, comprising:
- a hardware simulator;
- a diagnostic system capable of running a diagnostic program;
- an interprocess communication mechanism for transferring stimulus from the diagnostic system to the hardware simulator and for transferring results from the hardware simulator to the diagnostic system;
- and
- a verification environment, wherein the verification environment includes two or more layers of abstraction placed between logic being verified and the diagnostic program, wherein the layers of abstraction include:
- a logic design representative of the logic being verified;
- a logic design wrapper;
- and
- a verification kernel, wherein the verification kernel includes a diagnostic kernel and a simulation kernel, wherein the diagnostic kernel and the simulation kernel communicate through the interprocess communication mechanism;
- wherein the logic design, the logic design wrapper and the simulation kernel are linked to form a logic simulator.
A logic verification system, comprising:
- a hardware simulator;
- a diagnostic system;
- an interprocess communication mechanism for transferring stimulus from the diagnostic system to the hardware simulator and for transferring results from the hardware simulator to the diagnostic system;
- a verification environment, wherein the verification environment includes two or more layers of abstraction placed between logic being verified and a diagnostic program, wherein one of the layers of abstraction is a verification kernel, wherein the verification kernel includes a diagnostic kernel and a simulation kernel and wherein the diagnostic kernel and the simulation kernel communicate through the interprocess communication mechanism;
- and
- wherein the verification environment further includes a plurality of ports, including an event port, wherein the event port drives and captures events.
A logic verification system, comprising:
- a hardware simulator;
- a diagnostic system;
- an interprocess communication mechanism for transferring stimulus from the diagnostic system to the hardware simulator and for transferring results from the hardware simulator to the diagnostic system;
- a verification environment, wherein the verification environment includes two or more layers of abstraction placed between logic being verified and a diagnostic program, wherein one of the layers of abstraction is a verification kernel, wherein the verification kernel includes a diagnostic kernel and a simulation kernel and wherein the diagnostic kernel and the simulation kernel communicate through the interprocess communication mechanism;
- and
- wherein the verification environment diagnostic program generates stimulus via a DPI apply.
A method of verifying an electronic system, comprising:
- providing a verification kernel;
- expressing the electronic system as a logic design;
- defining a wrapper, wherein the wrapper is an interface between the logic design and the verification kernel;
- placing tests to be run against the logic design within a diagnostic program;
- defining a diagnostic program interface, where the diagnostic program interface is an interface between the diagnostic program and the verification kernel;
- executing the tests against the logic design;
- reporting results of the tests;
- and
- validating the results against expected results;
- wherein defining a wrapper includes compiling the logic design and the wrapper into an object file, wherein the object file is linked with verification kernel routines to create an executable logic simulator.
A method of verifying an electronic system, comprising:
- providing a verification kernel;
- expressing the electronic system as a logic design;
- defining a wrapper, wherein the wrapper is an interface between the logic design and the verification kernel;
- placing tests to be run against the logic design within a diagnostic program;
- defining a diagnostic program interface, where the diagnostic program interface is an interface between the diagnostic program and the verification kernel;
- executing the tests against the logic design;
- reporting results of the tests;
- and
- validating the results against expected results;
- wherein executing includes executing recovery code when an exception is detected.
A method of verifying an electronic system, comprising:
- providing a verification kernel;
- expressing the electronic system as a logic design;
- defining a wrapper, wherein the wrapper is an interface between the logic design and the verification kernel;
- placing tests to be run against the logic design within a diagnostic program;
- defining a diagnostic program interface, where the diagnostic program interface is an interface between the diagnostic program and the verification kernel;
- executing the tests against the logic design;
- reporting results of the test;
- and
- validating the results against expected results;
- wherein executing includes popping wiggles off a wiggle queue and popping bundles off one or more bundles queues.
A method of verifying an electronic system, comprising:
- providing a verification kernel;
- expressing the electronic system as a logic design;
- defining a wrapper, wherein the wrapper is an interface between the logic design and the verification kernel;
- placing tests to be run against the logic design within a diagnostic program;
- defining a diagnostic program interface, where the diagnostic program interface is an interface between the diagnostic program and the verification kernel;
- executing the tests against the logic design;
- reporting results of the tests;
- and
- validating the results against expected results;
- wherein executing includes referencing memories built using memory access PLI tasks.
A system for simulating operation of an electronic device, comprising:
- a hardware simulator;
- a diagnostic system;
- and
- an interprocess communication mechanism for transferring stimulus from the diagnostic system to the hardware simulator and for transferring results from the hardware simulator to the diagnostic system;
- wherein the simulator is capable of receiving connections and commands from a diagnostic program running on the diagnostic system, of executing the commands as directed and of returning results to the diagnostic system;
- and
- wherein the hardware simulator includes a simulator kernel, a logic design wrapper and a logic design representative of the electronic device.
A system for simulating operation of an electronic device, comprising:
- a hardware simulator;
- a diagnostic system;
- and
- an interprocess communication mechanism for transferring stimulus from the diagnostic system to the hardware simulator and for transferring results from the hardware simulator to the diagnostic system;
- wherein the simulator is capable of receiving connections and commands from a diagnostic program running on the diagnostic system, of executing the commands as directed and of returning results to the diagnostic system;
- and
- wherein the diagnostic system includes a plurality of ports, including an event port, wherein the event port drives and captures events.
A system for simulating operation of an electronic device, comprising:
- a hardware simulator;
- a diagnostic system;
- and
- an interprocess communication mechanism for transferring stimulus from the diagnostic system to the hardware simulator and for transferring results from the hardware simulator to the diagnostic system;
- wherein the simulator is capable of receiving connections and commands from a diagnostic program running on the diagnostic system, of executing the commands as directed and of returning results to the diagnostic system;
- and
- wherein the diagnostic program generates stimulus via a DPI apply.
Dependencies are inferred from the claim text.