0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DVFS hierarchy低功耗A72后端实战案例

全栈芯片工程师 来源:全栈芯片工程师 2024-04-08 09:24 次阅读

01

2.5GHz 12nm DVFS A72后端实战

本培训项目是真实项目,低功耗hierarchyUPF设计,价格是知名机构的1/3,全网最低价。DVFS hierarchy低功耗A72后端实战内容简介如下:

1) 根据低功耗需求,编写UPF验证UPF

掌握hierarchy UPF文件编写,掌握Flatten UPF文件编写。

本项目采用hierarchy UPF方式划分了7个power domain、voltage domain,指定power switch cell,其中包括SWITCH TRICKLE、SWITCH HAMMER。掌握低功耗cell的用法,选择合适的isolation cell、level shifter等低功耗cell。

f405a8da-f4f7-11ee-a297-92fbcf53809c.png

掌握Power gating,Clock gating设计技术。

掌握Multi-VT设计技术,本项目时钟树都是ULVT,动态功耗小,skew小。

掌握DVFS技术,ss0p9 2.5GHz、ss0p722.0GHz,,其中sram不支持ss0p63。要做ss0p63的话,给sram vddm单独一个0p7v的电源即可。

掌握multibit cell的用法,本项目CPU里面的mb高达95%,选择合适的multibitcell得到超高的CPU利用率。INNOVUS里面一般不做mb的merge和split。所以前后一样的,一般综合做multibit的merge split。

f40bc42c-f4f7-11ee-a297-92fbcf53809c.png

2) 根据top floorplan def进行CPU子系统的partition以及pin assignment。

Top的Power stripe的规划及其push down。

SpecifyBlackBox,将CPU core镜像partition。

手动manual cut the BlackBox的方法,掌握复杂的floorplan设计方法经验。

VerifyPowerDomain,检查低功耗划分以及UPF的正确性。

Pin assignment,根据timing的需求进行合理的pin脚排布,并解决congestion问题。

掌握Timing budget。

掌握利用Mixplace实战CPU的自动floorplan,掌握AI的floorplan方法学。

f4163d1c-f4f7-11ee-a297-92fbcf53809c.png

3) 掌握Fusion compiler DCG,利用fusion compiler来完成DCG综合,进一步优化timing与congestion。

4) 掌握hierarchy ICG的设计方法学,实战关键ICG的设置与否对timing的重大影响。

5) 掌握Stapling技术,实战power switch cell的布局和特殊走线的方法学,掌握CPU子系统的powerplan规划及实现,保证CPU子系统和顶层PG的alignment。

6) 掌握CPU子系统和TOP的时序接口优化。掌握TOPisolation cell的placement以及isolationcell input电学特性检查。

7) 掌握TOP和CPU子系统的clocktree Balance优化处理,common clock path处理。时钟树结构trace和时钟树评价。

8) DRC/LVS

CPU子系统的DRC/LVS检查

TOP系统的DRC/LVS检查

Hierarchy & Flatten LVS检查原理及实现方法

9) 静态时序分析&IR-Drop

DMSA flow

根据Foundry的SOD(signoff doc)的Timing signoff标准建立PT环境。

Star RC寄生抽取及相关项检查

Timing exception分析,包括set_false_path、set_multicyle_path解析。

PT timing signoff的Hierarchical和Flatten Timing检查

PT和PR timing的差异分析、Dummy insertion和with dummy的Timing分析

IR-Drop分析

Stampling打起来真是高级手工艺术,全网唯一:

f42898ea-f4f7-11ee-a297-92fbcf53809c.png

Flow:PartitionFlow

f432adb2-f4f7-11ee-a297-92fbcf53809c.png

时钟结构分析:

f43c98b8-f4f7-11ee-a297-92fbcf53809c.png

复位结构分析:

f440d054-f4f7-11ee-a297-92fbcf53809c.png

12nm 2.5GHz的A72实战训练营需要特别设置Latency,TOP结构如下,参加过景芯SoC全流程训练营的同学都知道CRG部分我们会手动例化ICG来控制时钟,具体实现参见40nm景芯SoC全流程训练项目,本文介绍下12nm 2.5GHz的A72实战训练营的Latency背景,欢迎加入实战。

时钟传播延迟Latency,通常也被称为插入延迟(insertion delay)。它可以分为两个部分,时钟源插入延迟(source latency)和时钟网络延迟(Network latency)。

f4545746-f4f7-11ee-a297-92fbcf53809c.png

大部分训练营同学表示平时都直接将Latency设置为0了,那latency值有什么用呢?其实这相当于一个target值,CTS的engine会根据你设置的latency值来插入buffer来实现你的latency target值。

下图分为1st Level ICG和2nd Level ICG,请问这些ICG为什么要分为两层?

请问,为什么不全部把Latency设置为0?2nd Level ICG的latency应该设置为多少呢?

f45a3940-f4f7-11ee-a297-92fbcf53809c.png

latency大小直接影响clock skew的计算。时钟树是以平衡为目的,假设对一个root和sink设置了400ps的latency值,那么对另外的sink而言,就算没有给定latency值,CTS为了得到较小的skew,也会将另外的sink做成400ps的latency。请问,为何要做短时钟树?因为过大的latency值会受到OCV和PVT等因素的影响较大,并有time derate的存在。

f45e3a2c-f4f7-11ee-a297-92fbcf53809c.png

分享个例子,比如,Cortex-A72低功耗设计,DBG domain的isolation为何用VDDS_maia_noncpu供电而不是TOP的VDD?

f465f500-f4f7-11ee-a297-92fbcf53809c.png

答:因为dbg的上一级是noncpu,noncpu下面分成dbg和两个tbnk。

再分享个例子,比如,Cortex-A72低功耗设计,这个switch cell是双开关吗?答:不是,之所以分trickle和hammer,是为了解决hash current大电流,先开trickle,然后再开hammer。

f47f0c52-f4f7-11ee-a297-92fbcf53809c.png

再分享个例子,比如,Cortex-A72进阶版本课程的低功耗例子:请问,如果iso cell输出都要放parent,输入放self,那么下面-applies_to_outputs对应的-location为何是self?

f48374ea-f4f7-11ee-a297-92fbcf53809c.png

答:这个需要了解CPU的内部设计架构,tbnk掉电 VDDS_maia_noncpu也必然掉电,pst如下,所以-applies_to_outputs对应的-location是可以的,那么注意下debug domain呢?

f48a8d84-f4f7-11ee-a297-92fbcf53809c.png

实际上,没有tbnk到debug domain的信号,因此脚本如下:

f4927aee-f4f7-11ee-a297-92fbcf53809c.png

再分享个例子,比如,Cortex-A72进阶版本课程的低功耗例子:为何non_cpu的SRAM的VDD VDDM都接的可关闭电源?SRAM的VDD VDDM分别是常开、和retention电源吧?

f4a5e89a-f4f7-11ee-a297-92fbcf53809c.png

答:本来是VDDM作为retention电源设计的,VDD关掉后 VDDM可以供电作为retention使用,但是此处没有去做memory的双电源,sram当成单电源使用,不然sram无法彻底断电。

再分享个例子,比如,Cortex-A72基础版课程有学员的Cortex-A72 maia_cpu LVS通过,但是MAIA顶层LVS比对不过,我们来定位一下。

以FE_OFN4326_cfgend_cpu1_o为例,点击下图FE_OFN4326_cfgend_cpu1_o:

f4abfd5c-f4f7-11ee-a297-92fbcf53809c.png

找到calibredrv错误坐标:(1949,139)

对应到innovus去看坐标:(1949,139)

看到maia_cpu的pin脚过于密集,造成顶层连接pin脚时候会无法绕线,从而导致innovus从maia_cpu上面走线,形成short。尽管maia_cpu带了blockage,但是invs没有足够的连接pin的routing resource,也就只能在maia_cpu上面去try了。

f4b00802-f4f7-11ee-a297-92fbcf53809c.png

修改办法很简单,具体操作option参见知识星球。

f4cfd736-f4f7-11ee-a297-92fbcf53809c.png

保存db,重新LVS,比对通过。

f4e9ba3e-f4f7-11ee-a297-92fbcf53809c.png

02

28nm Cortex-A7后端实战

此外,我们提供全网最低价的28nm A7后端设计,价格惊喜!打垮动辄1.5w-2.5w的后端培训价格!

f4ed9e7e-f4f7-11ee-a297-92fbcf53809c.png

我们再来对比下A72与A7的资源。A72Gate数目是A7的13倍!如果都采用28nm制程,A72的面积应该是1180790um^2,实际A72采用12nm制程面积是486100um^2,1180790/486100=2.4,符合摩尔定律。

Cortex-A7单核:

Gates=240291Cells=118421

Cortex-A72单核:

Gates=3125649Cells=1207766

28nmCortex-A7单核:

Area=90830.1um^2

12nmCortex-A72单核:

Area=486100.9um^2

28nm A7后端设计课程采用的全国最低价格来推广,本文不做过多介绍,本文重点介绍下先进的12nm A72进阶版本课程。

03

12nm Cortex-A72—DFT实战

开发完成,全国最低价!

04

景芯SoC—全芯片UPF后端实战

景芯SoC培训的全芯片UPF低功耗设计(含DFT设计)

f4f3754c-f4f7-11ee-a297-92fbcf53809c.png

景芯SoC训练营培训项目,低功耗设计前,功耗为27.9mW。

f4f70842-f4f7-11ee-a297-92fbcf53809c.png

低功耗设计后,功耗为0.285mW,功耗降低98.9%!

f4facf04-f4f7-11ee-a297-92fbcf53809c.png

f504fd6c-f4f7-11ee-a297-92fbcf53809c.png

f508ffac-f4f7-11ee-a297-92fbcf53809c.png

7天冲刺PR训练营有同学问如何给IO添加PAD?请思考景芯SoC的IO和PAD如何实现最佳?

f510e69a-f4f7-11ee-a297-92fbcf53809c.png

7天冲刺PR训练营有同学问,同样的floorplan,有些同学很快跑完,有些同学则遇到大量DRC问题(EDA工具不停iteration)导致工具始终无法跑完,具体什么问题呢?

f5157c50-f4f7-11ee-a297-92fbcf53809c.png

首先,小编发现该同学的stripe把TM2定义为了horizontal,而熟悉景芯工艺的同学知道,TM2的preference direction是VERTICAL。

f519990c-f4f7-11ee-a297-92fbcf53809c.png

查询景芯的lef库文件也可以确认:

f5203e06-f4f7-11ee-a297-92fbcf53809c.png

用错方向有多大影响呢?大家上景芯SoC的后端flow实践一下吧,实践出真知。

7天冲刺PR训练营有同学问,为啥PR花了一天一夜24个小时完成布线还大量DRC错误?小编已经将设计规模尽可能减小以加速PR设计,实际上2小时就可以跑完routing,为何这么慢?原因就是低功耗单元的走线。具体原因及解决办法欢迎加入景芯训练营讨论。

f52453ec-f4f7-11ee-a297-92fbcf53809c.png

其错误主要集中在M4上,请思考如何解决。

f5281efa-f4f7-11ee-a297-92fbcf53809c.png

7天冲刺PR训练营有同学问,power switch cell的secondPG pin(VDDG)从M1接出的,而不是M2, 请思考有什么问题?如何解决?

f52ed466-f4f7-11ee-a297-92fbcf53809c.png

7天冲刺PR训练营有同学问,景芯SoC培训营同学遇到Corner Pad LVS不过怎么处理?

f53302ac-f4f7-11ee-a297-92fbcf53809c.png

完成景芯SoC培训的前端设计仿真、DFT后,我们来到后端flow,本教程教你一键式跑完数字后端flow。

f539f864-f4f7-11ee-a297-92fbcf53809c.png

生成脚本命令如下:

tclsh ./SCRIPTS/gen_flow.tcl -m flat all

f53e263c-f4f7-11ee-a297-92fbcf53809c.png

生成flow脚本之前需要配置setup.tcl等相关参数,具体参见【全网唯一】【全栈芯片工程师】提供自研的景芯SoC前端工程、DFT工程、后端工程,带你从算法、前端、DFT到后端全流程参与SoC项目设计。

景芯SoC训练营的同学问,为何innovus读取做好的floorplandef文件报Error?首先看log:

f5421ecc-f4f7-11ee-a297-92fbcf53809c.png

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版本?

f548a080-f4f7-11ee-a297-92fbcf53809c.png

同学保存方式如下:

f54c65da-f4f7-11ee-a297-92fbcf53809c.png

那么请问如何解决?请大家加入景芯训练营实践。

景芯SoC用了很多异步FIFO,关注异步RTL实现的同学,可以抓取异步FIFO出来看一下版图连线:

f5576566-f4f7-11ee-a297-92fbcf53809c.png

查看下所有异步FIFO cell的面积;

dbget [dbget top.insts.pstatus unplaced -p].area

查下所有异步FIFO的cell的名字:

dbget [dbget top.insts.pstatus unplaced -p].name

审核编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10855

    浏览量

    211606
  • UPF
    UPF
    +关注

    关注

    0

    文章

    50

    浏览量

    13504
  • DVFS
    +关注

    关注

    1

    文章

    17

    浏览量

    11996

原文标题:2.5GHz频率 hierarchy DVFS低功耗A72实战

文章出处:【微信号:全栈芯片工程师,微信公众号:全栈芯片工程师】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ARM新一代Cortex-A73架构解析 千元机也能有高端SoC

    现在广泛采用的 ARM 公版 CPU 架构主要有 A53、A57、A72 三种,其中 A53 偏重低功耗,性能相对较差,
    发表于 06-06 11:39 7516次阅读
    ARM新一代Cortex-<b class='flag-5'>A</b>73架构解析 千元机也能有高端SoC

    A72核心的8QM上测试Windows 10,可以测试吗?

    查看 Windows 10 IoT 发行说明,在支持的 H/W 列表中找不到 8QM MEK。 有客户想在A72核心的8QM上测试Windows 10,可以测试吗?
    发表于 04-25 07:10

    ARM Cortex®-A72 MPCore处理器技术参考手册

    Cortex-A72处理器是一款实现ARMv8-A架构的高性能、低功耗处理器。 它在带有L1和L2缓存子系统的单处理器设备中具有一到四个核心。 下图显示了四核Cortex-A72处理器
    发表于 08-25 06:27

    动态电压与频率调节在降低功耗中的作用

    摘要 目前,为了降低功耗,越来越多的芯片支持动态电压与频率调节DVFS(Dynamic Voltage and Frequency Scaling)。本文列举了基于软件和硬件的DVFS实现,验证了
    发表于 03-29 15:14 2839次阅读
    动态电压与频率调节在降<b class='flag-5'>低功耗</b>中的作用

    基于苹果Cortex A72 核心的全新 5nm 芯片介绍

    此外,为了保证前期 iPhone 12 使用,苹果追加了台积电的订单,以确保自己能获得足够的产能。按照台积电官方数据,相较于 7nm(第一代 DUV),基于 Cortex A72 核心的全新 5nm
    发表于 08-10 11:34 1543次阅读

    最新泄漏的明星是三星Galaxy A72

    预计Galaxy A72将于2021年初正式上市。据说,据称该手机具有塑料后面板和铝制框架,其屏幕将为6.7英寸。可以看到放置前置摄像头的屏幕中间发生了变化。
    的头像 发表于 12-19 09:59 1623次阅读

    三星Galaxy A72渲染图、价格曝光

    继Galaxy A71及其5G产品获得成功后,三星有望跟进Galaxy A72。目前,该机的多张渲染图已经出现在网络上,Geekbench跑分也泄露了出来。而近日,有外媒曝光了这款手机的外壳模具。
    的头像 发表于 01-06 10:18 2246次阅读

    三星即将推出的中端产品之一是Galaxy A72智能手机

    如果事实果真如此,那么在A72上看到相同的电池容量(4,500mAh)也就不足为奇了。例如,与早期的传言相反,Galaxy A72大多采用四镜头设置。除其他外,主要镜头据说是像A71一样的64MP相机传感器。
    的头像 发表于 01-26 09:58 2252次阅读
    三星即将推出的中端产品之一是Galaxy <b class='flag-5'>A72</b>智能手机

    三星Galaxy A72 4G即将正式发布

    支持页面上的列表没有透露有关手机的许多详细信息,但确认了SM-A725F / DS型号。三星Galaxy A72在最近几周内多次泄漏。据说该手机有5G和4G版本。
    的头像 发表于 01-28 15:57 2278次阅读

    三星Galaxy A72 4G有望配备高通Snapdragon 720G处理器

    Galaxy A72是它们中最强大的,也可能是最受欢迎的之一,应该会在4G和5G版本中投放市场,而且知道新设备可能还不遥远。三星已经在其俄罗斯支持页面上列出了Galaxy A72 4G
    的头像 发表于 02-02 15:34 2355次阅读

    三星有望很快推出中档Galaxy A52和Galaxy A72

    三星印度已经打开了两个新设备的支持页面-SM-A525F / DS和SM-A725F / DS。如果您还记得的话,这些是先前报道提供的Galaxy A52和A72 。该设备可能是4G的
    的头像 发表于 02-24 16:33 2026次阅读

    基于UPF的低功耗数字后端设计实训课

    带UPF的低功耗设计流程中包括了前端VCS-NLP功能仿真,后端VC LP静态验证,以及在DC综合和ICC2布局布线中低功耗单元的插入,例如level shifter,isolation cell
    的头像 发表于 02-26 09:48 2180次阅读

    Cortex-A72应用实战

    下面Cortex-A72培训营VIP学员问:单核CPU PR做完后,怎么输出数据到TOP去做多核的hierarchy集成?
    的头像 发表于 01-24 10:17 811次阅读
    Cortex-<b class='flag-5'>A72</b>应用<b class='flag-5'>实战</b>

    12nm Cortex-A72后端实战

    进阶版本的低功耗设计如下:7个power domain
    的头像 发表于 02-20 10:48 692次阅读
    12nm Cortex-<b class='flag-5'>A72</b><b class='flag-5'>后端</b><b class='flag-5'>实战</b>

    浅析SoC芯片的DVFS技术

    DVFS(Dynamic Voltage and Frequency Scaling)即动态电压频率调节技术,是一种高效的低功耗技术,它通过动态调整工作电压和时钟频率,以达到降低功耗的目的。
    的头像 发表于 04-05 09:52 2613次阅读
    浅析SoC芯片的<b class='flag-5'>DVFS</b>技术