老驴曾找过20 多位在数字后端领域深耕多年的老专家,帮老驴做了系列P&R 问答,所有人一致认为 Floorplan 是P&R 过程中最重要的一步,Floorplan 决定着PPA, TAT, Congestion, 决定着design 是否可以收敛。
然而抛开大局观,Floorplan 也是个体力活,要把成百上千块macro 摆到『合适』的位置,为了找到『合适』的位置,需要多次迭代,以得到一个较好的起点。回到大局观,Floorplan 好比『排兵布阵』,需要考虑多种因素,传统做法要靠老司机在多个TO 中用肥肉跟头发换来的经验,去模糊地找到一个『类似最优解』。
对于求最优解跟近似最优解,计算机要比人擅长得多,综合工具跟P&R 工具做的大部分事儿就是求近似最优解,在集成电路早期,placement 跟routing 也都靠人工,随着计算机算力的提高跟EDA 软件的发展,P&R 其他方面早已完全由机器代劳。时到今日,终于技术又向前进了一步,Floorplan 也可由EDA 代劳了,只是到目前为止还有一些限制,尤其对奇形怪状的设计,然而随着人工智能的纳入,相信在不久的将来整个P&R 过程都可被EDA 工具代劳。
Innovus 的mixed placement flow, 并不是工具先自动摆完macro 生成一个Floorplan, 而是在placement 这一步,将macro 和std cell 一起摆放,在摆放的时候会考虑congestion, wire-length 跟timing, 用数学语言描述就是求函数F(congestion, wire-length, timing) 的最优解或近似最优解。
从如下流程图可以看到,传统流程中Floorplan 这一步被集成到了placement 中,其他步骤完全不变。
任何技术进步的背后都有无数被燃烧的青春岁月,任何解放人类于烦苦劳作的工具都应得到嘉奖,嘉奖mixed placement 的方式是license: Innovus\_GigaPlace\_XL\_Opt. 从Innovus 18.1 开始,就可以使用mixed placement, 但在Innovus 18.1 中这是一个限制的功能,需要设置如下变量,从19.1 开始不需要再设置如下变量。
setLimitedAccessFeature invsMacroPlace 1
作者:陌上风骑驴
来源:https://mp.weixin.qq.com/s/KyOyUiMlnwUFnlMlyzxzTw
作者微信公众号
相关文章推荐
更多IC设计技术干货请关注IC设计技术专栏。