SPX64: A Scratchpad Memory for General-purpose Microprocessors

Abhishek Singh, Shail Dave, Pantea Zardoshti, Robert Brotzman, Chao Zhang, Xiaochen Guo, Aviral Shrivastava, Gang Tan, Michael Spear

Research output: Contribution to journalArticlepeer-review

2 Scopus citations

Abstract

General-purpose computing systems employ memory hierarchies to provide the appearance of a single large, fast, coherent memory. In special-purpose CPUs, programmers manually manage distinct, non-coherent scratchpad memories. In this article, we combine these mechanisms by adding a virtually addressed, set-associative scratchpad to a general purpose CPU. Our scratchpad exists alongside a traditional cache and is able to avoid many of the programming challenges associated with traditional scratchpads without sacrificing generality (e.g., virtualization). Furthermore, our design delivers increased security and improves performance, especially for workloads with high locality or that interact with nonvolatile memory.

Original languageEnglish (US)
Article number14
JournalACM Transactions on Architecture and Code Optimization
Volume18
Issue number1
DOIs
StatePublished - Jan 2021

Keywords

  • Scratchpad memory
  • cache
  • persistent memory
  • security
  • software managed memory

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Hardware and Architecture

Fingerprint

Dive into the research topics of 'SPX64: A Scratchpad Memory for General-purpose Microprocessors'. Together they form a unique fingerprint.

Cite this