




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、体系结构中低功耗优化策略摘要:随着嵌入式系统的广泛应用,低功耗问题摆在了设计人员面前低功耗设计包括系统设计、硬件设计 软件设计 器件的工艺设计等诸多万面。其中器件的工艺设计主要由半导体器件的厂家来完成,嵌入式系统的应用设计人员只需要关心器件的功耗指标。更多的工作集中于系统的硬件、软件以及它们之间的配合方面。关键字:嵌入式设备 低功耗 优化引言 功耗问题是近几年来人们在嵌入式系统的设计中普遍关注的难点与热点,特别是对于电池供电系统,而且大多数嵌入式设备都有体积和质量的约束。降低系统的功耗具有下面的优点:(1)对于电池供电系统,延长电池的寿命,降低用户更换电池的周期,提高系统性能与降低系统开销,甚
2、至能起到保护环境的作用;(2)安全的需要:例如工业现场总线设备的本安1要求,实现本安要求的一个重要途径是降低系统的功耗;(3)降低电磁干扰:系统的功耗越低,电磁辐射的能量越小,对其它设备造成的干扰越小,如果所有的电子产品都设计成低功耗的,那么电磁兼容性设计会变得容易;(4)节能:特别是对电池供电系统来说,节能更为重要。 对于高性能计算机系统和大型服务器产生了大量的能量消耗.高性能计算机系统往往由大量的处理节点、大规模的存储系统和I/O设备构成,消耗了大量能量.能量优化对保证系统可靠运行有重要作用.为了跟踪Moore定律2,计算机产业的支撑技术互补金属氧化物半导体(CMOS)的工艺不断缩放,芯片
3、的能量密度越来越大,这增加了封装和制冷的代价,能量问题成为芯片设计必须解决的问题.大型服务器系统的电力和制冷问题经常是许多结点失效的原因之一.1本安是一种危险区域的防爆技术,原理是通过限制进入危险区域电路和设备的能量2 1965年,Intel公司的缔造者之一Gordon Moore在总结存储器芯片的增长规律时,指出“微芯片上集成的晶体管数目每十二个月翻一番”图1:Pentium 系列处理器能量增长曲线线路层、门层、体系结构层开发了很多方法减少芯片内部的冗余能量消耗,这包括选择适当的晶体管大小,选择低功耗的逻辑风格、多阈值电压、动态电压缩放技术(dynamic voltage scaling,简
4、称DVS)、冗余部件关闭技术.动态电压缩放和冗余部件关闭技术是在系统的较高层次完成的节能技术,可以通过硬件方法来实现,同时通过软件来完成部件的管理.早期的软件低功耗管理主要由操作系统完成,操作系统负责将空转的CPU、内存、磁盘系统等关闭以达到节能的目的.随着硬件技术的发展,产生了一些细粒度的节能技术,例如,关闭cache行,关闭多bank3内存系统,关闭某些CPU部件.完成这些细粒度的控制需要对程序本身的特点有更全面而具体的了解,所以编译指导的低功耗技术得以研究,例如,编译指导的动态电压缩放技术、编译指导的cache能量优化、编译指导的适应性处理节点策略、编译指导的内存系统管理策略3物理Ban
5、k传统内存系统为了保证CPU的正常工作,必须一次传输完CPU在一个传输周期内所需要的数据。而CPU在一个传输周期能接受的数据容量就是CPU数据总线的位宽,单位是bit(位)。当时控制内存与CPU之间数据交换的北桥芯片也因此将内存总线的数据位宽等同于CPU数据总线的位宽,而这个位宽就称之为物理Bank(Physical Bank)的位宽1 功耗产生的原因 目前的集成电路工艺主要有TTL和CMOS两大类,无论哪种工艺,电路中只要有电流通过,就会产生功耗。通常,集成电路的功耗分为静态功耗和动态功耗两部分:当电路的状态没有进行翻转(保持高电平或低电平)时,电路的功耗属于静态功耗,其大小等于电路的电压与
6、流过的电流的乘积;动态功耗是电路翻转时产生的功耗,由于电路翻转时存在跳变沿,在电路的翻转瞬间,电流比较大,存在较大的动态功耗。式(1)表示电路的功耗组成:P=V2(?)f(?)C+Pstatic (1)其中是静态功耗,是V工作电压,是f工作频率,是C负载电容。?表示式中V2与f功耗相关的因素越大,功耗越大,但不是线性的。由于目前大多数电路采用CMOS工艺,静态功耗很小,可以忽略。起主要作用的是动态功耗,因此降低功耗从降低动态功耗入手。2 体系结构层降低功耗技术系统中的动态能量消耗占主要部分,随着工艺的缩放,泄漏电流的比例逐渐增大.如果不使用任何泄漏控制机制,未来的工艺中动态能量消耗和静态能量消
7、耗比例基本相当.计算机系统是由软件和硬件组成的系统,低功耗问题必须从软件和硬件两方面综合考虑. 计算机系统包括中心处理器、主存和I/O设备.一般来说,磁盘设备的能量消耗要比主存和处理器的功耗大几个量级,低功耗的系统往往不使用磁盘系统.内存系统DRAM的能量消耗是处理器能量消耗的几十倍到几百倍.处理器内部的动态能量消耗又由时钟系统、数据路径、存储系统和控制I/O等组成.2.1 一些重要的体系结构层降低功耗技术.(1) 动态电压缩放(dynamic voltage scaling,简称DVS)降低电压系统的动态功耗和电压成二次方关系,降低供应电压可以降低系统的动态功耗,动态电压缩放在系统运行时动态
8、改变电压.一般可以设置几个离散电压值,软件可以根据需求在几个电压值之间进行动态调整.实用的处理器包括Transmeta Crusoe,Intel Xscale和AMD K6 III+.电压切换存在一定的能量开销和时间开销.(2) 时钟门(clock gating)减少切换电容时钟系统的能量消耗占CPU总功耗的很大一部分,减少时钟系统的切换电容对总功耗有很大的作用.一种实际有效的方法是划分时钟网络,在每个周期只允许必要的部分进行切换.这通过时钟门来实现.使用时钟门关闭的部件一般不能及时恢复正常状态,并且时钟系统可能产生小故障,这是使用时钟门存在的问题.如何有效地使用时钟门关闭功能部件,如何及时地
9、将关闭的功能部件恢复到正常状态以降低性能损失是软件需要解决的问题.(3) 存储系统减少切换电容CPU内部的cache,TLB*,分支缓存占能量消耗的很大部分,DRAM的功耗又是CPU的几十倍,磁盘设备更是重要的能量消耗源.低功耗的存储系统对降低系统功耗有很大作用.除了传统的多运行模式磁盘、内存系统以外,很多新的硬件技术用来解决存储系统的运行时功耗:新的cache技术.处理器的发展集成了越来越大的芯片内cache,大的cache造成了大量的能量消耗.在保持程序性能的前提下,功耗最优的cache大小和结构随着负载的变化而变化.于是产生了可重配置的cache1和动态关闭cache行的cache2,这
10、些cache设计的主要目的是减少动态切换的电容量,降低功耗.多bank的内存结构.为了降低访存的切换电容量,将存储结构划分为多个bank,每次只访问部分部件,不使用的内存bank可以关闭.这些动态的存储系统部件为存储系统的能量优化提出了新问题,如动态cache结构下,如何有效利用cache,保证性能并提高能量效率?采用什么样的方法进行cache数据的映射?基于分页的操作系统如何有效利用多bank的内存系统?程序如何有效地局部化,利用多个内存bank降低功耗?(4) 编码和缓存减少切换因子应用中很多计算存在重复部分,可以在功能部件中增加cache,将计算的结果保存.如果又有同样操作数的计算,则直
11、接使用原来的值.这种方法减少了切换活动,降低了功耗.有些计算使用的操作数不需要很高的精度,低位部分就足够了,这样可以通过一些技术监测冗余的高位部分,避免高位部分的计算以降低功耗3.(5) 泄漏能量减少技术泄漏能量消耗是今后工艺发展面临的重要问题之一,泄漏控制的主要方式有:A. 输入向量控制(IVC)B. 增加阈值电压(MTCMOS,BBC)C. 关闭供应电压(power supply gating,简称PSG)D. 动态电压缩放缩放内存单元的电压为1.5倍的阈值电压,这样内存单元的内容可以保留,同时由于在高性能工艺中的短信道效果,泄漏会随着电压缩放显著减少.对于0.07m工艺,睡眠电压近似为0
12、.3V.动态电压缩放方法的能量状态转换很快,转换延迟0.28ns.该方法被使用在drowsy cache4中.减少泄漏能量的技术是今后低功耗研究的热点,上述各种泄漏控制方式适用于体系结构层,这为编译指导控制泄漏能量消耗提供了可行的途径.* TLB是一个专用的高速缓冲器,用于存放近期经常使用的页表项,其内容是页表部分内容的一个副本。TLB也常称为快表或地址变换缓冲器3 开发部件使用的局部性系统中的指令类型是多种多样的,每种指令使用的功能部件或设备都是不同的,以往的任务调度和指令调度策略很少考虑到设备类型的因素.在新的低功耗技术支持下的系统,这些可能是关键的因素.程序执行期间对设备的使用是很复杂的
13、,它可能随时都有启动设备的需求,如果这些设备被过于频繁地访问,考虑到节能策略的时间开销和能量损失,不是任何情况下使用节能方法都会得到收益,尽量集中一类部件或者一个部件的使用,最大化部件使用的间隔具有重要意义,这就是部件使用的局部化。图2显示了典型的PDA系统各部件间的关系.图2:典型的PDA系统各部件间的关系根据这一概念,我们总结出一些方法用于低功耗编译优化,这些方法可能是早有研究的,也可能是尚未考虑过的.(1) 处理器部件类型局部化和设置恰当的部件数量处理器中存在多种类型的处理部件,程序运行期间,可能使用不同类型的部件.如果在执行指令期间,把使用同种类型部件的指令尽量集中在一起,就可以更有效
14、地使用节能策略.例如,区分使用整数部件和浮点部件的指令.假定有指令序列i1,f2,i3,f4,其中代表整数指令,f代表浮点指令.如果直接使用上面的调度方法,浮点指令和整数指令相互间隔,我们在运行期间需要对整数部件和浮点部件各进行两次能量等级切换.如果指令不相关,可以调整指令序列为i1,i3,f2,f4,这样,部件只需要各切换一次,并且增大了切换间隔的时间(指令数)除了集中对部件的使用,还需要设置程序运行需要的恰当的部件数目.在程序运行期间,各种部件类型使用的数目是不同的,并不是总处于供需的平衡状态.我们要使用有效的方法平衡程序需求和部件数量.例如,系统中的取指队列、保留站队列等结构的数量并不总
15、是适当的,我们可以采取一定措施在程序运行期间关闭部分部件.过去在这方面有一些研究工作,例如,W.Zhang等人5提出,在存在多种能量模式的IALU部件的VLIW处理器中,采用编译技术分析程序的特性,将非关键路径上的指令调度到慢速IALU,以减少系统动态功耗,利用输入向量控制和能量门技术适时关闭和打开部件减少泄漏能量消耗;H.S.Kim等人6采用编译技术在循环粒度中分析程序的IPC值,基于分析结果,动态分配激活的IALU(整数运算单元)7数量,降低系统泄漏能量消耗.(2) Cache使用的局部化和设置适当的cache行数目Cache是处理器中能量消耗比例很高的部分,cache使用的优化对优化系统
16、能量消耗十分重要,需要对cache的使用进行局部化.这不单纯是根据cache的大小进行一些数据的局部性优化,而是假定在执行期间程序应当使用尽量小的cache行数目,然后将剩余的cache行关闭.这与传统的基于cache的局部性优化存在差别,一些原来的基于循环的优化方法需要一定的修改才能得到更有效的优化效果.设置好cache的使用数目,还要考虑cache行适时关闭和激活的策略,必须有恰当的cache管理方式才能减少引入的时间和能量开销.对于cache的优化也存在一些研究,例如,基于循环的粒度,在每个循环结束时用编译方法插入指令关闭指令cache行,减少泄漏能量消耗.(3) 内存使用的局部化内存的
17、功耗占系统功耗的很大比例.内存系统能量的优化在很大程度上依赖于程序使用的局部性,对于多带的内存系统和多芯片系统的局部性优化需要进一步研究.例如,对多运行模式、多带的内存系统进行了分析,使用软件策略优化程序的内存布局,降低存储器的活动.(4) I/O使用的局部化对数据输入输出依赖很强的程序可以考虑进行I/O使用的局部化.I/O局部化的可能方式是采用缓存方法,将大量小规模的I/O集中起来,这延长了两组I/O的时间,然后可能使用更积极有效的I/O节能策略.但是,这也可能造成内存需求的增加,必须考虑整体的能量消耗,确定能量的最大收益.例如在应用层和编译层对非交互式应用程序中的I/O访问时间进行变换,最
18、大限度地使用内存空间缓存将来使用的数据,通过延长I/O的访问间隔来提高磁盘设备可以进行能量管理的比率.(5) 多任务多设备的调度对于运行在多任务环境、存在多种设备的系统,如何使用节能技术?任务的调度需要考虑对部件的使用情况,将集中使用某些部件的任务同时调度,这一般不会影响系统的吞吐量,并可以采取一些更有效的节能技术.4 编译低功耗技术研究的基本方法综上所述,功耗优化要求编译和体系结构密切结合,当设计一种新的体系结构时要充分考虑到对编译时功耗优化支持;在对于一个已有的体系结构,编译要充分利用体系结构的各种硬件特点对应用程序进行尽可能的功耗优化。因此,结合目前的发展趋势,在开展体系结构以及相应的低
19、功耗和编译优化技术的研究工作中。首先要考虑几个问题:(1)我们在设计一种新的体系结构时能否提出一种这样的结构模型,在提高性能的同时,应考虑如何有效支持编译时的功耗优化,在设计技术上要做出那些扩展和权衡?(2)如何在这种新的体系结构模型上研究和实现充分综合开发体系结构并行性以及降低功耗的模型和算法?(3)这种模型对于实际应用程序的性能提高与降低功耗权衡的关键是什么?(4)提出充分发挥体系结构特征的并能达到降低功耗目的的相关编译优化的方法和技术;(5)通过对特选应用实例(如 benchmark)的模拟和分析,评价所提出的结构特征和相应的编译技术;(6)研究和形式化对以上问题的求解策略,并提出有效实
20、现方案;(7)对以上方法进行实现,并开展验证结果的实验研究;很多降低功耗的设计可能导致编译方法由以性能为中心转移到以功耗或以功耗与性能的权衡为中心。因此,需要重新研究:1 LOOP 优化2 过程分析和优化3 软件流水4指令调度5寄存器分配等通过这些新的研究来观察性能与功耗的影响,提出有效降低功耗的编译和runtime 软件技术以及实现方法。参考资料:1 Zhang CJ, Vahid F, Najjar W. A highly configurable cache architecture for embedded systems. In: ACM ed. Proc. of the 30th
21、Annual Intl Symp. on Computer Architecture. New York: ACM Press, 2003. 111.2 Witchel E, Asanovi K. The span cache: Software controlled tag checks and cache line size. In: IEEE ed. Proc. of the 28th ISCA, Workshop on Complexity-Effective Design. Washington: IEEE Computer Society Press, 2001. 112.3 Br
22、ooks D, Martonosi M. Dynamically exploiting narrow width operands to improve processor power and performance. In: IEEE ed. Proc. of the 5th Intl Symp. on High Performance Computer Architecture. Washington: IEEE Computer Society Press, 1999. 110.4 Flautner K, Kim NS, Martin S, Blaauw D, Mudge T. Drow
23、sy caches: Simple techniques for reducing leakage power. In: IEEE, ed. Proc. of the 29th Annual Intl Symp. on Computer Architecture. Washington: IEEE Computer Society Press, 2002. 148157.5 Zhang W, Vijaykrishnan N, Kandemir M, Irwin MJ, Duarte MJ, Tsai Y-T. Exploiting VLIW schedule slacks for dynami
24、c and leakage energy reduction. In: IEEE, ed. Proc. of the 34th Annual Intl Symp. on Microarchitecture (MICRO-34). Washington: IEEE Computer Society, 2001. 102113.6 Kim HS, Vijaykrishnan N, Kandemir M, Irwin MJ. Adapting instruction level parallelism for optimizing leakage in VLIW architectures. In:
25、 ACM, ed. Proc. of the Languages, Compilers, and Tools for Embedded Systems (LCTES 2003). New York: ACM Press, 2003. 275283.7 Maikel Kokaly-Bannourah 用VisualDSP+开发TigerSHARC DSP多处理器系统简介Analog Devices公司DSP器件和开发工具的使用技术指南 April. 4th. 20038 YI Hui-Zhan YANG Xue-Jun . Energy Efficiency of Microarchitectures In High-Perfor
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025全球专利许可合同协议书
- 新质生产力风险社会
- 着色性干皮病的临床护理
- 2025如何规避合同纠纷风险-租赁合同范本解析
- 2025年国家电网招聘之文学哲学类真题练习试卷B卷附答案
- 初中历史明朝的对外关系 课件 +2024-2025学年统编版七年级历史下册
- 生殖器湿疹的临床护理
- 2025年涂装车间承包合同
- 2025销售经理合同样本
- 2025年签订股权转让合同:注意风险转移的关键点
- (二模)东北三省三校2025年高三第二次联合模拟考试 英语试卷(含答案解析)
- 2025-2030中国地面液压凿岩机行业市场发展趋势与前景展望战略研究报告
- 高分子材料改性-第1章-绚丽多彩的高分子及其改性
- 物业电工操作培训
- 苏教版科学二年级下册 全册教案
- 公务员考试理论与实践(山东联盟)知到智慧树章节测试课后答案2024年秋山东财经大学
- AQT3034化工过程安全管理导则
- 中国骨关节炎诊疗指南(2024版)解读
- 2025年福建能化集团招聘笔试参考题库含答案解析
- 西安老城根Gpark策略课件0816
- 《异常子宫出血诊断与治疗指南(2022更新版)》解读
评论
0/150
提交评论