数字IC(SoC)低功耗设计方法总结

本文深入探讨了数字集成电路低功耗设计的重要性,包括功耗类型的解析,如动态功耗和静态功耗,以及低功耗设计的关键技术,如多阈值工艺、电源门控、体偏置等。此外,还介绍了门级优化技术、动态低功耗技术及RTL级设计方法。

目录

前言

一、为什么需要低功耗设计

二、功耗的类型

1、动态功耗

2、静态功耗

3、CMOS工艺的发展与功耗的变化

4、SoC中的主要动态功耗

三、低功耗设计方法

四、低功耗技术

1、静态低功耗技术

(1)多阈值工艺(Multi-Vt Design)方法

(2)电源门控(Power Gating)方法

(3)体偏置(Body Bias)

2、动态低功耗技术

(1)多电压域(Multi-Voltage Domain)

(2)预计算

(3)门控时钟(Clock Gating)

3、门级优化技术

(1)毛刺的消除

(2)逻辑级优化

(3)物理级优化

(4)控制输入向量

4、补充:RTL级的一些低功耗设计方法

参考书籍

总结


前言

今天更新一篇数字IC低功耗设计方法总结。

一、为什么需要低功耗设计

1、便携式设备——电池寿命。

2、桌面系统——高功耗。

3、高功耗对系统的影响:(1)系统可靠性;(2)系统性能;(3)系统生产及封装成本;(4)系统散热成本。

二、功耗的类型

https://i-blog.csdnimg.cn/blog_migrate/2b3939686b66d29049ed72c3fe025a36.png

式中,C为结点电容,Nsw为单时钟内翻转晶体管数目,f为系统工作时钟频率,VDD为供电电压,Qsc为翻转过程中的短路电量,Ileak为漏电流。

1、动态功耗

动态功耗是由翻转电流和短路电流引起的功耗,其中翻转电流引起的功耗称为翻转功耗,短路电流引起的功耗称为短路功耗,如下图所示。翻转功耗与传输的数据相关(是否有0到1或1到0的变化),翻转功耗在当前的设计电路中仍然占主要部分,短路功耗在动态功耗中所占比例较小。

2、静态功耗

在CMOS电路中静态功耗主要是由漏电流引起的功耗。

如下图所示,漏电流主要由以下几部分组成:(1)PN结反向电流I1(PN-junction Reverse Current);(2)源极和漏极之间的亚阈值电流I2(Sub-threshold Current);(3)栅极漏电流,包含栅极和漏极之间的感应漏电流I3(Gate Induced Drain Leakage);(4)栅极和衬底之间的隧道漏电流I4(Gate Tunneling)。

为了满足工作频率越来越高的需求,就会降低晶体管的阈值电压Vt,使得晶体管能够高速翻转。但是,如果Vt太低,晶体管不能完全关断,这将产生很大的静态功耗。

3、CMOS工艺的发展与功耗的变化

(1)随着工艺的进步,电源电压随之减小以降低动态功耗,同时降低了阈值电压Vt,导致了系统静态功耗的增加;

(2)随着工艺的进步,系统的工作电压降更低,同时带来更低的晶体管动态功耗,但是由于时钟频率的提高和晶体管数目的增多,导致系统的总功耗将越来越大;

(3)随着工艺的改进,系统的功耗在不断增加,同时待机功耗和工作功耗越来越相近,这主要是由电路中漏电流增大引起的。

总结:随着工艺的进步,晶体管的尺寸将越来越小,同时带来的是更低的工作电压和更大的漏电流。工作电压的降低减小了晶体管的动态功耗,但是由于主频的提高及晶体管数目的增多,系统的总功耗越来越大。由于漏电流的增大,静态功耗在系统总功耗中所占比例不断增大。

4、SoC中的主要动态功耗

输入/输出;时钟树;处理器;存储器。

三、低功耗设计方法

各层次优化方法及优化效果:

四、低功耗技术

1、静态低功耗技术

(1)多阈值工艺(Multi-Vt Design)方法

低阈值的标准逻辑单元:速度快、漏电流大;

高阈值的标准逻辑单元:速度慢、漏电流小。

一种多阈值工艺的设计流程如下图:

总结:在设计中可以在关键路径上使用低阈值的标准逻辑单元来优化时序,在非关键路径上使用高阈值的标准逻辑单元来优化漏电流。

优点:A可以大大减少系统的静态功耗;

           B没有任何面积开销,工艺库设计是将两种阈值库中的相应单元的面积设计成一样,这样可以方便替换。

(2)电源门控(Power Gating)方法

如上图所示,电源开关单元(Power Switch Cell)中的高阈值MOS管作为电源闸门,用来将低阈值电源和地隔离开。

在正常工作状态,Sleep信号为低电平,高阈值MOS管处于导通状态;当处于睡眠状态时,Sleep信号为高电平,切断电源,并且由于采用了高阈值MOS管作为开关,可以有效地减少漏电流。

(3)体偏置(Body Bias)

晶体管阈值电压随体偏置而变化。在工作模式下,MOS管的体偏置为0,MOS管处于低阈值状态,翻转速度快。在等待模式下,MOS管的体偏置为反向偏置,处于高阈值状态,漏电小。

注意:MOS管的体偏转需要时间,电路有等待模式转为工作模式的时间较长。

2、动态低功耗技术

(1)多电压域(Multi-Voltage Domain)

对于多电压域设计,要在不同的电压域之间使用一些电平转换单元(Level Shifter),将输入电压范围转换成输出需要的不同电压范围。

如果不同电压与之间的驱动信号与接受信号之间的距离很长,需要插入特殊的驱动单元(Repenter)来增强信号的驱动能力;如果不同的电压域可以单独断电(MV with Power Gating),还要考虑添加保持寄存器(Retention Register)和电压隔离单元(Isolation Cell)。

(2)预计算

预计算是指通过判断输入向量在满足一些特定条件时将输入释放或屏蔽。

上图所示为一个简单的停时钟电路的例子。在遇到不需要计算的指令的时候,译码逻辑单元就会使输出EN_B信号为0,时钟将会被关闭,寄存器的值保持不变,ALU不需要进行无用的计算,因而减少了系统的功耗。

(3)门控时钟(Clock Gating)

                     

上图所示的门控时钟可能会产生毛刺。

     

使用锁存器的门控时钟可以避免毛刺。

 

上图为门控时钟的可测性设计,在测试模式下,时钟的门控时钟单元将被旁路。在门控时钟结构中,无法检测锁存器使能端Stuck-at-0的故障,因此需要用功能测试去覆盖此类故障。

在布局时将门控时钟电路的部件摆放在一起,并摆放在时钟源GCLK附近,停掉时钟后,整个时钟树上的缓冲器(CTS)和时钟树驱动的模块都停止了翻转。通常SoC设计中,门控时钟单元会被做成一个硬核或标准单元。

3、门级优化技术

(1)毛刺的消除

这里的毛刺是指由于电路中信号的传输延迟引起的不必要的翻转,下图为两个消除毛刺前后的电路示意图。由于信号A和信号B的传输延迟不同,信号C上将会产生毛刺,插入缓冲器后,信号C上面的毛刺被消除了。

(2)逻辑级优化

这里讨论门级优化,也就是基于网表的优化。基于网表的功耗优化是一种与工艺无关的优化。

A调整门的大小

可以在那些非关键路径上使用一些比较小的门,这样可以减小输入电容,从而减小他们前驱的翻转电流,降低了电路的翻转功耗。也可以增大负载比较大的门,这样可以增加他们的输出斜率,减少短路电流,降低了电路的短路功耗。

B引脚的重分配

可以使用负载电容低的引脚去连接快速翻转的一些信号。这样可以减少高翻转信号的负载电容,降低了系统的动态功耗。

C重排序操作

电路中b信号是翻转率比较大的信号,在排序前的电路中,b的每次翻转要驱动4个门,在排序后的电路中,b的每次翻转只需要驱动2个门,显然有效地降低了系统的动态功耗。下图所示为排序前后的两个电路模块。

 

D重新映射

对于电路中的信号a,重新映射之前要驱动两级的与非门,在重新映射之后,只需要驱动一级优化的逻辑门AOI,显然降低了系统的动态功耗。下图所示为重新映射前后的两个电路模块。

(3)物理级优化

物理级优化主要有以下几种方法:使用低功耗的库;使用低功耗的布局规划;基于功耗优化的布局规划;通过布局布线来减少毛刺;在优化布局的时候调整缓冲器和连线的大小;调整晶体管的大小减少负载电容。

(4)控制输入向量

系统在睡眠状态下,控制输入向量可以明显减少系统的漏电流(选择最小漏电流的向量作为组合逻辑的输入)。

4、补充:RTL级的一些低功耗设计方法

(1)并行结构:一定程度可以减低某一区域的频率,从而可能降低功耗。

(2)流水结构:路径长度缩短为原始路径长度的1/M。这样,一个时钟周期内充电/放电电容变为C/M。如果在加入流水线之后,时钟速度不变,则在一个时钟周期之内,只需要对C/M进行充放电,而不是原来对C进行充/放电。因此,在相同的速度要求下,可以采用较低的电源电压来驱动系统。

(3)优化编码:通过优化编码来降低开关活动,如对于一些状态转移固定的状态机,比如序列生成之类的,可以采用格雷码代替二进制编码。

(4)操作数隔离:原来:在某一段时间内,数据通路的时钟是无用的,则将它的输入置成某个固定值,这样数据通路部分没有翻转,功耗会降低。例如APB总线在下一次传输来临之前,地址/控制信号可以不变,以此来降低功耗。

参考书籍

SoC设计方法与实现(第3版)——郭炜

总结

今天更新一篇数字IC低功耗设计方法,参考的内容基本都是郭老师的书的第11章,如果有同学想要这本书的电子版,可以在留言区输入邮箱或私信我。

内容概要:本文针对区域综合能源系统(RIES)的多目标优化调度问题,提出了一种基于NSGA-II多目标进化算法并计及电-热-气综合需求响应(IDR)的优化模型。研究构建了一个涵盖电力、热力与天然气等多种能源形式的RIES集成模型,旨在协同优化“系统运行成本最小化”与“用户用能满意度最大化”这两个相互冲突的目标。通过在Matlab环境中实现NSGA-II算法,成功求解出一组代表最优权衡关系的帕累托前沿解集,为决策者提供了多样化的调度方案选择。文中深入探讨了电-热-气综合需求响应的精细化数学建模方法,并将其作为一种关键的柔性调节资源融入优化框架,有效实现了负荷侧的削峰填谷,提升了能源的整体利用效率与系统运行的经济性。研究通过详实的仿真算例验证了所提模型与算法的有效性和优越性,结果表明,引入综合需求响应机制能够显著降低系统综合运行成本,同时有效改善用户的用能体验。; 适合人群:具备一定电力系统、优化算法和Matlab编程基础的研究生、科研人员及从事能源系统规划与优化工作的工程师。; 使用场景及目标:① 学习和复现基于NSGA-II的多目标优化在综合能源系统中的应用;② 研究电-热-气综合需求响应的建模方法及其在系统调度中的作用;③ 获取可用于科研和教学的Matlab代码实例。; 阅读建议:此资源提供了完整的Matlab代码实现,读者应结合文档内容,重点理解综合需求响应的建模逻辑、多目标优化问题的构建以及NSGA-II算法的具体实现步骤,并通过运行和调试代码加深对区域综合能源系统优化调度核心思想的理解。
内容概要:本文围绕分布式光伏储能系统的优化配置方法展开研究,重点探讨了在高比例可再生能源接入背景下,如何通过Matlab代码实现对光伏与储能系统的协同优化配置。研究综合考虑了分布式电源、储能设备以及多渗透率电动汽车接入对配电网的影响,构建了一个涵盖技术、经济与运行约束的多目标优化模型。该模型以提升新能源消纳能力、增强配电网承载能力、降低系统运行成本为核心目标,采用粒子群优化算法(PSO)等智能优化算法进行求解,并通过典型算例仿真验证了所提方法的有效性与实用性。文中不仅提供了完整的Matlab代码实现路径,还系统阐述了模型构建逻辑、算法设计流程及结果分析方法,为相关领域的科研与工程实践提供了可复现的技术参考。; 适合人群:具备一定电力系统基础知识和Matlab编程能力,从事新能源、储能系统、智能电网、电动汽车等领域研究的研发人员及高校研究生。; 使用场景及目标:①应用于分布式光伏与储能系统的规划与设计阶段,实现容量与位置的协同优化配置;②评估高渗透率电动汽车接入对配电网承载能力的影响,并制定相应的优化对策;③提升配电网对可再生能源的接纳能力与运行经济性,支撑新型电力系统的建设与发展。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,深入理解优化模型的构建逻辑、求解算法的实现细节以及仿真结果的分析过程,并尝试在不同参数设置和场景条件下进行仿真实验,以增强对系统运行特性的认知与调控能力。
内容概要:本文提出了一种事件触发驱动的微电网分布式二次协同控制策略,旨在实现孤岛运行模式下微电网的电压与频率精确恢复以及分布式电源间有功/无功功率的精准按比例分配。该策略基于多智能体系统框架,设计了分布式控制协议,通过各节点仅与邻居交换局部信息的方式,避免全局通信依赖,有效降低了通信负担。引入事件触发机制,仅当系统状态偏差超过预设阈值时才进行信息更新与传输,显著提升了通信资源的利用效率,减少了不必要的控制更新。在Simulink中建立了包含多个分布式电源的微电网仿真模型,对所提控制策略进行了全面验证。仿真结果表明,该策略能够快速有效地恢复电压和频率至额定值,实现功率的均衡分配,并展现出优异的动态响应性能、抗干扰能力和系统鲁棒性,同时证明了事件触发机制在保证控制性能的前提下,能大幅减少通信次数,节约系统资源。; 适合人群:具备电力系统自动化、分布式控制理论、微电网运行与控制等相关专业知识的研究生、高校科研人员以及从事新能源发电、智能配电网、微电网工程应用的技术研发工程师。; 使用场景及目标:①用于研究和解决孤岛微电网中多分布式电源的电压频率稳定与功率协同分配问题;②为设计低通信开销、高效率的分布式能源控制系统提供理论依据和技术方案;③适用于需要在保证控制性能的同时优化通信资源使用的微电网二次控制算法开发与仿真验证。; 阅读建议:建议读者结合提供的Simulink仿真模型,深入剖析控制协议的数学推导与实现逻辑,重点理解事件触发条件的设计原则及其对系统稳定性与收敛性的影响,可通过与传统的周期性通信控制方式进行对比仿真,直观体会事件触发机制在降低通信频率和节能方面的显著优势。
评论 225
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值