Students will learn the low-level design of a computer. Topics will include cache hierarchies, main memory layout, addressing schemes, virtual memory, virtualization, data storage, accelerators, etc. They will conduct experiments simulating multi-threading and multi-core processing
Prerequisite Courses