Technology Domain of Today and Future

EMBEDDED SYSTEMS
WHAT IS AN EMBEDDED SYSTEM?

An embedded system is a special-purpose computer
system designed to perform one or a few dedicated
functions. It is usually embedded as part of a
complete device including hardware and mechanical
parts

                 words:
 In more simpler words:

 Information processing systems embedded into a
 larger product
GENERAL CHARACTERISTICS
 Embedded systems:
   perform a single or tightly knit set of functions;
      not usually general purpose.;
   high-performance and real-time constrained;
   power, cost, reliability and security are important;
 Application-
 Application-specific processor design:
   Advantages:
      lower area, power, cost, better security...
   Disadvantages:
      Higher development overheads
          design, compilers, debuggers may delay time to market!
DRIVING FORCES
 Computing technologies are proliferating to
 non-computing domains
   portable units with significant data & control ops.
     medical instrumentation & imaging, information
     appliances...
 Increasing need for product personalization
   Application domains and user differentiation
   Device programmability
 Competitive pressures of "commodity markets“
   Time to market (TTM), Time to money (TT$),
     Product lines, Product differentiation, etc.
APPLICATION AREAS IN GENERAL
APPLICATION AREAS

 Automotive electronics

 Avionics

 Trains

 Telecommunication

 Military applications

 Authentication
APPLICATION AREAS (CONTD.)

 Consumer electronics




 Industrial Automation




 Building Automation
APPLICATION AREAS (CONTD.)
 Medical systems
 For example:
   Artificial eye: several
   approaches, e.g.:
       Camera attached to glasses;
      computer worn at belt; output
      directly connected to the
      brain, “pioneering work by
      William Dobelle”. Previously at
      [www.dobelle.com]


    – Translation into sound; claiming
      much better resolution.
      [http://www.seeingwithsound.com/etumble.htm]
APPLICATION AREAS (CONTD.)
 Robotics
   One of the premier
   areas of usage of
   embedded
   technologies
   Nano Technology
Some embedded systems from real life
SMART BEER GLASS
                                             Integrates several technologies:
Capacitive sensor
                                                  Radio transmissions
  for fluid level
                                                  Sensor technology
                                                  Magnetic inductance for
                         8-bit processor          power
                                                  Computer used for
                                                  calibration
                                             Impossible without the computer
  Contact less                               Meaningless without the
                                             electronics
transmission of
   power and
    readings
                         Inductive coil for RF ID
                           activation & power


                    CPU and reading coil in the table. Reports the level
                    of fluid in the glass, alerts servers when close to
                    empty
SMART BEER GLASS
   Typical embedded solution
   Integrates several technologies:
     Radio transmissions
     Sensor technology
     Magnetic inductance for power
     Computer used for calibration
   Impossible without the computer
   Meaningless without the electronics
PEDOMETER

  Obvious computer work:
   Count steps
   Keep time
   Averages
   etc.
  Hard computer work:
   Actually identify when a step is
   taken
   Sensor feels motion of device,
   not of user feet
MOBILE PHONES

                Multiprocessor
                 8-bit/32-bit for UI
                 DSP for signals
                 32-bit in IR port
                 32-bit in Bluetooth
                8-100 MB of memory
                All custom chips
                Power consumption & battery life
                depends on software
MOBILE BASE STATION


   Massive signal processing
     Several processing tasks per
     connected mobile phone
   Based on DSPs
     Standard or custom
     100s of processors
TELECOM SWITCH


                 Rack-based
                  Control cards
                  IO cards
                  DSP cards
                  ...
                 Optical & copper connections
                 Digital & analog signals
SMART WELDING MACHINE

   Electronics control voltage & speed of
   wire feed
   Adjusts to operator
    kHz sample rate
    1000s of decisions/second
   Perfect weld even for quite clumsy
   operators
   Easier-to-use product, but no obvious
   computer
SEWING MACHINE


                 User interface
                  Embroidery patterns
                  Touch-screen control
                 ”Smart”
                  Sets pressure of foot depending on
                  task
                  Raise foot when stopped
                 New functions added by upgrading
                 the software
FORESTRY MACHINES
                    Networked computer
                    system
                      Controlling arms &
                      tools
                      Navigating the forest
                      Recording the trees
                      harvested
                      Crucial to efficient
                      work
                    Processors
                      16-bit processors in a
                      network
OPERATOR PANEL


                 Embedded PC
                  Graphical display
                  Touch panel
                  Joystick
                  Buttons
                  Keyboard
                 But tough enough to be “out
                 in the woods”
CARS
Functions by embedded processing:          Multiple networks
       ABS: Anti-lock braking systems      Body, engine, telematics,
       ESP: Electronic stability control
       Airbags
                                           media, safety
       Efficient automatic gearboxes       Multiple processors
       Theft prevention with smart keys     Up to 100
       Blind-angle alert systems
       ... etc ...                          Networked together
CARS


  Large diversity in processor types:
       8-bit – door locks, lights, etc.
       16-bit – most functions
       32-bit – engine control, airbags
  Form follows function
       Processing where the action is
       Sensors and actuators distributed all over the vehicle
INSIDE YOUR PC

   Custom processors
    Graphics, sound
   32-bit processors
    IR, Bluetooth
    Network, WLAN
    Harddisk
    RAID controllers
   8-bit processors
    USB
    Keyboard, mouse
IF YOU WANT TO PLAY


   Lego mindstorms robotics kit
    Standard controller
        8-bit processor
        64 kB of memory
    Electronics to interface to
    motors and sensors
   Good way to learn embedded
   systems
Embedded systems
EMBEDDED SYSTEM COMPONENTS
GENERIC ARCHITECTURE OF ES
Characteristics of Embedded Systems

 Must be dependable
          dependable,
   • Reliability R(t) = probability of system working correctly provided that it was
     working at t=0
   • Maintainability M(d) = probability of system working correctly d time units after
     error occurred.
   • Availability A(t): probability of system working at time t
   • Safety no harm to be caused
     Safety:
   • Security confidential and authentic communication
     Security:
Even perfectly designed systems can fail if the assumptions about the workload
 and possible errors turn out to be wrong.
 Making the system dependable must not be an after-thought, it must be
 considered from the very beginning
CHARACTERISTICS OF EMBEDDED SYSTEMS
     Must be efficient
       Energy efficient
       Code-size efficient
       (especially for systems on a chip)
       Run-time efficient
       Weight efficient
       Cost efficient
     Dedicated towards a certain application
     Knowledge about behavior at design time can be
     used to minimize resources and to maximize
     robustness
     Dedicated user interface
     (no mouse, keyboard and screen)
CHARACTERISTICS OF EMBEDDED SYSTEMS
    Many ES must meet real-time constraints
                      real-
      A real-time system must react to stimuli from the
      controlled object (or the operator) within the time
      interval dictated by the environment.
      For real-time systems, right answers arriving too late
      are wrong.
          real-
      „A real-time constraint is called hard, if not meeting
      that constraint could result in a catastrophe“ [Kopetz,
      1997].
      All other time-constraints are called soft
                                            soft.
      A guaranteed system response has to be explained
      without statistical arguments
REAL-TIME SYSTEMS


   Embedded and Real-
   Time Synonymous?
     Most embedded
     systems are           embedded
     real-time
     Most real-time     embedded
     systems are
     embedded            real-
                         real-time

                        real-
                        real-time
CHARACTERISTICS OF EMBEDDED SYSTEMS
   Frequently connected to physical environment
   through sensors and actuators,
   Hybrid systems
   (analog + digital parts).
   Typically, ES are reactive systems
                              systems:
   „A reactive system is one which is in continual
    A
   interaction with is environment and executes at a
   pace determined by that environment“ [Bergé, 1995]
   Behavior depends on input and current state
                                            state.
      automata model appropriate,
      model of computable functions inappropriate.
CHARACTERISTICS OF EMBEDDED SYSTEMS
  ES are underrepresented in teaching and public discussions:
  „Embedded chips aren‘t hyped in TV and magazine ads ... [Mary
  Ryan, EEDesign, 1995]




 Not every ES has all of the above characteristics.
 Def.:
 Def Information processing systems having most of the
 above characteristics are called embedded systems.
 Course on embedded systems makes sense because of
 the number of common characteristics.
CHALLENGES FOR IMPLEMENTATION IN
HARDWARE
           Lack of flexibility (changing standards).
           Mask cost for specialized HW becomes very expensive




                                                                                          Trend towards
                                                                                       implementation
                                                                                       in Software




  [http://www.molecularimprints.com/Technology/tech_articles/MII_COO_NIST_2001.PDF9]
IMPORTANCE OF EMBEDDED SOFTWARE
  AND EMBEDDED PROCESSORS

“... the New York Times has
estimated that the average               Mostaverage American
                                         The of the functionality
American comes into contact with about   will be implemented in
                                         does not drive a BMW!
60 micro-processors every day....”       software
[Camposano, 1996]




Latest top-level BMWs
contain over 100 micro-
processors
[Personal communication]
CHALLENGES FOR IMPLEMENTATION IN SOFTWARE




  If embedded systems will be implemented mostly in
  software, then why don‘t we just use what software
  engineers have come up with?
SOFTWARE COMPLEXITY IS A CHALLENGE

Exponential increase in software complexity
In some areas code size is doubling every 9
months [ST Microelectronics, Medea
Workshop, Fall 2003]
... > 70% of the development cost for complex
systems such as automotive electronics and
communication systems are due to software
development
[A. Sangiovanni-Vincentelli, 1999]
                                                Rob van Ommering, COPA Tutorial, as cited by: Gerrit Müller:
                                                Opportunities and challenges in embedded systems,
                                                Eindhoven Embedded Systems Institute, 2004
CHALLENGES FOR EMBEDDED SOFTWARE

  Dynamic environments
  Capture the required behaviour!
  Validate specifications
  Efficient translation of specifications into
  implementations!
  How can we check that we meet real-time
  constraints?
  How do we validate embedded real-time software?
  (large volumes of data, testing may be safety-critical)
IT IS NOT SUFFICIENT TO CONSIDER ES JUST AS A SPECIAL CASE OF
SOFTWARE ENGINEERING

   EE knowledge must be available,
   Walls between EE and CS must be torn down



          CS                                   EE
Focus area for CS,IT & MCA Students
EMBEDDED SOFTWARE

        Firmware

        Middleware

        OS / RTOS Development

        Device Drivers
FIRMWARE – NOT A CORE FIELD FOR CS/IT PROS
  In computing, firmware is a computer
  program that is embedded in a hardware
  device, for example a microcontroller. It can
  also be provided on flash ROMs or as a
  binary image file that can be uploaded onto
  existing hardware by a user.
  Example FLASH BIOS, IPOD, PSP, PSP3,
  Open Firmware in Sun’s & Apple Comps etc.
  it is also an intimate and vital part of a piece
  of hardware, and has little meaning outside
  of that particular hardware.
MIDDLEWARE
 Middleware is computer software that connects software
 components or applications.
 Elaborative - Middleware is the enabling technology of
 Enterprise application integration. It describes a piece of
 software that connects two or more software applications so
 that they can exchange data.
 System Process and services.
 Common Examples web servers, application servers &
 content management systems.
 Inter-operatibility - XML, SOAP, Web services, and service-
 oriented architecture
 It is a layer of software that lies between the application
 code and the Run-Time Infrastructure (RTI)
TYPES OF MIDDLEWARE
 Transaction Processing(TP) Monitors - This provides the tools and an
 environment to develop and deploy the Distributed Applications.
 Remote Procedure Call (RPCs) — Client makes calls to procedures running
 on remote systems. Can be asynchronous or synchronous.
 Message Oriented Middleware (MOM) — Messages sent to the client are
 collected and stored until they are acted upon, while the client continues
 with other processing.
 Object Request Broker (ORB) — This type of middleware makes it possible
 for applications to send objects and request services in an object-oriented
 system.
 SQL-oriented Data Access — middleware between applications and database
 servers.
 Application servers — software installed on a computer to facilitate the
 serving (running) of other applications.
 Enterprise Service Bus — An abstraction layer on top of an Enterprise
 Messaging System.
OS/RTOS
 A real-time operating system (RTOS) is a
 multitasking operating system intended for
 real-time applications.
 Used in embedded systems (programmable
 thermostats, household appliance controllers,
 mobile telephones), industrial robots,
 spacecraft, industrial control, and scientific
 research equipment.
 Real Time Computing still under debate.
REAL TIME OPERATING SYSTEMS
 Design Types
   Real time system is the system which complete the
   tasks within the deadline.
   Event-driven (priority scheduling) designs switch tasks
   only when an event of higher priority needs service,
   called preemptive priority.
   Time-sharing designs switch tasks on a clock interrupt,
   and on events, called round robin.
 1st example of a large-scale real-time operating
                              real-
 system was the so-called "control program"
 developed by American Airlines and IBM for the
 Sabre Airline Reservations System.
DEVICE DRIVERS
 A device driver, or software driver is a computer
 program allowing higher-level computer programs
 to interact with a computer hardware device.
 A device driver simplifies programming by acting
 as a translator between a device and the
 applications or operating systems that use it.
 The higher-level code can be written independently
 of whatever specific hardware device it may
 control. (Embedded C# programming, Micro .Net
 Framework)
DEVICE DRIVER EXAMPLES
 Linux device drivers are built into the OS kernel.
 Windows(TM) .sys files and Linux .ko modules are
 loadable device drivers.
 The device drivers can either be built as parts of
 the kernel or can be built separately as loadable
 modules. ( Example USB Mass storage type
 drivers).
 New age Device Drivers works in User & System
 modes.
 Printers: CUPS, Scanners: SANE & Video: Vidix
DEVICE DRIVER DEVELOPMENT
 Microsoft’s new framework for driver
 development, called Windows Driver
 Foundation (WDF).
   User-Mode Driver Framework (UMDF).
   The Kernel-Mode Driver Framework (KMDF).
 Apple’s open-source framework for developing
 drivers on Mac OS X called the I/O Kit.
 Linux Device Drivers are developed in C using
 OEM Specification.
DD IMPLEMENTATION
 Drivers are used for interfacing with:
    Printers
    Video adapters
    Network cards
    Sound cards
    Local buses of various sorts - in particular, for bus mastering on
    modern systems
    Low-bandwidth I/O buses of various sorts (for pointing devices
    such as mice, keyboards, USB, etc.)
    computer storage devices such as hard disk, CD-ROM and floppy
    disk buses (ATA, SATA, SCSI)
    Implementing support for different file systems
    Implementing support for image scanners and digital cameras
VIRTUAL DEVICE DRIVERS
 used in virtualization environments.
 MS-DOS program is run on a Microsoft Windows
 computer
 CoLinux on Windows
 Xen on Linux
 Virtual Machines (e.g. JVM over embedded devices)
 Attempts by the guest operating system to access the
 hardware are routed to the virtual device driver in the
 host operating system as e.g. function calls.
 virtual device driver can also send simulated processor-
 level events like interrupts into the virtual machine.
DRIVER API’S
 Advanced Linux Sound Architecture (ALSA) - The standard modern Linux
 sound driver interface
 I/O Kit - an open-source framework from Apple for developing Mac OS X
 device drivers
 Installable File System (IFS) - a filesystem API for IBM OS/2 and Microsoft
 Windows NT
 Network Driver Interface Specification (NDIS) - a standard network card
 driver API
 Open Data-Link Interface (ODI) - a network card API similar to NDIS
 Scanner Access Now Easy (SANE) - a public domain interface to raster
 image scanner hardware
 Uniform Driver Interface (UDI) - a cross platform driver interface project
 Windows Display Driver Model (WDDM) - the new graphic display driver
 architecture for Windows Vista
 Windows Driver Foundation (WDF)
 Windows Driver Model (WDM)
Some brain storming
FOLLOWING ARE THE EXAMPLES OF EMBEDDED SYSTEM OR NOT?



   MP3 Player
   Digital Watch
   Traffic Lights
   Nuclear Power Plant
   PDA
   Handheld Computers
Embedded systems

More Related Content

PDF
Introduction To Embedded Systems
PPTX
Embedded system architecture.pptx
PPT
E.s unit 6
PPT
Design of embedded systems
PDF
Introduction to Embedded Architecture
PPT
Case study of digital camera
PPTX
Introduction to Embedded Systems
PDF
Introduction to Embedded System
Introduction To Embedded Systems
Embedded system architecture.pptx
E.s unit 6
Design of embedded systems
Introduction to Embedded Architecture
Case study of digital camera
Introduction to Embedded Systems
Introduction to Embedded System

What's hot (20)

PPTX
Embedded System Tools ppt
PPTX
Hardware Software Codesign
PPTX
Ppt on embedded systems
PDF
Introduction to Embedded Systems
PPT
AVR Fundamentals
DOCX
Best topics for seminar
PPT
Embedded system design process
PPTX
Quality attributes(Non operational) of embedded systems
PPTX
Microcontroller presentation
PPT
Clockless chips
DOCX
Hardware-Software Codesign
PPTX
1.1 storage device
PPTX
Seminar PPT on Crypto Watermarking B.Tech
PPTX
Introduction to Embedded Systems
DOCX
Verilog code for 16-bit RISC processor
PPTX
Introduction to embedded systems
PPT
silent sound technology
PPT
BLUE EYES TECHNOLOGY
PPTX
SPEAKER VERIFICATION
Embedded System Tools ppt
Hardware Software Codesign
Ppt on embedded systems
Introduction to Embedded Systems
AVR Fundamentals
Best topics for seminar
Embedded system design process
Quality attributes(Non operational) of embedded systems
Microcontroller presentation
Clockless chips
Hardware-Software Codesign
1.1 storage device
Seminar PPT on Crypto Watermarking B.Tech
Introduction to Embedded Systems
Verilog code for 16-bit RISC processor
Introduction to embedded systems
silent sound technology
BLUE EYES TECHNOLOGY
SPEAKER VERIFICATION
Ad

Viewers also liked (13)

PDF
PPTX
Ext JS Introduction
PDF
What's Coming Next in Sencha Frameworks
PPTX
Developing components and extensions for ext js
PDF
Ext js 6
PPTX
Ext Js introduction and new features in Ext Js 6
PPTX
Sencha ExtJs Learning Part 2 - MVC And MVVM Architecture in ExtJs [ENGLISH]
PPTX
Sencha ExtJs Learning Part 1 - Layout And Container in Sencha ExtJs - By Irfa...
PPTX
Basics of Ext JS
PPTX
Irfan Maulana - Career Journey
PPTX
Bliblidotcom - Reintroduction BEM CSS
PPTX
Ext JS Architecture Best Practices - Mitchell Simeons
Ext JS Introduction
What's Coming Next in Sencha Frameworks
Developing components and extensions for ext js
Ext js 6
Ext Js introduction and new features in Ext Js 6
Sencha ExtJs Learning Part 2 - MVC And MVVM Architecture in ExtJs [ENGLISH]
Sencha ExtJs Learning Part 1 - Layout And Container in Sencha ExtJs - By Irfa...
Basics of Ext JS
Irfan Maulana - Career Journey
Bliblidotcom - Reintroduction BEM CSS
Ext JS Architecture Best Practices - Mitchell Simeons
Ad

Similar to Embedded systems (20)

DOC
Unit 1 embedded systems and applications
DOC
Unit 1 Embedded systems and applications
DOC
Embedded system in_automobiles_seminar_report_1234
DOC
Embedded systems
PPTX
Embedded systems
DOCX
IR and Metal senosors Based Product Sorting.docx
PPSX
It 443 lecture 1
PPT
Architecture offffffffffffff ESD-ppt.ppt
DOCX
Mini final docmtn final
DOCX
Project report3
PPT
2007.0001 week1 embeddedsystems
PPT
Embedded systems
PDF
Embedded operating systems
PDF
Embedded system
PPTX
IOT WITH NODEMCU13231244425435465645.pptx
DOCX
embedded systems
PPTX
Dharshan INTERNSHIP PPT-1.pptx
DOC
Introduction to embeded system
DOC
Report file on Embedded systems
PPT
Embedded
Unit 1 embedded systems and applications
Unit 1 Embedded systems and applications
Embedded system in_automobiles_seminar_report_1234
Embedded systems
Embedded systems
IR and Metal senosors Based Product Sorting.docx
It 443 lecture 1
Architecture offffffffffffff ESD-ppt.ppt
Mini final docmtn final
Project report3
2007.0001 week1 embeddedsystems
Embedded systems
Embedded operating systems
Embedded system
IOT WITH NODEMCU13231244425435465645.pptx
embedded systems
Dharshan INTERNSHIP PPT-1.pptx
Introduction to embeded system
Report file on Embedded systems
Embedded

Recently uploaded (20)

PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PPT
What is a Computer? Input Devices /output devices
PDF
A comparative study of natural language inference in Swahili using monolingua...
PPTX
The various Industrial Revolutions .pptx
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
Getting Started with Data Integration: FME Form 101
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Enhancing emotion recognition model for a student engagement use case through...
Final SEM Unit 1 for mit wpu at pune .pptx
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Web Crawler for Trend Tracking Gen Z Insights.pptx
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
What is a Computer? Input Devices /output devices
A comparative study of natural language inference in Swahili using monolingua...
The various Industrial Revolutions .pptx
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
DP Operators-handbook-extract for the Mautical Institute
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
A review of recent deep learning applications in wood surface defect identifi...
Getting started with AI Agents and Multi-Agent Systems
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Developing a website for English-speaking practice to English as a foreign la...
Getting Started with Data Integration: FME Form 101
WOOl fibre morphology and structure.pdf for textiles
Enhancing emotion recognition model for a student engagement use case through...

Embedded systems

  • 1. Technology Domain of Today and Future EMBEDDED SYSTEMS
  • 2. WHAT IS AN EMBEDDED SYSTEM? An embedded system is a special-purpose computer system designed to perform one or a few dedicated functions. It is usually embedded as part of a complete device including hardware and mechanical parts words: In more simpler words: Information processing systems embedded into a larger product
  • 3. GENERAL CHARACTERISTICS Embedded systems: perform a single or tightly knit set of functions; not usually general purpose.; high-performance and real-time constrained; power, cost, reliability and security are important; Application- Application-specific processor design: Advantages: lower area, power, cost, better security... Disadvantages: Higher development overheads design, compilers, debuggers may delay time to market!
  • 4. DRIVING FORCES Computing technologies are proliferating to non-computing domains portable units with significant data & control ops. medical instrumentation & imaging, information appliances... Increasing need for product personalization Application domains and user differentiation Device programmability Competitive pressures of "commodity markets“ Time to market (TTM), Time to money (TT$), Product lines, Product differentiation, etc.
  • 6. APPLICATION AREAS Automotive electronics Avionics Trains Telecommunication Military applications Authentication
  • 7. APPLICATION AREAS (CONTD.) Consumer electronics Industrial Automation Building Automation
  • 8. APPLICATION AREAS (CONTD.) Medical systems For example: Artificial eye: several approaches, e.g.: Camera attached to glasses; computer worn at belt; output directly connected to the brain, “pioneering work by William Dobelle”. Previously at [www.dobelle.com] – Translation into sound; claiming much better resolution. [http://www.seeingwithsound.com/etumble.htm]
  • 9. APPLICATION AREAS (CONTD.) Robotics One of the premier areas of usage of embedded technologies Nano Technology
  • 10. Some embedded systems from real life
  • 11. SMART BEER GLASS Integrates several technologies: Capacitive sensor Radio transmissions for fluid level Sensor technology Magnetic inductance for 8-bit processor power Computer used for calibration Impossible without the computer Contact less Meaningless without the electronics transmission of power and readings Inductive coil for RF ID activation & power CPU and reading coil in the table. Reports the level of fluid in the glass, alerts servers when close to empty
  • 12. SMART BEER GLASS Typical embedded solution Integrates several technologies: Radio transmissions Sensor technology Magnetic inductance for power Computer used for calibration Impossible without the computer Meaningless without the electronics
  • 13. PEDOMETER Obvious computer work: Count steps Keep time Averages etc. Hard computer work: Actually identify when a step is taken Sensor feels motion of device, not of user feet
  • 14. MOBILE PHONES Multiprocessor 8-bit/32-bit for UI DSP for signals 32-bit in IR port 32-bit in Bluetooth 8-100 MB of memory All custom chips Power consumption & battery life depends on software
  • 15. MOBILE BASE STATION Massive signal processing Several processing tasks per connected mobile phone Based on DSPs Standard or custom 100s of processors
  • 16. TELECOM SWITCH Rack-based Control cards IO cards DSP cards ... Optical & copper connections Digital & analog signals
  • 17. SMART WELDING MACHINE Electronics control voltage & speed of wire feed Adjusts to operator kHz sample rate 1000s of decisions/second Perfect weld even for quite clumsy operators Easier-to-use product, but no obvious computer
  • 18. SEWING MACHINE User interface Embroidery patterns Touch-screen control ”Smart” Sets pressure of foot depending on task Raise foot when stopped New functions added by upgrading the software
  • 19. FORESTRY MACHINES Networked computer system Controlling arms & tools Navigating the forest Recording the trees harvested Crucial to efficient work Processors 16-bit processors in a network
  • 20. OPERATOR PANEL Embedded PC Graphical display Touch panel Joystick Buttons Keyboard But tough enough to be “out in the woods”
  • 21. CARS Functions by embedded processing: Multiple networks ABS: Anti-lock braking systems Body, engine, telematics, ESP: Electronic stability control Airbags media, safety Efficient automatic gearboxes Multiple processors Theft prevention with smart keys Up to 100 Blind-angle alert systems ... etc ... Networked together
  • 22. CARS Large diversity in processor types: 8-bit – door locks, lights, etc. 16-bit – most functions 32-bit – engine control, airbags Form follows function Processing where the action is Sensors and actuators distributed all over the vehicle
  • 23. INSIDE YOUR PC Custom processors Graphics, sound 32-bit processors IR, Bluetooth Network, WLAN Harddisk RAID controllers 8-bit processors USB Keyboard, mouse
  • 24. IF YOU WANT TO PLAY Lego mindstorms robotics kit Standard controller 8-bit processor 64 kB of memory Electronics to interface to motors and sensors Good way to learn embedded systems
  • 28. Characteristics of Embedded Systems Must be dependable dependable, • Reliability R(t) = probability of system working correctly provided that it was working at t=0 • Maintainability M(d) = probability of system working correctly d time units after error occurred. • Availability A(t): probability of system working at time t • Safety no harm to be caused Safety: • Security confidential and authentic communication Security: Even perfectly designed systems can fail if the assumptions about the workload and possible errors turn out to be wrong. Making the system dependable must not be an after-thought, it must be considered from the very beginning
  • 29. CHARACTERISTICS OF EMBEDDED SYSTEMS Must be efficient Energy efficient Code-size efficient (especially for systems on a chip) Run-time efficient Weight efficient Cost efficient Dedicated towards a certain application Knowledge about behavior at design time can be used to minimize resources and to maximize robustness Dedicated user interface (no mouse, keyboard and screen)
  • 30. CHARACTERISTICS OF EMBEDDED SYSTEMS Many ES must meet real-time constraints real- A real-time system must react to stimuli from the controlled object (or the operator) within the time interval dictated by the environment. For real-time systems, right answers arriving too late are wrong. real- „A real-time constraint is called hard, if not meeting that constraint could result in a catastrophe“ [Kopetz, 1997]. All other time-constraints are called soft soft. A guaranteed system response has to be explained without statistical arguments
  • 31. REAL-TIME SYSTEMS Embedded and Real- Time Synonymous? Most embedded systems are embedded real-time Most real-time embedded systems are embedded real- real-time real- real-time
  • 32. CHARACTERISTICS OF EMBEDDED SYSTEMS Frequently connected to physical environment through sensors and actuators, Hybrid systems (analog + digital parts). Typically, ES are reactive systems systems: „A reactive system is one which is in continual A interaction with is environment and executes at a pace determined by that environment“ [Bergé, 1995] Behavior depends on input and current state state. automata model appropriate, model of computable functions inappropriate.
  • 33. CHARACTERISTICS OF EMBEDDED SYSTEMS ES are underrepresented in teaching and public discussions: „Embedded chips aren‘t hyped in TV and magazine ads ... [Mary Ryan, EEDesign, 1995] Not every ES has all of the above characteristics. Def.: Def Information processing systems having most of the above characteristics are called embedded systems. Course on embedded systems makes sense because of the number of common characteristics.
  • 34. CHALLENGES FOR IMPLEMENTATION IN HARDWARE Lack of flexibility (changing standards). Mask cost for specialized HW becomes very expensive Trend towards implementation in Software [http://www.molecularimprints.com/Technology/tech_articles/MII_COO_NIST_2001.PDF9]
  • 35. IMPORTANCE OF EMBEDDED SOFTWARE AND EMBEDDED PROCESSORS “... the New York Times has estimated that the average Mostaverage American The of the functionality American comes into contact with about will be implemented in does not drive a BMW! 60 micro-processors every day....” software [Camposano, 1996] Latest top-level BMWs contain over 100 micro- processors [Personal communication]
  • 36. CHALLENGES FOR IMPLEMENTATION IN SOFTWARE If embedded systems will be implemented mostly in software, then why don‘t we just use what software engineers have come up with?
  • 37. SOFTWARE COMPLEXITY IS A CHALLENGE Exponential increase in software complexity In some areas code size is doubling every 9 months [ST Microelectronics, Medea Workshop, Fall 2003] ... > 70% of the development cost for complex systems such as automotive electronics and communication systems are due to software development [A. Sangiovanni-Vincentelli, 1999] Rob van Ommering, COPA Tutorial, as cited by: Gerrit Müller: Opportunities and challenges in embedded systems, Eindhoven Embedded Systems Institute, 2004
  • 38. CHALLENGES FOR EMBEDDED SOFTWARE Dynamic environments Capture the required behaviour! Validate specifications Efficient translation of specifications into implementations! How can we check that we meet real-time constraints? How do we validate embedded real-time software? (large volumes of data, testing may be safety-critical)
  • 39. IT IS NOT SUFFICIENT TO CONSIDER ES JUST AS A SPECIAL CASE OF SOFTWARE ENGINEERING EE knowledge must be available, Walls between EE and CS must be torn down CS EE
  • 40. Focus area for CS,IT & MCA Students
  • 41. EMBEDDED SOFTWARE Firmware Middleware OS / RTOS Development Device Drivers
  • 42. FIRMWARE – NOT A CORE FIELD FOR CS/IT PROS In computing, firmware is a computer program that is embedded in a hardware device, for example a microcontroller. It can also be provided on flash ROMs or as a binary image file that can be uploaded onto existing hardware by a user. Example FLASH BIOS, IPOD, PSP, PSP3, Open Firmware in Sun’s & Apple Comps etc. it is also an intimate and vital part of a piece of hardware, and has little meaning outside of that particular hardware.
  • 43. MIDDLEWARE Middleware is computer software that connects software components or applications. Elaborative - Middleware is the enabling technology of Enterprise application integration. It describes a piece of software that connects two or more software applications so that they can exchange data. System Process and services. Common Examples web servers, application servers & content management systems. Inter-operatibility - XML, SOAP, Web services, and service- oriented architecture It is a layer of software that lies between the application code and the Run-Time Infrastructure (RTI)
  • 44. TYPES OF MIDDLEWARE Transaction Processing(TP) Monitors - This provides the tools and an environment to develop and deploy the Distributed Applications. Remote Procedure Call (RPCs) — Client makes calls to procedures running on remote systems. Can be asynchronous or synchronous. Message Oriented Middleware (MOM) — Messages sent to the client are collected and stored until they are acted upon, while the client continues with other processing. Object Request Broker (ORB) — This type of middleware makes it possible for applications to send objects and request services in an object-oriented system. SQL-oriented Data Access — middleware between applications and database servers. Application servers — software installed on a computer to facilitate the serving (running) of other applications. Enterprise Service Bus — An abstraction layer on top of an Enterprise Messaging System.
  • 45. OS/RTOS A real-time operating system (RTOS) is a multitasking operating system intended for real-time applications. Used in embedded systems (programmable thermostats, household appliance controllers, mobile telephones), industrial robots, spacecraft, industrial control, and scientific research equipment. Real Time Computing still under debate.
  • 46. REAL TIME OPERATING SYSTEMS Design Types Real time system is the system which complete the tasks within the deadline. Event-driven (priority scheduling) designs switch tasks only when an event of higher priority needs service, called preemptive priority. Time-sharing designs switch tasks on a clock interrupt, and on events, called round robin. 1st example of a large-scale real-time operating real- system was the so-called "control program" developed by American Airlines and IBM for the Sabre Airline Reservations System.
  • 47. DEVICE DRIVERS A device driver, or software driver is a computer program allowing higher-level computer programs to interact with a computer hardware device. A device driver simplifies programming by acting as a translator between a device and the applications or operating systems that use it. The higher-level code can be written independently of whatever specific hardware device it may control. (Embedded C# programming, Micro .Net Framework)
  • 48. DEVICE DRIVER EXAMPLES Linux device drivers are built into the OS kernel. Windows(TM) .sys files and Linux .ko modules are loadable device drivers. The device drivers can either be built as parts of the kernel or can be built separately as loadable modules. ( Example USB Mass storage type drivers). New age Device Drivers works in User & System modes. Printers: CUPS, Scanners: SANE & Video: Vidix
  • 49. DEVICE DRIVER DEVELOPMENT Microsoft’s new framework for driver development, called Windows Driver Foundation (WDF). User-Mode Driver Framework (UMDF). The Kernel-Mode Driver Framework (KMDF). Apple’s open-source framework for developing drivers on Mac OS X called the I/O Kit. Linux Device Drivers are developed in C using OEM Specification.
  • 50. DD IMPLEMENTATION Drivers are used for interfacing with: Printers Video adapters Network cards Sound cards Local buses of various sorts - in particular, for bus mastering on modern systems Low-bandwidth I/O buses of various sorts (for pointing devices such as mice, keyboards, USB, etc.) computer storage devices such as hard disk, CD-ROM and floppy disk buses (ATA, SATA, SCSI) Implementing support for different file systems Implementing support for image scanners and digital cameras
  • 51. VIRTUAL DEVICE DRIVERS used in virtualization environments. MS-DOS program is run on a Microsoft Windows computer CoLinux on Windows Xen on Linux Virtual Machines (e.g. JVM over embedded devices) Attempts by the guest operating system to access the hardware are routed to the virtual device driver in the host operating system as e.g. function calls. virtual device driver can also send simulated processor- level events like interrupts into the virtual machine.
  • 52. DRIVER API’S Advanced Linux Sound Architecture (ALSA) - The standard modern Linux sound driver interface I/O Kit - an open-source framework from Apple for developing Mac OS X device drivers Installable File System (IFS) - a filesystem API for IBM OS/2 and Microsoft Windows NT Network Driver Interface Specification (NDIS) - a standard network card driver API Open Data-Link Interface (ODI) - a network card API similar to NDIS Scanner Access Now Easy (SANE) - a public domain interface to raster image scanner hardware Uniform Driver Interface (UDI) - a cross platform driver interface project Windows Display Driver Model (WDDM) - the new graphic display driver architecture for Windows Vista Windows Driver Foundation (WDF) Windows Driver Model (WDM)
  • 54. FOLLOWING ARE THE EXAMPLES OF EMBEDDED SYSTEM OR NOT? MP3 Player Digital Watch Traffic Lights Nuclear Power Plant PDA Handheld Computers