一种降低嵌入式系统功耗的方法技术方案

技术编号:3863805 阅读:265 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种降低嵌入式系统功耗的方法。目前嵌入式系统降低功耗只针对处理器或只针对周边装置,使得整个系统的功耗并未被全盘考虑,以致低功耗效果不甚明显。本发明专利技术的具体步骤是:首先任务开始执行时选择操作频率,计算值U↓[sum],U↓[sum]=*U↓[i],其中U↓[i]=(e↓[i]+T↓[be])/p↓[i],U↓[i]为每个任务的任务利用率,e↓[i]为处理器在最高频率下任务的最长执行时间,T↓[be]为周边装置的损益平衡时间,p↓[i]为任务周期,U↓[sum]与1作大小比较,决定是否开启周边装置,计算利用频率,选取操作频率。然后任务执行结束时选择操作频率,并判断下个任务是否需要用到周边装置,若需要用到,则预先唤醒周边装置。本发明专利技术同时考虑处理器及周边装置的功率消耗,使嵌入式系统的有效能量供给率最大化,从而延长了电池的寿命。

【技术实现步骤摘要】

本专利技术属于计算机
,具体涉及。
技术介绍
近年来,随着半导体产业的蓬勃发展和嵌入式系统的广泛应用,各种可便携的电子装置及移动设备如手机,PDA,笔记本电脑等,成为大众化的消费 型电子产品。这些可携式电子装置大多属于嵌入式实时系统,因此,多釆用 高整合度的系统单晶片(System-on-Chip, SOC)为处理器核心。这些各式各 样的电子产品,都将嵌入式系统和S0C技术发挥的淋漓尽致。它们的特点除 了轻巧易携带外,在功能上的表现也越来越多元化。例如,不断加入含背光 的彩色LCD显示屏,声音子系统,相机功能,无线区域网络(WLANs),蓝牙 (Bluetooth)等。然而效能,复杂度增加却对系统能量的消耗也相对的增加。 如何延长电池的寿命,让能源得到有效管理与利用就成了所有工程师都头痛 的问题。由于近些年来,开发高能量密度的新型电池技术并没有太大的突破,要 延长电池的使用寿命,就只能从系统单晶片的设计,以及功率管理的技术上 来下手,以得到最佳的结果。动态能源管理(Dynamic Power Management, DPM)为在系统执行时期对 根据系统工作负荷(system workload)及资源(resource)做出适当的管理决 策。现在的硬件设计己可提供数种支持动态能源管理的功能,这些功能包含 多段式功率状态之输入输出周边设备及可调电压(variable-voltage)或可 变频率之处理器。在这些功能的支持下,可动态的决定处理器的工作电压, 称为动态电压调整(Dynamic Voltage Scaling, DVS),并且可切换周边设备 的功率状态。然而上述方法均只针对处理器或只针对周边装置作能源管理的研究,使 得整个系统的功耗并未被全盘考虑,以致低功耗效果不甚明显。
技术实现思路
本专利技术的目的在于提供一种面向嵌入式实时操作系统的可以同时降低处 理器及周边装置功率消耗的方法。本专利技术的具体步骤是歩骤(l)计算任务利用率的和,选择初始操作频率,具体步骤如下a、 任务Ti开始工作时,计算任务利用率的和t/,, t/,=:£t/,,其中t/,.为,'=1每个任务的初始任务利用率,t/,(e,. + rj/p,., e,.为处理器在最高频率下任务的 最长执行时间、^为周边装置的损益平衡时间、A为任务周期;b、 如果^目<1,则周边装置进入低功耗状态所节约的能量能够补偿状态 其转换所消耗的能量;此时结合动态能源管理策略来管理周边装置,如果当 前任务不需利用此周边装置,且当前任务不会被需要使用此周边装置的任务 所抢占,则关闭此周边装置;如果当前任务需要利用此周边装置,或当前任 务会被需要使用此周边装置的任务所抢占,则维持其开启状态;如果t/, H,则周边装置进入低功耗状态所节约的能量不能够补偿其状态 转换所消耗的能量,则维持周边装置的工作状态;c、 处理器有m个可调整的频率fp……,……,〈乙,定义降速因子"(0〈c^1) ,cefs/fm, f,为要选取的初始操作频率、乙为最大操作频率;原本最长执行时间为ei的任务,执行时间延长为、此时,^zi:1^,由最小截止期优先调度(EDF)的调度条件C/,《1,则导出tA^",选取一满足此式的最小《,由f,"L,即可据此选择处理器的初始操作频率实现降低 处理器功耗;步骤(2)选择结束操作频率,并判断下个任务是否需要用到周边装置,若 需要用到,则预先唤醒周边装置,具体歩骤如下d、 当任务执行结束时,计算每个任务的结束任务利用率t/,.', t/,.' = CC,/《, 其中CG为任务实际执行时间,A为任务周期。e、 如果周边装置处于睡眠状态,则利用判断下个任务是否要用到周边装 置,如果需要用到周边装置,则预先唤醒周边装置;如果不需要用到周边装 置,则维持其睡眠状态;具体方法为首先判断下个任务是否要用到该周边5装置,若下个任务要用到此装置,且下个任务开始时间大于任务执行时间加 上损益平衡时间,则调用唤醒函数唤醒此周边装置,并设置唤醒时间点为下个任务开始执行时间Tm-Tbs, L为任务需要使用周边装置的时间,Tbs为周边装 置的损益平衡时间。f、 计算"_'=丄1>,.'=丄1:&,由最小截止期优先调度(EDF)的调度a ,=i ,=i尸,.条件K目'",则导出t^^",则选取一满足此式的最小a,由f,"乙即可据此选择处理器的操作频率以达到降低处理器功耗的目的;g、 如果周边装置处于工作状态,且下个任务需要用到此周边装置,则维 持其工作状态;若不需要用到周边装置,则关闭此周边装置。本专利技术中结合动态电压调整和动态功率管理的调度方法,可以使系统同 时考虑处理器及周边装置的功率消耗,使嵌入式系统的有效能量供给率最大 化,从而延长了电池的寿命,实现了嵌入式系统的低功耗要求。 具体实施例方式本专利技术以循环利用最早截止期优先调度(Cycle-Conserving Earliest Deadline First, CCEDF)为基础,结合动态电压调整(Dynamic Voltage Scaling, DVS)和动态功率管理(Dynamic Power Management, DPM)共同降低 处理器及周边装置的功耗。CCEDF原理为一般程序在执行时,多数情况下不 会耗费到最长执行时间,则利用剩余时间重新计算系统使用率U,以此降低选 择的频率。当任务开始时,我们无法得知实际执行时间,利用其耗费最长执 行时间来计算利用率;当任务完成时,可获得实际执行时间,使用动态电压 调整来节省不必要的时间耗费。工作开始时,首先利用向前侦测技术去侦测判断周边装置是否被用到, 如果需要则将其开启,否则继续维持关闭状态。工作结束时,首先侦测下个工作是否需要用到该周边装置,然后利用预 先唤醒方法,判断当前任务与下个任务开始的时间间隔,如果超过损益平衡 时间,则调用预先唤醒函数设计唤醒的时间点,使周边装置在下个任务开始 前被唤醒。并据此计算当前系统实际处理器利用率。对于处理器使用DVS技术让使用率不高的任务集以较少的功率消耗来执行,且在周边装置不使用时,以DPM关闭不用的周边装置,并利用预先唤醒 机制,计算下个任务开始执行时间,以利于计时器精确控制最佳的唤醒周边 装置的时间。采用向前侦测技术,为调度器提供下个要执行的任务信息,使得功率管 理决策能更有效。所谓向前侦测技术也就是在某个任务结束后,去侦测下个 任务是否需要用到此周边装置,如果需要,则判断其加入损益平衡时间是否 仍可调度,如果可以,则将其开启,否则,继续维持关闭状态。其中损益平 衡时间为某个任务在不使用周边装置时,若不关闭其电源所消耗的功率,与 关闭其电源并再启动,所消耗的功率相等的时间,也就是说此周边装置进入 低功耗状态节约的能量能够补偿状态转换消耗的能量。若某个任务对一个处于睡眠模式的周边装置发出需求,则此需求必须等 待唤醒的时间。若过早唤醒此周边装置则浪费能源,若太晚唤醒则不能减少 等待时间,同样浪费能源。因此,由操作系统提供一个函数来提供预先唤醒, 此方法称为预先式唤醒(predictive wakeup)。提供的函数如下所示 RequireDivice(device, time) device :需要的硬本文档来自技高网
...

【技术保护点】
一种降低嵌入式系统功耗的方法,其特征在于该方法的步骤包括: 步骤(1)计算任务利用率的和,选择初始操作频率,具体步骤如下: a、任务T↓[i]开始工作时,计算任务利用率的和U↓[sum],U↓[sum]=*U↓[i],其中U↓[i]为每个任务的初始任务利用率,U↓[i]=(e↓[i]+T↓[be])/p↓[i],e↓[i]为处理器在最高频率下任务的最长执行时间、T↓[be]为周边装置的损益平衡时间、p↓[i]为任务周期; b、如果U↓[sum]<1,则周边装m]即可据此选择处理器的操作频率以达到降低处理器功耗的目的; g、如果周边装置处于工作状态,且下个任务需要用到此周边装置,则维持其工作状态;若不需要用到周边装置,则关闭此周边装置。置进入低功耗状态所节约的能量能够补偿状态其转换所消耗的能量;此时结合动态能源管理策略来管理周边装置,如果当前任务不需利用此周边装置,且当前任务不会被需要使用此周边装置的任务所抢占,则关闭此周边装置;如果当前任务需要利用此周边装置,或当前任务会被需要使用此周边装置的任务所抢占,则维持其开启状态; 如果U↓[sum]≥1,则周边装置进入低功耗状态所节约的能量不能够补偿其状态转换所消耗的能量,则维持周边装置的工作状态; c、处理器有m个可调整的频率f↓[1],……,f↓[m],f↓[1]<……,<f↓[m],定义降速因子α,0<α≤1,α=f↓[s]/f↓[m],f↓[s]为要选取的初始操作频率、f↓[m]为最大操作频率;原本最长执行时间为e↓[i]的任务,执行时间延长为e↓[i]/α,此时,U↓[sum]=*1/αe↓[i]/p↓[i],由最小截止期优先调度的调度条件U↓[sum]≤1,则导出*e↓[i]/p↓[i]≤α,选取一满足此式的最小α,由f↓[s]=αf↓[m],即可据此选择处理器的初始操作频率实现降低处理器功耗; 步骤(2)选择结束操作频率,并判断下个任务是否需要用到周边装置,若需要用到,则预先唤醒周边装置,具体步骤如下: d、当任务执行结束时,计算每个任务的结束任务利用率U↓[i]′,U↓[i]′=CC↓[i]/P↓[i],其中CC↓[i]为任务实际执行时间,P↓[i]为任务周期; e、如果周边装置处于睡眠状态,则利用判断下个任务是否要用到周边装置,如果需要用到周边装置,则预先唤醒周边装置;如果不需要用到周边装置,则维持其睡眠状态;具体方法为:首先判断下个任务是否要用到该...

【技术特征摘要】

【专利技术属性】
技术研发人员:王玉娟肖景张祯郑秋华吴国华
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:86[中国|杭州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1