首页 理论教育学会执行布线命令的方法

学会执行布线命令的方法

【摘要】:完成相关设置后可以进行初步的布线,操作命令为route_opt-initial_route only。如果是相对复杂的设计,可以将该结果用于时序检查、congestion检查和特殊单元布线要求检查等。可以在布线之后再次进行时序检查,如果还有一些无法容忍的违例,需要调整布线的相关设置或者采用route_opt-incremental的方式继续优化;如果符合设计人员的预期,便可以使用命令verifyzrtroute对布线违例情况进行检查,即检查是否有天线效应的违例;是否有违反TF中布线规则;以及用户自行设定的布线是否有违例的情况。

完成相关设置后可以进行初步的布线,操作命令为route_opt-initial_route only。

虽然是初步的布线操作,但实际上同样进行了global routing、track assignment和detail routing这3个阶段的布线,因此得到的是完整的布线结果,即片上所有的数字电路连线均已连接,只不过在该命令下不会对单元的位置和驱动能力进行任何优化,只是将单元之间的连接关系用具体的连线体现出来而已。如果是非常简单的设计,可以将该结果作为最终的布线结果,进行下一阶段的工作(ECO阶段或者是DRC,LVS等sign-off检查与修改)。如果是相对复杂的设计,可以将该结果用于时序检查、congestion检查和特殊单元布线要求检查等。其中时序结果由于考虑到了具体的连线,因此可以去掉时钟裕量(clock uncertainty),以在布线中取得更优的结果。根据检查结果优化布线设置,然后便进行正式的布线命令

相比初步的布线命令,这一步的操作考虑到了实际连线上的延时,因此能实现更好的时序优化效果。可以在布线之后再次进行时序检查,如果还有一些无法容忍的违例,需要调整布线的相关设置或者采用route_opt-incremental的方式继续优化;如果符合设计人员的预期,便可以使用命令verifyzrtroute对布线违例情况进行检查,即检查是否有天线效应的违例;是否有违反TF中布线规则(如最小间距);以及用户自行设定的布线是否有违例的情况。检查完后如果只有数量较少的违例情况,设计人员可采用route_zrt_detail-incremental true来进行修正,如果有数量较大的违例情况,设计人员就需要具体来查看一下违例的情况,看是否有布线规则(包括TF中的和用户自定义的)不合理处,或者是局部congestion过高,难以修正的情况存在,如果有的话需要首先修正这类错误,然后再进行修正,直至修正完成所有错误。