US7444574B2 - Stimulus extraction and sequence generation for an electric device under test - Google Patents

Stimulus extraction and sequence generation for an electric device under test Download PDF

Info

Publication number
US7444574B2
US7444574B2 US11/064,729 US6472905A US7444574B2 US 7444574 B2 US7444574 B2 US 7444574B2 US 6472905 A US6472905 A US 6472905A US 7444574 B2 US7444574 B2 US 7444574B2
Authority
US
United States
Prior art keywords
dut
extracted
expressions
extracted expressions
windows
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US11/064,729
Other versions
US20060190233A1 (en
Inventor
Maureen Terese Davis
Katherine Ann Dunning
Tony Emile Sawan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GlobalFoundries Inc
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US11/064,729 priority Critical patent/US7444574B2/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DAVIS, MAUREEN TERESE, DUNNING, KATHERINE ANN, MORROW, TONY EDWARD
Publication of US20060190233A1 publication Critical patent/US20060190233A1/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DAVIS, MAUREEN TERESE, DUNNING, KATHERINE ANN, SAWAN, TONY EMILE
Application granted granted Critical
Publication of US7444574B2 publication Critical patent/US7444574B2/en
Assigned to GLOBALFOUNDRIES U.S. 2 LLC reassignment GLOBALFOUNDRIES U.S. 2 LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTERNATIONAL BUSINESS MACHINES CORPORATION
Assigned to GLOBALFOUNDRIES INC. reassignment GLOBALFOUNDRIES INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: GLOBALFOUNDRIES U.S. 2 LLC, GLOBALFOUNDRIES U.S. INC.
Assigned to GLOBALFOUNDRIES U.S. INC. reassignment GLOBALFOUNDRIES U.S. INC. RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: WILMINGTON TRUST, NATIONAL ASSOCIATION
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31922Timing generation or clock distribution
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Definitions

  • SOC System On a Chip
  • levels of verification include functional, behavioral and formally parameterized testing.
  • Several techniques and methods are used to determine the completeness of the verification effort.
  • One common method is to generate a comprehensive list of complex stimulus sequences that represent the various scenarios needed to validate the Design Under Test (DUT), which is a combination of the SOC hardware and a software wrapper associated with the SOC. As the complexity of the DUT grows, so does the complexity of the needed scenarios.
  • DUT Design Under Test
  • a tagged view 300 shows multiple time windows 310 a - c , which have respectively been tagged at T 1 , T 2 and T 3 .
  • These tags constitute the windows to be extracted, and encompass particular events such as T 1 .EV 1 -T 1 .EV 3 ; T 2 .EV 1 -T 2 .EV 3 ; and T 3 .EV 1 -T 3 .EV 5 , shown in the extracted view of FIG. 4 .
  • Each of the tagged windows is arranged in a particular sequence (e.g., T 1 followed by T 2 followed by T 3 ). However, in a preferred alternate embodiment described below, these sequences can be re-ordered to create new scenarios.
  • the present invention thus presents a new and useful method of graphically and selectively time-slicing particular window(s) of simulation results for one or more particular runs.
  • a test engineer is thus able to organize/arrange these windows of captured events, produce specific test sequences, and thus generate traditionally difficult scenarios such as corner cases.
  • the present invention may alternatively be implemented in a program product.
  • Programs defining functions on the present invention can be delivered to a data storage system or a computer system via a variety of signal-bearing media, which include, without limitation, non-writable storage media (e.g., CD-ROM), writable storage media (e.g., a floppy diskette, hard disk drive, read/write CD ROM, optical media), and communication media, such as computer and telephone networks including Ethernet.
  • signal-bearing media when carrying or encoding computer readable instructions that direct method functions in the present invention, represent alternative embodiments of the present invention.
  • the present invention may be implemented by a system having means in the form of hardware, software, or a combination of software and hardware as described herein or their equivalent.

Abstract

A method and system that utilizes a graphical interface that enables a user to select and capture building blocks of a Device Under Test (DUT) test scenario from a previously run test case or from multiple stimulation results. Each of these extracted building block events or “tags” are created from a slice of a graphical stimulation view, which slice is converted into a coded stimulus written in a high-level language code that represents the condition(s) that created the graphical simulation view. These coded stimuli (representing the tags) are stored in a library. To create a corner case scenario or sequence in the DUT, a user utilizes a graphical interface to select the different extracted tags from the library and combines them together.

Description

BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates in general to the field of computers, and in particular to the simulation of electronic Devices Under Test (DUT). Still more particularly, the present invention describes a graphical method of generating test sequences based on current simulation results.
2. Description of the Related Art
The product development of a System On a Chip (SOC) encompasses various levels of verification that include functional, behavioral and formally parameterized testing. Several techniques and methods are used to determine the completeness of the verification effort. One common method is to generate a comprehensive list of complex stimulus sequences that represent the various scenarios needed to validate the Design Under Test (DUT), which is a combination of the SOC hardware and a software wrapper associated with the SOC. As the complexity of the DUT grows, so does the complexity of the needed scenarios.
The traditional method of generating these complex scenarios is through manual coding, or parameterized stimulus generators. The required time to produce such design verification code can be very long, the task tedious, and error prone. In addition, there are such scenarios called corner cases, which are defined as very specific although very unusual complex DUT operating scenarios that have the property of being difficult to predict. It is difficult, if not impossible, to code in a directed test case that represents a corner case.
Another method used to hit these corner cases is random test case generation. However, such random test cases can take millions of run cycles to achieve a single corner scenario.
What is needed, then, is a method for creating complex test scenarios that does not require excessive manual coding or the use of excessive random test cases.
SUMMARY OF THE INVENTION
The present invention is thus directed to a method and system that utilizes a graphical interface that enables a user to select and capture building blocks of a Device Under Test (DUT) test scenario from a previously run test case or from multiple stimulation results. Each of these extracted building block events or “tags” are created from a slice of a graphical stimulation view, and is then converted into a coded stimulus written in a high-level language code that represents the condition(s) that created the graphical simulation view. These coded stimuli (representing the tags) are stored in a library. To generate a corner case scenario or sequence in the DUT, a user utilizes a graphical interface to select the different extracted tags from the library and combines them together.
The present invention improves upon prior-art method for creating test case stimuli by reducing the man-hours and the machine cycle time needed to create corner case scenarios, and improves verification coverage for the DUT, particularly in the area of multiprocessor (MP) and cache coherency where many corner cases are never simulated under test conditions. Generating scenarios using visual inspection of the stimulation results is less tedious, and can provide a more logically accurate scenario than manually coding it.
The above, as well as additional purposes, features, and advantages of the present invention will become apparent in the following detailed written description.
BRIEF DESCRIPTION OF THE DRAWINGS
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further purposes and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, where:
FIG. 1 depicts a test bench environment in which the present invention is utilized;
FIG. 2 depicts an original stimulation results view of signals created in a Device Under Test (DUT);
FIG. 3 illustrates a time-slice of stimulation results shown in FIG. 2;
FIG. 4 depicts different events within each time-slice shown in FIG. 3;
FIG. 5 is a written description of the events graphically shown in FIG. 4;
FIG. 6 shows the written description of FIG. 5 described in a high-level computer language; and
FIG. 7 is a flow-chart of steps taken in a preferred embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
With reference now to the figures, and particularly to FIG. 1, a test bench 100 is presented. Test bench 100 includes a simulation environment 102, which includes a Device Under Test 104, which is a combination of hardware (real or simulated) and a test software environment associated with that hardware.
DUT 104 outputs simulation results 106, which are a “snapshot” of logical signals within DUT 104 (or alternatively, may be an output from DUT 104). Simulation results 106 are viewable on a viewer 108, which displays simulation results 106 along a time line, or events schedule.
The present invention includes selecting one or more time slices 110 representing events during particular time period. For example, time slice 110 a captures events between times t1 and t2, while time slice 110 b captures events between times t3 and t4.
One or more of the time slices 110 are then introduced as stimulus 112 into DUT 104, in a manner described in further detail below.
With reference now to FIG. 2, an original simulation results view 200 is shown. Original simulation results view 200 represents signals in DUT 104. Preferably, the signals represented are internal logical signals within DUT 104, although they may be input signals to or output signals from DUT 104. Original simulation results view 200 thus shows results that have been produced in or by DUT 104, either in real hardware or by a simulation, which results are examined via a waveform viewer such as viewer 108 shown in FIG. 1. The exemplary signals chosen and shown are SIG_A, CAP_BUS[0:32], and ASSERT_Q. SIG_A may be an input or an internal signal, such as from a signal checker (not shown) or a driven input, into DUT 104. CAP_BUS[0:32] is a signal on a Command Address Packet (CAP) 32-bit bus, and may represent an input, an output, or an address. ASSERT_Q is typically a logical flag, which is a conditional input identifying a logical condition.
Referring now to FIG. 3, a tagged view 300 shows multiple time windows 310 a-c, which have respectively been tagged at T1, T2 and T3. These tags constitute the windows to be extracted, and encompass particular events such as T1.EV1-T1.EV3; T2.EV1-T2.EV3; and T3.EV1-T3.EV5, shown in the extracted view of FIG. 4. Each of the tagged windows is arranged in a particular sequence (e.g., T1 followed by T2 followed by T3). However, in a preferred alternate embodiment described below, these sequences can be re-ordered to create new scenarios.
Note that in FIG. 4, the event number does not necessary correspond to a time sequence. For example, in time window 310 a (T1), event T1.EV1 occurs after event T1.EV2 and event T1.EV3. These events are seemingly randomly named to emphasize an embodiment of the present invention in which individual events can be “cherry picked” out of a particular time window 310, as opposed to an entire time window 310 representing a grouped set of events.
Once a sequence of tags is extracted, as shown in FIG. 4, particular events are automatically categorized as shown in FIG. 5, which represents an event capture view 500. Each event is a basic building block in a tag (time window). In one preferred embodiment, as indicated above, multiple events are grouped together to generate an elaborate sequence, which is used to generate a particular verification scenario.
Referring again to FIG. 5, consider the events in T1. Event T1.EV1 is an assertion of Q, as graphically depicted in FIG. 4. Event T1.EV2 is a generation of a Signal A representing that a logical signal has gone from High to Low. Event T1.EV3 indicates that tag T1 drives the value on the CAP bus to an unknown state.
Likewise, in T2, event T2.EV2 shows that ASSERT_Q is asserted while the value on the CAP bus is FFFF_FFF1 (T2.EV2) only if Signal A is High (T2.EV3). In T3, if Signal A is going from Low to High (T3.EV1) or Signal A is going from High to Low to High (T3.EV2), and if the value of the CAP bus is FFFF0000 (T3.EV4), then ASSERT_Q is asserted (T3.EV5). However, if the value of the CAP bus is A5A5_FF03 (T3.EV3) or some other non-FFFF0000 value, then the ASSERT_Q is not asserted.
The conditions for asserting ASSERT_Q are shown in a high-level language pseudo code shown in FIG. 6, which depicts a stimulus generation view 600. Exemplary high-level languages that may be used include any Hardware Descriptor Language (HDL) such as Register Transfer Language (RTL), or any other high-level language such as C, etc. Preferably, the pseudo code is grouped together as a DUT stimulus 602, to reflect event conditions shown in respective tags (event windows 310). These DUT stimuli 602 can be applied to the DUT as new stimuli in subsequent test iterations.
The present invention is thus summarized in the flowchart shown in FIG. 7. After initiator block 702, a new stimulus is applied to the Device Under Test (block 704), such as depicted as DUT 104 in FIG. 1. An original simulation results view, such as shown in FIG. 2, is then created (block 706). Time based windows are then selected and tagged (block 708), as described in FIG. 3. The tagged windows are extracted to identify events within the selected time frames (block 710), as shown in FIG. 4. The identified events are captured as extracted expressions (block 712), as shown and described in exemplary form as “Extracted Expressions” above in FIG. 5. The expressions are then stored into a library.
As stated in block 713, the extracted expressions may be organized and/or re-arranged in any order that the test engineer desires. For example, a compilation of expressions may include those shown and described above in Tags T1, T2 and T3. However, the temporal order of the tags may be re-arranged, such that, for example, the events described in T3 precede those in T2, etc. Therefore, many different combinations are available to create different event scenarios. These many combinations make it easier for the test engineer to create a combination that emulates a corner case as described above. The reordered sequences are stored into the expressions library for future reuse.
As further described in block 713, these extracted expressions, as well as other events from the library and/or the currently presented tagged window(s) are then organized and stored as new sequences back into the library. That is, previously captured events may be reordered and/or rearranged to describe new sequences, which may then be stored in the library for use as future DUT stimuli.
The extracted expressions and/or re-organized sequences are translated into high-level code (block 714), as shown in FIG. 6.
These translated sequences from the captured sequences, as well as other events from the library and/or the currently presented tagged window(s) are organized and stored as new sequences back into the library. That is, previously captured events may be reordered, rearranged and/or renamed to describe new sequences, which are then stored in the library for use as future DUT stimuli.
A query (query block 716) is made as to whether another DUT simulation/stimulation test is to be made. If not, the process ends (terminator block 718). If so, however, then the generated DUT stimuli are applied to the DUT (block 720), and the process re-iterates. Note that the DUT stimuli are preferably from a library of DUT stimuli code that has been generated in previous iterations.
The present invention thus presents a new and useful method of graphically and selectively time-slicing particular window(s) of simulation results for one or more particular runs. A test engineer is thus able to organize/arrange these windows of captured events, produce specific test sequences, and thus generate traditionally difficult scenarios such as corner cases.
It should be understood that at least some aspects of the present invention may alternatively be implemented in a program product. Programs defining functions on the present invention can be delivered to a data storage system or a computer system via a variety of signal-bearing media, which include, without limitation, non-writable storage media (e.g., CD-ROM), writable storage media (e.g., a floppy diskette, hard disk drive, read/write CD ROM, optical media), and communication media, such as computer and telephone networks including Ethernet. It should be understood, therefore in such signal-bearing media when carrying or encoding computer readable instructions that direct method functions in the present invention, represent alternative embodiments of the present invention. Further, it is understood that the present invention may be implemented by a system having means in the form of hardware, software, or a combination of software and hardware as described herein or their equivalent.
While the invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.

Claims (20)

1. A method comprising:
applying a stimulus to a Design Under Test (DUT);
creating an original simulation results graphical view of resulting signals created by the stimulus;
selecting and tagging one or more time-based windows in the original simulation results graphical view as tagged windows, wherein the tagged windows describe multiple temporal slices for capturing and representing events during a particular time period in the original simulation results graphical view;
extracting one or more of the tagged windows to identify one or more events within the tagged windows to selectively create extracted expressions of identified events;
categorizing each of the extracted expressions according to a specific time window, in the original simulation results graphical view, from which each of the extracted expressions were extracted, wherein the categorizing describes original temporal positions of the extracted expressions; and
reordering the extracted expressions as reordered combined multiple extracted expressions to create a different event scenario for inputs to the DUT, wherein the different event scenario describes different temporal positions of the extracted expressions as compared to the original temporal positions of the extracted expressions.
2. The method of claim 1, further comprising:
capturing the identified events as extracted expressions from the extracted tagged windows.
3. The method of claim 2, wherein the captured extracted expressions are stored in a library.
4. The method of claim 3, further comprising:
combining multiple extracted expressions from the library and from tagged windows in a current graphical view to generate a corner case sequence in the DUT.
5. The method of claim 4, wherein the combined extracted expressions from the library and from the tagged windows in the current graphical view are stored in a library.
6. The method of claim 5, wherein the reordered combined multiple extracted expressions from the library and from the tagged windows in the current graphical view are translated into a high level language as translated reordered combined multiple extracted expressions.
7. The method of claim 6, wherein the translated reordered combined multiple extracted expressions from the library and from the tagged windows in the current graphical view generate a DUT stimulus that is applied to the DUT.
8. The method of claim 2, further comprising:
combining a plurality of the extracted expressions from the tagged windows to generate a corner case sequence in the DUT.
9. The method of claim 8, wherein the combined extracted expressions are stored in a library.
10. The method of claim 9, wherein the combined extracted expressions from the tagged windows are translated into a high level language.
11. The method of claim 10, wherein the translated reordered combined extracted expressions generate a DUT stimulus that is applied to the DUT.
12. The method of claim 1, wherein the extracted tagged windows are translated into a high level language.
13. The method of claim 12, wherein the translated extracted tagged windows generate a DUT stimulus that is applied to the DUT.
14. The method of claim 1, wherein the resulting signals are internal logical signals within the DUT.
15. The method of claim 14, wherein the translated extracted expressions from the tagged windows generate a DUT stimulus that is applied to the DUT.
16. The method of claim 1, wherein the resulting signals are output signals from the DUT.
17. The method of claim 16, wherein the translated multiple extracted expressions from the library and from the tagged windows in the current graphical view generate a DUT stimulus that is applied to the DUT.
18. A tangible computer-usable storage medium on which is stored a computer program, the computer program comprising:
program code for applying a stimulus to a Design Under Test (DUT);
program code for creating an original simulation results graphical view of resulting signals created by the stimulus;
program code for selecting and tagging one or more time-based windows in the original simulation results graphical view as tagged windows, wherein the tagged windows describe multiple temporal slices for capturing and representing events during a particular time period in the original simulation results graphical view;
program code for extracting one or more of the tagged windows to identify one or more events within the tagged windows to selectively create extracted expressions of identified events;
program code for categorizing each of the extracted expressions according to a specific time window, in the original simulation results graphical view, from which each of the extracted expressions were extracted, wherein the categorizing describes original temporal positions of the extracted expressions;
program code for reordering the extracted expressions as reordered combined multiple extracted expressions to create a different event scenario for inputs to the DUT, wherein the different event scenario describes different temporal positions of the extracted expressions as compared to the original temporal positions of the extracted expressions;
program code for capturing the identified events as extracted expressions;
program code for translating the extracted expressions to generate a DUT stimuli; and
program code for applying the generated DUT stimuli to the DUT.
19. The tangible computer-usable storage medium of claim 18, wherein the DUT stimuli are translated into a high-level language.
20. The tangible computer-usable storage medium of claim 18, further comprising:
program code for combining a plurality of the events from the tagged windows to replicate a corner case in the DUT; and
program code for applying the plurality of the events as DUT stimuli to the DUT.
US11/064,729 2005-02-24 2005-02-24 Stimulus extraction and sequence generation for an electric device under test Expired - Fee Related US7444574B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/064,729 US7444574B2 (en) 2005-02-24 2005-02-24 Stimulus extraction and sequence generation for an electric device under test

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/064,729 US7444574B2 (en) 2005-02-24 2005-02-24 Stimulus extraction and sequence generation for an electric device under test

Publications (2)

Publication Number Publication Date
US20060190233A1 US20060190233A1 (en) 2006-08-24
US7444574B2 true US7444574B2 (en) 2008-10-28

Family

ID=36913899

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/064,729 Expired - Fee Related US7444574B2 (en) 2005-02-24 2005-02-24 Stimulus extraction and sequence generation for an electric device under test

Country Status (1)

Country Link
US (1) US7444574B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090158257A1 (en) * 2007-12-12 2009-06-18 Via Technologies, Inc. Systems and Methods for Graphics Hardware Design Debugging and Verification
US20110314343A1 (en) * 2010-06-21 2011-12-22 Apple Inc. Capturing and Displaying State of Automated User-Level Testing of a Graphical User Interface Application
US10579761B1 (en) * 2018-12-25 2020-03-03 Cadence Design Systems, Inc. Method and system for reconstructing a graph presentation of a previously executed verification test

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070043548A1 (en) * 2005-07-29 2007-02-22 International Business Machines Corporation Verifying a simulated hardware environment for a simulated device under test
EP2718859A1 (en) * 2011-06-08 2014-04-16 Hyperion Core, Inc. Tool-level and hardware-level code optimization and respective hardware modification

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5202889A (en) * 1990-04-18 1993-04-13 International Business Machines Corporation Dynamic process for the generation of biased pseudo-random test patterns for the functional verification of hardware designs
US5745386A (en) * 1995-09-25 1998-04-28 International Business Machines Corporation Timing diagram method for inputting logic design parameters to build a testcase for the logic diagram
US6029262A (en) * 1997-11-25 2000-02-22 Mosaid Technologies Incorporated Graphical editor for defining memory test sequences
US6182258B1 (en) * 1997-06-03 2001-01-30 Verisity Ltd. Method and apparatus for test generation during circuit design
US20020002698A1 (en) * 2000-05-25 2002-01-03 International Business Machines Corporation Method for verifying the design of a microprocessor
US6453450B1 (en) * 2000-02-02 2002-09-17 International Business Machines Corporation Timing diagram compiler and runtime environment for interactive generation of executable test programs for logic verification
US20040044976A1 (en) * 2002-08-28 2004-03-04 Richard Schultz Static timing analysis and performance diagnostic display tool
US20040153301A1 (en) * 2003-02-03 2004-08-05 Daniel Isaacs Integrated circuit development methodology

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5202889A (en) * 1990-04-18 1993-04-13 International Business Machines Corporation Dynamic process for the generation of biased pseudo-random test patterns for the functional verification of hardware designs
US5745386A (en) * 1995-09-25 1998-04-28 International Business Machines Corporation Timing diagram method for inputting logic design parameters to build a testcase for the logic diagram
US6182258B1 (en) * 1997-06-03 2001-01-30 Verisity Ltd. Method and apparatus for test generation during circuit design
US6347388B1 (en) * 1997-06-03 2002-02-12 Verisity Ltd. Method and apparatus for test generation during circuit design
US6530054B2 (en) * 1997-06-03 2003-03-04 Verisity Ltd. Method and apparatus for test generation during circuit design
US6029262A (en) * 1997-11-25 2000-02-22 Mosaid Technologies Incorporated Graphical editor for defining memory test sequences
US6453450B1 (en) * 2000-02-02 2002-09-17 International Business Machines Corporation Timing diagram compiler and runtime environment for interactive generation of executable test programs for logic verification
US20020002698A1 (en) * 2000-05-25 2002-01-03 International Business Machines Corporation Method for verifying the design of a microprocessor
US20040044976A1 (en) * 2002-08-28 2004-03-04 Richard Schultz Static timing analysis and performance diagnostic display tool
US20040153301A1 (en) * 2003-02-03 2004-08-05 Daniel Isaacs Integrated circuit development methodology

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090158257A1 (en) * 2007-12-12 2009-06-18 Via Technologies, Inc. Systems and Methods for Graphics Hardware Design Debugging and Verification
US8146061B2 (en) * 2007-12-12 2012-03-27 Via Technologies, Inc. Systems and methods for graphics hardware design debugging and verification
US20110314343A1 (en) * 2010-06-21 2011-12-22 Apple Inc. Capturing and Displaying State of Automated User-Level Testing of a Graphical User Interface Application
US8966447B2 (en) * 2010-06-21 2015-02-24 Apple Inc. Capturing and displaying state of automated user-level testing of a graphical user interface application
US10579761B1 (en) * 2018-12-25 2020-03-03 Cadence Design Systems, Inc. Method and system for reconstructing a graph presentation of a previously executed verification test

Also Published As

Publication number Publication date
US20060190233A1 (en) 2006-08-24

Similar Documents

Publication Publication Date Title
US8417504B2 (en) Conversion of circuit description to a transaction model
US8402403B2 (en) Verifying a register-transfer level design of an execution unit
US8161439B2 (en) Method and apparatus for processing assertions in assertion-based verification of a logic design
US7415684B2 (en) Facilitating structural coverage of a design during design verification
US10699046B2 (en) System and method for achieving functional coverage closure for electronic system verification
US9600398B2 (en) Method and apparatus for debugging HDL design code and test program code
US7444574B2 (en) Stimulus extraction and sequence generation for an electric device under test
CN113779912B (en) Chip verification system, method and device, electronic equipment and storage medium
US10289798B1 (en) System, method, and computer program product for property clustering associated with formal verification of an electronic circuit design
US9589087B2 (en) Verification environments utilizing hardware description languages
CN106354515A (en) SystemC code generation system based on model
US20090012771A1 (en) Transaction-based system and method for abstraction of hardware designs
US6934656B2 (en) Auto-linking of function logic state with testcase regression list
JP5040625B2 (en) LSI power estimation method and apparatus
Abid et al. A Real-Time Specification Patterns Language
TW201822039A (en) Method and apparatus for speeding up gate-level simulation
US10816600B1 (en) Protocol analysis and visualization during simulation
Hsu et al. ICCAD-2015 CAD contest in large-scale equivalence checking and function correction and benchmark suite
CN104679963A (en) Simulation and verification device and simulation and verification method based on TCL
Gavrilov et al. Method of mathematical description for digital system blocks logical models
US7051301B2 (en) System and method for building a test case including a summary of instructions
Ranjan et al. Beyond verification: Leveraging formal for debugging
CN104636509A (en) Method for verifying timing problem in gate-level simulation
CN112540744A (en) Method for constructing embedded software system of industrial automation instrument
US10210294B1 (en) System and methods for simulating a circuit design

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DAVIS, MAUREEN TERESE;DUNNING, KATHERINE ANN;MORROW, TONY EDWARD;REEL/FRAME:016143/0899

Effective date: 20050210

AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DAVIS, MAUREEN TERESE;DUNNING, KATHERINE ANN;SAWAN, TONY EMILE;REEL/FRAME:021183/0884

Effective date: 20050210

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

REMI Maintenance fee reminder mailed
FPAY Fee payment

Year of fee payment: 4

SULP Surcharge for late payment
AS Assignment

Owner name: GLOBALFOUNDRIES U.S. 2 LLC, NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTERNATIONAL BUSINESS MACHINES CORPORATION;REEL/FRAME:036550/0001

Effective date: 20150629

AS Assignment

Owner name: GLOBALFOUNDRIES INC., CAYMAN ISLANDS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GLOBALFOUNDRIES U.S. 2 LLC;GLOBALFOUNDRIES U.S. INC.;REEL/FRAME:036779/0001

Effective date: 20150910

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20161028

AS Assignment

Owner name: GLOBALFOUNDRIES U.S. INC., NEW YORK

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION;REEL/FRAME:056987/0001

Effective date: 20201117