A Seminar On Embedded Systems
By
SRABAN KU. PAHADASINGH
Contents
• Introduction to Embedded Systems
• Design Issues
• Embedded software Development
• Hardware for Embedded Systems
• Types of memory
• Embedded languages
• Application
• conclusion
What is an Embedded System ?
• An embedded system is a combination of the computer
hardware and software accomplished with additional
mechanical or other parts designed to perform a specific
function.
• Embedded software is an almost every electronic device in
the use today. There is a software hidden away inside our
watches, VCR's, cellular phones
• A well-designed embedded system conceals the existence
of the processor and the software .
• Each embedded System is unique, and the hardware is
highly specialized to the application domain.
How does an Embedded system differ
from computer system ?
• An Embedded system is a specific to a application, whereas a
computer system is generic.
• Though the components are same there is substantial difference in
them.
• A personal computer is not designed to perform a specific function,
rather it is able to do many things.
• The essential difference is that a computer when manufactured is in
blank state, the manufacturer does not know what the customer will do
with it, while an Embedded system is application specific.
• An Embedded systems is a component within some large systems.
• If required each of the embedded systems are connected by a sort of a
communication network.
• Numerous embedded systems make up the computer system.
Embedded system Vs Real time
System
• Real time system is a subclass of Embedded systems that
has strict timing constraints.
• A real time system is specified in terms of its ability to
make certain calculations or decisions in a timely manner
to face the deadline.
• A missed deadline is just as bad as a wrong answer which
is very crucial.
• A real time system must be diligently designed which must
guarantee reliable operation of the hardware and the
software under all possible conditions.
A real time system has two flavors
Hard Real time systems
Soft Real time Systems
 A hard real time system guarantees that critical tasks be
completed on time, the goal requires that all the delays in the system
need to be bounded. The current task is of high priority and there shall
be no preemption.
 A less restrictive type of real time system is a soft real time
system, where a critical real time task gets priority over other
tasks,and retains the priority until it completes it’s task.
A generic Embedded System
• All embedded systems
contain some type of inputs
and some outputs.
• The outputs of the system
are the a function of its
input and several other
factors.
• The inputs to the system
are control knobs and
buttons, the outputs are
typically the display’s on
the front panel.
Memory
Processor
i/p o/p
Common design requirements
 Processing power
 Memory
 Development cost
 Number of units
 Expected life time
 Reliability
Embedded systems are still commonly built with older and less costly
8-bit and 16-bit processor.
For holding the executable software and the data it manipulates
on.The register width of the processor provides the upper limit on the
amount of memory it can access.
• The cost of the hardware and software design process. This is fixed
one time cost, this is the only accurate measure of the system cost.
• The development cost depends on the number of units of the item to
be developed.
• How long must the system continue to function ? This affects all sorts
of design decisions from the selection of hardware components to how
much the system may cost to develop and produce.
• How reliable must the final product be ? If it is a toy, it doesn’t always
have to work right, but if its a part of a space shuttle or a car, it had
sure better do what it is supposed to each and every time.
The build process
• The embedded system programming is not substantially different from the
ordinary programming. The only thing that has really changed is that each
target hardware platform is unique.
• The process of converting the source code representation of the embedded
software into an executable binary image involves three distinct steps.
 Compiling / Assembling uses Compiler.
 Linking uses Linker.
 Relocating uses Locator.
• In the first step each of the source files must be compiled or assembled
into object code.
• The job of a compiler is mainly to translate programs written in some
human readable format into equivalent set of opcodes for a particular
processor.
• The use of the cross compiler is one of the defining features of
embedded software development.
• In the second step all of the object files that result from the first step
must be linked together to produce a single object file, called the
relocatable program.
• Finally, physical memory addresses must be assigned to the relative
offsets within the relocatable program in a process called relocation.
• The tool that performs the conversion from relocatable to executable
binary image is called a locator.
• The result of the final step of the build process is an absolute binary
image that can be directly programmed into a ROM device.
Hardware for Embedded Systems
• Prior to writing software for an embedded system, one
must be familiar with the hardware on which it will run.
• The processor and software pair can be replaced with a
custom integrated circuit that performs the same function
in hardware.
• When the design is hard coded in this manner lot of
flexibility is lost.
• Knowing the purpose of the hardware and making a data
flow diagram makes the task of the designer easy.
• Each of the embedded system is unique and the hardware
is highly specialized to the application domain.
Common memory types in Embedded
Systems
Memory
RAM Hybrid ROM
DRAM SRAM NVRAM Flash EEPROM EPROM PROM Masked
Types of memory
• Many types of memory devices are available for use in modern
embedded systems, the difference between them need to be known to
use them effectively.
• Other than the ROM and RAM there is a third kind of memory device
called hybrid memory which exhibits some of the characteristics of
both.
• Among all the types NVRAM, the non-volatile RAM is fairly
common in embedded systems, even after its high cost.
Embedded Languages
• C has been the language of the embedded programmers. The inherent
advantages in this is that, it is fairly simple to learn, compilers are
available for almost every processor in use today.
• C which is considered as a middle level language having both the
constructs of the low-level as well as high-level, has all the rich
features in it that makes it the choice of the embedded programmers.
• Of course, C is not the only language used by embedded programmers
there are other languages like
 Assembly language
 C++
 Ada
• These languages though exists did not gain popularity as C.
Applications
• Embedded software is in almost every electronic device
designed today.
• Early embedded applications included unmanned space
probes,computerized traffic lights and air traffic control
systems.
• There is software hidden away inside our watches,
microwaves, VCR’s, cellular telephones, and pagers.
• The military uses embedded software software to guide
smart missiles and detect enemy aircraft.
• Communication satellites, space probes and modern
medicine would be nearly impossible without it.
Conclusion
• Each of the embedded system is unique and the hardware is highly
specialized to the application domain. As a result, embedded systems
programming can be widely varying experience and can take years to
master.
• One common denominator across almost all embedded software
development is the use of C programming language.
• It seems inevitable that the number of embedded systems will continue
to increase rapidly.
• Already there are promising new embedded devices that have
enormous market potential.
• Individuals who possess the skills and desire to design the next
generation of embedded systems will be in demand for quite some
amount of time.
Thinking of
embedded systems
This is not the end..
This is the beginning…..
This seminar is
presented by
S. K. PAHADASINGH
0601292083
8th
semester (CSE)

embeddedsystems-100429081552-phpapp01.pdf

  • 1.
    A Seminar OnEmbedded Systems By SRABAN KU. PAHADASINGH
  • 2.
    Contents • Introduction toEmbedded Systems • Design Issues • Embedded software Development • Hardware for Embedded Systems • Types of memory • Embedded languages • Application • conclusion
  • 3.
    What is anEmbedded System ? • An embedded system is a combination of the computer hardware and software accomplished with additional mechanical or other parts designed to perform a specific function. • Embedded software is an almost every electronic device in the use today. There is a software hidden away inside our watches, VCR's, cellular phones • A well-designed embedded system conceals the existence of the processor and the software . • Each embedded System is unique, and the hardware is highly specialized to the application domain.
  • 4.
    How does anEmbedded system differ from computer system ? • An Embedded system is a specific to a application, whereas a computer system is generic. • Though the components are same there is substantial difference in them. • A personal computer is not designed to perform a specific function, rather it is able to do many things. • The essential difference is that a computer when manufactured is in blank state, the manufacturer does not know what the customer will do with it, while an Embedded system is application specific. • An Embedded systems is a component within some large systems. • If required each of the embedded systems are connected by a sort of a communication network. • Numerous embedded systems make up the computer system.
  • 5.
    Embedded system VsReal time System • Real time system is a subclass of Embedded systems that has strict timing constraints. • A real time system is specified in terms of its ability to make certain calculations or decisions in a timely manner to face the deadline. • A missed deadline is just as bad as a wrong answer which is very crucial. • A real time system must be diligently designed which must guarantee reliable operation of the hardware and the software under all possible conditions.
  • 6.
    A real timesystem has two flavors Hard Real time systems Soft Real time Systems  A hard real time system guarantees that critical tasks be completed on time, the goal requires that all the delays in the system need to be bounded. The current task is of high priority and there shall be no preemption.  A less restrictive type of real time system is a soft real time system, where a critical real time task gets priority over other tasks,and retains the priority until it completes it’s task.
  • 7.
    A generic EmbeddedSystem • All embedded systems contain some type of inputs and some outputs. • The outputs of the system are the a function of its input and several other factors. • The inputs to the system are control knobs and buttons, the outputs are typically the display’s on the front panel. Memory Processor i/p o/p
  • 8.
    Common design requirements Processing power  Memory  Development cost  Number of units  Expected life time  Reliability Embedded systems are still commonly built with older and less costly 8-bit and 16-bit processor. For holding the executable software and the data it manipulates on.The register width of the processor provides the upper limit on the amount of memory it can access.
  • 9.
    • The costof the hardware and software design process. This is fixed one time cost, this is the only accurate measure of the system cost. • The development cost depends on the number of units of the item to be developed. • How long must the system continue to function ? This affects all sorts of design decisions from the selection of hardware components to how much the system may cost to develop and produce. • How reliable must the final product be ? If it is a toy, it doesn’t always have to work right, but if its a part of a space shuttle or a car, it had sure better do what it is supposed to each and every time.
  • 10.
    The build process •The embedded system programming is not substantially different from the ordinary programming. The only thing that has really changed is that each target hardware platform is unique. • The process of converting the source code representation of the embedded software into an executable binary image involves three distinct steps.  Compiling / Assembling uses Compiler.  Linking uses Linker.  Relocating uses Locator.
  • 11.
    • In thefirst step each of the source files must be compiled or assembled into object code. • The job of a compiler is mainly to translate programs written in some human readable format into equivalent set of opcodes for a particular processor. • The use of the cross compiler is one of the defining features of embedded software development. • In the second step all of the object files that result from the first step must be linked together to produce a single object file, called the relocatable program. • Finally, physical memory addresses must be assigned to the relative offsets within the relocatable program in a process called relocation. • The tool that performs the conversion from relocatable to executable binary image is called a locator. • The result of the final step of the build process is an absolute binary image that can be directly programmed into a ROM device.
  • 12.
    Hardware for EmbeddedSystems • Prior to writing software for an embedded system, one must be familiar with the hardware on which it will run. • The processor and software pair can be replaced with a custom integrated circuit that performs the same function in hardware. • When the design is hard coded in this manner lot of flexibility is lost. • Knowing the purpose of the hardware and making a data flow diagram makes the task of the designer easy. • Each of the embedded system is unique and the hardware is highly specialized to the application domain.
  • 13.
    Common memory typesin Embedded Systems Memory RAM Hybrid ROM DRAM SRAM NVRAM Flash EEPROM EPROM PROM Masked
  • 14.
    Types of memory •Many types of memory devices are available for use in modern embedded systems, the difference between them need to be known to use them effectively. • Other than the ROM and RAM there is a third kind of memory device called hybrid memory which exhibits some of the characteristics of both. • Among all the types NVRAM, the non-volatile RAM is fairly common in embedded systems, even after its high cost.
  • 15.
    Embedded Languages • Chas been the language of the embedded programmers. The inherent advantages in this is that, it is fairly simple to learn, compilers are available for almost every processor in use today. • C which is considered as a middle level language having both the constructs of the low-level as well as high-level, has all the rich features in it that makes it the choice of the embedded programmers. • Of course, C is not the only language used by embedded programmers there are other languages like  Assembly language  C++  Ada • These languages though exists did not gain popularity as C.
  • 16.
    Applications • Embedded softwareis in almost every electronic device designed today. • Early embedded applications included unmanned space probes,computerized traffic lights and air traffic control systems. • There is software hidden away inside our watches, microwaves, VCR’s, cellular telephones, and pagers. • The military uses embedded software software to guide smart missiles and detect enemy aircraft. • Communication satellites, space probes and modern medicine would be nearly impossible without it.
  • 17.
    Conclusion • Each ofthe embedded system is unique and the hardware is highly specialized to the application domain. As a result, embedded systems programming can be widely varying experience and can take years to master. • One common denominator across almost all embedded software development is the use of C programming language. • It seems inevitable that the number of embedded systems will continue to increase rapidly. • Already there are promising new embedded devices that have enormous market potential. • Individuals who possess the skills and desire to design the next generation of embedded systems will be in demand for quite some amount of time.
  • 18.
    Thinking of embedded systems Thisis not the end.. This is the beginning…..
  • 19.
    This seminar is presentedby S. K. PAHADASINGH 0601292083 8th semester (CSE)