Chapter1a Embedded System Intro
Chapter1a Embedded System Intro
Spring 2019
Victor P. Nelson
Text: “Computers as Components, 4th Edition”
Prof. Marilyn Wolf (Georgia Tech)
Course Web Page:
http://www.eng.auburn.edu/~nelsovp/courses/elec5260_6260/
Course Topics (1)
Embedded system design and implementation
The embedded computing space – what is “embedded computing”?
System design methodologies (including UML)
Platforms: system-on-chip (SoC), microcontrollers, FPGAs,
networks.
CPUs for embedded systems (ARM, DSP)
ARM Cortex-M4 and “Discovery Kit” development board
System architectures, applications, methodologies.
Hardware, software, system.
Hierarchical software design for embedded systems
(continued)
Course Topics (continued)
Input/output devices, interrupts, timing
Sensors, data acquisition, and control systems
Real-time operating systems for embedded systems
Internet of Things, IoT networks
Automotive and Aerospace systems
Standards-based design.
Case studies
constraints
Constraints
Reliability in harsh
environment
Cost
Weight
Embedding a computer
output “device”
input “device”
CPU
mem
embedded
computer
Options for Building Embedded Systems
Implementation Design Unit Upgrades Size Weight Power System
Cost Cost & Bug Speed
Fixes
Dedicated Hardware
ASIC high very low hard tiny - 1 die very low low extremely
($500K/ fast
mask set)
Programmable logic – low mid easy small low medium to very fast
FPGA, PLD high
med. moderate
Generic Hardware
memory + peripherals
Microcontroller (int. low mid to low easy small low medium slow to
memory & moderate
peripherals)
Embedded PC low high easy medium moderate medium to fast
to high high
Microprocessors vs custom circuits?
Microprocessors can be very efficient:
Use same logic to perform many different functions.
Create families of products.
Create upgradable systems.
Alternatives:
Custom System on Chip (SoC) implemented with ASICs, field-
programmable gate arrays (FPGAs), etc.
May or may not include microprocessor
“Platform” FPGA – implement one or more microprocessor
hard/soft cores, with embedded memory and programmable
logic
Microprocessor options
Microcontroller: includes I/O devices, on-chip memory.
Digital signal processor (DSP): microprocessor
optimized for digital signal processing.
Application-Specific Processor (ASP): instruction set
& architecture tailored to application (graphics, network,
etc.)
Soft core: microcontroller or CPU model to be synthesized
into a system on chip (SoC)
Hard core: microcontroller or CPU implemented as part
of a SoC, “platform FPGAs”
Early history
Late 1940’s: MIT Whirlwind computer was designed for
real-time operations.
Originally designed to control an aircraft simulator.
HP-35 calculator used several chips to implement a
microprocessor in 1972.
First microprocessor was Intel 4004 in early 1970’s.
4-bit microcontrollers created in the 1970’s
8-bit microcontrollers in mid 1970’s
and so on …
Early history, continued.
Automobiles have used microprocessor-based engine
controllers starting in 1970’s.
Control fuel/air mixture, engine timing, etc.
Multiple modes of operation: warm-up, cruise, hill climbing, etc.
Provides lower emissions, better fuel efficiency.
High-performance 32- and 64-bit microcontrollers enable
movement of functions from HW to SW
Radio.
Multimedia.
Communications
Complex control.
Networks of lower-level microcontrollers distribute tasks
Automotive embedded systems
High-end automobile may have dozens of microprocessors:
8-bit microcontroller checks seat belt;
Microcontrollers run dashboard devices;
16/32-bit microprocessor controls engine.
Network of microcontrollers control antilock brakes
Entertainment systems
Navigation systems
Collision avoidance
Autonomous operation (self-driving)
BMW 850i brake & stability control system
Anti-lock brake system (ABS)
Pump brakes to reduce skidding.
Automatic stability control + traction (ASC+T)
Control engine to improve stability (throttle, ignition
timing, differential brake, gears).
ABS and ASC+T communicate.
ABS was introduced first---needed to interface to existing ABS
module.
Diagram – next slide
BMW 850i, cont’d.
sensor sensor
brake brake
hydraulic
ABS
pump
brake brake
sensor sensor
High-end embedded system characteristics
Complex algorithms: high performance & functionality.
High data rates
Large data structures
Varied user/device interfaces.
Multiple tasks, heterogeneous.
Real-time operation/precise timing.
Low-power operation.
Safe, reliable, secure operations.
Manufacturable, sustainable, cost-effective.