skip to main content
research-article

Providing Accountability in Heterogeneous Systems-on-Chip

Published:17 September 2018Publication History
Skip Abstract Section

Abstract

When modern systems-on-chip (SoCs), containing designs from different organizations, miscompute or underperform in the field, discerning the responsible component is a non-trivial task. A perfectly accountable system is one in which the on-chip component at fault is always unambiguously detected. The achievement of accountability can be greatly aided by the collection of runtime information that captures the events in the system that led to the error. Such information collection must be fair and impartial to all parties. In this article, we prove that logging messages communicated between components from different organizations is sufficient to provide accountability, provided the logs are authentic. We then construct a solution based on this premise, with an on-chip trusted auditing system to authenticate the logs. We present a thorough design of the auditing system, and demonstrate that its performance overhead is a mere 0.49%, and its area overhead is a mere 0.194% (in a heterogeneous 48 core, 400mm2 chip). We also demonstrate the viability of this solution using three representative bugs found in popular commercial SoCs.

References

  1. 2013. CC2538 Errata Note. http://www.ti.com/lit/er/swrz045a/swrz045a.pdf.Google ScholarGoogle Scholar
  2. 2013. MCIMX31 and MCIMX31L Chip Errata. http://www.nxp.com/assets/documents/data/en/errata/MCIMX31CE.pdf.Google ScholarGoogle Scholar
  3. 2014. IEEE Recommended Practice for Encryption and Management of Electronic Design Intellectual Property (IP). https://standards.ieee.org/findstds/standard/1735-2014.html.Google ScholarGoogle Scholar
  4. 2014. SoC Integration Mistakes. http://semiengineering.com/experts-at-the-table-soc-integration-mistakes/.Google ScholarGoogle Scholar
  5. 2016. Blue Gecko SoC (EFR32BG1) Errata. http://www.silabs.com/Support%20Documents/RegisteredDocs/efr32bg1-errata.pdf.Google ScholarGoogle Scholar
  6. 2016. ER0195 Errata SmartFusion2 M2S050 (T,TS). https://www.microsemi.com/document-portal/doc_view/135069-er0195-smartfusion2-soc-m2s050-t-ts-errata.Google ScholarGoogle Scholar
  7. 2016. Xilinx Zynq-7000 AP SoC Production Errata. https://www.xilinx.com/support/documentation/errata/en247.pdf.Google ScholarGoogle Scholar
  8. Miron Abramovici and Paul Bradley. 2009. Integrated circuit security: New threats and solutions. In CSIIRW.Google ScholarGoogle Scholar
  9. Katerina Argyraki, Petros Maniatis, Olga Irzak, Subramanian Ashish, and Scott Shenker. 2007. Loss and delay accountability for the internet. In ICNP.Google ScholarGoogle Scholar
  10. Jerry Backer, David Hely, and Ramesh Karri. 2016. Secure and flexible trace-based debugging of systems-on-chip. ACM TODAES 22, 2 (2016), 31. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Kanad Basu and Prabhat Mishra. 2011. Efficient trace data compression using statically selected dictionary. In IEEE VTS.Google ScholarGoogle Scholar
  12. Andrey Bogdanov, Lars R. Knudsen, Gregor Leander, Christof Paar, Axel Poschmann, Matthew J. B. Robshaw, Yannick Seurin, and Charlotte Vikkelsoe. 2007. PRESENT: An ultra-lightweight block cipher. In CHES. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Sandeep Chandran, Preeti Ranjan Panda, Smruti R. Sarangi, Ayan Bhattacharyya, Deepak Chauhan, and Sharad Kumar. 2017. Managing trace summaries to minimize stalls during postsilicon validation. IEEE TVLSI 25, 6 (2017), 1881--1894.Google ScholarGoogle Scholar
  14. B. Couillard. 2002. Method and apparatus for synchronizing real-time clocks of time stamping cryptographic modules. U.S. Patent Application No. 09/774,599 (Aug. 2002).Google ScholarGoogle Scholar
  15. Kees Goossens, Bart Vermeulen, Remco Van Steeden, and Martijn Bennebroek. 2007. Transaction-based communication-centric debug. In NOCS. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Ujjwal Guin, Qihang Shi, Domenic Forte, and Mark M. Tehranipoor. 2016. FORTIS: A comprehensive solution for establishing forward trust for protecting IPs and ICs. ACM TODAES 21, 4 (2016), 63. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Panu Hamalainen, Timo Alho, Marko Hannikainen, and Timo D. Hamalainen. 2006. Design and implementation of low-area and low-power AES encryption hardware core. In DSD. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Wei Huang, K. Rajamani, M. R. Stan, and K. Skadron. 2011. Scaling with design constraints: Predicting the future of big chips. Micro (2011). Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Neetu Jindal, Preeti Ranjan Panda, and Smruti R. Sarangi. 2017. Reusing trace buffers to enhance cache performance. In DATE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Rajshekar Kalayappan and Smruti R. Sarangi. 2013. A survey of checker architectures. ACM CSUR 45, 4 (2013), 48. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Rajshekar Kalayappan and Smruti R. Sarangi. 2015. SecX: A framework for collecting runtime statistics for SoCs with multiple accelerators. In ISVLSI.Google ScholarGoogle Scholar
  22. Zhu Keija, Xu ke, Wang Yang, and Min Hao. 2003. A novel ASIC implementation of RSA algorithm. In ASIC.Google ScholarGoogle Scholar
  23. Steve Kremer, Olivier Markowitch, and Jianying Zhou. 2002. An intensive survey of fair non-repudiation protocols. Computer Communications 25, 17 (2002), 1606--1621. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. A. Kupcu. 2015. Incentivized outsourced computation resistant to malicious contractors. IEEE TDSC 14, 6 (2017), 633--649.Google ScholarGoogle Scholar
  25. Chung-Wei Lin, Bowen Zheng, Qi Zhu, and Alberto Sangiovanni-Vincentelli. 2015. Security-aware design methodology and optimization for automotive systems. ACM TODAES 21, 1 (2015), 18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Philipp Mundhenk, Andrew Paverd, Artur Mrowca, Sebastian Steinhorst, Martin Lukasiewycz, Suhaib A. Fahmy, and Samarjit Chakraborty. 2017. Security in automotive networks: Lightweight authentication and authorization. ACM TODAES 22, 2 (2017), 25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. M. Papadonikolakis, V. Pantazis, and A. P. Kakarountas. 2007. Efficient high-performance ASIC implementation of JPEG-LS encoder. In DATE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Yongjun Peng. 2003. A parallel architecture for VLSI implementation of FFT processor. In ASIC.Google ScholarGoogle Scholar
  29. Resve Saleh, Steve Wilton, Shahriar Mirabbasi, Alan Hu, Mark Greenstreet, Guy Lemieux, Partha Pratim Pande, Cristian Grecu, and Andre Ivanov. 2006. System-on-chip: Reuse and integration. Proc. IEEE (2006).Google ScholarGoogle Scholar
  30. Smruti R. Sarangi, Rajshekar Kalayappan, Prathmesh Kallurkar, Seep Goel, and Eldhose Peter. 2015. Tejas: A java based versatile micro-architectural simulator. In PATMOS.Google ScholarGoogle Scholar
  31. A. Satoh and T. Inoue. 2007. ASIC hardware focused comparison for hash functions MD5, RIPEMD-160, and SHS. Elsevier INTEGRATION 40, 1 (2007), 3--10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. N. Tabrizi and N. Bagherzadeh. 2005. An ASIC design of a novel pipelined and parallel sorting accelerator for a multiprocessor-on-a-chip. In ASIC. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Bart Vermeulen. 2008. Functional debug techniques for embedded systems. IEEE Design 8 Test of Computers 25, 3 (2008), 208--215. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Providing Accountability in Heterogeneous Systems-on-Chip

            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

            Full Access

            • Published in

              cover image ACM Transactions on Embedded Computing Systems
              ACM Transactions on Embedded Computing Systems  Volume 17, Issue 5
              September 2018
              183 pages
              ISSN:1539-9087
              EISSN:1558-3465
              DOI:10.1145/3278719
              Issue’s Table of Contents

              Copyright © 2018 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: 17 September 2018
              • Revised: 1 July 2018
              • Accepted: 1 July 2018
              • Received: 1 September 2017
              Published in tecs Volume 17, Issue 5

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article
              • Research
              • Refereed

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader

            HTML Format

            View this article in HTML Format .

            View HTML Format