CMOS电路中的功耗分为两部分:静态功耗和动态功耗;
静态功耗是由漏电流引起的功耗;动态功耗分为翻转功耗和短路功耗,翻转功耗也就是0与1翻转所引发的功耗,而短路功耗则是由于PMOS和NMOS都导通时所引起的功耗。
最行之有效的低功耗手段:关断电源。前面小编也介绍了SoC的低功耗设计—isolation,今天介绍power switch cell。
不论采用多低的电压、多低的时钟频率、多小的leakage库,都不如彻底关掉某些功能模块的电压来的彻底。当然,power-gating的加入明显增加了设计复杂度,从架构设计、RTL、验证、DFT、后端实现到signoff都需要一套完整的流程体系/方法学支撑。
Powerswitch cell分为HEAD型、FOOT型两种:
HEAD型:
SLEEP为1时,VDD被关断。
SLEEP为0时,VDD打开。
FOOT型:
HEAD型是关断VDD,FOOT型是关断VSS的,很少用。
上图可知,Power switch cell是由PMOS/NMOS管子构成,不同于强电电路中的接触开关,强电开关一个器件能提供非常大的电流来开关电路,但是一个MOS管的驱动能力是非常有限的,因此,一颗SoC芯片会使用大量的power switch cell,需要根据设计的电流、power switch cell的驱动电流等参数计算所需要的power switch cell的数目。
一般power switch cell和standard cell一样放进row中,电源上层金属连接到power switch cell的输入端VDDG(VDD Global),输出端则连接到power rail,SLEEP信号作为使能,控制rail与上层金属的断开/连接来实现电源关断。
具体是如何连接的呢,具体是如何连接的呢,移步知识星球。
景芯SoC全流程培训,有同学遇到power switch的问题如下:
power switch的secondaryPowerPin是下图的VDD(连接电源VDDS),power switch的VDDG pin接power switch的输入电压VDD。景芯SOC后端实现时,发现secondaryPowerPin和power stripe(M5)连接时候总是连接的M1,而不是红色的M2金属。
如下:secondaryPowerPin和power stripe(M5)连接时候总是连接的M1,而不是红色的M2金属。
打开CELL visibility,看到中间的stripe是VDD且接的M1(蓝色),为何接M1而不是M2(红色)?
具体原因参见知识星球。
一键式完成C代码编译、仿真、综合、DFT插入、形式验证、布局布线、寄生参数抽取、STA分析、DRC/LVS、后仿真、形式验证、功耗分析等全流程。升级后的芯片设计工程V2.0 flow如下:
SoC一键式执行flow
MIPI DPHY+CSI2解码
数字电路中经典设计:多条通信数据Lane Merging设计实现
数字电路中经典设计:多条通信数据Lane Distribution实现
UPF低功耗设计
全芯片UPF低功耗设计(含DFT设计)
景芯SoC训练营培训项目,低功耗设计前,功耗为27.9mW。
低功耗设计后,功耗为0.285mW,功耗降低98.9%!
电压降检查:
低功耗检查:
芯片的版图设计V1.0
芯片的版图设计V2.0
低功耗设计的DRC/LVS,芯片顶层的LVS实践价值极高,具有挑战性!业界独一无二的经验分享。
ISP图像处理
dpc - 坏点校正
blc - 黑电平校正
bnr - 拜耳降噪
dgain - 数字增益
demosaic - 去马赛克
wb - 白平衡增益
ccm - 色彩校正矩阵
csc - 色彩空间转换 (基于整数优化的RGB2YUV转换公式)
gamma - Gamma校正 (对亮度基于查表的Gamma校正)
ee - 边缘增强
stat_ae - 自动曝光统计
stat_awb - 自动白平衡统计
CNN图像识别
支持手写数字的AI识别:
仿真结果:仿真识别上图7、2、1、0、4、1、4、9
7天冲刺PR训练营有同学问如何给IO添加PAD?请思考景芯SoC的IO和PAD如何实现最佳?
7天冲刺PR训练营有同学问,同样的floorplan,有些同学很快跑完,有些同学则遇到大量DRC问题(EDA工具不停iteration)导致工具始终无法跑完,具体什么问题呢?
首先,小编发现该同学的stripe把TM2定义为了horizontal,而熟悉景芯工艺的同学知道,TM2的preference direction是VERTICAL。
查询景芯的lef库文件也可以确认:
用错方向有多大影响呢?大家上景芯SoC的后端flow实践一下吧,实践出真知。
7天冲刺PR训练营有同学问,为啥PR花了一天一夜24个小时完成布线还大量DRC错误?小编已经将设计规模尽可能减小以加速PR设计,实际上2小时就可以跑完routing,为何这么慢?原因就是低功耗单元的走线。具体原因及解决办法欢迎加入景芯训练营讨论。
其错误主要集中在M4上,请思考如何解决。
7天冲刺PR训练营有同学问,power switch cell的secondPG pin(VDDG)从M1接出的,而不是M2, 请思考有什么问题?如何解决?
7天冲刺PR训练营有同学问,景芯SoC培训营同学遇到Corner Pad LVS不过怎么处理?
完成景芯SoC培训的前端设计仿真、DFT后,我们来到后端flow,本教程教你一键式跑完数字后端flow。
生成脚本命令如下:
tclsh ./SCRIPTS/gen_flow.tcl -m flat all
生成flow脚本之前需要配置setup.tcl等相关参数,具体参见【全网唯一】【全栈芯片工程师】提供自研的景芯SoC前端工程、DFT工程、后端工程,带你从算法、前端、DFT到后端全流程参与SoC项目设计。
景芯SoC训练营的同学问,为何innovus读取做好的floorplandef文件报Error?首先看log:
Reading floorplan file - ./data_in/DIGITAL_TOP.def (mem = 1595.0M).
#% Begin Load floorplan data ... (date=10/23 2201, mem=1579.3M)
**ERROR: (IMPFP-710): File version unknown is too old.
以前EDI的时期,我们可以通过定义fp_file的方式来加载floorplan:
set vars(fp_file) "./data_in/DIGITAL_TOP.def"
但是现在innovus升级并放弃了fp_file的加载方式,当然也可以用老版本的EDI9.1及以前版本来加入fp_file,然后转存为新版本,这方式明显没有必要。正如下log提示所说,检查log是非常好的工程师习惯。
Input floorplan file is too old and is not supported in EDI 10.1 and newer.
You can use EDI 9.1 and before to read it in, then save again to create new version.
小编的直觉告诉我,先去看看同学保存的def文件是哪个def版本?
同学保存方式如下:
那么请问如何解决?请大家加入景芯训练营实践。
景芯SoC用了很多异步FIFO,关注异步RTL实现的同学,可以抓取异步FIFO出来看一下版图连线:
查看下所有异步FIFO cell的面积;
dbget [dbget top.insts.pstatus unplaced -p].area
查下所有异步FIFO的cell的名字:
dbget [dbget top.insts.pstatus unplaced -p].name
那么怎么抓出异步路径来观察版图走线呢?如何让report_timing呢?更多内容参见知识星球和SoC训练营。
审核编辑:汤梓红
-
动态功耗
+关注
关注
0文章
12浏览量
11513 -
静态功耗
+关注
关注
0文章
17浏览量
8941 -
低功耗设计
+关注
关注
0文章
80浏览量
16157 -
CMOS电路
+关注
关注
0文章
49浏览量
11507
原文标题:低功耗设计之Power Switch Cell
文章出处:【微信号:全栈芯片工程师,微信公众号:全栈芯片工程师】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论