介紹:
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
詳細解釋:
MAXSTACK指定的是single cut via允許連續堆疊的最大數目,如果超過它就是DRC違反(不考慮multi cut via);
RANGE指定的是檢查的最低和最高層,如果不做約束的話默認檢查的所有繞線層;
NOSINGLE(可選項),前面的MAXSTACK指定的是single cut via允許連續堆疊的最大數目,是不考慮multi cut的,因此遇到multi cut via的話會認為中間是斷開的,而如果指定NOSINGLE的話則認為multi cut via沒有打斷堆疊,還會算在內。
舉例:
如上圖所示,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的。
審核編輯:劉清
-
DRC
+關注
關注
2文章
150瀏覽量
36354
原文標題:MaxViaStack DRC規則詳解
文章出處:【微信號:集成電路設計及EDA教程,微信公眾號:集成電路設計及EDA教程】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論