KEMBAR78
Chapter1b Design Method | PDF | System On A Chip | Embedded System
0% found this document useful (0 votes)
10 views22 pages

Chapter1b Design Method

The document outlines the methodologies and considerations involved in embedded system design, emphasizing the importance of understanding design processes and constraints such as cost, performance, and power. It discusses various design abstraction levels, the balance between top-down and bottom-up approaches, and the significance of real-time operations and security. Additionally, it highlights the challenges faced in hardware and software integration, as well as the need for effective project management to meet market demands.

Uploaded by

ARULMURUGAN L
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)
10 views22 pages

Chapter1b Design Method

The document outlines the methodologies and considerations involved in embedded system design, emphasizing the importance of understanding design processes and constraints such as cost, performance, and power. It discusses various design abstraction levels, the balance between top-down and bottom-up approaches, and the significance of real-time operations and security. Additionally, it highlights the challenges faced in hardware and software integration, as well as the need for effective project management to meet market demands.

Uploaded by

ARULMURUGAN L
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/ 22

Embedded System

Design methodologies
⚫ A procedure for designing a system.
⚫ Understanding your methodology helps you ensure
you didn’t skip anything.
⚫ Compilers, software engineering tools, computer-
aided design (CAD) tools, etc., can be used to:
⚫ help automate methodology steps;
⚫ keep track of the methodology itself.
Levels of design abstraction
Requirements What does the customer want?

Specification System functions/characteristics

Block diagram (HW vs. SW)


Architecture

Component HW & SW module detailed design


design

System Working system


integration
Top-down vs. bottom-up
⚫ Top-down design:
⚫ start from most abstract description;
⚫ work to most detailed.
⚫ Bottom-up design:
⚫ work from small components to big
system.

⚫ Real design often uses both techniques.


Stepwise refinement
⚫ At each level of abstraction, we must:
⚫ analyze the design to determine characteristics of
the current state of the design;
⚫ refine the design to add detail.
Embedded system design
⚫constraints
Cost
⚫ Competitivemarkets penalize products which don’t
deliver adequate value for the cost
⚫ Performance
⚫ Perform required operations (throughput)
⚫ Meet real-time deadlines (latency)
⚫ Size and weight limits
⚫ Mobile(aviation, automotive) and portable (e.g.
handheld) systems
⚫ Power and energy limits
⚫ Battery capacity
⚫ Cooling limits
⚫ Environment
⚫ Temperatures
may range
Impact of
Constraints (rather than microprocessors)
⚫ Microcontrollers/SoCs
⚫ Include peripherals to interface with other devices,
respond efficiently
⚫ On-chip RAM, ROM reduce circuit board complexity
and cost
⚫ Programming language
⚫ Programmed in C rather than Java (smaller and faster code, so
less expensive MCU)
⚫ Some performance-critical code may be in assembly language
⚫ Hierarchical design with SW libraries (math, I/O drivers, etc.)
⚫ Operating system
⚫ Small system: typically no OS, but instead simple scheduler (or
even just interrupts + main code (foreground/background
system)
Project Cost
⚫ Total
cost of a project involves non-
recurring engineering (NRE), cost plus
recurring (RE) cost, and number of units
produced (K)

Project Cost = NRE + K*RE

⚫ NRE includes design time, tools, facilities


⚫ RE includes components, manufacturing, testing,
and maintenance
What does “performance” actually
mean?
⚫ In general-purpose computing, performance often
means average-case, may not be well-defined.
⚫ In real-time systems, performance means meeting
deadlines.
⚫ Some systems require high throughput/bandwidth
⚫ We need to analyze the system at several levels of
abstraction to understand performance:
⚫ CPU.
⚫ Platform.
⚫ Multiprocessor.
⚫ Program.
⚫ Task.
Real-time operation
⚫ Must finish operations by deadlines.
⚫ Hard real time: missing deadline causes failure.
⚫ Soft real time: missing deadline results in
degraded performance.
⚫ Many systems are multi-rate: must
handle operations at widely varying
rates.
⚫ A real-time operating system (RTOS) can
manage scheduling of operations to satisfy
critical timing constraints
The performance
paradoxgenerally use more logic circuits
⚫ Microprocessors
to implement a function than do custom logic
circuits.
⚫ But are microprocessors as fast as custom circuits?
⚫ aggressive VLSI technology;
⚫ heavily pipelined;
⚫ smart compilers;
⚫ re-use and improve efficient SW routines.

Execution Time = NI x CPI x Tclk


(#instructions) x (#clocks/instruction) x (clock
period)
Power considerations
⚫ Custom logic typical in low power devices.
⚫ Modern microprocessors offer features to help
control power consumption.
⚫ Turn off unnecessary logic/modules
⚫ Reduce memory accesses
⚫ Reduce external communication
⚫ Reduce clock rates (CMOS)
⚫ Provide “sleep modes”
⚫ Low-power electronic circuit design methods
⚫ Software design techniques can also help reduce
power consumption.
Safe, secure
systems
⚫ Security: system’s ability to prevent malicious attacks.
⚫ Traditional security is oriented to IT and data security.
⚫ Insecure embedded computers can create unsafe cyber-physical
systems.
⚫ Internet of Things presents special security challenges!
⚫ Safety: no crashes, accidents, harmful releases of energy, etc.
⚫ We need to combine safety and security:
⚫ Identify security breaches that compromise safety.
⚫ Safety and security can’t be bolted on---they must be baked in.
⚫ Integrity: maintenance of proper data values.
⚫ Privacy: no unauthorized releases of data.

Computers as Components 4e © 2016 Marilyn Wolf


Product development
time
⚫ Often designed by a small team of designers.
⚫ Often constrained by tight deadlines.
⚫ 6 month market window is common.
⚫ Optimal sales windows (ex. calculators for back-to-
school)
⚫ Optimal sales window for holiday “gadgets”
⚫ Longer lead times for control systems
(automotive, aerospace, process control, etc.)
⚫ Hardware-software co-design can shorten
design cycle
Requirements
⚫ Plain language description of what the user wants
and expects to get.
⚫ May be developed in several ways:
⚫ talking directly to customers;
⚫ talking to marketing representatives;
⚫ providing prototypes to users for comment.
Functional vs. non-functional
requirements
⚫ Functional requirements:
⚫ output as a function of input.
⚫ Non-functional requirements:
⚫ time required to compute output;
⚫ size, weight, etc.;
⚫ power consumption (battery-powered?);
⚫ reliability;
⚫ low HW costs (CPU, memory) for mass
production
⚫ etc.
Sample requirements
form
Use form to assist “interviewing” the
customer.
name
purpose
inputs
outputs
functions
performan
ce
manufacturing
cost power
physical
size/weight
Designing hardware and
software components
⚫ Must spend time architecting the system before you
start coding or designing circuits.
⚫ Some components are ready-made, some can be
modified from existing designs, others must be
designed from scratch.
System integration
⚫ Put together the components.
⚫ Many bugs appear only at this stage.
⚫ Interfaces must be well designed
⚫ Have a plan for integrating components to uncover
bugs quickly, test as much functionality as early as
possible.
⚫ Test to each specification
Challenges, etc.
⚫ Does it really work?
⚫ Is the specification correct?
⚫ Does the implementation meet the spec?
⚫ How do we test for real-time
characteristics?
⚫ How do we test on real data?
⚫ How do we work on the system?
⚫ Observability, controllability?
⚫ What is our development platform?
Challenges in embedded system
design
⚫ How much hardware do we need?
⚫ CPU computing power? Memory?
⚫ What peripheral functions?
⚫ Implement in HW or SW?
⚫ How do we meet timing constraints?
⚫ Faster hardware or cleverer software?
⚫ Real-time operating system or custom design?
⚫ How do we minimize power consumption?
⚫ How do we optimize cost?
⚫ How do we ensure system
security/reliability?
⚫ How do we meet our time-to-market
Summary
⚫ Embedded systems are all around us.
⚫ Chip designers are now system designers.
⚫ Must deal with hardware and software.
⚫ Today’s applications are complex.
⚫ Reference implementations must be optimized, extended.
⚫ Platforms present challenges for:
⚫ Hardware designers---characterization, optimization.
⚫ Software designers---performance/power
evaluation, debugging.
⚫ Design methodologies help us manage the design
process and complexity.

You might also like