UNIX

Document Sample
UNIX Powered By Docstoc
					    Embedded Systems
    Introduction to Embedded
    Software


       C.-Z. Yang
http://syslab.cse.yzu.edu.tw/~czyang

    Sept.-Dec. 2001
                 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.
czyang@acm.org              Embedded Systems - Introduction to Embedded Software   2
                                            元智大學資訊工程系
                 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?




czyang@acm.org              Embedded Systems - Introduction to Embedded Software   3
                                            元智大學資訊工程系
                 An example

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




czyang@acm.org             Embedded Systems - Introduction to Embedded Software   4
                                           元智大學資訊工程系
                 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.




czyang@acm.org         Embedded Systems - Introduction to Embedded Software   5
                                       元智大學資訊工程系
czyang@acm.org   Embedded Systems - Introduction to Embedded Software   6
                                 元智大學資訊工程系
                 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.
czyang@acm.org               Embedded Systems - Introduction to Embedded Software   7
                                             元智大學資訊工程系
                 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.




czyang@acm.org               Embedded Systems - Introduction to Embedded Software   8
                                             元智大學資訊工程系
                 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.




czyang@acm.org              Embedded Systems - Introduction to Embedded Software   9
                                            元智大學資訊工程系
                 A draft of the design proposal

      • A more detailed chart
           Name          GPS moving map
           Purpose       Consumer-grade moving map for driving use
           Inputs        Power button, two control buttons
           Outputs       Black-lit LCD display 400x600
           Functions     Uses 5-receiver GPS system; three user-
                         selectable resolution; always displays current
                         latitude and longitude
           Performance Updates screen within 0.25 seconds upon
                         movement
           Manufacturing $100
           cost
           Power         100mW
           Physical size No more than 2”x6”, 12ounces
           and weight


czyang@acm.org               Embedded Systems - Introduction to Embedded Software   10
                                             元智大學資訊工程系
                 Finding technical details

      • Location sensing technologies




czyang@acm.org           Embedded Systems - Introduction to Embedded Software   11
                                         元智大學資訊工程系
                 Architecture design

      • Block diagram


                     GPS                     Search
                                                                               Renderer     Display
                   receiver                  Engine




                                                                           User Interface
                   Database




czyang@acm.org                Embedded Systems - Introduction to Embedded Software                    12
                                              元智大學資訊工程系
                 Refine the block diagram

      • Now we can have two separate diagrams
            – Hardware
            – Software




czyang@acm.org           Embedded Systems - Introduction to Embedded Software   13
                                         元智大學資訊工程系
                 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
czyang@acm.org          Embedded Systems - Introduction to Embedded Software   14
                                        元智大學資訊工程系
                 A Brief Overview of System Design
                            Techniques




czyang@acm.org            Embedded Systems - Introduction to Embedded Software   15
                                          元智大學資訊工程系
                 In the realistic world

      • Now what you have done is just a very small
        case.
      • More real embedded system designs are
        inherently complex.




czyang@acm.org            Embedded Systems - Introduction to Embedded Software   16
                                          元智大學資訊工程系
                 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.
czyang@acm.org              Embedded Systems - Introduction to Embedded Software   17
                                            元智大學資訊工程系
                  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


czyang@acm.org                Embedded Systems - Introduction to Embedded Software    18
                                              元智大學資訊工程系
                 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




czyang@acm.org              Embedded Systems - Introduction to Embedded Software   19
                                            元智大學資訊工程系
                 Design cost

      • The costs of designing the system are
        distinct from manufacturing cost
            – The cost of engineers’ salaries,
            – Computers used in design
            – Equipment costs




czyang@acm.org               Embedded Systems - Introduction to Embedded Software   20
                                             元智大學資訊工程系
                 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.

czyang@acm.org               Embedded Systems - Introduction to Embedded Software   21
                                             元智大學資訊工程系
                 A Real Application Example




czyang@acm.org         Embedded Systems - Introduction to Embedded Software   22
                                       元智大學資訊工程系
                 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.




czyang@acm.org           Embedded Systems - Introduction to Embedded Software   23
                                         元智大學資訊工程系
                 One of the causes

      • Requirements
            – Design of a flight controller
            – Lockheed Martin: values in units of pound force
            – JPL: expecting in newtons




czyang@acm.org              Embedded Systems - Introduction to Embedded Software   24
                                            元智大學資訊工程系
                 Design Process Flows




czyang@acm.org      Embedded Systems - Introduction to Embedded Software   25
                                    元智大學資訊工程系
                 Design flows

      • The waterfall model




      • Not a realistic design process
czyang@acm.org          Embedded Systems - Introduction to Embedded Software   26
                                        元智大學資訊工程系
                 Alternative model

      • The spiral model




czyang@acm.org           Embedded Systems - Introduction to Embedded Software   27
                                         元智大學資訊工程系
                 Successive refinement

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




czyang@acm.org           Embedded Systems - Introduction to Embedded Software   28
                                         元智大學資訊工程系
                 Software/hardware codesign

      • A simple software/hardware design process




czyang@acm.org          Embedded Systems - Introduction to Embedded Software   29
                                        元智大學資訊工程系
                 Hierarchical design flows

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




czyang@acm.org           Embedded Systems - Introduction to Embedded Software   30
                                         元智大學資訊工程系
                 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.




czyang@acm.org          Embedded Systems - Introduction to Embedded Software   31
                                        元智大學資訊工程系
                 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



czyang@acm.org           Embedded Systems - Introduction to Embedded Software   32
                                         元智大學資訊工程系
          An example of concurrent engineering:

                   Telephone systems




czyang@acm.org       Embedded Systems - Introduction to Embedded Software   33
                                     元智大學資訊工程系
                 Design of PBXs in AT&T

      • Goals:
            – reduce design time
            – make other improvements to the end product

      • 7 Steps




czyang@acm.org             Embedded Systems - Introduction to Embedded Software   34
                                           元智大學資訊工程系
                 7 Steps - 1

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




                                                                                   AT&T
                                                                     Competitor

                                              Time for introducing a new product




czyang@acm.org              Embedded Systems - Introduction to Embedded Software          35
                                            元智大學資訊工程系
                 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

czyang@acm.org               Embedded Systems - Introduction to Embedded Software               36
                                             元智大學資訊工程系
                 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


czyang@acm.org              Embedded Systems - Introduction to Embedded Software   37
                                            元智大學資訊工程系
                 7 Steps - 4

      • Create the target process




czyang@acm.org            Embedded Systems - Introduction to Embedded Software   38
                                          元智大學資訊工程系
                 7 Steps - 4

      • New target process




czyang@acm.org            Embedded Systems - Introduction to Embedded Software   39
                                          元智大學資訊工程系
                 7 Steps - 5

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

            – Some challenge were identified.




czyang@acm.org              Embedded Systems - Introduction to Embedded Software   40
                                            元智大學資訊工程系
                 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.




czyang@acm.org              Embedded Systems - Introduction to Embedded Software   41
                                            元智大學資訊工程系
                 What is Embedded Software?




czyang@acm.org         Embedded Systems - Introduction to Embedded Software   42
                                       元智大學資訊工程系

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:3
posted:8/22/2011
language:English
pages:42