Course Overview
This course serves as an alternative to VE450, and can be enrolled as a capstone (so-called MDE) course. Otherwise, it will be counted as an upper level elective course. The course is intended to offer students a solid and deep understanding of how modern computers are designed along with numerous tradeoffs in implementations, including the CPU, memory and their interactions, multi-threading and parallel computing. It will provide students opportunities to gain hands-on experiences of using popular computer architecture simulators (e.g. Gem5) and design frameworks (e.g. Chisel or HLS). Emerging architectures such as domain specific architectures (DSA), Process-in-Memory (PIM) or AI accelerators will also be introduced in the end.
Textbook
Computer Architecture: A Quantitative Approach, by John L. Hennessy and David A. Patterson, published by Morgan-Kaufmann publishers, November 2017. ISBN: 9780128119051.
Course Prerequisite(s)
VE370 & VE280
Credits
4 Credits
Course Objectives
- To teach students fundamental design tradeoffs of the modern computer architectures;
- To teach advanced computer architecture concepts such as Multiprocessors, Superscalar, GPUs and advanced caches;
- To give students an exposure to state-of-the-art computer architecture simulators through hands-on assignments and/or a project that will help understand the tradeoffs;
- To offer student hands-on experiences of implementing or optimizing major portions of a substantial processor with either Verilog or High-level design approaches;
- To introduce students the most recent computer architecture advances such as Domain specific architectures (DSA) and AI accelerators;
- To provide experiences of executing a project as a team from concept to finish effectively and professionally, and to offer opportunities to present ideas to the public.
Offerings
Summer 2022, 2023, 2024