Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Oct 24-26, 2006 ITC'06 Fault Coverage Estimation for Non-Random Functional Input Sequences Soumitra Bose Intel Corporation, Design Technology, Folsom,

Similar presentations


Presentation on theme: "1 Oct 24-26, 2006 ITC'06 Fault Coverage Estimation for Non-Random Functional Input Sequences Soumitra Bose Intel Corporation, Design Technology, Folsom,"— Presentation transcript:

1 1 Oct 24-26, 2006 ITC'06 Fault Coverage Estimation for Non-Random Functional Input Sequences Soumitra Bose Intel Corporation, Design Technology, Folsom, CA 95630 Vishwani D. Agrawal Auburn University, Dept. of ECE, Auburn, AL 36849

2 2 Oct 24-26, 2006 ITC'06 Outline Problem statement Background Motivating examples New algorithms Results Conclusion

3 3 Oct 24-26, 2006 ITC'06 Problem Statement Fault simulation of non-scan circuits is needed for Finding compact high fault coverage vectors for testing Finding test points for DFT Expensive for Large non-scan or partial-scan circuits Long functional (non-random) verification vector sequences Motivation Exact fault simulation is too expensive Statistical fault simulator is a useful tool, but needs accuracy –In coverage estimation –In identifying faults not detectable by vector sequence

4 4 Oct 24-26, 2006 ITC'06 Background Approximate fault simulation –Per-vector analysis Critical path tracing (CPT), Abramovici et al., IEEE D&T 1984. Necessary conditions, Akers et al., ITC 1990. –Post-simulation analysis, Stafan, Jain and Agrawal, IEEE-D&T 1985. Dominator analysis in ATPG, Kirkland and Mercer, ITC 1987. Fault detection at fanout stem depends on signal states in this part and the observability of the dominator. Fanout stem Dominator

5 5 Oct 24-26, 2006 ITC'06 Stafan: A Tutorial Example 11001 00110 00000 C0=0.4 C1=0.6 C0=1.0 C1=0.0 C0=0.6, C1=0.4 S=0.6 C0=0.4 C1=0.6 S=1.0 C0=0.4, C1=0.6 (controllabilities) S=0.4 (sensitization count) sa1 sa0 sa1 Detected faults Incorrectly detected faults OB0=1.0 OB1=1.0 OB0=0.0 OB1=1.0 OB0=1.0, OB1=0.0 (observabilities) OB0=1.0 OB1=1.0 OB0=1.0, OB1=0.0 pd: Prob(sa0 detected) = C1 × OB1, Prob(sa1 detected) = C0 × OB0 Threshold detection by N vectors: PD(N) = 1 – (1 – pd) N ≥ 0.5

6 6 Oct 24-26, 2006 ITC'06 Motivation: A Three-Vector Example [000] [011] [110] [000] [111] [001] [110] sa1 (1) b0 = 1 (2) b1 = 1/3 (3) b0 = 1/3 * 2/3 = 2/9 Probability of detection (PD) over entire sequence depends on: (1) Number of vectors (N) (2) Per vector detection probability (pd) PD = 1 – (1 – 2 / 9) 3 = 0.53 ≥ 0.5  Fault is detected (correct decision) PD = 1 – ( 1 – pd ) N

7 7 Oct 24-26, 2006 ITC'06 Motivation: Example of Correlated Vectors Same example with first vector repeated 5 times at the end: [00000000] [01100000] [11011111] [00000000] [11111111] [00100000] [11011111] sa1 (1) b0 = 1 (2) b1 = 1/8 (3) b0 = 1/8 * 2/8 = 1/32 PD = 1 – (1 – 1/32) 8 = 0.22 ≤ 0.5  Fault not detected (incorrect decision).

8 8 Oct 24-26, 2006 ITC'06 Outline of New Algorithm Upper Bounding: find faults that cannot be detected 1)Graph dominators: necessary conditions for detection 2)Opposite parity reconvergence: blocked propagation 3)Equal parity reconvergence: multiple path propagation Effective length of sequence: estimate “new” content 1)Track input combinations for each gate 2)Collect Stafan-like statistics only for new vectors Detection Prob, PD = 1 – (1 – pd) N eff

9 9 Oct 24-26, 2006 ITC'06 Algorithm: Fanout Reconvergence (I) 11 00 11 00 11 Same vector applied twice: sa0 G2 G3 G5 sa1 Negative errors: Stafan finds G1 output to be unobservable. Structural analysis: Stem G1 has two same parity paths {G2 and G3}. Signal monitoring: Only pattern 0XX0 can make stem G1 unobservable Since 0XX0 did not occur  G1 is observable. G1 Portion of c17: Fanout G1 reconverges with same inversion parity at G5. Detected faults found not detected due to stafan error

10 10 Oct 24-26, 2006 ITC'06 Algorithm: Fanout Reconvergence (II) G0 G2 G4 10 11 10 01 11 10 sa0 00 Positive error: When observable fanouts of I2 are treated as independent. Structural analysis: Fanouts paths {G0, and G1-G2} have different parities. Signal monitoring: Propagation through G0: I1=1 and (I3=0 or I4=0) is false Propagation through G1-G2: {I3=1 and I4=1} and I1=0 is false  I2 is unobservable I1 I2 I3 I4 G1 Portion of c17: Fanout I2 reconverges with different inversion parities at G4. Undetected fault found detected due to stafan error

11 11 Oct 24-26, 2006 ITC'06 Algorithm: Effective Length Estimation Rework previous example of repeated vectors: [00000000] [01100000] [11011111] [00000000] [11111111] [00100000] [11011111] sa1 (1) b0 = 1 (2) b1 = 1/3 (3) b0 = 1/3 × 2/3 = 2/9 N eff = 3, PD = 1 – (1 – 2/9) = 0.53 ≥ 0.5  Correctly estimated as detected. N eff

12 12 Oct 24-26, 2006 ITC'06 100 Random vectors Results for Two Vector Sequences Simulation of combinational benchmark circuits. Short sequence: 100 random vectors. Long sequence: 2000+ vectors. Constructed from short sequence. Both sequences have same coverage. Simulation of combinational benchmark circuits. Short sequence: 100 random vectors. Long sequence: 2000+ vectors. Constructed from short sequence. Both sequences have same coverage. 50 Vectors repeated 1-100 times

13 13 Oct 24-26, 2006 ITC'06 Setting Threshold for Fault Detection Consider a fault as detected if PD(N) = 1 – [1 – pd(N eff )] N eff ≥ p Upper bound coverage, p = 0.99; result is very close to analytical upper bound coverage (VTS’06). Lower bound coverage, p = 0.01. For average value of coverage: p = 0.50 (traditionally used value) p = 0.63 (an improved threshold proposed in this paper)

14 14 Oct 24-26, 2006 ITC'06 Results: Benchmark Circuits Circuit Fault coverage (%) CPU time (%) over logic simulation Exact Fault Sim. Old Stafan New Stafan for both seq. Short seq. Long seq. N eff Cov. c43293.294.998.38992.933.3 c88091.190.091.36390.120.0 c135587.918.737.25088.422.2 c190869.875.781.78272.930.8 c267077.363.572.27477.336.8 c354070.876.384.410069.530.8 c531591.776.693.710092.234.9 c628899.792.998.84699.716.4 c755284.574.587.38986.252.2 Coverage estimation error 5 – 69%

15 15 Oct 24-26, 2006 ITC'06 New Fault Coverage Estimate for c2670 110100100010000 0 20 40 60 80 Number of vectors Fault coverage (%) Statistical lower bound, PD ≥ 0.01 Statistical upper bound, PD ≥ 0.99 or VTS’06 paper Exact fault simulation Stafan New estimate, PD ≥ 0.63

16 16 Oct 24-26, 2006 ITC'06 Coverage Estimation for a Large Design Individual sequence coverages by fault simulation Upper bound (VTS’06) New estimate Fault simulation 05101520253040 Functional vector sequences Fault coverage (%)

17 17 Oct 24-26, 2006 ITC'06 Conclusion Estimation errors in Stafan are due to reconverging fanouts: –Positive error: Undetected faults estimated as detected. –Negative error: Detected faults estimated as undetected. Upper Bounding improvements: –Positive errors reduced by dominator analysis. –Negative errors reduced by reconvergence analysis. Structural analysis of dominators and signal monitoring finds the effective length (N eff ) of non-random functional input sequences. Improved analysis is useful for Test development – vector selection from functional sequences. DFT – test point selection (VTS’06 paper).


Download ppt "1 Oct 24-26, 2006 ITC'06 Fault Coverage Estimation for Non-Random Functional Input Sequences Soumitra Bose Intel Corporation, Design Technology, Folsom,"

Similar presentations


Ads by Google