reducing noise and system costs by managing switching power supplies as real-time processes subash...
TRANSCRIPT
Reducing Noise and System Costs by Managing Switching Power Supplies as Real-Time ProcessesSubash Sachidananda & Dr. Alex DeanDept. of ECE - NC State University
EMI- and Energy-Aware Scheduling of Switching Power Supplies in Hard Real-Time Embedded SystemsSubash Sachidananda & Dr. Alex DeanDept. of ECE - NC State UniversityRTAS 2011
Overview
0Goal0Switch mode power
supplies (SMPS)0Real-time scheduling0Our work
Energy Optimization
Switching Power
Supplies
Embedded Systems
Real-Time Systems
Energy Optimization
Application Domain - Embedded Systems
Goal
0 Reduce power and energy used by embedded computing systems in a cost-effective way
0 Basics0 Two parts: Static and dynamic0 P = SPVCC
2 + CPVCC2fClock
0 Power a V2
0 Energy is power * time0 Competing pressures for energy optimization
0 Shut off unused subsystems0 When running, run as fast as possible to minimize static power (must
raise supply voltage to speed up clock)0 When running, use minimum voltage which supports logic’s clock
frequency
Switching Power Converters
0Function0 Efficient conversion of voltage up (boost) or down
(buck), or both (buck-boost)0Benefits
0 Can run circuitry at lowest feasible voltage 0 Can scale voltage dynamically as needed to support
changing clock speed0 Battery voltage variations across discharge curve do not
affect operating point of circuit
SMPS Extends Battery Life
0
40
80
120
160
200
240
280
320
360
400
440
480
520
560
600
640
680
720
760
800
840
880
920
960
1000
1040
1080
1120
4.00
4.50
5.00
5.50
6.00
6.50
7.00
7.50
8.00
8.50
9.00
battery Linear SMPS
Hours
Pow
er (
mW
)
Boost Converter Operation
0Switch (transistor) S turns on
0Current starts flowing through inductor L and S
0Switch S turns off0Current flowing through
L now goes through diode to charge C and power load
Switching Converter Challenges
0 Low-frequency “noise” at switching frequency. 0 Easy to remove with capacitors
0 High-frequency “noise” at harmonics of switching frequency. 0 Reaches circuit in three ways: conducted, reflected, radiated0 Very sensitive to PCB layout: trace length, capacitor placement0 Can be 100 mV
More on Harmonics
0 “Unconscionable amounts of bypass capacitors, ferrite beads, shields, Mu-metal and aspirin have been expended in attempts to ameliorate noise-induced effects.” [Jim Williams, Linear Technology Application Note 70]
Reducing Harmonics
0Methods0 Redesign PCB and test. Repeat until acceptable0 Use high-quality (expensive) capacitors0 Limit slew rate of switches, use sinusoidal drive0 Change to balanced topology0 Insert inverse of harmonic
0Drawbacks0 More complex hardware design raises cost, size, mass0 Some methods reduce efficiency
System Schedule and Noise
Real-Time System Analysis
0Problem statement0 We have a system of periodic software tasks running on
a processor0 How do we make sure all tasks meet their deadlines (are
schedulable)?0Approaches
0 Use response-time analysis0When does the last task finish in the worst case?
0 Use a utilization-based test0How much of the processor’s time could we use?
Real-Time System Model0Assumptions
0 Single CPU0 TContextSwitch = 0
0 tasks are periodic with period ti
0 Deadline Di = periodti
0 No data dependencies between tasks
0 Constant process execution time Ti
Burns & Welling
Scheduling Approaches
0 Dimensions to task scheduling0 Static vs. dynamic task ordering0 Preemptive vs. non-preemptive0 Prioritized vs. non-prioritized
0 Fixed vs. dynamic priority
0 Common scheduling approaches for real-time systems0 Dynamic task ordering0 Preemption among tasks0 Priority assigned based on
0Task frequency (“rate monotonic”, RM), or0Deadline frequency (“deadline monotonic” DMS), or0 Earliest deadline first (EDF)
Utilization-Based Schedulability Tests
0Utilization: Fraction of time processor is busy
0Easy for EDF: Schedulable if U < 100%0Harder for RMS/DMS
0 Schedulable if utilization U < Umax
12 /1 mMax mU
m
i i
iTU1
0
0.2
0.4
0.6
0.8
1
0 10 20 30 40
Number of Tasks
Max
imu
m
Uti
lizat
ion
Our Contributions
0Goal0 Ensure that noisy SMPS will not switch while a noise-
sensitive task is running0Make-and-Take Approach
0 Put the SMPS under control of the task scheduler0 Enhance the real-time scheduling model math to include
SMPS activity
Task Scheduler Controls SMPSGet ready task Ti
Stop SMPS, measure Vsupply
Restart SMPS
Is task Ti rivalrous with SMPS?
Run task Ti
Is Vsupply > VThreshold,i?
Wait until Vsupply > VThreshold,i
Stop SMPS
YesYes
No
No
Real-time Model Updated
0Start with execution time Ti for each task i
0Add in time if needed to run power supply to charge capacitor0 For non-rivalrous tasks, Ti* = Ti
0 For rivalrous tasks, Ti* = Ti + TSMPS,i
0Simple yet remarkably powerful
Experimental Evaluation
0Build a system and see …
DOES IT WORK?
Hardware0QSK62P MCU board
0 16-bit, 24 MHz, 32K SRAM, 64K ROM
0 3-5V operation0Boost converter
0 Dirt-Cheap Value-engineered
0 450 kHz switching freq.0 3.7 V input (Lithium cell)
0Spec: 3.8 V to 4.8 V Vsupply
Application Software0Tasks t1-t3 sample analog values (pressure,
temperature, audio) and are sensitive to SMPS noise0 Add in corresponding SMPS active time requirement
0Task t4 transmits data out UART, is not sensitive
Schedulability Analysis
0Use rate-monotonic priority ordering, preemptive fixed-priority scheduling
0Utilization test0 Initial task set: U = 0.0500 After adding SMPS: U* = 0.1280 Utilization bound for RMS = 0.766
0So system is schedulable and will never miss a deadline
Mutual Exclusion Enforced
0 T1* ready to run after T3*, but Vsupply is too low
0 So SMPS runs first, then T1 runs0 Vsupply is low, so scheduler turns it on and can also run T4
Task Released While SMPS On
0T2* ready to run, but SMPS is running0Scheduler measures Vsupply decides it is high enough to
shut off SMPS and run T2* to completion
SMPS Idle When Not Needed
0 Scheduler runs when task T3* is released0 Determines Vsupply high enough to run T3* without SMPS
Future Work
0Tighten up utilization bound0Enable more overlap of SMPS operation with noise-
insensitive tasks0 Enhance scheduler0 Tighten up schedulability model
0Support buck conversion0Support multiple voltage domains
Conclusions
0Practical to use real-time scheduling to enable use of noisy power converters in noise-sensitive applications without adding hardware
Thank you!
[email protected]://www.cesr.ncsu.edu/agdean
Appendix
1 - Task Scheduler Controls SMPS
Flowchart of task scheduler
SMPS Allows Low-Voltage Operation
0Different Minimum Voltages
Supporting Preemptive vs. Non-preemptive