优化高性能CPU的ICG延迟设置

描述

优化高性能CPU的ICG延迟设置

cpu

report_timing -path_type full_clock

cpu

请问这里SDC为何约束到了ICG的CP端外,还约束了ICG的Q端?假设注释掉Q端的约束,如下图,会有什么问题?

cpu

去掉后,timing报告如下,明显setup timing变差了很多。

cpu

report_timing -path_type full_clock

cpu

因此,约束ICG的latency为-400ps,目的是把ICG从reg拉开400ps,如果不约束ICG的Q,那么工具为了minimize skew,会默认ICG后面所有的reg的CLK的latency和ICG是一样的-400ps。此时,时钟还是是理想的。因此需要给ICG的Q端也约束上latency,此处约束为-50ps。不经过这个ICG的CLK pin默认latency为0。

注意,ICG本身容易setupviolation,默认icg 和reg 越近越好。

 2.5GHz频率,12nm工艺,DVFS低功耗A72后端培训

01 

12nm Cortex-A72后端实战

本项目是真实项目实战培训,低功耗UPF设计,后端参数如下:

工艺:12nm

频率:2.5GHz

资源:2000_0000 instances

低功耗:DVFS

为了满足广大学员的诉求,我们将12nm A72 TOP课程分为两个版本:

1、基础版(价格是知名机构的1/5,全国最低价)

2、进阶版(低功耗、hierarchy UPF、Stampling)!业界最先进技术!

进阶版本的低功耗设计如下:7个power domain

cpu

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

cpu

Flow:Partition Flow

cpu

时钟结构分析:

cpu

复位结构分析:

cpu

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

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

cpu

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

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

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

cpu

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

cpu

审核编辑:黄飞

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分