Phone Conference P1450.1 Working Doc Subgroup
Thurs July 31, 10:00 am PDT
Attendees:
Greg Maston (chair & scribe)
Tom Bartlestein
Jason Doege
Peter Wohl
Documents
http://grouper.ieee.org/groups/1450/dot1/minutes-2003-07-17.html (minutes of last meeting)
http://grouper.ieee.org/groups/1450/private/p1450.1-D16.pdf (latest working draft)
Agenda
Fail Feedback
Rohit's concerns
Meeting discussion
The meeting opened with concerns about addressing Rohit's concerns
that he has raised in previous emails about these fail-feedback
options presenting new strategies to solutions. Greg identified that
Rohit indicated the CTL group was using the X statement, and so were
we in our solution. Greg will confirm this with Rohit.
Fail Feedback Review
Jason identified the requirements to identify the bounds of pattern
unit, where "pattern" is interpreted to be an independent unit of
test operation. The scan data load operation can be redundant (when
two pattern units featuring a common load-unload operation are
separated), but the unload data can be present only once in an
unmerged context. Hence some sort of label modifier to identify
sub-operations in the load and unload behaviors.
Greg indicated that he saw two separate purposes being expressed here
- one is to identify the failure location data, and the other is to
identify independent units of a test. His concern is that the two
purposes may not share a common solution.
Peter stated he sees two purposes as well, the first being to provide
fail feedback to the tool, and all the tool needs is a "pin" and a
"pattern". We need to provide a standard language to receive fail
data information for tools, and we need to put in language constructs
to help translate from what the tester provides to what the tool
needs.
Jason identified that it was his hope that there would be no
translation needed, that the standard would define the clues in the
file such that no translation process was required.
Which ensued the following discussion about how to identify the
failing pattern block back to the test environment. We explored the
lack of the current STIL definition around a "pattern" (as defined
above), explored the relationship of patterns to measure-states, and
elaborated that loads are not independent; in sequential ATPG contexts
multiple loads are order-sensitive and may see multiple captures.
Which evolved to a pattern is an arbitrary boundary with some set of
characteristics, possibly containing a single unload and measure or
maybe multiple unload and measures.
The Working Group then established that we need to identify
boundaries in a pattern (STIL term), but do not need necessarily
"pattern" (ATPG term) boundaries. Really want to know where one
ATPG pattern's drive events start and where that same pattern's compare
events start. For a pattern to be diagnosis-friendly, must have these
boundaries. Another view of this was that there are two boundaries in
ATPG -
1. reset a state
2. perform a measure
In basic-scan these are the same; in complex sequential patterns
these two operations don't coincide.
Tom raised the perspective that for scan-unloads this is good. But
concern with po measures, and in particular, multiple po measures.
One option here is a simple X statement with drive-events and
compare-events, and to count offsets from the compare marker. This
puts the burden of the translation process back to the atpg to count
offsets and identify ATPG-pattern behaviors at those points.
Peter identified the concern that some POs are used as a PO and
scan-out, complicating the interpretation from "scan" or from
"measure". Also if the scan is executed as flat vectors need to
translate back to shift.
Which led to the following ground rule: modifying the patterns at
test (for instance flattening scan) without maintaining whatever
marker information we end up defining, will disallow diagnosis of
those modified patterns, at least directly. If the tool can read the
modified patterns back in, then that data will need to be provided to
be able to diagnosis from that format.
The perspective that if the ATE is to calculate something (for
instance an offset), then the ATPG needs to provide the information
of what and how to calculate that information. Peter stated a desire
that from a given boundary X statement, he wants to see pin #, cycle #
(5th cycle of the 12th unload on this pin).
Jason doesn't want to translate, and wants explicit markers in the
patterns. Can't expect ATE to calculate and get it right.
Bruce considered the following "boundary items": load, unload,
capture (maybe multiple capture).
The group considered two markers :
- unload marker
- parallel measure marker
with a count from the preceding closest marker returned for failures,
and an implicit marker at the start of a pattern set (to support existing
pattern sets without explicit markers).
The concept to extend identifiers was proposed:
(a) in straight-line code:
X "33"
X "33.unload"
(b) in proc call
X "33"
Call ... -> contains X "unload" ==> X "33"."unload"
where the marker extension is reset in straight-line code when the
procedure returns.
The presence of a "." was used in discussions but any separator could
be used here (and "." is not good because of STIL string-concat
behavior).
................
Tom raised one more concern before the group closed, which is that
when diagnosing fail data it is important to also know what
passed. He made a request to add a "range of patterns" information to
the fail data to indicate that the contained failures were all found
within a range of the test, in case the test execution was aborted
without all of the test program being run (because, for instance, a
fail-reporting limit was hit).
Meeting adjourned at 11:30 PST.
Next meeting
Next phone meeting Aug 14.
AIs
old
[AI1] Greg - generate examples requested at 6/27 meeting
[AI2] Tony - Work with Paul Reuter to see if any additional syntax or
interpretations are required to support the lock-step implementation as
currently being envisioned by the P1450.6 working group.