42
Embedded Systems Introduction to Embedded Software C.-Z. Yang http://syslab.cse.yzu.edu.tw/~czyang Sept.-Dec. 2001

Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

Embedded SystemsIntroduction to

Embedded Software C.-Z. Yang

http://syslab.cse.yzu.edu.tw/~czyang

Sept.-Dec. 2001

Page 2: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 2

元智大學資訊工程系

Before we start the course about Embedded Software ……...

• One very unfortunate aspect of embedded systems – The terminology surrounding term is not very consistent.

• Another unfortunate problem– The term embedded systems covers such a broad range of

products.

– Z8 to PowerPC

• One thing you must keep in mind– Embedded software is a field in which no wisdom is

universal.

Page 3: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 3

元智大學資訊工程系

An example project

• Moving map– A handheld device that displays for the user a map of the

terrain around the user’s current position.

– The map display changes as the user and the map device change position.

• Since you are a designer in the project, what will you do?

Page 4: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 4

元智大學資訊工程系

An example

• HP’s Websign (From Pradhan et al., 2001) – http://www.cooltown.hp.com

Page 5: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 5

元智大學資訊工程系

Xerox PARCTab

• From Want and Schilit (IEEE Computer, page 32, August 2001)

• Using a true palm-sized tablet computer with a pen interface linked to a diffuse microcellular infrared network.

Page 6: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 6

元智大學資訊工程系

Page 7: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 7

元智大學資訊工程系

What are the basic requirements?

• Functionality– The system should show major roads and other landmarks

available in standard topographic databases.

– Location-awareness.

• User interface– The screen should have at least 400x600 pixel resolution.

– The device should be controlled by no more than three buttons.

– A menu system should pop up on the screen when buttons are pressed to allow the user to make selections to control the system.

Page 8: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 8

元智大學資訊工程系

More basic requirements

• Performance– The map should scroll smoothly.

– Upon power-up, a display should take no more than one second to appear.

– The system should be able to verify its position an display the current map within 15 seconds.

• Cost– The selling cost (street price) should be no more than

$500.

Page 9: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 9

元智大學資訊工程系

More basic requirements

• Physical size and weight– The device should fit comfortably in the palm of the hand.

• Power consumption– The device should run for at least eight hours on four AA

batteries.

Page 10: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 10

元智大學資訊工程系

Name GPS moving mapPurpose Consumer-grade moving map for driving useInputs Power button, two control buttonsOutputs Black-lit LCD display 400x600Functions Uses 5-receiver GPS system; three user-

selectable resolution; always displays currentlatitude and longitude

Performance Updates screen within 0.25 seconds uponmovement

Manufacturingcost

$100

Power 100mWPhysical sizeand weight

No more than 2”x6”, 12ounces

A draft of the design proposal

• A more detailed chart

Page 11: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 11

元智大學資訊工程系

Finding technical details

• Location sensing technologies

Page 12: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 12

元智大學資訊工程系

Architecture design

• Block diagram

GPSreceiver

Database

RendererSearchEngine

User Interface

Display

Page 13: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 13

元智大學資訊工程系

Refine the block diagram

• Now we can have two separate diagrams– Hardware

– Software

Page 14: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 14

元智大學資訊工程系

What have we learned here?

• No universal wisdom exists in embedded system design

• Design goals (motivations)

• Related product survey

• Requirement specification

• Detailed technical information

• Architecture design

• Hardware/Software refinements

Page 15: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 15

元智大學資訊工程系

A Brief Overview of System Design Techniques

Page 16: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 16

元智大學資訊工程系

In the realistic world

• Now what you have done is just a very small case.

• More real embedded system designs are inherently complex.

Page 17: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 17

元智大學資訊工程系

Design methodologies

• Why?– Design process is important because without it, we cannot

reliably deliver the products we want to create.

• Necessary?– Thinking about the sequence of steps necessary to build

something may seem superfluous.

– If your are doing your work in your basement, having your own work habits is fine.

– However, when several people work together on a project, they need to agree on who will do things and how they will get done.

Page 18: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 18

元智大學資訊工程系

Product metrics

• Typical specifications– Functionality PDA

– Manufacturing cost Retail price < NT $7000

– Performance Must power up within 3 sec

– Power consumption 12 hr for 2 AA batteries

• Three important goals in design process– Time-to-market

– Design cost

– Quality

Page 19: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 19

元智大學資訊工程系

Time-to-market

• Why this goal is so important?– Win the market

– Set customer preferences for future generation

– Short profitable market life

• 3-6 months

– Calendar deadline

Page 20: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 20

元智大學資訊工程系

Design cost

• The costs of designing the system are distinct from manufacturing cost– The cost of engineers’ salaries,

– Computers used in design

– Equipment costs

Page 21: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 21

元智大學資訊工程系

Quality

• Customers not only want their products fast and cheap, they also want them to be right.

• Is this relevant to the design process?– We must address correctness, reliability, and usability

from the beginning of the design job.

– So a high-quality product can be available at the end.

• A good methodology is critical to building systems that work properly.

Page 22: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 22

元智大學資訊工程系

A Real Application Example

Page 23: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 23

元智大學資訊工程系

Loss of the Mars Climate Observer

• In September 1999, the Mars Climate Observer, an unmanned US spacecraft designed to study Mars, was lost.

• It most likely exploded as it heated up after approaching the planet too closely.

Page 24: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 24

元智大學資訊工程系

One of the causes

• Requirements – Design of a flight controller

– Lockheed Martin: values in units of pound force

– JPL: expecting in newtons

Page 25: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 25

元智大學資訊工程系

Design Process Flows

Page 26: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 26

元智大學資訊工程系

Design flows

• The waterfall model

• Not a realistic design process

Page 27: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 27

元智大學資訊工程系

Alternative model

• The spiral model

Page 28: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 28

元智大學資訊工程系

Successive refinement

• In this approach, the system is built several times.

Page 29: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 29

元智大學資訊工程系

Software/hardware codesign

• A simple software/hardware design process

Page 30: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 30

元智大學資訊工程系

Hierarchical design flows

• In fact, many complex embedded systems are themselves built of smaller designs.

Page 31: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 31

元智大學資訊工程系

Concurrent engineering

• When designing a large system along with many people, it is easy to lose track of the complete design flow.

• Concurrent engineering attempts to take a broader approach and optimize the total flow.

Page 32: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 32

元智大學資訊工程系

Concurrent engineering efforts

• Cross-functional teams

• Concurrent product realization

• Incremental information sharing

• Integrated project management

• Early and continual supplier involvement

• Early and continual customer focus

Page 33: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 33

元智大學資訊工程系

An example of concurrent engineering:

Telephone systems

Page 34: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 34

元智大學資訊工程系

Design of PBXs in AT&T

• Goals:– reduce design time

– make other improvements to the end product

• 7 Steps

Page 35: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 35

元智大學資訊工程系

7 Steps - 1

• Step 1:Benchmarking– Shooting for a 40% reduction in design time

AT&T

Competitor

Time for introducing a new product

Page 36: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 36

元智大學資訊工程系

7 Steps - 2

• Breakthrough improvement– Identify the factors that would influence their effort.

– Three major factors

• increased partnership between design and manufacturing

• continued existence of the basic organization of design labs and manufacturing

• support of manages at least two levels above the working level

Steering committee Project office Core team

Page 37: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 37

元智大學資訊工程系

7 Steps - 3

• Characterization of the current process– The core team built flowcharts and used other techniques

to understand the current product development process.

• Several problems– Too many tasks were performed sequentially

– Groups tended to focus on intermediate milestones related to their narrow job descriptions

– Too much time was spent waiting in queues

– Too many groups had their own databases

Page 38: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 38

元智大學資訊工程系

7 Steps - 4

• Create the target process

Page 39: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 39

元智大學資訊工程系

7 Steps - 4

• New target process

Page 40: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 40

元智大學資訊工程系

7 Steps - 5

• Verify the new process– A pilot product development project to test the new

process

– Some challenge were identified.

Page 41: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 41

元智大學資訊工程系

7 Steps - 6 and 7

• Implement across the product lines– After the pilot project, the new methodology was rolled

out across the product lines.

• Measure results and improve– The team found that product development time had been

reduced from 18-30 months to 11 months.

Page 42: Embedded Systems Introduction to Embedded Software C.-Z. Yang czyang Sept.-Dec. 2001

[email protected] Embedded Systems - Introduction to Embedded Software 42

元智大學資訊工程系

What is Embedded Software?