Undergraduate computer science programs at many small colleges often include only one course focused on hardware. Many important concepts are covered in such a course, including the basics of computer architecture. By the end of such a course, students should have a good understanding of how a binary machine instruction is executed in hardware. Unfortunately, even a simplified diagram of a datapath is often difficult for students to master. We present two approaches that use lab exercises to help to address this problem. In one, students build a working model of the datapath out of ordinary materials; in the other, a software simulator is designed and implemented. These approaches are described and their merits discussed.
Citation (BIBTEX) | Paper (Tech. Report version) (PDF) | Published version (ACM Digital Library) |