An Integrated Hardware and Software Approach for Learning Input/Output Subsystems in Computer Systems Design
DOI:
https://doi.org/10.5753/ijcae.2020.4838Keywords:
computer systems design, input/output subsystems, computer simulator, learning supportAbstract
The study of concepts related to the interaction between the system and the external environment is one of the most important aspects of learning in modern computer system design projects, such as those in the Internet of Things, Robotics, and Automation. These concepts are broad and complex, involving aspects such as interfaces, communication channels and protocols, as well as input/output devices, which are often superficially covered in predominantly theoretical classes. Additionally, the literature lacks adequate support from computer simulators, which have been widely used to support the practical application of theoretical concepts. This paper presents a new feature of the Input/Output Subsystem of the CompSim computer simulator, which includes an integrated hardware and software approach to support practical learning processes in the design of the interaction between the computer system and its respective peripherals. The proposed feature includes a standardized input/output interface that automates the connection of new peripherals, whether they are developed in software or with the use of physical electronic components, to the simulated computer system. The proposed approach has been employed in different courses, and the results show that, by allowing the simulation and practical construction of peripherals, the potential of the teaching-learning process in Input/Output subsystems is increased.
Downloads
References
ACM. Association for Computing Machinery and IEEE Computer Society, “Curriculum Guidelines for Undergraduate Degree Programs in Computer Science,” 2013.
A. F. Zorzo, D. Nunes, E. Matos, I. Steinmacher, J. Leite, R. M. Araujo, R. Correia and S. Martins, “Referenciais de formação para os cursos de graduação em computação,” in Sociedade Brasileira de Computação (SBC), 2017.
E. Larraza-Mendiluze and N. Garay-Vitoria, “Approaches and tools used to teach the computer input/output subsystem: A survey,” in IEEE Transactions on Education, v. 58, n. 1, pp. 1-6, 2014.
S. R. Fernandes and I. S. Silva, “Relato de Experiência Interdisciplinar Usando MIPS,” in International Journal of Computer Architecture Education (IJCAE), V. 6, n. 1. pp. 52-61, 2017.
P. H. Penna and H. C. Freitas, “Análise e Avaliação de Simuladores de Sistemas Completos para o Ensino de Arquitetura de Computadores”, in International Journal of Computer Architecture Education, V. 2, N.1. pp. 13-16, 2013.
L. Duenha and R. Azevedo, “Utilização dos Simuladores do MPSoCBench para o Ensino e Aprendizagem de Arquitetura de Computadores,” in International Journal of Computer Architecture Education (IJCAE), V. 5, n. 1. pp 26-31, 2016.
G. A. R. M. Esmeraldo, C. S. R. Mendes, L. F. Cartaxo and E. B. Lisboa, “Apoio ao Aprendizado em Arquitetura e Organização de Computadores: Um Estudo Comparativo entre Simuladores Computacionais,” in Revista Tecnologias na Educação, v. 31, pp. 1-17, 2019.
W. Stallings, “Computer Organization and Architecture. 10th Edition,” Pearson, 2017.
A. Kurniawan, "Introduction to Arduino Boards and Development," in Arduino Programming with. NET and Sketch, Apress, pp. 1-19, 2017.
M. Black, “Export to arduino: a tool to teach processor design on real hardware,” in Journal of Computing Sciences in Colleges, 31(6), pp.21-26, 2016.
A. M. A. Neto, J. A. dos S. Borges and G. P. Silva, “Extensão do Simulador SimuS com uso do Protocolo Firmata,” in XVIII Workshop de Iniciação Científica do XVII Simpósio em Sistemas Computacionais de Alto Desempenho (WIC-WSCAD), pp.123-128, 2017.
R. A. Hexsel and R. Carmos, “cMIPS – uma Ferramenta Pedagógica para o Estudo de Arquitetura,” in International Journal of Computer Architecture Education, v.2, n.1, pp. 29-32, 2013.
B. Nikolic, Z. Radivojevic; J. Djordjevic and V. A. Milutinovic, “Survey and Evaluation of Simulators Suitable for Teaching Courses in Computer Architecture and Organization,” in IEEE Transactions on Education, Vol. 52, No. 4, 2009.
G. A. Esmeraldo and E. B. Lisboa, “Uma Ferramenta para Exploração do Ensino de Organização e Arquitetura de Computadores”, in International Journal of Computer Architecture Education, v.6, n.1, pp. 68-75, 2017.
P. F. Gonçalves and J. Duraes, “An Arduino Simulator for Practical Embedded Programming Teaching,” in International Symposium on Ambient Intelligence and Embedded Systems, 2019.
T. Katayama, T. Nishida, Y. Kita, H. Yamaba, K. Aburada and N. Okazaki, “Implementation of Arduino Simulator ADVIS Visualizing the Value of Voltage on the Circuit,” in Journal of Robotics, Networking and Artificial Life, 5(4), pp. 249-252, 2019.
M. Awedh and A. Mueen, "Teaching Computer Organization Using Field Programmable Gate Array: An Incremental Approach," in Asian Journal Of Advanced Basic Sciences, vol.4, n.1, pp. 5-11, 2016.
M. A. S. Xavier, J. C. Rodrigues and O. A. L. Júnior, “Simuladores de Memória Cache, um Estudo Comparativo Direcionado ao Ensino,” in Workshop sobre Educação em Arquitetura de Computadores (WEAC 2011), pp. 7-12, 2011.
K. Keutzer, A. R. Newton, J. M. Rabaey and A. Sangiovanni-Vincentelli, "System-level design: orthogonalization of concerns and platform-based design," in IEEE transactions on computer-aided design of integrated circuits and systems, 19(12), pp. 1523-1543, 2000.
G.. Esmeraldo, E. Barbosa, L. F. Cartaxo, C. S. R. Mendes, “Aprendizado Prático de Subsistemas de Entrada/Saída em Projetos de Sistemas Computacionais com Suporte do Simulador CompSim,” in Comunicações em Informática, v. 4, pp. 15-19, 2020.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2020 Os autores
This work is licensed under a Creative Commons Attribution 4.0 International License.