Embedded Systems - Lecture Slides - Operating Systems | CS 3733, Exams of Operating Systems

Material Type: Exam; Class: Operating Systems; Subject: Computer Science; University: University of Texas - San Antonio; Term: Summer 2004;

Typology: Exams

Pre 2010

Uploaded on 07/30/2009

koofers-user-z1s
koofers-user-z1s 🇺🇸

10 documents

1 / 24

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
Summer 2007 CS 4953: SS-Embedded Systems 1
Welcome to CS 4953
SS: Embedded Systems
Instructor: Dr. Dakai Zhu
Classroom: SB 3.02.04A
CS 4953: SS – Embedded Systems 2
Summer 2007
General Course Information
Required textbook:
Embedded System Design: A Unified Hardware/Software
Introduction (ESD) by Frank Vahid and Tony Givargis, Wiley, 2002;
ISBN: 0471386782
Robotic Explorations: A Hands-on Introduction to Engineering
(Robot) by Fred G. Martin, Prentice Hall, 2001; ISBN: 0130895687
Prerequisites:
CS 3733: Operating Systems (undergraduate), and
CS 4753: Architecture (undergraduate), and
CS 3343: Algorithms (undergraduate)
Class Web: http://www.cs.utsa.edu/~dzhu/cs4953/
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18

Partial preview of the text

Download Embedded Systems - Lecture Slides - Operating Systems | CS 3733 and more Exams Operating Systems in PDF only on Docsity!

Summer 2007 CS 4953: SS-Embedded Systems 1

Welcome to CS 4953

SS: Embedded Systems

Instructor: Dr. Dakai Zhu

Classroom: SB 3.02.04A

General Course Information

a Required textbook: ¾ Embedded System Design: A Unified Hardware/Software Introduction (ESD) by Frank Vahid and Tony Givargis, Wiley, 2002; ISBN: 0471386782 ¾ Robotic Explorations: A Hands-on Introduction to Engineering (Robot) by Fred G. Martin, Prentice Hall, 2001; ISBN: 0130895687

a Prerequisites: ¾ CS 3733: Operating Systems (undergraduate), and ¾ CS 4753: Architecture (undergraduate), and ¾ CS 3343: Algorithms (undergraduate)

a Class Web: http://www.cs.utsa.edu/~dzhu/cs4953/

Summer 2007 CS 4953: SS – Embedded Systems 3

Grade Policy

a NO final exam! ☺

aTwo Mid-Term Exams ( 25% each )

¾ June 28 and July. 26 ( tentative ) ¾ Closed books, closed notes

aFive labs and one project ( 50%)

aAttendance to both lecture and labs is mandatory

¾ Miss 3 classes Æ one letter grade down ¾ Extra 5% based on class attendance & participation

aNo early or makeup exams

aFinal grade: >= 90% Æ A; >= 80% Æ B;

>= 70% Æ C; >= 60% Æ D; <60% Æ F

Class Environment and Lab Equipments

aClassroom is the ‘ Security Lab ’

¾ No ‘touch’ on other equipments except the ones for us ¾ Fail to follow this rule Æ remove from the class !!!

aLab equipments: LEGO set & Handyboard

¾ More than $500 for each set Æ reuse for future classes

aLabs/Project: team work (2 or 3 students)

¾ All teammates are responsible for the equipments ¾ If broken, will be asked to replace them at your cost ¾ Labs/project will be conducted in the classroom

Summer 2007 CS 4953: SS-Embedded Systems 7

Introduction to

Embedded Systems

Lecture Outline

aWhat is an embedded system?

aWhy do we care embedded systems?

aDesign challenges & metrics

aConstraints and design tradeoffs: cost, performance,

time etc.

aDesign technologies and approaches

aCourse objectives and topics

Summer 2007 CS 4953: SS – Embedded Systems 9

General Computing Systems

aPersonal Computers (PCs)

¾ Desktops ¾ Laptops

aMainframes

aServers

Embedded Computing Systems: Examples

aComputing systems embedded

within electronic devices

aComputing system other than a

desktop computer

aPerhaps 50 per household and

per automobile

aBillions of units produced yearly,

versus millions of desktop units

Summer 2007 CS 4953: SS – Embedded Systems 13

Digital Camera: An Example

Microcontroller

A2D CCD preprocessor^ Pixel coprocessor D2A

JPEG codec DMA controller

Memory controller ISA bus interface UART LCD ctrl

Display ctrl

Multiplier/Accum

Digital camera chip

lens

CCD

a Single-functioned -- always a digital camera a Tightly-constrained -- Low cost, low power, small, fast a Reactive and real-time -- only to a small extent

Definition: An Embedded System

aEmploys a combination of hardware & software to

perform a single/specific function

aPart of a larger system (not a “computer”)

aWorks in a reactive and time-constrained

environment.

aSoftware provides features and flexibility

aHardware = {Processors, ASICs, Memory,...} is used

for performance (& sometimes security)

Summer 2007 CS 4953: SS – Embedded Systems 15

Four Categories of Embedded Systems

a General Computing ¾ Applications similar to desktop computing, but in an embedded package ¾ Video games, set top boxes, wearable computers, automatic tellers

a Control Systems ¾ Closed loop feedback control of real time system ¾ Vehicle engines, chemical processes, nuclear power, flight control

a Signal Processing ¾ Computations involving large data streams ¾ Radar, Sonar, video compression

a Communication & Networking ¾ Switching and information transmission ¾ Telephone system, Internet

Why are Embedded Systems important?

a Market reasons ¾ The embedded systems market is also in billions of $ ¾ 90% of processors go into “ non-computers ”, only 10% in “computers” ¾ In year 2000, about $2,700 of every car goes to electronics

a Engineering reasons ¾ Why does a satellite need a Windows prompt? ¾ Does the McDonald’s POS (point-of-sale) terminal need MacOS? ¾ Any device that needs to be controlled can be controlled by a microprocessor

a Embedded system designers are often ¾ Jackofmanytrades ¾ Need to know hardware, software, and some combination of networking, control theory and signal processing ¾ business models

Summer 2007 CS 4953: SS – Embedded Systems 19

Optimization: Tradeoffs

a Improving one metric may worsen others a Expertise with both software and hardware is needed to optimize design metrics a Various technologies in order to choose the best for a given application and constraints

Performance Size

Power

NRE cost

Microcontroller

A2D CCD preprocessor^ Pixel coprocessor D2A JPEG codec DMA controller

Memory controller ISA bus interface UART LCD ctrl

Display ctrl

Multiplier/Accum

Digital camera chip

lens

CCD Hardware

Software

Time-to-market: a demanding metric

aTime required to

develop a product to the

point it can be sold to

customers

aMarket window

¾ Period during which the product would have highest sales

aAverage time-to-market

constraint is about 8

months

aDelays can be costly

Revenues ($)

Time (months)

Summer 2007 CS 4953: SS – Embedded Systems 21

Losses due to delayed market entry

a Simplified revenue model ¾ Product life = 2W, peak at W ¾ Triangle area equals revenue a Area = 1/2 * base * height ¾ On-time = 1/2 * 2W * W ¾ Delayed = 1/2 * (W-D+W)(W-D) a Loss: difference between the on- time and delayed triangle areas a Percentage revenue loss = (D(3W-D)/2W 2 )100% a Lifetime 2W=52 wks, ¾ delay D=4 wks: (4(326 – 4)/226^2) = 22% ¾ delay D=10 wks: (10(326 – 10)/226^2) = 50%

On-time Delayed entry entry

Peak revenue

Peak revenue from delayed entry

Market rise Market fall

W 2W Time

D

On-time

Delayed

Revenues ($)

NRE and unit cost metrics vs. unit #

a Costs: ¾ Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost ¾ NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system ¾ total cost = NRE cost + unit cost * # of units ¾ per-product cost = total cost / # of units = (NRE cost / # of units) + unit cost a Example ¾ NRE=$2000, unit=$ ¾ For 10 units 9 total cost = $2000 + 10*$100 = $ 9 per-product cost = $2000/10 + $100 = $

Amortizing NRE cost over all the units

Summer 2007 CS 4953: SS – Embedded Systems 25

Trends in Embedded Systems

aIncreasing code size

¾ average code size: 16-64KB in 1992, 64K-512KB in 1996 ¾ migration from hand (assembly) coding to high-level languages

aReuse of hardware and software components

¾ processors (micro-controllers, DSPs) ¾ software components (drivers)

aIncreasing integration and system complexity

¾ integration of RF, DSP, network interfaces ¾ 32-bit processors, IO processors (I2O)

Embedded System Requirements

aR1 Functional requirements

aR2 Temporal requirements

aR3 Dependability requirements

Summer 2007 CS 4953: SS – Embedded Systems 27

Functional requirements

aData Collection

¾ Sensor requirements ¾ Signal conditioning ¾ Alarm monitoring

aDirect Digital Control

¾ Actuators

aMan-Machine Interaction

¾ informs the operator of the current state of the controlled object ¾ assists the operator in controlling the system

Temporal requirements

aTasks may have deadlines

aMinimal latency jitter

aMinimal error detection latency

aTiming requirements due to tight software control

loops

aHuman interface requirements.

Summer 2007 CS 4953: SS – Embedded Systems 31

Different Processor Technologies

aThe architecture of the computation engine used to

implement a system’s desired functionality

Application-specific

Registers Custom ALU

Controller Datapath

Program memory Assembly code for: total = 0 for i =1 to …

Control logic and State register

Data memory

IR PC

Single-purpose (“hardware”)

Controller Datapath Control logic State register

Data memory

index total

IR PC

Register file General ALU

Controller Datapath

Program memory Assembly code for: total = 0 for i =1 to …

Control logic and State register

Data memory

General-purpose (“software”)

Different Processor Technologies (cont.)

aGeneral-purpose processors

¾ Low time-to-market and NRE costs ¾ High flexibility

aSingle-purpose processors: digital circuit designed

to execute exactly one program

¾ Contains only the components needed to execute a single program Æ fast, low power and small size ¾ High cost

aApplication-specific processors: optimized for a

particular class of applications

¾ Some flexibility, good performance, size and power

Summer 2007 CS 4953: SS – Embedded Systems 33

IC (integrated circuit) Technologies

aThe manner in which a digital (gate-level)

implementation is mapped onto an IC

aFull-custom/VLSI

aSemi-custom ASIC (gate array and standard cell)

aPLD (Programmable Logic Device)

source drain cha nnel

oxide

gate

Silicon substrate

IC package IC

Full-custom/VLSI

aAll layers are optimized for an embedded system’s

particular digital implementation

¾ Placing transistors ¾ Sizing transistors ¾ Routing wires

aBenefits

¾ Excellent performance, small size, low power

aDrawbacks

¾ High NRE cost (e.g., $300k), long time-to-market

Summer 2007 CS 4953: SS – Embedded Systems 37

Processor & IC technologies Relation

a Basic tradeoff ¾ General vs. custom ¾ With respect to processor technology or IC technology ¾ The two technologies are independent

General- purpose processor

ASIP

Single- purpose processor

PLD Semi-custom Full-custom

General, providing improved:

Customized, providing improved:

Power efficiency Performance Size Cost (high volume)

Flexibility Maintainability NRE cost Time- to-prototype Time-to-market Cost (low volume)

Design Technology

aThe manner in which we convert our concept of

desired system functionality into an implementation

Libraries/IP: Incorporates pre- designed implementation from lower abstraction level into higher level.

System specification

Behavioral specification

RT specification

Logic specification To final implementation

Compilation/Synthesis: Automates exploration and insertion of implementation details for lower level.

Test/Verification: Ensures correct functionality at each level, thus reducing costly iterations between levels.

Compilation/ Synthesis

Libraries/ IP

Test/ Verification System synthesis

Behavior synthesis

RT synthesis

Logic synthesis

Hw/Sw/ OS

Cores

RT components

Gates/ Cells

Model simulat./ checkers

Hw-Sw cosimulators

HDL simulators

Gate simulators

Summer 2007 CS 4953: SS – Embedded Systems 39

The co-design ladder

a In the past: ¾ Hardware and software design technologies were very different ¾ Recent maturation of synthesis and CAD tools enables a unified view of hardware and software a Hardware/software “codesign” Implementation

Assembly instructions

Machine instructions

Register transfers

Compilers (1960's,1970's)

Assemblers, linkers (1950's, 1960's)

Behavioral synthesis (1990's)

RT synthesis (1980's, 1990's) Logic synthesis (1970's, 1980's)

Microprocessor plus program bits: “software”

VLSI, ASIC, or PLD implementation: “hardware”

Logic gates

Logic equations / FSM's

Sequential program code (e.g., C, VHDL)

The choice of hardware versus software for a particular function is simply a tradeoff among various design metrics, like performance, power, size, NRE cost, and especially flexibility; there is no fundamental difference between what hardware or software can implement.

Moore’s Law: Transistors on a Chip

1

10

100

1000

10000

100000

1000000

10000000

100000000

1000000000

19681970197219741976197819801982198419861988199019921994199619982000

Transistors 4004

8008 8080

8086

286 386

(^486) P-I P-II

P-III P-IV

Moore’s Law

IC transistor capacity has doubled roughly

every 18 months for the past several decades