引言
从20世纪80年代初到90年代初的10年里,微电子领域的很多研究工作都集中到了数字系统速度的提高上,现如今的技术拥有的计算能力能够使强大的个人工作站、复杂实时语音和图像识别的多媒体计算机的实现成为可能。高速的计算能力对于百姓大众来说是触指可及的,不像早些年代那样只为少数人服务。另外,用户希望在任何地方都能访问到这种计算能力,而不是被一个有线的物理网络所束缚。便携能力对产品的尺寸、重量和功耗加上严格的要求。由于传统的镍铬电池每磅仅能提供20W.h的能量,因而功耗就变得尤为重要。电池技术正在改进,每5年最大能将电池的性能提高30%,然而其不可能在短期内显著地解决现在正遇到的功耗问题。
虽然传统可便携数字应用的支柱技术已经成功地用于低功耗、低性能的产品上,诸如电子手表、袖珍计算器等等,但是有很多低功耗、高性能可便携的应用一直在增长。例如,笔记本计算机就代表了计算机工业里增长最快的部分。它们要求与桌上计算机一样具有同样的计算能力。同样的要求在个人通信领域也正在迅速地发展,如采用了复杂语音编解码算法和无线电调制解调器的带袖珍通信终端的新一代数字蜂窝网。已提出的未来个人通信服务PCS(Personal Communication Services)应用对这些要求尤其明显,通用可便携多媒体服务是要支持完整的数字语音和图像辨别处理的。在这些应用中,不仅语音,而且数据也要能在无线链路上传输。这就为实现任何人在任何地方的任何时间开展任何想要的业务提供了可能。但是,花在对语音、图像的压缩和解压上的功耗就必须附加在这些可便携的终端上。确实,可便携能力已经不再明显地和低性能联系在一起了;相反,高性能且可便携的应用正在逐步得到实现。
当功率可以在非便携环境中获得时,低功耗设计的***也变得十分关键。直到现在,由于大的封装、散热片和风扇能够轻而易举地散掉芯片和系统所产生的热,其功耗还未引起多大的重视。然而,随着芯片和系统尺寸持续地增加,要提供充分的散热能力就必须付出重要代价,或使所提供的总体功能达到极限时,设计高性能、低功耗数字系统方法的需求就会变得更为显著。幸好,现在已经发展了许多技术来克服这些矛盾。
由于可以高度集成,并具有低功耗、输入电流小、连接方便和具有比例性等性质,CMOS逻辑电路被认为是现今最通用的大规模集成电路技术。下面研究CMOS集成电路的功耗组成,概述实现集成电路——SoC(System on Chip)系统的低功耗设计的诸多方法。目的在于揭示当今电子系统结构复杂度、速度和其功耗的内在联系,在及在数字电子系统设计方向上潜在的启示。
1 CMOS集成电路功耗的物理源
要研究SoC的低功耗设计,首先要物理层次上弄清该集成电路的功耗组成,其次,才能从物理实现到系统实现上采用各种方法来节省功耗,达到低功耗设计的目的。图1为典型CMOS数字电路的功耗物理组成。
(1)动态功耗
动态功耗是由电路中的电容引起的。设C为CMOS电路的电容,电容值为PMOS管从0状态到H状态所需的电压与电量的比值。以一个反相器为例,当该电压为Vdd时,从0到H状态变化(输入端)所需要的能量是CVdd2。其中一半的能量存储在电容之中,另一半的能量扩展在PMOS之中。对于输出端来说,它从H到0过程中,不需要Vdd的充电,但是在NMOS下拉的过程中,会把电容存储的另一半能量消耗掉。如果CMOS在每次时钟变化时都变化一次,则所耗的功率就是CBdd2f,但并不是在每个时钟跳变过程之中,所有的CMOS电容都会进行一次转换(除了时钟缓冲器),所以最后要再加上一个概率因子a。电路活动因子a代表的是,在平均时间内,一个节点之中,每个时钟周期之内,这个节点所变化的几率。最终得到的功耗表达式为:Psw=aCVdd2f。
(2)内部短路功耗
CMOS电路中,如果条件Vtn 一般来说,内部短路电流功耗不会超过动态功耗的10%。而且,如果在一个节点上,Vdd (3)静态漏电功耗 静态漏电掉的是二极管在反向加电时,晶体管内出现的漏电现象。在MOS管中,主要指的是从衬底的注入效应和亚门限效应。这些与工艺有关,而且漏电所造成的功耗很小,不是考虑的重点。 表1为CMOS集成电路中主要的耗电类型。 (4)小结 通过设计工艺技术的改善,Pint和Pleak能被减小到可以忽略的程度,因而Psw也就成为功耗的主要因素。后面所做的功耗优化大部分是围绕这一个公式来进行的。对于SoC来说,所有的方法都是围绕着动态功耗来做文章的,因为在电路信号变化时,功耗消耗主要在电路中电容的充放电过程。如果从各个层次、各个方面尽量减少电路的充放电,将是我们关心的主题。 2 降低集成电路SoC功耗的方法 功耗对于一个便携式SoC数字系统来说尤为重要。事实上,很多便携式SoC系统的设计,是先进行功耗分析,由功耗分析的结果再来划分设计结构。可以说,功耗将可能决定一切。现在要做的是,根据功耗分析的结果,评判SoC结构,改进设计,优化方案。 SoC系统的功耗所涉及的内容十分广泛,从物理实现到系统实现都可以采用各种方法来节省和优化功耗。通过对国外大量文献的查阅,我们得到了常用的实现低功耗设计的各种较为有效的方法,如表2所列。 (1)系统级功耗管理 这一部分实际上是动态功耗管理。主要做法是在没有操作的时候(也就是在SoC处于空闲状态的时候),使SoC运作于睡眠状态(只有部分设备处于工作之中);在预设时间来临的时候,会产生一个中断。由这个中断唤醒其它设备。实际上,这一部分需要硬件的支持,如判断,周期性的开、关门控时钟(gate clock)等。 (2)软件代码优化 软件代码优化是针对ARM嵌入式处理器而言的。对于编译器来说,所起的使用不到1%,而对于代码的优化则可以产生高达90%的功耗节省。Simunic等人曾分别做过用各种针对ARM处理器的编译器进行的试验。比此的实验结果发展,风格比较好的代码产生的效果远比用ARM编译器优化的效果好。 (3)Clock控制 这是在ASIC设计中行之有效的方法之一。如果SoC芯片在正常工作,有很大一部分模块(它们可能是用于一些特殊用途中,如调试Debug、程序下载等)是乖于空闲状态的,这些器件的空运作会产生相当大的功耗。这一部分应使用时钟控制,即clock enable & disable。 (4)RTL级代码优化 与软件相似,不同的RTL(Register Transfer Level,寄存器传输级)代码,也会产生不同的功耗,而且RTL代码的影响比软件代码产生的影响可能还要大。因为,RTL代码最终会实现为电路。电路的风格和结构会对功耗产生相当重要的影响。 RTL级代码优化主要包括: ①对于CPU来说,有效的标准功耗管理有睡眠模式和部分未工作模块掉电。 ②硬件结构的优化包括能降低工作电压Vdd的并行处理、流水线处理以及二者的混合处理。 ③降低寄存电容C的片内存储器memory模块划分。 ④降低活动因子a的信号门控、减少glitch(毛刺)的传播长度、Glitch活动最小化、FSM(有限状态机)状态译码的优化等。 ⑤由硬件实现的算法级的功耗优化有:流水线和并行处理、Retiming(时序重定)、Unfolding(程序或算法的展开)、Folding(程序或算法的折叠)等等基本方法以及其组合。 (5)后端综合与布线优化 既然SoC的功耗与寄生电容的充放电有很大的关系,作为后端综合与布线,同样也可采取一些措施来减少寄存器电容。可以优化电路,减少操作(电路的操作),选择节能的单元库,修改信号的相关关系,再次综合减少毛刺的产生概率。 (6)功耗的精确计算 后端综合与布线工具不但可以根据基本单元提供的功耗参数进行优化,还可以根据这些参数估算出整个SoC的功耗。正因为有这样一些工具,使我们可以精确地知道我们所设计的是否达到设计要求。万一设计功耗不符合总体要求,则可能要求从系统级到物理综合布线都要做出检查与分析,做出可能的改进,尽可能地减少功耗以达到设计要求。 (7)小结 从上面的各种降低以及估算功耗的方法可以看出,SoC系统的拉耗优化涉及到从物理实现到系统实现的方方面面,是芯片设计中一个十足的系统工程。可以说,功耗可以决定一切。 结语 本文首先分析了CMOS集成电路的功耗物理组成,得到了其主要功耗成分。其次,以该主要功耗成分数学表达式为指导,突出了SoC低功耗设计的各种级别层次的不同方法。不管是现在还是将来,该领域的重要性将会日益显著。在下面的一些发展方向还将会有较大的发展: ①实现SoC系统设计的变换以及映射技术的进一步探索。 ②将各种低功耗设计手段按照各性质最佳综合起来,以便使用基于人工智能的技术(如遗传算法和启发式算法等等)来研究。 ③发展以实现低功耗为目的CPU指令程序的改写技术,以将其扩展到复杂SoC系统的设计中。 ④进一步研究应用于SoC低功耗设计的编码和信号表示技术。 ⑤扩展功耗估算模型的数量以覆盖所有的SoC系统模式,等等。 随着便携式和移动计算要求的进一步增长,集成电路—SoC的低功耗设计将变成一个越来越重要且必须面临的问题。它对开发新型电子产品,其意义重大。 相关推荐
表1 CMOS集成电路中主要的耗电类型类 型 公 式 比 率 动态功耗(switching power) Psw=aCVdd2f 70%~90% 内部短路功耗(internal short-circuit power) Pint=IintVdd 10%~30% 静态漏电功耗(static leakage power) Pleak=IleakVdd <1% 总功耗(total power) Ptotal=Psw+Pint+Pleak 100%
表2 常用实现低功耗的各种方法类 型 采用方法 效 果 行为级(系统级) Concurrency memor 几倍 软件代码 软件优化 32.3% 功率管理 Clock控制 10%~90% RTL级 结构变换 10%~15% 综合技术 合成与分解逻辑 15% 综合技术 映射
门级优化20%
20%布局 布局优化 20%
实际上,这一部分与使用的工具有关。与软件部分有相同之处,后端综合与布线同软件的编译差不多。软件编译的结果是产生可执行的机器代码;而RTL的综合与布线是把RTL代码编译成真实的电路。但是,后端综合与布线优化比较编译优化有更好的效果。这是因为一段RTL代码所对应的电路是可以有多种形式的;同时现有些编译器会根据设计者提供的波形,智能地修改电路(前提是最终电路的效果还是一样的),编译器就会进行相关的优化。但是后端综合的优化与RTL级代码优化和时钟控制相比,同样的RTL级与时钟优化所产生的影响要远大于用编译工具所产生的影响。
蓝牙低功耗市场战火热 众大厂争推SoC方案
Arm SoC芯片低功耗设计分享会在深圳成功举办
SOC芯片供电系统简介
SoC设计中的功耗管理问题
低功耗嵌入式系统该怎么设计?
低功耗电路设计方法
低功耗蓝牙怎么低功耗?如何界定
低功耗蓝牙的应用领域
系统进入低功耗模式的系统时钟是什么?
AD,低功耗
ARM超低功耗实体IP对MCU发展有什么影响
Clouder:基于超低功耗SOC芯片的智能手表Turn Key解决方案
NORDIC最新推出ARM内核低功耗蓝牙SOC芯片及ARM内核ANT+SOC芯片
PAN1020蓝牙低功耗SoC收发器
SI3262—高度集成的低功耗SOC芯片
TI推出最新蓝牙低功耗片上系统CC2541,可将功耗锐降33%
nRF52832 SoC低功耗蓝牙芯片
《SoC底层软件低功耗系统设计与实现》基于Linux专门讲解软件低功耗框架和设计的书籍
《SoC底层软件低功耗系统设计与实现》阅读笔记
【书籍评测活动NO.19】 SoC底层软件低功耗系统设计与实现
【启芯】低功耗视频解析
什么是nRF52840低功耗蓝牙技术?
什么是嵌入式系统面向低功耗的协同设计系统?
便携式设备低功耗MCU系统设计方法
动态时钟配置下的SoC低功耗管理 电子资料
单片机低功耗如何减低整个系统功耗?
在低功耗Bluetooth® PEPS系统中添加CAN节点
在低功耗时产生线程调度能唤醒低功耗吗?
基于FPGA实现低功耗系统设计
基于Foundation IP的低功耗IoT SoC实现
基于Kemet PL-N823-01和OnSemi RSL10蓝牙低功耗SoC
处理器在低功耗物联网应用面临什么挑战?
如何使具备蓝牙低功耗技术功能的设备真正的具备低功耗?
如何在低功耗Bluetooth® PEPS系统中添加CAN节点
如何设计超低功耗的嵌入式应用?
如何选择超低功耗MCU
对功耗、散热和电池寿命敏感的片上系统 (SoC) 设计
嵌入式系统中的低功耗设计
无线数据传输系统的低功耗怎么实现?
最新SOC低功耗带学习码接收方案
设计超低功耗的嵌入式应用
超低功耗LoRa集成的LPWAN应用的单芯片SoC - ASR6501
超低功耗的嵌入式应用的实现:降低系统中电池功耗
低功耗蓝牙4.2 SoC
嵌入式系统面向低功耗的协同设计
SoC 系统的低功耗设计
高性能低功耗的SOC平台体系结构
芯海科技最新推出CSU11xx系列超低功耗衡器SoC芯片
芯海科技开发出低功耗SoC衡器计量芯片
德州仪器(TI)推出CC2541蓝牙低功耗片上系统(SoC)
nRF51822:蓝牙低功耗和2.4GHz专利SoC简介
SoC中的低功耗RF设计
SoC中的低功耗RF设计
SoC中的低功耗RF设计解析
SoC低功耗管理
SoC的低功耗设计
高通推低功耗蓝牙SoC 带给蓝牙耳机超长续航
BlueNRG-1蓝牙低功耗系统级芯片(SoC)
C1110FX和C1111FX低功耗片上系统(SOC)设计的低功耗无线应用概述
CC2541蓝牙低功耗芯片片上系统(SOC)解决方案数据手册免费下载
Nordic Semiconductor获得授权许可,在低功耗蜂窝物联网SoC中部署使用CEVA DSP IP
使用低功耗SoC实现微型图像采集系统设计的详细资料说明
如何选择低功耗蓝牙SoC
SOC低功耗电路设计方法
低功耗设计
EB5REB1国产低功耗BLE5.0蓝牙SOC芯片
FSMs低功耗设计
瑞萨电子推出新款低功耗蓝牙SoC DA14592
瑞萨推出其首款集成闪存的双核低功耗蓝牙SoC
评论
查看更多