9 units (3-3-3)
Prerequisites: EE/CS 119a or EE/CS/MedE 125 or equivalent.
The course focuses on the design and implementation of modern CPUs and microcontrollers. The topics covered in addition to basic CPU architecture include caching and cache controllers, memory management and virtual memory, pipelining CPU operations, VLIW CPUs, branch prediction, and hardware multi-threading. The emphasis is on the practical aspects of CPU design such as timing, testing, and power use. There is significant laboratory work in which the students are expected to design and implement the systems discussed in the class.
The online version of the Caltech Catalog is provided as a convenience; however, the printed version is the only
authoritative source of information about course offerings, option requirements, graduation requirements,
and other important topics.