The class teaches you the computer architecture of complex modern microprocessors.

The course aims to teach you the evolution of computer architecture and the factors influencing the design of hardware and software elements of computer systems. We will cover the topics related to: instruction set design; processor micro-architecture and pipelining; cache and virtual memory organizations; protection and sharing; I/O and interrupts; in-order and out-of-order superscalar architectures; memory models and synchronization; embedded systems; and parallel computers.

The class is based on cs6810 taught by Rajeev Balasubramonian at the Univerisy of Utah.

The course will primarely use the following book:

If you did not take an undergraduate architecture class, we recommend that you go through the undergraduate version of the book first:

Updated: February, 2019