
#S55
Q: How can I define ACPMU tests?
Timing
Tests with AC Parametrics
|
Before
using the ACPMU it is important to understand a few things.
|
| For this example, we’ll be making a prop delay test on a 74F163 binary counter. The vectors are simple and easy to follow. Let’s just concentrate on the four output pins and the clock pin, since the goal is to find the interval from the leading edge of the clock to point where the output data becomes valid. Here are the definitions for the two pin groups. |
![]() |
![]() |
| Group 2: Output data |
Group 3: Clock |
| The leading edge of the clock occurs at 12ns into each clock cycle. The outputs become valid at sometime later, so we strobe the output pins at 30ns to compare the actual output data against the expected response. Take a look at the vectors and at the vector graph: |
![]() |
![]() |
| The 74F163 performs its functions on the leading edge of the clock. But some chips may also operate on the trailing edge, or both edges. Clearly the control of both leading and trailing edges on certain pins is crucial for timing measurements. Now let’s look at the AC test definition for this test. |
![]() |
|
The
test type is “Access Time”, but we’ll call our test “PROP DLY”; for our
purposes it essentially means the same thing. When
we click the “Ref. Pin…” button we select the clock
pin, and the
reference delay generator (6) is automatically selected.
The currently assigned value for the leading
edge is displayed.
For
our variable, we have selected the output pins Q0-Q3 as displayed in
the Pin
List. Symphony automatically selects an
unused delay generator so that no other pins are affected, but you can
click
“Manual select” and choose another delay if desired. Next
we set our measurement range. To determine
the optimum range, we refer to the specifications for the 74F163, which
states
that the maximum allowed propagation delay is 10.0ns.
We know that our device passes functional vectors with the
output
compare delay generator set at 30ns. Since
our clock leading edge occurs at 12.0ns, this means
that we are
allowing 18ns for prop delay during functional test.
So our actual prop delay is somewhere between 0ns and 18ns
(18ns
is actually too “generous” for this chip). The
device is considered “bad” if the measured value is
more than 10ns,
so we will set our range at 0 to 12ns. The
start and end times of the range are not
relative to the
“time zero” of the test rate, but are relative to the leading edge of
the clock
pin. Again,
it is important that our Measurement Range is set so that the output of
the
device will pass at one end of the range and fail at the other end. In our case, 0ns will cause vectors to fail
because it is too near to the clock transition. Surely
it will be passing before it reaches 12ns. Negative
values are allowed in the range
setting as long as the range still fits within a single vector
timeframe. When
we start the test Symphony will repeatedly run the functional vectors
while
adjusting the compare strobe delay generator across the measurement
range in a
binary search algorithm. The results
appear in the file ACPMU.LOG. |
![]() Example
of ACPMU Test Results file, ACPMU.LOG
|
|
Other
tests in ACPMU
In
the case of a Setup Time measurement, we measure for the minimum amount
of time
required for input data to be asserted before it is clocked in by the
leading
edge of the clock pin. The reference
pin is the clock pin, and the variable is the leading edge of the data
(data inputs
should be defined as RZ for this test so that the trailing edge of the
data
does not move as a function of “Variable”). For
the type of variable you can select “Input
Transition”. The range
will be from the start of the Test Rate cycle (time zero) up to the
leading
edge of the clock pin. When the data is
asserted “too near” to the clock pin leading edge, the vectors fail
because
there is not enough setup time before the clock. ACPMU
will search the range between T0 and CLKLE
to find the optimum setup time.
Also see section 15 of the User Manual. |