Overview
In this course, you will learn to design the computer architecture of complex modern microprocessors.
All the features of this course are available for free. It does not offer a certificate upon completion.
Syllabus
- Introduction, Instruction Set Architecture, and Microcode
- This lecture will give you a broad overview of the course, as well as the description of architecture, micro-architecture and instruction set architectures.
- Pipelining Review
- This lecture covers the basic concept of pipeline and two different types of hazards.
- Cache Review
- This lecture covers control hazards and the motivation for caches.
- Superscalar 1
- This lecture covers cache characteristics and basic superscalar architecture.
- Superscalar 2 & Exceptions
- This lecture covers the common issues for superscalar architecture.
- Superscalar 3
- This lecture covers different kinds of architectures for out-of-order processors.
- Superscalar 4
- This lecture covers the common methods used to improve the performance of out-of-order processors including register renaming and memory disambiguation.
- VLIW 1
- This lecture covers the basic concept of very long instruction word (VLIW) processors.
- VLIW2
- This lecture covers the common methods used to improve VLIW performance.
- Branch Prediction
- This lecture covers the motivation and implementation of branch predictors.
- Advanced Caches 1
- This lecture covers the advanced mechanisms used to improve cache performance.
- Advanced Caches 2
- This lecture covers more advanced mechanisms used to improve cache performance.
- Memory Protection
- This lecture covers memory management and protection.
- Vector Processors and GPUs
- This lecture covers the vector processor and optimizations for vector processors.
- Multithreading
- This lecture covers different types of multithreading.
- Parallel Programming 1
- This lecture covers the concepts of parallelism, consistency models, and basic parallel programming techniques.
- Parallel Programming 2
- This lecture covers the solutions for the consistency problem in parallel programming.
- Small Multiprocessors
- This lecture covers the implementation of small multiprocessors.
- Multiprocessor Interconnect 1
- This lecture covers the design of interconnects for a multiprocessor.
- Multiprocessor Interconnect 2
- This lecture covers the design of interconnects for multiprocessor and network topology.
- Large Multiprocessors (Directory Protocols)
- This lecture covers the motivation and implementation of directory protocol used for coherence on large multiproccesors.
Taught by
David Wentzlaff
Reviews
4.2 rating, based on 6 Class Central reviews
4.7 rating at Coursera based on 3412 ratings
Showing Class Central Sort
-
The content of this class is really fantastic, but unfortunately the lecturer is really terrible. He's obviously a very smart guy, but watching the videos was dreadful. I had so much difficulty not being bored out of my mind during each video, as hi…
-
One of the best courses I have ever taken. A good understanding is given on the internal workings on different types of processor architectures. Unfortunately, no certification is given. I would have paid good money for a certificate and I tried to find the course at Princeton.
-
-