Upload
sandeep-reddy
View
42
Download
1
Tags:
Embed Size (px)
Citation preview
Introduction to
EMBEDDED SYSTEM
Presented BySANDEEP REDDY
Application Engineer
Cell: 9000424550Mail: [email protected]
What is a System?
A system is a way of working, organizing or doing one or
many tasks according to a fixed plan, program or set of
rules.
A system is also an arrangement in which all its units
assemble and work together according to the plan or
program.
SYSTEM EXAMPLES
It is a time display SYSTEM
Parts: Hardware, Needles, Battery, Dial, Chassis and Strap
Rules
All needles move clockwise only
A thin needle rotates every second
A long needle rotates every minute
A short needle rotates every hour
All needles return to the original position after 12 hours
WATCH
SYSTEM EXAMPLES
It is an automatic clothes washing SYSTEM
Parts: Status display panel, Switches & Dials, Motor, Power supply & control unit, Inner water level sensor and solenoid valve.
Rules Wash by spinning Rinse Drying Wash over by blinking Each step display the process stage In case interruption, execute only the remaining
WASHING MACHINE
EMBEDDED SYSTEMDefinition: An Embedded System is one that has computer hardware with software embedded in it as one of its important components.
SOFTWARE PROGRAM#include <16f876a.h>#use delay (clock=20000000)#byte PORTB=6main(){set_tris_b(0);portb=255; //decimaldelay_ms(1000);portb=0x55; //hexadecimaldelay_ms(1000);portb=0b10101010; //binarydelay_ms(500);}
HARDWARE
Its software embeds in ROM (Read Only Memory). It does not need secondary memories as in a computer
Other Definitions
We can define an embedded system as “A microprocessor
based system that does not look like a computer”.
Or
we can say that it is “A combination of computer hardware
and software, and perhaps additional mechanical or other
parts, designed to perform a dedicated function. In some
cases, embedded systems are part of a larger system or
product, as is the case of an antilock braking system in a
car ”.
An embedded product uses a microprocessor (or
microcontroller) to do one task and one task only.
A printer is an example of embedded system since the
processor inside it performs only one task; namely, getting
the data and printing it.
ComparisonEmbedded Systems
Few applications that are known at design-time.
Not programmable by end user. (?)
Fixed run-time requirements (additional computing power not useful).
Criteria: cost power consumption predictability …
General Purpose Computing
Broad class of applications.
Programmable by end user.
Faster is better.
Criteria: cost average
speed
Significance
Due to their compact size, low cost and simple
design aspects made embedded systems very popular and
encroached into human lives and have become
indispensable.
History
• In the earliest years of computers in 1930 – 40s, computers were sometimes dedicated to a single purpose task.
• One of the first recognizably modern embedded system was the Apollo Guidance Computer, developed by Charles Stark Draper at the MIT Instrumentation Laboratory.
HistorySince these early applications
in the 1960s, embedded systems have
come down in price and there has
been a dramatic rise in processing
power and functionality. The first
microprocessor for example, the
Intel 4004 was designed for
calculators and other small systems
but still required many external
memory and support chips.
HistoryBy the mid-1980s, most of the
common previously external system
components had been integrated into
the same chip as the processor and
this modern form of the
microcontroller allowed an even more
widespread use, which by the end of
the decade were the norm rather than
the exception for almost all
electronics devices.
Advantages of ES
Low cost.
Small size.
High reliability.
Fast operations.
Easy to manufacture.
Fewer interconnections.
Applications of ES• Medical Systems– pace maker, patient monitoring systems, injection
systems, intensive care units, …• Office Equipment– printer, copier, fax, …
• Tools– multimeter, oscilloscope, line tester, GPS, …
• Banking– ATMs, statement printers, …
• Transportation – (Planes/Trains/[Automobiles] and Boats)
• radar, traffic lights, signaling systems, …
Applications of ES• Automobiles– engine management, trip computer, cruise control,
immobilizer, car alarm,– airbag, …
• Building Systems– elevator, heater, air conditioning, lighting, key card
entries, locks, alarm systems, …• Agriculture– feeding systems, milking systems, …
• Space– satellite systems, …
Applications of ES
Household appliances:
Microwave ovens,
Television,
DVD Players &
Recorders
CLASSIFICATIONS OF EMBEDDED SYSTEM
1. Small Scale Embedded System
2. Medium Scale Embedded System
3. Sophisticated Embedded System
SMALL SCALE EMBEDDED SYSTEM
• Single 8 bit or 16bit Microcontroller.
• Little hardware and software complexity.
• They May even be battery operated.
• Usually “C” is used for developing these system.
• The need to limit power dissipation when system is running continuously.
Programming tools: Editor, Assembler and Cross Assembler
MEDIUM SCALE EMBEDDED SYSTEM
• Single or few 16 or 32 bit microcontrollers or Digital Signal Processors (DSP) or Reduced Instructions Set Computers (RISC).
• Both hardware and software complexity.
Programming tools:
RTOS, Source code Engineering Tool, Simulator, Debugger and Integrated Development Environment (IDE).
SOPHISTICATED EMBEDDED SYSTEM
• Enormous hardware and software complexity
• Which may need scalable processor or configurable processor and programming logic arrays.
• Constrained by the processing speed available in their
hardware units.
Programming Tools:
For these systems may not be readily available at a reasonable cost or may not be available at all. A compiler or retargetable compiler might have to br developed for this.
What is inside an embedded system ?
Every embedded system consists of custom-built hardware built around a Central Processing Unit (CPU). This hardware also contains memory chips onto which the software is loaded. The software residing on the memory chip is also called the ‘firmware’.
The operating system runs above the hardware, and the application software runs above the operating system. The same architecture is applicable to any computer including a desktop computer. However, there are significant differences. It is not compulsory to have an operating system in every embedded system.
Layered architecture of an Embedded System
Now let us see the details of the various building blocks of the hardware of an embedded system.
Central Processing Unit (CPU) Memory (Read only memory and Random access
memory) Input Devices Output Devices Communication interfaces Application specific circuitry
Hardware architecture of an embedded system
Features of an embedded system
Embedded systems do a very specific task, they cannot be programmed to do different things.
Embedded systems have very limited resources, particularly the memory. Generally, they do not have secondary storage devices such as the CDROM or the floppy disk.
Embedded systems have to work against some deadlines. A specific job has to be completed within a specific time. In some embedded systems, called real-time systems, the deadlines are stringent. Missing a dead line may cause a catastrophe – loss of life or damage to property.
• Embedded systems are constrained for power, As many embedded
systems operate through a battery, the power consumption has to
be very low.
• Embedded systems need to be highly reliable. Once in a while,
pressing ALT-CTRL-DEL is OK on your desktop, but you cannot
afford to reset your embedded system.
• Some embedded systems have to operate in extreme environmental
conditions such as very high temperatures and humidity.
Unlike desktop computers in which the hardware platform is
dominated by Intel and the operating system is dominated by
Microsoft, there is a wide variety of processors and operating
systems for the embedded systems. So, choosing the right
platform is the most complex task .
Languages used in ES
Assembly Language: Lowest-level human-readable method for programming Platform specific No need for compilation Used by some compilers, such as GCC, to convert high-level
languages (such as C) into platform-dependent assembly language before assembling into machine language.
Languages used in ES
Assembly Disadvantages: Platform Specific Operated by acting on specific instructions Can perform no other actions besides those specifically listed Instructions are highly atomic: each instruction performs a
single, small instruction Too difficult to program large applications
Languages used in ES
C Language: Source files ‘linked’ together Ability to program in assembly right inside the C- code Easy to write and portable Knowledge of C enables freedom