skip to main content
10.1145/2228360.2228531acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article

Checking architectural outputs instruction-by-instruction on acceleration platforms

Published:03 June 2012Publication History

ABSTRACT

Simulation-based verification is an integral part of a modern microprocessor's design effort. Commonly, several checking techniques are deployed alongside the simulator to detect and localize each functional bug manifestation. Among these, a widespread technique entails comparing a microprocessor design's outputs with a golden model at the architectural granularity, instruction-by-instruction. However, due to exponential growth in design complexity, the performance of software-based simulation falls far short of achieving an acceptable level of coverage, which typically requires billions of simulation cycles. Hence, verification engineers rely on simulation acceleration platforms. Unfortunately, the intrinsic characteristics of these platforms make the adoption of the checking solutions mentioned above a challenging goal: for instance, the lockstep execution of a software checker together with the design's simulation is no longer feasible.

To address this challenge we propose an innovative solution for instruction-by-instruction (IBI) checking tailored to acceleration platforms. We provide novel design techniques to decouple event tracing from checking by including specialized tracing logic and by adding a post-simulation checking phase. Note that simulation performance in acceleration platforms degrades when increasing the number of signals that are traced; hence, it is imperative to generate a compact summary of the information required for checking, collecting and tracing only a few bits of information per cycle.

References

  1. A. Adir, E. Almog, L. Fournier, E. Marcus, M. Rimon, M. Vinov, and A. Ziv. Genesys-Pro: Innovations in test program generation for functional processor verification. IEEE Design & Test, 21(2), 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. T. M. Austin. DIVA: A reliable substrate for deep submicron microarchitecture design. In Proc. MICRO, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. Boulé, J.-S. Chenard, and Z. Zilic. Adding debug enhancements to assertion checkers for hardware emulation and silicon debug. In Proc. ICCD, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  4. O. Caty, P. Dahlgren, and I. Bayraktaroglu. Microprocessor silicon debug based on failure propagation tracing. In IEEE Transactions on Computers, 2005.Google ScholarGoogle Scholar
  5. Y.-S. Chang, S. Lee, I.-C. Park, and C.-M. Kyung. Verification of a microprocessor using real world applications. In Proc. DAC, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. J. Darringer, E. Davidson, D. Hathaway, B. Koenemann, M. Lavin, J. Morrell, K. Rahmat, W. Roesner, E. Schanzenbach, G. Tellez, and L. Trevillyan. EDA in IBM: past, present, and future. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 19(12), 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. L. Fournier, Y. Arbetman, and M. Levinger. Functional verification methodology for microprocessors using the Genesys test-program generator. In Proc. DATE, pages 434--441, March 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. G. Ganapathy, R. Narayan, C. Jorden, M. Wang, and J. Nishimura. Hardware emulation for functional verification of K5. In Proc. DAC, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J. M. Ludden et al. Functional verification of the POWER4 microprocessor and POWER4 multiprocessor systems. IBM Journal of Research and Development, 46(1):53--76, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. A. Mayer, H. Siebert, and K. McDonald-Maier. Boosting debugging support for complex systems on chip. Computer, 40(4), 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S.-B. Park, T. Hong, and S. Mitra. Post-silicon bug localization in processors using instruction footprint recording and analysis (IFRA). IEEE Trans. on CAD, 28(10), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. V. Popescu and B. McNamara. Innovative verification strategy reduces design cycle time for high-end SPARC processor. In Proc. DAC, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. W. Victor et al. Functional verification of the POWER5 microprocessor and POWER5 multiprocessor systems. IBM Journal of Research and Development, 49(4), 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. J.-S. Yim, Y.-H. Hwang, C.-J. Park, H. Choi, W.-S. Yang, H.-S. Oh, I.-C. Park, and C.-M. Kyung. A C-based RTL design verification methodology for complex microprocessor. In Proc. DAC, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Checking architectural outputs instruction-by-instruction on acceleration platforms

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      DAC '12: Proceedings of the 49th Annual Design Automation Conference
      June 2012
      1357 pages
      ISBN:9781450311991
      DOI:10.1145/2228360

      Copyright © 2012 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 3 June 2012

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate1,770of5,499submissions,32%

      Upcoming Conference

      DAC '24
      61st ACM/IEEE Design Automation Conference
      June 23 - 27, 2024
      San Francisco , CA , USA

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader