发明名称 一种降低嵌入式系统功耗的方法
摘要 本发明涉及一种降低嵌入式系统功耗的方法。目前嵌入式系统降低功耗只针对处理器或只针对周边装置,使得整个系统的功耗并未被全盘考虑,以致低功耗效果不甚明显。本发明的具体步骤是:首先任务开始执行时选择操作频率,计算值U<sub>sum</sub>,<img file="200910100611.2_AB_0.GIF" wi="118" he="58" />,其中U<sub>i</sub>=(e<sub>i</sub>+T<sub>be</sub>)/p<sub>i</sub>,U<sub>i</sub>为每个任务的任务利用率,e<sub>i</sub>为处理器在最高频率下任务的最长执行时间,T<sub>be</sub>为周边装置的损益平衡时间,p<sub>i</sub>为任务周期,U<sub>sum</sub>与1作大小比较,决定是否开启周边装置,计算利用频率,选取操作频率。然后任务执行结束时选择操作频率,并判断下个任务是否需要用到周边装置,若需要用到,则预先唤醒周边装置。本发明同时考虑处理器及周边装置的功率消耗,使嵌入式系统的有效能量供给率最大化,从而延长了电池的寿命。
申请公布号 CN101604198B 申请公布日期 2010.09.29
申请号 CN200910100611.2 申请日期 2009.07.10
申请人 杭州电子科技大学 发明人 王玉娟;肖景;张祯;郑秋华;吴国华
分类号 G06F1/32(2006.01)I 主分类号 G06F1/32(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 杜军
主权项 1.一种降低嵌入式系统功耗的方法,其特征在于该方法的步骤包括:步骤(1)计算任务利用率的和,选择初始操作频率,具体步骤如下:a、任务T<sub>i</sub>开始工作时,计算任务利用率的和U<sub>sum</sub>,<img file="F2009101006112C00011.GIF" wi="276" he="114" />其中U<sub>i</sub>为每个任务的初始任务利用率,U<sub>i</sub>=(e<sub>i</sub>+T<sub>be</sub>)/p<sub>i</sub>,e<sub>i</sub>为处理器在最高频率下任务的最长执行时间、T<sub>be</sub>为周边装置的损益平衡时间、p<sub>i</sub>为任务周期;b、如果U<sub>sum</sub><1,则周边装置进入低功耗状态所节约的能量能够补偿状态转换所消耗的能量;此时结合动态能源管理策略来管理周边装置,如果当前任务不需利用此周边装置,且当前任务不会被需要使用此周边装置的任务所抢占,则关闭此周边装置;如果当前任务需要利用此周边装置,或当前任务会被需要使用此周边装置的任务所抢占,则维持其开启状态;如果U<sub>sum</sub>≥1,则周边装置进入低功耗状态所节约的能量不能够补偿其状态转换所消耗的能量,则维持周边装置的工作状态;c、处理器有m个可调整的频率f<sub>1</sub>,……,f<sub>m</sub>,f<sub>1</sub><……,<f<sub>m</sub>,定义降速因子α,0<α≤1,α=f<sub>s</sub>/f<sub>m</sub>,f<sub>s</sub>为要选取的初始操作频率、f<sub>m</sub>为最大操作频率;原本最长执行时间为e<sub>i</sub>的任务,执行时间延长为<img file="F2009101006112C00012.GIF" wi="80" he="96" />此时,<img file="F2009101006112C00013.GIF" wi="323" he="120" />由最小截止期优先调度的调度条件U<sub>sum</sub>≤1,则导出<img file="F2009101006112C00014.GIF" wi="228" he="119" />选取一满足此式的最小α,由f<sub>s</sub>=αf<sub>m</sub>,即可据此选择处理器的初始操作频率实现降低处理器功耗;步骤(2)选择结束操作频率,并判断下个任务是否需要用到周边装置,若需要用到,则预先唤醒周边装置,具体步骤如下:d、当任务执行结束时,计算每个任务的结束任务利用率U<sub>i</sub>′,U<sub>i</sub>′=CC<sub>i</sub>/P<sub>i</sub>,其中CC<sub>i</sub>为任务实际执行时间,P<sub>i</sub>为任务周期;e、如果周边装置处于睡眠状态,则利用判断下个任务是否要用到周边装置,如果需要用到周边装置,则预先唤醒周边装置;如果不需要用到周边装置,则维持其睡眠状态;具体方法为:首先判断下个任务是否要用到该周边装置,若下个任务要用到此装置,且下个任务开始时间大于任务执行时间加上损益平衡时间,则调用唤醒函数唤醒此周边装置,并设置唤醒时间点为下个任务开始执行时间T<sub>m</sub>-T<sub>be</sub>,T<sub>m</sub>为任务需要使用周边装置的时间,T<sub>be</sub>为周边装置的损益平衡时间;f、计算<img file="F2009101006112C00021.GIF" wi="604" he="121" />由最小截止期优先调度的调度条件U<sub>sum</sub>′≤1,则导出<img file="F2009101006112C00022.GIF" wi="260" he="121" />则选取一满足此式的最小α,由f<sub>s</sub>=αf<sub>m</sub>即可据此选择处理器的操作频率以达到降低处理器功耗的目的;g、如果周边装置处于工作状态,且下个任务需要用到此周边装置,则维持其工作状态;若不需要用到周边装置,则关闭此周边装置。
地址 310018 浙江省杭州市江干区下沙高教园区2号大街