Embedded systems

Posted on Jun 8, 2022

Small systems dedicated to a particular task.

Dependability

  • Reliability(t): probability of system still working given it worked at t=0.
  • Maintainability(d): probability of system working d time units after a fault occurred.
  • Availability(t): Probability of system working at time t.
  • Safety: No harm caused by system.
  • Security: Communication kept confidential.

Efficiency

  • Must consider Code size, Runtime, Weight, Cost and Energy efficiency.
  • Power and energy efficiency are particularly important - they tend to constrain embedded systems
    • Minimising power important for PSU design, short term cooling, voltage regulation, etc.
    • Energy is the integral of power. Minimising energy important for device longevity, low temperatures, cooling, energy cost (eg. costs a lot to get energy in space), battery capacities.

Types of embedded processors

  • ASIC (Application specific integrated circuit): Most performant, full custom etched chip. Long design times, expensive, inflexible once made.
  • FPGA (Field programmable gate array): Next most performant, has programmable connections and interconnects, can be a ‘hybrid’ system containing a multipurporse processsor.
  • DSP (Digital signal processors): Specialised to a certain type of task (digital signal processing).
  • MPU: Multipurpose microprocessors that we all know and love.

Dynamic power management

  • Can reduce power use by forcing the processor to idle or sleep for a period of time.
  • Voltage scaling: Power proportional to voltage squared. This means that increasing voltage quadratically increases power consumption, whilst only linearly increasing algorithm run speed.

Embedded memory

  • Often, no caches / very little heirarchy are used, and instead a simple scratch pad memory is used. This is simple in hardware and uses less energy for memory accesses.

Power consumption of different caching models, incl. scratchpad memory.

All topics ⟶