新闻中心

EEPW首页 > EDA/PCB > 设计应用 > 微捷码Talus TCL界面实现复杂分区平面布局

微捷码Talus TCL界面实现复杂分区平面布局

作者: 时间:2009-06-26 来源:网络 收藏

第V章:技巧

随着设计中宏数量的增多,它通常会不断在布局中创建狭长通道,且那些通道有可能在布局中被阻挡。我们常在堆叠的macro附近发现意味着一个缓冲区的输入输出方向发生了小角度的旋转,它会带来了总线长的增加,这对布线和时序来说都极为不利。基本上,它算是个设置得不好的缓冲区。我们不会想在我们的设计中看到它们。例如:

图11: Zigzag缓冲区

在图11中,红箭头显示了一个缓冲区的输入输出连线方向;绿箭头显示了输入/输出连线的飞线。两条绿线组成一个锐角。在这个例子中,缓冲区并未改善任何问题,反而带来了一些转换问题。有时,单使用工具是难以解决这个问题,而且反而增加了一条缓冲链。为解决这个问题,我们可开发脚本并有选择地在通道中设置一些缓冲区。

该脚本要旨是找出输入/输出连线的飞线间锐角。既然我们知道zigzag缓冲区、驱动单元和接收单元的坐标,那么我们就可使用类似下方的基本三角形计算方式来得出所要结论。同时,这3个点也组成一个三角形(图12)。根据三角函数,如果我们知道一个三角形的三边长,那么我们就能够算出这个三角形的每个角的角度为多少:公式为:Cosθ = (a² + b² – c²)/2ab; Θ = acos(cosθ)/π*180

图12:三角函数

如果Θ90 度,我们可把其视为zigzag缓冲区。这可帮助设计师在布局后快速地识别Zigzag缓冲区,在进一步优化前正确设置好缓冲区。

总结:

尽管变得困难重重、极富挑战性,但好的设计分析总能使您的布局工作变得轻松些。在本文中,我们虽然分享了一些可达成这一目标的技术,但一份好的,其要求远不止这些。每份设计都有其独特问题存在,我们应充分利用Talus可编程界面,让任务的完成成为可能。


上一页 1 2 3 4 5 6 下一页

评论


技术专区

关闭