Spring 2023: Advanced Topics in Computer Architecture
CIS 6010, MW 10:15-11:45AM,
Town 309

This course will focus on research topics in computer architecture, and include reading and presenting research papers and an optional project. The content will differ with each offering, covering topics such as multicore programmability, datacenter and warehouse-scale computing, security, energy-efficient architectures, etc.



Fall 2022: Datacenter Architecture
ESE 6650, TuTh 1:45-3:15PM,
DRLB A8

This course covers advanced topics in data centers with an emphasis on computer architecture and systems. This course surveys recent advances in processor, memory, network, and storage. And it surveys modern software systems in computing clouds. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to reason about datacenter performance and energy efficiency. Students will complete a collaborative research project. Final project and paper required. Appropriate for graduate and advanced undergraduate students. After completing this course, students should be able to • Understand design, management of datacenter architectures and system software. • Read architecture and systems papers critically. • Write constructive paper reviews • Identify open research problems in datacenter architecture • Design and execute a research project to address an open research problem



Spring 2022: Introduction to Computer Systems
CIS 240, TuTh 3:30-5:00PM,
Stiteler Hall B6

You know how to program, but do you know how computers really work? How do millions of transistors come together to form a complete computing system? This bottom-up course begins with transistors and simple computer hardware structures, continues with low-level programming using primitive machine instructions, and finishes with an introduction to the C programming language. This course is a broad introduction to all aspects of computer systems architecture and serves as the foundation for subsequent computer systems courses, such as Digital Systems Organization and Design (CIS 371), Computer Operating Systems (CIS 380), and Compilers and Interpreters (CIS 341).



Spring 2021: Data Science for Computer Systems
ESE 680, MW 3:00-4:30PM,
Virtual

This course covers advanced topics at the interface between data science and computer systems. It surveys recent advances in data science and their use in modeling, designing, and managing complex software systems and hardware architectures such as datacenter and cloud computing. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to operationalize methods in data science and statistical machine learning to complete a collaborative research project. Prerequisites include introductory statistics or data science (STAT 431, ESE 305, ESE 402), and computer systems (CIS 380).



Spring 2020: Datacenter Architecture
ECE 561, W 1:25-3:55PM,
Fitzpatrick Schiciano A

This course covers advanced topics in data centers with an emphasis on computer architecture and systems. This course surveys recent advances in processor, memory, network, and storage. And it surveys modern software systems that run in computing clouds. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to reason about datacenter performance and energy efficiency. Students will complete a collaborative research project.



Fall 2019: Computer Architecture
ECE 250 / CS 250, TuTh 3:05PM - 4:20PM,
Bryan Center Griffith Theater

Computer structure, machine language, instruction execution, addressing techniques, and digital representation of data. Computer systems organization, logic design, microprogramming, and interpreters. Symbolic coding and assembly systems. Prerequisite: Computer Science 201 or consent of instructor.



Fall 2018: Computer Architecture
ECE 250 / CS 250, TuTh 11:45PM - 1:00PM,
Biological Sciences 111

Computer structure, machine language, instruction execution, addressing techniques, and digital representation of data. Computer systems organization, logic design, microprogramming, and interpreters. Symbolic coding and assembly systems. Prerequisite: Computer Science 201 or consent of instructor.



Spring 2018: Computer Architecture
ECE 250 / CS 250, TuTh 11:45PM - 1:00PM,
Biological Sciences 111

Computer structure, machine language, instruction execution, addressing techniques, and digital representation of data. Computer systems organization, logic design, microprogramming, and interpreters. Symbolic coding and assembly systems. Prerequisite: Computer Science 201 or consent of instructor.



Fall 2017: Advanced Computer Architecture I
ECE 552 / CPS 550, TuTh 10:05AM - 11:20AM, CIEMAS Schiciano A

Fundamental aspects of advanced computer architecture design and analysis. Topics include processor design, pipelining, superscalar, out-of-order execution, caches (memory hierarchies), virtual memory, storage systems, simulation techniques, technology trends and future challenges. Prerequisite: Computer Science 250 or Electrical and Computer Engineering 350 or equivalent.



Fall 2016: Advanced Computer Architecture I
ECE 552 / CPS 550, TuTh 10:05AM - 11:20AM, Teer 203

Fundamental aspects of advanced computer architecture design and analysis. Topics include processor design, pipelining, superscalar, out-of-order execution, caches (memory hierarchies), virtual memory, storage systems, simulation techniques, technology trends and future challenges. Prerequisite: Computer Science 250 or Electrical and Computer Engineering 350 or equivalent.



Spring 2016: Datacenter Architecture
ECE 590, TuTh 3:00-4:20PM, Hudson 208

This course covers advanced topics in data centers with an emphasis on computer architecture and systems. This course surveys recent advances in processor, memory, network, and storage. And it surveys modern software systems that run in computing clouds. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to reason about datacenter performance and energy efficiency. Students will complete a collaborative research project.



Fall 2015: Computer Architecture
ECE 250 / CS 250, TuTh 11:45PM - 1:00PM,
CIEMAS Schiciano Auditorium

Computer structure, machine language, instruction execution, addressing techniques, and digital representation of data. Computer systems organization, logic design, microprogramming, and interpreters. Symbolic coding and assembly systems. Prerequisite: Computer Science 201 or consent of instructor.



Fall 2014: Energy-Efficient Computer Systems
ECE 590 / CS 590, TuTh 11:45AM -1:00PM, Hudson 216

This course covers advanced topics in energy-efficient computing with an emphasis on computer architecture and systems. This course surveys recent advances in diverse platforms, ranging from high-performance, enterprise domains to low-power, mobile domains. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to reason about energy efficiency across the hardware/software interface and across a range of system components. Students will complete a collaborative research project.



Spring 2014: Computer Architecture
ECE 250 / CS 250, TuTh 1:25PM - 2:40PM,
CIEMAS Schiciano Auditorium

Computer structure, machine language, instruction execution, addressing techniques, and digital representation of data. Computer systems organization, logic design, microprogramming, and interpreters. Symbolic coding and assembly systems. Prerequisite: Computer Science 201 or consent of instructor.



Fall 2013: Datacenter Architecture
ECE 590, TuTh 1:25PM - 2:40PM, Hudson 201

This course covers advanced topics in data centers with an emphasis on computer architecture and systems. This course surveys recent advances in processor, memory, network, and storage. And it surveys modern software systems that run in computing clouds. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to reason about datacenter performance and energy efficiency. Students will complete a collaborative research project.



Spring 2013: Introduction to Computer Architecture
ECE 496, TuTh 1:25PM - 2:40PM, Hudson 208

How computers work, focusing on how hardware executes software. Topics include instruction sets, computer arithmetic, processor design, memory system design, and input/output. Teams of students will design and build a computer in real hardware and then run programs on it. Prerequisite: ECE 52 and ability to program in a high-level language (e.g., C, C++, or Java).



Fall 2012: Advanced Computer Architecture I
ECE 552 / CPS 550, TuTh 1:25PM - 2:40PM, Hudson 208

Fundamental aspects of advanced computer architecture design and analysis. Topics include processor design, pipelining, superscalar, out-of-order execution, caches (memory hierarchies), virtual memory, storage systems, simulation techniques, technology trends and future challenges. Prerequisite: Computer Science 104 or Electrical and Computer Engineering 152 or equivalent.



Spring 2012: Energy-Efficient Computer Systems
ECE 299, TuTh 1:15PM - 2:30PM, Hudson 207

This course covers advanced topics in energy-efficient computing with an emphasis on computer architecture and systems. This course surveys recent advances in diverse platforms, ranging from high-performance, enterprise domains to low-power, mobile domains. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to reason about energy efficiency across the hardware/software interface and across a range of system components. Students will complete a collaborative research project.



Fall 2011: Advanced Computer Architecture I
ECE 252 / CPS 220, TuTh 1:15PM - 2:30PM, Teer 203

Fundamental aspects of advanced computer architecture design and analysis. Topics include processor design, pipelining, superscalar, out-of-order execution, caches (memory hierarchies), virtual memory, storage systems, simulation techniques, technology trends and future challenges. Prerequisite: Computer Science 104 or Electrical and Computer Engineering 152 or equivalent.



Fall 2010: Energy-Efficient Computer Systems
ECE 299.10, TuTh 1:15PM - 2:30PM, CIEMAS 1441

This course covers advanced topics in energy-efficient computing with an emphasis on computer architecture and systems. This course surveys recent advances in diverse platforms, ranging from high-performance, enterprise domains to low-power, mobile domains. Discussion-oriented classes focus on in-depth analysis of readings. Students will learn to reason about energy efficiency across the hardware/software interface and across a range of system components. Students will complete a collaborative research project.