TY - CHAP
T1 - mMPU—A Real Processing-in-Memory Architecture to Combat the von Neumann Bottleneck
AU - Talati, Nishil
AU - Ben-Hur, Rotem
AU - Wald, Nimrod
AU - Haj-Ali, Ameer
AU - Reuben, John
AU - Kvatinsky, Shahar
N1 - Publisher Copyright: © 2020, Springer Nature Singapore Pte Ltd.
PY - 2020
Y1 - 2020
N2 - Data transfer between processing and memory units in modern computing systems is their main performance and energy-efficiency bottleneck, commonly known as the von Neumann bottleneck. Prior research attempts to alleviate the problem by moving the computing units closer to the memory that has had limited success since data transfer is still required. In this chapter, we present mMPU memristive memory processing unit, which relies on a memristive memory to perform computation using the memory cells, and therefore directly tackles the von Neumann bottleneck. In mMPU, the operation is controlled by a modified controller and peripheral circuit without changing the structure of the memory cells and arrays. As the basic logic element, we present Memristor-Aided loGIC (MAGIC), a technique to compute logical functions using memristors within the memory array. We further show how to extend basic MAGIC primitives to execute any arbitrary Boolean function and demonstrate the microarchitecture of the memory. This process is required to enable data computing using MAGIC. Finally, we show how to build the computing system using mMPU, which performs computation using MAGIC to enable a real processing-in-memory machine.
AB - Data transfer between processing and memory units in modern computing systems is their main performance and energy-efficiency bottleneck, commonly known as the von Neumann bottleneck. Prior research attempts to alleviate the problem by moving the computing units closer to the memory that has had limited success since data transfer is still required. In this chapter, we present mMPU memristive memory processing unit, which relies on a memristive memory to perform computation using the memory cells, and therefore directly tackles the von Neumann bottleneck. In mMPU, the operation is controlled by a modified controller and peripheral circuit without changing the structure of the memory cells and arrays. As the basic logic element, we present Memristor-Aided loGIC (MAGIC), a technique to compute logical functions using memristors within the memory array. We further show how to extend basic MAGIC primitives to execute any arbitrary Boolean function and demonstrate the microarchitecture of the memory. This process is required to enable data computing using MAGIC. Finally, we show how to build the computing system using mMPU, which performs computation using MAGIC to enable a real processing-in-memory machine.
UR - http://www.scopus.com/inward/record.url?scp=85069794965&partnerID=8YFLogxK
U2 - https://doi.org/10.1007/978-981-13-8379-3_8
DO - https://doi.org/10.1007/978-981-13-8379-3_8
M3 - فصل
T3 - Springer Series in Advanced Microelectronics
SP - 191
EP - 213
BT - Springer Series in Advanced Microelectronics
ER -