Sign in or create a free account to continue.

Real-Time Systems

Designing and verifying systems that must meet deadlines in the worst case: hard, firm and soft timing requirements and end-to-end budgets, periodic, sporadic and aperiodic task models with utilization and hyperperiods, cyclic executives and time-triggered design, rate-monotonic and deadline-monotonic priorities with the Liu and Layland bound and exact response-time analysis, earliest deadline first and the processor demand criterion, real-time kernel internals with context switching, absolute delays, interrupts and overheads, priority inversion, priority inheritance and ceiling protocols with blocking analysis, aperiodic servers and mixed-criticality scheduling, partitioned and global multicore scheduling, worst-case execution time by measurement and static analysis, CAN response-time analysis and time-sensitive networking, and verification under functional safety standards, with runnable Python schedulers and analyses, C listings and a capstone timing sign-off for a roadside traffic sensor.

CMP-440 Year 4 3 credits 12 lessons · 4 h 13 min ▶ Video lessons coming soon

Offered by HSM University · Computer Engineering

This is the American version of this course. See the Canadian version.

What you'll learn

  • Define real-time correctness, classify hard, firm and soft deadlines, specify timing constraints with their sources, and explain why worst-case analysis is needed beyond testing.
  • Model real-time workloads as periodic, sporadic and aperiodic tasks, compute utilization, density and hyperperiod, and calculate end-to-end latency of task chains.
  • Design cyclic executives by choosing frame sizes that satisfy the frame conditions, building schedule tables, slicing jobs and explaining time-triggered architectures.
  • Assign rate-monotonic and deadline-monotonic priorities, apply the Liu and Layland and hyperbolic bounds, and compute worst-case response times by response-time analysis.
  • Explain the optimality of earliest deadline first, apply U ≤ 1 and the processor demand criterion, compare EDF with fixed priority and describe overload behavior.
  • Describe the internal architecture of a real-time kernel, including task control blocks, constant-time scheduling, context switching, absolute delays and interrupt handling, and include kernel overheads in the analysis.
  • Explain priority inversion with the Mars Pathfinder case, compare priority inheritance and ceiling protocols, and compute blocking terms for response-time analysis.
  • Serve aperiodic work with background service and polling, deferrable, sporadic and bandwidth servers, and analyze dual-criticality systems with the AMC response-time bound.
  • Compare partitioned and global multicore scheduling, explain the Dhall effect, partition task sets with bin-packing heuristics and identify multicore interference channels.
  • Determine worst-case execution times by measurement and static analysis, apply IPET with flow facts, and design code and hardware for analyzable timing.
  • Analyze CAN message response times with stuffing, blocking and jitter, describe time-sensitive networking mechanisms and compute end-to-end latency across tasks and networks.
  • Plan timing verification across the V-model, relate it to IEC 61508, ISO 26262, DO-178C and related standards, build a timing safety argument and complete a system timing sign-off.

Course content

12 lessons · 4 h 13 min total · final exam

  1. 1 What makes a system real-time 21 min · quiz
  2. 2 Task models for real-time systems 22 min · quiz
  3. 3 Cyclic executives and time-triggered design 20 min · quiz
  4. 4 Fixed-priority scheduling and response-time analysis 20 min · quiz
  5. 5 Earliest deadline first and dynamic priorities 20 min · quiz
  6. 6 Real-time operating system architecture 20 min · quiz
  7. 7 Resource sharing and priority inversion 23 min · quiz
  8. 8 Aperiodic work, servers and mixed criticality 23 min · quiz
  9. 9 Multicore real-time scheduling 20 min · quiz
  10. 10 Timing analysis and worst-case execution time 21 min · quiz
  11. 11 Real-time communication: CAN and time-sensitive networking 21 min · quiz
  12. 12 Verification, safety standards and capstone design 22 min · quiz
  13. E Final exam 20 questions

Requirements

Recommended background. You can start any course at any time.

Description

Designing and verifying systems that must meet deadlines in the worst case: hard, firm and soft timing requirements and end-to-end budgets, periodic, sporadic and aperiodic task models with utilization and hyperperiods, cyclic executives and time-triggered design, rate-monotonic and deadline-monotonic priorities with the Liu and Layland bound and exact response-time analysis, earliest deadline first and the processor demand criterion, real-time kernel internals with context switching, absolute delays, interrupts and overheads, priority inversion, priority inheritance and ceiling protocols with blocking analysis, aperiodic servers and mixed-criticality scheduling, partitioned and global multicore scheduling, worst-case execution time by measurement and static analysis, CAN response-time analysis and time-sensitive networking, and verification under functional safety standards, with runnable Python schedulers and analyses, C listings and a capstone timing sign-off for a roadside traffic sensor.

Part of the Engineering stream, typically taken in year 4.