Abstract
In today’s computer architectures, the data is processed and stored in two separate units. Therefore, a communication system is needed to transfer the data between these two main components. The required time for communcation to access the stored data limits performance of the processor to much less than its potential. This problem is especially challenging due to the emergence of new applications which require huge amount of data to be processed in real time. Some of the advanced emerging memory technologies may provide a solution for this problem by allowing to perform logic operations within the memory cells. This enables a new generation of computer architectures in which the memory and the processor are unified. In this context, this chapter presents the state of the art for in-memory computation of logical functions using the Resistive RAM technology. In particular, the chapter introduces a logic-in-memory computer architecture and shows how it can be programmed to efficiently compute arbitrary arithmetic and control functions such as those frequently used in modern computers’ processing units.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
The smallest unit of measurement used to quantify computer data which can adopt either value 0 or 1.
- 2.
It is equal to 4 GHz (4 × 109) clock rate, that is, the speed of the processor to execute tasks.
- 3.
A byte consists of 8 bits.
- 4.
References
Amarù, L.G., Gaillardon, P.-E., Micheli, G.D.: Majority-inverter graph: a novel data-structure and algorithms for efficient logic optimization. In: Design Automation Conference, pp. 194:1–194:6 (2014)
Amarù, L.G., Gaillardon, P.-E., De Micheli, G.: Majority-inverter graph: a new paradigm for logic optimization. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 35, 806–819 (2015)
Bollig, B., Wegener, I.: Improving the variable ordering of OBDDs is NP-complete. IEEE Trans. Comput. 45(9), 993–1002 (1996)
Borghetti, J., Snider, G.S., Kuekes, P.J., Yang, J.J., Stewart, D.R., Williams, R.S.: Memristive switches enable stateful logic operations via material implication. Nature 464, 873–876 (2010)
Chakraborti, S., Chowdhary, P., Datta, K., Sengupta, I.: BDD based synthesis of Boolean functions using memristors. In: 2014 9th International Design and Test Symposium (IDT), pp. 136–141 (2014)
Drechsler, R., Sieling, D.: Binary decision diagrams in theory and practice. Int. J. Softw. Tools Technol. Trans. 3(2), 112–136 (2001)
Gaillardon, P.-E., Amarù, L., Siemon, A., Linn, E., Waser, R., Chattopadhyay, A., De Micheli, G.: The programmable logic-in-memory (PLiM) computer. In: Design Automation & Test in Europe, pp. 427–432 (2016)
Hamdioui, S., Taouil, M., Haron, N.Z.: Testing open defects in memristor-based memories. IEEE Trans. Comput. 64(1), 247–259 (2015)
Kim, Y.B., Lee, S.R., Lee, D., Lee, C.B., Chang, M., Hur, J.H., Lee, M.J., Park, G.S., Kim, C.J., Chung, U.I., Yoo, I.K., Kim, K.: Bi-layered rram with unlimited endurance and extremely uniform switching. In: Symposium on VLSI Technology, pp. 52–53 (2011)
Kuehlmann, A., Paruthi, V., Krohm, F., Ganai, M.K.: Robust Boolean reasoning for equivalence checking and functional property verification. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. 21(12), 1377–1394 (2002)
Lee, H.Y., Chen, Y.S., Chen, P.S., Gu, P.Y., Hsu, Y.Y., Wang, S.M., Liu, W.H., Tsai, C.H., Sheu, S.S., Chiang, P.C., Lin, W.P., Lin, C.H., Chen, W.S., Chen, F.T., Lien, C.H., Tsai, M.J.: Evidence and solution of over-reset problem for HfOX based resistive memory with sub-ns switching speed and high endurance. In: IEEE International Meeting on Electron Devices, pp. 19.7.1–19.7.4 (2010)
Shannon, C.E.: A symbolic analysis of relay and switching circuits. Thesis (M.S.)–Massachusetts Institute of Technology, Department of Electrical Engineering (1940)
Shirinzadeh, S., Soeken, M., Drechsler, R.: Multi-objective BDD optimization with evolutionary algorithms. In: Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation (GECCO), pp. 751–758 (2015)
Shirinzadeh, S., Soeken, M., Drechsler, R.: Multi-objective BDD optimization for RRAM based circuit design. In: International Symposium on Design and Diagnostics of Electronic Circuits & Systems (2016)
Shirinzadeh, S., Soeken, M., Gaillardon, P.-E., Drechsler, R.: Fast logic synthesis for RRAM-based in-memory computing using majority-inverter graphs. In: Design, Automation & Test in Europe (2016)
Shirinzadeh, S., Soeken, M., Gaillardon, P., Micheli, G.D., Drechsler, R.: Endurance management for resistive logic-in-memory computing architectures. In: Design, Automation & Test in Europe, pp. 1092–1097 (2017)
Shirinzadeh, S., Soeken, M., Gaillardon, P.-E., Drechsler, R.: Logic synthesis for RRAM-based in-memory computing. IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst. 37, 1422–1435 (2017)
Soeken, M., Shirinzadeh, S., Gaillardon, P.-E., Amarù, L.G., Drechsler, R., De Micheli, G.: An MIG-based compiler for programmable logic-in-memory architectures. In: Design Automation Conference, pp. 117:1–117:6 (2016)
Soeken, M., Gaillardon, P.E., Shirinzadeh, S., Drechsler, R., Micheli, G.D.: A plim computer for the internet of things. Computer 50(6), 35–40 (2017)
Wang, J., Dong, X., Xie, Y., Jouppi, N.P.: Endurance-aware cache line management for non-volatile caches. ACM Trans. Archit. Code Optim. 11(1), 4:1–4:25 (2014)
Wong, H.S.P., Lee, H.Y., Yu, S., Chen, Y.S., Wu, Y., Chen, P.S., Lee, B., Chen, F.T., Tsai, M.J.: Metal-oxide RRAM. Proc. IEEE 100(6), 1951–1970 (2012)
Xu, C., Niu, D., Muralimanohar, N., Balasubramonian, R., Zhang, T., Yu, S., Xie, Y.: Overcoming the challenges of crossbar resistive memory architectures. In: IEEE International Symposium on High Performance Computer Architecture, pp. 476–488 (2015)
Yang, S.: Logic synthesis and optimization benchmarks user guide: Version 3.0. MCNC (1991)
Zhang, H., Chen, G., Ooi, B.C., Tan, K.L., Zhang, M.: In-memory big data management and processing: a survey. IEEE Trans. Knowl. Data Eng. 27(7), 1920–1948 (2015)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Shirinzadeh, S., Drechsler, R. (2020). In-Memory Computing: The Integration of Storage and Processing. In: Große, C., Drechsler, R. (eds) Information Storage. Springer, Cham. https://doi.org/10.1007/978-3-030-19262-4_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-19262-4_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-19261-7
Online ISBN: 978-3-030-19262-4
eBook Packages: Computer ScienceComputer Science (R0)