21
L29:Lower Power Embedded Architecture Design 성성성성성성 성 성 성 성성 , 1999. 8 http://vada.skku.ac.kr

L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Embed Size (px)

Citation preview

Page 1: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

L29:Lower Power Embedded Architecture Design

성균관대학교 조 준 동 교수 , 1999. 8

http://vada.skku.ac.kr

Page 2: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Low Power MPU

Page 3: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Levels for Low Power Design

System

Algorithm

Architecture

Circuit/Logic

Technology

Hardware-software partitioning,

Complexity, Concurrency, Locality,

Parallelism, Pipelining, Signal correlations

Sizing, Logic Style, Logic Design

Threshold Reduction, Scaling, Advanced packaging

Possible Power Savings at Different Design LevelsLevel of

Abstraction Expected Saving

Algorithm

Architecture

Logic Level

Layout Level

Device Level

10 - 100 times

10 - 90%

20 - 40%

10 - 30%

10 - 30%

Regularity, Data representation

Instruction set selection, Data rep.

SOI

Power down

Page 4: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Present- Day Digital Systems

• Current systems are complex and heterogenous Contain many different types of components– Programmable and Re-configurable processors– Application- specific integrated circuits (ASICs)– Application-specific Instruction processor (ASIP)– Read- Only Memory (ROM) and RAM– I/ O devices and circuitry

• Typically designed from a (large) software specification

• These heterogenous systems are called embedded systems

Page 5: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Embedded System Characteristics

• Limited user programmability– Completely transparent to user, e. g.

automotive engine control– Limited user interface e. g., intelligent

telephones– Programmable through application

specific language e.g., postscript printer

• Real- time response No batch processing

Page 6: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Embedded Systems: Products - 1

Computer Relatedpersonal digital

assistantprinterdisc drivemultimedia

subsystemgraphics

subsystemgraphics terminal

Communicationscellular phonevideo phonefaxmodemsPBX

Consumer ElectronicsHDTVCD playervideo gamevideo tape recorderprogrammable TVcameramusic system

Page 7: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Embedded Systems: Products - 2

• Control Systems– Automotive:engine, ignition, brake system– Manufacturing process control: robotics– Remote control: satellite control, spacecraft control– Other mechanical control: elevator control

• Office Equipment– smart copier, printer, smart typewriter, calculator– point- of- sale equipment, credit- card validator,UPC code rea

der, cash register

• Medical Applications: instruments( EKG, EEG), scanning, imaging

Page 8: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Problem Domain Shift

Page 9: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Embedded System Trends - I

• Microcomponents grow in importance in IC industry due to their reusability: DSP, P, C

• More embedded systems will require ASICs– From 20- 70% in 1992 to 60- 70% in 1996

Moral of the story: u-P are joining with high- speed highly-complex ASIC in embedded systems

Page 10: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Embedded System Trends - II

• Embedded systems will require more application software– Average moves from 16- 64k lines in 1992 to

64k-512k in 1996– Requires migration from assembler to C/ C++,

implying requirement for automatic compilation– From 40- 70% of programmers versus ASIC

designers in 1992 to 60- 90% in 1996

Moral of the story: Increase in code- size / code- complexityis causing a migration to C/ C++ from assembly coding

Page 11: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Embedded Software Optimization

• Code size becomes an important objective Software will eventually become a part of the chip:– Need to generate the best possible code– Can afford longer compilation time

• Need not only traditional optimization techniques, but also new application- domain-specific optimizations (e. g., DSP and microcontroller architectures)

Page 12: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Implementing Digital Systems

Page 13: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

What is an ASIP?

• Application- Specific Instruction Processor

• Processor architecture tailored not just for application domain (e. g., DSP, microcontrollers), but for specific sets of applications (e. g., audio, engine control)

• ASIP characteristics– Greater design cost (processor + compiler)– + Higher performance, lower power than commercial cores, m

ore flexibility than ASIC

Page 14: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

ASIP Design

• Given a set of applications, determine architecture of ASIP (i. e., configuration of functional units in datapaths, instruction set)

• To accurately evaluate performance of processor on a given application need to compile the application program onto the processor datapath and simulate object code

• However, the architecture of the processor is a design parameter!

Page 15: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Processor Design Flow

Page 16: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Required Compiler Optimizations

• Machine independent optimizations– Parallelizing transformations (lots of them!) Common subexpression

elimination, Strength reduction, Code motion

• Machine dependent optimizations– Loop unrolling and software pipelining– Static allocation (non- recursive procedure calls)– Storage layout (arrays, scalars)– Optimization of mode setting instructions Instruction selection, scheduling, and register allocation

Page 17: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Common Subexpression Elimination

Page 18: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Constant Propagation and Folding

Page 19: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Dead Code Elimination

Page 20: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Loop Invariant Code Motion

Page 21: L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수, 1999. 8

Array Access Strength Reduction