Embedded Computing: Differences and Performance in General-Purpose Systems, Study notes of Electrical and Electronics Engineering

The key differences between embedded computers and general-purpose systems, focusing on their applications, requirements, constraints, and performance. Embedded systems are optimized for specific tasks, have lesser emphasis on software portability, and prioritize real-time performance, cost, and power efficiency. General-purpose systems, on the other hand, are designed to run flexible, extensible software systems with code from third-party suppliers and have a standard binary interface for third-party software.

Typology: Study notes

Pre 2010

Uploaded on 09/17/2009

koofers-user-ni4
koofers-user-ni4 🇺🇸

10 documents

1 / 38

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
563 L11.1 Fall 2007
ECE 563
Advanced Computer Architecture
Fall 2007
Lecture 13: Embedded Processors
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26

Partial preview of the text

Download Embedded Computing: Differences and Performance in General-Purpose Systems and more Study notes Electrical and Electronics Engineering in PDF only on Docsity!

ECE 563

Advanced Computer Architecture

Fall 2007

Lecture 13: Embedded Processors

Important stuff … ‰^ Final exam on 12/19 8:00—11:00PM in classroom(yet to confirm) ‰^ Project and report due on the same day after theexam!!!

What is an Embedded Computer?^ ‰^ A computer not used to run general-purpose programs, butinstead used as a component of a larger system. Usually,user does not change the computer program

(except for

manufacturer upgrades). ‰ Example applications:^ ƒ^ Toasters^ ƒ^ Cellphone^ ƒ^ Digital camera (some have several processors)^ ƒ^ Games machines^ ƒ^ Set-top boxes (DVD players, personal video recorders, ...)^ ƒ^ Televisions^ ƒ^ Dishwashers^ ƒ^ Car (some have dozens of processors)^ ƒ^ Internet router (some have hundreds to thousands ofprocessors)^ ƒ^ Cellphone basestation^ ƒ^ .... many more

Early Embedded Computing Examples

-^ Intel 4004, 1971 -^ developed for Busicom 141-PFprinting calculator –^ Intel engineers decided thatbuilding a programmable computerwould be simpler and more flexiblethan hard-wired digital logic -^ MIT Whirlwind, 1946-51^ –^ Initially developed for real-time flightsimulator^ –^ IBM later manufactured versions for SAGEair defense network, last used in 1983

What is different about embedded computers? ‰^ Embedded processors usually optimized toperform one fixed task with software from systemmanufacturer ‰^ General-purpose processors designed to runflexible, extensible software systems with codefrom third-party suppliers^ z^ applications not known at design time ‰^ Note, many products contain both embedded andgeneral-purpose processors^ z^ e.g., smartphone has embedded processors for radiobaseband signal processing, and general-purposeprocessors to run third-party software applications

Lesser emphasis on software portability in embedded applications^ ‰^ Embedded systems^ z^

can usually recompile/rewrite source code for different ISA,and/or use assembler code for new application-specificinstructions z processor pipeline microarchitecture and memory capacity andhierarchy known to programmer/compiler z mix of tasks known to writer of each task, usually static: usescustom run-time system z each task usually “trusts” others, can run in same addressspace

‰^ General-purpose systems^ z^

must have standard binary interface for third-party software z compiler doesn’t know about this particular microarchitectureor memory capacity or hierarchy (compiled for general model) z unknown mix of tasks, tasks dynamically added and deletedfrom mix: uses general-purpose operating system z tasks written by various third-parties, mutually distrustful,need separate address spaces or protection domains

What is Performance? ‰ Latency (or response time, or executiontime)^ z^ time to complete one task ‰ Bandwidth (or throughput)^ z^ tasks completed per unit time

Performance Measurement

Average rate:

A^ >^ B

>^ C

Worst-case rate:

A^ <^ B

<^ C

Processing Rate (Inputs/Second) Inputs

A B C

Which is best for desktop performance? _______ Which is best for hard real-time task?

_________

Average rates

Worstcaserates

Power Measurement^ ‰^ Energy measured in Joules^ ‰^ Power is rate of energy consumption measured inWatts (Joules/second)^ ‰^ Instantaneous power is Volts * Amps^ ‰^ Battery Capacity Measured in Joules

ƒ^ 720 Joules/gram for Lithium-Ion batteries (best energyper weight ratio) ƒ^ 1 instruction on Intel XScale processor takes ~1nJ

⇒^ ~1 billion executed instructions weigh ~1mg

V

I

Fall 2007

Power versus Energy^ ƒ^ System

A^ has higher peak power, but lower total energy

ƒ^ System

B^ has lower peak power, but higher total energy

Power

Time

Peak A^ Peak B

Integratepowercurve to getenergy

Power Dissipation in CMOS (low static power) Primary Components: ‰^ Capacitor Charging (~85% of active power)^ ƒ^ Energy is 1/2 CV

2 per transition ‰^ Short-Circuit Current (~10% of active power)^ ƒ^ When both p and n transistors turn on during signal transition ‰^ Subthreshold Leakage (dominates when inactive)^ ƒ^ Transistors don’t turn off completely, getting worse with technology scaling^ ƒ^ For Intel Pentium-4/Prescott, around 60% of power is leakage^ ƒ^ Optimal setting for lowest total power is when leakage around 30-40% ‰^ Gate Leakage (becoming significant)^ ƒ^ Current leaks through gate of transistor ‰^ Diode Leakage (negligible)^ ƒ^ Parasitic source and drain diodes leak to substrate

CL

Diode Leakage Current Subthreshold

Leakage Current

Short-CircuitCurrent Capacitor Charging Current

Gate LeakageCurrent

Reducing Switching Power

Power

∝^ activity * 1/2 CV

2 * frequency

ƒ^ Reduce activity ƒ^ Reduce switched capacitance C ƒ^ Reduce supply voltage V ƒ^ Reduce frequency

Reducing Switched Capacitance^ Reduce switched capacitance C^ z^

Different logic styles (logic, pass transistor, dynamic) z Careful transistor sizing z Tighter layout z Segmented structures

A^

B^

C

Bus

Shared bus driven by Aor B when sending

values to C Insert switch to isolatebus segment when Bsending to C

A^

B^

C

Reducing Frequency^ ‰^ Doesn’t save energy, just reduces rate at which itis consumed^ z

Some saving in battery life from reduction inrate of discharge