Skip to content

Course Syllabus

Course Information

Course: ECE 3849 Real-Time Embedded Systems
Credits: 3 Credit Hours
Prerequisites: ECE 2049 (recommended)
Meeting Times: Tuesdays & Fridays 10:00-11:50 AM

Location

Lectures: Unity Hall 420
Labs: AK317
Office Hours: AK303
All sessions recorded on Echo360

Instructor

Professor Xinming Huang
Email: xhuang@wpi.edu
Office: AK303
Office Hours: Tuesdays 1:00-3:00 PM

SectionDayTimeLocationTAs
Dx01Thursday2:00-5:00 PMAK317Edwin
Dx02Thursday10:00 AM-1:00 PMAK317Edwin

This course continues the embedded systems sequence by expanding on real-time software and embedded microprocessor system architecture. Students will develop applications that meet strict real-time constraints with limited resources.

Software Development

  • Embedded software development
  • Real-time scheduling algorithms
  • Inter-task communication
  • Software performance optimization

System Architecture

  • CPU architecture and organization
  • Bus interfaces and timing
  • Memory management systems
  • Peripheral interface design

Real-Time Concepts

  • Deterministic execution timing
  • Interrupt controllers and handling
  • Direct memory access (DMA)
  • Multitasking and RTOS

Practical Applications

  • Device driver development
  • Hardware debugging techniques
  • Performance analysis tools
  • System integration methods

Upon successful completion of this course, students will be able to:

  1. Write real-time software that uses hardware support via interrupt controllers and timers, without requiring an operating system
  2. Develop multitasking applications using a real-time operating system (RTOS) with proper synchronization
  3. Analyze and optimize software performance at both instruction and high levels using profiling techniques
  4. Design memory systems using appropriate technologies such as SRAM, DRAM, and NOR/NAND flash
  5. Create peripheral interfaces using memory-mapped, SPI, I2C, USB, and other standards, including device drivers
  6. Debug embedded systems using in-circuit emulators and logic analyzers
  • TI EK-TM4C1294XL evaluation board
  • BOOSTXL-EDUMKII educational BoosterPack
  • Equipment distributed during lab sessions
  • Teams of 1-2 students (no extra credit for single-person teams)

Real-Time Operating Systems for ARM Cortex-M Microcontrollers
Author: J. W. Valvano
Publisher: 2017
ISBN: 978-1466468863

ComponentWeightDetails
Exams40%Midterm (20%) + Final (20%)
Laboratory Work45%Lab 0 (5%) + Labs 1-5 (8% each)
Homework15%Best 5 of 6 assignments (3% each)
Total100%
  • Format: Open book, open notes
  • Technology: Computers and tablets allowed (no internet)
  • Materials: All necessary data sheets included
  • Dates:
    • Midterm: Friday, April 11
    • Final: Wednesday, May 7 (last day of term)
WeekLecture TopicsLab ActivityAssignments
1Introduction, Real-time fundamentalsLab 0: Tutorial-
2Scheduling theory, Response timeLab 0 signoffHW1 due
3Shared data, Concurrency--
4FIFOs, ReentrancyLab 1 signoffHW2 due
5RTOS, Multitasking-HW3 due
6Semaphores, GatesLab 2 signoffMidterm
7Mailboxes, Software timersLab 3 signoffHW4 due
8Memory management, DebuggingLab 4 signoff-
9I/O, DMA, Networks-HW5 due
10CPU architectureLab 5 signoff-
11Assembly, Performance-HW6 due
12Review-Final Exam
Subject to minor adjustments
  • Latency and response time analysis
  • Interrupt-driven programming
  • Priority scheduling basics
  • Rate Monotonic Scheduling (RMS)
  • Earliest Deadline First (EDF)
  • Shared data protection
  • Concurrency and atomicity

Reading: Simon Ch. 4-5, Valvano Ch. 3

  • Lecture attendance strongly recommended (not graded)
  • Lab attendance required for signoffs
  • Lectures recorded on Echo360 for review
  • Class discussions encouraged
  • Homework: No late submissions accepted
  • Lab reports: 20% penalty per day late
  • Lab signoffs: Must be completed during lab sessions or office hours

Students requiring accommodations should contact the Disability Services Office (DSO) early in the term. Exam accommodations will be arranged through the Proctor Center in Unity Hall.

  • Lecture notes posted on Canvas before each class
  • Completed notes posted after lectures
  • Practice exams and solutions provided
  • Review sessions before each exam
  • TAs available during all lab sessions
  • Help sessions three evenings per week
  • Professor office hours for additional support
  • Canvas discussion forums for questions
  • Code Composer Studio (CCS) - Required IDE
  • TI-RTOS - Real-time operating system
  • Hardware debugger - Integrated with CCS
  • Logic analyzer access - For advanced debugging

Success in ECE 3849

This course builds practical skills essential for embedded systems careers. Regular lab attendance, early homework completion, and active participation in help sessions are key to success.

Remember: Start lab work early, attend help sessions when needed, and don’t hesitate to ask questions during office hours.