本章节学习目标是通过工具的前期global router 引擎来分析发现潜在绕线问题
GUI操作步骤:Route—Early Global Route (等效命令是earlyGlobalRoute)
上图中选择的Route layer这步界面操作等效于使用下面的命令。
setRouteMode -earlyGlobalMaxRouteLayer 3 -earlyGlobalMinRouteLayer 1
备注:这里计划哪些层用于绕线,我们就选择可用于绕线的层次范围,比如我们可用于绕线的层次为M1-M8,那么这里我们就分别填入8和1即可。
这里我们打开placeOpt这个database,它是工具做完placement后保存的数据。
restoreDesign ../saved/placeOpt.inv.dat DTMF_CHIP
place做完我们一定要学会看congestion map。查看的方法如下:
如果没有弹出左侧的Congestion map界面,我们可以下图中这个类似“图片”的图标。
下面带大家看懂layout上显示的map的含义
以上图的V: 12/7为例,它表示当前的Congestion是垂直方向的,而且这个区域的可用绕线资源是7根,而实际该区域需要的绕线资源是12根,所以这里暗示我们这个区域存在一定的绕线风险。而且我们可以看到这个区域是用橙色来标示的,而图中的V: 5/2 则是用比较淡的颜色标示,代表它的绕线风险相比V:12/7要小。
而且如果我们仔细观察的话,就会发现这个设计的congestion map都是垂直V方向的congestion。
这里,我们也可以通过下面的操作来自动显示。
保存设计
lab中教大家的是图形界面操作方式。这里小编教大家如何用命令来保存设计。命令如下:
saveDesign ../saved/earlyGlobalRouted.inn
保存后退出软件后,可以通过下面的命令再次打开保存的database。
restoreDesign ../saved/earlyGlobalRouted.inn.dat DTMF_CHIP
我们发现工具做完placement后的database中居然存在绕线了,这是为什么呢?
答案是这些线并非真实绕线,而是工具做placement时做的early global route出来的线。我们随意选取一条线来看:
选中一条net对应的命令是:
deselectAll
selectNet DTMF_INST/RESULTS_CONV_INST/n_1310
Innovus选中任何object前务必做下deselectAll,否则选中的object可能还是之前选中的object。