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

相关文章

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

如何评价Ubuntu 24.04 LTS? Ubuntu 24.04 LTS新功能亮点和重要变化

《如何评价Ubuntu24.04LTS?Ubuntu24.04LTS新功能亮点和重要变化》Ubuntu24.04LTS即将发布,带来一系列提升用户体验的显著功能,本文深入探讨了该版本的亮... Ubuntu 24.04 LTS,代号 Noble NumBAT,正式发布下载!如果你在使用 Ubuntu 23.

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

hdu 2602 and poj 3624(01背包)

01背包的模板题。 hdu2602代码: #include<stdio.h>#include<string.h>const int MaxN = 1001;int max(int a, int b){return a > b ? a : b;}int w[MaxN];int v[MaxN];int dp[MaxN];int main(){int T;int N, V;s

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态,生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案,则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时,算法停止。 — Choose k successors randomly, biased towards good ones — Close

集中式版本控制与分布式版本控制——Git 学习笔记01

什么是版本控制 如果你用 Microsoft Word 写过东西,那你八成会有这样的经历: 想删除一段文字,又怕将来这段文字有用,怎么办呢?有一个办法,先把当前文件“另存为”一个文件,然后继续改,改到某个程度,再“另存为”一个文件。就这样改着、存着……最后你的 Word 文档变成了这样: 过了几天,你想找回被删除的文字,但是已经记不清保存在哪个文件了,只能挨个去找。真麻烦,眼睛都花了。看