Upper Bounding Fault Coverage by Structural Analysis and Signal Monitoring Vishwani D. Agrawal Auburn University, Dept. of ECE, Auburn, AL 36849 Soumitra Bose Vijay Gangaram Intel Corporation, Design Technology, Folsom, CA 95630 5/1/2006 VTS'06 1 Outline • Problem statement and motivation • Background • Upper bounding algorithm • Benchmark results • An application: test-point insertion • Conclusion 5/1/2006 VTS'06 2 Problem Statement and Motivation • A fault simulation problem • Large non-scan or partial-scan circuits • Long functional verification vector sequences • Objective: – Find compact high fault coverage vectors for testing – Find test points for DFT • 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 5/1/2006 VTS'06 3 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. Dominator Fanout stem Fault detection at fanout stem depends on signal states in this part and the observability of the dominator. 5/1/2006 VTS'06 4 Stafan: A Tutorial Example Incorrectly detected faults sa0 11001 sa1 C0=0.4 C1=0.6 OB0=1.0 OB1=1.0 OB0=1.0, OB1=0.0 (observabilities) C0=0.4, C1=0.6 (controllabilities) S=0.4 (sensitization count) sa1 11001 sa1 C0=0.4 C1=0.6 S=1.0 OB0=0.0 OB1=1.0 00110 C0=0.6, C1=0.4 S=0.6 OB0=1.0, OB1=0.0 Detected fault 00000 sa1 C0=1.0 C1=0.0 OB0=1.0 OB1=1.0 PD: Prob(sa0 detected) = C1 × OB1, Prob(sa1 detected) = C0 × OB0 Threshold detection by N vectors: 1 – (1 – PD)N ≥ 0.5 5/1/2006 VTS'06 5 A Circuit Requiring Dynamic Analysis Vector-less static analysis can identify redundant stem faults in the previous example. Stem requires vector-specific analysis Dominator When only 00 and 11 patterns occur on these lines, the stem will be unobservable 5/1/2006 VTS'06 6 Upper Bounding Algorithm • Structural Analysis • For each fanout stem identify dominator set (gates on paths between the stem and its dominator) • Based on the inversion parities of paths in the dominator set determine stem observability conditions • Monitor Ocurrence of Selected Signal States During Logic Simulation • For a gate, set of input states that forbids path sensitization • For a fanout stem with all same parity paths, set of offpath signal states that forbids sensitizstion of any path • For a fanout stem with different parity paths, set of offpath signal state that simultaneously sensitizes diffrenet parity paths • Similar conditions derived for mixed parity paths • Total number of conditions: O(2×k×N), k = average fanin of gates, N = number of gates 5/1/2006 VTS'06 7 Algorithm: Fanout Reconvergence (I) Portion of c17: Fanout G1 reconverges with same inversion parity at G5. Same vector applied twice: 11 G2 00 11 11 G1 00 00 sa0 11 G5 sa1 G3 11 Detected faults not detected by stafan Negative errors: G1 output found unobservable. Structural analysis: Stem G1 has two {G2 and G3} same parity paths. Signal monitoring: Only pattern 0XX0 can make stem G1 unobservable G1 is observable. 5/1/2006 VTS'06 8 Algorithm: Fanout Reconvergence (II) Undetected fault detected by stafan I1 10 G0 sa0 Portion of c17: Fanout I2 reconverges with different inversion parities at G4. 01 G4 I2 10 11 I4 I3 11 10 11 G1 G2 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)} = false Propagation through G1-G2: {(I3=1 and I4=1) and I1=0} = false I2 is unobservable 5/1/2006 VTS'06 9 Results: Benchmark Circuits Exact Stafan* UB Stafan c432 93.15 94.85 93.32 CPU % over logic simulation 33.3 c880 91.08 90.02 92.04 20.0 c1355 87.93 18.74 88.82 22.2 c1908 69.79 75.71 73.10 30.8 c2670 77.28 63.49 78.56 36.8 c3540 70.79 76.26 71.99 30.8 c5315 91.74 76.59 93.64 34.9 c6288 99.74 92.91 99.74 16.4 c7552 84.47 74.54 87.99 52.2 Fault coverage (%) Circuit * Original stafan; different from “vanilla estimate” in the paper, which is an improved stafan. 5/1/2006 VTS'06 10 Fault Coverage of c2670 Error in upper bound estimate varies with coverage: 90 80 70 coverage (%) 60 50 exact 40 stafan 30 UB 20 UB-exact 10 0 1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93 97 vectors Peak error of about 12% after 8 vectors and 53% coverage. 5/1/2006 VTS'06 11 Application: Scanout Selection • Given large functional sets, each with ~106 vectors: 1. low individual vector set coverage 2. high cumulative coverage 3. set of potential observation (scanout) points find minimal observation points that maximize coverage. • Exact solution: fault simulation with no fault dropping. • Conventional fault simulation takes several days. • Estimate fault detection status for every fault at every potential observation point. • Find a minimal subset of candidates that covers all faults. 5/1/2006 VTS'06 12 Application: Scanout Selection Circuit characteristics No. of Vector Name Gates sets Total Flipflops Scanout flip-flop selction Max. cov. (%) d1 130k 220 14,540 77.6 d2 180k 45 8,500 d3 494k 112 12,550 78.5 88.9 No. of By fault sim. By UB-stafan Scan flipflops CPU Cov. Cov. time % CPU time 2,000 8days 72.7 45min 74.1 200 12days 81.4 1.5hrs 85.7 1,600 15days 74.0 4hrs 76.8 % Note: Fault simulation runtimes assume fault dropping. 5/1/2006 VTS'06 13 Conclusion • Estimation errors due to reconverging fanouts: – Positive: Undetected faults estimated as detected. – Negative: Detected faults estimated as undetected. • Upper Bounding improvements: – Positive errors reduced by dominators and monitoring – Negative errors reduced by reconvergence analysis – Useful for • Test development • DFT – test point selection • Structural analysis of dominators and signal monitoring can reduce fault detection errors for non-random functional input sequences; to be discussed in a forthcoming paper. 5/1/2006 VTS'06 14 ITC’06: Improved Stafan – Average, and Upper/Lower Bound Estimates 5/1/2006 VTS'06 15