Automated Equivalence Checking Method for Majority based In-Memory Computing on ReRAM Crossbars

Recent progress in the fabrication of Resistive Random Access Mem-ory (ReRAM) devices has paved the way for large scale crossbar structures. In particular, in-memory computing on ReRAM cross-bars helps in bridging the processor-memory speed gap for current CMOS technology. To this end, synthesis and mapping of Boolean functions to such crossbars have been investigated by researchers. However the verification of simple designs on crossbar is still done through manual inspection or sometimes complemented by sim-ulation based techniques. Clearly this is an important problem as real world designs are complex and have higher number of inputs. As a result manual inspection and simulation based methods for these designs are not practical. In this paper for the first time as per our knowledge we pro-pose an automated equivalence checking methodology for majority based in-memory designs on ReRAM crossbars. Our contributions are twofold: first, we introduce an intermediate data structure called ReRAM Sequence Graph (ReSG) to represent the logic-in-memory design. This in turn is translated into Boolean Satifiability (SAT) formulas. These SAT formulas are verified against the golden functional specification using Z3 Satifiability Modulo Theory (SMT) solver. We validate the proposed method by running widely avail-able benchmarks.

[1]  R. Drechsler,et al.  Generation of Verified Programs for In-Memory Computing , 2022, Euromicro Symposium on Digital Systems Design.

[2]  Robert Wille,et al.  A staircase structure for scalable and efficient synthesis of memristor-aided logic , 2019, ASP-DAC.

[3]  Kamalika Datta,et al.  Efficient Mapping of Boolean Functions to Memristor Crossbar Using MAGIC NOR Gates , 2018, IEEE Transactions on Circuits and Systems I: Regular Papers.

[4]  Nishil Talati,et al.  Logic Design Within Memristive Memories Using Memristor-Aided loGIC (MAGIC) , 2016, IEEE Transactions on Nanotechnology.

[5]  Rolf Drechsler,et al.  Fast logic synthesis for RRAM-based in-memory computing using Majority-Inverter Graphs , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[6]  Giovanni De Micheli,et al.  The Programmable Logic-in-Memory (PLiM) computer , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[7]  Kamalika Datta,et al.  BDD based synthesis of Boolean functions using memristors , 2014, 2014 9th International Design and Test Symposium (IDT).

[8]  Uri C. Weiser,et al.  MAGIC—Memristor-Aided Logic , 2014, IEEE Transactions on Circuits and Systems II: Express Briefs.

[9]  Giovanni De Micheli,et al.  Majority-Inverter Graph: A novel data-structure and algorithms for efficient logic optimization , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[10]  Gregory S. Snider,et al.  ‘Memristive’ switches enable ‘stateful’ logic operations via material implication , 2010, Nature.

[11]  D. Stewart,et al.  The missing memristor found , 2008, Nature.

[12]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[13]  John P. Hayes,et al.  Unveiling the ISCAS-85 Benchmarks: A Case Study in Reverse Engineering , 1999, IEEE Des. Test Comput..

[14]  L. Chua Memristor-The missing circuit element , 1971 .