Skip to main content
Log in

Test Data Compression Using Selective Sparse Storage

  • Published:
Journal of Electronic Testing Aims and scope Submit manuscript

Abstract

For today’s very large scale integrated circuits, test data volume is recognized as a major contributor to the cost of manufacturing testing. Test data compression addresses this problem by reducing the test data volume without affecting the overall system performance. This paper proposes a new test data compression technique using selective sparse storage. Test sets are partitioned into four kinds of blocks of uniform length, all-0 blocks, all-1 blocks, sparse blocks and characterless blocks. Blocks are encoded appropriately based on the occurrence of them. They are encoded into 0, 10, 110 + number of the sparse bits + locations of all the sparse bits, and 111 + the block itself, respectively. Two algorithms are proposed for how to select the sparse blocks from test sets. A theoretical analysis for our selective sparse storage shows the new compression technique outperforms the conventional test data compression approaches. Experimental results illustrate the flexibility and efficiency of the new method, which is consistent with the theoretical analysis.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. Anshuman Chandra et al. (2003) A unified approach to reduce SOC test data volum, scan power and testing time. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst (22)3:352–362

    Google Scholar 

  2. Chandra A, Chakrabarty K (2001) System-on-a-chip data compression and decompression architecture based on Golomb codes. IEEE Trans Computer-Aided Design Inter Circuits Syst 20(3):355–368

    Article  Google Scholar 

  3. Chandra A, Chakrabarty K (2001)Frequency-diredted run-length(FDR) codes with application to system-on-a-chip test data compression. In Proceedings of 19th IEEE VLSI Test Symposium(VTS2001), pp 4247

  4. Chandra A, Chakrabarty K (2002) How effective are compression codes for reducing test data volume. In Proc IEEE VLSI Test Symp pp 91–96

  5. Czysz D, Kassab M, Lin X, Mrugalski G, Rajski J, Tyszer J (2009) Low-power scan operation in test compression environment. IEEE Trans Comput-Aided Design Integr Circuits Syst (28)11:1742–1755

    Google Scholar 

  6. EL-Maleh AH (2007) Efficient test compression technique based on block merging. IET compter& Digital Techniques (2)5:327–335

    Google Scholar 

  7. EL-Maleh AH (2008)Test data compression for system-on-a-chip using extended frequency-directed run-length code. IET Computers & Digital Techniques (2)3:155–163

  8. Gonciari P, Al-Hashimi BM, Nicolici N (2003) Variable-length input Huffman coding for system-on-a-chip test. IEEE Trans Comput-Aided Design Integr Circuits Syst 22(6):783–796

    Article  Google Scholar 

  9. Hamzaoglu I, Patel JH (1999) Test set compaction algorithms for combinational circuits. n Proc. Int,Conf. Computer-Aided Design pp 283–289

  10. Huffman DA (1952) A method for the construction of minimum redundancy codes. In Proc IRE (40)9:1098–1101

  11. Jas A, Gosh-Dastidar J, Ng M, Touba N (2003) An effcient test vector compression scheme using selective Huffman coding. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst (22)6:797–806

    Google Scholar 

  12. Kavousianos X, Kalligeros E, Nikolos D (2007) Multilevel Huffman coding: an efficient test-data compression method for IP cores. IEEE Trans Comput-Aided Design Integr Circuits Syst 26(6):1070–1083

    Article  Google Scholar 

  13. Kavousianos X, Kalligeros E, Nikolos D (2007) Optimal selective Huffman coding for test data compression. IEEE Trans Comput 56(8):1146–1152

    Article  MathSciNet  Google Scholar 

  14. Kavousianos X, Kalligeros E, Nikolos D (2008) Test data compression based on variable-to-variable Huffman encoding with codeword reusability. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst (27)7:1333–1338

    Google Scholar 

  15. Krishna C, Touba N (2002) Reducing test data volume using LFSR reseeding with seed compression. In Proceedings of ITC’02, pp. 321–330

  16. Laung-Terng Wang, Zhigang Wang, Xiaoqing wen, et al. (2008) VirtualScan: test compression technology using combinatioal logic and one-pass ATPG. IEEE Design & Test of Computers (25)2:122–129

    Google Scholar 

  17. Ling Zhang, Jishuang Kuang, Zhiqiang You (2010) Test data compression using four-Coded and sparse storage for testing embedded core. In Algorithms and Architectures for Parallel Processing[ICA3PP], pp 434–443

  18. Lingappan L, Ravi S, Raghunathan A, Jha NK, Chakradhar ST (2006) Test-volume reduction in systems-on-a-chip using heterogeneous and multilevel compression techniques. IEEE Trans on CAD of Integrated Circuits and Systems 25(10):2193–2206

    Article  Google Scholar 

  19. Mu SP, Chao MC-T (2010) Theoretical analysis for low-power test decompression using test-slice duplication. in 28th VLSI test Symposium pp:147–152

  20. Nourani M, Tehranipour M (2005) RL-Huffman encoding for test compression and power reduction in scan application. ACM trans Des AUTOM Electron Syst (10)1:91–115

    Google Scholar 

  21. Rajski J, Tyszer J, Kassab M, Mukherjee N (2004) Embedded deterministic test. IEEE Trans Comput-Aided Des Integr Circuit Syst 23(5):776–792

    Article  Google Scholar 

  22. Ros M, Sutton P (2004) A hamming distance based VLIW/EPIC code compression technique. In Proc. Compilers, Arh., Synth. Embed. Syst. pp 132–139

  23. Seong S, Mishra P (2008) Bitmask-based code compression for embedded systems. IEEE Trans Comput-Aided Des Integr Circuits Syst (27)4:673–685

    Google Scholar 

  24. Sying-Jyan Wang, Katherine Shu-Min Li, Shih-Cheng Chen, Huai-Yan Shiu, Yun-Lung Chu (2009) Scan-Chain Partition for High Test-Data Compressiblility and Low Shift Power Under Routing Constraint. IEEE Trans. Comput.-Aided Design Integr. Circuits Syst (28)5:716–727

    Google Scholar 

  25. Tehranipour M, Nourani M, Chakrabarty K (2005)Nine-coded compression technique for testing embedded cores in SoCs. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. (13)6:719–731

    Google Scholar 

  26. Tenentes V, Kavousianos X, Kalligeros E (2010) Single and variable-state-skip LFSRs: bridging the gap between test data compression and test set embedding for IP cores. IEEE Trans Comput-Aided Design Integr Circuits Syst 29(2):1640–1644

    Article  Google Scholar 

  27. Touba NA (2006) Survey of test vector compression techniques. IEEE Des Test Comput 23(4):294–303

    Article  Google Scholar 

  28. User Manuals for SYNOPSYS Toolset Version 2003.12,Synopsys, Inc. Mountain View, CA. 2003

  29. Wan MY, Pan Y, Zhou S. Yan XL (2010)Test data-compression using extended frequency-directed run-length code based on compatibility. Electronics Letters (26)6:404–406

    Google Scholar 

  30. Wang Z, Chakrabarty K (2008) Test data compression for IP embedded cores using selective encoding of scan slices. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. (16)11:1429–1440

    Google Scholar 

  31. Wang-Dauh Tsent, Lung-Jen Lee (2010) Test data compression using multi-dimentinal pattern run-length codes. J Electron Test (26)3:393–400

    Google Scholar 

  32. Wohl P, Waicukauski JA, Patel S, DaSilva F, Kapur R (2005) Efficient compression of deterministic patterns into multiple PRPG Seeds, In Proceedings of ITC’05, pp. 1–10

  33. Wurtenberger A, Tautermann CS, Hellebrand S (2004) Data compression for multiple scan chains using dictionaries with corrections. In Proceedings of ITC’04, pp. 926–935

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ji-shun Kuang.

Additional information

Responsible Editor: S. Hellebrand

This research is supported by National Natural Science Foundation of China (NSFC) under grant No. 60773207 and 60673085

Appendix

Appendix

Test application time computation

The frequency of ATE is denoted as f ATE and the frequency of SoC scan is assumed as f scan . The test application time for the case of no compression(Tp) depends on the total number of input bits(−TD|) and ATE’s working frequency[31] where \( Tp = |{T_D}|/{f_{{ATE}}} \).

For selective sparse storage, the test application time T sparse depends on the occurrence frequency of each type block in every test pattern. We assume the number of pattern is N, the occurrence frequency of block type c j in pattern i is \( {f_{{i,{c_j}}}} \), and the corresponding length is \( {L_{{i,{c_j}}}} \). When decoder input \( {L_{{i,{c_j}}}} \)is entered into FSM, \( {L_{{i,{c_j}}}} \)ATEs and K system clocks are needed for applying Kj bits into scan chain. So, T sparse is computed by

$$ \begin{array}{*{20}{c}} {{T_{{sparse}}}} \hfill & { = \sum\limits_{{i = 1}}^N {\sum\limits_{{j = 1}}^4 {\left( {\frac{{{L_{{i,{c_j}}}}}}{{{f_{{ATE}}}}} + \frac{{{K_j}}}{{{f_{{scan}}}}}} \right)} } \times {f_{{i,{c_j}}}}} \hfill \\ {} \hfill & { = \sum\limits_{{i = 1}}^N {\left( {{f_{{i,{c_1}}}} \times \left( {\frac{1}{{f{}_{{ATE}}}} + \frac{{{K_j}}}{{{f_{{scan}}}}}} \right) + {f_{{i,{c_2}}}} \times \left( {\frac{2}{{f{}_{{ATE}}}} + \frac{{{K_j}}}{{{f_{{scan}}}}}} \right) + {f_{{i,{c_3}}}} \times \left( {\frac{{\left( {3 + {N_S} \times {{\log }_2}{K_j} + {{\log }_2}{N_s}} \right)}}{{f{}_{{ATE}}}} + \frac{{{K_j}}}{{{f_{{scan}}}}}} \right) + {f_{{i,{c_4}}}}\left( {\frac{{\left( {3 + {K_j}} \right)}}{{f{}_{{ATE}}}} + \frac{{{K_j}}}{{{f_{{scan}}}}}} \right)} \right)} } \hfill \\ \end{array} $$

Rights and permissions

Reprints and permissions

About this article

Cite this article

Zhang, L., Kuang, Js. & You, Zq. Test Data Compression Using Selective Sparse Storage. J Electron Test 27, 565–577 (2011). https://doi.org/10.1007/s10836-011-5234-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10836-011-5234-7

Keywords

Navigation