../

2026-01-13 Advanced Embedded Notes

What is embedded?

  • Generally we can think of it as a constrained computing environment

    • The constraint may be memory, power, response time, etc.
  • It is usually application specific like the touch panel of a washing machine

  • It used to be an engineering optimization problem. Some examples are

    • How do we fit this in 32KiB of RAM?
    • How can we make the response time under 300ms
  • But sometime during the early 2000s it began shift towards Interaction

  • We began to view it through a CPS-lens

  • Sensor-Process-Actuate model began to be applied

What makes embedded different?

  • Timing is a crucial part of correctness
    • Exceeding the timing threshold means the operation was incorrect
  • Real world is exceedingly parallel and requires true concurrency

Application

  • IoT
  • Surgical Robots
    • Even though this seems farfetched, they are surprisingly similar to a small IoT micro-controller

Types

We can categorize embedded systems into two types

  • Transformative
    • Acts on each input individually
  • Reactive
    • Parallel
    • Continuous I/O

Types of Timing constraints

  • Hard
    • Unacceptable
  • Firm
    • Not harmful to
  • Soft
    • Value diminishes with each passing time period

Types of Metrics

  • Event Response is measured using latency
  • Prescheduled tasks are measured using jitter