DFT Lbist PDF
DFT Lbist PDF
Paper 142
359
the capture window of a test pattern. It is shown that in
order to achieve at-speed test of the circuit, unlike previous
methods [lo],it is not necessary to perform at-speed shift
of the scan chains. In fact only events in the capture win-
dow are crucial to at-speed testing of the circuit.
Paper 142
360
Load-unload window: Programmable capture window:
One of the important advantages of the programmable
Vector N t Vector N
capture window is the robustness against the clock skew.
4
I'
Figure 3 illustrates that whenever any clock domain is cap-
turing data, other clock domains do not have an active
edge. Thus, the capture edge, unlike in previously proposed
solutions, is not susceptible to inter-domain clock skew. In
addition, the capture window can be programmed to per-
form multiple captures in each domain as well as control
slow scan enables. Performing multiple captures reduces
the risk of delay test invalidation and false paths that might
occur due to illegal states in scan chains resulting from fill-
ing them with pseudo-random values from the PRPG. Slow
scan enables, by providing multiple cycles of the fastest
clock for the scan enable signals to settle, reduce con-
straints on their design. They no longer need to be routed as
clock signals. Note that programmability of capture win-
dow can also be used to handle a circuit containing multi-
ple clock domains of the same frequency.
In order to generate appropriate clock control and scan
sen3 enable signals, the pattern and shift counters have to oper-
ate using the fastest clock. Also, unlike the previous con-
troller, the number of cycles in the shift window N s c , is
not necessarily equal to the length of the longest scan
Figure 3: Multi-frequency logic BIST timing diagram. chain. Nsc depends on the longest effective scan length as
determined by the frequency used for shifting the scan
be tested at-speed; i.e., the time between the launch and chains. Similarly Nee, the number of fastest clock cycles
capture events is equal to one functional clock period. Also in the capture window is usually more than one.
to test inter-domain paths, at-speed clock edges are placed On the completion of scan chain loading, a sequence of
appropriately as shown in Figure 3. events is launched in the capture window to perform at-
The exact placement of clock edges for at-speed test of speed testing of intra- and inter-domain logic. Once a pre-
all nine relations is detailed in Table 1. Each table cell determined number of patterns are applied, the contents of
T[i, j ] , corresponding to launch clock clki and capture the MISR can be, as explained earlier, scanned out and
clock clkj, lists the position of the launch pulse of clk, fol- compared externally or compared with an on-chip golden
lowed by the capture pulse of clkj. All the positions are signature.
described in terms of pulses of the fastest clock sys-clk, .
For example, the capture edge for clk, is the rising edge of
111. GENERATING
A BIST-READY CIRCUIT
second clock pulse of clk, in the capture window, which is
equivalent to the rising edge of the fifth clock pulse of In addition to having scan, a BIST-ready circuit should
.
sys-clk, As can be seen, in the capture window clock be random pattern testable and should have no unknown
suppression is used to suppress some pulses of elkl and values propagating to observable points. In this section,
clk, while no pulses of clk, are suppressed. The scan those and other barriers to the implementation of logic
enable signals for each of the clock domains switch to sys- BIST will be discussed and automated solutions to over-
tem mode prior to their respective capture edges. Since the come them will be presented.
scan enable signals have to be routed to all the scan cells in
the circuit, their design constraints can be relaxed by opting A. Random-pattern resistance
for slow scan enables. In the example timing diagram
shown in Figure 3, scan enable Senl is designed to be fast, Logic BIST is in general based on pseudo-random pat-
i.e. it has half-a-cycle of the fastest clock to settle whereas terns. Most circuits, however, have inherent random-pattern
the scan enables Sen2 and Sen3 are designed to be slow, i.e. resistance, which results in relatively poor test coverage. To
they have one-and-half-a-cycleof the fastest clock to settle. achieve test coverage approaching that of ATPG, control
and observe points are added to the circuit to increase its
Table I: Edge placement for intra- and inter-domain at-speed test. susceptibility to random pattern testing.
Capture clock Control points
A control point is inserted on a signal that has a very
high probability of logic 0 or I if this predominant value
causes poor controllability or observability of a sufficiently
Paper 142
361
BIST-mode
Scan-enable
From -
points previous
scan cell
Additional logic Scan cell
Figure 4 Connecting observe points to existing scan cells.
B. X generators
An essential requirement for a BIST-ready circuit is
that it should not generate any observable unknown states.
If an X propagates to the MISR, it corrupts the signature
and makes it impossible to distinguish faulty and fault-free
circuits. Therefore, test logic must be inserted to suppress
unknown states or prevent them from propagating to an
observable point. Typical potential X generators include
the following:
1. Non-scan flip-flops (FFs).
2. RAMS and CAMS.
3. Combinational loops.
4.Undriven primary inputs.
5. Bus contention.
6. Violation on a wired gate.
Potential X generators can be identified by a design rule
checker. Preventing those X sources from propagating to
the MISR can be accomplished using several methods
which trade area overhead and loss of test coverage.
Bounding X generators
After identifying potential X generators, analysis is per-
formed to determine which of those X sources need to be
bounded. An X generator only needs to be bounded if its
value can propagate to an observable point, or if an observe
point can be inserted such that the X generator becomes
observable. A trade-off can be used to prevent X sources
which are already blocked at a nearby location from being
bounded. Since in this case, the X generator will only be
observable if an observe point is added between the X
source and the locations at which it is blocked, simply
restricting all gates in this region from being considered as
Paper 142
362
observe point candidates. eliminates this problem. The logic BIST session follows a memory BIST run, then the
threshold used to determine whether to re-bound a blocked RAM can be disabled at the end of the memory BIST ses-
X generator or exclude its blocked fanout region from con- sion. This forces the outputs of the RAM to have constant
sideration for observe points can be set by the user. values throughout the logic BIST run. While this method
For X generators which must be bounded, this can be has low area overhead, faults propagating to the RAM will
done by inserting one or more control points before the X be blocked if no observe points are inserted on the RAM’s
can propagate to an observable p i n t . For example, if a inputs. Furthermore, constant values will be applied from
non-scan FF has 2 outputs (Q and Q), one control point can the RAM, which can decrease the testability of faults in the
be inserted on each of the outputs and activated in test logic driven by the RAM.
mode. Alternatively, if the FF has asynchronous setheset It may also be possible to bypass some RAMs with low
pins, a control point can be added to force the FF to 0 or 1 hardware overhead and without adding any logic on their
during the test. While a control point can be added to force inputs and outputs. If the RAM supports pass-through
a constant value, it is recommended for higher test cover- where the same address is written and read simultaneously,
age to insert a MUX control point driven by a nearby exist- this mode can be used to make the memory transparent.
ing scan cell, as explained in the control points section. Test logic would be required to force the memory into this
This method for X bounding ensures that no X’s will be mode during the BIST session. The main disadvantage of
observed. However, it does‘not provide means for observ- this method is that while it allows the data inputs to pass
ing faults which can only propagate to an observable point through, faults propagating to the address lines may not be
through the now-blocked X source. This can result in loss tested. Furthermore, if multiple RAMs operate in this
of test coverage. If the number of such faults for a given mode, combinational loops may form. It is therefore rec-
bounded X generator justifies the cost, one or more observe ommended to use the RAM bypass method discussed.
points can be added before the X source to provide an
observationpoint to which those faults can propagate. C. Handling of primary inputs and outputs
Handling embedded memories In logic BIST, only the scan chains are controlled and
observed by default. Since the tester does not drive the test,
Embedded memories, typically RAMs, can act as X it does not drive the primary inputs (PIS) or observe the pri-
generators. However, bounding their outputs can severely mary outputs (POs). If POs are not observed, loss of test
impact test coverage as faults which only propagate to the coverage will result since faults which only propagate to
RAM will not be testable. This includes faults propagating POs and not to scan cells will not be tested. More impor-
to the RAM’s data as well as address and control lines. The tantly, PIS must be driven; in addition to loss of coverage, a
preferred method for handling embedded RAMs is to floating PI is an X generator.
bypass them in test mode. The RAM inputs are connected
to scan cells for observation. The inputs can be connected Control points can be added on the PIS to force them to
to space compactors (XOR trees) before connecting them constant values during the BIST session. While this pre-
to the scan cells, to reduce the number of scan cells vents the PIS from generating X’s, loss in coverage may
required. Those same scan cells are used to drive the out- result due to the constant values forced. The recommended
puts of the RAMs in test mode. Therefore, in test mode, the solution is to use MUX control points and drive the PIS
RAM’s inputs and outputs become pseudo primary inputs from nearby existing scan cells. Therefore, PIS are handled
and outputs, respectively. This is illustrated in Figure 5. It exactly the same as X generators. Only PIS which are
is assumed that some other DFT methodology, typically directly driven by the BIST controller do not need to be
memory BIST, is used to test the RAM itself. bounded. To observe POs during the BIST session, observe
points are used to connect them to scan cells.
Paper 142
363
Table 11: Design data.
I Design Y
I ASICl 1 ASIC2 1 ASIC3 1 ASIC4 I
Core comb. gate count 180K 356K 558K 748K
Number of RAMS 16 10 10 11
t75 MHZ clocks ,1 0 1 1 1 1 1 1 1
I
I I
lI o 1I 1 1I 1 1I 1 1
I
Paper 142
364
observe points connected into pre-existing scan cells (using Table 111: Summary of logic BIST results.
the XORIMUX circuit of Figure 4) for the larger ASICs.
The RAMS in the designs can shadow up to 3% -of the
faults. Therefore RAM bypass mode was used as shown in
Figure 5. Using 10 scan cells per RAM leads to a bypass
cost of approximately 125 gates per RAM. Removal of the
other X generators can be done either by manual alteration
of the source VHDL, or automatic bounding as described
in Section 111. Manual VHDL source fixing of X generators
is not practical within the 1-2 person month resource limit
so automatic X bounding was used.
The only practical way to implement logic BIST is
automation of the design tasks together with a methodol-
BIST pattern count 65K 262K 262K 262K
ogy which minimizes the probability of failing timing anal-
ysis and simulation. Our STUMPS implementation BIST stuck-at fault grade
96.0 95.7 95.3 95.6
therefore utilized a tap controller whose RTL was automat- (%)
, I
ically generated. The BIST controller described in Section BIST gates overhead (%) 3.4 2.6 2.1 1.58
I1 was used; its RTL, was also automatically generated. BIST chip area overhead
Finally, the automatic multi-phase test point insertion, X .3 .3 o.8
bounding, and module input bounding described in Section
. ,
(%)
Scan + test point insertion
111 were used. This combination allowed complete automa- 0.7 3.3 6.7 14.5
tion of the logic BIST implementation, thereby freeing the time (hr) \ I
I I I I
1-2 person months of resource to handle issues of timing Fault simulation time (hr)
. . I 0.9 I 3.4 I 5.2 I 4.0
analysis and simulation verification. IkosTMsimulation time
21 n/a n/a
0-4
C. BIST implementation results I
The basic results of the logic BIST implementation are BIST silicon run time
given in Table 111. These results represent typical achieved (sec)
values, not necessarily the optimum possible. Fault grades ATPG grade [%)
are quoted for the design core only but all logic in the ATPG pattern volume
design core is counted, including the bounding multiplex- (Mb)
ors and test point logic. The fault list used is the same as ATPG top-up pattern vol-
that used in ATPG, so all faults in the core are included. ume (Mb)
. .
Thus, no credit is given for possible detected faults, scan
enable faults are not implicitly detected, and faults associ- ATPGfrequency(MH2) 50 40 20 50
ated with tied logic are included as not detected. As can be ATPG silicon run time
.02 0.36 .94 0.7
seen, BIST fault grades of 95-96% are achievable with (sec)
\ I
I I I I
Paper 142
365
I
are added. In the 94-96% region, the grade is relatively This is pre- or post-layout gate level timing simulation of
insensitive to the number of control points but rises signifi- the 65K BIST patterns in full serial mode. This long simu-
cantly as obsyrve points are added. Sensitivity of the grade lation time meant that any debug had to be done using a
to the number of BIST patterns is shown in Figure 8 for BIST controller setup for just a few patterns. Automatic
design ASIC?. Significant grade increases occur for pattern checking of expected against simulated values for key
' counts up to 256K patterns and beyond. points in the BISTed design also facilitated debug. Key
points are the PRPG state, stumps scan-in points, stumps
scan-out points and MISR signature.
ASICl IkosTMsimulation found one timing issue. At
the end of the BIST run, the MISR signature is scanned out
through a relatively slow chip pin driver. Driver delay vari-
ation between min and max timing made the MISR signa-
ture slip by one cycle between these conditions. The
solution to this was to slow the clock to 50 MHz during
scan of the MER.
Addressing the design process goals of logic BIST, the
new design flow is shown in Figure 9. The changed compo-
nents are highlighted. From the viewpoint of the main
design processes, this new design flow is essentially
unchanged. The only change to these main processes is the
addition of automatic bounding and test point insertion to
the scan insertion step. The DFT engineer, however, has the
extra tasks of RTL VHDL generation of the TAP and BIST
controller and the job of getting satisfactory results for gate
level BIST fault simulation and functional and timing sim-
ulation. Finally, any timing issues with the inserted test
points will also result in additional engineering time.
Paper 142
366
dence in using logic BIST is now high enough that it will these designs with low area overhead and high stuck-at
actually be used in new designs. fault coverage. The test application time as well as the fault
simulation time were shown to be low. Finally, with the use
of automation, it has been possible to implement logic
-
- Goal Description
Eliminate tester memory and frequency
Status BIST without impacting the product schedule.
The proposed scheme, together with the implementa-
G1 Achieved tion experience reported, show that logic BIST is a viable
- limitations and acceptable test solution for large industrial designs.
G2 I Provides at-speed scan testing I Achieved I Future work will report on practical issues of implementing
- Works for 1-2 million gate designs , .
G3 Expected multi-frequency at-speed logic BIST as well as measuring
the effectiveness of logic BIST test.
G4 BIST stuck-at grade 2 95%
- Achieved
G5 Logic BIST area 5 2% of logic
- Achieved ACKNOWLEDGEMENTS
G6 Silicon BIST run time c 1sec Achieved
The authors would like to thank The0 Powell and the
G7 Effort < 2 person month per design Expected
MOS design center engineers of Texas Instruments, as well
G8 Ability to use ATPG or logic BIST Achieved as Ian Burgess, Ralph Sanchez, and Kelly Scott of Mentor
G9 Minimal impact on design methodology Achieved Graphics, for their contributions and support.
G10 Automation of the logic BIST flow Achieved
REFERENCES
B. Bottoms, “The Third Millennium’s Test
Dilemma”, IEEE Design &Test of Computers, pp. 7-
11, Vol. 15, No. 4, Fall 1998.
I 1 1 J E. J. McCluskey, “Built-In Self Test Techniques”,
IEEE Design &Test of Computers, pp. 21-28, Vol. 2,
No. 2, April 1985.
V. CONCLUSIONS W. Needham and N. Gollakota, “DFT Strategy for
In this paper, a practical logic BIST solution for large Intel Microprocessors”, Proc. of International Test
and complex industrial digital designs has been presented. Conference,pp. 396-399, 1996.
The challenges in making logic BIST a viable test solution T. Foote, D. Hoffman, W. Houtt and M. Kusko, “Test-
include making a design BIST-ready, achieving high test ing the 400-MHz IBM Generation-4 CMOS Chip”,
quality, automating logic BIST, and integrating logic BIST Proc. of International Test Conference, pp. 106-114,
into the overall design flow without impacting the product 1997.
schedule. Techniques like automatically identifying and C.-J. Lin, Y. Zorian and S. Bhawmik, “PSBIST: A
bounding X generators, bypassing RAMS, bounding I/Os, Partial Scan Based Built-In Self Test Scheme”, Proc.
and test point insertion have been proposed and discussed of International Test Conference, 1993.
to make a design BIST-ready. The multi-phase test point P.H. Bardell, W.H. McKenney, and J. Savir, “Built-In
insertion technique has been used to improve random pat- Test for VLSI: Pseudorandom techniques”, John
tern testability of the designs and to make BIST test cover- Wiley and Sons, New York, 1987.
age approach that of AWG. A novel BIST controller has J. Rajski, N. Tamarapalli, ahd J. Tyszer, “Automated
been proposed to handle at-speed testing of multi-fre- Synthesis of Large Phase Shifters for Built-In Self-
quency designs. This multi-frequency BIST scheme is Test”, Proc. of International Test Conference, pp.
designed to test various intra- and inter-clock domain paths 1047-1056,1998.
at-speed, thereby increasing the quality of test, without N. Tamarapalli and J. Rajski, “Constructive Multi-
requiring that scan shifting be performed at speed. Phase Test Point Insertion for Scan-Based BIST”,
The results of implementing the logic BIST solution on Proc. of International Test Conference, pp. 649-658,
four industrial designs have been reported. The solution 1996.
embodies the techniques described above, and a number of A. Hassan, J. Rajski, R. Thompson and N. Tamara-
tools have been used to automate the BIST flow. These palli, “Method and Apparatus for At-Speed Testing of
tools and techniques have made logic BIST a feasible solu- Digital Circuits”, US patent pending.
tion for such large and complex industrial designs. The 101 B.Nadeau-Dostie, D: Burek and A.Hassan, “Scan-
results presented demonstrate that most of the objectives BIST: A Multifrequency Scan-Based BIST Method”,
set for logic BIST have been satisfied for the four designs. IEEE Design &Test of Computers, pp. 7-17, Vol. 11,
It has also been shown that logic BIST is implemented in No. 1, Spring 1994.
Paper 142
367