SlideShare a Scribd company logo
1 of 52
Principles of embedded
computing system design
Lei Guo
Tel 13880622171
Email: leiguo@uestc.edu.cn
Office Address :innovate central building B517 room
Computers as Components 4e © 2016 Marilyn Wolf
Introduction
• What are embedded computing systems?
• Challenges in embedded computing system design.
• Design methodologies.
Computers as Components 4e © 2016 Marilyn Wolf
Definition
• Embedded computing system: any device that includes a
programmable computer but is not itself a general-purpose
computer.
• Take advantage of application characteristics to optimize the
design:
• don’t need all the general-purpose bells and whistles.
Computers as Components 4e © 2016 Marilyn Wolf
Embedding a computer
CPU
mem
input
output analog
analog
embedded
computer
Computers as Components 4e © 2016 Marilyn Wolf
Examples
• Cell phone.
• Printer.
• Automobile: engine, brakes, dash, etc.
• Airplane: engine, flight controls, nav/comm.
• Digital television.
• Household appliances.
Computers as Components 4e © 2016 Marilyn Wolf
Early history
• Late 1940’s: MIT Whirlwind computer was designed for real-time
operations.
• Originally designed to control an aircraft simulator.
• First microprocessor was Intel 4004 in early 1970’s.
• HP-35 calculator used several chips to implement a microprocessor in
1972.
Computers as Components 4e © 2016 Marilyn Wolf
Early history, cont’d.
• Automobiles used microprocessor-based engine controllers
starting in 1980.
• Control fuel/air mixture, engine timing, etc.
• Multiple modes of operation: warm-up, cruise, hill
climbing, etc.
• Provides lower emissions, better fuel efficiency.
Computers as Components 4e © 2016 Marilyn Wolf
Microprocessor varieties
• Microcontroller: includes I/O devices, on-board
memory.
• Digital signal processor (DSP): microprocessor
optimized for digital signal processing.
• Typical embedded word sizes: 8-bit, 16-bit, 32-bit.
Computers as Components 4e © 2016 Marilyn Wolf
Application examples
• Simple control: front panel of microwave oven, etc.
• Canon EOS 3 has three microprocessors.
•32-bit RISC CPU runs autofocus and eye control
systems.
• Digital TV: programmable CPUs + hardwired logic.
Computers as Components 4e © 2016 Marilyn Wolf
Automotive embedded systems
• Today’s high-end automobile may have 100 microprocessors:
• 4-bit microcontroller checks seat belt;
• microcontrollers run dashboard devices;
• 16/32-bit microprocessor controls engine.
• Low-end cars use 20+ microprocessors.
Computers as Components 4e © 2016 Marilyn Wolf
BMW 850i brake and stability control system
• Anti-lock brake system (ABS): pumps brakes to reduce
skidding.
• Automatic stability control (ASC+T): controls engine to
improve stability.
• ABS and ASC+T communicate.
• ABS was introduced first---needed to interface to existing
ABS module.
Computers as Components 4e © 2016 Marilyn Wolf
BMW 850i, cont’d.
brake
sensor
brake
sensor
brake
sensor
brake
sensor
ABS
hydraulic
pump
Computers as Components 4e © 2016 Marilyn Wolf
Characteristics of embedded systems
• Sophisticated functionality.
• Real-time operation.
• Low manufacturing cost.
• Low power.
• Designed to tight deadlines by small teams.
Computers as Components 4e © 2016 Marilyn Wolf
Functional complexity
• Often have to run sophisticated algorithms or multiple
algorithms.
•Cell phone, laser printer.
• Often provide sophisticated user interfaces.
Computers as Components 4e © 2016 Marilyn Wolf
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.
Computers as Components 4e © 2016 Marilyn Wolf
Non-functional requirements
• Many embedded systems are mass-market items that must
have low manufacturing costs.
• Limited memory, microprocessor power, etc.
• Power consumption is critical in battery-powered devices.
• Excessive power consumption increases system cost even
in wall-powered devices.
Computers as Components 4e © 2016 Marilyn Wolf
Design teams
• Often designed by a small team of designers.
• Often must meet tight deadlines.
•6 month market window is common.
•Can’t miss back-to-school window for calculator.
Computers as Components 4e © 2016 Marilyn Wolf
Why use microprocessors?
• Alternatives: field-programmable gate arrays (FPGAs),
custom logic, etc.
• Microprocessors are often very efficient: can use same logic
to perform many different functions.
• Microprocessors simplify the design of families of products.
Computers as Components 4e © 2016 Marilyn Wolf
The performance paradox
• Microprocessors use much more logic to implement a
function than does custom logic.
• But microprocessors are often at least as fast:
•heavily pipelined;
•large design teams;
•aggressive VLSI technology.
Computers as Components 4e © 2016 Marilyn Wolf
Power
• Custom logic uses less power, but CPUs have advantages:
• Modern microprocessors offer features to help control
power consumption.
• Software design techniques can help reduce power
consumption.
• Heterogeneous systems: some custom logic for well-defined
functions, CPUs+software for everything else.
Computers as Components 4e © 2016 Marilyn Wolf
Platforms
• Embedded computing platform: hardware architecture +
associated software.
• Many platforms are multiprocessors.
• Examples:
• Single-chip multiprocessors for cell phone baseband.
• Automotive network + processors.
Computers as Components 4e © 2016 Marilyn Wolf
Cyber-physical systems
• A physical system that tightly interacts with a computer
system.
• Computers replace mechanical controllers:
• More accurate.
• More sophisticated control.
• Engine controllers replace distributor, carburetor, etc.
• Complex algorithms allow both greater fuel efficiency and
lower emissions.
Computers as Components 4e © 2016 Marilyn Wolf
The physics of software
• Computing is a physical act.
•Software doesn’t do anything without hardware.
• Executing software consumes energy, requires time.
• To understand the dynamics of software (time,
energy), we need to characterize the platform on
which the software runs.
Computers as Components 4e © 2016 Marilyn Wolf
What does “performance” mean?
• In general-purpose computing, performance often
means average-case, may not be well-defined.
• In real-time systems, performance means meeting
deadlines.
•Missing the deadline by even a little is bad.
•Finishing ahead of the deadline may not help.
Computers as Components 4e © 2016 Marilyn Wolf
Characterizing performance
• We need to analyze the system at several levels of
abstraction to understand performance:
•CPU.
•Platform.
•Program.
•Task.
•Multiprocessor.
Computers as Components 4e © 2016 Marilyn Wolf
Security, safety
• Security: system’s ability to
prevent malicious attacks.
• Integrity: maintenance of proper
data values.
• Privacy: no unauthorized
releases of data.
• Safety: no harmful releases of
energy.
• No crashes, accidents, etc.
Computers as Components 4e © 2016 Marilyn Wolf
Safe, secure systems
• Traditional security is oriented to IT and data security.
• But insecure embedded computers can create unsafe cyber-physical
systems.
• 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.
Computers as Components 4e © 2016 Marilyn Wolf
Challenges in embedded system design
• How much hardware do we need?
• How big is the CPU? Memory?
• How do we meet our deadlines?
• Faster hardware or cleverer software?
• How do we minimize power?
• Turn off unnecessary logic? Reduce memory accesses?
Computers as Components 4e © 2016 Marilyn Wolf
Cryptography
• Cryptography is the science of hiding information.
• Secret-key cryptography allows messages to be encoded and
decoded.
• Key must be kept secret or the message will not be secure.
• Public-key cryptography gives secret messages with an easier-to-use
approach:
• Sender uses secret key to encrypt message. Also provides a public key to
others.
• Receiver can decrypt message using public key. The sender’s identity is
established by the ability to use their public key.
Computers as Components 4e © 2016 Marilyn Wolf
Cryptography, cont’d.
• Cryptographic hash function generates a message digest.
• Short version of the message.
• Two different messages are unlikely to generate the same key.
• Digital signature:
• Sender signs the message or message digest using private key.
• Receiver decrypts with public key.
• Digital signature plus encryption:
• Sender signs the message or message digest with private key.
• Sender encrypts the message with the receiver’s public key.
• Receiver decrypts with private key, then verifies signature using sender’s
public key.
Computers as Components 4e © 2016 Marilyn Wolf
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?
Computers as Components 4e © 2016 Marilyn Wolf
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.
Computers as Components 4e © 2016 Marilyn Wolf
Design goals
• Performance.
• Overall speed, deadlines.
• Functionality and user interface.
• Manufacturing cost.
• Power consumption.
• Other requirements (physical size, etc.)
Computers as Components 4e © 2016 Marilyn Wolf
Levels of abstraction
requirements
specification
architecture
component
design
system
integration
Computers as Components 4e © 2016 Marilyn Wolf
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 uses both techniques.
Computers as Components 4e © 2016 Marilyn Wolf
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.
Computers as Components 4e © 2016 Marilyn Wolf
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.
Computers as Components 4e © 2016 Marilyn Wolf
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;
• reliability;
• etc.
Computers as Components 4e © 2016 Marilyn Wolf
Our requirements form
name
purpose
inputs
outputs
functions
performance
manufacturing cost
power
physical size/weight
Computers as Components 4e © 2016 Marilyn Wolf
Example: GPS moving map requirements
• Moving map obtains
position from GPS,
paints map from local
database.
lat: 40 13 lon: 32 19
I-78
Scotch
Road
Computers as Components 4e © 2016 Marilyn Wolf
GPS moving map needs
• Functionality: For automotive use. Show major roads and landmarks.
• User interface: At least 400 x 600 pixel screen. Three buttons max.
Pop-up menu.
• Performance: Map should scroll smoothly. No more than 1 sec power-
up. Lock onto GPS within 15 seconds.
• Cost: $120 street price = approx. $30 cost of goods sold.
Computers as Components 4e © 2016 Marilyn Wolf
GPS moving map needs, cont’d.
• Physical size/weight: Should fit in hand.
• Power consumption: Should run for 8 hours on four AA batteries.
Computers as Components 4e © 2016 Marilyn Wolf
GPS moving map requirements form
name GPS moving map
purpose consumer-grade
moving map for driving
inputs power button, two
control buttons
outputs back-lit LCD 400 X 600
functions 5-receiver GPS; three
resolutions; displays
current lat/lon
performance updates screen within
0.25 sec of movement
manufacturing cost $100 cost-of-goods-
sold
power 100 mW
physical size/weight no more than 2: X 6:,
12 oz.
Computers as Components 4e © 2016 Marilyn Wolf
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.
Computers as Components 4e © 2016 Marilyn Wolf
GPS specification
• Should include:
• What is received from GPS;
• map data;
• user interface;
• operations required to satisfy user requests;
• background operations needed to keep the system running.
Computers as Components 4e © 2016 Marilyn Wolf
Architecture design
• What major components go satisfying the specification?
• Hardware components:
• CPUs, peripherals, etc.
• Software components:
• major programs and their operations.
• Must take into account functional and non-functional specifications.
Computers as Components 4e © 2016 Marilyn Wolf
GPS moving map block diagram
GPS
receiver
search
engine
renderer
user
interface
database
display
Computers as Components 4e © 2016 Marilyn Wolf
GPS moving map hardware architecture
GPS
receiver
CPU
panel I/O
display frame
buffer
memory
Computers as Components 4e © 2016 Marilyn Wolf
GPS moving map software architecture
position database
search
renderer
timer
user
interface
pixels
Computers as Components 4e © 2016 Marilyn Wolf
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.
Computers as Components 4e © 2016 Marilyn Wolf
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.
Computers as Components 4e © 2016 Marilyn Wolf
Summary
• Embedded computers are all around us.
• Many systems have complex embedded hardware and software.
• Embedded systems pose many design challenges: design time,
deadlines, power, etc.
• Design methodologies help us manage the design process.
Computers as Components 4e © 2016 Marilyn Wolf

More Related Content

Similar to Chapter 1-1.pptx

406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptx
406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptx406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptx
406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptxpraveenkistappagari
 
Embedded systems introduction
Embedded systems introductionEmbedded systems introduction
Embedded systems introductionmohamed drahem
 
Engage 2016 - IBM Verse
Engage 2016 - IBM VerseEngage 2016 - IBM Verse
Engage 2016 - IBM VerseRoland Driesen
 
Design Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise SolutionsDesign Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise SolutionsInductive Automation
 
Design Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise SolutionsDesign Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise SolutionsInductive Automation
 
Why Integrating IBM Z into ServiceNow and Splunk Is So Important
Why Integrating IBM Z into ServiceNow and Splunk Is So ImportantWhy Integrating IBM Z into ServiceNow and Splunk Is So Important
Why Integrating IBM Z into ServiceNow and Splunk Is So ImportantPrecisely
 
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Adam Dunkels
 
Quick wins in the NetOps Journey by Vincent Boon, Opengear
Quick wins in the NetOps Journey by Vincent Boon, OpengearQuick wins in the NetOps Journey by Vincent Boon, Opengear
Quick wins in the NetOps Journey by Vincent Boon, OpengearMyNOG
 
Five Ways to Fix Your SQL Server Dev-Test Problems
Five Ways to Fix Your SQL Server Dev-Test Problems Five Ways to Fix Your SQL Server Dev-Test Problems
Five Ways to Fix Your SQL Server Dev-Test Problems Catalogic Software
 
embeddedsystems-100429081552-phpapp01.pdf
embeddedsystems-100429081552-phpapp01.pdfembeddedsystems-100429081552-phpapp01.pdf
embeddedsystems-100429081552-phpapp01.pdfAshwin180668
 
Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...
Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...
Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...Precisely
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science PlatformDecision Science Community
 
Controlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and DataControlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and DataPrecisely
 
Running your IBM i Availability in the Cloud
Running your IBM i Availability in the CloudRunning your IBM i Availability in the Cloud
Running your IBM i Availability in the CloudPrecisely
 
Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016Inductive Automation
 
Basics of micro controllers for biginners
Basics of  micro controllers for biginnersBasics of  micro controllers for biginners
Basics of micro controllers for biginnersGerwin Makanyanga
 
Witekio introducing-predictive-maintenance
Witekio introducing-predictive-maintenanceWitekio introducing-predictive-maintenance
Witekio introducing-predictive-maintenanceWitekio
 

Similar to Chapter 1-1.pptx (20)

406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptx
406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptx406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptx
406997673-Computers-as-Components-2nd-Edi-Wayne-Wolf.pptx
 
Embedded systems introduction
Embedded systems introductionEmbedded systems introduction
Embedded systems introduction
 
Engage 2016 - IBM Verse
Engage 2016 - IBM VerseEngage 2016 - IBM Verse
Engage 2016 - IBM Verse
 
Design Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise SolutionsDesign Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise Solutions
 
Design Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise SolutionsDesign Like a Pro: Planning Enterprise Solutions
Design Like a Pro: Planning Enterprise Solutions
 
Why Integrating IBM Z into ServiceNow and Splunk Is So Important
Why Integrating IBM Z into ServiceNow and Splunk Is So ImportantWhy Integrating IBM Z into ServiceNow and Splunk Is So Important
Why Integrating IBM Z into ServiceNow and Splunk Is So Important
 
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
 
Quick wins in the NetOps Journey by Vincent Boon, Opengear
Quick wins in the NetOps Journey by Vincent Boon, OpengearQuick wins in the NetOps Journey by Vincent Boon, Opengear
Quick wins in the NetOps Journey by Vincent Boon, Opengear
 
Five Ways to Fix Your SQL Server Dev-Test Problems
Five Ways to Fix Your SQL Server Dev-Test Problems Five Ways to Fix Your SQL Server Dev-Test Problems
Five Ways to Fix Your SQL Server Dev-Test Problems
 
embeddedsystems-100429081552-phpapp01.pdf
embeddedsystems-100429081552-phpapp01.pdfembeddedsystems-100429081552-phpapp01.pdf
embeddedsystems-100429081552-phpapp01.pdf
 
Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...
Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...
Integrating IBM Z and IBM i Operational Intelligence Into Splunk, Elastic, an...
 
ESD unit 1.pptx
ESD unit 1.pptxESD unit 1.pptx
ESD unit 1.pptx
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
 
Controlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and DataControlling Access to IBM i Systems and Data
Controlling Access to IBM i Systems and Data
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 
Running your IBM i Availability in the Cloud
Running your IBM i Availability in the CloudRunning your IBM i Availability in the Cloud
Running your IBM i Availability in the Cloud
 
Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016Get More Data Into Your SCADA 2016
Get More Data Into Your SCADA 2016
 
Basics of micro controllers for biginners
Basics of  micro controllers for biginnersBasics of  micro controllers for biginners
Basics of micro controllers for biginners
 
Get More Data Into Your SCADA
Get More Data Into Your SCADAGet More Data Into Your SCADA
Get More Data Into Your SCADA
 
Witekio introducing-predictive-maintenance
Witekio introducing-predictive-maintenanceWitekio introducing-predictive-maintenance
Witekio introducing-predictive-maintenance
 

Recently uploaded

VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 

Recently uploaded (20)

VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 

Chapter 1-1.pptx

  • 1. Principles of embedded computing system design Lei Guo Tel 13880622171 Email: leiguo@uestc.edu.cn Office Address :innovate central building B517 room Computers as Components 4e © 2016 Marilyn Wolf
  • 2. Introduction • What are embedded computing systems? • Challenges in embedded computing system design. • Design methodologies. Computers as Components 4e © 2016 Marilyn Wolf
  • 3. Definition • Embedded computing system: any device that includes a programmable computer but is not itself a general-purpose computer. • Take advantage of application characteristics to optimize the design: • don’t need all the general-purpose bells and whistles. Computers as Components 4e © 2016 Marilyn Wolf
  • 4. Embedding a computer CPU mem input output analog analog embedded computer Computers as Components 4e © 2016 Marilyn Wolf
  • 5. Examples • Cell phone. • Printer. • Automobile: engine, brakes, dash, etc. • Airplane: engine, flight controls, nav/comm. • Digital television. • Household appliances. Computers as Components 4e © 2016 Marilyn Wolf
  • 6. Early history • Late 1940’s: MIT Whirlwind computer was designed for real-time operations. • Originally designed to control an aircraft simulator. • First microprocessor was Intel 4004 in early 1970’s. • HP-35 calculator used several chips to implement a microprocessor in 1972. Computers as Components 4e © 2016 Marilyn Wolf
  • 7. Early history, cont’d. • Automobiles used microprocessor-based engine controllers starting in 1980. • Control fuel/air mixture, engine timing, etc. • Multiple modes of operation: warm-up, cruise, hill climbing, etc. • Provides lower emissions, better fuel efficiency. Computers as Components 4e © 2016 Marilyn Wolf
  • 8. Microprocessor varieties • Microcontroller: includes I/O devices, on-board memory. • Digital signal processor (DSP): microprocessor optimized for digital signal processing. • Typical embedded word sizes: 8-bit, 16-bit, 32-bit. Computers as Components 4e © 2016 Marilyn Wolf
  • 9. Application examples • Simple control: front panel of microwave oven, etc. • Canon EOS 3 has three microprocessors. •32-bit RISC CPU runs autofocus and eye control systems. • Digital TV: programmable CPUs + hardwired logic. Computers as Components 4e © 2016 Marilyn Wolf
  • 10. Automotive embedded systems • Today’s high-end automobile may have 100 microprocessors: • 4-bit microcontroller checks seat belt; • microcontrollers run dashboard devices; • 16/32-bit microprocessor controls engine. • Low-end cars use 20+ microprocessors. Computers as Components 4e © 2016 Marilyn Wolf
  • 11. BMW 850i brake and stability control system • Anti-lock brake system (ABS): pumps brakes to reduce skidding. • Automatic stability control (ASC+T): controls engine to improve stability. • ABS and ASC+T communicate. • ABS was introduced first---needed to interface to existing ABS module. Computers as Components 4e © 2016 Marilyn Wolf
  • 13. Characteristics of embedded systems • Sophisticated functionality. • Real-time operation. • Low manufacturing cost. • Low power. • Designed to tight deadlines by small teams. Computers as Components 4e © 2016 Marilyn Wolf
  • 14. Functional complexity • Often have to run sophisticated algorithms or multiple algorithms. •Cell phone, laser printer. • Often provide sophisticated user interfaces. Computers as Components 4e © 2016 Marilyn Wolf
  • 15. 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 16. Non-functional requirements • Many embedded systems are mass-market items that must have low manufacturing costs. • Limited memory, microprocessor power, etc. • Power consumption is critical in battery-powered devices. • Excessive power consumption increases system cost even in wall-powered devices. Computers as Components 4e © 2016 Marilyn Wolf
  • 17. Design teams • Often designed by a small team of designers. • Often must meet tight deadlines. •6 month market window is common. •Can’t miss back-to-school window for calculator. Computers as Components 4e © 2016 Marilyn Wolf
  • 18. Why use microprocessors? • Alternatives: field-programmable gate arrays (FPGAs), custom logic, etc. • Microprocessors are often very efficient: can use same logic to perform many different functions. • Microprocessors simplify the design of families of products. Computers as Components 4e © 2016 Marilyn Wolf
  • 19. The performance paradox • Microprocessors use much more logic to implement a function than does custom logic. • But microprocessors are often at least as fast: •heavily pipelined; •large design teams; •aggressive VLSI technology. Computers as Components 4e © 2016 Marilyn Wolf
  • 20. Power • Custom logic uses less power, but CPUs have advantages: • Modern microprocessors offer features to help control power consumption. • Software design techniques can help reduce power consumption. • Heterogeneous systems: some custom logic for well-defined functions, CPUs+software for everything else. Computers as Components 4e © 2016 Marilyn Wolf
  • 21. Platforms • Embedded computing platform: hardware architecture + associated software. • Many platforms are multiprocessors. • Examples: • Single-chip multiprocessors for cell phone baseband. • Automotive network + processors. Computers as Components 4e © 2016 Marilyn Wolf
  • 22. Cyber-physical systems • A physical system that tightly interacts with a computer system. • Computers replace mechanical controllers: • More accurate. • More sophisticated control. • Engine controllers replace distributor, carburetor, etc. • Complex algorithms allow both greater fuel efficiency and lower emissions. Computers as Components 4e © 2016 Marilyn Wolf
  • 23. The physics of software • Computing is a physical act. •Software doesn’t do anything without hardware. • Executing software consumes energy, requires time. • To understand the dynamics of software (time, energy), we need to characterize the platform on which the software runs. Computers as Components 4e © 2016 Marilyn Wolf
  • 24. What does “performance” mean? • In general-purpose computing, performance often means average-case, may not be well-defined. • In real-time systems, performance means meeting deadlines. •Missing the deadline by even a little is bad. •Finishing ahead of the deadline may not help. Computers as Components 4e © 2016 Marilyn Wolf
  • 25. Characterizing performance • We need to analyze the system at several levels of abstraction to understand performance: •CPU. •Platform. •Program. •Task. •Multiprocessor. Computers as Components 4e © 2016 Marilyn Wolf
  • 26. Security, safety • Security: system’s ability to prevent malicious attacks. • Integrity: maintenance of proper data values. • Privacy: no unauthorized releases of data. • Safety: no harmful releases of energy. • No crashes, accidents, etc. Computers as Components 4e © 2016 Marilyn Wolf
  • 27. Safe, secure systems • Traditional security is oriented to IT and data security. • But insecure embedded computers can create unsafe cyber-physical systems. • 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 28. Challenges in embedded system design • How much hardware do we need? • How big is the CPU? Memory? • How do we meet our deadlines? • Faster hardware or cleverer software? • How do we minimize power? • Turn off unnecessary logic? Reduce memory accesses? Computers as Components 4e © 2016 Marilyn Wolf
  • 29. Cryptography • Cryptography is the science of hiding information. • Secret-key cryptography allows messages to be encoded and decoded. • Key must be kept secret or the message will not be secure. • Public-key cryptography gives secret messages with an easier-to-use approach: • Sender uses secret key to encrypt message. Also provides a public key to others. • Receiver can decrypt message using public key. The sender’s identity is established by the ability to use their public key. Computers as Components 4e © 2016 Marilyn Wolf
  • 30. Cryptography, cont’d. • Cryptographic hash function generates a message digest. • Short version of the message. • Two different messages are unlikely to generate the same key. • Digital signature: • Sender signs the message or message digest using private key. • Receiver decrypts with public key. • Digital signature plus encryption: • Sender signs the message or message digest with private key. • Sender encrypts the message with the receiver’s public key. • Receiver decrypts with private key, then verifies signature using sender’s public key. Computers as Components 4e © 2016 Marilyn Wolf
  • 31. 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? Computers as Components 4e © 2016 Marilyn Wolf
  • 32. 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 33. Design goals • Performance. • Overall speed, deadlines. • Functionality and user interface. • Manufacturing cost. • Power consumption. • Other requirements (physical size, etc.) Computers as Components 4e © 2016 Marilyn Wolf
  • 35. 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 uses both techniques. Computers as Components 4e © 2016 Marilyn Wolf
  • 36. 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 37. 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 38. 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; • reliability; • etc. Computers as Components 4e © 2016 Marilyn Wolf
  • 39. Our requirements form name purpose inputs outputs functions performance manufacturing cost power physical size/weight Computers as Components 4e © 2016 Marilyn Wolf
  • 40. Example: GPS moving map requirements • Moving map obtains position from GPS, paints map from local database. lat: 40 13 lon: 32 19 I-78 Scotch Road Computers as Components 4e © 2016 Marilyn Wolf
  • 41. GPS moving map needs • Functionality: For automotive use. Show major roads and landmarks. • User interface: At least 400 x 600 pixel screen. Three buttons max. Pop-up menu. • Performance: Map should scroll smoothly. No more than 1 sec power- up. Lock onto GPS within 15 seconds. • Cost: $120 street price = approx. $30 cost of goods sold. Computers as Components 4e © 2016 Marilyn Wolf
  • 42. GPS moving map needs, cont’d. • Physical size/weight: Should fit in hand. • Power consumption: Should run for 8 hours on four AA batteries. Computers as Components 4e © 2016 Marilyn Wolf
  • 43. GPS moving map requirements form name GPS moving map purpose consumer-grade moving map for driving inputs power button, two control buttons outputs back-lit LCD 400 X 600 functions 5-receiver GPS; three resolutions; displays current lat/lon performance updates screen within 0.25 sec of movement manufacturing cost $100 cost-of-goods- sold power 100 mW physical size/weight no more than 2: X 6:, 12 oz. Computers as Components 4e © 2016 Marilyn Wolf
  • 44. 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 45. GPS specification • Should include: • What is received from GPS; • map data; • user interface; • operations required to satisfy user requests; • background operations needed to keep the system running. Computers as Components 4e © 2016 Marilyn Wolf
  • 46. Architecture design • What major components go satisfying the specification? • Hardware components: • CPUs, peripherals, etc. • Software components: • major programs and their operations. • Must take into account functional and non-functional specifications. Computers as Components 4e © 2016 Marilyn Wolf
  • 47. GPS moving map block diagram GPS receiver search engine renderer user interface database display Computers as Components 4e © 2016 Marilyn Wolf
  • 48. GPS moving map hardware architecture GPS receiver CPU panel I/O display frame buffer memory Computers as Components 4e © 2016 Marilyn Wolf
  • 49. GPS moving map software architecture position database search renderer timer user interface pixels Computers as Components 4e © 2016 Marilyn Wolf
  • 50. 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 51. 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. Computers as Components 4e © 2016 Marilyn Wolf
  • 52. Summary • Embedded computers are all around us. • Many systems have complex embedded hardware and software. • Embedded systems pose many design challenges: design time, deadlines, power, etc. • Design methodologies help us manage the design process. Computers as Components 4e © 2016 Marilyn Wolf