《Innovus教程 - Flow系列 - 摆放宏单元
(理论+实践+命令)》
理论:
在Innovus里面有个新功能是mix placer,可以将Macro当成Std cell一样去自动摆放一起做Place(这样就不用手工做Floorplan了)。
在公司里面Team Try之后发现它的结果挺好的,尤其是Power上面,要比S家的工具低很多(PTPX分析结果,低很多是相对说的,
Flow越靠近后端,其实节省的功耗比例是越低的,没有前端那么显著
)。刚开始看到结果的时候我感觉很不可思议,因为S家的后端工具在低功耗方面优化策略以及优化选项都蛮多的,居然差别挺大的。
本人并没有尝试对比过mix placer的结果,有空也自己Try一下,这里介绍一下传统的Floorplan。
对于Floorplan而言,一般人们更倾向于靠自己的经验去摆放Macro,摆放它们时不仅要考虑面积、互联线长等传统问题,还需要考虑Place阶段,Macro的摆放对于Place的影响。因为Macro从本质上讲就是一个巨型的标准单元,很多Macro也存在于各个模块内,在Floorplan阶段并不能和模块对等的考虑。对于这个问题,人们根据实际生活中的经验,提出一种边缘摆放
(edge place)
的方法。
边缘摆放的好处主要来源于下面两点:
1)从目前芯片设计的趋势来看,芯片中除了计算单元外就是随机存储单元RAM、只读存储单元ROM等。这些存储单元占据的芯片面积在有些设计中甚至超过百分之五十。对于存储单元来说&#