ic基础|功耗篇01:影响芯片实际表现的重要指标——功耗的分类

2024-04-29 21:44

本文主要是介绍ic基础|功耗篇01:影响芯片实际表现的重要指标——功耗的分类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是数字小熊饼干,一个练习时长两年半的ic打工人。我在两年前通过自学跨行社招加入了IC行业。现在我打算将这两年的工作经验和当初面试时最常问的一些问题进行总结,并通过汇总成文章的形式进行输出,相信无论你是在职的还是已经还准备入行,看过之后都会有有一些收获,如果看完后喜欢的话就请关注我吧~谢谢~

随着芯片集成度和性能的不断提升,芯片的功耗也成为了影响芯片性能的重要指标,过高的功耗对芯片有着致命的影响,会导致系统的可靠性,随着芯片的温度不断上升,芯片的性能也会会受到影响,因此对于一些芯片来说,需要增加散热设备(例如CPU上的风扇),这些散热设备又会导致成本的提升。因此,如何降低芯片的功耗,也成为的ic设计人员关注的重点之一。

一、功耗的分类

俗话说知己知彼,百战百胜,既然我们的目标是降低芯片功耗,那么我们首先需要对芯片上产生功耗的原因及其分类进行了解。

芯片的功耗主要由以下部分组成:

  • 浪涌:为器件上电时产生的最大瞬时输入电流,在应用中也称为启动电流。

  • 动态功耗:由负载电容充放电时引起的功耗。它还可以细分为:

    翻转功耗:是由翻转电流所引起的功耗,它也是数字电路要完成功能所必须消耗的功耗,因此也称为有效功耗。

    短路功耗:是由于CMOS在翻转过程中PMOS和NMOS管同时导通所消耗的功耗,因此也被称为无效功耗。

  • 静态功耗:由漏电流引起的功耗。它由以下几部分组成:

    PN结反向电流(PN-junction Reverse Current)。

    源极和漏极之间的亚阈值漏电流。

    栅极漏电流:包括栅极和漏极之间的感应漏电流。

    栅极和衬底之间的隧道漏电流。

芯片的总功耗可使用下式计算:
在这里插入图片描述

二、影响功耗的因素

在了解了各类功耗的定义后,我们可以进一步总结出以下几点影响功耗的因素:

MOS管的开关活动/电路工作频率:

当MOS管的输入信号Vin发生变化时,输入信号上升/下降的转换需要一定的时间,进而NMOS和PMOS的同时导通使得在VDD和VSS之间出现了一条直流通路,进而产生了短路功耗。如下图所示:
在这里插入图片描述
此外,如果输入信号的转换速率越慢的话,短路电流持续的时间也会越长,进而产生更多的短路功耗。

除了会造成短路功耗外,当MOS的输出进行切换时,其负载电容Cload需要进行相应的充放电,例如:

  • 输出信号从低到高的转换:电容Cload通过PMOS管充电时,它的电压从0升至VDD,此时从电源上吸取了一定的能量,这些能量一部分会浪费在PMOS上,其余的一部分才会放在负责电容上;
  • 输出信号从高到低的转换:负载电容Cload之前的储存能量会被释放,其储存的能力会被消耗在NMOS管中。
    在这里插入图片描述
    从以上两个方面可知,MOS管的开关频率将影响翻转功耗和短路功耗。而MOS管的开关频率,实际上与CMOS电路的工作频率息息相关,因此,可以认为动态功耗的大小与电路的工作频率成正比。

电源电压:

电源电压以多种方式影响功耗。它会影响功耗的所有组成部分,如:

  • 存储在负载电容上的电荷与电源电压的平方成正比。因此,更高的电源电压意味着:在充电过程中,负载电容上存储的电荷更大;在放电过程时,也会有越多的存储电荷从VDD流到地。而在充电和放电过程中都会浪费大量的功耗,因此,翻转功耗与电源电压的平方成正比。

  • 当由于输入转换而产生瞬时短路时,该短路路径的晶体管表现得像电阻元件。因此,流经这些晶体管的短路电流将取决于电源电压。Vdd的值越高将意味着电流越高。因此,短路功率与电源电压的平方成正比。

-流经反向偏置结(即关断晶体管)的漏电流取决于电源电压。更高的电源电压意味着更高的漏电流。

阈值电压:

为了满足工作频率越来越高的要求,晶体管的阈值电压Vt不断降低,从而使得晶体管能够高速翻转。但是阈值电压的降低导致了晶体管不能完全关断,漏电流也越来越大,从而静态功耗在系统总功耗的占比也不断增大。

器件特性:

器件特性也会影响功耗,例如:具有较高的电阻的器件,其短路电流也会越小。而静态漏电流也与器件的特性相关。

三、总结

在了解动态功耗和静态功耗的成因之后,我们设计人员就可以围绕功耗的成因进行“对症下药”,通过降低电压、降低工作频率、提高阈值电压、使用电源门控和时钟门控的方法降低功耗,这些方法被我们称为低功耗技术,这也是我们下一篇文章主要介绍的内容。

如果你喜欢这篇文章的话,请关注我的公众号-熊熊的ic车间,里面还有ic设计和ic验证的学习资料和书籍等着你呢~欢迎您的关注!

这篇关于ic基础|功耗篇01:影响芯片实际表现的重要指标——功耗的分类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/947227

相关文章

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Java 枚举的基本使用方法及实际使用场景

《Java枚举的基本使用方法及实际使用场景》枚举是Java中一种特殊的类,用于定义一组固定的常量,枚举类型提供了更好的类型安全性和可读性,适用于需要定义一组有限且固定的值的场景,本文给大家介绍Jav... 目录一、什么是枚举?二、枚举的基本使用方法定义枚举三、实际使用场景代替常量状态机四、更多用法1.实现接

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

Java Stream.reduce()方法操作实际案例讲解

《JavaStream.reduce()方法操作实际案例讲解》reduce是JavaStreamAPI中的一个核心操作,用于将流中的元素组合起来产生单个结果,:本文主要介绍JavaStream.... 目录一、reduce的基本概念1. 什么是reduce操作2. reduce方法的三种形式二、reduce

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

Java的"伪泛型"变"真泛型"后对性能的影响

《Java的伪泛型变真泛型后对性能的影响》泛型擦除本质上就是擦除与泛型相关的一切信息,例如参数化类型、类型变量等,Javac还将在需要时进行类型检查及强制类型转换,甚至在必要时会合成桥方法,这篇文章主... 目录1、真假泛型2、性能影响泛型存在于Java源代码中,在编译为字节码文件之前都会进行泛型擦除(ty