Computer Science
>
>

ELE/COS 475 Computer Architecture

Fall 2019

Princeton University

This course offers an in-depth understanding of modern computer processor and system architecture. It covers topics like instruction-set architecture, processor organization, cache, memory, multiprocessors, and more. Designed for senior-level undergraduates and first-year graduate students.

Course Page

Overview

An in-depth study of the fundamentals of modern computer processor and system architecture. Students will develop a strong theoretical and practical understanding of modern, cutting-edge computer architectures and implementations. Studied topics include: Instruction-set architecture and high-performance processor organization including pipelining, out-of-order execution, as well as data and instruction parallelism. Cache, memory, and storage architectures. Multiprocessors and multicore processors. Coherent caches. Interconnection and network infrastructures. If the course indicates that enrollment capacity has been reached, students are encouraged to come to the class and speak with the professor about enrollment. Approximately 20 pages of reading per week. Homework - 5 problem sets during the semester.

Prerequisites

This course is targeted at senior-level undergraduates and first-year graduate students. Students should have a good working understanding of digital logic, basic processor design and organization, pipelining, and simple cache design. ELE 375/COS 375 and ELE 206/COS 306 or equivalent knowledge are necessary to succeed in ELE 475. Use of the Verilog hardware description language will be used in this course and prior knowledge of Verilog will be very helpful, but not required.

Learning objectives

No data.

Textbooks and other notes

Required text:

  1. Computer Architecture: A Quantitative Approach 5th or 6th edition
    • John L. Hennessy and David A. Patterson
    • Princeton University Library Owns

Recommended Text:

  • Modern Processor Design: Fundamentals of Superscalar Processors (1st Edition), 2004. First and second printing are the same.
    • John P. Shen and Mikko H. Lipasti
    • Approximately $68 on Amazon
    • ISBN: 978-1478607830
    • Princeton University Library Owns

Other Text:

  • Verilog HDL: A Guide to Digital Design and Synthesis, (2nd Edition), 2003.
    • Samir Palnitkar
    • ISBN: 0-13-044911-3
    • This book is a good Verilog reference as we will be using Verilog in the labs for this course. If you already know Verilog for synthesis than this may not be needed. The 1st and 2nd editions of this book work. Likewise there are many other Verilog references on the web and other books are available.
    • The 1st edition can be purchased used from Amazon for less than $10, the 2nd edition is more expensive.
    • Princeton University Library has free online access to this book: Online Safari Version On Princeton Network

Other courses in Computer Systems

CS 110: Principles of Computer Systems

Winter 2022

Stanford University

CSE 351 The HW/SW Interface

Autumn 2022

University of Washington

CS 107e Computer Systems from the Ground Up

Winter 2023

Stanford University

CS 107A: Problem-solving Lab for CS 107

Autumn 2022

Stanford University

Courseware availability

Lecture slide decks available at Schedule

No videos available

Assignments available at Schedule

No other materials available

Covered concepts