A new method for teaching microprocessors course using emulation

Microprocessors course is a challenging course for both students and instructors. The challenge arises by the nature of this course which is a combination of assembly language and hardware interface. The assembly language develops the students' ability to program in a low level programming language utilizing the instruction set of the 8086 processor, understanding the addressing modes (pointer concept), and exploring the nature of different instructions along with their execution times, dependences, implicit addressing for certain instructions, as well as flow control concerning the flags. The hardware interface helps the students in connecting various system components to build up a working system. Memory and input/output communications (read/write) operations are explained using timing diagrams and handshaking signals. In this paper, the aforementioned contents are addressed through developing an interesting project that is capable of integrating both hardware and software in an attractive environment characterized by being simple and inexpensive. In this project, the PC parallel port extension is used to emulate the microprocessor bus activity in read/write operation. The results showed an impressive students' progress whereas they were so satisfied to not only their projects, but also the conceptual basics of this course. © 2014 Wiley Periodicals, Inc. Comput Appl Eng Educ 23:455–463, 2015; View this article online at wileyonlinelibrary.com/journal/cae; DOI 10.1002/cae.21616

[1]  David J. Ahlgren Synthesis of a small microcomputer-a project for undergraduate laboratories , 1985, IEEE Transactions on Education.

[2]  Geoffrey Brown,et al.  A computer architecture laboratory course using programmable logic , 1995 .

[3]  Jae Wook Jeon A microprocessor course: designing and implementing personal microcomputers , 2000, IEEE Trans. Educ..

[4]  Scott B. Hunter Teaching assembly language without using (as much) assembly language , 2005 .

[5]  Francisco Rosales,et al.  Computer‐based management environment for an assembly language programming laboratory , 2007, Comput. Appl. Eng. Educ..

[6]  Veselko Gustin An FPGA extension to ALU functions , 1999, Microprocess. Microsystems.

[7]  David C.-L. Lam Educational Use of Field Programmable Gate Arrays , 1994, FPL.

[8]  Miaojun Xu Teaching methods for “Assembly Language Programming” in Windows environment , 2011, 2011 IEEE International Symposium on IT in Medicine and Education.

[9]  Janez Puhan,et al.  Teaching Assembly and C Language Concurrently , 2010 .

[10]  Jinghua Zhang,et al.  Web‐based learning environment for a communications module , 2001, Comput. Appl. Eng. Educ..

[11]  Ali El-Hajj,et al.  8085 microprocessor simulation tool “8085 SimuKit” , 2004, Comput. Appl. Eng. Educ..

[12]  E. Yalow On Educational psychology: A cognitive view. , 1979 .

[13]  Patricia J. Teller,et al.  Mobile Robots Teach Machine-Level Programming , 1995, SC.

[14]  Antonio J. Fernández,et al.  CGRAPHIC: Educational software for learning the foundations of programming , 2003, Comput. Appl. Eng. Educ..

[15]  J. Mergendoller,et al.  The Effectiveness of Problem-Based Instruction: A Comparative Study of Instructional Methods and Student Characteristics. , 2006 .

[16]  Sudhakar Yalamanchili,et al.  An undergraduate computer engineering rapid systems prototyping design laboratory , 1999 .

[17]  Yi Xiaolin,et al.  Research of Self-regulated Learning in Teaching of Assembly Language Programming Combined with Development and Application , 2012 .

[18]  Shankar Bhat,et al.  WWW courseware in applied science: Cases and lessons , 2001, Comput. Appl. Eng. Educ..

[19]  David R. Surma Teaching microprocessors utilizing a project-based approach , 2003 .

[20]  Dimosthenis E. Bolanakis,et al.  A teaching approach for bridging the gap between low‐level and high‐level programming using assembly language learning for small microcontrollers , 2011, Comput. Appl. Eng. Educ..

[21]  Kathy Bartscher,et al.  Increasing Student Motivation through Project-Based Learning. , 1995 .

[22]  V. Pilla,et al.  Driving the learning: microprocessors from theory to practice , 2004, Information Technology Based Proceedings of the FIfth International Conference onHigher Education and Training, 2004. ITHET 2004..

[23]  Michael Paul Gough,et al.  A guide to migrating from microprocessor to FPGA coping with the support tool limitations , 2000, Microprocess. Microsystems.

[24]  L.E.S. Ramos,et al.  A new learning method of microprocessor architecture , 2002, 32nd Annual Frontiers in Education.

[25]  Donald F. Hanson A Microprocessor Laboratory for Electrical Engineering Seniors , 1981, IEEE Transactions on Education.

[26]  Daniel L. Schwartz,et al.  Doing with Understanding: Lessons from Research on Problem- and Project-Based Learning , 1998 .

[27]  Jo Boaler,et al.  Experiencing School Mathematics: Teaching Styles, Sex, and Setting , 1997 .