Robust Neuromorphic Computing in the Presence of Process Variation
Ali BanaGozar1,a, Mohammad Ali Maleki1,b, Mehdi Kamal1,c, Ali Afzali-Kusha1,d and Massoud Pedram2
1School of Electrical and computer Engineering, University of Tehran.
aali.banagozar@ut.ac.ir
bm.a.maleki@ut.ac.ir
cmehdikamal@ut.ac.ir
dafzali@ut.ac.ir
2Department of Electrical Engineering, University of Southern California.
pedram@usc.edu
ABSTRACT
In this paper, an approach for increasing the sustainability of inverter-based memristive neuromorphic circuits in the presence of process variation is presented. The approach works based on extracting the impact of process variations on the neurons characteristics during the test phase through a proposed algorithm. In this method, first, some combinations of inputs and weights (based on the neuromorphic circuit structure) are injected into the circuit and the features of the neurons are determined. Next, these features which are back-annotated, are utilized in an efficient ex-situ training approach to determine the proper weights of the neurons. The approach provides a considerable improvement in the output accuracy. To evaluate the effectiveness of the proposed approach, some approximate applications are studied using 90nm CMOS technology. The results of the study reveal that using this framework provides, on average, 17X higher output accuracy compared to the cases that the impact of the process variation is not considered at all.
Keywords: Process variation, Neuromorphic computing, Training, Testing.