Lecture 1
Lecture 2
The Microprocessor27:20
The Instruction Set Architecture (ISA)21:02
Calling a Procedure7:23
Running a Program (CALL)9:12
Measuring Performance13:52
Lecture 3
From C to Assembly11:13
Basic CPU Operations00:17:27
Variables and Memory Access00:25:49
Control Flow00:08:58
Procedure Calls00:20:39
RISC-V Features and Extensions30:06
The Build Process (CALL)00:20:00
Lecture 4
On-Chip Interconnect12:55
Connecting with Peripherals8:20
Simple Bus Operation21:28
Higher Performance Buses8:20
Lecture 5
Communicating with Peripherals (or “How to build a router”)21:28
Offloading the CPU15:06
Dealing with Faster Interfaces21:28
More Offloading00:12:22
Memory21:28
Finishing our Design10:06
Lecture 6
The Memory Hierarchy9:32
Cache Organization12:55
Tradeoffs in Cache Design13:52
Virtual Memory11:10
Practical Paging15:06
The Translation Lookaside Buffer (TLB)21:28
Lecture 7
Operating Systems00:18:23
The Kernel11:21
Interrupt Handling14:35
Scheduling (Processes and Threads)20:56
Synchronization and Protection35:21
Real-Time Operating Systems (RTOS)35:21
What is an Embedded System?