skip to main content
10.1145/3508352.3549348acmconferencesArticle/Chapter ViewAbstractPublication PagesiccadConference Proceedingsconference-collections
research-article
Public Access

Logic Synthesis for Digital In-Memory Computing

Published: 22 December 2022 Publication History

Abstract

Processing in-memory is a promising solution strategy for accelerating data-intensive applications. While analog in-memory computing is extremely efficient, the limited precision is only acceptable for approximate computing applications. Digital in-memory computing provides the deterministic precision required to accelerate high assurance applications. State-of-the-art digital in-memory computing schemes rely on manually decomposing arithmetic operations into in-memory compute kernels. In contrast, traditional digital circuits are synthesized using complex and automated design flows. In this paper, we propose a logic synthesis framework called LOGIC for mapping high-level applications into digital in-memory compute kernels that can be executed using non-volatile memory. We first propose techniques to decompose element-wise arithmetic operations into in-memory kernels while minimizing the number of in-memory operations. Next, the sequence of the in-memory operation is optimized to minimize non-volatile memory utilization. Lastly, data layout re-organization is used to efficiently accelerate applications dominated by sparse matrix-vector multiplication operations. The experimental evaluations show that the proposed synthesis approach improves the area and latency of fixed-point multiplication by 77% and 20% over the state-of-the-art, respectively. On scientific computing applications from Suite Sparse Matrix Collection, the proposed design improves the area, latency and, energy by 3.6X, 2.6X, and 8.3X, respectively.

References

[1]
R. Ben-Hur et al. Simpler magic: Synthesis and mapping of in-memory logic executed in a single row to improve throughput. TCAD, 39(10):2434--2447, 2019.
[2]
J. Borghetti et al. 'memristive' switches enable 'stateful' logic operations via material implication. Nature, 464(7290):873--876, 2010.
[3]
G. W. Burr et al. Phase change memory technology. JVSTB, 28(2):223--262, 2010.
[4]
J. Clausen. Branch and bound algorithms-principles and examples. Department of Computer Science, University of Copenhagen, pages 1--30, 1999.
[5]
J. S. Dagpunar. Simulation and Monte Carlo: With applications in finance and MCMC. John Wiley & Sons, 2007.
[6]
T. A. Davis and Y. Hu. The university of florida sparse matrix collection. TOMS, 38(1):1--25, 2011.
[7]
H. B. Enderton. A mathematical introduction to logic. Elsevier, 2001.
[8]
A. Haj-Ali, R. Ben-Hur, N. Wald, and S. Kvatinsky. Efficient algorithms for in-memory fixed point multiplication using magic. In 2018 IEEE International Symposium on Circuits and Systems (ISCAS), pages 1--5. IEEE, 2018.
[9]
A. Haj-Ali, R. Ben-Hur, N. Wald, R. Ronen, and S. Kvatinsky. Not in name alone: A memristive memory processing unit for real in-memory processing. IEEE Micro, 38(5):13--21, 2018.
[10]
M. Hu, J. P. Strachan, Z. Li, E. M. Grafals, N. Davila, C. Graves, S. Lam, N. Ge, J. J. Yang, and R. S. Williams. Dot-product engine for neuromorphic computing: Programming 1t1m crossbar to accelerate matrix-vector multiplication. In 2016 53nd ACM/EDAC/IEEE DAC, pages 1--6. IEEE, 2016.
[11]
Y. Huai et al. Spin-transfer torque mram (stt-mram): Challenges and prospects. AAPPS bulletin, 18(6):33--40, 2008.
[12]
D. Ielmini and H.-S. P. Wong. In-memory computing with resistive switching devices. Nature electronics, 1(6):333--343, 2018.
[13]
M. Imani, S. Gupta, Y. Kim, and T. Rosing. Floatpim: In-memory acceleration of deep neural network training with high precision. In ISCA, pages 802--815. IEEE, 2019.
[14]
M. Imani, S. Pampana, S. Gupta, M. Zhou, Y. Kim, and T. Rosing. Dual: Acceleration of clustering algorithms using digital-based processing in-memory. In 2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), pages 356--371. IEEE, 2020.
[15]
S. K. Jha, D. E. Rodriguez, J. E. Van Nostrand, and A. Velasquez. Computation of boolean formulas using sneak paths in crossbar computing, 2016. US Patent 9,319,047.
[16]
K. Keutzer. Dagon: Technology binding and local optimization by dag matching. In DAC, pages 341--347, 1987.
[17]
S. Koziel, L. Leifsson, and X.-S. Yang. Solving computationally expensive engineering problems: methods and applications, volume 97. Springer, 2014.
[18]
S. Kvatinsky et al. Magic---memristor-aided logic. TCAS-II: Express Briefs, 61(11):895--899, 2014.
[19]
S. Kvatinsky, M. Ramadan, E. G. Friedman, and A. Kolodny. Vteam: A general model for voltage-controlled memristors. TCAS-II: Express Briefss, 62(8):786--790, 2015.
[20]
S. Li et al. Pinatubo: A processing-in-memory architecture for bulk bitwise operations in emerging non-volatile memories. In DAC, pages 1--6. IEEE, 2016.
[21]
A. Mishchenko et al. Abc: A system for sequential synthesis and verification. "http://www.eecs.berkeley.edu/alanmi/abc".
[22]
R. A. Pielke Sr. Mesoscale meteorological modeling. Academic press, 2013.
[23]
A. A. Sawchuk and T. C. Strand. Digital optical computing. Proceedings of the IEEE, 72(7):758--779, 1984.
[24]
B. Schölkopf, K. Tsuda, and J.-P. Vert. Kernel methods in computational biology. MIT press, 2004.
[25]
A. Shafiee et al. Isaac: A convolutional neural network accelerator with in-situ analog arithmetic in crossbars. SIGARCH, 44(3):14--26, 2016.
[26]
A. Steane. Quantum computing. Reports on Progress in Physics, 61(2):117, 1998.
[27]
D. B. Strukov, G. S. Snider, D. R. Stewart, and R. S. Williams. The missing memristor found. Nature, 453(7191):80--83, 2008.
[28]
N. Talati, A. H. Ali, R. B. Hur, N. Wald, R. Ronen, P.-E. Gaillardon, and S. Kvatinsky. Practical challenges in delivering the promises of real processing-in-memory machines. In 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE), pages 1628--1633. IEEE, 2018.
[29]
N. Talati, S. Gupta, P. Mane, and S. Kvatinsky. Logic design within memristive memories using memristor-aided logic (magic). IEEE Transactions on Nanotechnology, 15(4):635--650, 2016.
[30]
M. V. Wilkes. The memory wall and the cmos end-point. SIGARCH, 23(4):4--6, 1995.
[31]
S. Yu. Resistive random access memory (rram). Synthesis Lectures on Emerging Engineering Technologies, 2(5):1--79, 2016.

Cited By

View all
  • (2025)LOGIC: Logic Synthesis for Digital In-Memory ComputingACM Transactions on Design Automation of Electronic Systems10.1145/371184830:2(1-27)Online publication date: 7-Feb-2025
  • (2024)DeLoSo: Detecting Logic Synthesis Optimization Faults Based on Configuration DiversityACM Transactions on Design Automation of Electronic Systems10.1145/370123230:1(1-26)Online publication date: 13-Dec-2024
  • (2024)An All-digital Compute-in-memory FPGA Architecture for Deep Learning AccelerationACM Transactions on Reconfigurable Technology and Systems10.1145/364046917:1(1-27)Online publication date: 12-Feb-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICCAD '22: Proceedings of the 41st IEEE/ACM International Conference on Computer-Aided Design
October 2022
1467 pages
ISBN:9781450392174
DOI:10.1145/3508352
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

  • IEEE-EDS: Electronic Devices Society
  • IEEE CAS
  • IEEE CEDA

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 December 2022

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Funding Sources

Conference

ICCAD '22
Sponsor:
ICCAD '22: IEEE/ACM International Conference on Computer-Aided Design
October 30 - November 3, 2022
California, San Diego

Acceptance Rates

Overall Acceptance Rate 457 of 1,762 submissions, 26%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)323
  • Downloads (Last 6 weeks)38
Reflects downloads up to 28 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2025)LOGIC: Logic Synthesis for Digital In-Memory ComputingACM Transactions on Design Automation of Electronic Systems10.1145/371184830:2(1-27)Online publication date: 7-Feb-2025
  • (2024)DeLoSo: Detecting Logic Synthesis Optimization Faults Based on Configuration DiversityACM Transactions on Design Automation of Electronic Systems10.1145/370123230:1(1-26)Online publication date: 13-Dec-2024
  • (2024)An All-digital Compute-in-memory FPGA Architecture for Deep Learning AccelerationACM Transactions on Reconfigurable Technology and Systems10.1145/364046917:1(1-27)Online publication date: 12-Feb-2024
  • (2024)Hardware and Software Co-Design for Optimized Decoding Schemes and Application Mapping in NVM Compute-in-Memory ArchitecturesIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2024.344721643:11(3744-3755)Online publication date: 1-Nov-2024
  • (2024)Area-Aware Logic Mapping for MAGIC based In-Memory Computing2024 20th International Conference on Synthesis, Modeling, Analysis and Simulation Methods and Applications to Circuit Design (SMACD)10.1109/SMACD61181.2024.10745461(1-4)Online publication date: 2-Jul-2024
  • (2024)Design and Analysis of Low Power Differential Amplifier in SRAM Memory Using Sleepy-Keeper Leakage Control Technique2024 9th International Conference on Communication and Electronics Systems (ICCES)10.1109/ICCES63552.2024.10859810(301-308)Online publication date: 16-Dec-2024
  • (2024)Photovoltage junction memtransistor for optoelectronic in-memory computingJournal of Materials Chemistry C10.1039/D4TC03015J12:33(12763-12768)Online publication date: 2024
  • (2023)An Area-Efficient In-Memory Implementation Method of Arbitrary Boolean Function Based on SRAM ArrayIEEE Transactions on Computers10.1109/TC.2023.330115672:12(3416-3430)Online publication date: 2-Aug-2023
  • (2023)Automated Synthesis for In-Memory Computing2023 IEEE/ACM International Conference on Computer Aided Design (ICCAD)10.1109/ICCAD57390.2023.10323667(1-9)Online publication date: 28-Oct-2023
  • (2023)Path-Based Processing using In-Memory Systolic Arrays for Accelerating Data-Intensive Applications2023 IEEE/ACM International Conference on Computer Aided Design (ICCAD)10.1109/ICCAD57390.2023.10323622(1-9)Online publication date: 28-Oct-2023
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media