You are on page 1of 11

EMBEDDED SYSTEMS

Embedded Systems
Supreet Singh, 1050070179

Abstract—The topic of the term paper is Embedded Systems. Embedded system is a specialized computer sys­
tem that is part of a larger system or machine. Typically, an embedded system is housed on a single micropro-
cessor board with the programs stored in ROM. Virtually all appliances that have a digital interface like watch­
es, microwaves, VCRs, cars etc., utilize embedded systems. Some embedded systems include an operating sys-
tem, but many are so specialized that the entire logic can be implemented as a single program. The term paper 
would elaborate the history of embedded systems, the generations of its development, the components of em­
bedded systems, its design issues and the programming languages that are used to build it. Then this paper 
would also include its current state of art, its uses, its current applications, the problems that have occurred in 
designing such kind of systems, also the steps taken to solve such problems and its future prospects.

Index Terms—Applications of embedded system, Components of Embedded System. Designing of Realtime Embedded Systems,
Embedded Systems, History of embedded systems.

——————————  ——————————

1 INTRODUCTION

T hese are the days when the term like embedded is in­
creasingly   becoming   more   and   more   popular   in   the 
world. We are flooded with embedded systems that seem to 
tel to design a set of custom integrated circuits­one for each 
of   their   new   calculator   models.   The   4004  were   Intel's   re­
sponse. Rather than design custom hardware for each cal­
be everywhere.  Now the question is, what basically embed­ culator, Intel proposed a general­purpose circuit that could 
ded systems are. We can define an embedded system as “A   be used throughout the entire line of calculators. This gen­
microprocessor   based   system   that   does   not   look   like   a   eral­purpose processor was designed to read and execute a 
computer [1]”.  Or we can say that it is  “A combination of   set of instructions­software­stored in an external memory 
computer hardware and software, and perhaps additional   chip. Intel's idea was that the software would give each cal­
mechanical or other parts, designed to perform a dedicated   culator its unique set of features.
function. In some cases, embedded systems are part of a   The   microprocessor   was   an   overnight   success,   and   its 
larger system or product, as is the case of an antilock brak­ use increased steadily over the next decade. Early embed­
ing system in a car [2]”. ded   applications   included   unmanned   space   probes,   com­
Embedded   systems  include  a  variety  of  hardware  and  puterized traffic lights, and aircraft flight control systems. 
software components, which perform specific functions in  In the 1980s, embedded systems quietly rode the waves of 
host systems, for example, satellites, washing machines, ro­ the microcomputer age and brought microprocessors into 
bots, hand­held telephones and automobiles. every part of our personal and professional lives. Many of 
Modem, hard drive, floppy drive, and sound card­each  the electronic devices in our kitchens (bread machines, food 
of which is an embedded system. Each of these devices con­ processors,   and   microwave   ovens),   living   rooms   (televi­
tains a processor and software and is designed to perform a  sions,   stereos,   and   remote   controls),   and   workplaces   (fax 
specific function. For example, the modem is designed to  machines, pagers, laser printers, cash registers, and credit 
send and receive digital data over an analog telephone line.  card readers) are embedded systems.
That's it. And all of the other devices can be summarized in  It  seems  inevitable  that  the  number  of embedded sys­
a   single   sentence   as   well.   If   an   embedded   system   is   de­ tems will continue to increase rapidly.
signed   well,   the   existence   of   the   processor   and   software  Already there are promising new embedded devices that 
could be completely unnoticed by a user of the device. Such  have enormous market potential: light switches and ther­
is the case for a microwave oven, VCR, or alarm clock. In  mostats that can be controlled by a central computer, intelli­
some cases, it would even be possible to build an equivalent  gent   air­bag   systems   that   don't   inflate   when   children   or 
device that does not contain the processor and software. small adults are present, palm­sized electronic  organizers 
and personal digital assistants (PDAs), digital cameras, and 
dashboard   navigation   systems.   Clearly,   individuals   who 
HISTORY
possess the skills and desire to design the next generation 
Given   the   definition   of   embedded   systems   earlier  in   this  of   embedded   systems   will   be   in   demand   for   quite   some 
chapter, the first such systems could not possibly have ap­ time.
peared before 1971. That was the year Intel introduced the  Embedded systems really took off in 1992, when Ampro, 
world's  first   microprocessor.  This   chip,  the  4004,  was   de­ RTD, and other  manufacturers  founded the PC/104 Con­
signed for use in a line of business calculators produced by  sortium. The group established a format for Intel micropro­
the Japanese company Busicom. In 1969, Busicom asked In­
AUTHOR: TITLE 2

cessors based on a motherboard approximately four inches  4.5 Dynamic decisions


square, and just under an inch high. The boards were stack­ The system should be able to change its next course of ac­
able, allowing a very powerful computer to be assembled in  tivity based on the change of input from its sensors or sur­
a   box.   The   PC/104   was   initially   targeted   at   military   and  roundings.
medical markets, where it became widely used and respect­
ed. When the processor power increased enough to handle 
multimedia applications, PC/104­based kiosks became pos­ 5 CHALLENGES FOR AN EMBEDDED SYSTEM
sible, and eventually common. [3] The embedded processors are getting more and more pow­
The   first   recognizably   modern   embedded   system   was  erful. It is not uncommon to find embedded systems with 
the   Apollo   Guidance   Computer,   developed   by   Charles  powerful   processors,   like   mobile   (GSM/GPRS)   handsets, 
Draper   and   the   MIT   Instrumentation   Laboratory.   Each  high­speed routers, bridges etc. 
flight to the moon had two.  Programming for the designing of such complex devices 
At the project's inception, the apollo guidance computer  offers   unique   challenges   not   fount   in   PC/workstations 
was considered the riskiest item in the apollo project.  based applications. Some of them are listed below:
The   first   mass­produced   embedded   system   was   the 
guidance computer for the minuteman missile. It also used  5.1 Limited Operating System Support For
integrated circuits, and was the first volume user of them.  Programming
Without this program, integrated circuits might never have  Application programs for PCs/workstations are  launched 
reached a usable price­point.  from the operating system. The tasks like memory manage­
The crucial design features of the minuteman computer  ment, scheduling, hardware abstractions and input/output 
were that its guidance algorithm could be reprogrammed  from/to peripherals are delegated to OS. All these tasks are 
later in the program, to make the missile more accurate. [4] handled by the operating system in a PC environment. In 
embedded systems, the OS is part of application code and it 
closely co­ordinates with the OS to support a majority of 
3 CURRENT DEFINITION the features that a desktop OS may provide.
“A specialized computer system that is part of a larger sys­
tem  or machine. Typically, an embedded system is housed  
5.2 Limited Secondary Memory 
on a single microprocessor board with the programs stored   Many   embedded   systems   do   not   boot   from   a   hard   disk. 
in ROM. Virtually all appliances that have a digital inter­ They depend  on other  types of non­volatile memory like 
face like  watches, microwaves, VCRs, cars utilize embed­ ROM, FLASH memory, instead of secondary memory de­
ded systems. Some embedded systems include an operating   vices.   As   systems   with   16   MB   flash   are   considered   pre 
system, but many are so specialized that the entire logic   mium, therefore our code and data sizes must be small.
can be implemented as a single program. “ [5] 5.3 Limited Random Access Memory
Since embedded systems inherently operate with restriction 
ATTRIBUTES OF AN EMBEDDED SYSTEM on resources (limited resource could be provided), we usu­
As embedded systems started progressing, they started be­ ally don’t have the concept of swapping and virtual memo­
coming   more   and   more   complex.   Additionally,   new   at­ ry   etc.,   in   embedded   systems.   Therefore,   while   program­
tributes that got added to these systems were smart and in­ ming for embedded systems, we must be very careful about 
telligent. Not only were the embedded devices able to do  the memory leaks because these programs tend to run for­
their jobs but also were able to do them smartly. These at­ ever, and even a single byte leak in some path of execution 
tributes can be defined as, will definitely bring the system to a grinding halt at a later 
point of time.
4.1 Computational Power
5.4 Limited Processing Time
  These devices have some amount of computing power. A 
very simple 8­bit controller or a high­end 64­bit micropro­ We cannot afford to have a powerful processor for an em­
cessor could provide this computation power. bedded   system   because   of   obvious   cost   considerations. 
Therefore we may have to work with some microcontrollers 
4.2 Memory with   less   powerful   configurations.   So,   the   code   written 
The   next   requirement   is   memory.   These   devices   possess  must be efficient. We have to choose appropriate algorithms 
some amount of memory that can be used by the processor  and cannot choose an algorithm with high computing re­
and also some to remember user data and preferences. quirements unnecessarily.

4.3 Realtime
All the devices have to respond to user/environmental in­
puts within a specified period of time. 5.5 Interaction with hardware
This   factor   singularly   differentiates   a   normal   application 
4.4 Communication programming from embedded programming. An applica­
The device must be able to receive inputs given by other de­ tion programmer using the most modern operating system 
vices in the environment, process it and provide some solid  can develop software, by remained unaware of the underly­
output to the other devices or users. ing hardware. But, an embedded programmer usually can­
AUTHOR: TITLE 3

not   afford   this   level   of   hardware   independence   since   its  wanting   in   many  embedded  systems.     As   due   to   intense 
code directly interacts with the underlying hardware. Em­ price wars, every resource must be handled with extreme 
bedded programmers usually have to work with realtime  care. In many systems, some space has to be allocated for 
operating   systems   that   generally   cannot   provide   such   a  future expansions. We cannot afford expansion slots as in 
high level of abstraction over hardware due to space and  PC for embedded system due to embedded­hardware de­
time restrictions. sign constraints. So, memory should be handled very care­
fully.
5.6 Absence of standard Input/Output devices Algorithms that use a huge amount of memory or copy­
A PC has standard I/O devices like keyboard, mouse and a  ing of huge data structures are ignored unless it is an abso­
display that can be used to display,  what’s happening in­ lute necessity.
side our program. But many of the embedded devices don  Many embedded systems do not carry hard disk or flop­
not have such I/O devices. So, a programmer has no direct  py disk drives with them. The usage of secondary storage is 
way of knowing what is happening within the system. This  not possible in most embedded systems. So these systems 
seriously  limits   the   amount  of   debugging   possible   on   an  usually have some ROM and nonvolatile RAM where the 
embedded system. code and user preferences are stored.
Some of the programs do not terminate and tend to run 
FUNDAMENTAL COMPONENTS OF EMBEDDED SYSTEMS: forever. In case of somespecial type of systems, when emer­
gency strikes or when some irrecoverable error occurs, em­
Usually   all   embedded   systems   have   a   lot   in   common   in  bedded systems implement watchdog timers which just reset 
terms of their components and their requirements. Some of  the system.
these requirements and components are:
6.3 Realtime
6.1 Computational/ Processing Power
We   can   define   a   system   as   a   collection   of   subsystems   or 
This is one of the primary requirements of an embedded  components that respond to the inputs from the user or the 
system. All systems take input from the user or the environ­ environment or from itself (e.g., timers). Typically, there is a 
ment  as  shown   in  Fig.1.  The  processing,   however,  can  be  time lapse between the time at which the input is given and 
done using microprocessor or a hydraulic circuit or a sim­ the time at which the system responds. In any system, it is 
ple electrical/electronic circuit. This processing power is re­ quite natural to expect some response within a specific time 
quired to translate the request from the user, changes in the  interval. But, there are systems where, very strict (not neces­
environment to the output as desired by the end user. sarily short) deadlines have to be met. These systems are 
called realtime systems. These systems are characterized as, 
User Input “A late answer is a wrong answer”. Realtime systems can be 
classified as

  6.3.1 Hard Realtime Systems


Desired 
Processing
Output A realtime system where missing a deadline could cause 
drastic results that could lead to loss of life/property. For 
example,  aircrafts,  nuclear reactors etc.
Environment
6.3.2 Soft Realtime Systems
A  realtime  system  where a  few missed  deadlines  may 
Fig.1. Processing Power not cause any significant inconvenience to the user. For ex­
ample, televisions, DVD player or music system, multime­
This processing logic that used to be “hardwired” in a chip  dia streaming over Internet (where loss of some packets can 
or other electrical circuits grew up exponentially and is so  be afforded).
complex   nowadays   that   many   functionalities   are   simply  The realtime systems can also be classified as fast and 
unimaginable   without   software.   The   usual   practice   is   to  slow   systems   based   on   the   time   deadlines   they   operate 
hardwire ‘mature’ features in hardware and use software to  with. 
implement developing features. Closely   associated   with   the   concept   of   realtime   is   the 
An embedded system can also take inputs from the envi­ concept of determinism. This is also a very important con­
ronment e.g., a refrigerator or an air conditioner has various  cept that differentiates realtime programming from 
functionalities like defrost, air circulation, temperature con­
trol etc. Some advanced refrigerators may have sensors to 
deodorize and detect inactivity. 
To compute and regulate the various parameters a sys­ normal application programming. A realtime system is the 
tem  may  require   various   levels  of  computing  power.  The  one that behaves predictably, as it responds within a partic­
microcontroller can be chosen based on the required level  ular amount of time. The time interval between the instant 
of computing power. at which the input occurred to the time instance at which 
output   occurs   should   be   ‘deterministic’   or   predictable.   It 
6.2 Memory just requires that the system should always respond within 
Memory is a very precious resource and is always found  a known period of time. 
AUTHOR: TITLE 4

6.4 Communication Elements siles. 


Embedded devices and appliances can no longer remain as  6. Medical equipments 
islands of information storage. They cannot remain isolated;  7. Video game consoles 
rather  they need to communicate with each other to per­ 8. Industrial machinery use programmable logic 
form any operation that is desired by the user. These com­ controllers to handle automation and monitoring. 
munications could be done with some wireless networking  9. Engine  control  computers  and  antilock  brake 
protocols like Bluetooth, Wireless LAN etc. The communi­ controllers for automobiles 
cation element adds “intelligence” to simple embedded re­ 10. Wristwatches 
altime system.  11. Household   appliances,   including   microwave 
The other important parameters that define an embed­ ovens,   air   conditioners,   iron,   washing   machines, 
ded system are and television sets 
12. Home automation products, like thermostats, 
6.4.1 Cost sprinkler, and security monitoring systems 
Cost   is   the   major   driving   factor   behind   many   embedded  13. Network   equipment,   including   routers   and 
systems.   This   requires   the   designer   to   be   extremely   con­ firewalls
scious about memory, peripherals etc. This factor plays an  14. Traffic control (eg intelligent traffic lights)
important role in high volume products. 15. Music Systems
16. Card Reader
6.4.2 Reliability Some of its examples would be elaborated in more detail as 
  Some   products   require   99.999%   proper   processing.   But  follows,
some doesn’t like a bread piece in a toaster. Reliability may 
require the designer to opt for some level of redundancy. 7.1 Music Systems
Today’s advanced music systems are very complex embed­
6.4.3 Lifetime ded devices. They contain a variety of features such as the 
Products that have a longer lifetime must be built with ro­ ability to play various types of media like the magnetic tape 
bust and proven components. (cassettes), audio/video CDs, DVDs, etc. They also have the 
support to preset different types of music like jazz, rock, 
6.4.4 Power consumption
classical,   vocal,   etc.   and   the   environment   (hall,   theatre, 
This factor has become an important area of research in it­ open­air, etc). These features are not hardwired in chips but 
self. With growing number of mobile instruments, power  are usually taken care of by the software that are with these 
consumption has  become a major  concern. The design  of  systems. The processors are typically 8­bit microprocessors 
mobile devices is such that the power consumption is re­ for handling user inputs and display. They have MPEG de­
duced to the minimum. Some of the popular tactics used in­ coders for decoding the input stream for various supported 
clude shutting down those peripherals which are not imme­ media. The RAM for these kinds of systems can vary a lot 
diately required. These tactics are highly dependent on soft­ from 64KB to a few MB depending on how complex the sys­
ware. The programmer for mobile devices is becoming in­ tem is.
creasingly aware of the power saving features in their pro­ For the realtime feature, the media should be read, decoded 
gramming platform.  and the stream must be sent to the speakers/video output 
at a predefined rate. This system needs to interact with its 
7 APPLICATIONS OF EMBEDDED SYSTEMS components as well as other devices in realtime so that the 
desired functionality is achieved like playing your favorite 
Embedded systems are the applications that fuel some of 
music with the help of Bluetooth.
the microprocessors that play a hidden but crucial role in 
our everyday lives. These are the tiny, quick, and smart mi­ 7.2 Card Reader
croprocessors that live inside printers, answering machines,  This   is   one   of   the   systems   that   is   often   encountered   in 
elevators,   cars,   cash   machines,   refrigerators,   thermostats,  buildings that incorporate a security system. A person who 
wristwatches, and even toasters. Embedded systems are on  wants to gain entry to the systems must flash his/her mag­
the cutting edge of consumer electronics, poised to revolu­ netic card in front of the reader. The reader then validates 
tionize various technologies by making them "smarter." the card and may provide or deny access based on 
Embedded System Applications describes the latest tech­
niques for embedded system design in a variety of applica­
tions. This also includes some of the latest software tools for 
embedded system design. Applications of embedded sys­ the privileges given to the card. The system does not have 
tem design in satellites, radio astronomy, space and control  very complex software.
systems. Some of the other examples of embedded systems  On flashing of the card as detected by the magnetic sen­
are as follows: sor, the card identifier is looked upon in the access control 
1. Automatic teller machines  list. If the card does have the access permit then the output 
2. Computer printers  on the unit flashes and the door is unlocked for entry. Or, 
3. Disk drives  the system can emit a sound or display that the access is not 
4. Cellular telephones and telephone switches.  permitted. The unit should just look up the access table and 
5. Inertial guidance systems for aircraft and mis­
AUTHOR: TITLE 5

respond to the user accordingly. after production, some watches are found to keep more reli­
However, this should happen sufficiently fast, typically  able time than most, they can be sold under a brand name 
in less than a second. We cannot afford to have a few sec­
with a higher markup. Otherwise, a profit can still be made 
onds  lapse  because, the  user may  assume  that  his  access 
was not permitted or the system is dysfunctional. The lists  by selling the watch through a discount sales channel. For 
can be stored in a central server where the look up can be  lower­cost versions, the stopwatch buttons or speaker could 
done. In this case, the authentication unit may not require  be   eliminated.   This   would   limit   the   functionality   of   the 
storing of all the lists in its memory. Or, it can store the list  watch   but   might   not   even   require   any   software   changes. 
only for the location for which it controls the access.
And, of course, the cost of all this development effort may 
This is left entirely to the programming style of the de­
signer of the system. The memory required for this system  be fairly high, since it will be amortized over hundreds of 
will depend on the method opted for its design. These units  thousands or even millions of watch sales.
are connected with each other.
7.5 Video Game Player
7.3 Washing Machine When   you   pull   the   Nintendo­64   or   Sony   Playstation   out 
The   main  purpose  of  a  washing  machine   is   just  to wash  from your entertainment center, you are preparing to use an 
clothes. But the modern world has extended it to include 
embedded system. In some cases, these machines are more 
extra functionalities and give more control thereby optimiz­
ing the actual process of washing clothes. Nowadays, wash­ powerful than the comparable generation of personal com­
ing machines come complete with sensors, which maintain  puters. Yet video game players for the home market are rel­
optimum water  temperature,  cloth  dependent spin­speed,  atively inexpensive compared to personal computers. It is 
number of spins, etc. They take care of filling water, heating  the competing requirements of high processing power and 
it to particular temperature, mixing the optimum amount of 
low production cost that keep video game designers awake 
detergent,   soaking   the   clothes   in   water   for   just   the   right 
time,   the   soft   tumble   for   extracting   dirt   and   removing  at night (and their children well­fed).
stains, and excessive detergent from clothes, and finally the  The companies that produce video game players don't usu­
spin­dry. All this happens with the minimum user interven­ ally care how much it costs to develop the system, so long 
tions. The user may just have to select what kind of clothes  as  the  production  costs  of the  resulting product  are  low­
is being put inside the machine. All these functionalities are 
typically around a hundred dollars. They might even en­
handled   by  a   small   microprocessor.   Since   microprocessor 
cannot work in isolation, it needs inputs from sensors and  courage their engineers to design custom processors at a de­
other controlling devices so as to feel what is going around  velopment cost of hundreds of thousands of dollars each. 
and then decides what actions are needed to be performed,  So, although there might be a 64­bit processor inside your 
which parts of the system have to run and in which order.  video  game  player,  it   is  not  necessarily  the  same  type   of 
7.4 Digital Watch processor that would be found in a 64­bit personal comput­
At the end of the evolutionary path that began with sundi­ er. In all likelihood, the processor is highly specialized for 
als, water clocks, and hourglasses is the digital watch.  the demands of the video games it is intended to play.
Among its many features are the presentation of the date  Because   production   cost   is   so   crucial   in   the   home   video 
and time (usually to the nearest second), the measurement  game market, the designers also use tricks to shift the costs 
of the length of an event to the nearest hundredth of a sec­
ond, and the generation of an annoying little sound at the  around.   For   example,   one   common   tactic   is   to   move   as 
beginning of each hour. As it turns out, these are very sim­ much   of   the   memory   and   other   peripheral  electronics   as 
ple tasks that do not require very much processing power  possible off of the main circuit board and onto the game 
or memory. In fact, the only reason to employ a processor at  cartridges. This helps to reduce the cost of the game player, 
all is to support a range of models and features from a sin­ but increases the price of each and every game. So, while 
gle hardware design.
the system might have a powerful 64­bit processor, it might 
The typical digital watch contains a simple, inexpensive 8­
have only a few megabytes of memory on the main circuit 
bit processor. Because such small processors cannot address 
board.   This   is   just   enough   memory   to   bootstrap   the   ma­
very much memory, this type of processor usually contains 
chine to a state from which it can access additional memory 
its own on­chip ROM. And, if there are sufficient registers 
on the game cartridge.
available, this application may not require any RAM at all. 
In   fact,   all   of   the   electronics­processor,   memory,   counters 
and real­time clocks­are likely to be stored in a single chip. 
The only other hardware elements of the watch are the in­
puts (buttons) and outputs (LCD and speaker).
The watch designer's goal is to create a reasonably reliable 
8 BENEFITS OF EMBEDDED SYSTEMS
product that has an extraordinarily low production cost. If,  Taking reference of the above examples, we can well imag­
ine how much such kinds of systems have served humanity. 
AUTHOR: TITLE 6

Whether these benefits are in concerned with security pur­ quire effective fault tolerance, so that when one or 
poses   or   with   human’s   comforts,   in   fact   these   intelligent  two things go wrong the system is able to at least 
systems helped humanity in every phase of life. They have  partially recover. Failure of embedded systems of­
helped man in their progress by developing the new tech­ ten may have serious consequences (loss of lives, 
nologies. Embedded microprocessors enable firms to com­ huge financial losses), so correctness and reliability 
pete on product and service innovation, by adding product  are of vital importance.
and   service   features   that   customer’s   value,   but   which 
would be  largely  impossible without  this  technology.  Ac­
11 LANGUAGES FOR PROGRAMMING EMBEDDED SYSTEMS
cording   to   market   researchers,   consumers   love   electronic 
equipment that can do "smart" things like transmit instruc­ Assembly language was the pioneer for programming em­
tions to other devices wirelessly via infrared signals; be pro­ bedded   systems   till   recently.   Nowadays   there   are   many 
grammed to operate automatically; and connect to super­ more languages to program these systems. Some of the lan­
technologies, such as satellites, to bring remote power into  guages are C, C++, Ada, Forth, and Java together with its 
their own hands.   Such systems have made their life easy  new enhancement J2ME. The presence of tools to model the 
and comfortable. Thus in short such systems have facilitat­ software in UML, SDL is sufficient to indicate the maturity 
ed, by fulfilling the needs of a man or giving him luxuries. of embedded software programming.
The majority of software for embedded systems is still 
done in C language. Recent survey indicates that approxi­
9 DESIGN OF EMBEDDED SYSTEMS mately 45% of the embedded software is still being done in 
Design of embedded software, precise specification C language. C++ is also increasing its presence in embed­
of the software that has to be built, including ded systems. As C++ is based on C language, thus provid­
ing programmer the object oriented methodologies to reap 
1. Assumptions on the environment and on the benefits of such an approach.
other components in the system. C is very close to assembly programming and it allows 
2. Requirements on the implementation very easy access to underlying hardware. A huge number of 
such as available hardware, memory usage, high   quality  compilers  and  debugging  tools   are  available 
safety, error handling and use of energy. for the C language. Though C++ is theoretically more effi­
3. Analysis of realtime behavior should be cient than C, but some of its compilers have bugs due to the 
done to ensure that the deadlines are met on huge   size   of   the   language.   These   compilers   may   cause   a 
time. This requires proper allocation of pro- buggy execution. C language can definitely claim to have 
cesses to processor, scheduling of the tasks more mature compilers C++. Now in order to avail the extra 
and assignment of priorities. benefits of C++ and plus to avoid buggy execution, experts 
4. The selection of protocols for establish- are doing  efforts  to  identify  a subset  of  C++  that  can  be 
ing communication between components, and used in embedded systems and this subset is called Embed­
the analysis to check the correctness and per- ded C++[1]. 
formance of the selected protocols. The software tools (compilers, assemblers and debugger) 
5. The use of advanced methods for the de- used to develop an embedded system can come from sever­
signs should be ensured to achieve the re- al sources: 
quired level of correctness and reliability. 1. Software companies that specialize in the 
embedded market.
2. Ported   from   the   GNU   software   develop­
10 REASONS FOR THE DIFFICULTY IN DESIGNING
ment tools.
EMBEDDED SYSTEMS 3. Sometimes,   development   tools   for   a   per­
Several reasons that development of embedded systems is  sonal computer can be used if the embedded proces­
more difficult than development of any other software are  sor is a close relative to a common PC processor [6]. 
as follows:
1. Complexity. The designing of embedded system is 
12 FUTURE PROSPECTS
more complex than any other software.
2. Testing. There are more failure cases, therefore cor­ It   is   unavoidable   that   computer   will   continue   to   become 
rectness is often more important. cheaper,   smaller   and   more   powerful,   and   that   eventually 
3. Predictability. The performance of a system must be  they   will   be   inexpensive   enough   to   put   in   nearly   every 
predictable in order for people to have confidence  product. In addition, nearly all computers equipped prod­
in it. If the performance is variable, then one is nev­ ucts will have some kind of access to either local networks, 
er sure  that the system will meet its resource re­ or the Internet.
quirements on any given execution.      
4. Specification. The specifications of an embedded 
system must be more detailed.
5. Domain Knowledge. The programmers must have  Over the next decade, many common household items 
more domain knowledge than usual.  will   be   given   embedded   systems,   reinventing   them,   and 
6. Fault tolerance. Embedded systems frequently re­ changing them for forever.
AUTHOR: TITLE 7

Like desktop publishing, and later the Internet, embed­ and traffic lights at a given intersection.


ded systems is a technology that will fundamentally, and  2. A given traffic light will normally be green
permanently,   change   the   way   advertising   and   marketing  for G seconds, yellow lights will last Y seconds.
works. It will also permanently change the kind of products  A red light will remain red for R seconds before
that are made, and how they are made. the traffic is allowed to change direction. For
The development of intelligent products, and intelligent  example, R seconds after the north-south
product marketing, made possible by embedded systems,  street turns red the east-west light will turn
where these machines exist for the convenience of people.  green.
The rise of embedded systems marks a new phase in indus­ 3. Traffic sensors shall be present at major in-
trialization.  tersections to detect car arrivals and depar-
tures.
No   doubt,   the   field   of   embedded   system   is   getting 
more and more challenging, and issues in development of 
COORDINATION AND TRAFFIC SCHEDULING
embedded software are becoming very attracting to a wide 
number  of researchers both in industry and academia. In  1. Initialization
fact, lots of effort is being done in the development of em­
bedded systems and many researchers are still working on  At system initialization, the following variables will
it to make the systems more intelligent and smarter. With  be specified along with other specific intersection
the fast pace of technological progress, that future may be  and lane information for each intersection.
right around the corner. 1. R - duration of the red
light.
2. Y - duration of the yellow
CONCLUSION light.
We have looked into the details of the embedded systems;  3. G - duration of the green
we   have   discussed   its   characteristics,   its   components,   the  light.
challenges   programmer   faces   while   designing   such   sys­ 4. C - duration of the pedes-
tems, its practical implementations, its importance in daily  trian wait before crossing.
lfe   and   its   future   prospects.   In   short,   embedded   systems  5. P - time allotted to pedes-
play an important role in our daily life work. This technolo­ trian to cross street.
gy has made our lives easier and in few decades, it would  2. Synchronization
probably change the outlook of this world.
1. At some time during the day, the in-
tersection will automatically suspend normal
APPENDIX A service and its lights will flash red or yellow.
2. At some non-peak time, scheduled
late at night, the system will resynchronize
REQUIREMENTS FOR TRAFFIC INTERSECTION CONTROL SYSTEM all intersections.
3. Scheduling
INTRODUCTION .1 The system will be able to schedule
The traffic Intersection Control System (TICS) is responsible  traffic flow such that the vehicles traveling
for controlling and managing the flow of traffic and also  major routes can maintain an average speed
managing   the   safety   control   of   the   pedestrian   crossings.  of Av_Speed, a rate determined by the traffic
The system consists of many different traffic lights and sen­ engineers.
sors placed at the intersections of different traffic routes.  .2 Individual traffic lights should be able
to adapt to the traffic conditions based on
sensor information. i.e. G should be in-
Traffic Intersection Control System Objectives creased or decreased depending on the sen-
TICS is a hard real­time system that has the following objec­ sor readings of car arrival frequencies.
tives:  .3 In the event of an accident or similar
1. Manage the flow of traffic by controlling deadlock situations, the system should be
the timing of signaling devices placed at inter- able to schedule wait times accordingly to
sections. prevent the increase of blockage.
2. Enhance safety of drivers and pedestri- .4 Priority in decision-making should be
ans. decided in favor of the main traffic routes.

Pedestrian Access
FUNCTIONAL REQUIREMENTS
1. At each intersection, pedestrian crossing re-
quest buttons will be present.
Basic Functionality
2. After a button is pressed the pedestrian
1. The system shall control all the pedestrian should wait no longer than C seconds for
AUTHOR: TITLE 8

permission to cross. [6] URL:thailand.asinah.net/en/wikipedia/e/em/embedded_sys­


3. Visible notification of crossing permission tem.html
must be available using standard interna- [7] Mike McCracker’s in software engineering Seminar
tional symbols. URL: http://pbl.cc.gatech.edu/embed/16
4. The pedestrian will be given time P to cross [8] URL: www.cs.kun.nl/ita
the street equal to (k * street_length) sec- [9] URL: http://www.compapp.dcu.ie/~cdaly/embed/embedsys.html
onds, where k is [10] URL: http://www.netrino.com/Books/EmbeddedC/index.html
[11] Michael Barr, “Programming Embedded Systems in C and C++”, O’Reilly.

a constant determined by traffic regulations.


5. After half of the time has passed, the cross-
ing permission display should flash a warn-
ing that notifies pedestrians who have not
crossed yet to not attempt to cross.
6. Crossing permission should be withdrawn
approximately 3 seconds before the lights
for oncoming traffic turn yellow.
7. Any conflicts between pedestrian requests
and traffic volume should be decided in fa-
vor of the pedestrian.
8. The traffic system should adjust traffic flow
accordingly to account for heavy pedestrian
scheduling.

Emergency Vehicle Access


1. Emergency vehicles should be able to signal
traffic lights at future intersections to
change at the appropriate time to allow
quick passage.
2. Emergency vehicle passage should override
all other timing constraints in a safe manner.

NONFUNCTIONAL REQUIREMENTS
The traffic system should be able to be adapted to different 
display and sensor specifications. 
1. There shall be protected access to embedded sys­
tems for maintenance and servicing. 
2. There shall be protected access to embedded sys­
tems for maintenance and servicing [7].

ACKNOWLEDGMENT
First of all I would like to thank the Almighty God, without 
his help nothing could be done. Then I would like to thank 
my parents who are so supportive. Lastly I would like to 
thank my teacher Sir Abdul Kahliq, who gave me the op­
portunity to write this term paper.

REFERENCES
[1] Sriram V Iyer, Pankaj Gupta, “Embedded Realtime Systems Program­
ming”, Tata MCGRAW­HILL pg: 4­14
[2] The NetBSD Foundation 
URL: www.netbsd.org/Misc/embed.html#a1
[3] Embedded Systems for Advertising and Marketing 
URL: www.ad­mkt­review.com/public_html/tech/esam.html
[4] Wikipedia Foundation, Encyclopedia
URL: wikipedia.org/wiki/Embedded_system#History
[5] URL: www.webopedia.com/TERM/E/embedded_system.html
AUTHOR: TITLE 9
Table of Content

1 Introduction.........................................................................................................................................................................1
History....................................................................................................................................................................................1
3 Current Definition................................................................................................................................................................2
Attributes Of An Embedded System......................................................................................................................................2
4.1 Computational Power..................................................................................................................................................2
4.3 Realtime.......................................................................................................................................................................2
4.4 Communication............................................................................................................................................................2
4.5 Dynamic decisions.......................................................................................................................................................2
5 Challenges For An Embedded System............................................................................................................................2
5.1 Limited Operating System Support For Programming................................................................................................2
5.2 Limited Secondary Memory ........................................................................................................................................2
5.3 Limited Random Access Memory ...............................................................................................................................2
5.4 Limited Processing Time.............................................................................................................................................2
5.5 Interaction with hardware............................................................................................................................................2
5.6 Absence of standard Input/Output devices ................................................................................................................3
Fundamental Components of Embedded Systems:.............................................................................................................3
6.1 Computational/ Processing Power..............................................................................................................................3
6.2 Memory........................................................................................................................................................................3
6.3 Realtime.......................................................................................................................................................................3
6.3.1 Hard Realtime Systems........................................................................................................................................3
6.3.2 Soft Realtime Systems..........................................................................................................................................3
6.4 Communication Elements............................................................................................................................................4
6.4.1 Cost.......................................................................................................................................................................4
6.4.2 Reliability...............................................................................................................................................................4
6.4.3 Lifetime..................................................................................................................................................................4
6.4.4 Power consumption..............................................................................................................................................4
7 APPLICATIONS OF EMBEDDED SYSTEMS.................................................................................................................4
7.1 Music Systems.............................................................................................................................................................4
7.2 Card Reader................................................................................................................................................................4
7.3 Washing Machine........................................................................................................................................................5
7.4 Digital Watch................................................................................................................................................................5
7.5 Video Game Player......................................................................................................................................................5
8 Benefits Of Embedded Systems......................................................................................................................................5
9 Design of Embedded Systems.........................................................................................................................................6
10 Reasons For The Difficulty in Designing Embedded Systems........................................................................................6
11 Languages For Programming Embedded Systems.......................................................................................................6
12 Future Prospects..............................................................................................................................................................6
Conclusion.............................................................................................................................................................................7
Appendix A.............................................................................................................................................................................7
Requirements for Traffic Intersection Control System..........................................................................................................7
Introduction............................................................................................................................................................................7
Traffic Intersection Control System Objectives ................................................................................................................7
Functional Requirements......................................................................................................................................................7
Basic Functionality ............................................................................................................................................................7
Coordination and Traffic Scheduling ....................................................................................................................................7
Pedestrian Access ............................................................................................................................................................7
Emergency Vehicle Access ..............................................................................................................................................8
Nonfunctional Requirements.................................................................................................................................................8
Acknowledgment...................................................................................................................................................................8
References............................................................................................................................................................................8

You might also like