Skip to main content
Log in

Code Generation for Functional Validation of Pipelined Microprocessors

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

Abstract

Functional validation of pipelined microprocessors is a challenging task, as the behavior of a pipeline is determined by a sequence of instructions and by the interaction between their operands. This paper describes an approach to automatic test-program generation based on an evolutionary algorithm. The proposed methodology is able to tackle complex pipelined designs. Human intervention is limited to the formalized listing of the instruction set, and also internal parameters of the test program generator are auto-adapted. A prototype was built and exploited to generate test programs for the DLX/pII, a pipelined microprocessor. For the purpose of these experiments, test programs were devised trying to maximize the RT-level statement coverage. However, the method can be used to generate test programs on different target metrics. Results show the feasibility and effectiveness of the method.

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.

Similar content being viewed by others

References

  1. B. Bentley, “High Level Validation of Next-Generation Microprocessor,” Proc. 7th International High-Level Design Validation test Workshop, 2002, pp. 31-35.

  2. P. Bose and J.A. Abraham, “Performance and Functional Verification of Microprocessors,” in 13th International Conference on VLSI Design, 2000, pp. 58-63.

  3. F. Corno, M. Sonza Reorda, G. Squillero, and M. Violante, “On the Test of Microprocessor IP Cores,” DATE: IEEE Design, Automation & Test in Europe, 2001, pp. 209-213.

  4. F. Corno, G. Cumani, M. Sonza Reorda, and G. Squillero, “Evolutionary Test Program Induction for Microprocessor Design Verification,” Asian Test Symposium, 2002, pp. 368-373.

  5. F. Corno, G. Cumani, M. Sonza Reorda, and G. Squillero, “Fully Automatic Test Program Generation for Microprocessor Cores,” DATE: IEEE Design, Automation & Test in Europe, 2003, pp. 1006-1011.

  6. F. Corno, M. Sonza Reorda, and G. Squillero, “Automatic Test Program Generation for Pipelined Processors,” SAC2003: The Eighteenth Annual ACM Symposium on Applied Computing, 2003, pp. 736-740.

  7. F. Corno and G. Squillero, “An Enhanced Framework for Microprocessor Test-Program Generation,” in EUROGP2003: 6th European Conference on Genetic Programming, 2003, pp. 307-315.

  8. F. Corno, G. Squillero, and M. Sonza Reorda, “Code Generation for Functional Validation of Pipelined Microprocessors,” European Test Workshop, 2003, pp. 113-118.

  9. N.A. Harman, “Verifying a Simple Pipelined Microprocessor Using Maude,” Lecture Notes in Computer Science, vol. 2267, pp. 128-142, 2001.

    Google Scholar 

  10. J.R. Heath and S. Durbha, “Methodology for Synthesis, Testing, and Verification of Pipelined Architecture Processors from Behavioral-Level-Only HDL Code and a Case Study Example,” in Proc. IEEE Southeast Con., 2001, pp. 143-149.

  11. P. Mishra, H. Tomiyama, N. Dutt, and A. Nicolau, “Automatic Verification of In-Order Execution in Microprocessors with Fragmented Pipelines and Multicycle Functional Units,” DATE: IEEE Design, Automation & Test in Europe, 2002, pp. 36-43.

  12. D.A. Patterson and J.L. Hennessy, Computer Architecture-A Quantitative Approach, 2nd edn., Morgan Kaufmann, 1996.

  13. P.M. Sailer and P.M. Sler, DLX Instruction Set Architecture Handbook, Morgan Kaufmann Publishers, 1996.

  14. S. Tasiran and K. Keutzer, “Coverage Metrics for Functional Validation of Hardware Designs,” IEEE Design & Test of Computers, vol. 18, no. 4, pp. 36-45, 2001.

    Google Scholar 

  15. N. Utamaphethai, R.D. Blanton, and J.P. Shen, “Superscalar Processor Validation at the Microarchitecture Level,” in 12th IEEE International Conference on VLSI Design, 1999, pp. 300-305.

  16. D. Van Campenhout, T.N. Mudge, and J.P. Hayes, “High-Level Test Generation for Design Verification of Pipelined Microprocessors,” in Design Automation Conference, 1999, pp. 185-188.

  17. M.N. Velev and R.E. Bryant, “FormalVerification of Superscalar Microprocessors with Multicycle Functional Units, Exception, and Branch Prediction,” in Design Automation Conference, 2000, pp. 112-117.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Corno, F., Sanchez, E., Reorda, M.S. et al. Code Generation for Functional Validation of Pipelined Microprocessors. Journal of Electronic Testing 20, 269–278 (2004). https://doi.org/10.1023/B:JETT.0000029460.80721.4d

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/B:JETT.0000029460.80721.4d

Navigation