完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
行为逻辑层次低功耗设计 前言:随着集成电路制造技术的快速发展,未来单一硅片上集成的晶体管数将超过 lO亿以上。这使得功耗问题变得越来越突出,将成为影响电路性能的关键问题。 关键词:低功耗设计 SOC 逻辑层次设计 摘要:由于集成电路的集成度增大导致功耗成倍增长,但是在整个电路的设计中还是有很多办法来降低整个系统功耗。本文主要从嵌入式处理器的行为逻辑层次上来阐述如何降低功耗,包括采用超标量结构,采用门控时钟,合理的系统划分等。同时还介绍了大功耗带来的问题以及我们可以从哪些层次来优化系统的功耗设计。 (一)功耗增大引发的问题 1)功耗密度的增加,将引起芯片温度升高,影响电路的可靠性。功耗增加所 引起的芯片温度升高将引发电迁移、热载流子等一系列问题,而且使连线电阻变 大,线延时增加,时延故障变得严重。一般来醚芯片温度升高10。C,器件可靠性 将降低一半。 (2)为了避免芯片发热,需要花费成本来解决芯片封装和冷却问题。当封装从 塑料变成陶瓷时,封装价格将增加4倍。当传统的空气散热技术不能满足散热要 求时,即当芯片的功耗大于50W时,芯片需要添加散热风扇。而其它的散热和封 装的费用都更加昂贵。 (二)低功耗设计层次 由于功耗对应用场合的限制,系统设计已经从开始的不考虑功耗到先优化性 能再优化功耗,直到现在的先设置功耗上限再优化性能。与SOC的设计流程相对应,低功耗设计可以贯穿于从系统设计,软件设计,逻辑设计,电路实现直到器件/I艺级的整个数字系统设计流程。每个级别可以达到的低功耗设计效果不同,抽象层次越高则优化的空间越大,效果也越明显。对于电路的平均翻转率,通过软硬件分工有可能降低电路30%的翻转次数,而通过逻辑的重新安排却只能降低5%的翻转次数。在不同的低功耗设计层次,考虑的重点也不相同。比如说只有在工艺级设计时,设计者才考虑通过扩散区的掺杂浓度来影响阈值电压。 近年来,降低功耗的技术逐渐从电路层向结构层,从硬件向软件转移。一般 来说,从系统层次到电路实现层次,其功耗优化由系统设计者决定,器件/212艺 层由半导体工艺决定 (1)系统设计层 系统设计层次确定系统对性能、功耗的需求,进行软硬件划分。 在这一层作出的功耗优化主要是根据系统功能说明进行软硬件协同仿真,根 据最佳的性能/功耗比来确定硬件功能和软件需求。 (2)软件设计层 软件层次产生最终在系统硬件上执行的代码,在这一层次作出的功耗优化包 括: 1.程序算法决定了程序复杂度和执行周期。在确定算法时,对所需算法 的复杂性、并发性进行分析,尽可能利用算法的规整性和可重用性,减少所需的 运算操作和运算资源。 2.编译器可以影响功耗。把算法转换为可执行代码时,尽可能针对特定的硬 件体系结构进行优化。比如由于访问寄存器比访问内存要省功耗,可以通过合理 有效地利用寄存器来减少对内存的访问。还有考虑cache的组织结构来减少cache 失配等。 3.在操作系统中充分利用硬件提供的节电模式,比如睡眠、挂起等。另外随 着动态电压缩放技术的出现,操作系统可以通过合理地设置工作 状态来减少功耗。 (3)逻辑设计层 逻辑设计层次确定系统具体的硬件结构,包括从确定存储器容量等宏结构到 用状态机实现的微结构,在这一层作出的功耗优化包括: 1在满足系统功能要求的前提下,对系统的供电电压和系统时钟作出规划。 2合理安排系统内各模块的通信。 3优化IP模块的配置,优化处理器指令集。 4通过开发硬件的并行性以及功能单元的流水执行来实现低功耗结构。 5采用低功耗的单元电路——所需的基本器件少,单元内部跃迁少。 6对系统中的空闲单元模块关断电源或时钟[3]。 (4)电路实现层 电路实现层次把逻辑描述转化为电路,并在版图上实现。在这一层作出的功 耗优化包括: 1器件选择,利用自动调节门的尺寸来实现低功耗设计。 2通过逻辑优化减少开关活动性,减少毛刺。或者对开关活动性高的节点、 连线合理配置。 3合理的布局布线,减少线间电容.。 4优化时钟和各总线的负载。 (三)超标量结构 超标量结构在指令界面上保持与RISC结构兼容,RISC指令集的主要特点是 指令种类少,寻址方式少,指令格式少而且长度一致;寄存器资源丰富,大多数 指令面向寄存器操作:完全的硬连线控制,或仅使用少量的微程序;对指令系统 采用优化的编译程序,将一些功能的完成从执行时间转移到编译时间。这些特点 使得RISC机器的指令系统和相关译码机制比那些采用微程序的复杂指令系统的 计算机(CISC)简单得多,从而在功耗上明显处于优势。 (四)门控时钟控制 在RISC处理器中,时钟是跳变次数最多的信号,同时时钟信号大量分布于 处理器结构中,因此时钟跳变所导致的功耗占了整个系统功耗的很大比例。通过 降低时钟工作频率的方法来降低时钟功耗不可行,因为降低时钟频率会降低系统 的性能,而且处理器完成工作任务的总能耗还是不变的。但是可以利用门控时钟 来切断一部分时钟网络,从而达到节省功耗的目的。 由门控时钟控制的触发器所接受的时钟信号己不再是每个循环都作用的系 统主时钟,而是主时钟的衍生时,在某些特定条件下,它可以被完全关断, 这样带来的好处是: 1主时钟的负载和时钟网络中的缓冲数目减少 2触发器在空闲周期不接受时钟触发 3在衍生时钟不触发的空闲周期内所产生的冗余态可使触发器的激励函数简 化 (五)合理的系统划分 动态降低功耗设计的出发点是通过增加有限的逻辑来实时地降低功耗。如果 所增加的动态逻辑过于复杂,那么其自身增加的功耗就会抵消所降低的功耗,这 也是动态降低功耗设计的取舍标准。 为克服控时钟的缺点,可以采用粗粒度的系统设计方法。门控时钟的应用 并不拘泥于对每个触发器的控制,而是从大处着眼,控制系统中较大的功能块。 因为从逻辑角度来说,功能块统一实现一部分功能,所以在内部具有较强的关联 性,因此其内部逻辑要么同时工作,要么同时空闲,这样,只需要一个门控单元 就可以控制多个触发器了。在门控信号有效时,大大减少了时钟树上的负载。另 外还大大减少了原本所需的面积。利用粗粒度的系统设计方法,还可以把门控单 元作为时钟树的一部分,自动进行时钟树的平衡,减少skew,保证时序电路对 时序的要求。 所以要利用门控时钟,必须在系统设计时采用模块化设计方法,在设计的开 始阶段就考虑合理的功能块划分。但是模块的划分应遵循一定的原则。 原来的处理器设计是采用一个控制通路和数据通路,这样在逻辑上非常清晰 明了,但是并不利于低功耗设计。当输入信号变化时,整个控制通路和整个数据 通路都会受到影响。而且所有控制通路都必须~直处于工作状态来提供数据通路 正确的控制信号。 通过合理的划分,可以使大量的电路活动都局限在单个控制子模块内部,只 有少数发生在子模块之间。这些控制子模块在总体功能上可以完成原控制通路的 功能,而子模块在规模上都小于原控制通路。 |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 19:30 , Processed in 0.568894 second(s), Total 54, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号