ECE571: Advanced Microprocessor-Based Design

University of Maine ECE

Fall 2024

Instructor: Vincent Weaver
The class meeting time is Mon/Wed/Fri 12:00pm-12:50pm.
The meeting place is Barrows 130.


Syllabus

ece571_2024f.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 2 September
No Class, Labor Day
4 September
Introduction/Performance
Lecture 1 Notes
6 September
Using perf
Lecture 2 Notes
Optional Reading: Performance -- P&H 2007 Chapter 4 or P&H RISC-V Chapter 1
Optional Reading: Perf Zine
Week 2 9 September
Simple Microprocessor: ISA/RISC
Lecture 3 Notes
Optional Reading: CPUs -- P&H 2007 Chapter 2 or P&H RISC-V Chapter 2
11 September
Simple Microprocessor: Other Features
Lecture 4 Notes
13 September
Advanced Microprocessors (Pipelines, Super-Scalar)
Lecture 5 Notes
Optional Reading: Pipelines and Super-Scalar -- P&H 2007 Chapter 6 or P&H RISC-V Chapter 4
Week 3 16 September
Advanced Microprocessors (SIMD, CMP, SMT)
Lecture 6 Notes
Optional Reading: P&H RISCV Chapter 4.11
18 September
Advanced Microprocessors (Out-of-Order)
Lecture 7 Notes
20 September
Paper Discussion, Power and Energy Measurement
Lecture 8 Notes
Optional Reading: H&P Chapter 1.5
Week 4 23 September
System Power, CMOS Power Equation
Lecture 9 Notes
25 September
Static Branch Predictors
Lecture 10 Notes
Optional Reading: H&P Chapter 3.3
27 September
Dynamic Branch Predictors/Value Prediction
Lecture 11 Notes
Week 5 30 September
Caches
Lecture 12 Notes
Optional Reading: H&P Chapter 2.1, Appendix B
2 October
More Caches
Lecture 13 Notes
4 October
Two Cache Examples
Lecture 14 Notes
Week 6 7 October
Cache Coherency, SW Prefetch
Lecture 15 Notes
9 October
HW4 Review, Hardware Prefetch
Lecture 16 Notes
11 October
Prefetch wrapup / Cache Optimization
Lecture 17 Notes
Week 7 14 October
Fall Break
16 October
Engineering Job Fair
18 October
Virtual Memory
Lecture 18 Notes
Week 8 21 October
Virtual Memory + Caches
Lecture 19 Notes
23 October
VM Wrapup
Lecture 20 Notes
25 October
Cache Security/Meltdown/Spectre
Lecture 21 Notes
Week 9 28 October
CPU Energy / Midterm Review
Lecture 22 Notes
30 October
Midterm Exam
1 November
DRAM
Lecture 23 Notes
Week 10 4 November
SDRAM/DDR
Lecture 24 Notes
6 November
Advanced DRAM
Lecture 25 Notes
8 November
DRAM Papers
Lecture 26 Notes
Week 11 11 November
No Class, Veterans' Day
13 November
Future of RAM
Lecture 27 Notes
15 November
Intel Papers
Lecture 29 Notes
Week 12 18 November
Top500 BoF Assignment
(no class notes)
20 November
No Class
(Supercomputing)
22 November
Supercomputing Recap, ARM Reading
Lecture 30 Notes
Week 13 25 November
AMD Reading, Magnetic Hard Disks
Lecture 31 Notes
Lecture 28 Notes
27 November
Thanksgiving
29 November
Thanksgiving
Week 14 2 December
SSD/Flash Storage
Lecture 32 Notes
4 December
GPU Background
Lecture 33 Notes
6 December
GPUs
Week 15 9 December
NVIDIA GPU Readings
11 December
Project Presentations
13 December
Project Presentations

Homework Assignments


Assigned Readings


Project


Optional Reading


Back to my homepage
Last updated 5 December 2024, 13:35