欢迎来到天天文库
浏览记录
ID:10736279
大小:55.00 KB
页数:4页
时间:2018-07-08
《片上系统的低功耗设计论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、片上系统的低功耗设计论文.freelunicationServices)应用对这些要求尤其明显,通用可便携多媒体服务是要支持完整的数字语音和图像辨别处理的。在这些应用中,不仅语音,而且数据也要能在无线链路上传输。这就为实现任何人在任何地方的任何时间开展任何想要的业务提供了可能。但是,花在对语音、图像的压缩和解压上的功耗就必须附加在这些可便携的终端上。确实,可便携能力已经不再明显地和低性能联系在一起了;相反,高性能且可便携的应用正在逐步得到实现。当功率可以在非便携环境中获得时,低功耗设计的总理也变得十分关
2、键。直到现在,由于大的封装、散热片和风扇能够轻而易举地散掉芯片和系统所产生的热,其功耗还未引起多大的重视。然而,随着芯片和系统尺寸持续地增加,要提供充分的散热能力就必须付出重要代价,或使所提供的总体功能达到极限时,设计高性能、低功耗数字系统方法的需求就会变得更为显著。幸好,现在已经发展了许多技术来克服这些矛盾。由于可以高度集成,并具有低功耗、输入电流小、连接方便和具有比例性等性质,CMOS逻辑电路被认为是现今最通用的大规模集成电路技术。下面研究CMOS集成电路的功耗组成,概述实现集成电路——SoC(Sy
3、stemonChip)系统的低功耗设计的诸多方法。目的在于揭示当今电子系统结构复杂度、速度和其功耗的内在联系,在及在数字电子系统设计方向上潜在的启示。1CMOS集成电路功耗的物理源要研究SoC的低功耗设计,首先要物理层次上弄清该集成电路的功耗组成,其次,才能从物理实现到系统实现上采用各种方法来节省功耗,达到低功耗设计的目的。图1为典型CMOS数字电路的功耗物理组成。(1)动态功耗动态功耗是由电路中的电容引起的。设C为CMOS电路的电容,电容值为PMOS管从0状态到H状态所需的电压与电量的比值。以一个反相
4、器为例,当该电压为Vdd时,从0到H状态变化(输入端)所需要的能量是CVdd2。其中一半的能量存储在电容之中,另一半的能量扩展在PMOS之中。对于输出端来说,它从H到0过程中,不需要Vdd的充电,但是在NMOS下拉的过程中,会把电容存储的另一半能量消耗掉。如果CMOS在每次时钟变化时都变化一次,则所耗的功率就是CBdd2f,但并不是在每个时钟跳变过程之中,所有的CMOS电容都会进行一次转换(除了时钟缓冲器),所以最后要再加上一个概率因子a。电路活动因子a代表的是,在平均时间内,一个节点之中,每个时钟周期
5、之内,这个节点所变化的几率。最终得到的功耗表达式为:Psemor几倍软件代码软件优化32.3%功率管理Clock控制10%~90%RTL级结构变换10%~15%综合技术合成与分解逻辑15%综合技术映射门级优化20%20%布局布局优化20%(1)系统级功耗管理这一部分实际上是动态功耗管理。主要做法是在没有操作的时候(也就是在SoC处于空闲状态的时候),使SoC运作于睡眠状态(只有部分设备处于工作之中);在预设时间来临的时候,会产生一个中断。由这个中断唤醒其它设备。实际上,这一部分需要硬件的支持,如判断,周
6、期性的开、关门控时钟(gateclock)等。(2)软件代码优化软件代码优化是针对ARM嵌入式处理器而言的。对于编译器来说,所起的使用不到1%,而对于代码的优化则可以产生高达90%的功耗节省。Simunic等人曾分别做过用各种针对ARM处理器的编译器进行的试验。比此的实验结果发展,风格比较好的代码产生的效果远比用ARM编译器优化的效果好。(3)Clock控制这是在ASIC设计中行之有效的方法之一。如果SoC芯片在正常工作,有很大一部分模块(它们可能是用于一些特殊用途中,如调试Debug、程序等)是乖于空
7、闲状态的,这些器件的空运作会产生相当大的功耗。这一部分应使用时钟控制,即clockenabledisable。(4)RTL级代码优化与软件相似,不同的RTL(RegisterTransferLevel,寄存器传输级)代码,也会产生不同的功耗,而且RTL代码的影响比软件代码产生的影响可能还要大。因为,RTL代码最终会实现为电路。电路的风格和结构会对功耗产生相当重要的影响。RTL级代码优化主要包括:①对于CPU来说,有效的标准功耗管理有睡眠模式和部分未工作模块掉电。②硬件结构的优化包括能降低工作电压Vdd的
8、并行处理、流水线处理以及二者的混合处理。③降低寄存电容C的片内存储器memory模块划分。④降低活动因子a的信号门控、减少glitch(毛刺)的传播长度、Glitch活动最小化、FSM(有限状态机)状态译码的优化等。⑤由硬件实现的算法级的功耗优化有:流水线和并行处理、Retiming(时序重定)、Unfolding(程序或算法的展开)、Folding(程序或算法的折叠)等等基本方法以及其组合。(5)后端综合与布线优化既然SoC的功耗与寄生电
此文档下载收益归作者所有