A New Old Approach to Teaching Microprocessors
Traditional approaches to teaching microprocessors employ training modules that comprise a commercial microprocessor, memory, clock, and I/O interfaces.The basic operation of the system is explained and students then program the boards to run various test applications.These approaches generally reduce the microprocessor's internal architecture to an abstract "black box," and the study of microprocessors to a study of assembler instructions and interfacing.Two alternatives have been devised to give students a more "hands-on" experience.In the first, groups of students build and integrate various subsystem components such as the ALU from discrete components or using programmable devices such as FPGAs.In the second, students build and program a complete microcomputer using an 8086 microprocessor.In this paper, we describe a course based on a mix of the two latter approaches.In this course, students begin by building a few components, such as a simple adder, from discrete components to understand how the various subsystems are constructed and integrated.They then proceed to build a complete computer by integrating a Z80 microprocessor with memory, timing circuits, data buses, etc.By building their own microcomputers, students learn important concepts including the system bus, three-state logic, and active-low signals.In addition, the laboratory work is complemented by lectures and reading assignments on such topics as pipelining, superscalar processing, cache, and advanced architectures such as Core Duo.
Authors
- M. Eric Carr (ORCID: https://orcid.org/0000-0003-3444-0883)
- Warren Rosen
Institutions
- Drexel University (US)
Publication Details
- Published
- 2025-01-22
- DOI
- https://doi.org/10.18260/1-2-1153-50130
- Primary Topic
- Experimental Learning in Engineering
- Type
- article
- Field-Weighted Citation Impact
- 0.00