
相关阅读Design Compilerhttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm1001.2014.3001.5482这篇文章其实源于博主的一个偶然发现在使用DC-T并查看Layout时发现了端口对象的bbox与其location无法对应上如图1所示。图1 端口的不匹配问题其中左侧的终端是report_physical_constraints命令的输出其中中的LOCATION与右侧的属性框中的location不匹配相差了0.1。正常情况下比如对于一个宏单元这两个地方的位置应该是相同的如图2所示。图2 宏单元的匹配其中还可以从右侧的属性框中观察到宏单元还拥有一个bbox属性该属性记录了宏单元的左下角坐标和右上角坐标可以看出三者都是匹配的。如果我们尝试获取端口的bbox属性会发现其与report_physical_constraints命令的输出即LOCATION对应而还是与属性框中的location不匹配如图3所示。图3 端口的bbox属性细心的读者可能已经发现端倪x方向和y方向的长度差0.1恰好是图1中SHAPE的一半没错其实属性框中的location是端口中心的坐标而不是左下角的坐标了该性质对于引脚也是如此。如何验证上述结论呢可以改变端口的形状来验证这一点使用下面的命令可以改变端口的形状这相当于把端口y方向的长度加倍为0.4了而x方向的长度保持为0.2。set_attribute -quiet [get_terminal {sys_clk}] bbox {{1068.635 1354.990} {1068.835 1355.390}}更改后属性框中的location如图4所示可以看出此时x方向的长度差仍然为0.1而y方向的长度差变成了0.2。图4 更改后的端口位置