440 likes | 585 Views
Test Set Compaction for Sequential Circuits based on Test Relaxation. M.S Thesis Defense S. Saqib Khursheed Advisor: Dr. Aiman H. El-Maleh Members: Dr. Sadiq M. Sait & Dr. Alaaeldin Amin 29 th Dec 04. Outline. Motivation State of the Art Static Compaction Algorithms
E N D
Test Set Compaction for Sequential Circuits based on Test Relaxation M.S Thesis Defense S. Saqib Khursheed Advisor: Dr. Aiman H. El-Maleh Members: Dr. Sadiq M. Sait & Dr. Alaaeldin Amin 29th Dec 04
Outline • Motivation • State of the Art Static Compaction Algorithms • Test Relaxation Algorithm • Proposed Algorithms and Experimental Results • Limitations of Justification algorithm • Conclusion & Future Work
Motivation • Compaction is the process of reducing the size of test set while maintaining the fault-coverage. • To overcome High Complexity of Sequential ATPGs • To reduce Test Application Time reduced cost! • To overcome Memory Limitations of the Tester.
Types of Compaction Algorithms • Static Compaction Compaction Algorithms are applied as a post-processing step to test generation process. • Dynamic Compaction Compaction Algorithms are incorporated in test generation process. • Static Compaction is more useful than Dynamic Compaction in Sequential Circuits.
State-of-the-art Static Compaction Algorithms • Some of the popular algorithms include: • Vector Restoration • Linear Reverse Order Restoration (LROR) • Radix Reverse Order Restoration (RROR) • SIngle FAult Restoration (SIFAR) • Mixed Mode (MISC) • SECO • Subsequence Merging • State Traversal based on Relaxed States
LROR Snapshot of algorithm under execution Targeting f1 andf2.Restoring vector #6 doesn’t detect the fault Targeting f1 andf2. Restoring vector # 5 and 6, doesn’t detect the faults Restoring vector # 4, 5 and 6, detects the fault f1 and f2. f1 andf2detected Restored vector # 4, 5 and 6, are concatenated with previously restored test vectors .
Important Attributes of Static Compaction Algorithms • Test sequences for Hard-to-Detect faults (HTDF) can easily detect Easy-to-Detect faults (ETDF). • State Traversal eliminates redundant vectors • Merging of relaxed Subsequences adds another level of freedom to test compaction. • Increasing the Fault coverage fuels compaction.
Test Relaxation Algorithm • Restoration algorithms rely on vector-by-vector fault simulation to extract the test sequence. • Recently, an efficient Test Relaxation technique has been proposed to extract the necessary assignments for detecting the faults. • Our algorithms (discussed next) rely on test relaxation algorithm for extracting the self-initializing subsequence. • A relaxed test set facilitates Subsequence Merging and State Traversal.
Proposed Algorithms • Following algorithms are proposed: • Linear Reverse Order Restoration • with State Traversal • with State Traversal-2 • Merging Restoration • Hybrid Schemes • Hybrid-I • Hybrid-II • Fault-Coverage based Compaction • FC-LROR • FC-MR
Reverse Order Restoration with State Traversal using Relaxed Test Set After first pass of fault simulation, information is stored Start from last time frame having un-justified fault. Justification of faults f4, f5. Self-initialized subsequence is found by relaxation algorithm. f4andf5detected State Traversal may further reduce the size of subsequence Reduced subsequence f4andf5detected f4andf5detected Re-current states, removal of time frames is possible
Reverse Order Restoration with State Traversal using Relaxed Test Set Fault Simulate the subsequence and drop all the faults detected 0/1 1/x 1/0 f4, f5, f1 and f2 are detected Dropping detected faults leaves f3 The above steps are repeated Fault # 3 is justified. Concatenation with previously justified test vectors. Test Set after Compaction detecting all the faults. 0/x 1/x x/0
Merging Restoration • Merging algorithm follows the same flow as the previous algorithm. • Instead of concatenation of subsequences, relaxed subsequences are merged with previously restored subsequences. • Merging towards bottom • Merging towards top
Merging towards Bottom 11xx 0x01 10x1 xxx0 00x1 11xx 11xx 0x01 1011 11x0 0011 11xx X X 1011 11x0 001x Merged Subsequence Compact Test Set Newly Restored Subsequence
Exp. Results Better 3 9 10 9 5
Hybrid Schemes • LROR suffers from quick saturation. • Hybrid schemes are proposed to address this limitation of LROR. • Hybrid-I uses Test Relaxation and random filling to change the composition of the test. • This helps moving the algorithm out of local-minima and search space is therefore increased.
2+ 3+ LROR-ST2 Test Relaxation Hybrid Schemes Hybrid-I
1+ MR Hybrid Schemes Hybrid-II Hybrid-I
Hybrid Schemes Better Equal 8 8 1 4 6 5 7 1 2 1 8 1
Hybrid Schemes Better Equal 7 1 9 9 10 4 6
Fault-Coverage based Compaction • Motivation: A large reduction in test size is possible by increasing the fault coverage of currently restored subsequences. • This is achieved by relaxing and randomly filling the restored SS. • Fault coverage (FC) based compaction: • LROR based on increasing the FC FC-LROR • MR based on increasing the FC FC-MR
Fault-Coverage based Compaction IDEA LROR FC-LROR
Currently Compacted Test New SS Und Faults? No End Yes Test Relaxation n FC-LROR
Test Relaxation for all und. faults Fully Specified New SS Currently Compacted Test Und Faults? No End Yes Random Filling & Test Relaxation n FC-MR Merging towards Top
Exp. Results: FC-based Compaction Better Equal All 8 7 1 All 7 5 All 4 4 All 4
Exp. Results: FC-based Compaction 6 10 6 All 7 4 Better 7 5 4 10 3
Hybrid-FC-LROR 2+ 1+ MR FC-LROR
Exp. Results: Hybrid-FC-LROR Better 8 9 9
Limitations of Justification Algorithm • Justification of G/F value is done based on cost functions, which is an approximate method. • Cost of Good value is only used. • These limitations result in extraction of longer test sequences than necessary.
Conclusion & Future Work • In this work, we have proposed several efficient static compaction techniques, which achieve the following: • Better or comparable level of compaction while reducing the runtime. • All important attributes of static compaction techniques are integrated. • Limitation of quick saturation of Restoration based techniques has been addressed. • A new class of compaction algorithms has been introduced, based on increasing the fault-coverage of restored subsequences.
Conclusion & Future Work • Investigate techniques to overcome the limitations of Justification Algorithm. • Investigate techniques for increasing the fault coverage of an extracted Subsequences.
Thank you! Q & A
Types of Compaction Algorithms • Unique opportunities provided by Static Compaction: • It may be applied to test vectors generated by any ATPG tool without modifying the test generation process. • It may be applied after dynamic compaction. • It takes lesser time to get final test set. • The shortest test sequence for sequential circuits are generated by static compaction techniques. • For these reasons, Static Compaction is more popular in Sequential circuits than Dynamic Compaction.
State-of-the-art Static Compaction Algorithms (SIFAR) • SIFAR uses the basic idea of Test Vector Restoration. • It considers a single target fault (in decreasing order of detection time) and restores test vectors until fault is detected. • This is also called Test Vector Restoration. • SIFAR uses parallel fault simulator to speed up the restoration process.
SIFAR Snapshot of algorithm under execution Targeting f1. Restoring vector #6 doesn’t detect the fault Targeting f1. Restoring vector # 5 and 6, doesn’t detect the fault Restoring vector # 4, 5 and 6, detects the fault f1. F1 detected Restored vector # 4, 5 and 6, are concatenated with previously restored test vectors .
State-of-the-art Static Compaction Algorithms (RROR) • RROR is a variation of LROR, meant to speed up the restoration process. • In RROR, rather than restoring frame by frame, the algorithm jumps to previous time frames. • Radix Search is based on binary search and depends on the value of ri-1, such that, 1< r ≤ 2 and i=1,2,3.. • The algorithm keeps jumping until the target fault(s) is detected.
RROR Snapshot of algorithm under execution Targeting f1 andf2.Restoring vector #9 doesn’t detect the fault. r=2, i=1 Restoring vector # 7, 8 and 9, doesn’t detect the fault f1 and f2. r=2, i=2 Restoring vector # 3, 4, 5 and 6, detects the faults f1 and f2. r=2, i=3 f1 andf2detected Restored vector # 3, 4 … 9, are concatenated with previously restored test vectors .
Merging Restoration • A newly restored subsequence may be merged with previous subsequences either towards Top or Bottom or from where the savings are highest. • Merging towards bottom starts from top and slides the newly restored SS downwards until merged or appended. • Merging towards TOP starts from Bottom and slides the newly restored SS upwards until merged or appended
Fault-Coverage based Compaction • Observations: Initially restored test sequences cover a large number of faults. This is called covering effect, which is used by Restoration based compaction algorithms. • Motivation: A large reduction in test size is possible by increasing the fault coverage of currently restored subsequences.