Description

This course focuses on how to build modern computing systems, namely notebooks, smartphones, and data centers, covering primarily their hardware architecture and certain system software aspects. Each system class covers the system architecture, processor technology, advanced memory hierarchy and I/O organization, power and energy management, and reliability. Programming assignments will allow students to explore performance/energy tradeoffs when using heterogeneous hardware resources on smartphone devices.

Prerequisites

EE 180: Digital Systems Architecture (formerly EE 108B)

Topics include

  • Cache hierarchies, memory systems, storage and IO systems
  • Virtualization, clusters, fault-tolerance, and low-power design
  • Interactions between hardware and software layers in such systems
  • Performance analysis and optimization techniques for small and large-scale systems
  • Security

Course Availability

The course schedule is displayed for planning purposes – courses can be modified, changed, or cancelled. Course availability will be considered finalized on the first day of open enrollment. For quarterly enrollment dates, please refer to our graduate education section.