SySCIM: SystemC-AMS Simulation of Memristive Computation In-Memory
Seyed Hossein Hashemi Shadmehri1,a, Ali BanaGozar2,d, Mehdi Kamal1,b, Sander Stuijk2,e, Ali Afzali-Kusha1,c, Massoud Pedram3,g, Henk Corporaal2,f
1School of Electrical and Computer Engineering, University of Tehran
2Electronic Systems Group, Eindhoven University of Technology
3Department of Electrical Engineering, University of Southern California
aseyed.hashemi.ho@ut.ac.ir
bmehdikamal@ut.ac.ir
cafzali@ut.ac.ir
da.banagozar@tue.nl
es.stuijk@tue.nl
fh.corporaal@tue.nl
gpedram@usc.edu
ABSTRACT
Computation-in-memory (CIM) is one of the most appealing computing paradigms, especially for implementing artificial neural networks. Non-volatile memories like ReRAMs, PCMs, etc., have proven to be promising candidates for the realization of CIM processors. However, these devices and their driving circuits are subject to non-idealities. This paper presents a comprehensive platform, named SysCIM, for simulating memristor-based CIM systems. SySCIM considers the impact of the non-idealities of the CIM components, including memristor device, memristor crossbar (interconnects), analog-to-digital converter, and transimpedance amplifier, on the vector-matrix multiplication performed by the CIM unit. The CIM modules are described in SystemC and SystemC-AMS to reach a higher simulation speed while maintaining high simulation accuracy. Experiments under different crossbar sizes show SySCIM performs simulations up to 117× faster than HSPICE with less than 4% accuracy loss. The modular design of SySCIM provides researchers with an easy design-space exploration tool to investigate the effects of various non-idealities.
Keywords: Simulation, Computation-In-Memory, Memristor, Reliability.