embedded systems - brief intro
TRANSCRIPT
-
8/3/2019 Embedded Systems - Brief Intro
1/34
K Raghu Nathan 1
A Brief Introduction to
Embedded Systems
K. RaghunathanChartered Engineer
FIETE, MIE, MCSI, MISTE, MISTD. MIIMM
Retd. Dy. Controller (R&D)
-
8/3/2019 Embedded Systems - Brief Intro
2/34
K Raghu Nathan 2
Embedded Systems
Overview of Embedded Systems
Embedded System Design
Embedded System Designer
More Knowledge
-
8/3/2019 Embedded Systems - Brief Intro
3/34
K Raghu Nathan 3
Overview of Embedded Systems
What is an Embedded System ?
Examples of Embedded Systems
Why an Embedded System ?
Salient Features
-
8/3/2019 Embedded Systems - Brief Intro
4/34
K Raghu Nathan 4
What is an Embedded System ?
A computer system, fitted as part of some
Equipment 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 the
equipment in which it is embedded
Performs only specific tasks, often in real-time
-
8/3/2019 Embedded Systems - Brief Intro
5/34
K Raghu Nathan 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
-
8/3/2019 Embedded Systems - Brief Intro
6/34
K Raghu Nathan 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, channel
number, subtitles etc Washing Machines Control of Sequence of Operations, Motor
speed & duration control etc
-
8/3/2019 Embedded Systems - Brief Intro
7/34
K Raghu Nathan 7
Why embed a Computer ?
Computers are more suitable for
Control Data Processing Decision Making Digital Communication
-
8/3/2019 Embedded Systems - Brief Intro
8/34
K Raghu Nathan 8
Why embed a Computer ?
Main Equipment is Larger & Costlier;
computer is smaller, cheaper & used for
only some specific purpose
Using General-purpose computer involvesadditional space & wiring. It is better to fit a
small computer inside [or onto] the
equipment itself often, main equipment itself may have to
be small & portable
-
8/3/2019 Embedded Systems - Brief Intro
9/34
K Raghu Nathan 9
Salient Features of Embedded Systems
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; only a set of Sensors & Activators Conspicuous absence of conventional devices
like keyboard, CRT screen, hard disk etc
-
8/3/2019 Embedded Systems - Brief Intro
10/34
K Raghu Nathan 10
Embedded Systems
Overview of Embedded Systems
Embedded System Design
Embedded System Designer
More Knowledge
-
8/3/2019 Embedded Systems - Brief Intro
11/34
K Raghu Nathan 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 Embedded
Systems Memory
-
8/3/2019 Embedded Systems - Brief Intro
12/34
K Raghu Nathan 12
Selection of CPU & other Hardware
CPU Speed
Instruction Set Multitasking Capabilities Interrupt- handling Capabilities Power Consumption
Heat Dissipation
-
8/3/2019 Embedded Systems - Brief Intro
13/34
K Raghu Nathan 13
Memory
Non-Volatile[ROM/PROM/EPROM] Code
Fixed Data Look-Up Tables, Constants, Initial Values of
Variables
Volatile[RAM] Variable Data temporary data
-
8/3/2019 Embedded Systems - Brief Intro
14/34
K Raghu Nathan 14
I/O Devices
Depends on : Main Equipment & its purpose/functions Purpose to be served by the embedded
system
May also need : HW & SW Interfaces or Drivers for the i/o
devices
-
8/3/2019 Embedded Systems - Brief Intro
15/34
K Raghu Nathan 15
Software Development
Software has to be developed on some
other convenient computer system [Host
System]
The Code obtained in the Host system
should run in the Embedded System
[Target System]
-
8/3/2019 Embedded Systems - Brief Intro
16/34
K Raghu Nathan 16
Software Development
HW configuration of Host & Target will be
different
Should use Cross Compilers & CrossAssemblers on the Host, to get Target Systems
Machine Code as the Output
Often, an RTOS [Real Time Operating System] is
used
-
8/3/2019 Embedded Systems - Brief Intro
17/34
K Raghu Nathan 17
Software Development
Usually the SW is developed as a set of
Tasks [functions/procedures] & ISRs
[Interrupt Service Routines]
Tasks perform some specific actions most likely, some of the primary functions of
the 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
-
8/3/2019 Embedded Systems - Brief Intro
18/34
K Raghu Nathan 18
Testing & Debugging
Often not possible to test the program by
actually 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 the
embedded systems CPU
-
8/3/2019 Embedded Systems - Brief Intro
19/34
K Raghu Nathan 19
Testing & Debugging
Drivers & Scaffolds to be written to simulate actual inputs & behaviour of the
main eqpt
Test Data normally expected range of values
out-of-range values erroneous data
-
8/3/2019 Embedded Systems - Brief Intro
20/34
K Raghu Nathan 20
Loading SW in the Embedded
Systems Memory
No operating system in the embedded
system
Code generated on the Host systemshould include start-up [initialising] routines
for the target system Use of RTOS ensures automatic addition
of start-up code
-
8/3/2019 Embedded Systems - Brief Intro
21/34
K Raghu Nathan 21
Loading SW in the Embedded
Systems Memory
Special programs calledLocatorsenabledeveloper to specify which blocks of code should
be loaded at what addresses in the embedded
systems memory Output of Locator is in the form of a file stored in
the Host; this file will have a special format [not
the standard executable file you get in desktop
systems] Special programs called Loaders
understand the Locators file format load the code in embedded systems memory
-
8/3/2019 Embedded Systems - Brief Intro
22/34
K Raghu Nathan 22
Tools for Embedded Software
Development
Cross Compilers Cross Assemblers
Locators
RTOS
Loaders
-
8/3/2019 Embedded Systems - Brief Intro
23/34
K Raghu Nathan 23
RTOS
Cross-Compiler with extra features Easier Development Environment Produce Machine Code of Target CPU
Automatic inclusion of Start-up Code 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++
-
8/3/2019 Embedded Systems - Brief Intro
24/34
-
8/3/2019 Embedded Systems - Brief Intro
25/34
K Raghu Nathan 25
Hardware Design Considerations
Physical Size Small
Power Consumption Low
Heat Dissipation Very Low
Cost Low cost, without compromising Quality &
Performance
-
8/3/2019 Embedded Systems - Brief Intro
26/34
K Raghu Nathan 26
Software Design Considerations
Real Time Response No part of the code can take unpredictable
execution 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 or
unpredictable behaviour
-
8/3/2019 Embedded Systems - Brief Intro
27/34
K Raghu Nathan 27
Embedded Systems
Overview of Embedded Systems
Embedded System Design
Embedded System Designer
More Knowledge
-
8/3/2019 Embedded Systems - Brief Intro
28/34
K Raghu Nathan 28
Embedded System Designer
Specialist Knowledge of Theory & Practical
Techniques of both Hardware & Software
Strong Foundation in Digital Logic Ckts, ADCs, DACs, PLCs, FPGAs Microcontrollers & Interfacing TechniquesAssembly Language Programming High Level Language Programming [C/C++] Writing ISRs RTOS
-
8/3/2019 Embedded Systems - Brief Intro
29/34
K Raghu Nathan 29
Job Oppurtunities
Employers Manufacturers of
Telecom Products
Automatons & Industrial Robots Automated Production & Diagnostic Eqpt
Software Development Firms
Remuneration Lucrative
-
8/3/2019 Embedded Systems - Brief Intro
30/34
K Raghu Nathan 30
Embedded Systems
Overview of Embedded Systems
Embedded System Design
Embedded System Designer
More Knowledge
-
8/3/2019 Embedded Systems - Brief Intro
31/34
K Raghu Nathan 31
For More Knowledge
Books
Hands-on Training
-
8/3/2019 Embedded Systems - Brief Intro
32/34
K Raghu Nathan 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 and
Assembly Meet Daniel W Lewis
Real Time Systems & Programming Languages Alan Burns & Andy Wellings Real Time Programming
Moore Grehan
-
8/3/2019 Embedded Systems - Brief Intro
33/34
K Raghu Nathan 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 system
training teach only soldering & assembling using kits do not teach theory or design
-
8/3/2019 Embedded Systems - Brief Intro
34/34
K Raghu Nathan 34
Thank You !