时序问题几乎贯穿整个asic实现流程的所有环节,也许大家从教材上或者网上了解了很多解决时序问题的方法。但我今天想从实际项目出发,以一个pd工程师的角度来说说时序问题。
首先,asic流程都是有不同部门协调来完成,主要包括设计,综合和pr等环节,他们也为同一个时序目标而努力,pr作为最后一个环节,也是时序能否收敛的最重要环节。
如果pr人员发现post-layout后时序不满足怎么办呢?是不是立马采用各种修复的方法,或者找前端反馈,找设计人员修改呢?别急,凡事都有个流程,特别是协调合作,最能体现个人的综合素质的。
当通过icc或者pt的report_timing 报出有时序问题的路径时,可以按照以下思路来解决:
1
检查这条path是否合法,比如可能是条异步的path,或者半周期的path,这时可以找设计人员确认这是否是一条合法的path,或许是约束写错了,或者designer不小心写了一个负沿的寄存器。
2
如果合法,需要确认这条path本来逻辑就很长,还是因为pr的floorplan导致的。如果你发现时序路径上有一连串的buffer, 那很可能是floorplan导致这条path的cell之间距离很远,工具插入了很多buffer。
3
如果是floorplan导致,可以尝试在placement时把这条path group起来,加大权重使得工具优先对待这条path。
4
如果不是floorplan导致,那可以通过在pre-layout时报一下这条路径,以确认这条路径在综合时就已经有很大的时序违规了。
5
如果是逻辑问题,建议还是自己先研究一下原因,以便在找设计人员的“麻烦”的时能给出一些建议,比如是不是有些很大fanout的cell,或者一串复杂的逻辑门,或者是否有很深的逻辑深度。
6
设计人员可能告诉你这是一个多周期path,甚至是条不用check的path,这样就轻松了,直接加timing exception,甚至不用修就可以了。
7
如果设计人员告诉你这是条真实的单周期path,这时还是先建议设计人员修改代码,当然pr阶段还是有手段可以解决,但要给自己保留一点余地,同时修改代码是一劳永逸的问题。
8
如果设计人员说不能修改,或者项目已经过了rtl freeze这个节点,那只能依赖后端的手段来实现了。
9
到这个时候,才是你后端人员发挥的时候了,比如可以采用high effort的post-route时序优化命令,eco修复方法,或者利用useful skew技术,通过调整时钟延时来修复,当然路径前后有得借才行。
10
如果还是不能解决,项目允许而且库也支持,可以采用低阈值电压的cell(lvt)来替换一些cell,以修复setup。当然lvt的使用也会引起功耗的增加,这个需要从全局去考虑,比如项目只允许使用0.5%的lvt。
11
如果所有办法都不行,那没辙,只能采用终极手段了,那就是:“不好意思,臣妾做不到啊,降频吧”!!!
TDK株式会社推出紧凑型冷等离子发生器 适用于各种电池供电的手持设备
预计2021年智能家居设备的出货量上升,同比增长27.7%
8英寸晶圆的产能为什么这么紧张?
人形机器人产业链梳理 或带动上游核心零部件发展
苹果三款新iPhone或都将搭载A12芯片 国行版还将发布双卡版
如何对待时序问题
努比亚z17什么时候上市?努比亚z17最新消息:努比亚Z17今晚发布,国产旗舰首款防水、双摄 配置全曝光!
货币数字化的全球竞争谁是王
AI+安防加速融合 未来我国安防行业总收入将突破8000亿
PLD设计速成(8)-下载验证
Vishay发布宽体IGBT和MOSFET驱动器 可用于高压应用领域
蜂鸣器是干什么用的呢
华硕ZenFone AR配置8GB运存,引领新的风潮吗?
直流有源电力滤波器在稳定/脉冲电源中的工作原理及其应用前景
2019年国际化将超越5G技术 成为国产手机寻求增长最重要的机遇
IMEC芯片可作为智能手表手势识别的个人雷达
基于ICL7107的数显低频频率计设计
有自家deV970松果处理器、联发科X30版本、骁龙835版本的小米6,米黑再见!
2018年赛灵思意图大举进攻机器学习市场
正运动亮相2023半导体设备材料与核心部件展示会,助力半导体产业高速高精应用