Browse Prior Art Database

Method for Combining and Controlling Manual and Random Stimulus

IP.com Disclosure Number: IPCOM000031603D
Original Publication Date: 2004-Sep-30
Included in the Prior Art Database: 2004-Sep-30
Document File: 2 page(s) / 46K

Publishing Venue

IBM

Abstract

Disclosed is a method for combining and controlling manual and random stimulus for hardware verification. Typically, a hardware verification testcase is either manual or random, but not both. Running a set of manual transactions along with random transactions provides better testing, but is often difficult to control. This disclosure addresses these problems by controlling manual and random stimulus through the same testcase interface.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 54% of the total text.

Page 1 of 2

Method for Combining and Controlling Manual and Random Stimulus

Hardware verification often requires both manual and random testcases. Manual testcases are written by defining a set of commands that identify the stimulus to execute. For example:

Example 1: Manual Testcase

CMD1: type=store, address=0xfc00, data=0x1234; CMD2: type=wait, number_of_cycles=150;

CMD3: type=load, address=0xfc00, data=0x1234;

Random testcases are written by defining a set of parameters that constrain the stimulus to execute. For example:

Example 2: Random Testcase

PercentageOfStores=80;
PercentageOfLoads=20;
NumberOfCycles=1000;

     By using the method described by this disclosure, manual and random testcases may be combined in the same testcase and controlled through one common interface.

     The user initiates and controls both manual and random stimulus via the same testcase command format. Any number of manual and random testcase commands can be issued in a testcase, and each testcase command, whether manual or random, is independent and executes in parallel with the other testcase commands.

     Each random testcase command has the task of generating random stimulus according to its user-specified random constraints. Each manual testcase command has the task of executing itself, a user-specified command. The following example illustrates a typical use:

Example 3:

CMD1: type=random, stores=100%, loads=0%, number_of_cycles=5000; CMD2: type=wait, number_of_cycles=2000;

CMD3: type=store, address=0xfc00, data=0x1234;

CMD4: type=wait, nu...