35
Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Embed Size (px)

Citation preview

Page 1: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Embedded Computing Overview

Dr. Curtis Nelson

Engr355 – Embedded Systems Design

Walla Walla University

Page 2: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Lecture Objectives

• Provide a general overview of Embedded Systems

• Give examples of Embedded Systems

• Show current statistics of Embedded Systems

Page 3: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Embedded Systems Are Everywhere!

SmartPenTire Pressure Sender

Page 4: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

What Is an Embedded System?

• An embedded system is a computer system designed to perform one or a few dedicated functions often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal computer, is designed to be flexible and to meet a wide range of end-user needs. Embedded systems control many devices in common use today.

-- Wikipedia

Page 5: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Examples of Embedded Systems

• Air conditioner• ATM machine• Battery charger• Digital camera• DVD player• Fax machine• Home security system• Mobile phone• Modem

• Navigation system• PDA• Photocopier• Printer• Router• Scanner• TV• Video game console• Wearable computer

Page 6: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Embedded Automotive

• More than 30% of the cost of a car is now in Electronics• 90% of all innovations will be based on electronic systems

Slide courtesy of Alberto Sangiovanni-Vincentelli

Page 7: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

History (1/3)

• In the earliest years of computers in 1930 – 40s, computers were sometimes dedicated to a single purpose task.

• One of the first recognizably modern embedded systems was the Apollo Guidance Computer, developed by Charles Stark Draper at the MIT Instrumentation Laboratory.

Page 8: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

History (2/3)

• Since early applications in the 1960s, embedded systems have come down in price and there has been a dramatic rise in processing power and functionality. The first microprocessor for example, the Intel 4004 was designed for calculators and other small systems but still required many external memory and support chips.

Page 9: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

History (3/3)

• By the mid-1980s, most of the common previously external system components had been integrated into the same chip as the processor and this modern form of the microcontroller allowed an even more widespread use, which by the end of the decade were the norm rather than the exception for almost all electronics devices.

Page 10: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Attributes of Embedded Computing

• Real-time operation

• Sensing & control

• Low cost

• Low power consumption

• Dependable

• Autonomous

Page 11: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Characteristics (1/4)

• Special-purpose– Typically designed to

execute a single program, repeatedly

– It used to be single-purpose

– Now, multi-functioned, but single-purpose

– Low cost and efficient

Page 12: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Characteristics (2/4)

• Tightly constrained– Low cost– Simple systems– Fewer components – Performs functions as

slow as allowable– Minimum power

Page 13: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Characteristics (3/4)

• Reactive and real-time– Reactive: Continually

reacts to external events– Real-time: Must

compute certain results in real-time

Page 14: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Characteristics (4/4)

• Hardware and software co-exist– The software written for

embedded systems is often called firmware

– It is stored in read-only memory or Flash memory chips rather than a disk drive

Page 15: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Operating System

• Usually, there is no operating system in simple systems.• Embedded operating systems are designed to be very compact

and efficient, forsaking many functions that non-embedded computer operating systems provide.

Page 16: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

System on a Chip (SoC)

• Integrating all components of a computer or other electronic systems into a single integrated circuit (chip).

• May contain digital, analog, mixed-signal, and often radio-frequency functions – all on one chip.

• A typical application is in a cell or smart phone.

Page 17: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Typical Microcontroller Architecture

Page 18: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Software Development

• The software development process can be represented by lifecycle, also called a waterfall or linear incremental model.

• Analysis, design, implementation, and maintenance are four stages of this model.

Page 19: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Development Tools

• Embedded system designers use compilers, assemblers, and debuggers to develop embedded system software. However, they may also use some more specific tools:– In circuit debuggers or emulators.

– Utilities to add a checksum or CRC to a program, so the embedded system can check if the program is valid.

– For systems using digital signal processing, developers may use a math workbench such as MATLAB, MathCad, or Mathematica to simulate the mathematics. They might also use libraries for both the host and target which eliminates developing DSP routines.

– An embedded system may have its own special language or design tool, or add enhancements to an existing language such as Forth, C, or Basic.

– Another alternative is to add a real-time operating system or embedded operating system.

Page 20: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

User Interface

• Embedded systems range from no user interface at all — dedicated only to one task — to full user interfaces similar to desktop operating systems in devices such as tablets or smart phones.

Page 21: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Remember Your Childhood?

Page 22: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Lego Mindstorms NXT

• Programmable Logic Device• Lego sets combining programmable bricks with electric

motors, sensors, Lego bricks, and Lego Technic pieces (such as gears, axles, and beams)

• First released in 1998• Created by Lego and MIT Media Laboratory

Page 23: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Lego Mindstorms NXT Technical Specs

• 32-bit ARM7 microcontroller • 256 Kbytes FLASH, 64 Kbytes RAM • 8-bit AVR microcontroller • 4 Kbytes FLASH, 512 Byte RAM • Bluetooth wireless communication (Bluetooth Class II V2.0

compliant) • USB full speed port (12 Mbit/s) • 4 input ports, 6-wire cable digital platform (One port

includes a IEC 61158 Type 4/EN 50 170 compliant expansion port for future use)

• 3 output ports, 6-wire cable digital platform • 100 x 64 pixel LCD graphical display • Loudspeaker - 8 kHz sound quality. Sound channel with 8-

bit resolution and 2-16 KHz sample rate. • Power source: 6 AA batteries

Page 24: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Lego Mindstorms NXT Features

• Touch Sensor, Sound Sensor, Light Sensor, Ultrasonic Sensor

• Servo motors• Bluetooth, USB• NXT Software• Gears, axles, and beams• Lego bricks

Page 25: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Crafts on Lego NXT

Page 26: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

What the Customer Wanted

Page 27: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Embedded Dog

Page 28: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Processor Bit Size in New Embedded Designs

0.00% 10.00% 20.00% 30.00% 40.00% 50.00% 60.00%

4-bit

8-bit

16-bit

32-bit

64-bit

Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey

Page 29: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

32-64 bit Annual Processor Sales

0.00% 5.00% 10.00% 15.00% 20.00% 25.00% 30.00% 35.00% 40.00%

PowerPC

SuperH

MIPS

X86

ARM

Processor Sales Volume

Based on 2002 sales data

Page 30: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Processors Used in New Embedded Designs

Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey

0.00% 10.00% 20.00% 30.00% 40.00% 50.00% 60.00%

More Than 5

3-5 Processors

2 Processors

1 Processor

Page 31: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Use of Real-Time OS Kernels in New Embedded Designs

0.00% 5.00% 10.00% 15.00% 20.00% 25.00% 30.00% 35.00% 40.00% 45.00%

Open Source

Internally Developed

None

Commercial OS

Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey

Page 32: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Commercial Operating Systems Used in New Embedded Designs

0.00% 5.00% 10.00% 15.00% 20.00% 25.00% 30.00%

Others

Palm

Green Hills

Symbian

Wind River

Microsoft Emb.

Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey

Page 33: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Programming Languages Used in New Embedded Designs

0.00% 10.00% 20.00% 30.00% 40.00% 50.00% 60.00% 70.00%

Others

Assembly

Java

C#

C++

C

Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey

Page 34: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

References

• Embedded Systems: Architecture, Programming, and Design by Raj Kamal

• Embedded Systems Handbook by Richard Zurawski• Wikipedia.org• Lego.com

Page 35: Embedded Computing Overview Dr. Curtis Nelson Engr355 – Embedded Systems Design Walla Walla University

Summary

• Provided a general overview of Embedded Systems

• Gave examples of Embedded Systems

• Showed current statistics of Embedded Systems