vlsi testing
play

VLSI Testing Sequential ATPG Virendra Singh Associate Professor C - PowerPoint PPT Presentation

VLSI Testing Sequential ATPG Virendra Singh Associate Professor C omputer A rchitecture and D ependable S ystems L ab Department of Electrical Engineering Indian Institute of Technology Bombay http://www.ee.iitb.ac.in/~viren/ E-mail:


  1. VLSI Testing Sequential ATPG Virendra Singh Associate Professor C omputer A rchitecture and D ependable S ystems L ab Department of Electrical Engineering Indian Institute of Technology Bombay http://www.ee.iitb.ac.in/~viren/ E-mail: viren@ee.iitb.ac.in EE-709: Testing & Verification of VLSI Circuits Lecture 17 (28 Feb 2013) CADSL

  2. Sequential Circuits  A sequential circuit has memory in addition to combinational logic  Test for a fault in a sequential circuit is a sequence of vectors, which  Initializes the circuit to a known state  Activates the fault, and  Propagates the fault effect to a PO  Methods of sequential circuit ATPG  Time-frame expansion methods  Simulation-based methods 28 Feb 2013 EE-709@IITB 2 CADSL

  3. Example: A Serial Adder B n A n 1 1 s-a-0 D 1 1 D X C n C n+1 X 1 Combinational logic X S n FF 28 Feb 2013 EE-709@IITB 3 CADSL

  4. Time-Frame Expansion B n-1 A n-1 A n B n Time-frame -1 Time-frame 0 1 1 1 1 s-a-0 s-a-0 D X D D 1 1 D 1 C n-1 X D C n 1 1 C n+1 X 1 Combinational logic Combinational logic 1 S n-1 S n X D FF 28 Feb 2013 EE-709@IITB 4 CADSL

  5. Concept of Time-Frames  If the test sequence for a single stuck-at fault contains n vectors ,  Replicate combinational logic block n times  Place fault in each block  Generate a test for the multiple stuck-at fault using combinational ATPG with 9-valued logic Vector - n +1 Vector -1 Vector 0 Fault Unknown Next State Time- Time- Time- or given state variables frame frame frame Init. state 0 - n +1 -1 Comb. block PO - n +1 PO -1 PO 0 28 Feb 2013 EE-709@IITB 5 CADSL

  6. Example for Logic Systems FF1 B A FF2 s-a-1 28 Feb 2013 EE-709@IITB 6 CADSL

  7. Five-Valued Logic (Roth) A 0 A 0 s-a-1 s-a-1 D D X X X FF1 FF1 X D D FF2 FF2 B B X X Time-frame 0 Time-frame -1 28 Feb 2013 EE-709@IITB 7 CADSL

  8. Nine-Valued Logic (Muth) A 0 A X s-a-1 s-a-1 X /1 0/1 0/ X 0/ X X FF1 FF1 0/1 X X /1 FF2 FF2 B B X 0/1 Time-frame Time-frame -0 28 Feb 2013 EE-709@IITB 8 CADSL

  9. Implementation of ATPG  Select a PO for fault detection based on drivability analysis.  Place a logic value, 1/0 or 0/1, depending on fault type and number of inversions.  Justify the output value from PIs, considering all necessary paths and adding backward time-frames.  If justification is impossible, select another PO and repeat justification (use drivability).  If the procedure fails for all reachable POs, then the fault is untestable.  If 1/0 or 0/1 cannot be justified at any PO, but 1/X or 0/X can be justified, the the fault is potentially detectable. 28 Feb 2013 EE-709@IITB 9 CADSL

  10. Complexity of ATPG  Synchronous circuit -- All flip-flops controlled by clocks; PI and PO synchronized with clock:  Cycle-free circuit – No feedback among flip-flops: Test generation for a fault needs no more than dseq + 1 time-frames, where dseq is the sequential depth.  Cyclic circuit – Contains feedback among flip- flops: May need 9 Nff time-frames, where Nff is the number of flip-flops.  Asynchronous circuit – Higher complexity! Smax Time- Time- Time- Time- Time- S2 S3 S1 S0 Frame Frame Frame Frame Frame max-1 max-2 -2 -1 0 max = Number of distinct vectors with 9-valued elements = 9 Nff 28 Feb 2013 EE-709@IITB 10 CADSL

  11. Cycle-Free Circuits  Characterized by absence of cycles among flip-flops and a sequential depth, dseq .  dseq is the maximum number of flip- flops on any path between PI and PO.  Both good and faulty circuits are initializable.  Test sequence length for a fault is bounded by dseq + 1. 28 Feb 2013 EE-709@IITB 11 CADSL

  12. Cycle-Free Example Circuit F2 2 F3 F1 3 Level = 1 F2 2 s - graph F3 F1 dseq = 3 3 Level = 1 All faults are testable. 28 Feb 2013 EE-709@IITB 12 CADSL

  13. Cycle-Free Example 0 1 2 -1 28 Feb 2013 EE-709@IITB 13 CADSL

  14. Difficulties in Seq. ATPG  Poor initializability.  Poor controllability/observability of state variables.  Gate count, number of flip-flops, and sequential depth do not explain the problem.  Cycles are mainly responsible for complexity.  An ATPG experiment: Circuit Number of Number of Sequential ATPG Fault gates flip-flops depth CPU s coverage TLC 355 21 14* 1,247 89.01% Chip A 1,112 39 14 269 98.80% * Maximum number of flip-flops on a PI to PO path 28 Feb 2013 EE-709@IITB 14 CADSL

  15. Benchmark Circuits Circuit s1196 s1238 s1488 s1494 PI 14 14 8 8 PO 14 19 14 19 FF 6 18 18 6 Gates 529 508 653 647 Structure Cycle-free Cycle-free Cyclic Cyclic Sequential depth 4 4 -- -- Total faults 1242 1355 1486 1506 Detected faults 1283 1379 1239 1384 Potentially detected faults 2 0 0 2 Untestable faults 3 72 26 30 Abandoned faults 0 0 76 97 Fault coverage (%) 99.8 94.7 93.1 91.6 Fault efficiency (%) 100.0 100.0 94.8 93.4 Max. sequence length 3 3 28 24 Total test vectors 308 559 313 525 Gentest CPU s (Sparc 2) 10 15 19941 19183 28 Feb 2013 EE-709@IITB 15 CADSL

Recommend


More recommend