Abstract
In the past few years big data applications are becoming diverse and ubiquitous. There is a renewed interest in teaching senior level students to be professional in accelerator based computer architecture design and engineering. However, it poses a significant challenge to tutor the students with sufficient knowledge and practical skills in this area. In this paper, we propose a big data accelerator design project implemented on field-programmable gate array (FPGA) in teaching a computer architecture and organization course. The experimental system is carried out on a heterogeneous architecture using Xilinx Virtex 5 development boards. To achieve a modular accelerator implementation, several milestones are set to facilitate the on-time complete of the project. With the assistance of the FPGA-based experiment, most students have obtained a much more comprehensive understanding of the processor architecture and the accelerator design paradigm. Student feedback and survey illustrates the effectiveness and popularity of the FPGA-based project with milestones over simulation based experiments.
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 subscriptionsReferences
Jackson, D.J., Caspi, P.: Embedded systems education: future directions, initiatives, and cooperation. ACM SIGBED Rev. 2(4), 1–4 (2005)
Kumar, A., Fernando, S., Panicker, R.C.: Project-based learning in embedded systems education using an FPGA platform. IEEE Trans. Educ. 56(4), 407–415 (2013)
Han, S., et al.: ESE: efficient speech recognition engine with sparse LSTM on FPGA. In: FPGA, pp. 75–84 (2017)
Mitsui, H., Kambe, H., Koizumi, H.: Use of student experiments for teaching embedded software development including HW/SW co-design. IEEE Trans. Educ. 52(3), 436–443 (2009)
Wang, C., Gong, L., Yu, Q., Li, X., Xie, Y., Zhou, X.: DLAU: a scalable deep learning accelerator unit on FPGA. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 36(3), 513–517 (2017)
Bulić, P., Guštin, V., Šonc, D., Štrancar, A.: An FPGA-based integrated environment for computer architecture. Comput. Appl. Eng. Educ. 21(1), 26–35 (2013)
Lu, S.L.L., Yiannacouras, P., Suh, T., Kassa, R., Konow, M.: A desktop computer with a reconfigurable pentium®. ACM Trans. Reconfigurable Technol. Syst. (TRETS) 1(1), 5 (2008)
Nikolic, B., Radivojevic, Z., Djordjevic, J., Milutinovic, V.: A survey and evaluation of simulators suitable for teaching courses in computer architecture and organization. IEEE Trans. Educ. 52(4), 449–458 (2009)
Schaumont, P.: A senior-level course in hardware–software codesign. IEEE Trans. Educ. 51(3), 306–311 (2008)
Ozturk, O.: Multicore education through simulation. IEEE Trans. Educ. 54(2), 203–209 (2011)
Soares, S.N., Wagner, F.R.: T&D-bench—innovative combined support for education and research in computer architecture and embedded systems. IEEE Trans. Educ. 54(4), 675–682 (2011)
Todorovich, E., Marone, J.A., Vazquez, M.: Introducing programmable logic to undergraduate engineering students in a digital electronics course. IEEE Trans. Educ. 55(2), 255–262 (2012)
Lee, J.H., Lee, S.E., Yu, H.C., Suh, T.: Pipelined CPU design with FPGA in teaching computer architecture. IEEE Trans. Educ. 55(3), 341–348 (2012)
Ttofis, C., Theocharides, T., Michael, M.K.: FPGA-based laboratory assignments for NoC-based manycore systems. IEEE Trans. Educ. 55(2), 180–189 (2012)
Edwards, S.A.: Experiences teaching an FPGA-based embedded systems class. ACM SIGBED Rev. 2(4), 56–62 (2005)
Bruce, J.W., Harden, J.C., Reese, R.B.: Cooperative and progressive design experience for embedded systems. IEEE Trans. Educ. 47(1), 83–92 (2004)
Koopman, P., et al.: Undergraduate embedded system education at carnegie mellon. ACM Trans. Embed. Comput. Syst. (TECS) 4(3), 500–528 (2005)
Hall, T.S., Hamblen, J.O.: System-on-a-programmable-chip development platforms in the classroom. IEEE Trans. Educ. 47(4), 502–507 (2004)
Bindal, A., Mann, S., Ahmed, B.N., Raimundo, L.A.: An undergraduate system-on-chip (SoC) course for computer engineering students. IEEE Trans. Educ. 48(2), 279–289 (2005)
Hansson, A., Akesson, B., Van Meerbergen, J.: Multi-processor programming in the embedded system curriculum. ACM SIGBED Rev. 6(1), 9 (2009)
Feist, T.: Vivado design suite. White Paper 5 (2012)
O’Loughlin, D., Coffey, A., Callaly, F., Lyons, D., Morgan, F.: Xilinx Vivado high level synthesis: case studies (2014)
Acknowledgements
This work is partially supported by the National Key Research and Development Program of China (under Grant 2017YFA0700900), Anhui Provincial Natural Science Foundation (No. 1608085QF12), Jiangsu Provincial Natural Science Foundation (No. BK20181193), Youth Innovation Promotion Association CAS (No. 2017497), and Fundamental Research Funds for the Central Universities (WK2150110003).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Wang, C. et al. (2019). FPGA Based Big Data Accelerator Design in Teaching Computer Architecture and Organization. In: Chamberlain, R., Taha, W., Törngren, M. (eds) Cyber Physical Systems. Design, Modeling, and Evaluation. CyPhy 2017. Lecture Notes in Computer Science(), vol 11267. Springer, Cham. https://doi.org/10.1007/978-3-030-17910-6_11
Download citation
DOI: https://doi.org/10.1007/978-3-030-17910-6_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-17909-0
Online ISBN: 978-3-030-17910-6
eBook Packages: Computer ScienceComputer Science (R0)