Abstract
Sequential Automatic Test Pattern Generation is extremely computation intensive and produces acceptable results only on relatively small designs. Hierarchical approaches that target one module at a time and use ad-hoc abstractions for the rest of the design, have shown promising results in reducing the test generation complexity. This paper develops an elegant theoretical basis, based on program slicing, for hierarchical test generation. The technique to systematically obtain a “constraint slice” for each embedded module under test within a design, is described in detail. The technique has been incorporated in an automated tool for Verilog designs, and results on large benchmark circuits show the significant benefits of the approach.
Similar content being viewed by others
References
A.V. Aho, R. Sethi, and J.D. Ullman, Compilers: Principles, Techniques, and Tools, Reading, MA: Addison-Wesley, 1986.
D. Brahme and J.A. Abraham, “Functional Testing of Microprocessors,” IEEE Trans. on Computers, vol. 33, no. 6, pp. 475-485, June 1984.
D.V. Campenhout, “A CMOS ARM Microprocessor,” Class Report, University of Michigan, 1995.
J. Cheng, “Slicing Concurrent Programs-A Graph-Theoretical Approach,” in Lecture Notes in Computer Science, Automated and Algorithmic Debugging, May 1993, pp. 223-240.
K.T. Cheng and V.D. Agrawal, “A Partial Scan Method for Sequential Circuits with Feedback,” IEEE Trans. on Computers, vol. 39, no. 9, pp. 544-548, April 1990.
E.M. Clarke, M. Fujita, P.S. Rajan, T. Reps, S. Shankar, and T. Teitelbaum, “Program Slicing of Hardware Description Languages,” in Proc. Conf. on Correct Hardware Design and Verif. Methods, Sept. 1999, pp. 298-312.
Y. Deng, S. Kothari, and Y. Namara, “Program Slice Browser,” in Proc. of the Intl.Workshop on Program Comprehension, May 2001, pp. 50-59.
K.B. Gallagher and J.R. Lyle, “Using Program Slicing in Software Maintenance,” IEEE Trans. on Software Engineering, vol. 17, no. 8, pp. 751-761, Aug. 1991.
H. Garavel and M. Sighireanu, “A Graphical Parallel Composition Operator for Process Algebras,” in Proc. FORTE/PSTV, Oct. 1999, pp. 185-202.
S. Ichinose, M. Iwaihara, and H. Yasuura, “Program Slicing on VHDL Descriptions and Its Evaluation,” IEICE Trans. Fund., vol. E81-A, no. 12, pp. 2585-2597, Dec. 1998.
F. Lanubile and G. Visaggio, “Extracting Reusable Functions by Flow Graph-Based Program Slicing,” IEEE Trans. on Software Engg., vol. 23, no. 4, pp. 246-259, April 1997.
J. Lee and J.H. Patel, “Hierarchical Test Generation under Architectural Level Functional Constraints,” IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, vol. 15, no. 9, pp. 1144-1151, Sept. 1996.
C.J. Lin, Y. Zorian, and S. Bhawmik, “PSBIST: A Partial-Scan Based BIST Scheme,” in Proc. Intl. Test Conf., Oct. 1993, pp. 507-516.
J.R. Lyle and K.B. Gallagher, “A Program Decomposition Scheme with Applications to Software Modification and Testing,” in Proc. of the Hawaii Intl. Conf. on System Sciences, vol. 2, June 1989, pp. 479-485.
P.C. Maxwell and R.C. Aitken, “Test Sets and Reject Rates: All Fault Coverages Are Not Created Equal,” IEEE Design & Test of Computers, vol. 10, no. 1, pp. 42-51, March 1993.
R.S. Tupuri and J.A. Abraham, “A Novel Functional Test Generation Method for Processors Using Commercial ATPG,” in Proc. Intl. Test Conf., Nov. 1997, pp. 743-752.
v2html, “Rough Verilog Parser,” version 6.0, available at www.burbleland.com/v2html/rvp.html.
A.J. van de Goor, Testing Semiconductor Memories: Theory and Practice, Chichester, UK: John Wiley & Sons, 1991.
V.M. Vedula and J.A. Abraham, “FACTOR: A Hierarchical Methodology for Functional Test Generation and Testability Analysis,” in Proc. Design Automation and Test in Europe, March 2002, pp. 730-734.
V.M. Vedula, J.A. Abraham, and J. Bhadra, “Program Slicing for Hierarchical Test Generation,” in Proc. of IEEE VLSI Test Symposium, April 2002, pp. 237-243.
G.A. Venkatesh, “The Semantic Approach to Program Slicing,” in Proc. of the ACM Conf. on Programming Language Design and Implementation, June 1991, pp. 107-119.
P. Vishakantaiah, J.A. Abraham, and M. Abadir, “Automatic Test Knowledge Extraction from VHDL (ATKET),” in Proc. Design Automation Conf., June 1992, pp. 273-278.
M. Weiser, “Program Slicing,” IEEE Trans. on Software Engineering, vol. SE-10, no. 4, pp. 352-357, July 1984.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Vedula, V.M., Abraham, J.A., Bhadra, J. et al. A Hierarchical Test Generation Approach Using Program Slicing Techniques on Hardware Description Languages. Journal of Electronic Testing 19, 149–160 (2003). https://doi.org/10.1023/A:1022885523034
Issue Date:
DOI: https://doi.org/10.1023/A:1022885523034