将综合部分会划归为前端
将综合划归为后端
将综合单独出来,变为中端(ME:middle-end)
这个话题放到前几年,可能还不是很敏感,从2020年开始,国内的初创公司多了很多,大部分都是BEless的模式。从保护自身核心利益出发,RTL代码是不便于公开的,所以采用网表交付就成为最优解,上述基本流程变成了
SDC质量:不是不好,是不够好
时钟有,但是不全
gen-clock都有,但是和master的关系不清楚
clock的定义点不太合适
CGU的写法对于后端实现的友好性
DFT对SDC的影响考量
clock 结构优化
使用MCP替换Falsepath
IO约束的合理性
时钟树的重聚和细节(launch vs capture)
等等
UPF的各种小issue
load_upf可以,但是check_mv有error
isolation/LS插入的质量细节商榷
power-domain/power-state的合并和优化
对层次化设计的支持
全芯片rail的logic和physical的布局
等等
时钟的定义点必须是leaf cell的output pin:有时候为了方便,前端会把时钟的点位定义点放到CGU的一个hierarchy的输出pin,这样很容易下约束,但是会面临port punch的挑战,最惨代价就是在BE侧,导致这个时钟丢失。
综合view
时钟的定义点需要尊重原著:有时候,clock是从外部的PAD进来的,但是由于PAD都是双向口,那么进来的那一支一定是固定的pin,可能会有同学用这个点定义clock, 譬如这里的C pin
这个从原理上讲,没有问题,但是却没有精确反应实际情形,有实际的风险,真实且正确的定义是这样的:
这样做是有它的道理的,不仅仅是点位的问题,一起看一下下图
喜欢文章的小伙伴,点赞加关注吧!
欢迎一起加入号主的知识星球,近期热门话题:
CTS
PAD ring planning
eBook share: tech_file and design rule
PT tips
LVS naming conversion and physical cell handling
Calibre GDS operation
......