0% found this document useful (0 votes)
37 views173 pages

UNIT 1 Embedded

The document provides an introduction to embedded systems, defining them as combinations of hardware and software designed for specific tasks with real-time constraints. It outlines the components, characteristics, and applications of embedded systems, as well as the differences between general-purpose processors and embedded systems. Additionally, it discusses the design process for embedded systems, including requirements gathering, architecture design, and system integration.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views173 pages

UNIT 1 Embedded

The document provides an introduction to embedded systems, defining them as combinations of hardware and software designed for specific tasks with real-time constraints. It outlines the components, characteristics, and applications of embedded systems, as well as the differences between general-purpose processors and embedded systems. Additionally, it discusses the design process for embedded systems, including requirements gathering, architecture design, and system integration.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 173

INTRODUCTION TO EMBEDDED SYSTEM

DESIGN
What is a System?
It is an arrangement in which all its components are
assembled and work together according to a set of rules.

Example: Watch is a time displaying system.

05/07/2025 R.M.K.ENGINEERING COLLEGE 1


What is an Embedded System (ES) ?

 It is a combination of Hardware and Software


 It is designed to perform a particular task
 The task has to be completed in a given time.
Definition:
Embedded System is a combination of hardware and software designed to
perform a particular task that has to be completed in a given time.
Example: Mobile Phones, Washing Machine , Microwave oven etc..

05/07/2025 R.M.K.ENGINEERING COLLEGE 2


What is a real time system?

A real-time system is one that must process information and


produce a response within a specified time, else risk severe
consequences, including failure.

It is of two types,

• Hard Real time system

• Soft Real time system


05/07/2025 R.M.K.ENGINEERING COLLEGE 3
Components of Embedded System:
POWER SUPPLY

INPUT OUTPUT

CONTROLLER
Input- Sensors,Buttons,Touch panels, Bluetooth etc..
Outputs: LED, LCD, Bluetooth ,Infrared
FREQUENCY
GENERATOR
Controller: RAM-Run time memory, ROM-Code

Memory,ALU,CU.
Frequency generator: Crystal oscillator.

05/07/2025 R.M.K.ENGINEERING COLLEGE 4


Characteristics of Embedded System
1. Sophisticated Functionality
2. Real time operations
3. Low Manufacturing Cost
4. Low power consumption
5. Application dependent processor and not general purpose processor
which we find in computer.
6. Restricted memory.

05/07/2025 R.M.K.ENGINEERING COLLEGE 5


Difference between General purpose
processor and Embedded system
General purpose computer Embedded System
Purpose Multi-purpose Single function
Constrained Low or no resource Size, power, cost, memory, real
constrained time
Performance Faster and Better Fixed Runtime requirements
User Interface Keyboard, Display, mouse , Integrated into real world like
touch screen button and sensor.

05/07/2025 R.M.K.ENGINEERING COLLEGE 6


Application of Embedded Systems:
1. Medical System:
 Pace Maker
 Patient monitoring system
 ICU

2.Office Equipment's:
 Printers
 Copier
 FAX Machine.

05/07/2025 R.M.K.ENGINEERING COLLEGE 7


3.Embedded Systems in Automobiles
 Motor Control System
 Cruise Control System
 Engine or Body Safety
 Robotics in Assembly Line
 Car Entertainment
 Car multimedia
 Mobile and E-Com Access
4.Embedded systems in Telecommunications
 Mobile computing
 Networking
05/07/2025
Wireless Communications R.M.K.ENGINEERING COLLEGE 8
5.Embedded Systems in Smart Cards
 Banking
 Telephone
 Security Systems

6.Embedded Systems in Missiles and Satellites


 Defense
 Aerospace
 Communication

05/07/2025 R.M.K.ENGINEERING COLLEGE 9


7.Embedded Systems in Computer Networking & Peripherals
• Networking Systems
• Image Processing
• Printers
• Networks Cards
• Monitors and Displays

8.Embedded Systems in Digital Consumer Electronics


• DVDs
• Set top Boxes
• High Definition TVs
• Digital Cameras
05/07/2025 R.M.K.ENGINEERING COLLEGE 10
Early History of Embedded System
Application Analog
• Late 1940’s: MIT Whirlwind computer was DSP
Cod Specific Gates I/O
designed for real-time operations e
 to control aircraft simulator
• First microprocessor: Intel 4004 in early 1970’s
 microprocessor: a single-chip CPU Processo
r Cores Memory
• Key breakthrough: HP-35 (1972)
 due to the high cost of VLSI design, reuse
the HW design by changing the SW
 1st handheld calculator to compute complex
math functions
 HP-35 uses several chips to implement the
CPU

05/07/2025 R.M.K.ENGINEERING COLLEGE 11


Early History of Embedded System
• Automobiles used microprocessor-based engine controllers starting in
1970’s.
 Control fuel/air mixture, engine timing, etc.
 2 pushes: oil crisis & environment protection.
 Low fuel consumption & low emission
 Multiple modes of operation: warm-up, cruise, hill climbing, etc.
 Sophisticated control can only be done with microprocessors

05/07/2025 R.M.K.ENGINEERING COLLEGE 12


COMPLEX SYSTEMS AND MICROPROCESSORS
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.
EX: Automobiles, cell phones, and even household
appliances
05/07/2025 R.M.K.ENGINEERING COLLEGE 13
COMPLEX SYSTEMS AND MICROPROCESSORS contd…

Why we 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.
■ Microprocessors execute programs very efficiently.
Modern RISC processors can execute one instruction per clock cycle most of the
time, and high performance processors can execute several instructions per cycle (MIPS).
■ Microprocessor manufacturers spend a great deal of money to make their CPUs run very
fast.
■ Microprocessors generally dominate new fabrication lines because they can be
manufactured in large volume and are guaranteed to command high prices.
■ Microprocessors are very efficient utilizers of logic. The generality of a microprocessor
and the need for a separate memory may suggest that microprocessor-based designs are
inherently much larger than custom logic designs

05/07/2025 R.M.K.ENGINEERING COLLEGE 14


Microprocessor Varieties
• Microcontroller:
 Includes I/O devices, onboard memory
Intel, ARM, Motorola, Hitachi
• Digital signal processor (DSP):
 Microprocessor optimized for digital signal processing
Analog Devices, Motorola, TI
• Typical embedded word sizes:
 8-bit, 16-bit, 32-bit

05/07/2025 R.M.K.ENGINEERING COLLEGE 15


COMPLEX SYSTEMS AND MICROPROCESSORS contd…
Why not use PCs for all embedded computing?

PCs are widely used and provide a very flexible programming environment.
Components of PCs are, in fact, used in many embedded computing systems.

1. Real-time performance requirements often drive us to different


architectures.

2. Low power and low cost also drive us away from PC architectures and
toward multiprocessors. Personal computers are designed to satisfy a broad
mix of computing requirements and to be very flexible. Those features
increase the complexity and price of the components. They also cause the
processor and other components to use more energy to perform a given
function.

05/07/2025 R.M.K.ENGINEERING COLLEGE 16


COMPLEX SYSTEMS AND MICROPROCESSORS contd…

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? (Reliability)
 Complex testing
 Limited observability and controllability
 Restricted development environments

05/07/2025 R.M.K.ENGINEERING COLLEGE 17


QUIZ
1.Which is the most basic non-volatile memory?
a) Flash memory
b) PROM
c) EPROM
d) ROM

05/07/2025 R.M.K.ENGINEERING COLLEGE 18


Answer: d

Explanation: The basic non-volatile memory is ROM or mask


ROM, and the content of ROM is fixed in the chip which is useful
in firmware programs for booting up the system.

05/07/2025 R.M.K.ENGINEERING COLLEGE 19


2.Which is the early form of non-volatile memory?
a) magnetic core memory
b) ferrimagnetic memory
c) anti-magnetic memory
d) anti-ferromagnetic

05/07/2025 R.M.K.ENGINEERING COLLEGE 20


Answer: a

Explanation: The early form of non-volatile memory is known as


magnetic core memory in which the ferromagnetic ring was
magnetised to store data.

05/07/2025 R.M.K.ENGINEERING COLLEGE 21


3.Do Embedded system has a deadline for each task.
a)True
b)False

4.What are the three main parts of an embedded System?

05/07/2025 R.M.K.ENGINEERING COLLEGE 22


THE EMBEDDED SYSTEM DESIGN PROCESS

Embedded system design process aimed at two objectives:

1. It will give us an introduction to the various steps in


embedded system design before we deliver into them in more
detail.
2. It will allow us to consider the design methodology itself.

05/07/2025 R.M.K.ENGINEERING COLLEGE 23


THE EMBEDDED SYSTEM DESIGN PROCESS

05/07/2025 R.M.K.ENGINEERING COLLEGE 24


THE EMBEDDED SYSTEM DESIGN PROCESS
The major goals of the design:
■ manufacturing cost
■ performance (both overall speed and deadlines)
■ power consumption.

Stepwise refinements:

■ analyze the design at each step to determine the characteristics of the


current state of the design..
■ refine the design to add detail.
■ verify the design to ensure that it still meets all system goals, such as
cost, speed, and so on.

05/07/2025 R.M.K.ENGINEERING COLLEGE 25


THE EMBEDDED SYSTEM DESIGN PROCESS Contd..
Requirements

• First, we gather an informal description from the customers known


as requirements, and we refine the requirements into a specification
that contains enough information to begin designing the system
architecture.
• May be developed in several ways,
-- talking directly to the customers.
-- talking to marketing representatives,
-- providing prototypes to users for comment.

05/07/2025 R.M.K.ENGINEERING COLLEGE 26


Requirements may be functional or nonfunctional:

Functional requirements:
o output as a function of input.

nonfunctional requirements include:


o Time required to compute the output
o Physical size and weight
o Power consumption
o Performance, speed
o Cost (manufacturing cost ; Nonrecurring engineering(NRE) costs)

05/07/2025 R.M.K.ENGINEERING COLLEGE 27


Requirements Forms:
• Name
• Purpose
• Inputs
• Outputs
• Functions
• Performance
• Manufacturing cost
• Power
• Physical size/weight
05/07/2025 R.M.K.ENGINEERING COLLEGE 28
Specification
• A more precise description of the system
-- should not imply a particular architecture
-- provides input to the architecture design process
• May include functional and non-functional elements.
• May be executable or may be in mathematical form for proofs.

05/07/2025 R.M.K.ENGINEERING COLLEGE 29


Architecture Design
• What major components go satisfying the specification?
Hardware Components:
-- CPU, peripherals etc..
Software Components:
-- major programs and their operations
• Must take into account functional and non-functional specifications

05/07/2025 R.M.K.ENGINEERING COLLEGE 30


Designing hardware and software
components
• Must spend time architecting the system before you start
coding.
• Some components are ready-made , some can be modified
from existing designs, others must be designed from scratch.

05/07/2025 R.M.K.ENGINEERING COLLEGE 31


System Integration
• Put together the components
- Many bugs appear only at this stage
• Have a plan for integrating components to uncover bugs
quickly, test as much functionality as early as possible.

05/07/2025 R.M.K.ENGINEERING COLLEGE 32


Summary
• Embedded computers are all around us
-- many systems have complex embedded hardware and
software
• Embedded system pose many design challenges: design time,
deadlines, power ,etc.,
• Design methodologies help us to manage the design process .

05/07/2025 R.M.K.ENGINEERING COLLEGE 33


QUIZ
1.Which one of the following offers CPUs as integrated memory or
peripheral interfaces?
a) Microcontroller
b) Microprocessor
c) Embedded system
d) Memory system

05/07/2025 R.M.K.ENGINEERING COLLEGE 34


Answer: a

Explanation: Microcontrollers are the CPUs which have integrated


memory and peripherals but microprocessor possesses external chips for
memory.

05/07/2025 R.M.K.ENGINEERING COLLEGE 35


2.Which of the following offers external chips for memory and
peripheral interface circuits?
a) Microcontroller
b) Microprocessor
c) Peripheral system
d) Embedded system

05/07/2025 R.M.K.ENGINEERING COLLEGE 36


Answer: b

Explanation: Microcontrollers are the CPUs which have integrated


memory and peripherals whereas microprocessor offers external chips
for memory.

05/07/2025 R.M.K.ENGINEERING COLLEGE 37


3. What is CISC?
a) Computing instruction set complex
b) Complex instruction set computing
c) Complimentary instruction set computing
d) Complex instruction set complementary

05/07/2025 R.M.K.ENGINEERING COLLEGE 38


Answer: b

Explanation: It is complementary to RISC architecture and has complex


instruction set compared to RISC architecture.

05/07/2025 R.M.K.ENGINEERING COLLEGE 39


4.Which one of the following is board based system?
a) Data bus
b) Address bus
c) VMEbus
d) DMA bus

05/07/2025 R.M.K.ENGINEERING COLLEGE 40


Answer: c

Explanation: VMEbus is Versa Module Europa Bus which is used as a


board based system for easy manipulation. VMEbus is a computer bus
standard developed for the Motorola MC6800 family and is mainly
based on Eurocard sizes.

05/07/2025 R.M.K.ENGINEERING COLLEGE 41


5.Which is the first company who defined RISC architecture?
a) Intel
b) IBM
c) Motorola
d) MIPS

05/07/2025 R.M.K.ENGINEERING COLLEGE 42


Answer: b
Explanation: In 1970s IBM identified RISC architecture.

05/07/2025 R.M.K.ENGINEERING COLLEGE 43


Design example: Model train controller

• Learning of UML through Model Train Controller

05/07/2025 R.M.K.ENGINEERING COLLEGE 44


Model train controller -

• The user sends messages to the train with a control box attached to the tracks.

• The control box may have familiar controls such as a throttle, emergency stop button, and so
on.

• Since the train receives its electrical power from the two rails of the track, the control box
• can send signals to the train over the tracks by modulating the power supply voltage.

• The control panel sends packets over the tracks to the receiver on the train.

• The train includes analog electronics to sense the bits being transmitted and a control system
to set the train motor’s speed and direction based on those commands.

• Each packet includes an address so that the console can control several trains on the same
track; the packet also includes an error correction code (ECC) to guard against transmission
errors.

• This is a one-way communication system—the model train cannot send commands back to
the user.

05/07/2025 R.M.K.ENGINEERING
For design,COLLEGE
we start with requirement first 45
Model train setup

rcvr motor

power
supply

console

ECC command address header

05/07/2025 R.M.K.ENGINEERING COLLEGE 46


05/07/2025 Console
R.M.K.ENGINEERING COLLEGE 47
1.Requirements
Here is a basic set of requirements for the system:
■ The console shall be able to control up to eight trains on a single track.
■ The speed of each train shall be controllable by a throttle to at least 63 different
levels in each direction (forward and reverse).
■There shall be an inertia control that shall allow the user to adjust the responsiveness
of the train to commanded changes in speed.
■ There shall be an emergency stop button.
■ An error detection scheme will be used to transmit messages.

We can put the requirements into our chart format:

05/07/2025 R.M.K.ENGINEERING COLLEGE 48


2. Specifications
The Digital Command Control (DCC) standard
was created by the National Model Railroad Association to support interoperable digitally-
controlled model trains.

DCC was created to provide a standard that could be built by any manufacturer so that
hobbyists could mix and match components from multiple vendors.

The DCC standard is given in two documents:

■ Standard S-9.1, the DCC Electrical Standard, defines how bits are encoded on
the rails for transmission.
■ Standard S-9.2, the DCC Communication Standard, defines the packets that
carry information.

Any DCC-conforming device must meet these specifications.

The DCC standard does not specify many aspects of a DCC train system. It doesn’t
define the control panel, the type of microprocessor used, the programming language
to be used, or many other aspects of a real model train system. The standard
concentrates on those aspects of system design that are necessary for interoperability.
05/07/2025 R.M.K.ENGINEERING COLLEGE 49
Basic system commands

command name parameters

set-speed speed
(positive/negative)
set-inertia inertia-value (non-
negative)
estop none

05/07/2025 R.M.K.ENGINEERING COLLEGE 50


Typical control sequence
:console :train_rcvr
set-inertia
set-speed

set-speed

estop

set-speed

05/07/2025 R.M.K.ENGINEERING COLLEGE 51


Conceptual Specification
Digital Command Control specifies some important aspects of the system,
particularly those that allow equipment to interoperate. But DCC deliberately does
not specify everything about a model train control system

There are clearly two major subsystems:


The command unit and the train-board
component as shown in Fig1.

Fig1: Class diagram for the train controller messages.

Fig2: UML collaboration diagram for major subsystems of the train controller system

05/07/2025 R.M.K.ENGINEERING COLLEGE 52


Fig: A UML class diagram for the train controller showing the composition of the subsystems

05/07/2025 R.M.K.ENGINEERING COLLEGE 53


Console physical object classes
knobs* pulser*

train-knob: integer pulse-width: unsigned-


speed-knob: integer integer
inertia-knob: unsigned- direction: boolean
integer
emergency-stop: boolean

sender* detector*

send-bit() read-bit() : integer

05/07/2025 R.M.K.ENGINEERING COLLEGE 54


Panel and motor interface classes

panel motor-interface

speed: integer
train-number() : integer
speed() : integer
inertia() : integer
estop() : boolean
new-settings()

05/07/2025 R.M.K.ENGINEERING COLLEGE 55


Transmitter and receiver classes

transmitter receiver

current: command
new: boolean
send-speed(adrs: integer,
speed: integer)
send-inertia(adrs: integer, read-cmd()
val: integer) new-cmd() : boolean
set-estop(adrs: integer) rcv-type(msg-type:
command)
rcv-speed(val: integer)
rcv-inertia(val:integer)

05/07/2025 R.M.K.ENGINEERING COLLEGE 56


Formatter class
Formatter class holds state for
each train, setting for current
formatter train.
The operate() operation
performs the basic formatting
current-train: integer task.
current-speed[ntrains]: integer
current-inertia[ntrains]:
unsigned-integer
current-estop[ntrains]: boolean

send-command()
panel-active() : boolean
operate()

05/07/2025 R.M.K.ENGINEERING COLLEGE 57


Control input sequence diagram
:knobs :panel :formatter :transmitter
change in read panel
control panel-active
change in speed/

settings
inertia/estop

panel settings send-command


read panel
send-speed,
send-inertia.
panel settings
send-estop
read panel
change in
train number

train panel settings


change in

number
new-settings

set-knobs

05/07/2025 R.M.K.ENGINEERING COLLEGE 58


Controller Class

Setting the Speed


• Don’t want to change speed instantaneously
• Controller should change speed gradually by
sending several commands

05/07/2025 R.M.K.ENGINEERING COLLEGE 59


Set-Speed Sequence
Diagram

05/07/2025 R.M.K.ENGINEERING COLLEGE 60


Refined Command Classes

Summary
• Separate specification and programming
 Small mistakes are easier to fix in the spec
 Big mistakes in programming cost a lot of time
• You can’t completely separate specification and
architecture
 Make a few tasteful assumptions
05/07/2025 R.M.K.ENGINEERING COLLEGE 61
R.M.K. ENGINEERING COLLEGE
R.S.M. NAGAR, KAVARAPETTAI.
DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING

TOPIC:DESIGN METHODOLOGIES OF AN EMBEDDED


SYSTEM.

Presented By:
Dr.M.S.Kavitha,
Associate Professor,
Dept. of ECE/RMKEC

05/07/2025 R.M.K.ENGINEERING COLLEGE 62


RECAP OF PREVIOUS SESSION
Definition – System, Embedded System & Real time system
Components of Embedded System
Application of Embedded System
Design Process of Embedded System
Design Example- Model train Controller

05/07/2025 R.M.K.ENGINEERING COLLEGE 63


Quiz
1. A …………. is a way of working ,organizing or doing one or many
tasks according to a fixed plan, program or set of rules.
a) Microcontroller
b) System
c) Embedded System
d) Embedded Processor

05/07/2025 R.M.K.ENGINEERING COLLEGE 64


2. The first handheld calculator to compute complex
math functions is……….
a) HP 38
b) HP 36
c) HP 35
d) HP 48

05/07/2025 R.M.K.ENGINEERING COLLEGE 65


3. DCC stands for………
a) Digital Command Control
b) Digital class control
c) Digital communication command
d) Digital controller communication

05/07/2025 R.M.K.ENGINEERING COLLEGE 66


4. Which DCC standard is used to control Electrical
standard in model train controller?
a) Standard S- 9.1
b) Standard S- 9.4
c) Standard S- 9.2
d) Standard S- 9.3

05/07/2025 R.M.K.ENGINEERING COLLEGE 67


5. ARM stands for ……..
a) Advanced RISC motor
b) Advanced RISC Machine
c) Advanced Rotary machine
d) Automated RISC Machine

05/07/2025 R.M.K.ENGINEERING COLLEGE 68


6. What is an embedded system?

7. What are the steps in designing an embedded system?

05/07/2025 R.M.K.ENGINEERING COLLEGE 69


8.List some applications of Embedded System?

05/07/2025 R.M.K.ENGINEERING COLLEGE 70


SYSTEM DESIGN TECHNIQUES AND
NETWORKS
 Design methodologies
 Design flows
 Requirement Analysis
 Specifications
System analysis and architecture design
Quality Assurance techniques

05/07/2025 R.M.K.ENGINEERING COLLEGE 71


INTRODUCTION
• In this we consider the techniques required to create
complex embedded systems.
• Thus far, our design examples have been small so that
important concepts can be conveyed relatively simply.
• However, most real embedded system designs are
inherently complex, given that their functional
specifications are rich and they must obey multiple other
requirements on cost, performance, and so on.
• We need methodologies to help guide our design
decisions when designing large systems.

05/07/2025 R.M.K.ENGINEERING COLLEGE 72


Some common technology design methodologies
includes,
 Top Down Design or Stepwise refinement
 Bottom up Design
 Structured Design
 Structured Analysis and Design technique
 Data structured system development
 Object oriented Design

05/07/2025 R.M.K.ENGINEERING COLLEGE 73


DESIGN METHODOLOGIES

Why Design Methodologies?

 Process is important because without it, we can’t reliably deliver


the products we want to create. Thinking about the sequence of
steps necessary to build something may seem superfluous. But
the fact is that everyone has their own design process, even if
they don’t articulate it. If you are designing embedded systems in
your basement by yourself, having your own work habits is fine.
 But when several people work together on a project, they need to
agree on who will do things and how they will get done. Being
explicit about process is important when people work together.
Therefore, since many embedded computing systems are too
complex to be designed and built by one person, we have to think
about design processes.
05/07/2025 R.M.K.ENGINEERING COLLEGE 74
The obvious goal of a design process is to create a product that does
something useful. Typical specifications for a product will include
functionality (e.g., cell phone),
manufacturing cost (must have a retail price below $200),
Performance (must power up within 3 s),
power consumption (must run for 12 h on two AA batteries).

 A design process has several important goals beyond function,


performance, and power. Three of these goals are summarized
below.
■ Time-to-market-beat competitors to market
■ Design cost
■ Quality

05/07/2025 R.M.K.ENGINEERING COLLEGE 75


Design flows
Design flow:
A Design flow is a sequence of steps to be
followed during a design.
• May be partially or fully automated.
• Use tools to transform, verify design.
• Design flow is one component of methodology.
Methodology also includes management organization,
etc.
• Models

05/07/2025 R.M.K.ENGINEERING COLLEGE 76


1. Waterfall model
 Introduced by Royce , the first model proposed for the software
development process.

 Early model for software development:


 The waterfall model gets its name from the largely one-way flow of
work and information from higher levels of abstraction to more detailed

design steps
requirements

architecture

coding

testing

05/07/2025 R.M.K.ENGINEERING COLLEGE maintenance 77


Waterfall model -5 steps
• Requirements: determine basic characteristics.
• Architecture: decompose into basic modules.
• Coding: implement and integrate.
• Testing: exercise and uncover bugs.
• Maintenance: deploy, fix bugs, upgrade.

05/07/2025 R.M.K.ENGINEERING COLLEGE 78


Waterfall model critique
Only local feedback---may need iterations
between coding and requirements, for example.
Doesn’t integrate top-down and bottom-up design.
Assumes hardware is given.

 Most design projects entail experimentation and changes that


require bottom–up feedback. As a result, the waterfall model is
today cited as an unrealistic design process.
 So, an alternative model of software development called the
spiral model .

05/07/2025 R.M.K.ENGINEERING COLLEGE 79


2.Spiral model
system feasibility

specification

prototype

initial system

enhanced system

requirements
design
test

05/07/2025 R.M.K.ENGINEERING COLLEGE 80


Spiral model critique
• Successive refinement of system.
• Start with mock-ups, move through simple systems to
full-scale systems.
• Provides bottom-up feedback from previous stages.
• Working through stages may take too much time.
• A spiral methodology with too many spirals may
take too long when design time is a major
requirement.

05/07/2025 R.M.K.ENGINEERING COLLEGE 81


Successive Refinement model

specify specify

architect architect

design design

build build

test test

initial system refined system


 The system is built several times. A first system is used as a rough prototype,
and successive models of the system are further refined.
05/07/2025 R.M.K.ENGINEERING COLLEGE 82
Hardware/Software design flow
Requirements and
specification

Architecture

Hardware design Software design

Integration

Testing

05/07/2025 R.M.K.ENGINEERING COLLEGE 83


In Hardware and software aspects to design the
following activities are considered,
• Front End activities – Specification and architecture
• Back End activities – Integration and testing
• In middle – development of hardware and software
components.

05/07/2025 R.M.K.ENGINEERING COLLEGE 84


Hierarchical design flow
• Embedded systems must be designed across multiple levels of
abstraction:
• system architecture;
• hardware and software systems;
• hardware and software components.
• Often need design flows within design flows.

05/07/2025 R.M.K.ENGINEERING COLLEGE 85


A hierarchical design flow for an
embedded system.

05/07/2025 R.M.K.ENGINEERING COLLEGE 86


The implementation phase of a flow is itself a
complete flow from specification through testing .
In large projects each flow will probably be handled
by separate peoples or teams, the team must rely on
each others results.
The component team take their requirements from the
team handling the next higher level of abstractions.
This higher level team must rely on quality of design
and testing performed by component team.
Good communication is vital in such large projects.

05/07/2025 R.M.K.ENGINEERING COLLEGE 87


Concurrent Engineering
• Large projects use many people from multiple disciplines.
• Work on several tasks at once to reduce design time.
• Feedback between tasks helps improve quality, reduce number of later
design problems.

05/07/2025 R.M.K.ENGINEERING COLLEGE 88


Concurrent Engineering techniques
Cross-functional teams.
Concurrent product realization.
Incremental information sharing.
Integrated product management.
Early and continual supplier involvement
Early and continual customer focus

05/07/2025 R.M.K.ENGINEERING COLLEGE 89


QUIZ
1.In which stage during design process one can find bugs?
a) Specification
b) Architecture
c) System Integration
d) Designing Hardware and software

05/07/2025 R.M.K.ENGINEERING COLLEGE 90


2. What are the major goals of embedded system
design?
a) Performance, cost , and Reliability
b) Requirements, Specification and Design
c) Hardware , Software and System Integration

05/07/2025 R.M.K.ENGINEERING COLLEGE 91


3. UML stands for……….
a) Unified Machine Language
b) Unified Modelling language
c) Unified Monotonic Language
d) Urban Machine Language

05/07/2025 R.M.K.ENGINEERING COLLEGE 92


4. …………… language was developed by the
communication industry for specifying communication
protocols telephone systems.
a)SML
b)SDL
C)SQL
d) OOPs

05/07/2025 R.M.K.ENGINEERING COLLEGE 93


5. RISC stands for ………………
a) Reduced Instruction Set Computing
b) Random Instruction Set Computing
c) Random Increase Set Computing

05/07/2025 R.M.K.ENGINEERING COLLEGE 94


Requirements Analysis
• Requirements: informal description of what customer
wants.
• Specification: precise description of what design team
should deliver.
• The overall goal of creating a requirements document is
effective communication between the customers and the
designers. The designers should know what they are
expected to design for the customers

05/07/2025 R.M.K.ENGINEERING COLLEGE 95


Types of requirements
• Functional: input/output relationships.
• Non-functional:
• timing;
• power consumption;
• manufacturing cost;
• physical size;
• time-to-market;
• reliability.

05/07/2025 R.M.K.ENGINEERING COLLEGE 96


A good set of requirements should meet
several tests
• Correctness.
• Unambiguousness.
• Completeness.
• Verifiability: is each requirement satisfied in the final
system
• Consistency: requirements do not contradict each other.
• Modifiable: can update requirements easily.
• Traceable:
• know why each requirement exists;
• go from source documents to requirements;
• go from requirement to implementation;
05/07/2025 • back from implementation to requirement
R.M.K.ENGINEERING COLLEGE 97
Setting requirements
• Customer interviews.
• Comparison with competitors.
• Sales feedback.
• Mock-ups, prototypes.

05/07/2025 R.M.K.ENGINEERING COLLEGE 98


Specifications
• Capture functional and non-functional properties:
• verify correctness of spec;
• compare spec to implementation.
• Many specification styles:
• control-oriented vs. data-oriented;
• textual vs. graphical.
• UML is one specification/design language.

05/07/2025 R.M.K.ENGINEERING COLLEGE 99


1.Control –oriented SDL

• State machine specification


language is the SDL language
which was developed by the telephone
on-hook
communications industry for
specifying communication
caller goes
protocols, telephone systems, off-hook
and so forth.
• Event-oriented state machine dial tone
model.
caller gets
dial tone

05/07/2025 R.M.K.ENGINEERING COLLEGE 100


The SDL specification language

05/07/2025 R.M.K.ENGINEERING COLLEGE 101


2.State charts
 Other techniques can be used to eliminate clutter and clarify the
important structure of a state-based specification. The State chart
is one well-known technique for state-based specification
• Ancestor of UML state diagrams.
• Provided composite states:
• OR states;
• AND states.
• Composite states reduce the size of the state transition
graph.

05/07/2025 R.M.K.ENGINEERING COLLEGE 102


State chart OR state
s123
i1 i1

S1 S1
i2

i1 i1 i2
i2
S2 S4 S2 S4

i2

S3 S3

traditional OR state
05/07/2025 R.M.K.ENGINEERING COLLEGE 103
State chart AND state

sab
c
S1-3 S1-4 S1 S3
d

b a b a b a c d
c

S2-3 S2-4 S2 S4
d r
r r
S5
S5
traditional AND state

05/07/2025 R.M.K.ENGINEERING COLLEGE 104


3. AND-OR tables
• Leveson et al. [Lev94] used a different format, the AND/OR
table, to describe similar relationships between states

• Alternate way of specifying complex conditions:

OR
cond1 T -
cond2 - T
AND cond3 - F

05/07/2025 R.M.K.ENGINEERING COLLEGE 105


System Analysis and Architecture Design

• In this section we consider how to turn a specification


into an architecture design.
• we look at how to get a handle on the overall system
architecture.
• The CRC card methodology is a well-known and
useful way to help analyze a system’s structure.
• It is particularly well suited to object-oriented design
since it encourages the encapsulation of data and
functions.

05/07/2025 R.M.K.ENGINEERING COLLEGE 106


CRC cards
• The acronym CRC stands for the following three
major items that the methodology tries to identify:
CRC:
• Classes;
• Responsibilities of each class;
• Collaborators are other classes that work with a class.
• Team-oriented methodology.

05/07/2025 R.M.K.ENGINEERING COLLEGE 107


CRC card format

Class name: Class name:


Superclasses: Class’s function:
Subclasses: Attributes:
Responsibilities: Collaborators:

front back

05/07/2025 R.M.K.ENGINEERING COLLEGE 108


The CRC card methodology is informal, but we should go
through the following steps when using it to analyze a
system:

• Develop an initial list of classes.


• Simple description is OK.
• Team members should discuss their choices.
• Write initial responsibilities/collaborators.
• Helps to define the classes.
• Create some usage scenarios.
• Major uses of system and classes.

05/07/2025 R.M.K.ENGINEERING COLLEGE 109


CRC methodology, cont’d.
• Walk through scenarios.
• See what works and doesn’t work.
• Refine the classes, responsibilities, and collaborators.
• Add class relationships:
• superclass, subclass.

05/07/2025 R.M.K.ENGINEERING COLLEGE 110


EX: CRC cards for elevator
• Real-world classes:
• elevator car, passenger, floor control, car control, car sensor.
• Architectural classes: car state, floor control reader, car control reader,
car control sender, scheduler.

05/07/2025 R.M.K.ENGINEERING COLLEGE 111


QUIZ
1. What are the different steps of Design Methodologies?

2. CRC stands for……


a)Class, Responsible and Correction
b) classes, Responsibility and collaborations
c) Classes, Rough commands

05/07/2025 R.M.K.ENGINEERING COLLEGE 112


3……….refers to the development of a system or
process for creating a system or a design process for
embedded computing system.
a) Design flow
b) Design methodologies
c) Design Estimation
d) Quality Assurance

05/07/2025 R.M.K.ENGINEERING COLLEGE 113


Quality Assurance
 The quality of a product or service can be judged by how well it
satisfies its intended function.
 The quality assurance (QA) process is vital for the delivery of a
satisfactory System.
 In this section we will concentrate on portions of the methodology
particularly aimed at improving the quality of the resulting system.
“The pursuit of quality extends throughout the design flow.”
 For example, settling on the proper requirements and
specification cannot be overlooked as an important determinant of
quality.
 Quality assurance (QA) makes sure that all stages of the design
process help to deliver a quality product.

05/07/2025 R.M.K.ENGINEERING COLLEGE 114


Why ISO?
ISO 9000 was created to apply to abroad Range of
industries, including but not limited to embedded
hardware and software.
Focus:
ISO 9000 concentrates on processes used to create the
product or service. The processes used to satisfy ISO
9000 affect the entire organization as well as the
individual steps taken during design and
manufacturing.

05/07/2025 R.M.K.ENGINEERING COLLEGE 115


ISO 9000
• Developed by International Standards organization.
• Applies to a broad range industries.
• Concentrates on process.
• Validation based on extensive documentation of
organization’s process.

05/07/2025 R.M.K.ENGINEERING COLLEGE 116


CMU Capability Maturity Model

• Developed by Carnegie Mellon University’s Software Engineering


Institute
• Five levels of organizational maturity:
• Initial: poorly organized process, depends on individuals.
• Repeatable: basic tracking mechanisms to understand cost,scheduling etc
• Defined: processes documented and standardized.
• Managed: makes detailed measurements.
• Optimizing: measurements used for improvement especially by feedback

05/07/2025 R.M.K.ENGINEERING COLLEGE 117


Verification
• Verification and testing are important throughout the
design flow.
• Early bugs are more expensive to fix:
cost to fix

requirements
bug
coding bug

time
05/07/2025 R.M.K.ENGINEERING COLLEGE 118
RECAP OF PREVIOUS
SESSIONS
Definition – System, Embedded System &
Real time system
Components of Embedded System
Application of Embedded System
Design Process of Embedded System
Design Example- Model train Controller
Design Methodologies
Requirements Analysis
System Analysis and Architecture Design
Quality Assurance Techniques
05/07/2025 R.M.K.ENGINEERING COLLEGE 119
QUIZ

1. What are the challenges in


embedded computing systems?
 Hardware needed
 Meeting the deadlines
 Minimizing the power consumption
 Design for upgradability
 Reliability

05/07/2025 R.M.K.ENGINEERING COLLEGE 120


QUIZ

2.Summarize the major goals of


embedded system design?
 Reliabilty
 Low power consumption
 Cost effectiveness
 Efficient use of processing power

05/07/2025 R.M.K.ENGINEERING COLLEGE 121


QUIZ

3.What are the different types of


models in design flows?
 Waterfall Model
 Spiral Model
 Successive Refinement
 Hardware & software Model
 Hierarchical Design model
 Concurrent engineering Model

05/07/2025 R.M.K.ENGINEERING COLLEGE 122


QUIZ

4……………is an informal descriptions of


what customer wants.
a) Specification
b) Requirements
c) Architecture
d) System Integration

05/07/2025 R.M.K.ENGINEERING COLLEGE 123


QUIZ

5.Which DCC standard is used to control


Electrical standard in model train
controller?
a) Standard S- 9.1
b) Standard S- 9.4
c) Standard S- 9.2
d) Standard S- 9.3

05/07/2025 R.M.K.ENGINEERING COLLEGE 124


QUIZ

6. DCC stands for………


a) Digital Command Control
b) Digital class control
c) Digital communication command
d) Digital controller communication

05/07/2025 R.M.K.ENGINEERING COLLEGE 125


QUIZ

7…………… is an important goal for


concurrent engineering.
a)Redundancy
b)Reduced time
c)Cost
d)Reliability

05/07/2025 R.M.K.ENGINEERING COLLEGE 126


QUIZ

8.CRC Stands for……………….


a) classes,Responsibilities and
collaborations
b) Class, Responsible and Correction
c) Classes, requirements and
commands

05/07/2025 R.M.K.ENGINEERING COLLEGE 127


DESIGNING WITH
COMPUTING PLATFORMS
Designing with
microprocessors.
Development and debugging.
System-level performance
analysis.

05/07/2025 R.M.K.Engineering College 128


System architectures

Architectures and
components:
software;
hardware.
Some software is very
hardware- dependent.

05/07/2025 R.M.K.Engineering College 129


Hardware platform architecture

Contains several elements:


CPU;
bus;
memory;
I/O devices: networking,
sensors, actuators, etc.
How big/fast much each one
be?
05/07/202 R.M.K.Engineering College 130
5
Software architecture

Functional description must be


broken into pieces:
division among people;
conceptual organization;
performance;
testability;
maintenance.
05/07/20 R.M.K.Engineering College 131
25
Hardware and software architectures

Hardware and software are


intimately related:
software doesn’t run without
hardware;
how much hardware you need is
determined by the software
requirements:
speed;
memory.
05/07/20 R.M.K.Engineering College 132
25
Evaluation boards
Basic Platform chip and a variety of I/O
Devices
Designed by CPU manufacturer or others.
Includes CPU, memory, some I/O devices.
May include prototyping section.
CPU manufacturer often gives out
evaluation board netlist---can be used as
starting point for your custom board
design.
05/07/20 R.M.K.ENGINEERING COLLEGE 133
25
Beegle board

open source platform is used to


develop a low-cost board for
embedded systems. This board
consists of ARM Cortex TM –A8
processor, several built-in I/O devices
and many connectors (flash memory,
video and audio). It is primarily
intended to support software
development and serve as a starting
25 point for a product design
05/07/20 R.M.K.ENGINEERING COLLEGE 134
Adding logic to a board

Programmable logic devices


(PLDs) provide low/medium
density logic.
Field-programmable gate arrays
(FPGAs) provide more logic and
multi-level logic.
Application-specific integrated
circuits (ASICs) are
manufactured
05/07/202
for a
R.M.K.ENGINEERING COLLEGE
single 135
5
The PC as a platform

Advantages:
cheap and easy to get;
rich and familiar software
environment.
Disadvantages:
requires a lot of hardware
resources;
not well-adapted to real-time.
More power hungry
05/07/20 R.M.K.Engineering College 136
25 More expensive
Typical PC hardware
platform

CPU memory
device
CPU bus

interfac
bus
high-speed bus

e
intr DMA timers
controller
low-speed bus
ctrl bus
interfac
e device

05/07/20 R.M.K.Engineering College 137


25
Typical PC hardware
platform

 The CPU provides basic computational facilities.


 RAM is used for program storage.
 ROM holds the boot program.
 A DMA controller provides DMA capabilities.
 Timers are used by the operating system for a variety of
purposes.
 A high-speed bus, connected to the CPU bus
through a bridge, allows fast devices to communicate
efficiently with the rest of the system.
 A low-speed bus provides an inexpensive way to
connect simpler devices and may be necessary for
backward compatibility as well.

05/07/20 R.M.K.ENGINEERING COLLEGE 138


25
Typical busses

PCI: Peripheral Component


Interconnect standard for high-speed
interfacing
33 or 66 MHz.
264 MB /s with 64 bit wide transfers
Dominant high performance system bus
USB (Universal Serial Bus), Firewire
(IEEE 1394): relatively low-cost
serial
05/07/20
interface with high
R.M.K.Engineering College
speed. 139
25
Software elements

IBM PC uses BIOS (Basic I/O


System) to implement low-level
functions:
boot-up;
minimal device drivers.
BIOS has become a generic term
for the lowest-level system
software.
05/07/20 R.M.K.ENGINEERING COLLEGE 140
25
Host/target design

Use a host system to prepare


software for target system:

target
System-The
hardware on
serial line- which the code
USB link will run
host system-PC/workstation
05/07/20 R.M.K.ENGINEERING COLLEGE 141
25
Host-based tools

Cross compiler:
compiles code on host for target
system.
Cross debugger:
displays target state, allows
target system to be controlled.

05/07/20 R.M.K.Engineering College 142


25
QUIZ

1…………refers to the development of a


system or process for creating a system
or a design process for embedded
computing system.
a) Quality System
b) SDL
c) Design Methodology
d) Structured Design

05/07/2025 R.M.K.ENGINEERING COLLEGE 143


QUIZ

2………………language was developed


by the communication industry for
specifying communication protocols
telephone systems.
a)UML
b)SDL
c)DCC
d)SQL

05/07/2025 R.M.K.ENGINEERING COLLEGE 144


QUIZ

3.Bottom up design starts with a


foundation and works up towards a
solution.
True
false

05/07/2025 R.M.K.ENGINEERING COLLEGE 145


QUIZ

4.UML stands for……….


a) Unified Machine Language
b) Unified Modelling language
c) Unified Monotonic Language
d) Urban Machine Language

05/07/2025 R.M.K.ENGINEERING COLLEGE 146


QUIZ

5. PCI Stands for…………..


a) Peripheral Computer Interface
b) Peripheral Component Interconnect
c) Peripheral Component Interface
d) Peripheral Computer Interconnect

05/07/2025 R.M.K.ENGINEERING COLLEGE 147


Debugging Techniques
 The serial port (USB)- development debugging but
also for diagnosing problems in the field.
 A breakpoint allows the user to stop execution, examine
system state, and change state and to specify an
address at which the program’s execution is to break
 LEDs can be used to show error conditions, when the
code enters
certain routines, or to show idle time activity
 The microprocessor in-circuit emulator (ICE) is a
specialized hardware tool that can help debug software in
a working embedded system. Allows you to stop
execution, examine CPU state, modify registers.
 A logic analyzer is an array of low-grade oscilloscopes

05/07/20 R.M.K.Engineering College 148


25
Logic analyzers

A logic analyzer is an array of low-


grade oscilloscopes:

05/07/20 R.M.K.Engineering College 149


25
Logic analyzer
architecture

sample
microprocessor
SYSTEM memory

system clock vector


address
controller
state or
clock timing mode
gen
keypa
display
d
05/07/20 R.M.K.Engineering College 150
25
Debugging Challenges
 Logical errors in software can be hard to track down, but
errors in real-time code can create problems that are
even harder to diagnose.
 Real-time programs are required to finish their work within
a certain amount of time; if they run too long, they can
create much unexpected behavior.
 The exact results of missing real-time deadlines depend
on the detailed characteristics of the I/O devices and
the nature of the timing violation. This makes
debugging real-time problems especially difficult

05/07/20 R.M.K.Engineering College 151


25
How to exercise code

Run on host system.


Run on target system.
Run in instruction-level simulator.
Run on cycle-accurate simulator.
Run in hardware/software co-
simulation environment.

05/07/20 R.M.K.Engineering College 152


25
Debugging real-time code

Bugs in drivers can cause non-


deterministic behavior in the
foreground problem.
Bugs may be timing-dependent.

05/07/20 R.M.K.Engineering College 153


25
System-level performance
analysis

Performance
depends
on all the elements
memory CPU
of the system:
CPU. cache
Cache.
Bus.
Main memory.
I/O device.

05/07/20 R.M.K.Engineering College 154


25
Bandwidth as performance

Bandwidth applies to several


components:
Memory.
Bus.
CPU fetches.
Different parts of the system
run at different clock rates.
Different components may have
different widths
05/07/20 (bus,
R.M.K.ENGINEERING memory).
COLLEGE 155
25
Bus bandwidth

T: # bus cycles. O1 D O2


P: time/bus cycle.
Total time
W
for
transfer:
t = TP.
D: data
payload
Tbasic(N) = (D+O)N/W
length.
O1 + O2 =
05/07/20 R.M.K.Engineering College 156
25
Bus burst transfer
bandwidth

T: # bus cycles.


1 2 B O
P: time/bus cycle.
Total time
… W
for
transfer:
t = TP.
D: data
payload
Tburst (N) = (BD+O)N/(BW)
length.
O1 + O2 =
05/07/20 R.M.K.ENGINEERING COLLEGE 157
25
Memory aspect ratios

16 M
64 M

8M

1 4 8
05/07/20 R.M.K.ENGINEERING COLLEGE 158
25
Memory access times

Memory component access times


comes from chip data sheet.
Page modes allow faster
access for successive transfers
on same page.
If data doesn’t fit naturally
into physical
words:
A = [(E/w)mod W]+1
05/07/20 R.M.K.Engineering College 159
25
QUIZ

1.CMM stands for……………….


a) Capacity Medium Model
b) Capability Maturity Model
c) Code Management Machine

05/07/2025 R.M.K.ENGINEERING COLLEGE 160


QUIZ

2.What are the two types of


requirements?
 Functional
 Non-functional

05/07/2025 R.M.K.ENGINEERING COLLEGE 161


QUIZ

3.List some applications of Embedded


System in terms of Automobiles?
 Anti lock Braking
 Engine Control
 Fuel Control etc

05/07/2025 R.M.K.ENGINEERING COLLEGE 162


QUIZ

4. DMA stands for…………..

05/07/2025 R.M.K.ENGINEERING COLLEGE 163


QUIZ

5.A logic analyzer records data in either


of two modes they are…………..
a) State and running
b) State and timing
c) Standard and timing
d) Standard time mode

05/07/2025 R.M.K.ENGINEERING COLLEGE 164


CONSUMER ELECTRONICS
ARCHITECTURE
The basics functions of this architecture
is,
 Multimedia
 Communications
 Data storage and management.
The style of multimedia or
communication may vary, and different
devices may use different formats but
this cause variations in hardware and
software
05/07/20
25 components.
R.M.K.ENGINEERING COLLEGE 165
1.Use Case & Requirements

Consumer electronics devices provides


several types of services in different
combinations,
1.Multimedia: Audio,still images or video
(includes both motion pictures and audio)
2.Communications: USB interface to a host
computer and Ethernet port.
3.Data Storage and management: Multimedia
objects save or play,data storage goes hand-
in –hand with multimedia capture and display.
05/07/2025 R.M.K.ENGINEERING COLLEGE 166
Diagram of Client connecting a host
system

05/07/2025 R.M.K.ENGINEERING COLLEGE 167


2.Platform and operating
systems:

 The storage systems provides bulk


and permanent storage.
 The network interface may provide a
simple USB connection or a full blown
internet connection.

05/07/2025 R.M.K.ENGINEERING COLLEGE 168


Functional Block diagram of Generic
Consumer electronic device

05/07/2025 R.M.K.ENGINEERING COLLEGE 169


3.Flash File systems:

 Many customers electronics devices


use flash memory for mass storage.
 Flash memory is a type of
semiconductor memory that , unlike
DRAM or SRAM, provides permanent
storage.
 Values are stored in the flash
memory cell as electric charge using a
specialized capacitor that can store the
05/07/2025
charge for years.
R.M.K.ENGINEERING COLLEGE 170
cont;

 The flash memory cell does not require an


external power supply to maintain its values.
 Furthermore, the memory can be written
electrically and unlike previous generations of
electrically-erasable semiconductor memory
can be written using standard power supply
voltages and so does not need to be
disconnected during programming.

05/07/2025 R.M.K.ENGINEERING COLLEGE 171


Summary

 Designing with computing platforms


1.System Architecture
2.Development Environment
3.Debugging Techniques
 Platform Level Performance Analysis
 Consumer Electronics Architecture

05/07/2025 R.M.K.ENGINEERING COLLEGE 172


05/07/2025 R.M.K.ENGINEERING COLLEGE 173

You might also like