skip to main content
10.1145/2039370.2039386acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
research-article

SPMVisor: dynamic scratchpad memory virtualization for secure, low power, and high performance distributed on-chip memories

Published:09 October 2011Publication History

ABSTRACT

Emerging multicore platforms are increasingly deploying distributed scratchpad memories to achieve lower energy and area together with higher predictability; but this requires transparent and efficient software management of these critical resources. In this paper, we introduce SPMVisor, a hardware/software layer that virtualizes the scratchpad memory space in order to facilitate the use of distributed SPMs in an efficient, transparent and secure manner. We introduce the notion of virtual scratchpad memories (vSPMs), which can be dynamically created and managed as regular SPMs. To protect the on-chip memory space, the SPMVisor supports vSPM-level and block-level access control lists. In order to efficiently manage the on-chip real-estate, our SPMVisor supports policy-driven allocation strategies based on privilege levels. Our experimental results on Mediabench/CHStone benchmarks running on various Chip-Multiprocessor configurations and software stacks (RTOS, virtualization, secure execution) show that SPMVisor enhances performance by 71% on average and reduces power consumption by 79% on average.

References

  1. V. Agarwal et al. Clock rate versus ipc: the end of the road for conventional microarchitectures. SIGARCH Comput. Archit. News, 28, May 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. ARM. Amba spec. rev 2.0. In IHI-0011A, 1999.Google ScholarGoogle Scholar
  3. T. Austin et al. Simplescalar: an infrastructure for computer system modeling. Computer, 35(2), Feb. 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. K. Bai et al. Heap data management for limited local memory (llm) multi-core processors. In Proc. of the Int. Conf. on Hardware/software codesign and system synthesis, CODES/ISSS '10, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. R. Banakar et al. Scratchpad memory: design alternative for cache on-chip memory in embedded systems. In Proc. of the Int. symposium on Hardware/software codesign, CODES '02, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. L. Bathen et al. E-roc: Embedded raids-on-chip for low power distributed dynamically managed reliable memories. In Design, Automation Test in Europe Conference Exhibition (DATE), 2011.Google ScholarGoogle Scholar
  7. L. D. Bathen et al. Polimake: a policy making engine for secure embedded software execution on chip-multiprocessors. In Proc. of the Workshop on Embedded Systems Security, WESS '10, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Cho et al. Compiler driven data layout optimization for regular/irregular array access patterns. In Proc. of the ACM SIGPLAN-SIGBED Conf. on Languages, compilers, and tools for embedded systems, LCTES '08, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J. Coburn et al. Seca: security-enhanced communication architecture. In Proc. of the Int. Conf. on Compilers, Arch. and synthesis for embedded systems, CASES '05, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. F. David et al. Context switch overheads for linux on arm platforms. In Proc. of the 2007 workshop on Experimental computer science, ExpCS '07, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. B. Egger et al. Dynamic scratchpad memory management for code in portable systems with an mmu. ACM Trans. Embed. Comput. Syst., 7, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. B. Egger et al. Scratchpad memory management techniques for code in embedded systems without an mmu. Computers, IEEE Trans. on, 59, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. P. Francesco et al. An integrated hardware/software approach for run-time scratchpad management. In Proc. of the Design Automation Conf., DAC '04, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. L. Gauthier et al. Minimizing inter-task interferences in scratch-pad memory usage for reducing the energy consumption of multi-task systems. In Proc. of the Int. Conf. on Compilers, architectures and synthesis for embedded systems, CASES '10, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Google. Android. Google, http://www.android.com/.Google ScholarGoogle Scholar
  16. Y. Hara et al. Chstone: A benchmark program suite for practical c-based high-level synthesis. In Circuits and Systems, ISCAS 2008. IEEE Int. Symp. on, 2008.Google ScholarGoogle Scholar
  17. G. Heiser. The role of virtualization in embedded systems. In Proc. of the 1st workshop on Isolation and integration in embedded systems, IIES '08, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. W. Huang et al. Unified low cost crypto architecture accelerating rsa/sha-1 for security processor. In ASIC, 2009. ASICON '09. IEEE 8th Int. Conf. on, 2009.Google ScholarGoogle ScholarCross RefCross Ref
  19. IBM. The cell project. http://www.research.ibm.com/ cell/.Google ScholarGoogle Scholar
  20. Intel. Single-chip cloud computer. http://techresearch.intel.com/ProjectDetails.aspx?Id=1.Google ScholarGoogle Scholar
  21. I. Issenin et al. Multiprocessor system-on-chip data reuse analysis for exploring customized memory hierarchies. In Proc. of the Design Automation Conf., DAC '06, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. Jung et al. Dynamic code mapping for limited local memory systems. In Application-specific Systems Architectures and Processors (ASAP), IEEE Int. Conf. on, 2010.Google ScholarGoogle Scholar
  23. M. Kandemir et al. Dynamic management of scratch-pad memory space. In Proc. of the 38th annual Design Automation Conf., DAC '01, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. C. Lee et al. Mediabench: a tool for evaluating and synthesizing multimedia and communicatons systems. In Proc. of the ACM/IEEE Int. symposium on Microarchitecture, MICRO 30, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. M. Mayhew et al. Low-power aes coprocessor in 0.18 um cmos technology for secure microsystems. In Microsystems and Nanoelectronics Research Conf. MNRC 2009, 2009.Google ScholarGoogle ScholarCross RefCross Ref
  26. J. McCune et al. Flicker: an execution infrastructure for tcb minimization. SIGOPS Oper. Syst. Rev., 42, April 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. P. Panda et al. Efficient utilization of scratch-pad memory in embedded processor applications. In Proc. of the European Conf. on Design and Test, EDTC '97, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. S. Pasricha et al. Fast exploration of bus-based communication architectures at the ccatb abstraction. ACM Trans. Embed. Comput. Syst., 7, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. R. Pyka et al. Operating system integrated energy aware scratchpad allocation strategies for multiprocess applications. In Proc.of the 10th Int. workshop on Software & compilers for embedded systems, SCOPES '07, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. M. Shalan et al. A dynamic memory management unit for embedded real-time system-on-a-chip. In Proc. of the 2000 Int. Conf. on Compilers, architecture, and synthesis for embedded systems, CASES '00, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. V. Suhendra et al. Integrated scratchpad memory optimization and task scheduling for mpsoc architectures. In Proc. of the Int. Conf. on Compilers, architecture and synthesis for embedded systems, CASES '06, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. V. Suhendra et al. Scratchpad allocation for concurrent embedded software. In Proc. of the IEEE/ACM/IFIP Int. Conf. on Hardware/Software codesign and system synthesis, CODES+ISSS '08, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. H. Takase et al. Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systems. In Proc. of the Conf. on Design, Automation and Test in Europe, DATE '10, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. S. Thoziyoor et al. Hp labs cacti v5.3. CACTI 5.1, TR, http://www.hpl.hp.com/techreports/2008/HPL-2008-20.html, 2004.Google ScholarGoogle Scholar
  35. Tilera. Tile gx family. http://www.tilera.com/products/processors/TILE-Gx_Family.Google ScholarGoogle Scholar
  36. M. Verma et al. Data partitioning for maximal scratchpad usage. In Proc. of the Asia and South Pacific Design Automation Conf., ASP-DAC '03, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Z. Wang et al. New cache designs for thwarting software cache-based side channel attacks. SIGARCH Comput. Archit. News, 35, June 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. SPMVisor: dynamic scratchpad memory virtualization for secure, low power, and high performance distributed on-chip memories

            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
              CODES+ISSS '11: Proceedings of the seventh IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
              October 2011
              402 pages
              ISBN:9781450307154
              DOI:10.1145/2039370

              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: 9 October 2011

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article

              Acceptance Rates

              Overall Acceptance Rate280of864submissions,32%

              Upcoming Conference

              ESWEEK '24
              Twentieth Embedded Systems Week
              September 29 - October 4, 2024
              Raleigh , NC , USA

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader