E.JasonRiedyejr@cs.berkeley.edu
RobertSzewczykszewczyk@cs.berkeley.edu
11May,2000
Abstract
Thefundamentalconstraintonanetworkedsensorisitsenergyconsumption,sinceitmaybeeitherim-possibleornotfeasibletoreplaceitsenergysource.Weanalyzethepowerdissipationimplicationsofim-plementingthenetworksensorwitheitheracentralprocessorswitchingbetweeni/odevicesorafam-ilyofprocessors,eachdedicatedtoasingledevice.Wepresenttheenergymeasurementsofthecurrentgenerationsofnetworkedsensors,anddevelopanab-stractdescriptionoftradeoffsbetweenbothdesigns.
i/oprocessorswereaddedinordertoenhancetheperformanceofthesystem.Incontrast,thecurrentgenerationofthenetworkedsensorsystemlooksmorelikeprimitivehomecomputersystemfromthelate’70s:thereisasingleprocessorhandlingallthei/odevices.Thearchitectsofthenetworkedsensorwillsoonerorlaterfaceadesigndilemma:shouldtherebeadedicatedprocessingelementforeachi/odeviceorshouldthemanagementofthei/odevicesbecen-tralized?Howshouldthesedecisionsbeevaluated?Whatarethefundamentaltradeoffsbetweenthesedesignalternatives?
Inthispaperwecompareandanalyzetwoarchitec-turesfornetworkedsensors:onebasedaroundasin-gleCPUhandlingmultiplei/odevices,andonebased
1Introductionaroundtwogeneralpurposeprocessors:onehandling
thewirelesscommunicationsystem,andonehandling
Overthelastfewdecades,“Moore’sLaw”enabledotheri/odevices.
thehardwareengineerstoputasubstantialamountIngeneralthepowerdissipationwithinasystemisofcomputationandstorageintoincreasinglysmallerproportionaltofrequency.Inasystemwithreal-timepackages.Additionally,advancesinCMOSprocess-deadlines,assigningthetaskstodedicatedprocessorsingandMEMSresearchmakeitpossibletoconstructimpliesthattheindividualprocessorswillbeabletoalow-costnetworkedsensor.Inthenearfuture,re-runatasignificantlylowerfrequency.Loweringthesearcherspredictthatitwillbepossibletointegratefrequencycanleadtoloweringtheoperatingvoltagecommunication,powersources,sensorsandactuatorsofthecomponent.Thesetwofactorscouldyieldsub-withcomputationalelementsinamm3[11].stantialpowersavings.Furthermore,sincethein-Energystoredwithineachnetworkedsensoristhemostpreciousresource,soboththehardwarearchi-tectureandthesoftwaresystemshouldbeoptimizedforitsusage.Eachsensorhasalimitedenergysource,andreplenishingthisenergysourcemaybeeitherim-possible(nophysicalaccesstothedevice)ornoteco-nomicallyviable(themaintenancecostcanexceedthesensorcostbyordersofmagnitude).Thustheen-ergyefficiencyisprobablythemostimportantmetricagainstwhichthearchitecturalchoicesmustbeeval-uated.
dividualcomponentsmightbetunedtomeettheirdeadlinesjustintime,theywouldnotwasteanyen-ergyintheidlestates,whereastheschedulingoftasksonasingleprocessormightrequirethatthisprocessorspendsaportionoftimeidle.
Thesepotentialsavingsneedtobebalancedagainstseveralfactors:thecommunicationbetweenthepro-cessorswillalmostcertainlynotbefree,theretypi-callyisafixedcostassociatedwithhavinganextracomponent.Allocatingtaskstoprocessorsisquitesimilartoapackingproblem.Dependingonthegran-AtypicaldesktopPCcontainsmanydifferentpro-ularityoftasksandaparticularsplit,multiplepro-cessingelements:besidestheCPU,therearemanycessorsallocatedtotheproblemmighthavetorundedicatedi/oprocessorsforhandlinggraphics,net-ateitherhigherorlowercumulativefrequencythanworktraffic,orharddiskrequests.Thesededicatedasingleprocessorallocatedtothetask.
1
Inthispaper,weexaminetheimplicationsofboththesingleandmultipleprocessorarchitecturesonthepowerdissipationwithinthesystem.Weana-lyzebothdesignstylesintermsofabstractmodels,andcomparethesemodelswiththemeasurementsofarealsystem:aprototypenetworkedsensor[9]runningTinyOS[6].Therestofthispaperisorga-nizedasfollows.Section2introducessimplemodelsofhardwareandsoftwareofthenetworkedsensorandSection3presentsaparticularimplementationofanetworkedsensorusedtogroundourempiricalstudy.Section4analyzesthepowerconsumptionofasingleprocessorsystem:wepresentasetofdetailedenergymeasurementsofthesingleprocessordesigninSec-tions4.1and4.2,andanalyzethisdatainabstracttermsinSections4.3and4.4.Section5extendsthisanalysistosystemswithmultipleprocessors.InSec-tion6wedescribetherelatedwork,andconcludeinSection7.TSensing(),communicating(().),andprocessingFigure1:Anetworkedsensorrunsonlyafewclassesoftasks.NotethatK/Tisafrequencyitself,andatthatfre-quencytheKcyclesspantheentiretimeT.Thisfrequency,fm,istheminimumfrequencysupportingthegiventaskset,andfρ=fm.Relatingthefre-quencyandutilizationwillbeusefulforexpressingenergyusage.Whentheprocessorisnotbusy,1−ρofthetime,itsitsinalow-poweridleorstopmode.Schedulinggeneraltaskstomeetreal-timecon-straintsisachallengingtopicinitsownright,oneweleavetoothers[14,3].Weassumethataschedulingexistsforanyparticularprocessoranddeviceconfig-uration.Thisisnotentirelyrealistic,butitallowsustofocusonpowerconsumptionratherthanreal-timescheduling.2ArchitectureModelTodrawsoundgeneralconclusionaboutthepoweranalysisinnetworkedsensorsweneedtobeabletoabstracttheobservationsofourparticularhardware2.2HardwareModelandsoftwaresystem.Inthissectionwepresentthemodelsofbothhardwareandsoftware.Toexaminethepowerconsumptioninasmall,net-workedsensor,wealsoneedasimplemodelofthehardware.Figure2showstheblockstructureofsen-2.1TaskModelsornodeswith‘dumb’and‘intelligent’i/odevices.ThedevicesareassumedtohavepowerneedsthatdoAlight-weightnetworkedsensorisnotexpectedtonotvaryasinstructionsarepartitionedbetweenpro-beageneralpurposecomputingdevice.Itsgoalsarecessors.Thisisreasonableifthedevices’activityistocollectreadings,processthemslightly,andcom-managedentirelywithrespecttorealtime,aswhenmunicatereadingswithothersensors.Forexample,atemperaturesensorisberuneveryhalf-secondforanodemaytakethreetemperaturereadings,averageatenthofasecond.Theenergyconsumedbyoper-them,andtradeaverageswithitsneighbors.Theseatingthesensordoesnotdependonthenumberofgoalscanbesubdividedintovarioustasks,andtheprocessorsorpartitioningoftasks,andsowedonottasksrecurperiodicallyandoftenbesubjecttoreal-complicateouranalysiswiththeseconstants.Wealsotimeconstraints.Figure1showsasliceofasensor’sassumethattheswitchingfrequencyoftheprocessoractivitiesoveratimespanT.Foranalysis,weas-pinsconnectedtothedevicesisdeterminedbythesumethatthistimespaniscompletelyperiodic;thedevicesandisalsoconstantforataskset.sametasksareexecutedinthesamenumberforeach
Nowhowmuchenergyisneededfortheprocessing?sliceoflengthT.
Theenergyconsumedisthepoweroverthetimepe-
OverthetimeT,theprocessorexecutesinstructionsriod,E=TPdt.Forthedcprocessingcompo-0
tocontrolthedevicesandprocessreadings.LetKbenents,P=IV,wherethecurrentIisafunctionthenumberofclockcyclesoccupiedbyinstructionsoff.WeassumethatvoltageandfrequencyvaryduringT.Ataparticularexecutionfrequencyoffindepently,e.g.weremainawayfromfundamentalcyclespersecond,letρbetheutilization,cmoslimits.WeholdthevoltageVconstant,so
T
E=VI(f)dt.0K
.(1)ρ=fTThetaskmodel,Section2.1,separatesthecurrent
2
MP
I/O
I/O
I/O
PI/O
MPI/O
PI/O
presentthehardwareandsoftwareenvironments.
3.1Hardwareorganization
Oursamplenetworkedsensorconsistsofamicro-controllerwithinternalflashprogrammemory,dataSRAManddataEEPROM,connectedtoasetof
Figure2:Onecentralprocessorcontrolsmany‘dumb’actuatorandsensordevices,includingLEDs,alow-devices,whileeach‘intelligent’devicehasadedicatedpowerradiotransceiver,ananalogphoto-sensor,aprocessor.digitaltemperaturesensor,aserialport,andasmall
coprocessorunit.Whilenotabreakthroughinitsownright,thisprototypeforcesustoreasonabout
intoanactivecurrentforρTandanidlecurrentforthevariouspartsofthesystem.(1−ρ)T.ThisgivesanenergyconsumptionofThesinglemostimportantcomponentofthesys-E=VT(ρIactive(f)+(1−ρ)Iidle(f))
=VT(Iidle(f)+ρ(Iactive(f)−Iidle(f)))=VT(II(f)+ρIA(f))
temistheradio.Itrepresentsanasynchronousin-put/outputdevicewithhardrealtimeconstraints.ItconsistsofanRFMonolithics916.50MHztransceiver(TR1000)[12],antenna,andcollectionofdiscretecomponentstoconfigurethephysicallayercharac-teristicssuchassignalstrengthandsensitivity.ItoperatesinanON-OFFkeymodeatspeedsupto19.2Kbps.Controlsignalsconfiguretheradiotoop-erateineithertransmit,receive,orpower-offmode.Theradiocontainsnobufferingsoeachbitmustbeservicedbythecontrollerontime.Additionally,thetransmittedvalueisnotlatchedbytheradio,sojitterattheradioinputispropagatedintothetransmissionsignal.
TheprocessorisanAtmelAVR90LS8535[2]ex-ternallyclockedat4MHz.Itisan8-bitHarvardarchitecturewith8KBinstructionand512bytesofdatamemory.Theprocessorintegratesvariouskindsofperipherals:aUARTcontroller,anA/Dcon-verter,severaltimers,andgenerali/opins.Note-worthyarethesleepmodessupportedbythepro-cessor:idleshutsdownjusttheprocessor,powerdownwhichshutsoffeverythingbutthewatchdogandasynchronousinterruptlogicnecessaryforwakeup,andpowersave,whichissimilartothepowerdownmode,butleavesanasynchronoustimerrun-ning.Thelattertwomodesreducetheenergydis-sipationbyafactorofa1000,but,unfortunately,ittakesmilisecondstorestoretheprocessorfromthedeepersleepmodes.Alsosignificantisthecurrentdrawnbyeachofthesleepmodesasafunctionofprocessorfrequency:intheidlemode,thecurrentislinearlydependentonfrequencyoftheprocessor,whereasinthelattertwomodesthecurrentisin-dependentfromfrequency.Thisdistinctionbecomessignificantbelow,inSection4.3.
(2)
overtherecurrentperiodoflengthT.Herewe’rede-finedIIastheidlecurrent,andIAastheextracur-rentneededoverIIforexecutinginstructions.WithIA=Iactive−Iidle,IAexpressestheprocessor’sacti-vationcurrent.
InEquation2,thevoltageandtimeareheldconstant,sotheonlyquantitylefttooptimizeisthedrawncurrent.Fortheprocessorsofinterest,Iisalinearfunctionoff,andI∗(f)=a∗f+b∗,where∗iseitherIorAfortheidleandactivationcurrents,respec-tively.Latersectionswillinvestigatethecurrentforagiventaskset,lookingforoptimalparametersandcomparingdifferentprocessorconfigurations.Notethatthederivedpowerdissipationsareforthepowerlostthroughtheprocessor,notnecessarilythepowerdrawnfromthebattery.Othershaveexaminedthatproblem[10],andminimizingthecurrentalsomaxi-mizedthebatterylifeintheproposedmodels.
3ExperimentalPlatform
Havingintroducedtheabstractmodel,let’sexam-inehowwelltheymapontotherealsystem.Be-low,weexamineasimpleapplicationforanet-workedsensordevelopedin[6]:theapplicationmea-suresenvironmentalparametersperiodically,broad-caststhesemeasurementsoverthelowpowerRFlink,participatesinroutingprotocols,andrespondstodataqueries.Thishighlevelspecificationwasim-plementedonaSmartDustprototype[9]usingthe
TinyOSframework[6].InthissectionwebrieflyThetemperaturesensor(AnalogDevicesAD7418)
3
representsalargeclassofdigitalsensorswhichhaveinternalA/Dconvertersandinterfaceoverastandardchip-to-chipprotocol.Inthiscase,thesynchronous,two-wireI2C[13]protocolisusedwithsoftwareonthemicrocontrollersynthesizingtheI2Cmasterovergenerali/opins.
Thelightsensorisaphotoresistorwithresistancerangingfrom10Ωto50kΩ.Itformsavoltagedividerwithafixedresistor,andanA/Dconverterinsidethemicrocontrollerisusedtoreadthelightlevels.
constrainedsystem.Threadsallowforsimulat-ingconcurrencywithineachcomponent,sincetheyexecuteasynchrounouslywithrespecttoevents.Threadsshouldneverspinsorwaitforacondition,insteadtheschedulingmechanismshouldbeused.
ThethreadscheduleriscurrentlyasimpleFIFOscheduler,utilizingaboundedsizeschedulingdatastructure.Dependingontherequirementsoftheapplication,moresophisticatedpriority-basedordeadline-basedstructurescanbeused.WithinthecurrentTinyOSversion,theschedulerputsthepro-cessorintoanidlemode.
Currently,thecomponentsavailablewithinTinyOScanbedividedintothreegroups.First,componentsthatareathinabstractionoverhardware;theUARTinterface,asimplei/opinoratimerfallintothatcategory.Thecomponentsinthesecondgroupactasareplacementforunavailablehardware,forexamplethebyte-levelradiocontrollerimplementsthefunc-tionalitysimilartothatofaUARTontopofabitlevelradiocomponent.AnothercomponentfallingintothiscategoryistheI2C,whichimplementsthatprotocolinsoftware.
3.2TinyOS
Asamodelofexecutionforthenetworksensorappli-cation,wechosetheTinyOSdescribedin[6].TinyOSisasmalloperatingsystemdesignedwithseveralgoalsinmind:providingsupportforhighlyconcur-rentapplications,providingsystemmodularitywithminimaloverhead,andplacingminimalrequirementsontheunderlyinghardware,bothintermsofthepro-gramsizeandintermsofothercomputationalre-sources.TheexecutionmodelprovidedbyTinyOSissimilartoFSMmodels,butconsidearblymorepro-grammable.
AcompleteTinyOSsystemconsistsofasimplesched-Finally,thethirdgroupconsistsofhighlevelsoft-uler,andagraphofcomponents.Eachcomponentwarecomponents.Thesecomponentsperformrout-ing,controlanddatatransformations.Theactivehasfourinterrelatedparts:
messagecomponentservesasanexampleforthisgroup,sinceitprovidesdispatchandrouting.
1.anencapsulatedfixedsizeframe.Theuseof
staticmemoryallocationallowsforcheckingtheEachcomponentdescribesboththeresourcesitpro-memoryrequirements,andeliminationofover-videsandtheresourcesitrequires.Thismakesitheadassociatedwithdynamicmemoryalloca-quiteeasytowirethecomponentstogether,anden-ablestheuseofhigherleveldesigntools.Communi-tion
cationbetweencomponentstakestheformofafunc-2.asetofeventhandlers,whicharetypicallyin-tioncall,whichprovidescompile-timetypecheckingvokedinresponsetohardwareevents.Typi-andhaslowoverhead.callytheresponsibilityofthethreadistodepositinformationwithintheframe,schedulethreads
formorecomplexprocessingofdata,andsignal3.3Applicationimplementationhigher-levelevents.
Theapplicationrunningonthenetworkedsensor
3.asetofcommands,whicharenon-blockingmonitorsthetemperatureandlightconditionsandrequeststolowerlevelcomponents.Com-periodicallybroadcasttheirmeasurementsontothemandscanschedulethreadsandcallothercom-radionetwork.Furthermore,eachsensorisconfig-mands,buttheymaynotsignalevents.uredwithroutinginformationthatwillguidepackets
toacentralbasestation.Thus,eachsensorcanact
4.abundleofsimplethreads,whichareprimar-asarouterforpacketstravelingfromsensorsthatareilyresponsibleforthecomputationwithintheoutofrangeofthebasestation.system.Threadsruntocompletion,butthey
canbepreemptedbyeventhandlers.Run-to-Therearethreei/odevicesthatthisapplicationmustcompletionsemanticsallowsformaintainingaservice:thenetwork,thelightsensor,andthetem-singlestack,whichisimportantinamemoryperaturesensor.Ofthese,thenetworkisthemost
4
complex.Aspointedoutabove,theRFMradioonlyprovidesabitlevelinterface,whichimposesstrictrealtimelimitsontheapplication.Inordertoprovidethecommunication,theradioinputissampledbysoftwareattherateof10000timespersecond.Thebitsaredecoded1andassembledintobytes.Onahigherlevel,thebytesareassembledintopackets,anddispatcheddependingontheirtypeanddestination.Alllayersfromsamplingbit-levelinputtodispatch-ingpacketsareperformedinsoftware.Thisfunctionmapsverycleanlyontotheabstracttaskmodelde-scribedinSection2.1:theamountofworkisveryperiodic,sinceweneedtoperformafixedamountofworkperbit,afixedamountofworkperbyteandsoon.TheTinyOSeventsmapquitewellontothepe-riodsofsensing,whiletheTinyOSthreadsmapontocomputationblocksintheabstractmodel.Thereal-timeconstraintsarequitesevere:thehandlersendingandreceivingbitsdoeshaveenoughtimetoreceiveandstorethebits,butitcannotperformthesignaldecodingwithoutmissingadeadline.Inordertocopewiththisproblem,theencodinganddecodingofbitsaredonewithinathreadratherthanwithintheeventhandler(seeSection4.4forthepowerimplicationsofthisconstraint).
ThetemperaturesensorusestheI2Cprotocoltocom-municatewiththerestofthesystem.Whilethisprotocolisperhapsmorecomplexthanthesimpleencodingusedbytheradio,ithasaflexibletimingmodel,whichimpliesthatthereal-timedeadlineswillbemuchmoreforgiving.
andprocessingtheincomingdata,wedevelopedasetofmicrobenchmarksmeasuringvariousprimitiveop-erations.Asthesebenchmarksshow,theprocessorisinfactconsumingasignificantamountofenergycomparedwiththei/odevices,thusthequestionofoptimizingtheprocessorusageisavalidone.WethenproceedtothemeasurementsoftheTinyOSap-plication:weanalyzetheoverheadsofthesystemandextractthereal-timetasksfittingwithinthemodelpresentedinSection2.1.Wethenproceedtoabstractanalysisoftheoneprocessorproblem.
4.1Microbenchmarks
Theprocessoronthemoteisexternallyclockedat4MHz,andconnectedtoa2.84Vpowersupply.Weplaceda10Ωresistorinserieswiththemote(placedbetweengroundandthedevice),andmeasuredthevoltagedropacrosstheresistortoarriveatthecur-rentdrawnbyallmodulesonthedevice.Themea-surementsweremadewiththeaidofanHP16550Alogicanalyzer/16532Adigitaloscilloscope,whichwastriggeredbythebenchmarksbyoneoftheoth-erwiseunusedpinsontheprocessor.Theoscilloscopeoutputsapictureofvoltagesamples.ThispictureisdownloadedtoaPC,thepointsconvertedtoAmps(asweknowthatthevoltagedropismeasuredacrossa10Ωresistor)andintegratedbetweentwotriggerspoints.
Allofourbenchmarksworkbytakingthedifference
Thelightsensoristhesimplestofthei/odevices:betweenanexecutionwhichincludeseitheraknowncurrentlyitisconnectedtotheA/Dconverterinfreenumberoftheinstructionofinterestoraknownoper-runmode.Readingdatainvolvessimplyreadinganationonamoduleandanexecutionwithoutit.They
allhavethefollowingform:appropriateregisteroftheA/Dconverter.
SincethecomponentsofTinyOSarewellisolated
fromoneanother,itisaneasytasktopartitiontheTurn_off_all_devicestaskbetweenmultipleprocessingunits.Furthermore,Setup
theasynchronousnatureoftheentiresystemensuresWhile(1){
Flash_Trigger_Pinthatthenaturalpartitioningalongthecomponent
Bodyboundariesisquiteefficient.
}
4OneProcessor
Fortestingspecificinstructions(InstX),SetupisblankwhileBodyhasthegeneralformof:
Tostartourstudyofpowerusageonasinglepro-Fori=0toN{cessorsystem,wepresentthemeasurementsoftheInstXexperimentalsystem.TogainanunderstandingofInstXtherelativeenergiesspentonaccessingthesensors,...1TheradiorequiresaDCbalancedsignal.InstXCurrently
}TinyOSsupportsManchesterand4B6Bencodings.
5
Table1summarizesourfindingsfromrunningthesemicrobenchmarks.Wefoundthatarithmetic/logic
idleoperationsconsumedaboutthesameamountofen-noop
ergyasnoops,whileloadsandstoreswereonly
arithmetic/logic
slightlymoreexpensivepercycle.Note,however,
memoryread*
thatloadsandstorestaketwocycles.Thiswasrathermemorywrite*
surprisingatfirst,sinceweexpectedthatgoingtoDevicememorywouldbemuchmoreexpensivethanaccess-ingregisters.However,acloserlookatthedesignofLEDtheATMELAVRarchitecturerevealsthatthereg-Photo
isterfile,thei/oregistersandthedatamemoryareADC
RFMsendlocatedinasingleblockofon-chipSRAM.TheslightRFMreceiveoverheadseemstobecausedbythetransferofthe
datawordsthroughthemaindatabus,ratherthan
Table1:Energyconsumptionofinstructions(left)throughadedicatedbususedtoreadtheregisterfile.andexternalmodules(right).RFMsendandreceive
Anothersurprisewasthatcommunication(eitherdi-measurementsweredoneassuming100µspulses.
rectlythroughapin,orthroughaserialinterfacesuchastheUART)didnotconsumeanyadditionalenergy
InstXisexecutedmultipletimesperiterationto(notethatourmeasurementuncertaintyisaroundmakeitamoresignificantportionofthetotalcom-0.05nJ/cycle).Thisissignificantforouranalysisofputation(sincesomecyclesgototheloopoverhead).multipleprocessorarchitectures.Thisisthencomparedwithrunningtheemptyloop.
Althoughthebenchmarksforthemodulesvary
slightlydependingonthemodule,thelightsensor4.2TinyOSmeasurementsservesasagoodexample.Thismodulerequires5
Inourpreviouswork[6]wepresentedbasicmeasure-measurements:
mentsoftheTinyOSsystem.Thepreviousmeasure-mentsweretakenusingalogicanalyzer.Inthecon-1.Base:Setupisblank-nothingisturnedon
textofthiswork,weenhancedATMELAVRsimula-2.LightSensorwithoutADCinthedark:Setuptor[4]withasetofi/odevices,andusedtheinstruc-turnsonthelightsensorbutnottheADCtotiontracestoanalyzetheperformanceofTinyOS
components.Ingeneral,wefindanexcellentagree-converttheoutput,andthesensoriscovered
mentbetweenthedatagatheredinthisexperiment
3.LightSensorwithoutADCinfulllight:Sameandthedatagatheredbefore.Table2showsthecostsasaboveexceptabrightlightisshownontheofsomefundamentaloperationsontheATMELAVRsensorarchitecture.Whilesmallinabsoluteterms,these
numberscanadduptoasignificantpercentageofthe
4.LightSensorwithADCinthedark:Sameas2totalexecutiontimeofanapplication.Forexample,buttheADCisactivatedtoconverttheanalogconsiderthedatapresentedinTable3.Onaverage,itsignaltakes163cyclestosendabit:60cyclesarespentsav-5.LightSensorwithADCinfulllight:Sameas3ingandrestoringstateandthecontrolflowsthrough
severalmodules(whichimpliesnotonlypostingofbutwiththeADC
severalcommandsbutalsostatetransitionswithinseveraldistinctstatemachines).Allthiseffortisre-Sincethelightsensorisaphotoresistor,thecurrentquiredtosetanoutputpindependingonavaluedrawndependsonthelightlevel.Thelasttwomea-somewhereinmemory,andtoupdatesomestatevari-surmentsareneededbecausetheamountofcurrentables,allofwhichtasksshouldnevertakemorethandrawnbytheADCisalsoeffectedbythelightlevel50cycles.Thisdisparityshowstheimportanceofthe(seebelow).Thebodyineachofthesetestsisabusystructuringoftheapplicationandtheimportanceofloopofafixedlength.Tocomputetheenergycon-inter-componentoptimization.Wediscusstheim-sumedbyeachcomponent,wetakethedifferenceofpactoftheseoverheadsbelow,inSection4.4.theenergyusedwhenthatcomponentwasactiveat
acertainlightlevelandwhenitwasnotintegratedBasedonthesefigures,itappearsthatTinyOSac-overthesameperiod.tivelylookingforastartsymbolwithinincoming
6
InstructiontypeEnergypercycle(nJ)
1.703.393.413.663.75
EnergyperCPUcycle
1.0.08-0.280.36-0.30
2.562.44Energyperinstr(nJ)
1.703.393.417.327.50
Energyperquantum1.nJ/cycle0.08-0.28nJ/cycle4.62-3.95nJ/conv.
2050nJ/bit1950nJ/bit
Thelargedisparitybetweenthemaximumandav-eragetimesofsendandreceivebitoperationsarecausedbythefactthatwhenthebit-levelprocessinglayercompletesabyte,thattriggersaneventpropa-Table2:Costofthebasicoperationsandoverheadsgationthroughmanylayers.SeparatingthenetworkwithinTinyOS.Noteinparticulartherelativelyhighstackbetweenmultipleprocessorshelpstoreducethecostofthesoftwareoverheadwithininterrupthan-disparitybetweentheaverageandmaximumtimes.dlers.Thisoverheadiscausedbysavingtheproces-sorstate;itbecomesquitesignificantinmanyofthe
4.3SimpleAnalysisofOneProcessorhandlersactuallyexecutedwithinTinyOS
Inareal-timeapplicationonasingleprocessorthemainparameterwecanadjustisthefrequencyoftheprocessor.Thefrequencyimpactsseveralparameterswithinthesystem:thetimespentinactiveandidlemodes,andtheamountofoverheadinherentinapar-ticularstructureoftheapplication.Inthenexttwosectionswepresenttheanalysisofhowfrequencyandsystemoverheadimpactthepowerusage.
Webeginwiththecurrentconsumptionofasingleprocessorrunningafixedsetoftasks.Thissimplesituationservesasbaseforlatercomparisons.ThetasksetwillhaveaconstantnumberofactivecyclesKovertimeT,andfmisaconstant.Expandingtheidleandactivationcurrentgivesthetotalcurrentconsumptionasafunctionoftheutilizationρ,
I=(aIf+bI)+ρ(aAf+bA)
=(aIfm/ρ+bI)+ρ(aAfm/ρ+bA)=bI+aAfm+aIfmρ−1+bAρ.
OperationBytecopyPostaneventPostacommand
PostathreadtoschedulerContextswitchoverhead
Interrupt(hardwareoverhead)Interrupt(softwareoverhead)Cost(cycles)810104651960
transmissionpushesthelimitsofthehardware.IfTinyOSwerepurelyeventbased,thentheproces-sorrunningat4mhzisusedabout75%ofthetime.However,thesituationisabitmorecomplex,sinceTinyOSsupportstasks,andcontainsascheduler.Ex-ecutionofanemptyschedulerlooptakes40cycles;thatnumbershouldbeaddedtotheaverageexecu-tiontimeinordertocomputetheaveragetimespentworking.Inthiscase,wecansleeponlyfor15%ofthetime.
TaskStartreceiveReceivebitSendbitByteencodeBytedecodeAvg.Time(cycles)
130191163130146Max.Time(cycles)
144315301130146Period(µs)5010010016001600
(3)
Table3:Real-timetaskswithinTinyOS.Byteen-codeanddecodearestructuredasTinyOSthreads,Ofa=0,asintheAtmel’sidlemode,thenthe
I
theirtimingdoesnotincludethetimeschedulingandcurrentfollowsthesolidcurveinFigure3.Thecurveswitchingtime.Ontheotherhand,theotheropera-hasaminimumattionsareevents,whichareexecutedwithinthecon-aI
ρ2=fm.(4)textofaninterrupt.Theirtiminginformationdoesopt
bA
includethesoftwareoverheadofsavingthestate.
Substitutingthisbackintothecurrentyieldstheop-timumcurrentforthetaskset,Iopt=bI+aAfm+√
2aIbAfm.Becauseρ∈(0,1],theoptimumvaluecanonlybeachievedwhen
fm≤
bA
.aI
(5)
7
IBaseTinyOScheapinterruptscheapschedulingOptimalUtilization(%)90.676.567.6OptimalFrequency(mhz)2.221.871.65EnergyUsage(mJ)0.420.340.30Table4:OptimalutilizationandenergyusageforsendingdatawithinTinyOSwithvaryingoverheadstructures.ρ2opt=aIbAfmρSensing(),communicating(),processing(andoverhead().),Figure3:ThetotalcurrentfollowsthesolidlinewhenFigure4:Eventsincurrsomeoverheadprocessingfortheidlecurrentdependsonfrequency(idlemode)andeverycontextswitch.thedashedlineotherwise(stopmode).sorstateintomemoryonentryandoutofmemoryonexit.Thetimeandinstructionoverheadcanbemodeledbysplittingtherequiredcyclesintoworkandoverheadcycles,K=Kw+Ko.Theprocessorutilizationthensplitsintoρ=ρw+ρo.Someoftheworkcyclesmaybeconsideredas‘overhead’fromdif-ferentviewpoints,butwestrictlylimitthedefinitionofoverheadtothosecyclesthatareanartifactofaparticularexecutionenvironment.Tous,thecyclesspentsavingregisterstomemoryduringacontextswitchareoverhead,butinstructionsthatupdatealoopvariableinsomeprocessingthreadarenot.Whenfm>bA/aI,theleastcurrentdrawoccurswiththeprocessorrunningasslowlyaspossible.Intheex-tremecase,ρ=1,andIopt=bI+bA+(aI+aA)fm.Real-timeconstraintswillforceρ<1inmanycir-cumstances.However,iftheprocessorisputintoastopmodewheninactive,onethatdrawsacurrentinvariantwiththeactivefrequency,thenaI=0.ThecurrentfollowsthedashedlineinFigure3.Theminimumwouldbeatρopt=0andIopt=bI+aAfm.ZeroutilizationrequiresaninfinitefrequencyandisnotThecurrentconsumptionwithoverheadismodeledachievable.Theleastcurrentdrawhereoccurswhenbyrunningtheprocessorasfastaspossible.Frequencybecomesfree,althoughitwillbelimitedbytheop-I=II+IA(ρw+ρo).(6)erationalvoltageattheveryleast.Someoverheadisavoidable.ImaginerunningtheTomakethisanalysismoreconcrete,Table4showsprocessorinFigure4justalittlefaster,fastenoughtheoptimalutilizationandtheexpectedenergyusagethattheprocessingafterthelastsamplecouldcom-forourexperimentalsensor.Thetablepresentsthepletebeforethenextsample.Thenalleventscoulddataignoringsomeschedulingcontstaints:inpartic-avoidcontextswitches.LimitKotoonlythecyclesular,sincemaximumexecutiontimeislargerthanspentswappingprocessorstate.Anincreasedfre-theaverage,runningattheoptimalfrequencymightquencycf,c>1,cantradetheoverheadinstructionscauseustomissdeadlines.Restructuringtheap-forsomeextraidletimeatthehigherfrequency.plicationacrossmultipleprocessorsmighthelpwith
thisdisparitybyallowingeachoftheprocessorstoIfitispossible,whenisitbeneficial?Letrunclosertotheoptimalfrequencywhilestillmeet-I(cf)=II(cf)+IA(cf)ρw,(7)
ingdeadlines.
eliminatingalloftheoverheadatcf.Thentheques-tioncanberephrasedasfindingtheconditionswhen
4.4OneProcessorwithOverhead
I(cf)(8)
ThepreviousanalysisignoredthecostsofcontextIntuitively,thisshouldoccurwhentheextracurrentswitchingandscheduling.Eacheventswapsproces-neededforhigher-frequencyworkislessthanthecur-8
rentneededfortheoverhead.Indeed,whenweex-pandEquation8,wefindthattheconditionbecomes
thei/oports),theoverheadisequaltothecostofaninterrupt(inourapplication,thiswasmeasuredtobe130cycles).Inthemultiprocesordesignwe
(c−1)(aI+aAρw)f Therightside,IA(f)ρo,istheoverheadcurrent,andtakesplaceoveraUART,andcostsoneinterruptpertheleft,(c−1)(aI+aAρw)f,istheextraworkcurrentbyte,or130cyclesperbyte.atthehigherfrequency.Sowhentheconditionin Equation9issatisfied,runningatahigherfrequencyAnanalysisoftheapplicationrunningonasinglecfcandecreasepowerconsumptionbyIA(f)ρo−(c−processorrevealedthat95%ofthetimeisspenthan-dlingnetworkevents.Thelogicalplacetosplitthe1)(aI+aAρw)f. processingissomewherewithinthenetworkstack.Withinthenetworkstackitselfmostoftheprocessortimeisspentwithinthebit-levelcomponent(60% 5MultipleProcessors-handlingthehardwareinterrupt,checkingthein-ternalstate,readingandwrintingpins)andwithinThedecisiontousemultipleprocessorsisnormallymanagingthelogicofbyte-leveltransfers(30%-en-drivenbytheneedtomeetreal-timeschedulingcon-codinganddecodingoftherawbits,andcontrollingstraintsatalowerprocessingfrequency.Howdoesitthelowerlevelcomponent).Whileitmayseemat-tractivetosplitoffthebit-levelprocessing,sinceitaffectthepowerconsumption? consumesroughlyhalfoftheCPUtime,itturnsouttobeabadidea.Bitlevelinterfacesarequiteexpen-sivetohandleontraditionalCPUs:thegranularityof5.1Multipleprocessorexperiment operationsisquitemismatchedbetweentheincoming Toexperimentwithamultipleprocessordesignwesignalandtheinstructionsoperatingonthatsignal.decidedtosimulatetosimulatetheprocessorsonaWithourcommunicationmodel,suchsplitdoesnotsimulator.Ratherthanlookingatthedynamicin-enableustolowerthefrequencyofanyprocessors;teractionbetweenthededicatedprocessors,weana-infact,sincesendingbytesovertheUARTismorelyzedthetracesgeneratedbyasingleprocessorrun-expensive(ininstructionsthatneedtobeexecuted)ningaugmentedpiecesofTinyOSapplication.Whenthanaprocedurecall,weneedtoraisethefrequencyfacedwithamultipleprocessorproblem,thedesignerinordertomeetthedeadlines.Itismarginallybenefi-mustaskfundamentalquestions:Howistheapplica-cialtotosplitoffthecombinationofthebit-levelandtionpartitioned?Whataretheinterprocessorcom-bytelevelradiointerface.Thisasomewhatcounter-municationcosts?Thedesignweexperimentedwithintuitivedecision:afterallthesetwocomponentscon-isonlyasinglepoint,themoregeneralimplicationssume90%oftheCPU,butthissplitslightlyreducesofmultiprocessordesignsareexploredintheSectionsthemaximumtimeittakestoprocesstheincoming events:weareabletocutabout45cyclesfromthebelow. maximumexecutiontimeoftheevents.However,this InordertopartitiontheTinyOSapplicationwehavesmallreductioninrequiredclockrateonthe“radiodevelopedalight-weightRPC-likecomponent.Atprocessor”issomewhatoffsetbytherequirementsonthemomentitisonlycapableoftransmittingscalarthe“mainprocessor”,whichnowneedstohandleanparameters.Inourexperiments,thislimitedcapa-additional130cyclesofcommunicationsevery00bilitystillallowedforasubstantantialfreedomincycles.choosingthepartitioningofcomponents.Ourmea-surementsfromSection4.1showthatthecommuni-Theinitialevaluationofthemultipleprocessorsys-cationbetweentwoprocessoroveranexternalbusistemseemedverydiscouraging.Infact,itseemedthatessentiallyfreeinhardwaresense(atleastatlowdatathesystemswithmultiplededicatedprocessorsdonotrates).Similarly,ourmeasurementsofmemoryoper-produceanypowersavingbenefits.However,acare-ationsontheATMELshowthataccessingmemoryfulexaminationoftheapplicationleadustoredesign(andbyextension,communicationthroughsharedsomeoftheTinyOScontrolstructurestoproducesig-memory)showthataccessingmemoryisnotsig-nificantpowersavings.nificantlydifferentfromjustexecutinginstructions. First,wenotethatalmost40%ofthetimecritical However,thecommunicationdoesimposesomesoft-tasksisdevotedtosavingstate.Thesetasksrun wareoverhead.Iftheprocessorsarecommunicating withininterrupthandlers,andeachinvocationofan throughsomesharedbus(UART,SPI,orjustsome-interruptcosts60cycles.Thiscostsisinherentinthe thingassimpleasparallelcommunicationthrough 9 TinyOSexecutionmodel:wealloweventstointer-ruptthreads,andthatimpliesthataneventhandlerhastosavetheprocessorstate.Inthepartitionedapplication,thecoderunningonadedicatedradiocontrolleriswellknownandunderstood:ithasaveryregularcontrolstructure,awellunderstoodinterac-tionbetweenthreadsandevents,andthreadswithtightlyboundedexecutiontimes.Giventheseprop-erties,itispossibleforustorewritethestrutureofthecomponentsothatthereisonlyonecontext,andthereisnoneedtosavestateoneveryevent.Forthisproject,wehavesimplyreorganizedthecodemanu-ally,inprinciplesuchtransformationsshouldbepos-sibletoautomate.Thenewstructurecontainsonlyasingleexecutioncontext.Theexecutionistimesliced:thecodeiseffectivelyafinitestatemachinewhichgoesthroughanatomictransitionbetweentwoticksoftheclock.Thisnotonlyallowsustore-movethestatesavingoverheadbutalsotoeliminatethegeneralpurposescheduler,whichcurrentlycon-tributes40instructionswhichcouldhavebeenspentsleeping. Withtherestructuredcode,wewereabletoobtainabout40%savingsininstructioncountsovertheorig-inalcode.Worthnotingisthefactthatthecommu-nicationcostswithintherestructuredmodulewerequiteabitlower:oneachpassthroughtheloopwechosetopolltheUARTratherthandriveitthroughinterrupts. Therestructuringofthecodehastheeffectofreduc-ingtheoverheadsintheapplication.Runningtheentireapplicationwithintheinterruptcontextelimi-natestheneedtosavestate,whichcorrespondstothe“cheapinterrupts”casefromTable4.Furthermore,inthiscasewewereabletoeliminatecompletelytheschedulingoverhead,whichenabledfurtherenergysavings.AsTable4indicates,theeliminationoftheseoverheadsreducestheenergyrequirementsoftheap-plicationby29%,asignificantimprovement. processorspofthecurrentIpeachdraws, IN=Ip p∈procs =NII+(=NII+(=NII+( p∈procs ρp)IA Kp)IA (10) 1 fT p∈procs K )IA.fT TheKtermincludescyclesspentcontrollingde-vicesacrossallprocessors.Asbefore,thisincludesbothoverheadandessentialwork.Thecoreworkwillbeverysimilarinbothsingle-andmultiple-processorimplementations.Weassumeasharedmemorymodelandholdthecyclesspentperformingwork,Kw,thesameforbothcases. Tokeeptheanalysissimple,wealsodefersynchro-nizationissuestotheschedulingsystem,assumingitisperfect.Thisseemsunrealistic,butmanyini-tialapplicationsforsimplenetworkedsensorsdonotneedheavysynchronization.Oneprocessorcanpro-cessitsmeasurementsandwritethemtoaslotinmemory;anothercanreadfromthatslotperiodicallyandcommunicatewhatitfinds.Iftheprocessingrunsforaboundedtimeandistriggeredbyareal-timeevent,thentheresultsarevalidatanotherrealtime,muchliketheestablishmentofoutputsignalinacircuit.Thecascadingreal-timeconstraintsin-creasetheschedulingcomplexity,buttheschedulingremainsreasonableiftheinitialapplicationissimple.IfusingNprocessorslowersthenecessaryexecutionfrequencytof/N,whenwillmovingfromoneproces-sortoNprocessorsgiveusanenergysavings?LetthetotalworkplusthetotaloverheadbethesameforbothoneandNprocessors.Thesingleprocessorhasthesameutilizationρasabove.UsingρforK/fTinthemultipleprocessorcurrentwillgivecomparisonsfromthesingleprocessorviewpoint.Itisimportanttorememberthatρdependsinverselyonf,soscal-ingfby1/N,say,willscaleρbyN.Wewillcontinuetousefminthefollowingsectionsfortheconstantvalueofρf=K/Twiththesamecaveats. WewanttoknowwhenI(f)>IN(f/N).ExpandingIN(f/N)yields 5.2FrequencyScaling InthepreviousSectionwesawthattheapplicationrunningonmultipleprocessorscaninfactbemoreIN(f/N)=aIf+NbI+aAfm+NbAρ,(11)energy-efficientthanonasingleprocessor.Now,we trytoextractexactlywhatfeaturesofmultiplepro-givingtheunfortunateresultthatI(f)>IN(f/N)is trueonlywhencessordesigncontributetothepowersavings.ThetotalcurrentconsumptionisthesumoverallN 10 (1−N)(bI+bAρ)>0. (12) comparison.However,ifthestopmoderequiresafewcyclestorestartfully,theycanaffectthethresh-old.Therestartoverheadswilloccurintheplaceswherecontextswitcheswerenotnecessary,whenaninterrupt-driveneventistriggeredandnothingelseisactive.Thesemayoccurmoreofteninthemul-tipleprocessorcase.Therestartcyclecountswillbeneededwhenexaminingaparticularapplication.Onceobtained,addingthedifferentrestartcycles,KrandKr,N,asoverheadstobothcasesisequivalenttoaddingKr−Kr,NtoKoandKr,NtoKwinthepre-5.3FrequencyScalingandOverheadviousinequalities.IfKo+Kr−Kr,N<0,themulti-processorrestartcyclesdominate,andtherightsideReduction ofEquation14isnegative.Usingmoreprocessors Isitpossibletodecreasethetotalcurrentevenwithawithonlya1/Nscalingconsumesmoreenergy.Onesimplefrequencyscaling?Whileloweringtheneces-canexamineapplyingageneralscalingg(f,N)tof,saryfrequencydecreasestheactiveandidlecurrentsbutwehaveyettofullyexplorethoseresults. atagivenvoltage,wehavealsoseenthatincreasingButwhatifvariousschedulingconstraintsconspirethefrequencymaydecreasethetotalcurrentneces-todisallowfrequencyscaling?Thecomparisonofthesarybyeliminatingoverheadcycles.Multipleproces-additionalcurrentfortheprocessorstothatforthesorscanallowbothfrequencyreductionandoverheadoverheadgiveselimination.Previouslywehadtoincreaseexecu-tionfrequencytoremovecontext-switchingoverhead,(N−1)II(f) throughprocessorallocation.WecanalsosimplifyforIN(f)Physically,bothbIandbAmustbenon-negative,andNisanintegergreaterthanone,sothisisneverpos-sible.Itmaybepossibletoscalefrequencymorerapidlythan1/N.Usingmultipleprocessorsreducesthereal-timeschedulingpressuresandcanresultinadrasticcontractioninfrequency.Thefrequencyscal-ingnecessaryforenergysavingscanbefoundbyex-aminingtheinequalityIN(g(f,N)·f)Again,separatetheworkandoverheadcyclesas5.4MultipleExecutionUnitsandK=Kw+KoforasingleprocessorutilizationofContextsρ=ρw+ρo.NowassumethatwecanremovetheoverheadcyclesbyusingNprocessorswhilesimul-Wehavedemonstratedthatspreadingtasksacross taneouslyscalingthefrequencyby1/N.Thisgivesa multipleprocessorscandecreasethepowerconsumed totalcurrentof byanetworkedsensor.InthederivationofEqua-IN(f/N)=aIf+NbI+aAfρw+NbAρw.(13)tion10,weassumedthattheidlecurrentsofmul-tipleprocessorsaccumulatedintoNII.Thismodels thecurrentneedsofmultiplephysicalprocessorchips, DeterminingwhenIN(f/N)I thetestthesameidlecurrent?Thenthetotalcurrentdrawn (N−1)(b+bρ)I Aw A o Theleftside,(N−1)(bI+bAρw),isthecurrentdrawn bytheadditionalprocessors.Theright,IA(f)ρo,isthecurrentdrawnfromtheoverheadcycles.Ifthefrequencyscaleswith1/N,thenthetaskscanbepar-titionedoverasmanyas N<1+ IA(f)ρobI+bAρw (15) IN=II+IAρw. (17) ThisconsumesIAρolesscurrentthanthesimplesin-gleprocessoratthesamefrequencyf.Thefre-quencyscalingsthatgiveenergysavingscanbe boundedbysolvingtheappropriatequadraticfrom I(f)−IN(g(f,N)f). Multipleexecutionunitsfeedingfromthesameidlecurrentprovideaneasywaytoeliminateoverhead.processorswhileusinglesscurrent. Ourassumptionthatthetotalworkcyclesstayedthe Notethatscalingthefrequencyby1/NkepttheaIsamewhenpartitonedovertheunitsprovidesthetermsequal,eliminatingtheprimarydifferencebe-sameresultwithasingleexecutionunitthatsup-tweenaprocessor’sstopandidlemodesfromtheportsmultiplehardwarecontexts.Multiplehardware 11 contextsandthreadedprocessorsgiveperformance7Conclusionsboostsingeneralpurposecomputers[15],andtheyalsoappeartogiveenergysavingsinsmall,event-Wehavepresentedthetradeoffsbetweenthesingle-drivensensors.Similaradvantagescomefromdata-andmultiprocessordesignsfornetworkedsensors. flowdesignsandregisterpartitioning. Neitherdesignautomaticallycreatesapowerefficientsystem.Wehaveshownthatitispossibletosaveen-ergywhilerunningonmultipleprocessors;wehavealsoshownthatthisisnottrueformerepartition-6RelatedWork ingofanexistingapplication.Themainobserva-tionfromthestudyisthatwedonotsaveenergyby Lately,energyconsumptionhasbeenahottopic. simplefrequencyscaling,butratherfromtheelimi-ShinandChoi[14]haveadaptedafixed-priority,pre-nationofvarioustypesofoverhead.Theavoidableemptive,real-timeschedulerforlowpowerdevices.overheadisverystronglydependentonaparticularTheydemonstrateasignificantpowerreductionforarchitecture.Inasingleprocessorsystem,mostofcomplexapplicationsonalargersystemthatcantheoverheadcomesfromtaskswitching,intheformvarybothfrequencyandvoltagedynamicallywhileofeitherschedulingoverhead,orintheformofcon-instructionsareexecuted.Theyslowtheprocessortextsaving.Inthemultipleprocessordesign,thedownwhenonlyonetaskisavailableforexecution,softwareoverheadisintroducedbythecostsofextragreedilystretchingto100%utilization.Theirmodelcommunication.ItisnotthemultipleALUsortheincludesthetimeforfrequencyandvoltagechangesmultiplememoriesthatproducetheenergysavings, butratherthesimplifiedcontrolstructure,andthebutpreemptionoverhead. abilitytoeliminatecontextswitches.Theoptimalar-Awidevarietyoftechniquesforloweringpowercon-chitecturefornetworkedsensorsshouldcombinethesumptionaresurveyedbyLorchandSmith[8].Whilebestfeaturesofbothdesigntypes,bybuildingupontheirprimaryfocusisongeneral-purposeportableasingleprocessorwithhardwaresupportformultiplecomputers,theyalsodiscussinteractionwithwirelesscontexts.ArchitectureslikeSPARCwithitsregistercommunicationandotheri/odevices.TheycoverwindowsorPICwithaverylargeregistersetmightpowercontrolinteractionsbetweencomponentsinabeveryappropriateforthenetworkedsensors.user-orientedsystem,wherewefocusstrictlyontheprocessorinasensornetwork.Wehopethattheun-derstandinggainedfromourfocuscancontributetoa neededwhole-systemperspectivefornetworkedsen-Referencessors. [1]AssociationforComputingMachinery.Proceed-Henkelexaminesthepowerimplicationsofhardware-ingsofthe36thACM/IEEEconferenceonde-softwarepartitioningin[5].Hismethodfindshigh-signautomation.AcmPress,June1999. energypiecesofsoftwareandmovesthemintodedi-catedasiccoresratherthanaddingadditionalpower[2]Atmel,Inc.At90s4434/ls4434/s8535/ls8535controlstothemainprocessor’shardware.TheasicsPreliminary(Complete)Datasheet.notonlyconsumelessenergyforthesamefunctionbutalsoperformitmorequickly.Thespeedreduces[3]N.C.Audsley,A.Burns,M.F.Richardson,andoverheadconcerns,givinganadditionalboost.HeA.J.Wellings.Hardreal-timescheduling:Thefindsbothfasterandmoreefficientexecutioninava-deadlinemonotonicapproach.InProceedingsof rietyofproblems,althoughhisparticularalgorithmthe8thIEEEWorkshoponReal-TimeOperatingdoesproducealargeslow-downforoneapplication.SystemsandSoftware,Atlanta,May1991.KirovskiandPotkonjakdevelopanalgorithmforpower-conscioustaskpartitioninginahardreal-timesystem[7].Theirapplications,informationstream-ing,andtaskmodelaresimilartoours,buttheyuseheterogenousprocessorsandworkatalevelwherethefrequencyisdeterminedbyinternalcmosdelaybounds.Also,theygiveeachreal-timetaskaded-icatedprocessor,eliminatingallcontext-switchingoverheadfromthebeginning. 12 [4]KevinBagett.Avrsimulatoranddisassem-bler.http://members.xoom.com/kb_badgett/,2000.[5]J¨orgHenkel.Alowpowerhardware/software partitioningapproachforcore-basedembeddedsystems.InProceedingsofthe36thACM/IEEEconferenceondesignautomation[1],pages122–127. [6]JasonHill,RobertSzewczyk,AlecWoo,Seth Hollar,DavidCuller,KristoferPister.Sys-temarchitecturedirectionsfornetworkedsen-sors,2000.[7]D.KirovskiandM.Potkonjak.System-level synthesisoflow-powerhardreal-timesystems.InProceedingsofthe34thACM/IEEEconfer-enceondesignautomation,pages697–702.AcmPress,June1997.[8]JacobLorchandAlanSmith.Softwarestrate-giesforportablecomputerenergymanage-ment.IEEEPersonalCommunicationsMaga-zine,5(3):60–73,June1998.[9]JamesMcLurkin.Algorithmsfordistributed sensornetworks.InMastersThesisforElectri-calEngineeringattheUniveristyofCalifornia,Berkeley,December1999.[10]MassoudPedramandQingWu.Designconsid-erationsforbattery-poweredelectronics.InPro-ceedingsofthe36thACM/IEEEconferenceondesignautomation[1],pages861–866.[11]K.S.J.Pister,J.M.Kahn,andB.E.Boser. Smartdust:Wirelessnetworksofmillimeter-scalesensornodes,1999.[12]RFMonolithics. Transceiver. Tr1000916MhzHybrid [13]PhilipsSemiconductors.TheI2C-busspecification,version2.1.http: //www-us.semiconductors.com/acrobat/various/I2C_BUS_SPECIFICATION_\\%3.pdf,2000.[14]YoungsooShinandKiyoungChoi.Powercon-sciousfixedpriorityschedulingforhardreal-timesystems.InProceedingsofthe36thACM/IEEEconferenceondesignautomation[1],pages134–139.[15]RadhikaThekkathandSusanJ.Eggers.The effectivenessofmultiplehardwarecontexts.InProceedingsofthe6thInternationalConferenceonArchitecturalSupportforProgrammingLan-guagesandOperatingSystems,pages328–337.AcmPress,October1994. 13 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务