Академический Документы
Профессиональный Документы
Культура Документы
SYSTEMS BASICS
EMBEDDED SYSTEMS AS IT IS
WHAT IS AN EMBEDDED SYSTEM?
4
EXAMPLES IN YOUR DAILY LIFE
• …wake up …
• …Optional…
• …have breakfast …
5
EXAMPLES IN YOUR DAILY LIFE
CONT….
7
EXAMPLES IN YOUR DAILY LIFE
CONT….
8
EXAMPLES IN YOUR DAILY LIFE
CONT….
• …back at home…
9
MORE EXAMPLES
10
11
12
13
14
APPLICATIONS OF EMBEDDED SYSTEMS
CHARACTERISTICS OF ES
• Embedded systems are very different from general-purpose computers.
• Common characteristics of embedded systems include:
• Single function: An embedded system usually executes only one program
repeatedly. In contrast, a desktop system executes a variety of programs.
• Interacts with the real world: Embedded systems are usually connected to
real-world devices and interact with them through sensors and actuators.
• Tightly constrained: Embedded systems have limited resources available in
terms of memory, CPU and peripheral input/output (I/O) devices to complete
a given job in the desired time.These systems have power constraints also.
• Reactive and real-time: Most embedded systems are required to process
the data in real time.
– Hard Real-time
– Soft Real-time
• Reliability: Embedded systems need to be highly reliable as the implications of
failure are much more severe than of desktop systems.
• Others: Embedded systems are mostly not standalone devices and are
embedded within a larger system. These are supported by a wide array of
processors and processor architectures.
TIME CONSTRAINTS
Embedded systems have to perform in real-time:
The real-time systems have to meet time deadlines and have to
respond within the deadline.
Hard Real-time: failure to meet deadlines causes major hazards
and catastrophes.
Eg: Patient care and monitoring systems
Soft Real-time: failure to meet deadlines does not cause any big
damage.
Eg: Blood Glucose monitor, Digital BP apparatus
18
MAJOR COMPONENTS OF EMBEDDED
SYSTEM
Hardware
Software
– RTOS
– Application Software
19
LAYERS OF EMBEDDED SYSTEM
Classification of embedded
System
Small scale Embedded System
Medium scale embedded system
21
SMALL SCALE EMBEDDED SYSTEM
22
MEDIUM SCALE EMBEDDED SYSTEM
Processor - 16 or 32 bit micro controller , DSP ,RISC
23
SOPHISTICATED EMBEDDED SYSTEM
Processor - Scalable processors, configuration processors,
programmable logic arrays
Hardware complexity – High
24
COMPARISON
Parameter Small scale Medium scale Sophisticated
Processor 8 or 16 bit 16 or 32 bit Scalable processors,
micro micro controller , configuration
controller DSP, RISC processors,
programmable logic
arrays
Hardware Little More High
complexity
Software Little More High
complexity
Programming Editor, RTOS ,Source code May not be available
tools assembler, Engineering Tools,
cross compiler Simulator, Debugger,
,C IDE, Assembler
programming
25
TYPES OF EMBEDDED SYSTEMS
26
TYPES OF EMBEDDED SYSTEMS
27
DESIGN LIFECYCLE OF AN EMBEDDED
SYSTEM
• The first step in designing an ES is the finalisation of product specifications
including functional and non-functional requirements.
• Functional requirements dictate hardware components including the
hardware requirements to process input and output signals, external
interfaces and I/O devices.
• Non-functional requirements include the size, cost and power consumption.
The product specifications are finalized after detailed interactions with the
customer.
• After partitioning, hardware and software designs are carried out. The
hardware team decides the processor and the other peripheral components to
be used depending on the desired functionality, processing speed and memory
addressing capability. The software team decides the development platform to
be used for software development and carries out the design.
• The development platform consists of the hardware board, the operating
system, programming language and the development tools.
• The common programming languages used for development of embedded
systems include C/C++, VC++ and Java. Python, Arduino, Labview and MATLAB
are also being used currently. The development tools include the editor,
compiler, linker, ICE, IDE and so on.
• Hardware-software integration is done by combining the hardware
prototype, application software, driver code and operating system software.
• Extensive product testing is done to ensure that it meets all the requirements.
COST TO FIX THE ERRORS AND THE
WATERFALL MODEL
Time to Market design metric
Introducing an embedded system to the market place
early can make a big difference in the system
profitability ,since market window for products are
becoming very short ,with such windows are often
measured in months
1
Reve
nues
Market window
2
Time In Months
Market window reveals during which time
a product would have highest sales
Missing this window , which means that
the product begins being sold further to
the right on the time scale can mean
significant loss in sales
Each day of delay results in million
dollars loss
Average time to market constraint – 8
Months 3
Assume Peak
Revenue at time W
Market
Market
rise
Fall
On time Delayed 2W
W 4
entry Entry
Revenue on time entry = area of bigger triangle
Revenue on delayed entry = area of smaller
triangle
% Revenue Loss =
( (Ontime – delayed)/Ontime)*100
Peak Revenue =
nue loss for the following products shown in the graph.
Rs.100
Revenue = Rs.60
2 8 5
months months 16
months
NRE & Unit Cost Metrics
Assume Three technologies are available
for developing a product
Tech NRE Cost Unit cost
– A 2000 100
– B 30,000 30
– C 100000 2
Total cost = NRE Cost + Unit cost*# of units
Per product cost = (NRE cost/#of Units) + Unit cost
6
Total cost Vs # of Units
produced
A
T
o
t B
B
a
l
C C
o
s
t
8
An Example Embedded System
Digital camera
9
Block Diagram
10
CCD
– Charge couple device
– Contains an array of light senitive photocells that capture Image
A2D
– Analog images to digital
D2A
– Digital images to analog
11
CCP Preprocessor
Commands CCD to read Image
JPEG Codec
Compress and decompress the image using JPEG Compression standard
Pixel Coprocessor
For rapid Display of an image
Memory Controller
Controls access to memory chip found in camera
12
DMA controller
Enables direct memory access by other devices while the Microcontroller is
performing other functions
UART
13
LCD Control & Display Control
Controls the display on the camera LCD Display
Multiplier/Accumulator
14
Hardware Accelerators
In computing, hardware acceleration is the use of computer hardware specially made to perform some
functions more efficiently than is possible in software running on a general-purpose CPU. Any
transformation of data or routine that can be computed, can be calculated purely in software running
on a generic CPU, purely in custom-made hardware, or in some mix of both. An operation can be
computed faster in application-specific hardware designed or programmed to compute the operation
than specified in software and performed on a general-purpose computer processor. The
implementation of computing tasks in hardware to decrease latency and increase throughput is
known as hardware acceleration.
Hardware acceleration is advantageous for performance, and practical when the functions are fixed
so updates are not as needed as in software solutions.
Custom hardware offers higher performance per watt for the same functions that can be specified in
software. Hardware description languages (HDLs) such as Verilog and VHDL can model the same
semantics as software and synthesize the design into a netlist that can be programmed to an FPGA or
composed into logic gates of an application-specific integrated circuit.
Applications