棋子 · 4月17日

人生机会窗亦如时序分析中的时间窗

从时序时间窗到人生机会窗

时序分析归根揭底就是时间窗分析,时序修复归根结底就是时间窗修复。如下图所示,是时序路径示意图,以UFF1→UFF2的路径为例;如果该路径既满足建立时间要求又满足保持时间要求,则等价于该路径需满足如下时间窗公式:Thold+ Tsetup < Tck2q1 + Tdp1+Tsetup + (Tlaunch_net - Tcapture_net  )- Tclk_skew  < Tcycle;其中Thold是UFF2的时序库中的保持时间要求,Tsetup是UFF2的时序库中的建立时间要求,Tck2q1是UFF1的时钟端口到数据端口的延迟,Tdp1是UFF1和UFF2之间的组合逻辑延迟,Tlaunch_nets是launch path的net delay,Tcapture_net  是capture path的net delay,Tclk_skew 是UFF2和UFF1的时钟长度的差值(就是clock skew)。

image.png

作为一个芯片工程师,觉得时序分析中的时间窗和人生的机会窗有许多共通之处,且听我娓娓道来。

三级流水如家族三代,需要彼此给对方留足时序余量

常见的三级流水是“取指”“译码”“执行”。    

image.png

三级流水对应三级时序路径,为了满足整个芯片的频率要求,每一级的时序必须都收敛。

image.png

芯片中三级流水之间的时序并不是孤立的,从前端和后端的角度,分别可以用re-timing和useful skew的方法从前一级借用时间窗余量;三级流水也如人生的家族三代,上一辈人取得的成就和家资撑起了后辈的起点,他们的人生容错率也更高;如果上一辈的“时间窗“没有留足,我们之一代人起点自然是hard模式,必须在有限的资源范围内,竭力修复我们自己的时间窗。    

image.png

如果是cell density太大引起时序违例,那说明该挪位置了

如果布局cell density太大引起route congestion和detour route,自然时间窗会非常恶化,此时再保持原来的module分布格局就不合适了,需要调整floorplan的总体规划,把timing path从拥挤和闭塞中解救出来;或者采用特殊的物理约束(partial blocage,keep-out margin等)方法释放出违例路径周围的空间。这跟我们打工人一样,人才放错了位置可能无法发挥,调整规划,找到合适的位置才能发挥最大价值,这个位置包括不同的城市等物理位置和不同的岗位等职业位置。

image.png

没有时间窗可以借用,也没有位置可以腾挪,那可能需要换low VT

所谓VT,就是MOS管栅极阈值电压,阈值电压越低的相同类型的标准单元,其速度越快,这样就可以修复出时间窗出来。但是这种“快”是有代价的,这种low VT的单元,其泄露功耗更大,对自身的能量消耗很大,也容易发热,引起潜在风险。这也跟人生一样,当我们选择不多,手牌不好时,想要修复人生的时间窗,燃烧自己,吃更多苦,留更多汗,成为了一种选择。

image.png

当用了low VT依然不行的时候,此时可能需要换赛道了

当low VT也用了,违例路径的时间窗还没有修复,怎么办呢?当苦也吃了,汗也流了,人生状态还没有改观,怎么办呢?

此时可能说明normal track(普通路径)已经不行了,可能需要non-default路径了,使用non-default rule对该违例路径单独绕线,节省出更多的net delay来修复时间窗,也是一种方法。Non-default rule就是非默认规则,就如人生选择的打破常规,尝试标新立异的新赛道。

END

作者:Jack Xu
文章来源:志芯

推荐阅读

更多IC设计干货请关注IC设计专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。
推荐阅读
关注数
12401
内容数
1235
主要交流IC以及SoC设计流程相关的技术和知识
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息