欢迎来到天天文库
浏览记录
ID:22754867
大小:55.00 KB
页数:6页
时间:2018-10-31
《soc系统的低功耗设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、SoC系统的低功耗设计
2、第1lunal>关键词:VLSISoCCMOS集成电路低功耗设计引言从20世纪80年代初到90年代初的10年里,微电子领域的很多研究工作都集中到了数字系统速度的提高上,现如今的技术拥有的计算能力能够使强大的个人工作站、复杂实时语音和图像识别的多媒体计算机的实现成为可能。高速的计算能力对于百姓大众来说是触指可及的,不像早些年代那样只为少数人服务。另外,用户希望在任何地方都能访问到这种计算能力,而不是被一个有线的物理网络所束缚。便携能力对产品的尺寸、重量和功耗加上严格的要求。由
3、于传统的镍铬电池每磅仅能提供20OS逻辑电路被认为是现今最通用的大规模集成电路技术。下面研究CMOS集成电路的功耗组成,概述实现集成电路——SoC(SystemonChip)系统的低功耗设计的诸多方法。目的在于揭示当今电子系统结构复杂度、速度和其功耗的内在联系,在及在数字电子系统设计方向上潜在的启示。1CMOS集成电路功耗的物理源要研究SoC的低功耗设计,首先要物理层次上弄清该集成电路的功耗组成,其次,才能从物理实现到系统实现上采用各种方法来节省功耗,达到低功耗设计的目的。图1为典型CMOS数字电
4、路的功耗物理组成。(1)动态功耗动态功耗是由电路中的电容引起的。设C为CMOS电路的电容,电容值为PMOS管从0状态到H状态所需的电压与电量的比值。以一个反相器为例,当该电压为Vdd时,从0到H状态变化(输入端)所需要的能量是CVdd2。其中一半的能量存储在电容之中,另一半的能量扩展在PMOS之中。对于输出端来说,它从H到0过程中,不需要Vdd的充电,但是在NMOS下拉的过程中,会把电容存储的另一半能量消耗掉。如果CMOS在每次时钟变化时都变化一次,则所耗的功率就是CBdd2f,但并不是在每个时钟
5、跳变过程之中,所有的CMOS电容都会进行一次转换(除了时钟缓冲器),所以最后要再加上一个概率因子a。电路活动因子a代表的是,在平均时间内,一个节点之中,每个时钟周期之内,这个节点所变化的几率。最终得到的功耗表达式为:Psemor几倍软件代码软件优化32.3%功率管理Clock控制10%~90%RTL级结构变换10%~15%综合技术合成与分解逻辑15%综合技术映射门级优化20%20%布局布局优化20%(1)系统级功耗管理这一部分实际上是动态功耗管理。主要做法是在没有操作的时候(也就是在SoC处于空闲
6、状态的时候),使SoC运作于睡眠状态(只有部分设备处于工作之中);在预设时间来临的时候,会产生一个中断。由这个中断唤醒其它设备。实际上,这一部分需要硬件的支持,如判断,周期性的开、关门控时钟(gateclock)等。(2)软件代码优化软件代码优化是针对ARM嵌入式处理器而言的。对于编译器来说,所起的使用不到1%,而对于代码的优化则可以产生高达90%的功耗节省。Simunic等人曾分别做过用各种针对ARM处理器的编译器进行的试验。比此的实验结果发展,风格比较好的代码产生的效果远比用ARM编译器优化的
7、效果好。(3)Clock控制这是在ASIC设计中行之有效的方法之一。如果SoC芯片在正常工作,有很大一部分模块(它们可能是用于一些特殊用途中,如调试Debug、程序下载等)是乖于空闲状态的,这些器件的空运作会产生相当大的功耗。这一部分应使用时钟控制,即clockenabledisable。(4)RTL级代码优化与软件相似,不同的RTL(RegisterTransferLevel,寄存器传输级)代码,也会产生不同的功耗,而且RTL代码的影响比软件代码产生的影响可能还要大。因为,RTL代码最终会实现为
8、电路。电路的风格和结构会对功耗产生相当重要的影响。RTL级代码优化主要包括:①对于CPU来说,有效的标准功耗管理有睡眠模式和部分未工作模块掉电。②硬件结构的优化包括能降低工作电压Vdd的并行处理、流水线处理以及二者的混合处理。③降低寄存电容C的片内存储器memory模块划分。④降低活动因子a的信号门控、减少glitch(毛刺)的传播长度、Glitch活动最小化、FSM(有限状态机)状态译码的优化等。⑤由硬件实现的算法级的功耗优化有:流水线和并行处理、Retiming(时序重定)、Unfolding
9、(程序或算法的展开)、Folding(程序或算法的折叠)等等基本方法以及其组合。(5)后端综合与布线优化既然SoC的功耗与寄生电容的充放电有很大的关系,作为后端综合与布线,同样也可采取一些措施来减少寄存器电容。可以优化电路,减少操作(电路的操作),选择节能的单元库,修改信号的相关关系,再次综合减少毛刺的产生概率。实际上,这一部分与使用的工具有关。与软件部分有相同之处,后端综合与布线同软件的编译差不多。软件编译的结果是产生可执行的机器代码;而RTL的综合与布线是把RTL代码编译成真实
此文档下载收益归作者所有