In this chapter, a software-based methodology to automatically generate test programs is described. The methodology is based on an evolutionary algorithm able to generate test programs for microprocessor cores, and may be used for different processors since their instruction set architecture is described appropriately, and because a feedback can be defined, computed, and used to drive the test program generation process. The usefulness of the methodology is backed up by the presentation of three different cases of study: the first one tackles the verification of the DLX/pII processor; the second one generates post-silicon verification programs for the Pentium 4; and the third one evolves a test set for the PLASMA processor. The gathered experimental results demonstrate the algorithm versatility and efficiency.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
International Technology Roadmap for Semiconductors - ITRS 2005 Edition, http://www.itrs.net/Links/2005ITRS/Home2005.htm/
R. M. Friedberg, “A Learning Machine: Part I”, IBM Journal of Research and Development, Vol. 2, No. 1, pp 2-13, 1958
R. M. Friedberg, B. Dunham, J.H. North, “A Learning Machine: Part II”, IBM Journal Research and Development, Vol. 3, pp. 183-191, 1959
G. Squillero, “MicroGP — An Evolutionary Assembly Program Generator”, Genetic Programming and Evolvable Machines, vol. 6, no. 3, 2005, pp. 247-263
R. Poli, “A Simple but Theoretically-Motivated Method to Control Bloat in Genetic Programming”, EuroGP 2003, pp. 204-217
F. Corno, E. Sanchez, G. Squillero, “Evolving Assembly Programs: How Games Help Microprocessor Validation”, IEEE Transactions on Evolutionary Computation, Special Issue on Evolutionary Computation and Games, Dec. 2005, vol. 9, pp. 695-706
L. Chen, S. Dey, “Software Based Self Test methodology using a embedded Software Tester”, IEEE transaction on computer aided design of integrated circuits and systems, pp 369-380 (2001)
F. Corno, M. Sonza Reorda, G. Squillero, M. Violante, “On the Test of Microprocessor IP Cores”, DATE01: IEEE Design, Automation & Test in Europe, 2001, pp. 209-213
F. Corno, G. Cumani, M. Sonza Reorda, G. Squillero, “Evolutionary Test Program Induction for Microprocessor Design Verification”, ATS02: IEEE Asian Test Symposium, 2002, pp. 368-373
F. Corno, G. Cumani, M. Sonza Reorda, G. Squillero, “Fully Automatic Test Program Generation for Microprocessor Cores”, DATE03: IEEE Design, Automation & Test in Europe, 2003, pp. 1006-1011
F. Corno, M. Sonza Reorda, G. Squillero, “Automatic Test Program Generation for Pipelined Processors”, SAC03: ACM Symposium on Applied Computing, 2003, pp. 736-740
F. Corno, G. Squillero, M. Sonza Reorda, “Code Generation for Functional Validation of Pipelined Microprocessors”, ETW03: IEEE European Test Workshop, 2003, pp. 113-118
D. A. Patterson, J. L. Hennessy, Computer Architecture — A Quantitative Approach (2nd edition), Morgan Kaufmann, 1996.
A. Piziali, Functional Verification Coverage Measurements and Analysis, Kluwer Academic Publishers, 2004
S. Tasiran, K. Keutzer, “Coverage Metrics for Functional Validation of Hardware Designs”, IEEE Design & Test of Computers, vol. 18(4), 2001, pp. 36-45
J. L. Chien-Nan, C. Chen-Yi, J. Jing-Yang, L. Ming-Chih, J. Hsing-Ming, “A novel approach for functional coverage measurement in HDL Circuits and Systems”, ISCAS2000: The 2000 IEEE International Symposium on Circuits and Systems, 2000, pp. 217-220
D. A. Patterson, J. L. Hennessy, Computer Architecture — A Quantitative Approach (2nd edition), Morgan Kaufmann, 1996
R. Singhal, K. S. Venkatraman, E. R. Cohn, J. G. Holm, D. A. Koufaty, MengJang Lin, M. J. Madhav, M. Mattwandel, Nidhi Nidhi, J. D. Pearce, M. Seshadri. “Performance Analysis and Validation of the Intel ® Pentium ® 4 Processor on 90 nm Technology”. Intel Technology Journal, Volume 8, issue 1, 2004. pp 33-42
Intel ® Corporation, IA-32 Intel ® Architecture Software Developer’s Manual Volume 3: System Programming Guide, 2004, http://developer.intel.com/design/pentium4/manuals/
Brinkley Sprunt, “Pentium ® 4 Performance Monitoring Features”, IEEE Micro, July-August 2002, pp. 72 82R
G. Hinton, D. Sager, M. Upton, D. Boggs, D. Carmean, A. Kyker, P. Roussel, “The Microarchitecture of the Pentium ® 4 Processor”, Intel ® Technology Journal, 1st quarter 2001, http://www.intel.com/technology/itj/q12001/articles/art 2.htm
V. Agrawal, M. Bushnell, Essentials of Electronic Testing for Digital, Memory and Mixed-Signal VLSI Circuits, Kluwer Academic Publishers, 2000
L. Chen, S. Dey, “Software Based Self Test methodology using a embedded Software Tester”, IEEE transaction on computer aided design of integrated circuits and systems, pp 369-380 (2001)
MIPS TECHNOLOGIES. (2002) MIPS32TM Architecture For Program- mers Volume I: Introduction to the MIPS32TM Architecture. Revision 1.90. http://www.mips.com/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Sanchez, E., Squillero, G. (2007). Evolutionary Techniques Applied to Hardware Optimization Problems: Test and Verification of Advanced Processors. In: Jain, L.C., Palade, V., Srinivasan, D. (eds) Advances in Evolutionary Computing for System Design. Studies in Computational Intelligence, vol 66. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72377-6_13
Download citation
DOI: https://doi.org/10.1007/978-3-540-72377-6_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-72376-9
Online ISBN: 978-3-540-72377-6
eBook Packages: EngineeringEngineering (R0)