Advanced Embedded Computer Architecture
This graduate-level course, EMB 501, delves into the advanced architectural concepts critical for high-performance embedded systems design. Students will gain a deep understanding of modern processor pipelines, cache coherence mechanisms, and sophisticated memory hierarchies, exploring their impact on real-time performance and power efficiency. The course emphasizes the practical implications of these architectural choices in resource-constrained environments. Furthermore, the curriculum covers industry-standard bus fabrics like AMBA/AXI for efficient inter-component communication, and examines the complexities of multicore microcontrollers. A significant portion of the course is dedicated to performance measurement, profiling, and tuning techniques specifically tailored for embedded targets, enabling students to optimize system throughput and responsiveness.
Course outline
Lectures, virtual labs, and graded assignments — completed in your browser.
Syllabus
Week 1: Introduction to Advanced Embedded Architectures Week 2: Processor Pipelining and Instruction-Level Parallelism Week 3: Cache Memory Design and Performance Analysis Week 4: Advanced Memory Hierarchies and Virtual Memory Week 5: Memory Management Units (MMUs) and Protection Week 6: Bus Fabrics: AMBA AXI Protocol Deep Dive Week 7: Interconnects and System-on-Chip (SoC) Design Week 8: Multicore Microcontrollers: Architectures and Synchronization Week 9: Real-Time Operating Systems (RTOS) and Multicore Scheduling Week 10: Performance Measurement and Profiling Tools Week 11: Performance Tuning Techniques for Embedded Targets Week 12: Power Management and Energy Efficiency in Embedded Systems Week 13: Hardware Accelerators and Custom Logic Integration Week 14: Final Project Presentations and Advanced Topics