ECE571: Advanced Microprocessor-Based Design

University of Maine ECE

Fall 2020

Instructor: Vincent Weaver

Due to the unusual circumstances this semester, much of this is subject to change.

The class meeting time is M/W/F 12:00pm-12:50pm.
The meeting place is Barrows 228. The lectures will also be streamed/recorded.


Syllabus

ece571_2020f.pdf

Official Course Description

Includes techniques for developing software and hardware for microprocessor-based systems, computer aided design using a multistation logic development system, use of components commonly found in microprocessor-based systems. Lec 2, Lab 3. (Spring.)

What We'll Do this Semester

We will investigate modern high-performance and embedded systems, with a focus on ARM and x86 processors. We will investigate hardware and software design on such systems, evaluating based on performance, power, energy, and code density.

Class Schedule

MondayWednesdayFriday
Week 1 31 August
Introduction
Lecture 1 Notes
2 September
Performance
Lecture 2 Notes
Reading: Performance -- P&H 2007 Chapter 4 or P&H RISC-V Chapter 1
4 September
Using perf
Lecture 3 Notes
Reading: Perf Zine
Week 2 7 September
Labor Day
9 September
Simple Microprocessor Background
Lecture 4 Notes
Reading: CPUs -- P&H 2007 Chapter 2 or P&H RISC-V Chapter 2
11 September
Pipelined Processors
Lecture 5 Notes
Reading: Pipelines and Super-Scalar -- P&H 2007 Chapter 6 or P&H RISC-V Chapter 4
Week 3 14 September
Parallel Pipelines: Super-Scalar, OoO
Lecture 6 Notes
Reading: P&H RISCV Chapter 4.11
16 September
Pipeline Examples, Multicore, Multithread
Lecture 7 Notes
Reading: P&H RISCV Chapter 4.11
18 September
Pipeline Examples, Power and Energy
Lecture 8 Notes
Reading: H&P Chapter 1.5
Week 4 21 September
Power and Energy Measurement
Lecture 9 Notes
23 September
Static Branch Predictors
Lecture 10 Notes
Reading: H&P Chapter 3.3
25 September
Dynamic Branch Predictors
Lecture 11 Notes
Week 5 28 September
Branch Predictor Power, Caches
Lecture 12 Notes
Reading: H&P Chapter 2.1, Appendix B
30 September
HW3 Review, More Caches
Lecture 13 Notes
Reading: H&P Chapter 2.1, Appendix B
2 October
Even More Caches
Lecture 14 Notes
Week 6 5 October
Oh No More Caches
Lecture 15 Notes
7 October
Cache Wrapup
Lecture 16 Notes
9 October
Prefetchers
Lecture 17 Notes
Week 7 12 October
Indigenous Peoples Day
14 October
Virtual Memory Background
Lecture 18 Notes
16 October
Virtual Memory
Lecture 19 Notes
Week 8 19 October
Virtual Memory and Caches
Lecture 20 Notes
21 October
Cache Security/Meltdown/Spectre
Lecture 21 Notes
23 October
CPU Energy
Lecture 22 Notes
Week 9 26 October
DRAM
Lecture 23 Notes
28 October
DRAM continued / Midterm Review
Lecture 24 Notes
30 October
Midterm Exam
Week 10 2 November
Modern DRAM/HBM/NVRAM
Lecture 25 Notes
4 November
DRAM Power/Security Concerns
Lecture 26 Notes
6 November
DRAM, System RAPL papers
Lecture 27 Notes
Week 11 9 November
System Component Power
Lecture 28 Notes
11 November
Veterans Day
13 November
OS Power / AMD Zen2 Paper
Lecture 29 Notes
Week 12 16 November
Hard Disks
Lecture 30 Notes
18 November
SSD
Lecture 31 Notes
20 November
ARM / Intel CPU Papers
Lecture 32 Notes
Week 13 23 November
Virtualization
Lecture 33 Notes
25 November
Thanksgiving -- Beginning of online instruction
27 November
Thanksgiving
Week 14 30 November
GPU Background
Lecture 34 Notes
2 December
GPUs
Lecture 35 Notes
4 December
GPU Readings
Lecture 36 Notes
Week 15 7 December
PCIe
Lecture 37 Notes
9 December
Project Presentations
11 December
Project Presentations

Homework Assignments


Assigned Readings


Project


Videos

The lecture videos can be found here

Optional Reading


Back to my homepage
Last updated 7 December 2020, 23:54