首页
学习
活动
专区
圈层
工具
发布
37 篇文章
1
Linux音频驱动-ASOC(ALSA System on Chip)
2
LPDDR5: A New Clocking Scheme 提高性能
3
FPGA 控制 RGMII 接口 PHY芯片基础
4
DDR3篇第三讲、DDR3读写测试项目分析
5
PHY(Physical Layer,PHY)通俗理
6
MIPI联盟已完成车载的Long-Reach SerDes PHY工业标准 A-PHY v1.0
7
【三】Bluetooth 技术||链路层七种状态与空口报文设计(Core_v5.2)
8
【RL-TCPnet网络教程】第5章 PHY芯片和STM32的MAC基础知识
9
FPGA和USB3.0通信-USB3.0 PHY介绍
10
USB技术浅析
11
优秀的 Verilog/FPGA开源项目介绍(二)-RISC-V
12
优秀的 Verilog/FPGA开源项目介绍(十六)- 数字频率合成器DDS
13
想学习高速ADC/DAC/SDR项目这个项目你不得不理解
14
优秀的 Verilog/FPGA开源项目介绍(九)- DP(增改版)
15
优秀的 Verilog/FPGA开源项目介绍(十三)- I2C
16
高速串行通信常用的编码方式-8b/10b编码/解码
17
SoC设计之PPA
18
SoC设计之功耗--开篇
19
开源SOC的设计与实践
20
SoC设计之功耗 – RTL/netlist功耗计算
21
转置型FIR设计
22
SSD目标检测系统系统结构网络训练
23
P2P接口Booth乘法器设计描述原理代码实现
24
流水线式p2p接口的分析与实现
25
流水线乘加树需求设计规划代码实现
26
分时复用的移位相加乘法器
27
Verilog实现全并行比较算法
28
全并行流水线移位相加乘法器
29
ROM乘法器基本算法单个ROM乘法器分时复用ROM乘法器
30
Flash中XIP模式
31
cordic的FPGA实现(五)、除法实现
32
cordic的FPGA实现(三)、乘法器实现
33
cordic的FPGA实现(三)、sin、cos函数运算与源码分析
34
FPGA卡拉ok系统--Biquad filter
35
音频总线I2S协议
36
脉冲压缩处理
37
虚拟地址(VA,virtual address)到物理地址(PA, ,physical address)的转换
清单首页SoC文章详情

SoC设计之PPA

欢迎大家加入2022届数字IC交流群,QQ群号 1060380138

做过SoC的同学们基本都会接触到一个词,tradeoff。什么是tradeoff呢?为什么要tradeoff?

在讨论这个问题前先看另外一个概念,PPA,也就是性能(performance),功耗(power)和面积(area)的简称。只要是做SoC设计就离不开这三个概念。首先,性能不用讲大家都明白。我们经常会看到关于性能的宣传,比如某新发布的手机跑分多少多少,比如某款CPU芯片的最高主频等等。其次,芯片功耗这个问题大家在生活中也会遇到,例如某款手机在打游戏时会过热。最后,芯片面积这方面一般在生活中不会直接接触到,但也会影响我们的生活。拿买房子作类比,同一个地段(在芯片制造领域就是相同工艺)肯定是面积越大越贵。另外由于芯片生产工艺的限制,芯片的设计面积越大,最后的良品率越差。也就是说芯片生产制造完,能用的比例越小。间接后果就是可用的芯片产品卖的更贵,毕竟羊毛出在羊身上嘛. 那么我们能不能设计出性能出众,耗电很小,面积几乎为零的芯片呢?很不幸的是,在目前的硅工艺上,这三者不能同时满足。

既然三个指标不可能做到同时优秀,那至少要选一样或者两样吧。这就是一开始提到的tradeoff,牺牲一两项指标以追求其它指标优秀。比如说我们设计一款性能空前绝后的CPU,代价是功耗巨大(功耗大的危害以后再讲,并不仅仅是费电),最后的设备要配水冷;面积巨大,最终芯片价格很高。

从芯片设计流程上看,设计工作可以分为逻辑设计和物理实现。一般逻辑设计工程师最看重的是性能,其次是功耗,往往会忽略面积;而物理实现工程师更加看重面积和功耗。对于大规模的SoC,这时候就需要架构工程师统筹考虑三个指标,在PPA三项指标间做出权衡。是用功耗换性能,还是用面积换性能,抑或是在满足基本性能的前提下大力优化功耗或者面积。

举几个简单的例子帮大家理解这些问题。现在的芯片生产厂(foundry)在同一个工艺制成下还提供好几种小工艺节点供选择。每个小节点各有特点,有些能跑到更高频率,有些功耗低,有些成本低,可以根据项目实际情况选择。另外在同一个小节点中还会提供不同阈值的标准单元。拿功耗换取性能来说,为了让芯片跑在更高的频率下,在单位时间内完成更多的工作,我们可以选取一些阈值电压低(low Vt)的物理器件。这些器件会比实现同样功能但是阈值电压高的器件翻转快,缺点是其静态功耗比正常Vt的标准单元大很多。所以一般会在关键路径酌情考虑使用,不建议大规模使用。

再说面积换取性能,在同样的工作频率下可以做多路并发来提高芯片的数据处理能力,同时也牺牲了面积和功耗。再举个例子,可以把cache容量做大以提升cache hit。虽然我们都知道cache hit的曲线图,在cache达到一定容量时继续增大对提高命中率的提升越来越不显著。但是有时候恰恰就是这一点点的提升,可能会带来不一样的用户体验。就像某水果公司的SoC,有钱任性,其L3 cache做的不小,哈哈。

再比如面积换功耗,不影响性能的前提下可以设计中使用clock gating和power gating等技术降低功耗,或者划分不同的电压域,代价是芯片的面积会大一点,毕竟加入了新的物理器件(CG cell,PG cell,levelshifter,retention cell等等)。还有一种技术DVFS,动态调节电源电压和时钟频率。

总之呢,tradeoff的策略要结合芯片实际应用情况来考虑,具体的实现方法多种多样,以后有时间慢慢跟大家探讨,一起学习。

最后总结一下,芯片设计中PPA既是对立的,又是统一的,其矛盾贯穿SoC设计始终。没有完美的芯片,只有完美的tradeoff。

END

下一篇
举报
领券