0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

降低电路漏电功耗的低功耗设计方法

电子工程师 来源:集成电路设计及EDA教程 作者:Horizon00 2020-09-16 16:04 次阅读

概念:

Power/Ground Gating是集成电路中通过关掉那些不使用的模块的电源或者地来降低电路漏电功耗的低功耗设计方法。该方法能降低电路在空闲状态下的静态功耗,还能测试Iddq。

理论:

在电路中的某些模块进入休眠或者空闲模式时,我们可以使用之前讲过的Clock Gating技术来降低它们的动态功耗,但是无法降低它们的静态功耗。而Power/Ground Gating技术可以在它们休眠的时候完全关掉它们的电源从而消除它们的静态功耗。

理想情况下,Power gating可以完全消除电路的静态功耗,可实际电路中Power gating只能完全关掉dynamic的power消耗,而leakage却只会减少,不会消失,因为power gating技术仍需要加入一些Always On的Cell(比如switching cell、isolate cell和retention cell,它们都是一直开启的,它们的电源不能被关断,会带来leakage)。

如下图所示为采用了Power gating的电路动态功耗与静态功耗在active模式以及sleep模式下功耗的变化曲线。

Power gating中用到的几种Cell

接下来将对几种Cell分别介绍。

由于内容非常多,非常详细,所以本推文先介绍第一个--Power Switching Cell。

Power Switching Cell

Power Gating或者Ground Gating相应Switching Cell的选取:

Power Gating -> Header -> PMOS

Ground Gating -> Footer -> NMOS

由于Power Switching Cell是Always On Cell,因此为了降低它上面的功耗,一般采用高阈值MOS管实现。下面的图中MOS管上面黑线加粗表示高阈值器件。

下面给出两种方案各自的特点,优缺点以及两种门控方案在SLEEP模式下哪种功耗更低。

下图是Power Gating方案:

特点:

用PMOS实现的Header,用来控制电源的接通与否。

优点:

比Footer实现的Ground Gating功耗更低,因为Header下方的PMOS(在实际电路中会有很多)体端接Virtual VDD,在SLEEP模式下约为0V,不存在PN节反偏注入电流

缺点:

PMOS驱动能力弱,与Footer相比需要占用更大的面积。

注意:该缺点在先进工艺下已经不存在,由于锗硅工艺的引入,PMOS可能比NMOS驱动还要强一些。由于该缺点已经不存在,因此先进工艺下更多采用Header,也就是Power Gating。

Ground Gating方案:

特点:

用NMOS实现的Footer,用来控制GND的接通与否。

优点:

在之前的老工艺中,相同尺寸的NMOS驱动能力比PMOS要强,因此与Header相比采用Footer的Ground Gating更省面积。

但是在先进工艺中,该优点也逐渐丧失了,原因前面已经解释过了。

缺点:

在SLEEP模式下,漏电功耗比较大。

因为如下:Footer上方的NMOS(在实际电路中会有很多)体端是P衬底,在单阱工艺下只能接GND,在SLEEP模式下NMOS源漏两端的电位都差不多是VDD,此时NMOS存在很大的PN节反偏注入电流。

Power Switching Cell的启动与关闭

Power Switching Cell的个数、分布以及启动、关闭上都有讲究。

这对IR-drop、Timing、漏电流、启动及关闭的速度等都有影响。

另外,所有的Header或者Footer也不能同时一起打开或者关闭,因为这样在电源或者地上会有很大的开关噪声,如下图所示:

为了避免这种现象,目前的集成电路设计中广泛采用如下图所示的Daisy Chain结构,多个Footer或者Header之间插入Buffer,每隔一段时间开启/关闭一组,再隔一段时间开启/关闭另外一组……直到最后所有的Switching Cell开启/关闭为止。

Power Switching Cell的种类与分布

前面我们根据Power或者Ground Gating来将Switching Cell分为两种:Header和Footer。

另外,我们还可以根据Switching Cell控制Cell的形式将它分为两种:Coarse Grain Power Switch Cell和Fine Grain Power Switch Cell。

后者是专门在一些逻辑单元内设计的电源控制逻辑,控制简单,但是面积比较大,如下图所示:

而前者是分立的Switching Cell,可以在版图中控制它们的分布,设计复杂度大一点,但是面积开销比较小,现在广泛采用这种形式。

根据前面讲述的内容,Power Switching Cell在物理版图中的分布有一定的要求。

有列状分布:

还有环状分布:

考虑到前面讲的Daisy Chain结构以及IR-drop等因素,目前广泛采用列状排布。

Power Switching Cell的lib描述

前面讲到,Power Switching Cell有两种,分别为Coarse Grain Power Switch Cell和Fine Grain Power Switch Cell。

下面是一个Coarse Grain Power Switch Cell的Liberty格式描述:

library(《coarse_grain_library_name》) { #library 描述开始

lu_table _template ( template_name ) #电压状态template描述,dc_current组中会使用

variable_1 : input_voltage;

variable_2 : output_voltage;

index_1 ( 《float》, … );

index_2 ( 《float》, … );

}

cell(《cell_name》) { #某个Power Switching Cell描述开始

switch_cell_type : coarse_grain; #Switching Cell类型是coarse_grain,暂时只支持该类型

pg_pin ( 《VDD/VSS pin name》 ) { #声明电源和地的pg_pin格式

pg_type : primary_power | primary_ground; #他们是主电源和主地

direction : input ; #方向是输入

}

/* Virtual power and ground pins use “switch_function” to describe the logic to

shut off the attached design partition */

pg_pin ( 《virtual VDD/VSS pin name》) { #声明内部电源和地,这就是输出电源/地的端口

pg_type : internal_power | internal_ground;

direction: output; #方向是输出

switch_function : “《function_string》”; #定义开断控制功能,例如SLEEP

pg_function : “《function_string》”; #内部电源或地功能与输入的pg_pin一致,对于header switch来说就是premary_power的Pin Name,对于Footer Switch来说就是primary_ground的Pin Name

}

dc_current ( 《dc_current_name》 ) { #定义不同条件下输出Pin的稳定电流值,EDA工具利用该数据计算IR Drop,并进行Switch的优化。

related_switch_pin : 《input_pin_name》; #定义控制开断的Pin

related_pg_pin : 《VDD pin name》; #定义可以被控制开断的电源Pin,如果是Footer Switch则是地Pin

related_internal_pg_pin : 《Virtual VDD》; #定义不会被关闭的内部电源Pin,Footer Switch则是地Pin

values(”《float》, …”); #定义不同状态下的该Cell输出的电流值

}

pin (SLEEP) { #Pin SLEEP定义开始,SLEEP只是举例

direction : input;

switch_pin : true; #表示该输入Pin是switch pin,控制电源/地的开断

/* The acknowledge output pin uses “function” to represent the propagated switching signal

*/

pin(《acknowledge_output_pin_name》) { #定义应答输出Pin开始,完成开断后,与switch pin状态一致,有的Switch Cell可能没有该pin

function : “《function_string》”; #功能定义,应该与SLEEP状态一致

power_down_function : “function_string”; #定义关断后电源状态,如对于Header switch来说可以是!VDD+VSS,而Footer Switch来说可以是!VSS+VDD

direction : output;

} /* end pin group */

} /* end cell group */

Fine Grain Power Switch Cell的Liberty格式描述:

cell(《cell_name》) { #Fine Grain Power Switch Cell都是某个Cell内的一部分,不单独出现

is_macro_cell : true; #定义是不是macro cell

switch_cell_type : coarse_grain | fine_grain; #多数设置为fine_grain

pg_pin ( 《power/ground pin name》 ) { #定义电源信号,primary_是可以断开的,backup_是不会断开的。

pg_type : primary_power | primary_ground | backup_power | backup_ground;

direction: input | inout | output;

}

/* This is a special pg pin that uses “switch_function” to describe the logic to shut

off the attached design partition */

pg_pin ( 《internal power/ground pin name》) { #定义内部电源/地

direction: internal | input | output | inout;

pg_type : internal_power | internal_ground;

switch_function : “《function_string》”;

pg_function : “《function_string》”;

}

pin (《input_pin_name》) {

direction : input | inout;

switch_pin : true | false; #如果是switch pin就是true

}

pin(《output_pin_name》) {s

direction : output | inout;

power_down_function : 《function_string》;

} /* end pin group */

} /* end cell group */

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 集成电路
    +关注

    关注

    5387

    文章

    11519

    浏览量

    361555
  • 静态功耗
    +关注

    关注

    0

    文章

    17

    浏览量

    8941
  • PMOS
    +关注

    关注

    4

    文章

    245

    浏览量

    29546
  • 低功耗设计
    +关注

    关注

    0

    文章

    80

    浏览量

    16157
收藏 人收藏

    评论

    相关推荐

    如何实现EEPROM的低功耗模式

    内容进行擦除和重写。在许多应用中,尤其是在电池供电的设备中,低功耗模式对于延长设备的使用寿命至关重要。以下是实现EEPROM低功耗模式的一些方法: 1. 选择合适的EEPROM类型 选择功耗
    的头像 发表于 12-16 16:54 253次阅读

    低功耗SOC芯片的优势

    性能的同时降低能耗。这对于移动设备尤为重要,因为它们依赖电池供电,且用户对电池寿命有较高要求。 节能技术 :通过使用先进的制程技术、优化的电路设计和智能电源管理,低功耗SOC芯片能够显著减少能耗。 动态电压频率调整 (DVFS)
    的头像 发表于 10-31 14:52 423次阅读

    物联网系统中TCP低功耗产品长连接状态下降低功耗功能的实现方案

    01  概述 TCP相关内容参考文章《物联网行业中TCP通信协议介绍以及如何实现》 02  功耗的组成 低功耗技术就是一系列的降低功耗的技术。 在了解低功耗技术之前,我们必须先了解
    的头像 发表于 09-29 11:50 393次阅读
    物联网系统中TCP<b class='flag-5'>低功耗</b>产品长连接状态下<b class='flag-5'>降低功耗</b>功能的实现方案

    栅极驱动芯片选型低功耗原因

    栅极驱动芯片选型时考虑低功耗的原因主要有以下几点: 1. 降低系统能耗 低功耗的栅极驱动芯片能够显著降低整个系统的待机功耗,这对于需要长时间
    的头像 发表于 09-18 09:20 409次阅读

    一款4644芯片低功耗设计思路解析

    输出并联使用。 功耗是衡量芯片性能的一个重要指标,功耗越低,电子设备的续航时间越长,减少了散热问题,降低能耗。ASP4644单通道工作时,通过拉低RUN引脚使芯片进入关断模式,此时芯片将会处于
    发表于 08-16 14:44

    OPA454如何降低功耗

    opa454 供电+60V/-15V,输出空载悬空,放大倍数5倍,同向放大,输入0~10V正弦波100hz,输出为50v正弦波,发现功耗很大,有降低功耗措施?
    发表于 07-29 06:32

    有没有降低ESp8266功耗方法

    与ESP8266使用UART连接。 目前,我选择的是支持AT命令的固件,目前的问题是ESp8266,开机后电流大约为60mA,有没有降低功耗方法??? 我看到ESP8266保持连接(不发数据)的平均功耗很低啊!
    发表于 07-08 06:30

    国产蓝牙模组 | 低功耗蓝牙应用

    蓝牙技术联盟于2010年推出了蓝牙4.0规范,其中低功耗蓝牙的出现满足了小型电池供电设备进行低功耗无线连接的需求,因此得到广泛应用。本文章将带你深入了解低功耗蓝牙的应用。低功耗蓝牙简介
    的头像 发表于 06-14 08:25 507次阅读
    国产蓝牙模组 | <b class='flag-5'>低功耗</b>蓝牙应用

    上拉电阻如何实现低功耗设计

    上拉电阻有助于降低系统的总功耗,同时保持电路的功能性和稳定性。那么上拉电阻如何实现低功耗设计呢? 以下是上拉电阻实现低功耗设计的几种
    的头像 发表于 05-02 15:00 960次阅读

    OTP低功耗语音芯片的工作原理与产品特性

    OTP低功耗语音芯片的工作原理:在于其独特的电路设计以及先进的制程技术。该芯片采用了先进的低功耗设计策略,包括低漏电晶体管、动态电压调整以及智能休眠模式等,确保在保持高性能的同时实现
    的头像 发表于 04-30 08:06 613次阅读
    OTP<b class='flag-5'>低功耗</b>语音芯片的工作原理与产品特性

    stm32g070怎么调试才能降低功耗

    stm32g070,单芯片的最小系统板使用官方例程进入standy 模式后电量70ua左右,和手册的1,2个ua不符,已经确定是芯片的功耗的,不知道该怎么调试才能降低功耗
    发表于 03-28 06:46

    如何降低LoRa模块的功耗以延长电池寿命?

    一些方法,例如睡眠模式和低功耗设置,但我不确定是否有任何其他方法或技巧可以进一步降低功耗。有人有经验可以分享吗?我需要知道如何在保持通信稳定的同时最大限度地
    发表于 03-01 07:38

    低功耗蓝牙技术的特点 低功耗蓝牙如何实现低功耗

    低功耗蓝牙技术是一种优化的蓝牙技术,专为满足低功耗需求而设计。它通过采用一系列节能措施和技术,实现了更低的功耗消耗,延长了设备的续航时间。
    的头像 发表于 02-07 16:49 2028次阅读

    低功耗设计的几个误区分享

    误区一:我们这系统是220V供电,就不用在乎功耗问题了 点评:低功耗设计并不仅仅是为了省电,更多的好处在于降低了电源模块及散热系统的成本、由于电流的减小也减少了电磁辐射和热噪声的干扰。随着设备
    发表于 01-09 08:04

    一文读懂低功耗蓝牙的应用

    蓝牙技术联盟于2010年推出了蓝牙4.0规范,其中低功耗蓝牙的出现满足了小型电池供电设备进行低功耗无线连接的需求,因此得到广泛应用。本文章将带你深入了解低功耗蓝牙的应用。低功耗蓝牙简介
    的头像 发表于 12-28 08:24 920次阅读
    一文读懂<b class='flag-5'>低功耗</b>蓝牙的应用