Skip to content
Licensed Unlicensed Requires Authentication Published by De Gruyter Oldenbourg May 3, 2023

Timing-accurate simulation framework for NVM-based compute-in-memory architecture exploration

  • Vincent Rietz

    M. Sc. Vincent Rietz received his B. Sc. degree in electrical engineering and his M. Sc. degree in computer science from the Karlsruhe Institute of Technology (KIT), Germany in 2018 and 2022, respectively. During his studies he specialized on reliability, implementation and test of embedded systems. In his master’s thesis he focused on architectural simulation of compute-in-memory using emerging storage technologies. Currently, he is working as an embedded software engineer in Karlsruhe.

    , Christopher Münch

    Dr. Christopher Münch received his Bachelor’s, Master’s, and Ph.D in Computer Science from the Karlsruhe Institute of Technology in 2014, 2017, and 2023, respectively. His special interest are neuromorphic computing and emerging memory technologies.

    , Mahta Mayahinia

    M. Sc. Mahta Mayahinia received her B.s in Electrical and Electronic Engineering from Shahid Beheshti University, Tehran, Iran, and her M.s in Computer System Architecture from Sharif University of Technology, Tehran, Iran in 2015 and 2018 respectively. In 2020 she joined the CDNC group of Professor Tahoori at KIT University, Karlsruhe, Germany. Her current research interest is VLSI design, Computer Architecture, and Computation in memory.

    and Mehdi Tahoori

    Prof. Dr. Mehdi B. Tahoori (M’03, SM’08, F’21) received the B.S. degree in computer engineering from the Sharif University of Technology, Tehran, Iran, in 2000, and the M.S. and Ph.D. degrees in electrical engineering from Stanford University, Stanford, CA, in 2002 and 2003, respectively. He is currently a Full Professor at the Karlsruhe Institute of Technology, Karlsruhe, Germany. In 2003, he was an Assistant Professor with the Department of Electrical and Computer Engineering, Northeastern University, where he became an Associate Professor in 2009. From August to December 2015, he was a visiting professor at VLSI Design and Education Center (VDEC), University of Tokyo, Japan. From 2002 to 2003, he was a Research Scientist with Fujitsu Laboratories of America, Sunnyvale, CA. Prof. Tahoori was a recipient of the National Science Foundation Early Faculty Development (CAREER) Award. He has received a number of best paper awards at various conferences and journals including ICCAD, FPL, TODAES, and TVLSI. He is a fellow of the IEEE and a recipient of European Research Council (ERC) Advanced Grant.

    EMAIL logo

Abstract

Data-intensive applications have a huge demand on processor-memory communication. To reduce the amount of data transfers and their associated latency and energy, Compute-in-Memory (CIM) architectures can be used to perform operations ranging from simple binary operations to more complex operations such as additions and matrix-vector multiplications directly within the memory. However, proper adjustments to the memory hierarchy are needed to enable the execution of CIM operations. To evaluate the trade-off between the usage of different emerging non-volatile memories for CIM and conventional computing architectures, this work extends the widely used gem5 simulation framework with an extensible timing-aware main memory CIM simulation capability. This framework is used to analyze the performance of CIM extended main memory with various emerging memory technologies, namely Spin-Transfer-Torque Magnetic Random Access Memory (STT-MRAM), Redox-based RAM (ReRAM) and Phase-Change Memory (PCM). We evaluate different workloads from the PolyBench/C benchmark suite and other selected examples. In comparison to a processor-centric system, the results show a significant reduction in execution time for the majority of applications.


Corresponding author: Mehdi Tahoori, CDNC – Chair of Dependable Nano Computing, Department of Computer Science, KIT – Karlsruhe Institute of Technology, Karlsruhe, Germany, E-mail:

About the authors

Vincent Rietz

M. Sc. Vincent Rietz received his B. Sc. degree in electrical engineering and his M. Sc. degree in computer science from the Karlsruhe Institute of Technology (KIT), Germany in 2018 and 2022, respectively. During his studies he specialized on reliability, implementation and test of embedded systems. In his master’s thesis he focused on architectural simulation of compute-in-memory using emerging storage technologies. Currently, he is working as an embedded software engineer in Karlsruhe.

Christopher Münch

Dr. Christopher Münch received his Bachelor’s, Master’s, and Ph.D in Computer Science from the Karlsruhe Institute of Technology in 2014, 2017, and 2023, respectively. His special interest are neuromorphic computing and emerging memory technologies.

Mahta Mayahinia

M. Sc. Mahta Mayahinia received her B.s in Electrical and Electronic Engineering from Shahid Beheshti University, Tehran, Iran, and her M.s in Computer System Architecture from Sharif University of Technology, Tehran, Iran in 2015 and 2018 respectively. In 2020 she joined the CDNC group of Professor Tahoori at KIT University, Karlsruhe, Germany. Her current research interest is VLSI design, Computer Architecture, and Computation in memory.

Mehdi Tahoori

Prof. Dr. Mehdi B. Tahoori (M’03, SM’08, F’21) received the B.S. degree in computer engineering from the Sharif University of Technology, Tehran, Iran, in 2000, and the M.S. and Ph.D. degrees in electrical engineering from Stanford University, Stanford, CA, in 2002 and 2003, respectively. He is currently a Full Professor at the Karlsruhe Institute of Technology, Karlsruhe, Germany. In 2003, he was an Assistant Professor with the Department of Electrical and Computer Engineering, Northeastern University, where he became an Associate Professor in 2009. From August to December 2015, he was a visiting professor at VLSI Design and Education Center (VDEC), University of Tokyo, Japan. From 2002 to 2003, he was a Research Scientist with Fujitsu Laboratories of America, Sunnyvale, CA. Prof. Tahoori was a recipient of the National Science Foundation Early Faculty Development (CAREER) Award. He has received a number of best paper awards at various conferences and journals including ICCAD, FPL, TODAES, and TVLSI. He is a fellow of the IEEE and a recipient of European Research Council (ERC) Advanced Grant.

  1. Author contributions: All the authors have accepted responsibility for the entire content of this submitted manuscript and approved submission.

  2. Research funding: None declared.

  3. Conflict of interest statement: The authors declare no conflicts of interest regarding this article.

References

[1] D. Efnusheva, A. Cholakoska, and A. Tentov, “A survey of different approaches for overcoming the processor-memory bottleneck,” Int. J. Inf. Technol. Comput. Sci., vol. 9, pp. 151–163, 2017. https://doi.org/10.5121/ijcsit.2017.9214.Search in Google Scholar

[2] W. A. Wulf and S. A. McKee, “Hitting the memory wall: implications of the obvious,” SIGARCH Comput. Archit. News, vol. 23, no. 1, pp. 20–24, 1995. https://doi.org/10.1145/216585.216588.Search in Google Scholar

[3] S. A. McKee and R. W. Wisniewski, Memory Wall, Boston, MA, Springer US, 2011, pp. 1110–1116.Search in Google Scholar

[4] V. Agarwal, M. S. Hrishikesh, S. W. Keckler, and D. Burger, “Clock rate versus IPC: the end of the road for conventional microarchitectures,” in Proceedings of the 27th Annual International Symposium on Computer Architecture, ser. ISCA ’00, New York, NY, USA, Association for Computing Machinery, 2000, pp. 248–259.10.1145/339647.339691Search in Google Scholar

[5] S. Mittal, “A survey of architectural techniques for DRAM power management,” Int. J. High Perform. Syst. Architect., vol. 4, pp. 110–119, 2012. https://doi.org/10.1504/ijhpsa.2012.050990.Search in Google Scholar

[6] D. Molka,D. Hackenberg,R. Schöne, and M. S. Müller, “Characterizing the energy consumption of data transfers and arithmetic operations on x86-64 processors,” in International Conference on Green Computing, 2010, pp. 123–133.10.1109/GREENCOMP.2010.5598316Search in Google Scholar

[7] S. Yu and P. Y. Chen, “Emerging memory technologies: recent trends and prospects,” IEEE Solid State Circ. Mag., vol. 8, no. 2, pp. 43–56, 2016. https://doi.org/10.1109/mssc.2016.2546199.Search in Google Scholar

[8] G. Sun, J. Zhao, M. Poremba, C. Xu, and Y. Xie, “Memory that never forgets: emerging non-volatile memory and the implication for architecture design,” Natl. Sci. Rev., vol. 5, pp. 577–592, 2017. https://doi.org/10.1093/nsr/nwx082.Search in Google Scholar

[9] S. Ghose, A. Boroumand, J. S. Kim, J. Gomez-Luna, and O. Mutlu, “Processing-in-memory: a workload-driven perspective,” IBM J. Res. Dev., vol. 63, no. 6, pp. 3:1–3:19, 2019. https://doi.org/10.1147/jrd.2019.2934048.Search in Google Scholar

[10] A. Makarov, V. Sverdlov, and S. Selberherr, “Emerging memory technologies: trends, challenges, and modeling methods,” Microelectron. Reliab., vol. 52, pp. 628–634, 2011. https://doi.org/10.1016/j.microrel.2011.10.020.Search in Google Scholar

[11] N. Binkert, B. Beckmann, G. Black, et al.., “The gem5 simulator,” SIGARCH Comput. Architect. News, vol. 39, no. 2, pp. 1–7, 2011. https://doi.org/10.1145/2024716.2024718.Search in Google Scholar

[12] D. Apalkov, A. Khvalkovskiy, S. Watts, et al.., “Spin-transfer torque magnetic random access memory (STT-MRAM),” J. Emerg. Technol. Comput. Syst., vol. 9, no. 2, pp. 1–35, 2013. https://doi.org/10.1145/2463585.2463589.Search in Google Scholar

[13] S. Wiefels, C. Bengel, N. Kopperberg, K. Zhang, R. Waser, and S. Menzel, “Hrs instability in oxide-based bipolar resistive switching cells,” IEEE Trans. Electron Devices, vol. 67, no. 10, pp. 4208–4215, 2020. https://doi.org/10.1109/ted.2020.3018096.Search in Google Scholar

[14] M. Le Gallo, A. Athmanathan, D. Krebs, and A. Sebastian, “Evidence for thermally assisted threshold switching behavior in nanoscale phase-change memory cells,” J. Appl. Phys., vol. 119, no. 2, p. 025704, 2016. https://doi.org/10.1063/1.4938532.Search in Google Scholar

[15] M. Le Gallo and A. Sebastian, “An overview of phase-change memory device physics,” J. Phys. D: Appl. Phys., vol. 53, no. 21, p. 213002, 2020. https://doi.org/10.1088/1361-6463/ab7794.Search in Google Scholar

[16] S. Rai, M. Liu, A. Gebregiorgis, et al.., “Perspectives on emerging computation-in-memory paradigms,” in 2021 Design, Automation Test in Europe Conference Exhibition (DATE), 2021, pp. 1925–1934.10.23919/DATE51398.2021.9473976Search in Google Scholar

[17] A. Sebastian, M. Le Gallo, R. Khaddam-Aljameh, and E. Eleftheriou, “Memory devices and applications for in-memory computing,” Nat. Nanotechnol., vol. 15, no. 7, pp. 529–544, 2020. https://doi.org/10.1038/s41565-020-0655-z.Search in Google Scholar PubMed

[18] L. Xie, H. A. Du Nguyen, J. Yu, et al.., “Scouting logic: a novel memristor-based logic design for resistive computing,” in 2017 IEEE Computer Society Annual Symposium on VLSI (ISVLSI), 2017, pp. 176–181.10.1109/ISVLSI.2017.39Search in Google Scholar

[19] S. Jain, A. Ranjan, K. Roy, and A. Raghunathan, “Computing in memory with spin-transfer torque magnetic RAM,” IEEE Trans. Very Large Scale Integr. Syst., vol. 26, no. 3, pp. 470–483, 2018. https://doi.org/10.1109/tvlsi.2017.2776954.Search in Google Scholar

[20] M. Hu, J. P. Strachan, Z. Li, et al.., “Dot-product engine for neuromorphic computing: programming 1t1m crossbar to accelerate matrix-vector multiplication,” in 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC), 2016, pp. 1–6.10.1145/2897937.2898010Search in Google Scholar

[21] W. Kang, H. Zhang, P. Ouyang, Y. Zhang, and W. Zhao, “Programmable stateful in-memory computing paradigm via a single resistive device,” in 2017 IEEE International Conference on Computer Design (ICCD), 2017, pp. 613–616.10.1109/ICCD.2017.108Search in Google Scholar

[22] A. Hansson, N. Agarwal, A. Kolli, T. Wenisch, and A. N. Udipi, “Simulating DRAM controllers for future system architecture exploration,” in 2014 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2014, pp. 201–210.10.1109/ISPASS.2014.6844484Search in Google Scholar

[23] JEDEC Solid State Technology Association, DDR4 NVDIMM-P BUS PROTOCOL, 2021, [Online]. Available at: https://www.jedec.org/standards-documents/docs/jesd304-401.Search in Google Scholar

[24] W. Elsasser and N. Nikoleris, Memory Controller Updates for New DRAM Technologies, NVM Interfaces and Flexible Memory Topologies, Gem5 Blog, 2020, [Online]. Available at: https://www.gem5.org/2020/05/27/memory-controller.html.Search in Google Scholar

[25] J. Ahn, S. Yoo, O. Mutlu, and K. Choi, “PIM-enabled instructions: a low-overhead, locality-aware processing-in-memory architecture,” in 2015 ACM/IEEE 42nd Annual International Symposium on Computer Architecture (ISCA), 2015, pp. 336–348.10.1145/2749469.2750385Search in Google Scholar

[26] V. Seshadri, D. Lee, T. Mullins, et al.., “Ambit: in-memory accelerator for Bulk bitwise operations using commodity DRAM technology,” in Proceedings of the 50th Annual IEEE/ACM International Symposium on Microarchitecture, ser. MICRO-50 ’17, New York, NY, USA, Association for Computing Machinery, 2017, pp. 273–287.10.1145/3123939.3124544Search in Google Scholar

[27] S. Aga, S. Jeloka, A. Subramaniyan, S. Narayanasamy, D. Blaauw, and R. Das, “Compute caches,” in 2017 IEEE International Symposium on High Performance Computer Architecture (HPCA), 2017, pp. 481–492.10.1109/HPCA.2017.21Search in Google Scholar

[28] S. Xu, X. Chen, Y. Wang, Y. Han, X. Qian, and X. Li, “PIMSim: a flexible and detailed processing-in-memory simulator,” IEEE Comput. Architect. Lett., vol. 18, no. 1, pp. 6–9, 2019. https://doi.org/10.1109/lca.2018.2885752.Search in Google Scholar

[29] J. P. C. de Lima, “PIM-gem5: a system simulator for processing-in-memory design space exploration,” Master’s thesis, Universidade Federal do Rio Grande do Sul. Instituto de Informatica. Programa de Pos-Graduacao em Computacao, 2019, [Online]. Available at: http://hdl.handle.net/10183/194605.Search in Google Scholar

[30] F. Bernard-Granger, B. Dieny, R. Fascio, and K. Jabeur, “SPITT: a magnetic tunnel junction SPICE compact model for STT-MRAM,” in Proceedings of the MOS-AK Workshop of the Design, Automation & Test in Europe (DATE), 2015.Search in Google Scholar

[31] C. Bengel, A. Siemon, F. Cuppers, et al.., “Variability-aware modeling of filamentary oxide-based bipolar resistive switching cells using spice level compact models,” IEEE Trans. Circuits Syst. I: Regul. Pap., vol. 67, no. 12, pp. 4618–4630, 2020. https://doi.org/10.1109/tcsi.2020.3018502.Search in Google Scholar

[32] Q. Dong, Z. Wang, J. Lim, et al.., “A 1Mb 28nm STT-MRAM with 2.8ns read access time at 1.2V VDD using single-cap offset-cancelled sense amplifier and in-situ self-write-termination,” in 2018 IEEE International Solid – State Circuits Conference – (ISSCC), 2018, pp. 480–482.10.1109/ISSCC.2018.8310393Search in Google Scholar

[33] X. Dong, C. Xu, Y. Xie, and N. P. Jouppi, “Nvsim: a circuit-level performance, energy, and area model for emerging nonvolatile memory,” IEEE Trans. Comput. Aided Des. Integrated Circ. Syst., vol. 31, no. 7, pp. 994–1007, 2012. https://doi.org/10.1109/tcad.2012.2185930.Search in Google Scholar

[34] L.-N. Pouchet, PolyBench/C, The Polyhedral Benchmark Suite, 2016, version 4.2. [Online]. Available at: https://sourceforge.net/projects/polybench/.Search in Google Scholar

[35] C.-Y. Chan and Y. E. Ioannidis, “Bitmap index design and evaluation,” in Proceedings of the 1998 ACM SIGMOD International Conference on Management of Data, Ser. SIGMOD’98, New York, NY, USA, Association for Computing Machinery, 1998, pp. 355–366.10.1145/276304.276336Search in Google Scholar

Received: 2023-04-07
Accepted: 2023-04-09
Published Online: 2023-05-03
Published in Print: 2023-05-25

© 2023 Walter de Gruyter GmbH, Berlin/Boston

Downloaded on 28.4.2024 from https://www.degruyter.com/document/doi/10.1515/itit-2023-0019/html
Scroll to top button