skip to main content
10.1145/1973009.1973075acmconferencesArticle/Chapter ViewAbstractPublication PagesglsvlsiConference Proceedingsconference-collections
research-article

Real-time address trace compression for emulated and real system-on-chip processor core debugging

Published:02 May 2011Publication History

ABSTRACT

In the multicore era, capturing execution traces of processors is indispensable to debugging complex software. The inability to transfer vast amounts of trace data off-chip without significant slow-down has impeded the debugging of such software, in both pre-silicon emulation and in real designs. We consider on-chip trace compression performed in hardware to reduce data volume, using techniques that exploit inherent higher-order redundancy in address trace data. While hardware trace compression is often restricted to poor or moderate performance due to area and memory constraints, we present a parameterizable scheme that leverages the resources already found on existing platforms. Harnessing resources such as existing trace buffers on CPUs, and unused embedded memory on FPGA emulation platforms, our trace compression scheme requires only a small additional hardware area to achieve superior compression ratios.

References

  1. E. Anis and N. Nicolici. On using lossless compression of debug data in embedded logic analysis. In IEEE International Test Conference, 2007, pages 1--10, 2007.Google ScholarGoogle ScholarCross RefCross Ref
  2. ARM Ltd. CoreSight Trace Macrocells. http://www.arm.com/products/system-ip.Google ScholarGoogle Scholar
  3. M. Boulé, J. Chenard, and Z. Zilic. Adding debug enhancements to assertion checkers for hardware emulation and silicon debug. In International Conference on Computer Design, pages 294--299, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  4. S. Bourduas, J. Chenard, and Z. Zilic. A Quality-Driven design approach for NoCs. IEEE Design & Test of Computers, 25(5):416--428, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Burtscher, I. Ganusov, S. Jackson, J. Ke, P. Ratanaworabhan, and N. Sam. The VPC trace-compression algorithms. IEEE Transactions on Computers, 54(11):1329--1344, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. E. Chung and J. Hoe. High-Level design and validation of the BlueSPARC multithreaded processor. IEEE Transactions on CAD, 29(10):1459--1470, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. E. Chung, E. Nurvitadhi, J. C. Hoe, B. Falsafi, and K. Mai. A complexity-effective architecture for accelerating full-system multiprocessor simulations using FPGAs. In Proceedings of the International Symposium on FPGAs, pages 77--86, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. P. A. Emrath, S. Chosh, and D. A. Padua. Event synchronization analysis for debugging parallel programs. In Supercomputing. ACM/IEEE Conference on, pages 580--588, 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. Guthaus, J. Ringenberg, D. Ernst, T. Austin, T. Mudge, and R. Brown. MiBench: a free, commercially representative embedded benchmark suite. In IEEE International Workshop on Workload Characterization, pages 3--14, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. A. Hopkins and K. McDonald-Maier. Debug support for complex systems on-chip: a review. IEE Proc. of Computers & Digital Techniques, 153(4):197--207, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  11. C. Kao, S. Huang, and I. Huang. A hardware approach to Real-Time program trace compression for embedded processors. IEEE Transactions on Circuits and Systems I: Regular Papers, 54(3):530--543, 2007.Google ScholarGoogle ScholarCross RefCross Ref
  12. A. Mayer, H. Siebert, and C. Lipsky. Multi-core debug solution IP. White paper, IPExtreme, 2007.Google ScholarGoogle Scholar
  13. A. Mayer, H. Siebert, and K. McDonald-Maier. Boosting debugging support for complex systems on chip. Computer, 40(4):76--81, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. M. Milenkovic and M. Burtscher. Algorithms and hardware structures for unobtrusive real-time compression of instruction and data address traces. In Data Compression Conference, pages 283--292, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. B. Plattner. Real-Time execution monitoring. IEEE Trans. Software Engineering, SE-10(6):756--764, 1984.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Y. Sazeides and J. Smith. The predictability of data values. In Microarchitecture., IEEE/ACM International Symposium on, pages 248--258, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. V. Uzelac and A. Milenkovic. A real-time program trace compressor utilizing double move-to-front method. In DAC'09, pages 738--743, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. Ziv and A. Lempel. A universal algorithm for sequential data compression. IEEE Transactions on Information Theory, 23(3):337--343, 1977.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Real-time address trace compression for emulated and real system-on-chip processor core debugging

    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
      GLSVLSI '11: Proceedings of the 21st edition of the great lakes symposium on Great lakes symposium on VLSI
      May 2011
      496 pages
      ISBN:9781450306676
      DOI:10.1145/1973009

      Copyright © 2011 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: 2 May 2011

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate312of1,156submissions,27%

      Upcoming Conference

      GLSVLSI '24
      Great Lakes Symposium on VLSI 2024
      June 12 - 14, 2024
      Clearwater , FL , USA

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader