30.11.2012 Views

Low Power System Techniques for Automotive Control ... - Freescale

Low Power System Techniques for Automotive Control ... - Freescale

Low Power System Techniques for Automotive Control ... - Freescale

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

June, 2010<br />

<strong>Low</strong> <strong>Power</strong> <strong>System</strong> <strong>Techniques</strong><br />

FTF-AUT-F0408<br />

Carl Culshaw<br />

<strong>System</strong> Architect<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

TM


►The lecture will:<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Introduction<br />

• Focus on key low power challenges <strong>for</strong> the automotive system designer<br />

• Describe the principal components of a microcontroller that help<br />

minimize power consumption<br />

• Describe techniques to optimize their usage<br />

• Discuss system partitioning approaches with a view to further reducing<br />

power<br />

• Provide references and concepts to address the challenges identified<br />

►Presenter: Carl Culshaw<br />

• <strong>System</strong> Architect <strong>for</strong> <strong>Automotive</strong> Microcontroller<br />

• Experience: <strong>Automotive</strong> Body, <strong>Low</strong> <strong>Power</strong>; 8, 16, and 32-bit<br />

2<br />

TM


►The lecture shall provide means to:<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Session Objectives<br />

• Identify the key microcontroller elements to implement low power<br />

strategies<br />

• Adopt technical approaches <strong>for</strong> their optimum usage<br />

• Make the system architect aware of low power developments within the<br />

<strong>Automotive</strong> arena<br />

3<br />

TM


Agenda<br />

►<strong>Low</strong> <strong>Power</strong> Challenges<br />

►Microcontroller <strong>Low</strong> <strong>Power</strong><br />

Mechanisms<br />

►<strong>Low</strong> <strong>Power</strong> <strong>System</strong><br />

<strong>Techniques</strong><br />

►Summary<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc. 4<br />

TM


<strong>Low</strong> <strong>Power</strong> Challenges<br />

5<br />

TM


<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

6<br />

<strong>Power</strong> Trend<br />

TM


<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Semiconductor Technology Trends<br />

Source: TSMC 2009<br />

As technology nodes increase<br />

more digital IP will be<br />

integrated but ….<br />

7<br />

TM


<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Semiconductor Technology Trends<br />

Source: TSMC 2009<br />

…the impact of<br />

Per<strong>for</strong>mance vs. <strong>Power</strong><br />

trade-off is not to be<br />

underestimated.<br />

8<br />

TM


►<strong>Power</strong><br />

• Dynamic <strong>Power</strong> – MCU Run Current<br />

• Static <strong>Power</strong> – MCU Stop Current<br />

P<br />

P<br />

P<br />

TOTAL<br />

Where<br />

DYNAMIC<br />

STATIC<br />

= P<br />

= α ⋅CV<br />

= I<br />

DYNAMIC<br />

STATIC<br />

V<br />

+ P<br />

2<br />

f<br />

STATIC<br />

Computational Speed<br />

Supply Voltage<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

CMOS <strong>Power</strong> & Energy<br />

9<br />

TM


►When an MCU is running<br />

• Its transistors are switching<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Dynamic versus Static Mode Consumption<br />

• Current is consumed at the point where the transistor switches.<br />

� For example, in a CMOS inverter, at the point of switching both are on and an<br />

instantaneous current is drawn (crowbar effect)<br />

� CMOS circuits dissipate power by charging the various load capacitances<br />

when switched.<br />

• The more often the transistor switches, the more current is consumed.<br />

Dynamic current: Typically linear with operating frequency<br />

►When an MCU is stopped<br />

• Current is consumed due to leakage through the transistors.<br />

• Sub-threshold/Channel Leakage:<br />

� Occurs when the transistor gate is below the “on” threshold but a small current<br />

leaks from drain to source<br />

• Becomes worse with reduced transistor size & higher temperature<br />

• Drain to substrate leakage:<br />

� The drain <strong>for</strong>ms a diode with the substrate and there is a small leakage<br />

through this diode.<br />

P<br />

DYNAMIC<br />

= α ⋅<br />

Static current: Typically exponential with temperature<br />

10<br />

CV<br />

2<br />

f<br />

P<br />

1 0<br />

0<br />

0<br />

N<br />

1<br />

1<br />

i<br />

TM


Increase in<br />

number of<br />

• Number of Electronic <strong>Control</strong> Units<br />

(mostly MCUs) is increasing<br />

exponentially.<br />

ECU’s<br />

� Nodes requiring MCU functionality are<br />

replacing passive and mechanical<br />

systems throughout the vehicle.<br />

� Nodes include measurement points,<br />

actuation points, or control.<br />

� Often the vehicle architecture distributes<br />

some of the processing to local<br />

•<br />

distributed nodes.<br />

<strong>Power</strong> consumption requirement is<br />

either flat or decreasing.<br />

Example<br />

►The <strong>Low</strong> <strong>Power</strong> challenge:<br />

• <strong>Power</strong> allowed per Electronic <strong>Control</strong><br />

Unit (ECU) is decreasing.<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

<strong>Low</strong> <strong>Power</strong> Challenge – <strong>Automotive</strong><br />

11<br />

Total Sleep<br />

current<br />

requirement<br />

Source: J.Leohold, VW, 9 th International Automobile Electronics Conference, June 05<br />

Windows & Mirrors …………….14<br />

Security and Access …………..11<br />

Com<strong>for</strong>t & In<strong>for</strong>mation .……….18<br />

Lighting ………………………….22<br />

Total………….65<br />

TM


Microcontroller<br />

<strong>Low</strong> <strong>Power</strong> Mechanisms<br />

12<br />

TM


►Reduces leakage current in low power modes<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Reducing Leakage – Active Well Bias<br />

►Changing the well voltage can reduce channel leakage by 10X.<br />

(Effectively, it increases Vth <strong>for</strong> the transistors.)<br />

►Applicable to standard cell logic and RAM arrays<br />

13<br />

N-Well<br />

Bias<br />

P-Well<br />

Bias<br />

TM


►How it works:<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

State Retention <strong>Power</strong> Gating<br />

• Only D-Flip-Flops need to retain their state, all other logic can be powered<br />

down.<br />

• In D-Flip-Flops, only the state keeping latch needs to be powered.<br />

►Special power rail is only <strong>for</strong> retention latches<br />

►Example: S12X core<br />

• 15 µA consumption in state retention mode at 85C<br />

d<br />

clki<br />

pgb<br />

clkb<br />

clk<br />

VDDC VDD<br />

14<br />

qb<br />

q<br />

TM


► <strong>Power</strong> Domains<br />

• Individually disconnected from <strong>Power</strong><br />

• Eliminate leakage from areas that are<br />

turned off<br />

► <strong>Power</strong> Domain PD0:<br />

• Always on<br />

• Wakeup periphery, e.g., CAN sampler,<br />

RTC, API, etc.<br />

• Minimum RAM segment<br />

► <strong>Power</strong> Domain RD1<br />

• Contains an additional RAM segment<br />

• Remainder of the RAM is in the PD1<br />

domain<br />

► <strong>Power</strong> Domain PD1:<br />

• Contains all cores and the majority of<br />

peripherals<br />

• Can be turned off in STOP or STANDBY<br />

modes<br />

• Must be turned on in RUN modes<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

<strong>Power</strong> Segmentation – MCU Structure<br />

MPC5604B <strong>Power</strong> Domain Structure<br />

15<br />

TM


► <strong>Power</strong> consumption is directly linked to clock signal switching<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Managing Clock Distribution<br />

► Reducing the number of clocked lines directly reduces current consumption<br />

► Several methods are employed to avoid wasting power in clock edges,<br />

<strong>for</strong> example:<br />

P = a ClVdd ²f<br />

• Clock freeze mode<br />

� When CPU activity can be temporarily halted,<br />

e.g., while waiting <strong>for</strong> an Analog-to-Digital<br />

(ADC) conversion to complete<br />

• Peripheral bus division<br />

� Reduced local clock rates, e.g., <strong>for</strong> ADC and<br />

communication ports<br />

• Clock gating<br />

� Applied wherever possible and at the entry to<br />

each sub-module<br />

OSC<br />

4-<br />

16MHz<br />

IRC<br />

16MHz<br />

OSC 32KHz<br />

IRC 128KHz<br />

div 1 to<br />

32<br />

div 1 to<br />

32<br />

FMPLL<br />

irc_fast<br />

osca_cl<br />

ck<br />

oscb_clck<br />

irc_slow<br />

div 1 to<br />

32<br />

div 1 to<br />

32<br />

osca_clk_div<br />

irc_fast_div<br />

CMU<br />

osca_clk<br />

irc_fast<br />

fmplla_clk<br />

MPC5603B Intelligent Clock Tree architecture<br />

16<br />

<strong>System</strong><br />

Clock<br />

Selector<br />

(ME)<br />

irc_slow_div<br />

RESET<br />

SAFE<br />

INT<br />

CLKOUT<br />

Selector<br />

system_clk<br />

div 1 to<br />

15<br />

div 1 to<br />

15<br />

div 1 to<br />

15<br />

irc_fact_div<br />

oscb_clk_div<br />

div<br />

1/2/4/8<br />

Core<br />

Plat<strong>for</strong>m<br />

Peripheral Set 1<br />

Peripheral Set 2<br />

Peripheral Set 3<br />

API / RTC<br />

SWT<br />

(Watchdog)<br />

CLOCK OUT<br />

TM


►Fast Wake-Up:<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Intelligent Clocking – Typical Clock Sources<br />

• Increase the speed at which the device can recover from low power modes and start<br />

execution.<br />

• Reconfiguration and non-timing critical operations can start as soon as a clock is present.<br />

� main RAM/module registers can be re-initialized whilst the external (accurate) OSC clock is stabilizing<br />

• Very fast Wake-Up requires an on-chip RC oscillator<br />

� e.g., a 16 MHz Internal RC can provide Bus Clock in


<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Dynamic Voltage Frequency Scaling (DVFS)<br />

► Devices typically do not require full per<strong>for</strong>mance all of the time<br />

• Reducing frequency directly reduces power consumption (already discussed)<br />

• But reducing frequency also allows the voltage to be reduced, further reducing power<br />

► Solutions can be via hardware, software or combination of both<br />

mA<br />

• <strong>System</strong> sophistication increases with DVFS<br />

� Typically PLL allows frequency scaling<br />

• Need to balance savings with complexity:<br />

100<br />

80<br />

60<br />

40<br />

20<br />

� Scalable regulator design, with fast switching behaviour<br />

� Peripherals require full scaling capability to ensure seamless switching<br />

� Synchronization handling during DVFS changes<br />

Full<br />

Run<br />

mode<br />

5V,<br />

120MHz<br />

<strong>Low</strong> Freq<br />

Run mode<br />

5V,<br />

60MHz<br />

<strong>Low</strong> Vdd<br />

Run mode<br />

2.5V,<br />

120MHz 1<br />

<strong>Low</strong> Vdd,<br />

<strong>Low</strong> Freq<br />

Run mode<br />

2.5V,<br />

60MHz<br />

Note 1: Assumption is that maximum frequency also achievable at lowest<br />

voltage, but this will not always be the case<br />

TM


► STANDBY – lowest power mode<br />

• <strong>Power</strong> supply is cut off from most devices<br />

• All clocks disabled<br />

• Longest wakeup time and some<br />

reconfiguration required<br />

• Most pins not powered (high impedance)<br />

► STOP<br />

• Advanced low-power mode during which the<br />

clock to the core and the PLL are disabled<br />

• Optionally switch off most peripherals<br />

• State of the output pins is kept<br />

► HALT – disable core clock<br />

• Reduced-activity mode during which the clock<br />

to the core is disabled<br />

• Optionally switch off analog peripherals (PLL,<br />

flash, main regulator, etc.)<br />

► RUN0-3<br />

• Software execution modes where most<br />

processing activity occurs.<br />

• Allows run-time customization of different clock<br />

& power configurations of the system<br />

SW request<br />

RESET<br />

Non<br />

recoverable<br />

HW failure<br />

SYSTEM MODES<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

SAFE<br />

DRUN<br />

TEST<br />

HW triggered transition<br />

SW triggered transition<br />

19<br />

<strong>Low</strong> <strong>Power</strong> Modes<br />

Recoverable<br />

HW failure<br />

RUN 0<br />

RUN 1<br />

RUN 3<br />

USER MODES<br />

LOW POWER<br />

MODES<br />

HALT<br />

STOP<br />

STANDBY<br />

TM


►General theme is to switch on as little as possible:<br />

• CPU is the most power hungry module on an MCU<br />

• Need to switch to OFF when possible<br />

• Put more intelligence into peripherals<br />

►Autonomous peripherals can help achieve this.<br />

• Typical Autonomous peripherals include:<br />

� API – Autonomous Periodic Interrupt<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Autonomous Operation<br />

– Allows device to recover from very low power state at selectable time intervals<br />

� RTC – Real Time Clock<br />

– Offers time keeping functionality in very low power states<br />

� DMA – Direct Memory Access<br />

– Allows data transfer between peripherals minimizing CPU activity<br />

� ADC – Analog Digital Converter<br />

– Continual conversion while running in low power<br />

– Triggers wake-up when signal reaches certain level<br />

� LINFlex – Intelligent LIN management, minimizing CPU interrupts<br />

20<br />

TM


<strong>Low</strong> <strong>Power</strong> <strong>System</strong> <strong>Techniques</strong><br />

21<br />

TM


<strong>Low</strong> <strong>Power</strong> <strong>System</strong> <strong>Techniques</strong> – Using the silicon<br />

► <strong>System</strong> solutions to achieve low power are based on several key principles:<br />

Reduce average power<br />

� Sleep as much as possible<br />

� Minimize RUN execution<br />

� Match speed against requirements<br />

Only power what is needed<br />

� Only switch on silicon portions<br />

� Completely power gate unused<br />

portions in many power modes<br />

Only clock what is required<br />

� Clock gating<br />

� Clock tree management<br />

� Peripheral grouping<br />

Employ intelligent autonomous<br />

operation<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

O<br />

S<br />

C<br />

4<br />

-<br />

1<br />

6I<br />

RM<br />

CH<br />

1z<br />

6<br />

M<br />

H<br />

z<br />

SW request<br />

RESET<br />

Non<br />

recoverable<br />

HW failure<br />

SYSTEM MODES<br />

SAFE<br />

DRUN<br />

TEST<br />

HW triggered transition<br />

SW triggered transition<br />

div<br />

1<br />

to<br />

32<br />

div<br />

1<br />

to<br />

32<br />

F<br />

M<br />

P<br />

L<br />

L<br />

irc_fast<br />

osc<br />

a_c<br />

lck<br />

osc<br />

b_c<br />

lck<br />

irc_slow<br />

Recoverable<br />

HW failure<br />

osca_clk_div<br />

irc_fast_div<br />

CM<br />

U<br />

Syste<br />

m<br />

Clock<br />

Selec<br />

tor<br />

(ME)<br />

RUN 0<br />

RUN 1<br />

RUN 3<br />

RESET<br />

SAFE<br />

INT<br />

USER MODES<br />

system_clk<br />

div<br />

1<br />

to<br />

15<br />

div<br />

1<br />

to<br />

15<br />

div<br />

1<br />

to<br />

15<br />

LOW POWER<br />

MODES<br />

HALT<br />

STOP<br />

STANDBY<br />

Core<br />

Plat<strong>for</strong>m<br />

Peripher<br />

al Set 1<br />

Peripher<br />

al Set 2<br />

Peripher<br />

al Set 3<br />

MPC5603B Intelligent Clock Tree architecture<br />

Design autonomous peripherals<br />

� e.g. DMA, RTC, API, ADC, LINFlex<br />

TM


Ef<strong>for</strong>t / Risks<br />

low<br />

high<br />

Local, internal optimization of Electronic <strong>Control</strong><br />

Units, actuators & sensors<br />

Deactivation of complete sub-busses<br />

B X<br />

CGW<br />

C<br />

Y<br />

Deactivation of individual ECUs<br />

C<br />

A<br />

D<br />

D<br />

A B X<br />

CGW<br />

Y<br />

Energy Saving Potential on the <strong>System</strong> Level<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Smart algorithms (PWM, motor control, and etc.)<br />

Loss minimation (DC/DC regulators, LEDs, and etc.)<br />

Smart activation of peripherals<br />

…<br />

Network topology change<br />

Traditional wake-up mechanism<br />

Slow reaction times<br />

Limited SW changes<br />

Flexible wake-up mechanism required<br />

Slow reaction times<br />

SW and HW changes<br />

� Industry standardization<br />

23<br />

high<br />

low<br />

Savings Potential<br />

TM


Vbat<br />

MC33905<br />

SBC<br />

Vdd<br />

MCU<br />

Osc Osc<br />

►SBC LPM VDD OFF, no osc no cyclic wake-up<br />

►MCU off<br />

I SBC = 15uA<br />

Wake up time: 2-5ms + MCU S/W start<br />

Vbat<br />

MC33905 Vdd<br />

SBC MCU<br />

Osc Osc<br />

Very low system consumption<br />

“longer” wake-up time<br />

►SBC LPM VDDOFF + osc (cyclic wake-up)<br />

►MCU off<br />

I SBC = 25uA<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

Electronic <strong>Control</strong> Unit low power modes<br />

Cyclic w/u allowed<br />

“longer” wake-up time<br />

Vbat<br />

MC33905<br />

SBC<br />

Vdd<br />

MCU<br />

Osc Osc<br />

►SBC LPM VDDON with osc<br />

►MCU powered, STDBY mode no osc.<br />

Vbat<br />

MC33905<br />

SBC<br />

I SBC = 40uA, I MCU = 30uA<br />

Vdd<br />

MCU<br />

Osc Osc<br />

►SBC LPM VDDON with osc<br />

►MCU powered, HALT mode with osc.<br />

I SBC = 40uA, I MCU < 350uA<br />

No MCU osc<br />

RAM content saved<br />

Fast wake-up time<br />

Faster w/u time<br />

Impact on cons.<br />

TM


1<br />

2<br />

50ms 50ms<br />

Example: Body <strong>Control</strong>ler Module Typical Scenario<br />

► MCU Mode: STANDBY<br />

- + 8K RAM<br />

1<br />

- + API/RTC (128K clock)<br />

- + Wake-up lines<br />

► MCU Mode: RUN<br />

► + Exec. from RAM<br />

- + IRC 16MHz<br />

700ms<br />

- + Polling of ~24 digital + 5<br />

analog inputs<br />

► Duration: ~667ms ► Duration: ~200µs<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

2<br />

► MCU Mode: RUN<br />

► + Exec. from RAM<br />

► + XTAL <strong>for</strong> IRC trimming<br />

- + IRC 16MHz<br />

3<br />

- + Polling of ~24 digital + 5<br />

analog inputs<br />

- + SPI: 1x16 @ 500Kbps<br />

- + LIN: 3 msg at 20kbps<br />

25<br />

► Duration: 32ms<br />

3<br />

TM


I[mA]<br />

I[mA]<br />

High speed CAN<br />

SBC wake-up<br />

Osc start<br />

MCU<br />

wake<br />

MCU behavior to process communication wake-up<br />

► SBC detects a wake up<br />

signal (3 dominant signals)<br />

► Triggers a wake-up<br />

procedure.<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

t[ms]<br />

► MCU Wakes up from<br />

an SBC signal.<br />

t[ms]<br />

Managing Communication Wake-Ups<br />

HW (fixed consumption) HW (fixed consumption)<br />

HW (fixed consumption) HW (fixed consumption)<br />

I[mA]<br />

I[mA]<br />

SBC wake-up<br />

Osc start<br />

MCU<br />

wake<br />

MCU behavior to process communication wake-up<br />

26<br />

t[ms]<br />

t[ms]<br />

TM


V<br />

► Scenario:<br />

• Measure 3 ‘fast’ analog inputs and check values<br />

(e.g., ‘fast’ temperature sensors)<br />

• read the state of 5 port inputs and check values<br />

• Only continue full power-up if values breech predefined<br />

conditions<br />

► Timing and absolute accuracy of initial<br />

measurements is not critical<br />

► ADC function is active <strong>for</strong> approximately 9us (3us<br />

per conversion) in every 10ms<br />

Analog input<br />

t[s]<br />

25<br />

20<br />

15<br />

10<br />

5<br />

40μA<br />

Run<br />

from<br />

RAM &<br />

enable<br />

sensor<br />

23mA<br />

18mA<br />

31μs 2ms<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

20μs<br />

1μs<br />

Monitoring Fast Analog Signals<br />

Standby Current<br />

(8KRAM, 32KHIRC, API)<br />

10μs<br />

Proposed solution:<br />

► Use approach: STANDBY → RUN →<br />

STANDBY → RUN<br />

► Utilize STANDBY and retain 8K of RAM<br />

► Utilize an API (Application Programming<br />

Interface) to wake-up periodically every 10ms<br />

and transition into RUN<br />

► Clock the API with the on-chip 128KHz IRC<br />

(very low power Internal RC ocsillator)<br />

► Use a 16MHz IRC <strong>for</strong> fast execution,<br />

accurate enough <strong>for</strong> this example application<br />

► Execute limited code from RAM at 16MHz<br />

bus speed<br />

Run Current range<br />

10ms<br />

Run<br />

from<br />

RAM &<br />

read<br />

sensor<br />

20μs<br />

10μs<br />

40μs<br />

27<br />

10μs<br />

Standby Current<br />

(8KRAM, 32KHIRC, API)<br />

7929μs<br />

Run<br />

from<br />

RAM &<br />

enable<br />

sensor<br />

20μs<br />

1μs<br />

31μs<br />

10μs<br />

TM


V<br />

► Scenario:<br />

• Measure 3 analog inputs and check values (<strong>for</strong><br />

example, ‘slow’ temperature sensors)<br />

• Sensors are not instantly available <strong>for</strong> reading<br />

• Sensor settling time: 2ms<br />

► Timing and absolute accuracy of initial<br />

measurements is not critical<br />

► ADC function is active <strong>for</strong> approximately 9us (3us<br />

per conversion) in every 10ms<br />

Analog input<br />

t[s]<br />

25<br />

20<br />

15<br />

10<br />

5<br />

300μA<br />

40μA<br />

Run<br />

from<br />

RAM &<br />

enable<br />

sensor<br />

31μs 2ms<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

20μs<br />

1μs<br />

23mA<br />

18mA<br />

Sensor stabilization<br />

10μs<br />

Monitoring Slow Analog Signals<br />

STOP Current<br />

Proposed solution:<br />

► This solution is identical as previous one,<br />

except the STOP state will be used instead of<br />

STANDBY during the ‘sensor stabilization’<br />

period<br />

• Use approach: STANDBY → RUN → STOP<br />

→ STANDBY → RUN<br />

• Return to STANDBY unless pre-defined<br />

conditions are exceeded<br />

Run Current range<br />

10ms<br />

Run<br />

from<br />

RAM &<br />

read<br />

sensor<br />

20μs<br />

40μs<br />

10μs<br />

28<br />

10μs<br />

Standby Current<br />

(8KRAM, 32KHIRC, API)<br />

7929μs<br />

Run<br />

from<br />

RAM &<br />

enable<br />

sensor<br />

20μs<br />

31μs<br />

1μs<br />

TM<br />

10μs


<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

AUTOSAR<br />

► AUTOSAR 4.0 lacks specifications <strong>for</strong> ‘sleeping’ or functionally degraded ECUs.<br />

► Future AUTOSAR (AUTomotive Open <strong>System</strong> ARchitecture) enhancement:<br />

• Support of partial networking (some kind of system degradation)<br />

• Support of ECU degradation (implying MCU degradation)<br />

• Dynamic degradation by <strong>System</strong> and ECU configuration<br />

► Partial networking requirements<br />

• Flexible network management (Today: only synchronized fall asleep of all ECUs of one bus)<br />

• Specification <strong>for</strong> configuration of wake-up of a single ECU (avoiding wake-up of all connected ECUs)<br />

• Definition of configurable wake-up patterns<br />

• Transceiver enhancement<br />

• Configuration of partial networks and related signals<br />

► ECU degradation, a standardized approach <strong>for</strong>:<br />

• De-initialization, re-initialization and re-configuration of software modules<br />

• Adjustment on changed clock rates (of cores and/or other MCU blocks) which influences schedules<br />

(e.g., FlexRay).<br />

• Adjustment on reduced clock accuracy which affects functions like PWM or CAN communication.<br />

• Support of advanced low-power modes where some MCU blocks are still operative (e.g., PWM) while<br />

the rest of the MCU sleeps.<br />

29<br />

TM


►<strong>Low</strong> <strong>Power</strong> Challenges<br />

• <strong>Automotive</strong> market demands <strong>for</strong> low power are increasing:<br />

� More body nodes are appearing in every new generation of cars<br />

� Each body node has more functionality and features<br />

• More functionality demands more from the silicon:<br />

� Smaller geometries to meet increasing demands<br />

� Smaller technology drives the power curve<br />

►Microcontroller <strong>Low</strong> <strong>Power</strong> Mechanisms<br />

• Are there to make it easy<br />

• Software support<br />

►<strong>System</strong> <strong>Low</strong> <strong>Power</strong> <strong>Techniques</strong>:<br />

• <strong>Power</strong> up fast<br />

• Standby as much as possible<br />

• Intelligent use of available resources<br />

Attention to power is<br />

needed from the<br />

beginning of system<br />

design<br />

Accuracy<br />

<strong>Freescale</strong>, the <strong>Freescale</strong> logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, <strong>Power</strong>QUICC, StarCore, and Symphony are trademarks of <strong>Freescale</strong> Semiconductor, Inc.,<br />

Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Plat<strong>for</strong>m in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink<br />

and VortiQa are trademarks of <strong>Freescale</strong> Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 <strong>Freescale</strong> Semiconductor, Inc.<br />

low<br />

high<br />

Cicuit/Logic<br />

Technology<br />

<strong>System</strong><br />

Algorithm<br />

Architecture<br />

30<br />

Session Summary<br />

Partitioning, <strong>Power</strong> Down, <strong>Power</strong> States<br />

Complexity, Concurrency, Regularity, Locality<br />

Parallelism, Pipelining, Redundancy, Data Encoding<br />

Logic Styles & Manipulation, Transistor Sizing, Energy recovery<br />

Threshold Reduction, Double-Threshold Devices<br />

<strong>Power</strong> Savings<br />

high<br />

low<br />

TM

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!