Litcius/Paper detail

Analog error correcting codes for defect tolerant matrix multiplication in crossbars

Can Li, Ron M. Roth, Cat Graves, Xia Sheng, John Paul Strachan

202021 citationsDOI

Abstract

Despite great promises shown in the laboratory environment, memristor crossbar, or non-volatile resistive analog memory, based matrix multiplication accelerators suffer from unexpected computing errors, limiting opportunities to replace main-stream digital systems. While many previously demonstrated applications, such as neural networks, are tolerant of small errors, they are challenged by any significant outliers, which must be detected and corrected. Herein, we experimentally demonstrate an analog Error Correcting Code (ECC) scheme that considerably reduces the chance of substantial errors, by detecting and correcting errors with minimum hardware overhead. Different from well-known digital ECC in communication and memory, this analog version can tolerate small errors while detecting and correcting those over a predefined threshold. With this scheme, we can recover the MNIST handwritten digit classification accuracy experimentally from 90.31% to 96.21% in the event an array builds up shorted devices and from 73.12% to 97.36% when current noise is injected. For applications where high reliability and compute precision are demanded, such as in high-performance and scientific computing, we expect the schemes shown here to make analog computing more feasible.

Topics & Concepts

Crossbar switchComputer scienceMNIST databaseOverhead (engineering)Multiplication (music)Matrix multiplicationCode (set theory)Computer engineeringError detection and correctionNoise (video)Computer hardwareParallel computingArtificial neural networkAlgorithmArtificial intelligenceTelecommunicationsPhysicsQuantum mechanicsAcousticsSet (abstract data type)Image (mathematics)QuantumOperating systemProgramming languageAdvanced Memory and Neural ComputingFerroelectric and Negative Capacitance DevicesSemiconductor materials and devices