IEEE
Std 1450-1999 IEEE STANDARD TEST INTERFACE LANGUAGE (STIL)
10 Copyright © 1999 IEEE. All rights reserved.
Notes for Figure 3.
NOTE 1—The very first statement in a STIL file is the STIL statement. This statement defines the version of the STIL
language following this statement.
NOTE 2—The Signals block defines a name for each signal used in the test vectors and identifies the signal type, such as
In, Out, InOut, Supply, or Pseudo. Remember that in this example the bidirectional busses of the LS245 design are
defined as unidirectional and, therefore, only In and Out are used here.
NOTE 3—The SignalGroups block defines an ordered set of signals to be referenced in subsequent operations. In this
example, three groups are defined: a collection of all bits of the “A” bus, called ABUS; a collection of all bits of the “B”
bus, called BBUS; and a collection of all signals in the design called ALL. ALL has been defined using the two previous
group definitions. The operators “+” and “-” are used to define these ordered groups in objects called “pin expressions.”
NOTE 4—The Timing block defines sets of “WaveformTables.” Each WaveformTable defines the waveforms to be
applied to each signal used in a vector. After the Timing keyword is the quoted string “Hello Tester Timing.” This quoted
string becomes the name of this Timing block. By enclosing the name with double-quotes, characters such as spaces can
be made to be part of the name.
NOTE 5—The first statement in a WaveformTable is the period of the test vector to be applied to all signals. All signals
defined in a single WaveformTable must have the same period. In this example, the tester period is 500 ns long.
Each signal may have several different waveforms defined in a single WaveformTable. Each waveform defined for a sig-
nal will be referenced with a single character, called a WaveformChar, or “WFC.” Within each WaveformTable, each sig-
nal’s WaveformChars must be unique across all waveforms defined for the signal. However, different signals may define
the same WaveformChar for different waveforms.
A waveform needs some explanation. In STIL, a waveform is a series of “time” and “event” pairs. Each pair is defined
with a single STIL statement; these statements are also referred to as “timed events.” The “event” may be a special single
character defined to have a particular operation, or it may be a longer identifier as used in this example. This example
used the events “ForceDown,” “ForceUp,” “ForceOff,” “CompareUnknown,” “CompareHighWindow,” “CompareLow-
Window,” and “CompareOffWindow.” “ForceDown” and “ForceUp” are input or drive events; “ForceDown” forces a
logic low on an input, and “ForceUp” forces a logic high. “ForceOff” forces a logic float-state, or turns off any input
drivers. “CompareHighWindow,” “CompareLowWindow,” “CompareOffWindow,” and “CompareUnknown” are output,
or expect, events. “CompareHighWindow” expects a logic high, “CompareLowWindow” expects a logic low, and “Com-
pareOffWindow” expects a logic float-state value. To close a window strobe, the event “CompareUnknown” is used.
There are four distinct types of signals in this design. Each has its own waveform to represent the input or output infor-
mation required to test this design.
NOTE 6—The first waveform definition is for the signal DIR. This signal controls the “direction” of the bused signals,
which is fixed in this test. Even though it is fixed, information is defined for signal DIR to allow this signal to be driven
high or driven low at the start of each test cycle. Figure 4 shows graphically the two waveforms defined for this signal
and the STIL syntax.
Because both waveforms have the same timing, they can be merged into a single STIL statement. This shorthand syntax
allows multiple WaveformChars to be defined to the same event in the waveform, with states for each WaveformChar to
apply at that time. The relationship of WaveformChar to event characters is direct: the first WaveformChar (in the exam-
ple above, “0”) maps to the first waveform event (“ForceDown”), the second (“1”) maps to the second event
(“ForceUp”), and so on for each WaveformChar present. Note that a slash must be present to separate the event refer-
ences when more than one is present.
The signal OE_ has additional events defined to create a pulsed behavior. The merging process for this signal is not as
intuitive as DIR, as the process here requires defining events that do not cause a change of state on the signal. The only
reason to define these events is to support a single waveform definition for this signal.
The ABUS signals are defined similarly to DIR, except that they are offset 10 ns into the vector boundary. Note the use
of a Group here to reference a collection of signals to be defined.
The BBUS signals are defined as outputs; at entry to the cycle, any test drivers are explicitly turned off with the
“ForceOff” event. The WaveformChar characters H, L and Z are mapped to the expected states “CompareHighWindow,”
Authorized licensed use limited to: Intel Corporation via the Intel Library. Downloaded on February 25,2014 at 09:38:08 UTC from IEEE Xplore. Restrictions apply.