Litcius/Paper detail

CAPE: A Content-Addressable Processing Engine

Helena Caminal, Kailin Yang, Srivatsa Srinivasa, Akshay Krishna Ramanathan, Khalid Al-Hawaj, Tianshu Wu, Vijaykrishnan Narayanan, Christopher Batten, José F. Martínez

202127 citationsDOI

Abstract

Processing-in-memory (PIM) architectures attempt to overcome the von Neumann bottleneck by combining computation and storage logic into a single component. The content-addressable parallel processing paradigm (CAPP) from the seventies is an in-situ PIM architecture that leverages content-addressable memories to realize bit-serial arithmetic and logic operations, via sequences of search and update operations over multiple memory rows in parallel. In this paper, we set out to investigate whether the concepts behind classic CAPP can be used successfully to build an entirely CMOS-based, general-purpose microarchitecture that can deliver manyfold speedups while remaining highly programmable. We conduct a full-stack design of a Content-Addressable Processing Engine (CAPE), built out of dense push-rule 6T SRAM arrays. CAPE is programmable using the RISC-V ISA with standard vector extensions. Our experiments show that CAPE achieves an average speedup of 14 (up to 254) over an area-equivalent (slightly under 9 mm <sup xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">2</sup> at 7 nm) out-of-order processor core with three levels of caches.

Topics & Concepts

Computer scienceParallel computingVon Neumann architectureBottleneckRowContent-addressable storageSpeedupReduced instruction set computingInstruction setContent-addressable memoryComputer hardwareComputer architectureEmbedded systemProgramming languageArtificial intelligenceArtificial neural networkAdvanced Memory and Neural ComputingNetwork Packet Processing and OptimizationFerroelectric and Negative Capacitance Devices
CAPE: A Content-Addressable Processing Engine | Litcius