Hardware implementation of artificial neural networks (ANNs) using conventional binary arithmetic units requires large area and energy, due to the massive multiplication and addition operations in the inference process, limiting their use in edge computing and emerging Internet of Things (IoT) systems. Stochastic computing (SC), where the probability of 1s and 0s in a randomly generated bit-stream is used to represent a decimal number, has been devised as an alternative for compact and low-energy arithmetic hardware, due to its ability to implement basic arithmetic operations using far fewer logic gates than binary operations. To realize SC in hardware, however, tunable true random-number generators (TRNGs) are needed, which cannot be efficiently realized using existing complementary metal-oxide-semiconductor complementary metal-oxide-semiconductor (CMOS) technology. In this letter, we address this challenge by using magnetic tunnel junctions (MTJs) as TRNGs, the stochasticity of which can be tuned by an electric current via spin-transfer torque. We demonstrate the implementation of ANNs with SC units, using stochastic bit-streams experimentally generated by a series of 50 nm perpendicular MTJs. The numerical value (1 to 0 ratio) of the bit-streams is tuned by the current through the MTJs via spin-transfer torque with an ultralow current of <5 μA (= 0.25 MA⋅cm-2). The MTJ-based SC-ANN achieves 95% accuracy for handwritten digit recognition on the MNIST database. MRAM-based SC-ANNs provide a promising solution for ultra-low-power machine learning in edge, mobile, and IoT devices.
- Spin electronics
- artificial neural network
- magnetoresistive random-access memory
- stochastic computing
ASJC Scopus subject areas
- Electronic, Optical and Magnetic Materials