0% found this document useful (0 votes)
15 views

Unit I Part 1 Introduction Design Methodologies

Uploaded by

Rama Krishna
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

Unit I Part 1 Introduction Design Methodologies

Uploaded by

Rama Krishna
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 46

Unit - I

EMBEDDED COMPUTING

BY

T. RAMAKRISHNAIAH,
ASSOCIATE PROFESSOR,
DEPT OF ECE,VCE.
CONTENTS
Introduction
Complex systems and Microprocessor
Embedded System Design Process
Formalisms for System Design
Design Examples
Definition
Embedded System
 A combination of hardware and software which together form
a component of a larger machine. An example of an embedded
system is a microprocessor that controls an automobile
engine.

 An embedded system is designed to run on its own without


human intervention, and may be required to respond to events
in real time.

***Source: www.computeruser.com/resources/dictionary
Why Embedded System ?
Performance
Technology Advances
 CMOS VLSI dominates older technologies (TTL, ECL)
Computer architecture improvements
 RISC, superscalar, RAID, …

Price
Simpler development
 CMOS VLSI: smaller systems, fewer components
Higher volumes
 CMOS VLSI : same device cost 10,000 vs. 10,000,000 units
Embedded system vs General Computer
Performs one or a few pre-defined tasks

Very specific requirements

Task-specific hardware and mechanical parts

Often mass-produced

Design engineers can optimize it


Embedded System

Microprocessor Micro controller

Micro controllers have built in peripherals and memory


which reduces the size of the system
INTRODUCTION
 In order to understand the design processes, we first need to
understand how and why microprocessors are used for control,
user interface, signal processing, and many other tasks. The
microprocessor has become so common that it is easy to forget
how hard some things are to do without it.
 We first review the various uses of microprocessors and then
review the major reasons why microprocessors are used in
system design–delivering complex behaviors, fast design
turnaround, and so on.
COMPLEX SYSTEMS AND
MICROPROCESSORS
What is an embedded computer system?
It is any device that includes a programmable computer but is
not itself intended to be a general-purpose computer. Thus, a PC
is not itself an embedded computing system, although PCs are
often used to build embedded computing systems. But a fax
machine or a clock built from a microprocessor is an embedded
computing system.
NOTE-: This means that embedded computing system design is a
useful skill for many types of product design.
That’s how we use the Microprocessors
EMBEDDED COMPUTERS
 One example is the Whirlwind, a computer designed at MIT in the
late 1940s and early 1950s. Whirlwind was also the first computer
designed to support real-time operation and was originally
conceived as a mechanism for controlling an aircraft simulator.
Even though it was extremely large physically compared to today’s
computers (e.g., it contained over 4,000 vacuum tubes), its
complete design from components to system was attuned to the
needs of real-time embedded computing.
EXAMPLES
 A microprocessor is a single-chip CPU. Very large scale integration
(VLSI)—the acronym is the name of technology has allowed us to put
a complete CPU on a single chip since 1970s, but those CPUs were
very simple.
 The first microprocessor, the Intel 4004,was designed for an
embedded application, namely, a calculator. The calculator was not a
general-purpose computer—it merely provided basic arithmetic
functions.
 Ted Hoff of Intel realized that a general-purpose computer
programmed properly could implement the required function.
 Integrated circuit design was (and still is) an expensive and time
consuming process, the ability to reuse the hardware design by
changing the software was a key breakthrough.
 The HP-35 was the first handheld calculator to perform transcendental
functions [Whi72]. It was introduced in 1972, so it used several chips
to implement the CPU, rather than a single-chip microprocessor.
 Automobile designers started making use of the microprocessor soon
after single-chip CPUs became available. The most important and
sophisticated use of microprocessors in automobiles was to control
the engine :determining when spark plugs fire, controlling the fuel/air
mixture, and so on.

 The oil shock of the 1970s caused consumers to place much higher
value on fuel economy, and fears of pollution resulted in laws
restricting automobile engine emissions. The combination of low fuel
consumption and low emissions is very difficult to achieve; to meet
these goals without compromising engine performance, automobile
manufacturers turned to sophisticated control algorithms that could
be implemented only with microprocessors.
 The typical microwave oven has at least one microprocessor to
control oven operation. Many houses have advanced thermostat
systems, which change the temperature level at various times during
the day. The modern camera is a prime example of the powerful
features that can be added under microprocessor control.
 A high-end automobile may have 100 microprocessors, but even
inexpensive cars today use 40 microprocessors. Some of these
microprocessors do very simple things such as detect whether seat
belts are in use. Others control critical functions such as the ignition
and braking systems.
Application
BMW 850i brake and stability control system
 Controlling the wheels of the car.
 Reduces skidding by pumping the brakes.
 The purpose of an ABS is to temporarily release the brake on a
wheel when it rotates too slowly—when a wheel stops turning, the
car starts skidding and becomes hard to control. It sits between the
hydraulic pump, which provides power to the brakes.
 The ABS system uses sensors on each wheel to measure the speed
of the wheel. The wheel speeds are used by the ABS system to
determine how to vary the hydraulic fluid pressure to prevent the
wheels from skidding.
The ASC+T system’s job is to control the engine power and
the brake to improve the car’s stability during maneuvers.
The ASC+T controls four different systems: throttle,
ignition timing, differential brake, and (on automatic
transmission cars) gear shifting. The ASC+T can be turned
off by the driver, which can be important when operating
with tire snow chains.
The engine and control management units include the
electronically controlled throttle, digital engine
management, and electronic transmission control. The
ASC+T control unit has two microprocessors on two
printed circuit boards, one of which concentrates on logic-
relevant components and the other on performance-
specific components.
Some of the main characteristics:

• Dedicated (not general purpose)


• Contains a programmable
component
• Interacts (continuously) with the
environment
THE SOFTWARE COMPONENT
Software running on the programmable
processors:
• Application tasks
• Real-Time Operating System
• I/O drivers, Network protocols,
Middleware
Characteristics of Embedded Applications
What makes them special?
☞ Like with “ordinary” applications, functionality and user
interfaces are often very complex.
But, in addition to this:
• Time constraints
• Power constraints
• Cost constraints
• Safety
• Time to market
☞ Time constraints:
Embedded systems have to
perform in real-time: if data is not
ready by a certain deadline, the
system fails to perform correctly.
- Hard deadline: failure to meet
leads to major hazards.
- Soft deadline: failure to meet
can be tolerated but quality of
service is reduced.
☞ Power constraints:
There are several reasons
why low power/energy
consumption is required:
• Cost aspects: High power
consumption ⇒ strong power
supply expensive cooling
system
• Battery life: High energy
consumption ⇒ short battery
☞ Cost constraints:
Embedded systems are very often
mass products in highly competitive
markets and have to be shipped at a
low cost.
What we are interested in:
- Manufacturing cost
- Design cost
Factors: design time, type of
components used (processor,
memory, I/O devices), technology,
testing time, power consumption, etc.
Non-recurring engineering
(NRE) costs (such as design
cost, masks, prototypes) are
becoming very high ⇒ It is very
difficult to come out with low
quantity products; Hardware
and software platforms are
introduced which are used for
several products in a family
☞ Safety critical:
Embedded systems are often used in life
critical applications: avionics, automotive
electronics, nuclear plants, medical
applications, military applications, etc.
• Reliability and safety are major
requirements.
In order to guarantee safety during design:
- Formal verification: mathematics-based
methods to verify certain properties of the
designed system.
- Automatic synthesis: certain design steps
are automatically performed by design tools.
☞ Short time to market:
In highly competitive markets it is critical to
catch the market window: a short delay
with the product on the market can have
catastrophic financial consequences (even if
the quality of the product is excellent).
• Design time has to be reduced!
- Good design methodologies.
- Efficient design tools.
- Reuse of previously designed and
verified (hardware and software) blocks.
- Good designers who understand
both software and hardware!
Why Use Microprocessors?
 Microprocessors are a very efficient way to
implement digital systems.
 Microprocessors make it easier to design families of
products that can be built to provide various feature
sets at different price points and can be extended to
provide new features to keep up with rapidly
changing markets.
 First, microprocessors execute programs very efficiently.
 Second, microprocessor manufacturers spend a great deal of money
to make their CPUs run very fast.

Why not use PCs for all embedded computing? Put another way, how
many different hardware platforms do we need for embedded
computing systems? PCs are widely used and provide a very flexible
programming environment. Components of PCs are, in fact, used in
many embedded computing systems. But several factors keep us from
using the stock PC as the universal Embedded computing platform.
THE PHYSICS OF S/W
Software performance and energy consumption are
very important properties when we are connecting
our embedded computers to the real world. We need
to understand the sources of performance and power
consumption if we are to be able to design programs
that meet our application’s goals.
Challenges in Embedded Computing System
Design
 How much hardware do we need?
 How do we meet deadlines?
 How do we minimize power consumption?
 How do we design for upgradability?
 Does it really work?
■ Complex testing
■ Limited observability and controllability
■ Restricted development environments
Performance in Embedded Computing
Embedded system designers, in contrast, have a very
clear performance goal in mind—their program must
meet its deadline. At the heart of embedded
computing is real-time computing, which is the
science and art of programming to deadlines. The
program receives its input data; the deadline is the
time at which a computation must be finished.
■ CPU
■ Platform
■ Program
■ Task
■ Multiprocessor
THE EMBEDDED SYSTEM DESIGN PROCESS
Cont…
We need to consider the major goals of the design:
■ Manufacturing cost
■ Performance (both overall speed and deadlines)
■ Power consumption
We must also consider the tasks we need to perform at every
step in the design process. At each step in the design, we add
detail:
■ We must analyze the design at each step to determine how
we can meet the specifications.
■ We must then refine the design to add detail.
■ And we must verify the design to ensure that it still meets
all system goals, such as cost, speed, and so on.
Requirements
May be functional or
nonfunctional
■ Performance
■ Cost
■ Physical size and weight
■ Power consumption
EXAMPLE
Requirements analysis of a GPS moving
map
Requirements chart for our
moving map system:
Specification
The specification is more precise—it serves as the contract
between the customer and the architects.
A specification of the GPS system would include several
components:
■ Data received from the GPS satellite constellation.
■ Map data.
■ User interface.
■ Operations that must be performed to satisfy customer
requests.
■ Background actions required to keep the system
running, such as operating the GPS receiver.
NOTE-:UML, a language used for describing specifications
Architecture Design
The architecture is a plan for the overall
structure of the system that will be used later
to design the components that make up the
architecture.
The creation of the architecture is the first
phase of what many designers think of as
design.
A sample architecture for the moving
map
We need to search the
topographic database and to
render (i.e., draw) the results
for the display.
We have chosen to separate
those functions so that we can
potentially do them in parallel
—performing rendering
separately from searching the
database may help us update
the screen more fluidly.
The hardware block diagram
We have one central CPU
surrounded by memory and I/O
devices.
We have chosen to use two
memories: a frame buffer for
the pixels to be displayed and a
separate program/data
memory for general use by the
CPU.
The software block diagram
It is closely follows the system
block diagram, but we have
added a timer to control when
we read the buttons on the
user interface and render data
onto the screen.
Designing Hardware and Software
Components
The component design effort builds
those components in conformance to the
architecture and specification.
The components will in general include
both hardware—FPGAs, boards and so
on—and software modules.
Some of the components will be ready-
made.
Using standard software for these access
functions not only saves us design time, but it
may give us a faster implementation for
specialized functions such as the data
decompression phase.
We will have to design some components our
self. Even if we are using only standard
integrated circuits, we may have to design the
printed circuit board that connects them.
We will probably have to do a lot of custom
programming as well.
The power consumption of the moving
map software example is particularly
important.
We may need to be very careful about how
you read and write memory to minimize
power—for example, since memory
accesses are a major source of power
consumption, memory transactions must be
carefully planned to avoid reading the same
data several times.
System Integration
Only after the components are built do
we have the satisfaction of putting them
together and seeing a working system. Of
course, this phase usually consists of a lot
more than just plugging everything
together and standing back.
 Bugs are typically found during system
integration, and good planning can help
us find the bugs quickly.
System integration is difficult because it usually
uncovers problems.
It is often hard to observe the system in sufficient detail
to determine exactly what is wrong—the debugging
facilities for embedded systems are usually much more
limited than what you would find on desktop systems.
 As a result, determining why things do not set work
correctly and how they can be fixed is a challenge in
itself.
Careful attention to inserting appropriate debugging
facilities during design can help ease system integration
problems, but the nature of embedded computing
means that this phase will always be a challenge.

You might also like