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

DHOOM: Reusing Design-for-Debug Hardware for Online Monitoring

Published:02 June 2019Publication History

ABSTRACT

Runtime verification employs dedicated hardware or software monitors to check whether program properties hold at runtime. However, these monitors often incur high area and performance overheads depending on whether they are implemented in hardware or software. In this work, we propose DHOOM, an architectural framework for runtime monitoring of program assertions, which exploits the combination of a reconfigurable fabric present alongside a processor core with the vestigial on-chip Design-for-Debug hardware. This combination of hardware features allows DHOOM to minimize the overall performance overhead of runtime verification, even when subject to a given area constraint. We present an algorithm for dynamically selecting an effective subset of assertion monitors that can be accommodated in the available programmable fabric, while instrumenting the remaining assertions in software. We show that our proposed strategy, while respecting area constraints, reduces the performance overhead of runtime verification by up to 32% when compared with a baseline of software-only monitors.

References

  1. R. Backasch, C. Hochberger, A. Weiss, M. Leucker, and R. Lasslop. 2013. Runtime Verification for Multicore SoC with High-quality Trace Data. ACM TODAES 18, 2 (2013). Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. A. Basak, S. Bhunia, and S. Ray. 2016. Exploiting design-for-debug for flexible SoC security architecture. In DAC. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. S. Chandran, P. R. Panda, S. R. Sarangi, A. Bhattacharyya, D. Chauhan, and S. Kumar. 2017. Managing Trace Summaries to Minimize Stalls During Postsilicon Validation. IEEE TVLSI 25, 6 (2017).Google ScholarGoogle Scholar
  4. N. Decker, P. Gottschling, C. Hochberger, M. Leucker, T. Scheffel, M. Schmitz, and A. Weiss. 2017. Rapidly Adjustable Non-intrusive Online Monitoring for Multi-core Systems. In SBMF. Springer.Google ScholarGoogle Scholar
  5. D. Y Deng, D. Lo, G. Malysa, S. Schneider, and G E. Suh. 2010. Flexible and efficient instruction-grained run-time monitoring using on-chip reconfigurable fabric. In MICRO. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. F. Farahmandi, R. Morad, A. Ziv, Z. Nevo, and P. Mishra. 2017. Cost-effective analysis of post-silicon functional coverage events. In DATE. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. P. Fogarty, C. MacNamee, and D. Heffernan. 2013. On-chip support for software verification and debug in multi-core embedded systems. IET Software 7, 1 (2013).Google ScholarGoogle Scholar
  8. J.R Hauser and J. Wawrzynek. 1997. Garp: A MIPS processor with a reconfigurable coprocessor. In IEEE FCCM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. Jakšić, E. Bartocci, R. Grosu, R. Kloibhofer, T. Nguyen, and D. Ničkovié. 2015. From signal temporal logic to FPGA monitors. In MEMOCODE. IEEE.Google ScholarGoogle Scholar
  10. N. Jindal, P. R. Panda, and S. R Sarangi. 2018. Reusing Trace Buffers as Victim Caches. IEEE TVLSI 26, 9 (2018).Google ScholarGoogle ScholarCross RefCross Ref
  11. H. F. Ko and N. Nicolici. 2010. Automated trace signals selection using the RTL descriptions. In ITC. IEEE.Google ScholarGoogle Scholar
  12. C. Lai, Y. Yang, and I. Huang. 2014. A Versatile Data Cache for Trace Buffer Support. IEEE TCSI 61, 11 (2014).Google ScholarGoogle Scholar
  13. H. Lu and A. Forin. 2008. Automatic processor customization for zero-overhead online software verification. IEEE TVLSI 16, 10 (2008). Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. A. Nassar, F. J Kurdahi, and W. Elsharkasy. 2015. NUVA: architectural support for runtime verification of parametric specifications over multicores. In CASES. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. W. Shi, H. S Lee, L. Falk, and M. Ghosh. 2006. An integrated framework for dependable and revivable architectures using multicore processors. ACM SIGARCH CA News 34, 2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. D. Solet, J. Béchennec, M. Briday, S. Faucou, and S. Pillement. 2016. Hardware runtime verification of embedded software in SoPC. In SIES. IEEE.Google ScholarGoogle Scholar
  17. G. Stitt, B. Grattan, J. Villarreal, and F. Vahid. 2002. Using on-chip configurable logic to reduce embedded system software energy. In FCCM. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. E. Vlachos, M. L Goodstein, M. A Kozuch, S. Chen, B. Falsafi, P. B Gibbons, and T. C Mowry. 2010. ParaLog: Enabling and accelerating online parallel monitoring of multithreaded applications. ACM SIGARCH CA News 38, 1. Google ScholarGoogle ScholarDigital LibraryDigital Library

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 '19: Proceedings of the 56th Annual Design Automation Conference 2019
    June 2019
    1378 pages
    ISBN:9781450367257
    DOI:10.1145/3316781

    Copyright © 2019 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 June 2019

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article
    • Research
    • Refereed limited

    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