芯片的PPA-笔记
写在前面:这个仅记录自己对芯片PPA的一些思考,不一定正确,还请各位网友思辨的看待,欢迎大家谈谈自己的想法。
1 此次笔记的起因
记录的原因:自己在整理这段时间的功耗总结,又看到工艺对功耗的影响,并联想到买电子产品时会看到芯片采用多少nm的工艺的宣传,所以给自己一个记录,方便后期自我更正。
最近在分析功耗,除了工艺不同外,其它均相同,22nm的总体功耗比55nm的小了很多,动态功耗小了5倍左右,但静态功耗却增加了6倍左右。在55nm时,动态功耗几乎是静态功耗的快40倍了,然而在22nm是,静态功耗几乎快和动态功耗一样了。就上网查了一下,看了下面的链接(不对链接内容做任何评价),就有感而发写了这个,希望广大网友看见这个感想中不对的地方进行批评指正。
先进工艺的硬伤 -- leakage - 后端讨论区 - EETOP 创芯网论坛 (原名:电子顶级开发网) -
2 个人从用户角度理解芯片的PPA
PPA是芯片三个重要的数据,power,performance,area。这三个数据对用户的影响是什么呢?power就是芯片消耗的功耗,最直观的感受就是电子设备充一次电能用多长时间,芯片的功耗越小,充相同的电量,使用的时间越长。performance就是芯片的性能,会影响芯片的响应速度,性能越好,响应速度越快,就比如说在手机上点击视频快进,点下去就会实时快进,如果点下去明显感觉慢了几秒才开始快进,这就是性能不好的表现,那就很会影响使用时的体验。area则是面积,直观来说会影响电子设备的面积,体积和重量。
作为用户来说,功耗越小越好,这样充一次电就能用很长时间;性能当然是快好,不要有明显的延迟。那么面积呢?是不是越小越好?这个得分情况讨论,如果是交互的显示界面,则并不是越小越好,比如说手机屏幕,不能太小,太小要么显示的内容少,要么显示的内容特别小。但除了显示交互部分外,其他的芯片当然是越小越好,越小意味着越轻。然而这三个参数不是独立的,不可能同时趋近于极限,即面积不可能无限小到0,功耗不可能小到0,性能不能无限好到没有延时。这三个参数是一个平衡的抉择。对于用户来说,也不是非要各个参数都到极限最优。面积在合理的范围内就行,不要拿个手机还像以前搬一个大哥大一样;关于性能,延时1ps和延时1ns,延时1ms对用户来说体验是一样的。关于功耗,这个就不一样了,在相同的电量下运行相同的功能,一个能跑10天,一个只能维持5天,这就差距大了。
所以功耗这个参数对产品来说是很重要的,产品的功耗来源于内部的芯片、电路的功耗。因此分解到芯片的功耗需求是很重要的。
对于芯片的研发人员,会尽最大努力去实现PPA的最优平衡。对于减小功耗的其中有一种方法就是使用先进工艺。
Q1:如果在面积满足要求的情况下,为了优化功耗,需要使用先进工艺吗?
总的电能为P,芯片的静态功耗为,动态平均功耗为
,在什么情况下使用先进工艺对用户使用更又好呢?比如充满一次电,芯片开启后一天24小时都有静态功耗,每天只有5小时存在动态功耗,直到芯片把电耗完为止。这种情况下是不是要考虑5小时内动态功耗的减小是否赶得上24小时内静态功耗的增加。如果赶不上,换先进工艺纯粹应该就是噱头,未变好,反变坏。
所以作为电子产品的用户来说并不是所有电子产品的芯片工艺越先进越好。如果我是使用矿机的用户,那核心芯片必须上先进工艺,但我是电子广告牌的用户,那就不必要求先进工艺了。
3 作为研发者对PPA的理解
作为芯片设计者,在研发时需要考虑怎样用最少的电路实现所需的功能和性能,电路少了功耗相应也会减少,出错的概率也会小。
不论是SOC中的IP设计者还是数模混合中的数字设计工程师,均需要对自己所负责的模块进行PPA的优化,这样才能有助于整颗芯片在PPA方面达到最优平衡。这个部分后续有时间再整理……
作为SOC的系统架构师需要考虑的是怎样系统架构的设计,即系统调度布局,比如在SOC设计中,matrix怎样选择和设置合理?多少memory合理?用过少个CPU/MCU更好?系统架构如何更优?(这些不明白的地方先记到这里吧……)
作为芯片研发中的功耗分析者,不仅仅要看场景case的功耗,分析优化场景功耗(可以参考如下链接: ptpx功耗分析——分析功耗报告-CSDN博客);更要理解实际中芯片的应用,从顶层去考虑功耗优化,最好从芯片的立项开始就参与,这样能更好的理解芯片的实际应用,各个模块之间的相互关系,这样才能站在架构层去思考功耗优化。(架构层面的后面捋清楚后在写笔记吧……)
相关文章:
芯片的PPA-笔记
写在前面:这个仅记录自己对芯片PPA的一些思考,不一定正确,还请各位网友思辨的看待,欢迎大家谈谈自己的想法。 1 此次笔记的起因 记录的原因:自己在整理这段时间的功耗总结,又看到工艺对功耗的影响&#x…...
2024阿里巴巴全球数学竞赛决赛中的数列题解析(分析与方程方向第4题)
早点关注我,精彩不错过! 上周给大家聊了一道有LLM背景的阿里数赛题,详情请戳: 2023阿里巴巴全球数学竞赛决赛中的LLM背景题解析(应用与计算数学部分第2题) 看起来大家还比较喜欢看这种具体问题求解和思路分…...
学java的第3天 后端商城小程序工作
1.数据库的大坑 特殊字段名 ’我的图片表中有一个字段是描述我写成desc了,正好是mysql中的关键字 就不能使用了 2.后端编写 2.1可以把请求分开 在商品浏览页中 只显示商品的大致信息 当用户再点击其他按钮时在发出请求 2.2把请求合并 把数据整合到一起 利用ass…...
DevOps实战:使用GitLab+Jenkins+Kubernetes(k8s)建立CI_CD解决方案
一.系统环境 本文主要基于Kubernetes1.21.9和Linux操作系统CentOS7.4。 服务器版本docker软件版本Kubernetes(k8s)集群版本CPU架构CentOS Linux release 7.4.1708 (Core)Docker version 20.10.12v1.21.9x86_64CI/CD解决方案架构图:CI/CD解决方案架构图描述:程序员写好代码之…...
Apache Seata配置管理原理解析
本文来自 Apache Seata官方文档,欢迎访问官网,查看更多深度文章。 本文来自 Apache Seata官方文档,欢迎访问官网,查看更多深度文章。 Apache Seata配置管理原理解析 说到Seata中的配置管理,大家可能会想到Seata中适配…...
深入理解C# log4Net日志框架:功能、使用方法与性能优势
文章目录 1、log4Net的主要特性2、log4Net框架详解配置日志级别 3、log4Net的使用示例4、性能优化与对比5、总结与展望 在软件开发过程中,日志记录是一个不可或缺的功能。它可以帮助开发者追踪错误、监控应用程序性能,以及进行调试。在C#生态系统中&…...
BDD 100K dataset 的标签数据结构(json文件)
最近在筛选自己需要的labels,所以要弄清楚这个数据集的数据结构才行: 1.整个json文件以列表形式储存 2.每张图片以一个字典形式储存 3.存储图片的字典内的以‘name’为key的键值对对应的‘value’是我需要的图片名称信息 4.存储图片的字典内的以‘label…...
AcWing 1550:完全二叉搜索树
【题目来源】https://www.acwing.com/problem/content/1552/【题目描述】二叉搜索树 (BST) 递归定义为具有以下属性的二叉树: (1)若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值 (2)若它的右…...
使用kali Linux启动盘轻松破解Windows电脑密码
破解分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。谢谢!! 效果展示: 使用kali Linux可以轻松破解Windows用户及密码 准备阶段: (…...
Vue2中跨组件共享公共属性的方法、优缺点与实现
一、vuex(最常用) 优缺点 优点:集中管理状态,组件间解耦,易于调试和测试。缺点:学习成本较高,对于小项目可能过于复杂。 适用场景 大型、复杂的单页面应用(SPA)。需要全局…...
2024亚太杯数学建模竞赛(B题)的全面解析
你是否在寻找数学建模比赛的突破点?数学建模进阶思路! 作为经验丰富的数学建模团队,我们将为你带来2024亚太杯数学建模竞赛(B题)的全面解析。这个解决方案包不仅包括完整的代码实现,还有详尽的建模过程和解…...
【PWN · ret2syscall | GoPwn】[2024CISCN · 华中赛区]go_note
一道GoPwn,此外便是ret2syscall的利用。然而过程有不小的曲折,参考 返璞归真 师傅的wp,堪堪完成了复现。复现过程中,师傅也灰常热情回答我菜菜的疑问,感谢!2024全国大学生信息安全竞赛(ciscn&am…...
关于学习方法的优化
这是一种新的学习方法,一种新的学习形式,可以通过歌唱的方式,运用,把自己每天要进行的内容进行一个复习,进行一个重复,这样可以实现随时随地进行一个学习,这样可以帮助快速走出来! 您…...
万界星空科技MES系统中的排版排产功能
在当今高度竞争的市场环境中,企业对于生产管理的效率和质量要求日益提高。作为智能制造的重要组成部分,制造执行系统(MES)以其强大的功能,在提升企业生产能力方面发挥着不可替代的作用。万界星空科技作为行业领先的智能…...
kubeadm离线部署kubernetesv1.30.0
背景:最近由于docker image获取镜像受限的问题,以及公司内部部署kubernetes受限于内部网络无法访问公网的问题,对于离线部署kubernetes成为不是十分方便。谨以此文仅供参考。 kubernetes部署节点信息 kubernetes版本 1.30.0 操作系统版本&a…...
【PYG】dataloader和densedataloader
DenseDataLoader 是专门用于处理稠密图数据的,而 DataLoader 通常用于处理稀疏图数据。两者的主要区别在于它们的输入数据格式和处理方式。DenseDataLoader 适合处理固定大小的邻接矩阵和节点特征矩阵的数据,而 DataLoader 更加灵活,可以处理…...
完美解决ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)
已解决ERROR 1045 (28000): Access denied for user ‘root‘‘localhost‘ (using password: NO) 下滑查看解决方法 文章目录 报错问题解决思路解决方法交流 报错问题 ERROR 1045 (28000): Access denied for user ‘root‘‘localhost‘ (using password: NO) 解决思路 对…...
ForkJoinPool 简介
引言 在现代并行编程中,处理大规模任务时将任务分割成更小的子任务并行执行是一种常见的策略。Java 提供了 Fork/Join 框架来支持这一模式,其中 ForkJoinPool 是其核心组件。本文将详细介绍 ForkJoinPool 的概念、使用方法和实际应用。 1. ForkJoinPoo…...
复现YOLO_ORB_SLAM3_with_pointcloud_map项目记录
文章目录 1.环境问题2.遇到的问题2.1编译问题1 monotonic_clock2.2 associate.py2.3 associate.py问题 3.运行问题 1.环境问题 首先环境大家就按照github上的指定环境安装即可 环境怎么安装网上大把的资源,自己去找。 2.遇到的问题 2.1编译问题1 monotonic_cloc…...
Docker:Docker网络
Docker Network 是 Docker 平台中的一项功能,允许容器相互通信以及与外界通信。它提供了一种在 Docker 环境中创建和管理虚拟网络的方法。Docker 网络使容器能够连接到一个或多个网络,从而使它们能够安全地共享信息和资源。 预备知识 推荐先看视频先有…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
python/java环境配置
环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
第7篇:中间件全链路监控与 SQL 性能分析实践
7.1 章节导读 在构建数据库中间件的过程中,可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中,必须做到: 🔍 追踪每一条 SQL 的生命周期(从入口到数据库执行)&#…...
系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...
消息队列系统设计与实践全解析
文章目录 🚀 消息队列系统设计与实践全解析🔍 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡💡 权衡决策框架 1.3 运维复杂度评估🔧 运维成本降低策略 🏗️ 二、典型架构设计2.1 分布式事务最终一致…...
