TY - JOUR
T1 - SIMPLER MAGIC
T2 - Synthesis and Mapping of In-Memory Logic Executed in a Single Row to Improve Throughput
AU - Ben-Hur, Rotem
AU - Ronen, Ronny
AU - Haj-Ali, Ameer
AU - Bhattacharjee, Debjyoti
AU - Eliahu, Adi
AU - Peled, Natan
AU - Kvatinsky, Shahar
N1 - Funding Information:
Manuscript received January 21, 2019; revised May 24, 2019; accepted July 10, 2019. Date of publication July 30, 2019; date of current version September 18, 2020. This work was supported in part by European Research Council under the European Union’s Horizon 2020 Research and Innovation Programme under Agreement 757259, and in part by the Israel Science Foundation under Grant 1514/17. This article was recommended by Associate Editor Y. Shi. (Corresponding author: Rotem Ben-Hur.) R. Ben-Hur, R. Ronen, A. Eliahu, N. Peled, and S. Kvatinsky are with the Andrew and Erna Viterbi Faculty of Electrical Engineering, Technion – Israel Institute of Technology, Haifa 32000, Israel (e-mail: rotembenhur@campus.technion.ac.il; shahar@ee.technion.ac.il).
Publisher Copyright:
© 1982-2012 IEEE.
PY - 2020/10/1
Y1 - 2020/10/1
N2 - In-memory processing can dramatically improve the latency and energy consumption of computing systems by minimizing the data transfer between the memory and the processor. Efficient execution of processing operations within the memory is therefore, a highly motivated objective in modern computer architecture. This article presents a novel automatic framework for efficient implementation of arbitrary combinational logic functions within a memristive memory. Using tools from logic design, graph theory and compiler register allocation technology, we developed synthesis and in-memory mapping of logic execution in a single row (SIMPLER), a tool that optimizes the execution of in-memory logic operations in terms of throughput and area. Given a logical function, SIMPLER automatically generates a sequence of atomic memristor-aided logic (MAGIC) NOR operations and efficiently locates them within a single size-limited memory row, reusing cells to save area when needed. This approach fully exploits the parallelism offered by the MAGIC NOR gates. It allows multiple instances of the logic function to be performed concurrently, each compressed into a single row of the memory. This virtue makes SIMPLER an attractive candidate for designing in-memory single instruction, multiple data (SIMD) operations. Compared to the previous work (that optimizes latency rather than throughput for a single function), SIMPLER achieves an average throughput improvement of 435×. When the previous tools are parallelized similarly to SIMPLER, SIMPLER achieves higher throughput of at least 5×, with 23× improvement in area and 20× improvement in area efficiency. These improvements more than fully compensate for the increase (up to 17% on average) in latency.
AB - In-memory processing can dramatically improve the latency and energy consumption of computing systems by minimizing the data transfer between the memory and the processor. Efficient execution of processing operations within the memory is therefore, a highly motivated objective in modern computer architecture. This article presents a novel automatic framework for efficient implementation of arbitrary combinational logic functions within a memristive memory. Using tools from logic design, graph theory and compiler register allocation technology, we developed synthesis and in-memory mapping of logic execution in a single row (SIMPLER), a tool that optimizes the execution of in-memory logic operations in terms of throughput and area. Given a logical function, SIMPLER automatically generates a sequence of atomic memristor-aided logic (MAGIC) NOR operations and efficiently locates them within a single size-limited memory row, reusing cells to save area when needed. This approach fully exploits the parallelism offered by the MAGIC NOR gates. It allows multiple instances of the logic function to be performed concurrently, each compressed into a single row of the memory. This virtue makes SIMPLER an attractive candidate for designing in-memory single instruction, multiple data (SIMD) operations. Compared to the previous work (that optimizes latency rather than throughput for a single function), SIMPLER achieves an average throughput improvement of 435×. When the previous tools are parallelized similarly to SIMPLER, SIMPLER achieves higher throughput of at least 5×, with 23× improvement in area and 20× improvement in area efficiency. These improvements more than fully compensate for the increase (up to 17% on average) in latency.
KW - Logic design
KW - logic synthesis
KW - memristive memory-processing unit (mMPU)
KW - memristive systems
KW - memristor
KW - memristor-aided logic (MAGIC)
KW - throughput
KW - von Neumann architecture
UR - http://www.scopus.com/inward/record.url?scp=85072786631&partnerID=8YFLogxK
U2 - 10.1109/TCAD.2019.2931188
DO - 10.1109/TCAD.2019.2931188
M3 - Article
AN - SCOPUS:85072786631
SN - 0278-0070
VL - 39
SP - 2434
EP - 2447
JO - IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
JF - IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
IS - 10
M1 - 8781866
ER -