详细讲解一下MaxViaStack DRC的规则

电子说

1.3w人已加入

描述

介绍:

max via stack就是design rule对可以上下堆叠的via(多层via的cut有overlap)的数量有限制,不能超过要求,否则就会报MaxViaStack的DRC。

简单举个例子:比如Tech LEF/tf文件要求是4,那么v1-v2-v3-v4-v5在同一位置overlap就会报DRC。

下面以tech LEF为例详细讲解一下。

LEF里面的约束:

PROPERTYDEFINITIONS

LIBRARY LEF58_MAXVIASTACK STRING

"MAXVIASTACK maxStack [NOSINGLE] [RANGE bottomLayer topLayer] ;" ;

END PROPERTYDEFINITIONS

详细解释:

DRC

MAXSTACK指定的是single cut via允许连续堆叠的最大数目,如果超过它就是DRC违反(不考虑multi cut via);

RANGE指定的是检查的最低和最高层,如果不做约束的话默认检查的所有绕线层;

NOSINGLE(可选项),前面的MAXSTACK指定的是single cut via允许连续堆叠的最大数目,是不考虑multi cut的,因此遇到multi cut via的话会认为中间是断开的,而如果指定NOSINGLE的话则认为multi cut via没有打断堆叠,还会算在内。

举例:

DRC

如上图所示,a和b都是只有single via堆叠,a从m1-m5堆叠了4层via,超过了第一行MAXSTACK 3 RANGE m1 m6的约束,b的话只有m1-m3,堆叠了3层via,没有超过要求,所以没有DRC违反。

c, d, e都是有multi cut via的情况,c的话如果只看signle via的话没有超过下面tech LEF第一行的要求,如果同时考虑multi cut via的话,那么M1-M6的via都是有堆叠的,堆叠了5层via,所以违反了第二行MAXSTACK NOSINGLE 3 RANGE m1 m6的要求,会报DRC违反。

后边的d e也是类似。

问题的修复:

知道上面的规则之后,要想解这类问题就非常简单了,只要随便把中间或者某层via错开一段距离,让它们之间没有overlap就可以了。注意检查错开之后堆叠的via的数量是否满足要求。不要出现这种情况:比如DRC要求只允许堆叠3层,现在堆叠了v1-v5,你想修这个问题结果你挪动了v5,那么还是解不了这个DRC的。






审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐
  • DRC

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分