ALLEGRO 约束规则设置步骤一
在进行高速布线时,一般都需要进行线长匹配,这时我们就需要设置好 constraint 规则,并将这些规则分配到各类 net group 上。下面以 ddr为例,具体说明这些约束设置的具体步骤。 1.布线要求 DDR 时钟: 线宽 10mil,内部间距 5mil,外部间距30mil,要求差分布线,必需精确匹配差分对走线误差,允许在+20mil 以内 DDR 地址、片选及其他控制线:线宽 5mil,内部间距 15mil,外部间距 20mil,应走成菊花链状拓扑,可比 ddrclk 线长 1000-2500mil,绝对不能短 DDR 数据线,ddrdqs,ddrdm线:线宽 5mil,内部间距 15mil,外部间距 20mil,最好在同一层布线。数据线与时钟线的线长差控制在 50mil 内。 2.根据上述要求,我们在 allegro 中设置不同的约束 针对线宽(physical),我们只需要设置 3 个约束:DDR_CLK, DDR_ADDR, DDR_DATA 设置好了上述约束之后,我们就可以将这些约束添加到 net上了。点击 physical rule set中的 attach……,再点击右边控制面板中的 more, 弹出对话框 如上图所示,找到 ckn0和 ckp0,点击 apply,则弹出 选中左边列表中的NET_PHYSICAL_TYPE, 在右边空格内输入DDR_CLK, 点击apply,弹出 即这两个 net已经添加上了 NET_PHYSICAL_TYPE 属性,且值为 DDR_CLK. 类似的,可以将 DDR 数据线,数据选通线和数据屏蔽线的 NET_PHYSICAL_TYPE 设为 DDR_DATA, DDR 地址线,片选线,和其他控制线的 NET_PHYSICAL_TYPE 设为DDR_ADDR. 上述步骤完成后,我们就要将已经设好的约束分配到这些 net group 上。 如下图点击 assignment table…… 弹出对话框 如下图所示,我们对不同的信号组选择各自的 physical 约束