+ All Categories
Home > Documents > New Quiz One discussion Solutions to quiz Class performance on...

New Quiz One discussion Solutions to quiz Class performance on...

Date post: 12-Oct-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
7
Embedded System Design and Synthesis Robert Dick http://ziyang.eecs.northwestern.edu/ dickrp/esds-two-week Department of Electrical Engineering and Computer Science Northwestern University Office at Tsinghua University: 9–310 East Main Building Quiz One discussion Overview of real-time and embedded operating systems Embedded application/OS time, power, and energy estimation Homework Solutions to quiz Class performance on quiz and recommendations Quiz (page 1) 1 Is the monetary size of the general-purpose computing market larger, smaller, or the same as the embedded systems market (one word)? 2 What is the time complexity class of linear programming (one word)? 3 What is the time complexity class of integer linear programming (one word)? 4 What do simulated annealing algorithms do differently at high and low temperatures that permits them to escape local minima? 4 Robert Dick Embedded System Design and Synthesis Quiz One discussion Overview of real-time and embedded operating systems Embedded application/OS time, power, and energy estimation Homework Solutions to quiz Class performance on quiz and recommendations Basic complexity classes NP -complete P NP P solvable in polynomial time by a computer (Turing Machine) NP solvable in polynomial time by a nondeterministic computer NP-complete converted to other NP-complete problems in polynomial time 5 Robert Dick Embedded System Design and Synthesis Quiz One discussion Overview of real-time and embedded operating systems Embedded application/OS time, power, and energy estimation Homework Solutions to quiz Class performance on quiz and recommendations Quiz (page 1) 1 Is the monetary size of the general-purpose computing market larger, smaller, or the same as the embedded systems market (one word)? 2 What is the time complexity class of linear programming (one word)? 3 What is the time complexity class of integer linear programming (one word)? 4 What do simulated annealing algorithms do differently at high and low temperatures that permits them to escape local minima? 6 Robert Dick Embedded System Design and Synthesis Quiz One discussion Overview of real-time and embedded operating systems Embedded application/OS time, power, and energy estimation Homework Solutions to quiz Class performance on quiz and recommendations Boltzmann trials Solution are selected for survival by conducting Boltzmann trials between parents and children. Given a global temperature T , a solution with cost K beats a solution with cost J with probability: 1 1+ e (J -K )/T 7 Robert Dick Embedded System Design and Synthesis Quiz One discussion Overview of real-time and embedded operating systems Embedded application/OS time, power, and energy estimation Homework Solutions to quiz Class performance on quiz and recommendations Boltzmann trials Introduce convenience variable U U(T )=1 - 1 T +1 U(0) = 0 T 1 U(T ) →∞ 8 Robert Dick Embedded System Design and Synthesis Quiz One discussion Overview of real-time and embedded operating systems Embedded application/OS time, power, and energy estimation Homework Solutions to quiz Class performance on quiz and recommendations Boltzmann trials 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0.2 0.4 0.6 0.8 1 U -1 -0.5 0 0.5 1 J - K 0 0.2 0.4 0.6 0.8 1 Accept. prob. 9 Robert Dick Embedded System Design and Synthesis Quiz One discussion Overview of real-time and embedded operating systems Embedded application/OS time, power, and energy estimation Homework Solutions to quiz Class performance on quiz and recommendations Quiz (page 2) 1 You are in the process of designing an embedded system that must prepare a train ticket for a user in a fixed period of time. Ticket request events may occur at any time, but two requests will never be separated by fewer than five seconds. A user should never need to wait more than two seconds from the time they request a ticket to the time the ticket is prepared. The execution time of the ticket preparation task is one second. If you were to map this event-driven system to periodic system, what is the maximum period that can be used while still guaranteeing that the time constraints are met? 2 Reliability 1 Name one major lifetime fault process in modern integrated circuits. 2 What things have the most influence over the rate of faults caused by this process? 10 Robert Dick Embedded System Design and Synthesis
Transcript
Page 1: New Quiz One discussion Solutions to quiz Class performance on …ziyang.eecs.umich.edu/~dickrp/esds-two-week/lectures/... · 2007. 8. 27. · Simple priority-based thread scheduling

Embedded System Design and Synthesis

Robert Dick

http://ziyang.eecs.northwestern.edu/∼dickrp/esds-two-weekDepartment of Electrical Engineering and Computer Science

Northwestern University

Office at Tsinghua University: 9–310 East Main Building

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Quiz (page 1)

1 Is the monetary size of the general-purpose computing marketlarger, smaller, or the same as the embedded systems market(one word)?

2 What is the time complexity class of linear programming (oneword)?

3 What is the time complexity class of integer linear programming(one word)?

4 What do simulated annealing algorithms do differently at highand low temperatures that permits them to escape local minima?

4 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Basic complexity classes

NP-complete PNP

P solvable in polynomial time by a computer (Turing Machine)

NP solvable in polynomial time by a nondeterministic computer

NP-complete converted to other NP-complete problems inpolynomial time

5 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Quiz (page 1)

1 Is the monetary size of the general-purpose computing marketlarger, smaller, or the same as the embedded systems market(one word)?

2 What is the time complexity class of linear programming (oneword)?

3 What is the time complexity class of integer linear programming(one word)?

4 What do simulated annealing algorithms do differently at highand low temperatures that permits them to escape local minima?

6 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Boltzmann trials

Solution are selected for survival by conducting Boltzmann trialsbetween parents and children.Given a global temperature T , a solution with cost K beats a solutionwith cost J with probability:

1

1 + e(J-K )/T

7 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Boltzmann trials

Introduce convenience variable U

U(T ) = 1 −1

T + 1

U(0) = 0

T → 1 ⇒ U(T ) → ∞

8 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Boltzmann trials

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

0 0.2 0.4 0.6 0.8 1

U

-1-0.5

0 0.5

1 J - K

0

0.2

0.4

0.6

0.8

1

Accept. prob.

9 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Quiz (page 2)

1 You are in the process of designing an embedded system thatmust prepare a train ticket for a user in a fixed period of time.Ticket request events may occur at any time, but two requestswill never be separated by fewer than five seconds. A user shouldnever need to wait more than two seconds from the time theyrequest a ticket to the time the ticket is prepared. The executiontime of the ticket preparation task is one second. If you were tomap this event-driven system to periodic system, what is themaximum period that can be used while still guaranteeing thatthe time constraints are met?

2 Reliability1 Name one major lifetime fault process in modern integrated

circuits.2 What things have the most influence over the rate of faults

caused by this process?

10 Robert Dick Embedded System Design and Synthesis

Page 2: New Quiz One discussion Solutions to quiz Class performance on …ziyang.eecs.umich.edu/~dickrp/esds-two-week/lectures/... · 2007. 8. 27. · Simple priority-based thread scheduling

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Quiz One grade distribution

0

0.5

1

1.5

2

2.5

3

3.5

4

0 1 2 3 4 5

Nu

mb

er

of

stu

de

nts

with

sco

re

Score

12 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Solutions to quizClass performance on quiz and recommendations

Improving performance

Some students might get discouraged with the quiz performance

This is only a small part of the course grade

Study harder for next quiz

Keep up on reading and do literature summaries

Work hard on project

Do not get discouraged

You are as well prepared as many prior students

13 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Essential features of RTOSs

Provides real-time scheduling algorithms or primatives

Bounded execution time for OS services

Usually implies preemptive kernelE.g., Linux can spend milliseconds handling interrupts, especiallydisk access

15 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Threads

Threads vs. processes: Shared vs. unshared resources

OS impact: Windows vs. Linux

Hardware impact: MMU

16 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Threads vs. processes

Threads: Low context switch overhead

Threads: Sometimes the only real option, depending on hardware

Processes: Safer, when hardware provides support

Processes: Can have better performance when IPC limited

17 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Software implementation of schedulers

TinyOS

Light-weight threading executive

µC/OS-II

Linux

Static list scheduler

18 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

TinyOS

Most behavior event-driven

High rate → Livelock

Research schedulers exist

19 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

BD threads

Brian Dean: Microcontroller hacker

Simple priority-based thread scheduling executive

Tiny footprint (fine for AVR)

Low overhead

No MMU requirements

20 Robert Dick Embedded System Design and Synthesis

Page 3: New Quiz One discussion Solutions to quiz Class performance on …ziyang.eecs.umich.edu/~dickrp/esds-two-week/lectures/... · 2007. 8. 27. · Simple priority-based thread scheduling

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

µC/OS-II

Similar to BD threads

More flexible

Bigger footprint

21 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Old Linux scheduler

Single run queue

O (n) scheduling operation

Allows dynamic goodness function

22 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

O (1) scheduler in Linux 2.6

Written by Ingo Molnar

Splits run queue into two queues prioritized by goodness

Requires static goodness function

No reliance on running process

Compatible with preemptible kernel

23 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Real-time Linux

Run Linux as process under real-time executive

Complicated programming model

RTAI (Real-Time Application Interface) attempts to simplify

Colleagues still have problems at > 18 kHz control period

24 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Real-time operating systems

Embedded vs. real-time

Dynamic memory allocation

Schedulers: General-purpose vs. real-time

Timers and clocks: Relationship with HW

25 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Introduction

Real-Time Operating Systems are often used in embeddedsystems

They simplify use of hardware, ease management of multipletasks, and adhere to real-time constraints

Power is important in many embedded systems with RTOSs

RTOSs can consume significant amount of power

They are re-used in many embedded systems

They impact power consumed by application software

RTOS power effects influence system-level design

28 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Real-time operating systems (RTOS)

Interaction between HW and SW

Rapid response to interruptsHW interface abstraction

Interaction between different tasks

CommunicationSynchronization

Multitasking

Ideally fully preemptivePriority-based schedulingFast context switchingSupport for real-time clock

29 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

General-purpose OS stress

Good average-case behavior

Providing many services

Support for a large number of hardware devices

30 Robert Dick Embedded System Design and Synthesis

Page 4: New Quiz One discussion Solutions to quiz Class performance on …ziyang.eecs.umich.edu/~dickrp/esds-two-week/lectures/... · 2007. 8. 27. · Simple priority-based thread scheduling

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

RTOSs stress

Predictable service execution times

Predictable scheduling

Good worst-case behavior

Low memory usage

Speed

Simplicity

31 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Predictability

General-purpose computer architecture focuses on average-case

CachesPrefetchingSpeculative execution

Real-time embedded systems need predictability

Disabling or locking caches is commonCareful evaluation of worst-case is essentialSpecialized or static memory management common

32 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

RTOS overview

Memorymanager

BasicIO

managerTask

IPC

ISRTimer

etc.

ABSMPEGencoding

Applications

RTOSservices

Communication

Micro−browser

Messagecomposer Database

Organizer

Tasks

Hardware

Other hardware

Network interface

Processor Memory

Timer

33 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

RTOS power consumption

Used in several low-power embedded systems

Need for RTOS power analysis

Significant power consumptionImpacts application software powerRe-used across several applications

34 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

RTOS and real-time references

K. Ramamritham and J. Stankovic. Scheduling algorithms andoperating systems support for real-time systems. Proc. IEEE,82(1):55–67, January 1994

Giorgio C. Buttazzo. Hard Real-Time Computing Systems.Kluwer Academic Publishers, Boston, 2000

35 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Prior work

Vivek Tiwari, Sharad Malik, and Andrew Wolfe. Compilationtechniques for low energy: An overview. In Proc. Int. Symp.Low-Power Electronics, pages 38–39, October 1994

Y. Li and J. Henkel. A framework for estimating and minimizingenergy dissipation of embedded HW/SW systems. In Proc.Design Automation Conf., pages 188–193, June 1998

J. J. Labrosse. MicroC/OS-II. R & D Books, KS, 1998

36 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

RTOS power references

Journal version Design Automation Conference 2000 work in the areaof RTOS power consumption analysis

Robert P. Dick, G. Lakshminarayana, A. Raghunathan, andNiraj K. Jha. Analysis of Power Dissipation in Real-TimeOperating Systems. IEEE Trans. Computer-Aided Design ofIntegrated Circuits and Systems, 22(5):615–627, May 2003

37 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

RTOS power references

K. Baynes, C. Collins, E. Fiterman, B. Ganesh, P. Kohout,C. Smit, T. Zhang, and B. Jacob. The performance and energyconsumption of three embedded real-time operating systems. InProc. Int. Conf. Compilers, Architecture & Synthesis forEmbedded Systems, pages 203–210, November 2001

T.-K. Tan, A. Raghunathan, and Niraj K. Jha. EMSIM: Anenergy simulation framework for an embedded operating system.In Proc. Int. Symp. Circuits & Systems, pages 464–467, May2002

38 Robert Dick Embedded System Design and Synthesis

Page 5: New Quiz One discussion Solutions to quiz Class performance on …ziyang.eecs.umich.edu/~dickrp/esds-two-week/lectures/... · 2007. 8. 27. · Simple priority-based thread scheduling

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Contributions

First detailed power analysis of RTOS

Proof of concept later used by others

Applications

Low-power RTOSEnergy-efficient software architectureIncorporate RTOS effects in system design

39 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Simulated embedded system

bus

Processor

SPARClite 86832

Other ASICs

and peripherals

On−chip cache

Fujitsu

Timer

IBM

0118160PT3−60

DRAM

IBM

0118160PT3−60

DRAM

EPROM

LEDs

UART

Interrupts

Easy to add new devices

Cycle-accurate model

Fujitsu board support libraryused in model

µC/OS-II RTOS used

41 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Periodically triggered ABS

N

Y

Timer

transition?

Sense speed and

pedal conditions

Compute

acceleration

Brake decision

Actuate brakeSleep

42 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Periodically triggered ABS timing

Brakepedal

ABSprocess

Brakeaction

sensorWheel

Time

Timer

43 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Selectively triggered ABS

Y

N

N

Y

Pedal

pressed?Sense speed and

pedal conditions

Compute

accelerationSleep

Brake decision

Actuate brakeTimer

transition?

44 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Selectively triggered ABS timing

Brakepedal

ABSprocess

Brakeaction

sensorWheel

Timer

Time

63% reduction in energy and power consumption

45 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Agent example

Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3

Commodity 4

Commodity 3

Commodity 2

Commodity 1

Money

Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3Agent 6

Agent 5 Agent 4

Agent 2

Agent 1

Agent 3

Advertise

Bid

Offer

Transfer results

46 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Single task network interface

Checksum computation

and output

Get packetCompute

checksum

Procure

Ethernet

controller

Transfer

packet

Release

Ethernet

controller

Procuring Ethernet controller has high energy cost

47 Robert Dick Embedded System Design and Synthesis

Page 6: New Quiz One discussion Solutions to quiz Class performance on …ziyang.eecs.umich.edu/~dickrp/esds-two-week/lectures/... · 2007. 8. 27. · Simple priority-based thread scheduling

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Multi-tasking network interface

Checksum

computation

Compute

checksum

Get packet

Procure

Ethernet

controller

Transfer

packets

Release

Ethernet

controller

Buffer

management

Output

RTOS power analysis suggests process re-organization.21% reduction in energy consumption. Similar power consumption.

48 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Infrastructure

Application

codeSPARClite

compiler

OS code

Application

codeSPARClite

compiler

OS code

External

stimulus

Application

codeSPARClite

compiler

OS code

External

stimulus

Timer

model

SPARClite cache

simulator

UART

model

Models for

other

peripherals

Instruction−level

energy model

SPARClite ISS

Memory

energy model

Memory model

model

Cachecontroller

interface

unit model

Bus

Application

codeSPARClite

compiler

OS code

External

stimulus

Timer

model

SPARClite cache

simulator

UART

model

Models for

other

peripherals

Instruction−level

energy model

SPARClite ISS

Memory

energy model

Memory model

model

Cachecontroller

interface

unit model

Bus

Application

codeSPARClite

compiler

OS code

External

stimulus

����������

��������������������

���������

���������

������������

����

��������������

������

Timer

model

SPARClite cache

simulator

UART

model

Models for

other

peripherals

Instruction−level

energy model

SPARClite ISS

Memory

energy model

Memory model

model

Cachecontroller

interface

unit model

Bus

Application

codeSPARClite

compiler

OS code

External

stimulus

Energy by call

tree position for

task A

OSSched() main()

OSSem()

����������

��������������������

���������

���������

������������

����

��������������

������

Timer

model

SPARClite cache

simulator

UART

model

Models for

other

peripherals

Instruction−level

energy model

SPARClite ISS

Memory

energy model

Memory model

model

Cachecontroller

interface

unit model

Bus

Application

codeSPARClite

compiler

OS code

External

stimulus

Energy by call

tree position for

task A

OSSched() main()

OSSem()

����������

��������������������

���������

���������

������������

����

��������������

������

����

��

��������������������

���������

���������

������������������������

��������

��������������

������

Timer

model

SPARClite cache

simulator

UART

model

Models for

other

peripherals

Instruction−level

energy model

SPARClite ISS

Memory

energy model

Memory model

model

Cachecontroller

interface

unit model

Bus

Application

codeSPARClite

compiler

OS code

External

stimulus

Energy by call

tree position for

task A

Energy by call

tree position for

task B

OSSched() main()

OSSem()

50 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

ABS optimization effects

������������

����������������������

��������

������

������

������

������

������

������������

������

Sleep

Synchronization

Task control

Semaphore

Application

Floating−point

Initialization

Input/output

Interrupt

Memory

Mailbox

Misc.

SchedulingEn

erg

y (

mJ

)

gatenon−gate

ABS

0500

100015002000250030003500400045005000550060006500700075008000850090009500

Redesigned application afterusing simulator to locateareas where power was wasted

63% energy reduction

63% power reduction

RTOS directly accounted for50% of system energy

52 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Agent optimization effects

���������������������������������

���������������������������

��������

������

������

������

������

������

������������

������

Sleep

Synchronization

Task control

Semaphore

Application

Floating−point

Initialization

Input/output

Interrupt

Memory

Mailbox

Misc.

Scheduling

tuned

mail

Agent

En

erg

y (

mJ

)0

250

500

750

1000

1250

1500

1750

2000

2250

2500

2750

3000

3250

3500

3750

Mail version used RTOSmailboxes for informationtransmission

Tuned version carefullyhand-tuned to used sharedmemory

Power can be reduced at acost

Increased applicationsoftware complexityDecreased flexibility

53 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Ethernet optimization effects

Ethernet

���������������������������������������

���������������������������������������������

����������������

��������

������

������

������

������

������

������������

������

Sleep

Synchronization

Task control

Semaphore

Application

Floating−point

Initialization

Input/output

Interrupt

Memory

Mailbox

Misc.

Scheduling

bufnon−buf

En

erg

y (

mJ)

0

250

500

750

1000

1250

1500

1750

2000

2250

2500

2750

3000

3250 Determined thatsynchronization routine costwas high

Used RTOS buffering toamortize synchronizationcosts

20.5% energy reduction

0.2% power reduction

RTOS directly accounted for1% of system energy

Energy savings due toimproved RTOS use, notreduced RTOS energy

54 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Mailbox example

Mailbox

���������������������

��������������� ��

������

������

������

������

������

������

������������

������

Sleep

Synchronization

Task control

Semaphore

Application

Floating−point

Initialization

Input/output

Interrupt

Memory

Mailbox

Misc.

SchedulingEn

erg

y (

mJ

)

0

25

50

75

100

125

150

175

200

225

250

275

300

325

350

375

Rapid mailbox communicationbetween tasks

RTOS directly accounted for99% of system energy

55 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Semaphore example

Semaphore

��������������

����������������������

����������������

��������

������

������

������

������

������

������������

������

Sleep

Synchronization

Task control

Semaphore

Application

Floating−point

Initialization

Input/output

Interrupt

Memory

Mailbox

Misc.

Scheduling

En

erg

y (

mJ

)

050

100150200250300350400450500550600650700750800850900950

10001050

Semaphores used for tasksynchronization

RTOS directly accounted for98.7% of system energy

56 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Time results

��������

������

������

������

������

������

������������

������

Sleep

Synchronization

Task control

Semaphore

Application

Floating−point

Initialization

Input/output

Interrupt

Memory

Mailbox

Misc.

Scheduling

���������������������������������������������������������������

���������������������������������������������������������������

��������������������������������������������������������������������

��������������������������������������������������������������������

���������������������������������

���������������������������

������������������������������������������

������������������������������������������

���������������� ���

������������������������

���������������

��������������

��������������������

��������������

SemaphoreMailboxEthernetAgentABS

gatenon−gate

mail

tuned

non−buf

buf

Tim

e (

ms

)

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

11000

12000

13000

14000

0

250

500

750

1000

1250

1500

1750

2000

2250

2500

2750

0

250

500

750

1000

1250

1500

1750

2000

2250

2500

0

25

50

75

100

125

150

175

200

225

250

275

0

50

100

150

200

250

300

350

400

450

500

550

600

650

700

750

800

57 Robert Dick Embedded System Design and Synthesis

Page 7: New Quiz One discussion Solutions to quiz Class performance on …ziyang.eecs.umich.edu/~dickrp/esds-two-week/lectures/... · 2007. 8. 27. · Simple priority-based thread scheduling

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Energy bounds

Service Minimum Maximumenergy (µJ) energy (µJ)

AgentTask 3.41 4727.88fptodp 17.46 49.72BSPInit 3.52 3.52fstat 16.34 16.34CPUInit 287.15 287.15fstat r 31.26 31.26GetPsr 0.38 0.55init bss 2.86 3.07GetTbr 0.40 0.53

init data 4.23 4.37InitTimer 2.53 2.53init timer 18012.10 20347.00OSCtxSw 46.63 65.65

init tvecs 1.31 1.31OSDisableInt 0.84 1.31

· · · · · · · · ·

58 Robert Dick Embedded System Design and Synthesis

Semaphore example hierarchical call tree

FunctionEnergy(µJ)invocation

Energy (%) Time (ms) Calls

realstart init tvecs 1.31 0.00 0.00 125.40 mJ total init timer liteled 4.26 0.00 0.00 1

2.43 % 18.01 mJ total1.72 %startup do main 7363.11 0.70 5.57 1

7.39 mJ total save data 5.08 0.00 0.00 1

0.71 % init data 4.23 0.00 0.00 1init bss 2.86 0.00 0.00 1cache on 8.82 0.00 0.01 1

Task1 win unf trap 6.09 1.16 9.43 1999

508.88 mJ total OSDisableInt 0.98 0.09 0.82 1000

48.69 % OSEnableInt 1.07 0.10 0.92 1000OSSemPend win unf trap 6.00 0.57 4.56 999

104.59 mJ total OSDisableInt 0.94 0.18 1.56 1999

10.01 % OSEnableInt 0.94 0.18 1.56 1999OSEventTaskWait 13.07 1.25 9.89 999

OSSched 66.44 6.35 51.95 999OSSemPost OSDisableInt 0.96 0.09 0.78 1000

9.82 mJ total OSEnableInt 0.98 0.09 0.81 10000.94 %

OSTimeGet OSDisableInt 0.84 0.08 0.66 10004.62 mJ total OSEnableInt 0.98 0.09 0.81 1000

0.44 %CPUInit BSPInit 3.52 0.00 0.00 1

0.29 mJ total exceptionHandler 15.51 0.02 0.17 15

0.03 %printf win unf trap 6.18 0.59 4.87 1000

368.07 mJ total vfprintf 355.04 33.97 257.55 1000

35.22 %

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Example power-efficient change to RTOS

Small changes can greatly improve RTOS power consumption

µC/OS-II tracks processor loading by incrementing a counterwhen idle

However, this is not a good low-power design decision

NOPs have lower power than add or increment instructions

Sleep mode has much lower power

Can disable loading counter and use NOPs or sleep mode

60 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Example power-efficient change to RTOS

Alternatively, can use timer-based sampling

Normally NOP or sleep when idleWake up on timer ticksSample highest non-timer ISR taskIf it’s the idle task, increment a counterCan dramatically reduce power consumption without losingfunctionality

61 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

RTOS Conclusions

Demonstrated that RTOS significantly impacts power

RTOS power analysis can improve application software design

Applications

Low-power RTOS designEnergy-efficient software architectureConsider RTOS effects during system design

62 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Introduction, motivation, and past workExamples of energy optimizationSimulation infrastructureResults

Reference

Kaushik Ghosh, Bodhisattwa Mukherjee, and Karsten Schwan. Asurvey of real-time operating systems. Technical report, College ofComputing, Georgia Institute of Technology, February 1994

63 Robert Dick Embedded System Design and Synthesis

Quiz One discussionOverview of real-time and embedded operating systems

Embedded application/OS time, power, and energy estimationHomework

Sensor networking and compression references

Chee-Yee Chong and Srikanta Kumar. Sensor networks:Evolution, opportunity, and challenges. Proc. IEEE, 91(8),August 2003

Robert P. Dick, Li Shang, and Niraj K. Jha. Power-awarearchitectural synthesis. In Wai-Kai Chen, editor, The VLSIHandbook. CRC Press, 2006

Assignment: Write a short paragraph describing the most importantpoints in both of these articles.

65 Robert Dick Embedded System Design and Synthesis


Recommended