A survey of spintronic architectures for processing-in-memory and neural networks
Introduction
As conventional von-Neumann style processors get progressively restricted by the data-movement overheads [1], use of processing-in-memory (PIM) approach has become, not merely attractive, but even imperative. Further, as machine learning algorithms are being applied to solve cognitive tasks of ever-increasing complexity, their memory and computation demands are escalating fast. Since traditional processors are unable to meet these requirements, design of domain-specific accelerators has become essential. These factors and trends call for research into novel memory technologies, architectures and design approaches.
Spintronic memories allow performing computations such as arithmetic and logic operations inside memory. Also, they allow efficient modeling of neurons and synapses which make them useful for accelerating neural networks [2]. These properties, along with the near-zero standby power and high density of spintronic memories make them promising candidates for architecting future memory systems and even computing systems.
Use of spintronic memories, however, also presents key challenges. Compared to SRAM and DRAM, spintronic memories have higher latency and write energy. Also, most of the existing proposals have implemented simple neuron models such as neuron producing “binary output” based on the sign of the input. However, NN architectures aimed at solving complex cognitive tasks require modeling of more realistic neuron models [2]. Further, since some spin neuron-synapse units cannot be connected through spin-signaling [3], they need to be connected using CMOS (complementary metal-oxide semiconductor) based charge-signaling. Evidently, design of spintronic accelerators for PIM and NN is challenging and yet, rewarding. Several circuit, microarchitecture and system-level techniques have been recently proposed towards this end.
Contributions: In this paper we present a survey of spintronic-accelerators for PIM and NN. Fig. 1 summarizes the contents of this paper. Section 2 provides a background on key concepts and a classification of research works on key parameters. Sections 3 and 4 present techniques for designing logic and arithmetic units, respectively. Section 5 discusses spintronic accelerators for a range of application domains. In these sections, we focus on qualitative insights and not on quantitative results.
Finally, Section 6 concludes this paper with a discussion of future challenges. This paper will be useful for researchers interested in the confluence of machine learning, hardware architecture and memory architectures. Table 1 shows the acronyms used in this paper. Input and output carry are shown as Ci and Co, respectively.
Section snippets
Background and motivation
We now discuss relevant concepts and refer the reader to prior works for a background on NVMs [4], [5], [6], [7].
Spintronic logic units
In this section, we discuss spintronic PIM architectures for bitwise operations (Section 3.1), programmable switch and logic element (Section 3.2), MUX and encoder (Section 3.3) and random number generators (Section 3.4). Table 3 classifies the PIM architectures for performing logic operations based on their design features. It classifies the works as all-spin or spintronic logic. It then shows the bit-cell designs used by different works.
Table 3 then shows the DWM device designs used in PIM
Spintronic arithmetic units
In this section, we discuss various arithmetic units such as (precise) adder (Section 4.1), approximate adder (Section 4.2), multiplier (Section 4.3), majority gate-based designs (Section 4.4) and LUT designs (Section 4.5). Table 6 classifies these works on several important parameters. We now review these works.
Spintronic accelerators for various applications
In this section, we review spintronic architectures in terms of their application domains, such as neuromorphic computing (Section 5.1), image processing (Section 5.2), data encryption (Section 5.3) and associative computing (Section 5.4).
Conclusion and future outlook
Memory latency and bandwidth constraints have now become the key bottleneck in scaling the performance of modern processors. Although traditional techniques such as prefetching [81] and data-compression [82] can mitigate these overheads partially, approaches that provide much higher efficiency are required for architecting processors of next-generation. In this paper, we presented a survey of spintronic-architectures for enabling “processing-in-memory” and designing accelerators for “neural
Acknowledgment
Support for this work was provided by Science and Engineering Research Board, award number ECR/2017/000622.
Sumanth Umesh is presently pursuing B.Tech. degree in the Department of Electrical Engineering at IIT Jodhpur, India. His research interests include Spintronic Memories and Hardware Architecture for Machine Learning.
References (83)
- et al.
A unified framework for designing high performance in-memory and hybrid memory file systems
J. Syst. Archit.
(2016) - et al.
DESTINY: a comprehensive tool with 3d and multi-level cell memory modeling capability
J. Low Power Electron. Appl.
(2017) - et al.
Domain wall memory based convolutional neural networks for bit-width extendability and energy-efficiency
ISLPED
(2016) - et al.
Leveraging dual-mode magnetic crossbar for ultra-low energy in-memory data encryption
Proceedings of the on Great Lakes Symposium on VLSI 2017
(2017) - et al.
A survey of encoding techniques for reducing data-movement energy
J. Syst. Archit.
(2018) - et al.
A vision for all-spin neural networks: a device to system perspective
IEEE Trans. Circuits Syst. I
(2016) - et al.
Spin-based neuron model with domain-wall magnets as synapse
IEEE Trans. Nanotechnol.
(2012) A survey of techniques for architecting processor components using domain wall memory
ACM J. Emerg. Technol. Comput. Syst.
(2016)- et al.
A survey of architectural approaches for managing embedded DRAM and non-volatile on-chip caches
IEEE Trans. Parallel Distrib. Syst.
(2015) - et al.
A survey of software techniques for using non-volatile memories for storage and main memory systems
IEEE Trans. Parallel Distribut. Syst.
(2016)
Magnetic tunnel junctions for spintronics: principles and applications
Wiley Encycl. Electr. Electron. Eng.
Current-induced magnetization switching in atom-thick tungsten engineered perpendicular magnetic tunnel junctions with large tunnel magnetoresistance
Nat. Commun.
A comparative study between spin-transfer-torque and spin-hall-effect switching mechanisms in pmtj using spice
IEEE J. Explor. Solid-State Comput. Devices Circ.
Readability challenges in deeply scaled STT-MRAM
Non-Volatile Memory Technology Symposium (NVMTS), 2014 14th Annual
A survey of soft-error mitigation techniques for non-volatile memories
Computers
Addressing read-disturbance issue in STT-RAM by data compression and selective duplication
IEEE Comput. Archit. Lett.
Advanced low power spintronic memories beyond STT-MRAM
Proceedings of the on Great Lakes Symposium on VLSI 2017
Voltage-induced switching of nanoscale magnetic tunnel junctions
Electron Devices Meeting (IEDM), 2012 IEEE International
A tunable majority gate-based full adder using current-induced domain wall nanomagnets
IEEE Trans. Magn.
A low power and high sensing margin non-volatile full adder using racetrack memory
IEEE Trans. Circ. Syst. I
Skyrmion-electronics: an overview and outlook.
Proc. IEEE
Magnetic skyrmion logic gates: conversion, duplication and merging of skyrmions
Sci. Rep.
Full-adder circuit design based on all-spin logic device
Nanoscale Architectures (NANOARCH), 2015 IEEE/ACM International Symposium on
High performance MRAM-based stateful logic
Ultimate Integration on Silicon (ULIS), 2014 15th International Conference on
AC-DIMM: associative computing with STT-MRAM
ACM SIGARCH Comput. Arch. News
Exploring STT-MRAM based in-memory computing paradigm with application of image edge extraction
Computer Design (ICCD), 2017 IEEE International Conference on
In-Memory processing paradigm for bitwise logic operations in STT–MRAM
IEEE Trans. Magn.
Computing-in-memory with spintronics
DATE
MRAM-based logic array for large-scale non-volatile logic-in-memory applications
Nanoscale Architectures (NANOARCH), 2013 IEEE/ACM International Symposium on
MTJ-based nonvolatile logic-in-memory circuit, future prospects and issues
Proceedings of the Conference on Design, Automation and Test in Europe
HielM: highly flexible in-memory computing using STT MRAM
Design Automation Conference (ASP-DAC), 2018 23rd Asia and South Pacific
Reliable majority voter based on spin transfer torque magnetic tunnel junction device
Electron. Lett.
Spin-transfer torque magnetic memory as a stochastic memristive synapse for neuromorphic systems
IEEE Trans. Biomed. Circuits Syst.
STT-SNN: a spin-transfer-torque based soft-limiting non-linear neuron for low-power artificial neural networks
IEEE Trans. Nanotechnol.
Approximate computing in MOS/spintronic non-volatile full-adder
Nanoscale Architectures (NANOARCH), 2016 IEEE/ACM International Symposium on
Stochastic computation with spin torque transfer magnetic tunnel junction
New Circuits and Systems Conference (NEWCAS), 2015 IEEE 13th International
A novel circuit design of true random number generator using magnetic tunnel junction
Nanoscale Architectures (NANOARCH), 2016 IEEE/ACM International Symposium on
Spintronics-based nonvolatile logic-in-memory architecture towards an ultra-low-power and highly reliable VLSI computing paradigm
Proceedings of the 2015 Design, Automation & Test in Europe Conference & Exhibition
Challenge of MOS/MTJ-hybrid nonvolatile logic-in-memory architecture in dark-silicon era
Electron Devices Meeting (IEDM), 2014 IEEE International
Full adder based reconfigurable spintronic ALU using STT-MTJ
India Conference (INDICON), 2013 Annual IEEE
Design of 21 multiplexer and 12 demultiplexer using magnetic tunnel junction elements
Emerging Trends in VLSI, Embedded System, Nano Electronics and Telecommunication System (ICEVENT), 2013 International Conference on
Cited by (47)
Computing of neuromorphic materials: an emerging approach for bioengineering solutions
2023, Materials AdvancesTantalum pentoxide (Ta<inf>2</inf>O<inf>5</inf> and Ta<inf>2</inf>O<inf>5-x</inf>)-based memristor for photonic in-memory computing application
2023, Nano EnergyCitation Excerpt :With an increase in the amount of data that need to be stored and processed, the traditional von Neumann architecture has encountered several bottlenecks due to its low transfer speeds and high-power consumption [1–3]. Recently, in-memory computing technology, which features integrated memory and central processing in a unit cell and possesses an efficient parallel processing mode like the human brain, has attracted considerable attention and is expected to subvert traditional computer architectures [4–8]. Various novel electronic devices have been proposed for developing in-memory computing.
A survey on hardware accelerators: Taxonomy, trends, challenges, and perspectives
2022, Journal of Systems ArchitectureA survey of SRAM-based in-memory computing techniques and applications
2021, Journal of Systems ArchitectureCitation Excerpt :Limitations of analog domain: Analog domain operation has higher vulnerability to process variation, noise, nonlinear I–V characteristics and aging. Also, use of ADC and DAC degrades signal precision and imposes energy and area penalty [9,15,16]. Challenges in mapping large DNNs: Large-scale DNNs have weight matrices of the order of thousands.
A survey of hardware architectures for generative adversarial networks
2021, Journal of Systems ArchitectureStrain-promoted reversible spin transfer in rhombic graphene nanoflakes
2021, Applied Surface Science
Sumanth Umesh is presently pursuing B.Tech. degree in the Department of Electrical Engineering at IIT Jodhpur, India. His research interests include Spintronic Memories and Hardware Architecture for Machine Learning.
Sparsh Mittal received the B.Tech. degree in electronics and communications engineering from IIT, Roorkee, India and the Ph.D. degree in computer engineering from Iowa State University (ISU), USA. He worked as a post-doctoral research associate at Oak Ridge National Lab (ORNL), USA for 3 years. He is currently working as an assistant professor at IIT Hyderabad, India. He was the graduating topper of his batch in B.Tech. and has received fellowship from ISU and performance award from ORNL. Sparsh has published more than 75 papers in top conferences and journals. His research has been covered by several technical news websites, e.g. Phys.org, InsideHPC, Primeur Magazine, StorageSearch, Data-Compression.info, TechEnablement, ScientificComputing, SemiEngineering, ReRAM forum and HPCWire. His research interests include accelerators for neural networks, architectures for machine learning, non-volatile memory, and GPU architectures. His webpage is http://www.iith.ac.in/~sparsh/.
- 1
Sumanth worked on this paper while working as an intern at IIT Hyderabad.