Your SlideShare is downloading. ×
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Embedded Systems - A Brief Introduction
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Embedded Systems - A Brief Introduction

1,018

Published on

Published in: Business, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,018
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
103
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. A Brief Introduction toEmbedded SystemsK. RaghunathanChartered EngineerFIETE, MIE, MCSI, MISTE, MISTD. MIIMMRetd. Dy. Controller (R&D) [MoD]
  • 2. Embedded Systems• Overview of Embedded Systems• Embedded System Design• Embedded System Designer• More Knowledge
  • 3. Overview of Embedded Systems• What is an Embedded System ?• Examples of Embedded Systems• Why an “Embedded” System ?• Salient Features
  • 4. What is an Embedded System ?• A computer system, fitted as part of someEquipment which is not a computer• The whole system is not called a computer - it isknown by the name of the Equipment• The embedded computer system controls theequipment in which it is embedded• Performs only specific tasks, often in real-time
  • 5. Examples of Embedded Systems• Network Printer– Network Interfacing & Routing• Handheld Barcode Scanner– Conversion of Image to Number• Mobile Phone with Internet Connectivity– Browsing, eMail, FTP, Chat etc
  • 6. Examples of Embedded Systems• CNC Machines & Robots– Control the Sequence of Operations• Satellites– Remote-sensing, Data-formatting,Communication, Navigation Control etc• Televison Set– Digital on-screen display of menu, channelnumber, subtitles etc• Washing Machines– Control of Sequence of Operations, Motorspeed & duration control etc
  • 7. Why “embed” a Computer ?• Computers are more suitable for– Control– Data Processing– Decision Making– Digital Communication
  • 8. Why “embed” a Computer ?• Main Equipment is Larger & Costlier;computer is smaller, cheaper & used foronly some specific purpose• Using General-purpose computer involvesadditional space & wiring. It is better to fit asmall computer inside [or onto] theequipment itself• often, main equipment itself may have tobe small & portable
  • 9. Salient Features of EmbeddedSystems• Purpose & Functionality– Specific Purpose; Limited Functionality• Size– Small enough to fit into/onto the main eqpt• Real-Time– Response within a specified Time-limit• I/O Devices– Very Few; often, only Sensors & Activators– Conspicuous absence of conventional deviceslike keyboard, CRT screen, hard disk etc
  • 10. Embedded Systems• Overview of Embedded Systems √• Embedded System Design• Embedded System Designer• More Knowledge
  • 11. Embedded System Design• Selection of CPU & other Hardware• Design of the Hardware System• Design & Development of Software• Testing & Debugging• Loading the Software into the EmbeddedSystem’s Memory
  • 12. Selection of CPU & other Hardware• CPU– Speed– Instruction Set– Multitasking Capabilities– Interrupt- handling Capabilities– Power Consumption– Heat Dissipation
  • 13. Memory• Non-Volatile [ROM/PROM/EPROM]– Code– Fixed Data• Look-Up Tables, Constants, Initial Values ofVariables• Volatile [RAM]– Variable Data– temporary data
  • 14. I/O Devices• Depends on :– Main Equipment & its purpose/functions– Purpose to be served by the embeddedsystem• May also need :– HW & SW Interfaces or Drivers for the i/odevices
  • 15. Software Development• Software has to be developed on someother convenient computer system [HostSystem]• The Code obtained in the Host systemshould run in the Embedded System[Target System]
  • 16. Software Development• HW configuration of Host & Target will bedifferent• Should use Cross Compilers & CrossAssemblers on the Host, to get Target System’sMachine Code as the Output• Often, an RTOS [Real Time Operating System] isused
  • 17. Software Development• Usually the SW is developed as a set ofTasks [functions/procedures] & ISRs[Interrupt Service Routines]• Tasks perform some specific actions– most likely, some of the primary functions ofthe Main eqpt• ISRs interrupt running Tasks based oncertain events [inputs from sensors]– to take appropriate action for those inputs– to update data for the tasks
  • 18. Testing & Debugging• Often not possible to test the program byactually loading it into the target system &running it in the Main eqpt• So, code has to be tested in the Hostsystem itself• Need Emulators which can emulate theembedded system’s CPU
  • 19. Testing & Debugging• Drivers & Scaffolds to be written– to simulate actual inputs & behaviour of themain eqpt• Test Data– normally expected range of values– out-of-range values– erroneous data
  • 20. Loading SW in the EmbeddedSystem’s Memory• No operating system in the embeddedsystem• Code generated on the Host systemshould include start-up [initialising] routinesfor the target system• Use of RTOS ensures automatic additionof start-up code
  • 21. Loading SW in the EmbeddedSystem’s Memory• Special programs called Locators enabledeveloper to specify which blocks of code shouldbe loaded at what addresses in the embeddedsystem’s memory• Output of Locator is in the form of a file stored inthe Host; this file will have a special format [notthe standard executable file you get in desktopsystems]• Special programs called Loaders– understand the Locator’s file format– load the code in embedded systems memory
  • 22. Tools for Embedded SoftwareDevelopment• Cross Compilers• Cross Assemblers• Locators• RTOS• Loaders
  • 23. RTOS• Easier Development Environment• Produce Machine Code of Target CPU• Automatic inclusion of code for Start-up &system Initialisation & other necessaryfunctionalities like memory management,process scheduling etc• Many RTOSes available– iRMX86, uC-OS, VxWorks, pSOS, QNX etc• Many of them written in C/C++– allow us to develop programs using C/C++
  • 24. RTOS• Main Features– Multi-tasking– Task Scheduling Policies– Mutual Exclusion using Semaphores– Message Queues, Mailboxes and/or Pipes forInter-Process Communication
  • 25. Hardware Design Considerations• Physical Size– Small• Power Consumption– Low• Heat Dissipation– Very Low• Cost– Low cost, without compromising Quality &Performance
  • 26. Software Design Considerations• Real Time Response– No part of the code can take unpredictableexecution time– ISRs must be kept short– No Dead-Locks or Circular Waits• Reliability– Should run without Human Intervention– Should NOT Crash– Robust & Fault Tolerant– Exception Handling without Malfunction orunpredictable behaviour
  • 27. Embedded Systems• Overview of Embedded Systems √• Embedded System Design √• Embedded System Designer• More Knowledge
  • 28. Embedded System Designer• Specialist• Knowledge of Theory & PracticalTechniques of both Hardware & Software• Strong Foundation in– Digital Logic Ckts, ADCs, DACs, PLCs, FPGAs– Microcontrollers & Interfacing Techniques– Assembly Language Programming– High Level Language Programming [C/C++]– Writing ISRs– RTOS
  • 29. Job Oppurtunities• Employers– Manufacturers of• Telecom Products• Automatons & Industrial Robots• Automated Production & Diagnostic Eqpt– Software Development Firms• Remuneration– Lucrative
  • 30. Embedded Systems• Overview of Embedded Systems √• Embedded System Design √• Embedded System Designer √• More Knowledge
  • 31. For More Knowledge• Books• Hands-on Training
  • 32. Books on Embedded Systems• An Embedded System Primer– David E Simon• Embedded System Design– Steve Heath• The Art of Programming Embedded Systems– Jack G Ganssle• Fundamentals of Embedded Software - Where C andAssembly Meet– Daniel W Lewis• Real Time Systems & Programming Languages– Alan Burns & Andy Wellings• Real Time Programming– Moore Grehan
  • 33. Training on Embedded Systems• TCIL, & their Branches & Franchisees– Telecom Consultants India Ltd– formed by DoT• ECIL, Hyderabad– Electronic Corporation of India Ltd• Many institutes boast of embedded systemtraining– teach only soldering & assembling, using kits– do not teach theory or design principles
  • 34. Thank You !&Best of Luck !

×