Dr. Alexander Dean

Dr. Alexander Dean

Electrical and Computer Engineering

Phone: 919-513-4021
Fax: 919-513-7075
Instructor Website
Research Website

ECE 561 Embedded System Design

3 Credit Hours

This course will teach you how to analyze and optimize embedded systems in order to improve:

  • Speed - Raw code speed for a single thread
  • Responsiveness – Latency in a preemptive, multithreaded system
  • Power and Energy – Requirements for CPU and peripheral hardware
  • Memory Use – RAM and ROM requirements
The course addresses both software and hardware considerations. Credit will not be awarded for both ECE 461 and ECE 561. Restricted to CPE and EE Majors.


Embedded System Architectures (NC State ECE 560) or consent of instructor.

Course Objectives

Analysis and optimization of embedded systems for speed, system responsiveness, power/energy use and memory requirements. Emphasis on hands-on implementation.

  • Speed
    • Analysis: Profiling with PC sampling, object code analysis
    • Optimization: Architecture, toolchain tuning, code and communication optimization
  • Responsiveness
    • Analysis: Real-time modeling for response time and schedulability
    • Optimization: Preemption, interrupts vs. tasks, priority assignment
  • Power and Energy Use
    • Analysis: Modeling and measurement
    • Optimizations: Architecture, sleep modes, clock gating, frequency scaling, peripheral features
  • Memory Requirements
    • Analysis: Map files and profiling
    • Optimization: Toolchain tuning, code optimization, architecture

The target platform features a modern microcontroller (Kinetis KL25Z MCU with ARM Cortex-M0+ core) and expansion board (Color LCD with touchscreen, audio, microSD, etc.). This platform is also used in ECE 460/560 (Embedded System Architectures).

Course Requirements

  • 5 Labs
  • 5 Quizzes
  • 1 Project
  • Comprehensive final exam


Alexander Dean, Embedded Systems Fundamentals with ARM Cortex-M based Microcontrollers: A Practical Approach, ARM Education Media, 1st Edition, ISBN 978-1-911531-03-6

This textbook is required unless you have taken ECE 560 Embedded System Architectures, or have previous experience with the NXP KL25Z MCU and FRDM-KL25Z evaluation board (subject to consent of instructor).

Computer and Software Requirements

Please review the minimum computer specifications that NC State University and Engineering Online recommend.

Updated: 10/31/2022