Week |
Date |
Slides |
Exercises |
1 |
19.09 |
-- NO LECTURE -- |
-- NO LECTURE -- |
2 |
25.09 |
Case Study 1
ARM Architecture and the Lab's Hardware (BCM 2836 on a Raspberry Pi 2)
|
Minimal ARM Setup, Linking, GPIO control
|
3 |
02.10. |
Cross-Development, Programming Language Oberon, Type Guards, Linking and Loading
|
Linking, Loading and Unloading
|
4 |
09.10. |
Virtual Memory Management
|
Using the MMU to Balance Heap and Stack
|
5 |
16.10. |
IRQs and Scheduling
|
Watchdog
|
6 |
23.10. |
Serial Communication, SPI
|
SPI Driver
|
7 |
30.10. |
Case Study 2: A2
Active Oberon Computing Model, A2 Kernel, Context Switches and Activity Management
|
Debugging a Kernel. Recursive Locks Lab in CHN E 42
|
8 |
06.11. |
A Lock-Free Kernel: Lock-freedom, Memory-model, Contention and backoff, Memory re-use and ABA problem, Pointer Tagging and Hazard Pointers, Non-blocking (scheduling) Queue
|
Variations of a blocking and a lock-free stack and the ABA problem.
|
9 |
13.11. |
Cooperative Multitasking and Thread Local Storage.
|
Lock free implementation of a Mutex (RPI / x86)
|
10 |
20.11. |
Case Study 3: RISC (Lectures by Paul Reed)
Custom-Designed Single Processor: The RISC architecture
|
Verilog Blinky, RISC0, SPI 7-Segment Display, Used Instructions Lab in CHN E 42
|
11 |
27.11. |
Project Oberon on RISC
|
Screensaver, Wireless Network Traffic Monitor, Network Time Client
|
12 |
04.12. |
Software-Hardware Codesign: An example (Mouse Driver). Video (VGA).
|
Network Time Client ctd.
|
13 |
11.12. |
Case Study 4: Active Cells
Custom-Designed Systems On Chip. A Programming Model
|
Pitch detector (tuner) hardware Lab in CHN E 42
|
14 |
18.12. |
[Active Cells ctd. Influential Message Passing Compute Models and Frameworks. Wrap up.]
NOT COVERED IN CLASS
|
(ex. 13 ctd)
|