Memristive Device Based Circuits for Computation-in-Memory Architectures

Emerging computing applications (such as big-data and Internet-of-things) are extremely demanding in terms of storage, energy and computational efficiency, while todays architectures and device technologies are facing major challenges making them incapable to meet these demands. Computation-in-Memory (CIM) architecture based on memristive devices is one of the alternative computing architectures being explored to address these limitations. Enabling such architectures relies on the development of efficient memristive circuits being able to perform logic and arithmetic operations within the non-volatile memory core. This paper addresses memristive circuit designs for CIM architectures. It gives a complete overview of all designs, both for logic as well as arithmetic operations, and presents the most popular designs in details. In addition, it analyzes and classifies them, shows how they result in different CIM flavours and how these architectures distinguish themselves from traditional ones. The paper also presents different potential applications that could significantly benefit from CIM architectures, based on their kernel that could be accelerated.

[1]  Said Hamdioui,et al.  Computation-in-memory based parallel adder , 2015, Proceedings of the 2015 IEEE/ACM International Symposium on Nanoscale Architectures (NANOARCH´15).

[2]  Said F. Al-Sarawi,et al.  Memristor-Based Hardware Accelerator for Image Compression , 2018, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[3]  Giovanni De Micheli,et al.  The Programmable Logic-in-Memory (PLiM) computer , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[4]  Jintao Yu,et al.  Memristive devices for computation-in-memory , 2018, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[5]  Shaahin Angizi,et al.  HielM: Highly flexible in-memory computing using STT MRAM , 2018, 2018 23rd Asia and South Pacific Design Automation Conference (ASP-DAC).

[6]  Pierre-Emmanuel Gaillardon,et al.  Memristive logic: A framework for evaluation and comparison , 2017, 2017 27th International Symposium on Power and Timing Modeling, Optimization and Simulation (PATMOS).

[7]  Alvaro Velasquez,et al.  Parallel boolean matrix multiplication in linear time using rectifying memristors , 2016, 2016 IEEE International Symposium on Circuits and Systems (ISCAS).

[8]  Nishil Talati,et al.  Logic Design Within Memristive Memories Using Memristor-Aided loGIC (MAGIC) , 2016, IEEE Transactions on Nanotechnology.

[9]  Tajana Simunic,et al.  MPIM: Multi-purpose in-memory processing using configurable resistive memory , 2017, 2017 22nd Asia and South Pacific Design Automation Conference (ASP-DAC).

[10]  Onur Mutlu,et al.  Ambit: In-Memory Accelerator for Bulk Bitwise Operations Using Commodity DRAM Technology , 2017, 2017 50th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[11]  Alvaro Velasquez,et al.  Computation of Boolean matrix chain products in 3D ReRAM , 2017, 2017 IEEE International Symposium on Circuits and Systems (ISCAS).

[12]  Payman Behnam,et al.  Accelerating $k$ -Medians Clustering Using a Novel 4T-4R RRAM Cell , 2018, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[13]  Alvaro Velasquez,et al.  Brief Announcement: Parallel Transitive Closure Within 3D Crosspoint Memory , 2018, SPAA.

[14]  Jintao Yu,et al.  Memristive devices for computing: Beyond CMOS and beyond von Neumann , 2017, 2017 IFIP/IEEE International Conference on Very Large Scale Integration (VLSI-SoC).

[15]  Alex Pappachen James,et al.  A Survey of Memristive Threshold Logic Circuits , 2016, IEEE Transactions on Neural Networks and Learning Systems.

[16]  Uri C. Weiser,et al.  MAGIC—Memristor-Aided Logic , 2014, IEEE Transactions on Circuits and Systems II: Express Briefs.

[17]  Jintao Yu,et al.  Scouting Logic: A Novel Memristor-Based Logic Design for Resistive Computing , 2017, 2017 IEEE Computer Society Annual Symposium on VLSI (ISVLSI).

[18]  Vahid Rashtchi,et al.  Towards memristor-based approximate accelerator: application to complex-valued FIR filter bank , 2018 .

[19]  Gert Cauwenberghs,et al.  Memristor for computing: Myth or reality? , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[20]  Guoxian Huang,et al.  Exploiting Memristors for Compressive Sampling of Sensory Signals , 2018, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[21]  Jintao Yu,et al.  Parallel matrix multiplication on memristor-based computation-in-memory architecture , 2016, 2016 International Conference on High Performance Computing & Simulation (HPCS).

[22]  Frank Wang,et al.  Memristor content addressable memory , 2014, 2014 IEEE/ACM International Symposium on Nanoscale Architectures (NANOARCH).

[23]  Henk Corporaal,et al.  Memristor based computation-in-memory architecture for data-intensive applications , 2015, 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[24]  Luca Benini,et al.  Applications of Computation-In-Memory Architectures based on Memristive Devices , 2019, 2019 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[25]  Cong Xu,et al.  Pinatubo: A processing-in-memory architecture for bulk bitwise operations in emerging non-volatile memories , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[26]  Miao Hu,et al.  ISAAC: A Convolutional Neural Network Accelerator with In-Situ Analog Arithmetic in Crossbars , 2016, 2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).

[27]  Qing Wu,et al.  Hardware realization of BSB recall function using memristor crossbar arrays , 2012, DAC Design Automation Conference 2012.

[28]  Saibal Mukhopadhyay,et al.  ReRAM-Based Processing-in-Memory Architecture for Recurrent Neural Network Acceleration , 2018, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[29]  Gregory S. Snider,et al.  ‘Memristive’ switches enable ‘stateful’ logic operations via material implication , 2010, Nature.

[30]  G. Snider,et al.  Computing with hysteretic resistor crossbars , 2005 .

[31]  Said Hamdioui,et al.  Fast boolean logic mapped on memristor crossbar , 2015, 2015 33rd IEEE International Conference on Computer Design (ICCD).

[32]  H.-S. Philip Wong,et al.  In-memory computing with resistive switching devices , 2018, Nature Electronics.

[33]  Jan M. Rabaey,et al.  Hyperdimensional computing for noninvasive brain-computer interfaces: Blind and one-shot classification of EEG error-related potentials , 2017 .

[34]  Wei Lu,et al.  The future of electronics based on memristive systems , 2018, Nature Electronics.

[35]  Stanford R. Ovshinsky,et al.  Innovation Providing New Multiple Functions in Phase-Change Materials To Achieve Cognitive Computing , 2003 .

[36]  Thomas P. Parnell,et al.  Temporal correlation detection using computational phase-change memory , 2017, Nature Communications.

[37]  Scott A. Mahlke,et al.  In-Memory Data Parallel Processor , 2018, ASPLOS.

[38]  Georgios C. Sirakoulis,et al.  Emerging Memristor-Based Logic Circuit Design Approaches: A Review , 2016, IEEE Circuits and Systems Magazine.

[39]  Anand Raghunathan,et al.  Computing in Memory With Spin-Transfer Torque Magnetic RAM , 2017, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[40]  Ameer Haj-Ali,et al.  IMAGING: In-Memory AlGorithms for Image processiNG , 2018, IEEE Transactions on Circuits and Systems I: Regular Papers.