TWI783623B - 用於修復佈局違規的方法和系統 - Google Patents
用於修復佈局違規的方法和系統 Download PDFInfo
- Publication number
- TWI783623B TWI783623B TW110129808A TW110129808A TWI783623B TW I783623 B TWI783623 B TW I783623B TW 110129808 A TW110129808 A TW 110129808A TW 110129808 A TW110129808 A TW 110129808A TW I783623 B TWI783623 B TW I783623B
- Authority
- TW
- Taiwan
- Prior art keywords
- layout
- violation
- violations
- design rule
- operations
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Architecture (AREA)
- Computer Networks & Wireless Communication (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Communication Control (AREA)
Abstract
一種用於修復佈局違規的方法,包括以下操作:接收第一佈局的設計規則違規;根據第一佈局的第一晶片特徵,將設計規則違規的第一違規分類為預定義類別的第一類別;為第一佈局的第一晶片特徵中的至少一個第一晶片特徵生成與第一違規相關聯的第一向量陣列;根據所述第一向量陣列,從預存操作中選擇第一操作;基於第一佈局和第一操作來生成第二佈局。此外,一種用於修復佈局違規的系統亦在此揭露。
Description
本揭示內容是有關於一種用於修復佈局違規的方法和系統。
佈局圖案的設計規則檢查(DRC,design rule checking)違規是在手動專門分析中修復的。使用者僅僅依賴電子設計自動化(EDA,electronic design automation)工具來修復違規。違規是使用試錯法方法修復的。為了獲得違規和佈局圖案的總體情況,逐個檢查違規類型。
本揭示內容是關於一種用於修復佈局違規的方法,包括:接收第一佈局的設計規則違規;根據第一佈局的第一晶片特徵,將設計規則違規的第一違規分類為預定義類別的第一類別;為第一佈局的第一晶片特徵中的至少一個第一晶片特徵生成與第一違規相關聯的第一向量陣列;根據第一向量陣列,從預存操作中選擇第一操作;基於第一佈局和第一操作來生成第二佈局。
本揭示內容是關於一種包括記憶體和處理器的用於修復佈局違規的系統。記憶體用以儲存電腦程式代碼。處
理器用以執行記憶體中的電腦程式代碼以執行以下操作:根據晶片的第一佈局的設計規則違規的資料,將設計規則違規分類為預定義類別;根據第一佈局的設計規則違規的資料,將預存操作的第一操作自動分配給設計規則違規中的每個設計規則違規;以及基於第一佈局和第一操作來生成第二佈局。
本揭示內容是關於一種用於修復佈局違規的方法,包括:根據晶片的第一佈局的晶片特徵將第一佈局的設計規則違規中的每一個設計規則違規分類為預定義類別,晶片特徵包括第一佈局的結構特徵、環境特徵、違規類型或電路問題中的至少一項;根據預定義類別中的一個預定義類別以及與設計規則違規中的每一個設計規則違規相關聯的晶片特徵中的至少一個晶片特徵,將預存操作的第一操作分配給設計規則違規;根據第一操作來修改第一佈局以生成第二佈局;基於第二佈局來製造晶片。
100、200、400、900:方法
102、104、106、108、110、202、204、206、208、210、212、402、404、406、408、410、412:操作
300:系統
320:處理器
360:記憶體、儲存介質
350:匯流排
330:網路介面
340:網路
310:輸入/輸出(I/O)介面
361:代碼、指令
362:資料庫
363:使用者介面(UI)
364:布圖
365:模式資料場
500、700、800a、800b、1000:圖示
512、714:區域
514、516:導線
600:查閱資料表
716:佈線阻擋
712:標記
1100:系統
1110:設計室
1111:IC設計布圖
1120:遮罩室
1121:資料準備
1122:遮罩製造
1123:遮罩
1130:IC製造商/製造者(fab)
1132:晶圓製造
1133:晶圓
1140:IC元件
當與隨附圖式一起閱讀時,根據以下詳細描述可最好地理解本揭露的各態樣。注意,根據此工業中的標準實務,各種特徵未按比例繪製。實際上,為了使論述清晰,可任意地增加或減小各種特徵的尺寸。另外,作為本揭示內容之實施例的實例,圖式為說明性的,而無意於進行限制。
第1圖是根據本公開的一些實施例的生成佈局的方法100的流程圖。
第2圖是根據本公開的各種實施例的生成佈局的方法200的流程圖。
第3圖是根據本公開的一些實施例的用於設計積體電路佈局設計的電子設計自動化(EDA)系統300的框圖。
第4圖是根據本公開的一些實施例的標識與佈線壅塞相對應的違規的方法的流程圖。
第5圖是根據本公開的一些實施例的修復與佈線壅塞相對應的違規的圖示500。
第6圖是根據本公開的一些實施例的查閱資料表600,該查閱資料表600用以搜索策略以修復與佈線壅塞不相關聯的違規。
第7圖是根據本公開的一些實施例的添加佈線阻擋(routing block)的圖示700。
第8A圖是根據本公開的一些實施例的修復與引腳存取相關聯的違規的圖示800a。
第8B圖是根據本公開的一些實施例的修復與引腳存取相關聯的違規的圖示800b。
第9圖是根據本公開的一些實施例的生成和評估與佈局的違規相對應的修復策略的方法900的流程圖。
第10圖是根據本公開的一些實施例的與不同佈局相對應的違規的數量的示意圖。
第11圖是根據一些實施例的積體電路製造系統以及相關聯的積體電路製造流程的框圖。
以下揭露提供用於實施所提供標的物之不同特徵的許多不同實施例或實例。下面描述部件及佈置的特定實例以簡化本揭露。當然,該些僅為實例,而無意於進行限制。例如,在以下描述中,第一特徵在第二特徵上方或第二特徵上之形成可包括第一特徵與第二特徵直接接觸形成之實施例,且亦可包括額外特徵可在第一特徵與第二特徵之間形成以使得第一特徵與第二特徵可不直接接觸之實施例。另外,本揭露可在各個實例中重複元件符號及/或字母。此重複係出於簡單及清晰的目的,且其本身並不指示所論述各個實施例及/或配置之間的關係。
此外,為了便於描述,在本文中可使用諸如「在......下方」、「在......下面」、「在......之下」、「在......上方」、「在......之上」等空間相對術語來描述一個元素或特徵與另一元素或特徵的關係,如圖中所示。除了在圖中描述的定向之外,空間相對術語亦旨在涵蓋元件在使用或操作中的不同定向。設備可以其他方式定向(旋轉90度或以其他定向),且可同樣相應地解釋本文中使用的空間相對描述詞。
除非另有定義,本文使用的所有術語(包括技術和科學術語)具有與本揭示內容所屬領域的普通技術人員通常理解的相同的含義。將進一步理解的是,諸如在通常使用的字典中定義的那些術語應當被解釋為具有與它們在相關技術和本揭示內容的上下文中的含義一致的含義,並且
將不被解釋為理想化的或過度正式的意義,除非本文中明確地這樣定義。
雖然本文中使用「第一」、「第二」、…等用語描述不同元件,該用語僅是用以區別以相同技術用語描述的元件或操作。除非上下文清楚指明,否則該用語並非特別指稱或暗示次序或順位,亦非用以限定本揭示內容。舉例來說,第一元件可以被稱為第二元件,且第二元件可以被稱為第一元件,而依然在本揭示內容的範圍內。
這裡使用的術語僅僅是為了描述特定實施例的目的,而不是限制性的。如本文所使用的,除非內容清楚地指示,否則單數形式「一」、「一個」和「該」旨在包括複數形式,包括「至少一個」。「或」表示「及/或」。如本文所使用的,術語「及/或」包括一個或多個相關所列項目的任何和所有組合。還應當理解,當在本說明書中使用時,術語「包括」及/或「包含」指定所述特徵、區域、整體、步驟、操作、元件的存在及/或部件,但不排除一個或多個其它特徵、區域整體、步驟、操作、元件、部件及/或其組合的存在或添加。
第1圖是根據本公開的一些實施例的生成佈局的方法100的流程圖。如第1圖所示,方法100包括操作102、104、106、108和110。在一些實施例中,執行方法100以基於佈局L1生成佈局L2。在一些實施例中,方法100是在晶片製造過程的工程師變更單(ECO,engineer change order)階段實現的。
如第1圖所示,在操作102處,接收與佈局L1相關聯的設計規則檢查(DRC)違規VL1以及自動放置和佈線(APR,automatic placing and routing)資料庫。在一些實施例中,DRC違規VL1對應於佈局L1的物理驗證(PV,physical validation)錯誤。PV錯誤的示例包括但不限於:由於缺少冗余通孔而導致的違規、金屬間距違規、天線違規、阱間距違規、金屬幾何違規(例如,特定金屬層的最小面積)等等。
在操作104處,根據與DRC違規VL1相關聯的晶片特徵,將DRC違規VL1分類為類別CL11-CL13。如第1圖所示,DRC違規VL1中的ADF(自動佈線DRC修復,Auto route DRC Fix)能夠修復的違規FV屬於類別CL11,DRC違規VL1中的ADF和MDF(手動DRC佈局修復,Manual DRC layout Fix)都無法修復的違規NFV屬於類別CL12,並且DRC違規VL1中的ADF無法修復但MDF能夠修復的違規MFV屬於類別CL13。在一些實施例中,由ADF修復的違規FV的操作對應於操作106,如將在下面討論的。
在操作106處,生成多個策略STG來修復違規FV。換句話說,針對違規FV中的相應一個違規FV生成一個策略STG。在一些實施例中,通過從儲存在記憶體(例如,第3圖中的記憶體360)中的預存操作中選擇與策略STG相對應的操作來生成策略STG。在一些實施例中,通過將策略STG應用於佈局L1以修復佈局L1的違規FV來生
成佈局L2。在一些實施例中,策略STG包括生成、去除和/或修改佈局L1的至少一個晶片特徵的操作。
在操作108處,診斷或評估佈局L2。在一些實施例中,在操作108中,評估與佈局L2相關聯的違規FV的違規類型中的相應一個違規類型的減少比率和策略STG的修復率。減少比率取決於違規FV的違規類型中的相應一個違規類型的違規在應用策略STG之前和之後的數量。修復率取決於違規FV的數量、由策略STG修復的違規的數量、以及由策略STG生成的違規的數量。在一些實施例中,根據減少比率和修復率來調整策略STG。減少比率和修復率的進一步細節在下面在參考第9圖的實施例中描述。
在一些實施例中,在操作108之後,在提供佈局L2的同時重複操作102、104、106、108和110。例如,在操作102中,接收與佈局L2相關聯的DRC違規和APR(自動放置和佈線)資料庫,並且在操作104中將與佈局L2相關聯的DRC違規分類為類別CL11-CL13。
在操作110處,根據違規NVF生成修復指南。在一些實施例中,修復指南包括在早於ECO階段的階段處修復違規NVF的操作。
第2圖是根據本公開的各種實施例的生成佈局的方法200的流程圖。如第2圖所示,方法200包括操作202、204、206、208、210和212。在一些實施例中,執行方法200以基於佈局L1來生成佈局L2(如第1圖的方法
100所示),並且方法200包括比第1圖的方法100的操作更詳細的操作。
參考第1圖對第2圖進行說明,在操作202處,根據與DRC違規VL1相關聯的佈局L1的晶片特徵,將DRC違規VL1分類為類別CL21-CL23。在一些實施例中,分類包括根據晶片特徵為DRC違規VL1中的一個DRC違規VL1生成向量陣列,以及根據向量陣列將DRC違規VL1中的該一個DRC違規VL1分類為三個類別CL21-CL23中的一個類別。在一些其他實施例中,每個DRC違規VL1具有相應向量陣列作為分類的參考。換句話說,根據相應向量陣列將DRC違規VL1分類為CL21-CL23。在一些實施例中,向量陣列中的每個參數對應於相應違規的一個方面。例如,如第6圖所示,行R62是與違規V61相對應的向量陣列。參考行R61,行R62包括與違規V61的不同方面(包括例如違規V61的違規類型、形狀、環境條件和類別)相對應的不同級別的參數。
在一些實施例中,通過電子設計自動化(EDA)系統的硬體(例如,第3圖中的EDA系統300)來執行分類。在一些實施例中,由處理器執行分類,該處理器對DRC違規VL1執行分類演算法。例如,如第3圖所示,分類是由EDA系統300的處理器320執行的,該處理器320實現儲存在EDA系統300的記憶體360中的分類演算法。在一些實施例中,分類演算法對應於如第1圖和/或第2圖所示的操作104和/或202。
在一些實施例中,類別CL21對應於DRC違規VL1中的與佈局L1的佈線壅塞相關聯的違規CV,類別CL22對應於DRC違規VL1中的不與佈線壅塞相關聯的違規NCV,類別CL23對應於DRC違規VL1中的ADF方法200無法修復的違規NFV2。在一些實施例中,違規CV和NCV選自第1圖中的違規FV,並且因此,違規CV和NCV對應於第1圖所示的ADF,並且可以通過ADF進行修復。在一些實施例中,違規NFV2對應於第1圖中的ADF無法修復的違規NFV和MFV。
在各種實施例中,根據各種條件從DRC違規VL1中標識違規NFV2。在一些實施例中,條件與佈局L1的輸入/輸出引腳有關。例如,條件包括:引腳未放置、引腳到引腳空間違規、引腳NDR(非預設規則)寬度違規、引腳短路違規、在導線跡線上未居中的引腳、引腳位置超出管芯邊界的引腳、或低於偏好最小層約束的時脈引腳層。在一些實施例中,條件與佈局L1的佈線阻塞有關。例如,條件包括:由於佈線阻塞佔用太多佈線資源而導致的集群區域中的違規或短路、由於佈線阻塞佔用太多佈線資源而導致的非偏好佈線模式違規、由於佈線阻塞阻礙引腳存取而導致的巨集引腳上的違規、或具有佈線阻塞的短路。在一些實施例中,條件與經修復的金屬形狀上的違規有關。
在操作204處,根據與違規CV和NCV相關聯的晶片特徵,生成用於修復違規CV和NCV的策略STG2。在一些實施例中,針對違規CV和NCV定制策略STG2。
在一些實施例中,從儲存在記憶體中的修復策略池中選擇策略STG2。在一些實施例中,違規CV和NCV對應於不同的修復策略池。因此,對於違規CV,僅需要從與違規CV相對應的修復策略池中選擇策略STG2,並且因此節省了在與違規NCV相對應的修復策略池中選擇STG的時間。參考第1圖對第2圖進行說明,策略STG2是如上所述的策略STG的示例。
在操作206處,評估與違規CV、NCV和策略STG2相關聯的修復率和減少比率。在一些實施例中,通過包括從預存操作中選擇的操作的策略來標識和修復與引腳存取相關聯的違規。與引腳存取相關聯的違規的進一步細節在下面與第8A圖和第8B圖相關聯的實施例中描述。在一些實施例中,在操作206處,量化與違規CV、NCV的相應違規類型相對應的策略STG2的減少比率。
在操作208處,根據與佈局L1相關聯的APR和PV之間的校正、對DRC違規VL1的可修正違規做出的標記、以及在策略STG2被執行之後新創建或保留的違規,來生成資料庫。在一些實施例中,資料庫是Calibre結果資料庫(RDB)。
在操作210處,追蹤不同佈局的違規。例如,執行工程變更單(ECO,engineering change order)DRC追蹤以追蹤不同佈局(例如,佈局L1和L2)的違規的數量。
在操作212處,與DRC違規VL1的模式和周圍
環境相關聯的資料DT2被累積以用於調整修復策略池。在一些實施例中,根據違規CV、NCV和策略STG2來預測和生成未儲存在方法200的策略池中的針對違規的適當策略。
第3圖是根據本公開的一些實施例的用於設計積體電路佈局設計的電子設計自動化(EDA)系統300的框圖。EDA系統300用以實現第1圖中公開的方法100和第2圖中公開的方法200的一個或多個操作。在一些實施例中,EDA系統300包括APR系統。
在一些實施例中,EDA系統300是通用計算設備,包括硬體處理器320和非暫態電腦可讀儲存介質360。除其他之外,儲存介質360被編碼有(即,儲存有)電腦程式代碼(指令)361(即,一組可執行指令)。硬體處理器320執行指令361(至少部分地)代表EDA工具,該EDA工具實現包括例如方法100和/或方法200的方法的一部分或全部。
處理器320經由匯流排350電耦合至電腦可讀儲存介質360。處理器320還通過匯流排350電耦合至I/O介面310和製造工具370。網路介面330匯流排320還通過匯流排350電連接到處理器320。網路介面330連接到網路340,並且因此,處理器320和電腦可讀儲存介質360能夠通過網路340連接到外部元件。處理器320用以執行編碼在電腦可讀儲存介質360中的電腦程式代碼361,以使EDA系統300可用於執行所提到的過程和/或方法的
一部分或全部。在一個或多個實施例中,處理器320是中央處理單元(CPU)、多處理器、分散式處理系統、專用積體電路(ASIC)、和/或合適的處理單元。
在一個或多個實施例中,電腦可讀儲存介質360是電的、磁的、光的、電磁的、紅外的、和/或半導體的系統(或裝置或裝置)。例如,電腦可讀儲存介質360包括半導體或固態記憶體、磁帶、可移動電腦磁片、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、剛性磁片、和/或光碟。在使用光碟的一個或多個實施例中,電腦可讀儲存介質360包括唯讀光碟(CD-ROM)、讀/寫光碟(CD-R/W)、和/或數位視訊光碟(DVD)。
在一個或多個實施例中,儲存介質360儲存電腦程式代碼361,該電腦程式代碼361用以使EDA系統300(其中這種執行(至少部分地)表示EDA工具)可用於執行所提到的過程和/或方法的一部分或全部。在一個或多個實施例中,儲存介質360還儲存有助於執行所提到的過程和/或方法的一部分或全部的資訊。在一個或多個實施例中,儲存介質360儲存標準單元的資料庫362,該標準單元包括本文所公開的這類標準單元,例如,包括下面參考第7圖討論的佈線阻擋716的單元、或包括下面參考第10圖討論的有源區域AA1-AA4的單元。
在一個或多個實施例中,儲存介質360儲存布圖364,該布圖364例如對應於佈局L1和L2。在一個或多個實施例中,儲存介質360儲存模式資料場365,該模式
資料場365用以累積與和第2圖中示意性示出的操作212相對應的DRC違規VL1的模式和周圍環境相關聯的資料DT2。在一些實施例中,模式資料場365用以形成大資料資料庫以改善策略設計。在一些實施例中,模式資料場365用以對資料DT2執行至少一個測試,以標識改進的空間。在一些實施例中,模式資料場365用以從資料DT2提取晶片特徵,包括例如佈局L1和L2的基於數值和圖像的屬性。
在一個或多個實施例中,儲存介質360是儲存電腦程式代碼的記憶體。電腦程式代碼對應於上面在第1圖和第2圖中描述的操作,並且用以由處理器320執行。在一個或多個實施例中,處理器320用以執行記憶體中的電腦程式代碼以執行以下操作:根據晶片的第一佈局(例如,佈局L1)的設計規則違規(例如,DRC違規VL1)的資料(例如,第6圖中的查閱資料表600中包括的資料),將設計規則違規分類為預定義類別(例如,類別CL11-CL13);根據第一佈局的設計規則違規的資料,將預存操作(例如,與查閱資料表600的列C67中的框相對應的操作)的第一操作(例如,與列C67中的一個框相對應的操作)自動分配給每個設計規則違規;以及基於第一佈局和第一操作來生成第二佈局(例如,佈局L2)。
EDA系統300包括I/O介面310。I/O介面310耦合到外部電路。在一個或多個實施例中,I/O介面310包括鍵盤、小鍵盤、滑鼠、軌跡球、觸控板、觸控式螢幕、
和/或游標方向鍵,用於將資訊和命令傳達給處理器320。
EDA系統300還包括耦合到處理器320的網路介面330。網路介面330允許EDA系統300與連接一個或多個其他電腦系統的網路340進行通信。網路介面330包括無線網路介面,例如BLUETOOTH、WIFI、WIMAX、GPRS或WCDMA;或有線網路介面,例如ETHERNET、USB或IEEE-1364。在一個或多個實施例中,在包括EDA系統300的兩個或更多個系統中實現所提及的過程和/或方法(包括例如方法100和/或方法200)的一部分或全部。
EDA系統300還包括耦合至處理器320的製造工具370。製造工具370用以基於由處理器320處理的設計檔和/或如上所述的IC佈局設計來製造與佈局(包括例如第1圖、第8A圖和第8B圖所示的佈局L2、L82a、L82b)相對應的晶片。
EDA系統300用以通過I/O介面310接收資訊。通過I/O介面310接收到的資訊包括指令、資料、設計規則、標準單元的庫、和/或供處理器320處理的其他參數中的一者或多者。該資訊通過匯流排350傳輸到處理器320。EDA系統300用以通過I/O介面310接收與UI相關的資訊。該資訊儲存在電腦可讀介質360中作為使用者介面(UI)363。
在一些實施例中,所提到的過程和/或方法的一部分或全部被實現為供處理器執行的獨立軟體應用。在一些實
施例中,所提到的過程和/或方法的一部分或全部被實現為作為附加軟體應用的一部分的軟體應用。在一些實施例中,所提到的過程和/或方法的一部分或全部被實現為軟體應用的外掛程式。在一些實施例中,所提到的過程和/或方法中的至少一者被實現為作為EDA工具的一部分的軟體應用。在一些實施例中,所提到的過程和/或方法的一部分或全部被實現為由EDA系統300使用的軟體應用。在一些實施例中,使用諸如可從CADENCE DESIGN SYSTEMS,Inc.獲得的VIRTUOSO®、或其他合適的佈局生成工具之類的工具,來生成包括標準單元的布圖。
在一些實施例中,這些過程被實現為儲存在非暫態電腦可讀記錄介質中的程式的功能。非暫態電腦可讀記錄介質的示例包括但不限於外部/可移動和/或內部/內置儲存裝置或記憶體單元,例如,諸如DVD之類的光碟、諸如硬碟之類的磁片、諸如ROM、RAM、儲存卡之類的半導體記憶體等中的一個或多個。
第4圖是根據本公開的一些實施例的標識與佈線壅塞相對應的違規的方法400的流程圖。如第4圖所示,方法400包括操作402、404、406、408、410和412。在一些實施例中,方法400被執行以從第1圖中的佈局L1的違規FV中標識與佈線壅塞相對應的違規CV。在一些實施例中,與佈線壅塞相關聯的違規位於相應的集群框區域(cluster box area)中,該集群框區域包括例如與操作410相關聯的集群框區域。
在操作402處,接收違規FV中的相應一個違規FV的位置值LV4。換句話說,接收違規FV的多個位置值LV4。在一些實施例中,違規FV中的一個違規FV在佈局L1的層LY上生成。換句話說,違規FV在佈局L1的多個層LY上相應地生成。在一些實施例中,根據違規FV中的一個違規FV的位置值LV4來標識違規FV中的一個違規FV的層LY。
在操作404處,根據與違規FV相關聯的位置值LV4和晶片特徵,執行DBSCAN(具有雜訊的應用的基於密度的空間聚類,Density-based spatial clustering of applications with noise)演算法。在一些實施例中,執行DBSCAN演算法以標識佈局L1的集群框區域。
在操作406處,生成與違規FV相關聯的等效金屬密度值EMD。在一些實施例中,等效金屬密度值EMD由定義,其中層LY1是層LY之一,比率RT(LY1)是層LY1上的違規的數量與佈局L1的DRC違規VL1的總數量的比率,金屬密度MD(LY1)是層LY1的金屬密度。
在操作408處,根據等效金屬密度值EMD,從違規FV中標識違規V41。在一些實施例中,在等效金屬密度值EMD滿足過濾標準時,標識違規V41。如第4圖所示,過濾標準包括等效金屬密度值EMD大於或等於在0.25-0.3範圍內的值。在一些實施例中,違規V41被認
為是佈局L1的集群候選。
在操作410處,違規V41由集群框篩檢程式處理。在一些實施例中,集群框篩檢程式評估違規V41中的相應一個違規V41周圍的集群框區域中的違規的數量N4。換句話說,評估違規V41中的相應多個違規V41周圍的集群框區域中的多個數量N4。在一些實施例中,每個集群框區域具有大於或等於1.0μm×1.0μm的尺寸。
在操作412處,根據違規V41的數量N4,從違規V41中標識違規CV。在一些實施例中,在數量N4大於或等於10時,標識違規CV。在一些實施例中,數量N4大於或等於10的集群框區域被認為是有效集群框。在違規CV位於有效群集框中時,違規CV對應於佈線壅塞。
第5圖是根據本公開的一些實施例的修復與佈線壅塞相對應的違規的圖示500。如第5圖所示,圖示500包括佈局的狀態S51和狀態S52。與佈線壅塞相關聯的違規V51(其在狀態S51中示出)被修復,並且因此佈線被修改(其在狀態S52中示出)。在一些實施例中,違規V51是與第4圖中示出的操作412相對應的違規CV中的一個違規CV。
在狀態S51處,穿過壅塞區域512以連接點P51和P52的導線514被檢測為違規V51。因此,生成相應策略STG5以修復違規V51。在一些實施例中,策略STG5包括引導導線514繞過壅塞區域512的操作。
在狀態S52處,導線516連接點P51和P52,並
且不穿過壅塞區域512。此外,在一些實施例中,導線516不與壅塞區域512接觸。因此,通過根據策略STG5用導線516替換導線514,違規V51被修復。
用於修復與佈線壅塞相關聯的違規的策略不受策略STG5的限制。例如,在一些其他實施例中,策略包括重新定位與壅塞區域相關聯的緩衝器以減輕例如對應於壅塞區域512的壅塞區域。
第6圖是根據本公開的一些實施例的查閱資料表600,該查閱資料表600用以搜索策略以修復與佈線壅塞不相關聯的違規。在一些實施例中,查閱資料表600對應於第1圖中的操作106和/或第2圖中的操作204(其對應于生成用於修復違規的策略)。在一些實施例中,通過第9圖中示出的方法900的操作S91和S92獲得查閱資料表600中的內容,這將在下面更詳細地討論。
如第6圖所示,查閱資料表600包括行R61-R66和列C61-C67。行R61包括與列C61-C67相對應的描述。行R62-R66中的一者對應於DRC違規VL1中的不與佈線壅塞相關聯的違規NCV中的一者,如第2圖所示。換句話說,五個行R62-R66對應於不與佈線壅塞相關聯的違規NCV中的五個違規。
如第6圖的行R61中示出的描述,列C61對應於違規的製造程序的技術節點,例如,技術節點n6、n7和n22。
如第6圖所示,列C62-C66對應於違規NCV的
分類條件。列C62對應於僅具有規則名稱的違規的違規類型。列C63對應於具有某種解釋的違規的違規類型。例如,違規類型對應於天線違規、切割間距、和金屬短路。列C64對應於違規的形狀。例如,形狀對應於僅操作信號、僅時脈信號、以及操作信號到時脈信號。在一些實施例中,操作信號包括但不限於對應於查閱資料表600的晶片的控制信號和資料信號。列C65對應於與違規NCV相關聯的周圍環境。例如,違規的周圍環境對應於胖引腳、局部壅塞、和巨集之下的違規。列C66對應於違規的類別。例如,違規的類別對應於短路問題、引腳存取問題、壞通孔問題、和其他電路問題。總之,列C62-C66是與佈局L1的違規NCV的結構特徵、環境特徵、違規類型或電路問題相對應的分類條件。
如第6圖所示,列C67對應於根據違規NCV的列C62-C66中的分類條件而生成的策略。在一些實施例中,策略的生成包括從預存操作中選擇操作。例如,違規V61的違規條件由行R62和列C62-C66的交匯處的框示出。根據行R62的框,違規V61的違規類型對應於相同遮罩間距的相鄰切割,違規V61的形狀對應於僅操作信號,違規V61的周圍環境對應於違規V61被多晶矽柵(PG,poly gate)阻擋,違規V61的類別對應於短路問題。因此,根據如上所述與違規V61相關聯的違規條件,生成了移動單元的相應策略,其在列C67和行R62的交匯處示出。在一些實施例中,策略選自第2圖的方法200中描述
的修復策略池。
第7圖是根據本公開的一些實施例的添加佈線阻擋的圖示700。如第7圖所示,圖示700包括狀態S71和S72。參考第6圖對第7圖進行說明,下面進一步詳細描述添加與行R63的違規V62相對應的佈線阻擋的策略STG7。狀態S71中示出的違規V62需要通過添加佈線阻擋716來修復,並且因此在狀態S72中添加佈線阻擋716。
如第7圖所示,在狀態S71處,生成策略STG7以用於修復違規V62。標記712標記違規V62的位置。區域714的邊緣延伸到點P71-P74。在一些實施例中,在操作208處做出標記,如第2圖所示。
在狀態S72處,佈線阻擋716被添加到區域714中並且覆蓋標記712。如第7圖所示,佈線阻擋716的邊緣延伸到點P71、P74和區域714的邊緣。在一些實施例中,根據策略STG7,去除區域714中的形狀和通孔。
第8A圖是根據本公開的一些實施例的修復與引腳存取相關聯的違規的圖示800a。如第8A圖所示,圖示800a包括狀態S81a和S82a。佈局L81a和L82a分別對應於狀態S81a和S82a。在一些實施例中,圖示800a對應於修復與佈局L81a的引腳存取相關聯的短路問題的違規。在佈局L82a中修復了短路問題的違規。在一些實施例中,與圖示800a相對應的操作對應於第1圖中的操作106和/或第2圖中的操作204。
如第8A圖所示,根據策略STG8a修改佈局L81a以生成佈局L82a。在一些實施例中,根據佈局L81a生成策略STG8a以用於修復與佈局L81a的引腳存取相關聯的短路問題。
如第8A圖所示,佈局L81a和L82a兩者都包括電源線VDD、VSS和有源區域AA1-AA4。與佈局L81a相比,佈局L82a還包括阻塞BK1-BK8。
在狀態S81a處,有源區域AA1-AA4用以用作佈局L81a的引腳存取。檢測到與有源區域AA1和AA2相關聯的短路問題,並且相應地生成策略STG8a。
在狀態S82a處,根據策略STG8a,生成阻塞BK1-BK8以修復短路問題。通過方法800a根據佈局L81a中與短路問題相關聯的違規以及策略STG8a來生成佈局L82a。在一些實施例中,阻塞BK1-BK8阻擋了佈局L81a上的其他元件接觸電源線VDD、VSS和有源區域AA1-AA4,因此避免了短路問題。
第8B圖是根據本公開的一些實施例的修復與引腳存取相關聯的違規的圖示800b。如第8B圖所示,圖示800b包括狀態S81b和S82b。佈局L81b和L82b分別對應於狀態S81b和S82b。在一些實施例中,圖示800b對應於修復與佈局L81b的引腳存取相關聯的短路問題的違規。在佈局L82b中修復了短路問題的違規。在一些實施例中,與圖示800b相對應的操作對應於第1圖中的操作106和/或第2圖中的操作204。
如第8B圖所示,根據策略STG8b修改佈局L81b以生成佈局L82b。在一些實施例中,根據佈局L81b生成策略STG8b以修復短路問題。第8B圖中的佈局L81b和L82b具有與第8A圖中的佈局L81a和L82a相似的結構,因此第8B圖遵循與第8A圖類似的標記約定。
如第8B圖所示,佈局L81b和L82b兩者都包括電源線VDD、VSS和有源區域AA1-AA4。與佈局L81b相比,佈局L82b還包括引腳阻擋MP1-MP4。在一些實施例中,引腳阻擋MP1-MP4和有源區域AA1-AA4在佈局L82b的不同層中。例如,有源區域AA1-AA4在佈局L82b的金屬零(M0)層中,而引腳阻擋MP1-MP4在佈局L82b的金屬一(M1)層中。
在狀態S81b處,有源區域AA1-AA4用以用作佈局L81b的引腳存取。檢測到與有源區域AA3和AA2相關聯的短路問題,並且相應地生成策略STG8b。
在狀態S82b處,根據策略STG8b,生成引腳阻擋MP1-MP4以用作佈局L82b的引腳存取,並且有源區域AA1-AA4未用以用作佈局L82b的引腳存取,因此修復了短路問題。通過方法800b根據佈局L81b中與短路問題相關聯的違規以及策略STG8b來生成佈局L82b。
第9圖是根據本公開的一些實施例的生成和評估與佈局的違規相對應的修復策略的方法900的流程圖。如第9圖所示,方法900包括操作S91-S94。在下面的描述中,出於說明的目的而不是限制性的,參考第1圖、第2圖和
第6圖。在一些實施例中,方法900對應於第1圖中的操作108和/或第2圖中的操作206。
在操作S91處,接收和分析與佈局L1的DRC違規VL1相關聯的資料,以獲得相應分類條件,例如DRC違規VL1的違規類型、形狀、周圍環境和類別,如第6圖所示。
在操作S92處,根據與DRC違規VL1相關聯的資料,生成策略STG以用於修復ADF能夠修復的違規FV。在一些實施例中,在操作S92處,從DRC違規VL1中標識違規FV、ADF和MDF都不能修復的違規NFV、以及ADF不能修復但MDF能夠修復的違規MFV。
在操作S93處,生成策略STG的修復率FR。在一些實施例中,修復率FR與數量N91-N93相關聯。數量N91是佈局L1的違規FV的數量。數量N92是策略STG修復的違規的數量。數量N93是在將策略STG應用於佈局L1之後生成的違規的數量。例如,修復率FR等於(N91-N92+N93)/N91。
在操作S94處,生成違規類型中的相應一個違規類型的減少比率RR。換句話說,生成多個減少比率RR以對應於違規類型中的每個違規類型。在一些實施例中,違規類型中的一個違規類型的減少比率RR1與數量N94和N95相關聯。數量N94是在將策略STG應用於佈局L1之前違規類型中的一個違規類型的違規的數量。數量N95是在將策略STG應用於佈局L1之後違規類型中的一個違
規類型的違規的數量。例如,減少比率RR1等於1-(N95/N94)。
在一些實施例中,上述方法100、200、400、500、700、800a、800b和900中的至少一者由第3圖中的EDA系統300實現。
第10圖是根據本公開的一些實施例的與不同佈局相對應的違規的數量的示意圖。如第10圖所示,圖示1000包括對應於佈局L101-L104的水準軸和對應於佈局L101-L104中的相應佈局的總違規和可修復違規的數量的垂直軸。例如,圖示1000示出了佈局L101的總違規的數量和可修復違規的數量均大於30。例如,圖示1000示出了佈局L103的總違規的數量大於佈局L103的可修復違規的數量。
如第10圖所示,點P101對應於佈局L101-L104的總違規(包括例如第1圖中的DRC違規VL1)的數量。點P102對應於佈局L101-L104的能夠通過ADF自動修復的可修復違規(包括例如第1圖中的違規FV)的數量。
在一些實施例中,通過上述用於修復違規的方法100、200、400、500、700、800a、800b和900中的至少一者修改佈局L101,來生成佈局L102。因此,佈局L102的總違規的數量和可修復違規的數量小於佈局L101的總違規的數量和可修復違規的數量。類似地,在一些實施例中,通過修改佈局L102來生成佈局L103,並
且通過修改佈局L103來生成佈局L104。
在一些實施例中,總違規對應於第1圖中的DRC違規VL1,並且可修復違規對應於第1圖中的違規FV。在一些實施例中,佈局L101對應於佈局L1,並且佈局L102對應於通過使用第1圖的方法100修改佈局L1而生成的佈局L2。
如第10圖所示,在佈局L103處,總違規的數量大於可修復違規的數量,這意味著佈局L103具有不能由ADF修復的至少一個違規,並且因此需要手動修復。
在第11圖中,IC製造系統1100包括在與製造IC裝置1140有關的設計、開發、和製造週期和/或服務中彼此相互作用的實體,例如設計室1110、遮罩室1120、和IC製造商/製造者(“fab”)1130。IC製造系統1100中的實體通過通信網路連接。在一些實施例中,通信網路是單個網路。在一些實施例中,通信網路是各種不同的網路,例如內聯網和互聯網。通信網路包括有線和/或無線通訊通道。每個實體與一個或多個其他實體進行交互,並且向一個或多個其他實體提供服務和/或從一個或多個其他實體接收服務。在一些實施例中,設計室1110、遮罩室1120和IC fab 1130中的兩個或更多個由單個較大公司擁有。在一些實施例中,設計室1110、遮罩室1120和IC fab 1130中的兩個或更多個在公共設施中共存,並且使用公共資源。
設計室(或設計團隊)1110生成IC設計布圖1111。
IC設計布圖1111包括各種幾何圖案,例如,上面所討論的第8A圖和/或第8B圖中描繪的IC佈局設計。幾何圖案對應於構成要製造的IC裝置1140的各種元件的金屬、氧化物或半導體層的圖案。各個層組合以形成各種IC功能。例如,IC設計布圖1111的一部分包括要在半導體襯底(例如矽晶圓)和設置在半導體襯底上的各種材料層中形成的各種IC特徵,例如有源區域、柵極電極、源極和漏極、層間互連的導電分段或通孔。設計室1110實現適當的設計過程以形成IC設計布圖1111。設計過程包括邏輯設計、物理設計、或布圖和佈線中的一個或多個。IC設計布圖1111被呈現在具有幾何圖案資訊的一個或多個資料檔案中。例如,IC設計布圖1111能夠用GDSII檔案格式或DFII檔案格式表達。
遮罩室1120包括資料準備1121和遮罩製造1122。遮罩室1120使用IC設計布圖1111來製造一個或多個遮罩1123,以用於根據IC設計布圖1111來製造IC裝置1140的各個層。遮罩室1120執行遮罩資料準備1121,其中IC設計布圖1111被轉換為代表性資料檔案(“RDF”)。遮罩資料準備1121提供RDF以用於遮罩製造1122。遮罩製造1122包括遮罩寫入器。遮罩寫入器將RDF轉換為襯底上的圖像,例如遮罩(遮罩版(reticle))1123或半導體晶圓1133。IC設計布圖1111由遮罩資料準備1121處理,以符合遮罩寫入器的特定特性和/或IC fab 1130的要求。在第11圖中,資料準備1121和遮罩
製造1122被示為單獨的元件。在一些實施例中,資料準備1121和遮罩製造1122可以被統稱為遮罩資料準備。
在一些實施例中,資料準備1121包括光學鄰近校正(OPC),其使用光刻增強技術來補償圖像誤差,例如可能由於衍射、干涉、其他處理效果等引起的那些圖像誤差。OPC調整IC設計布圖1111。在一些實施例中,資料準備1121包括其他解析度增強技術(RET),例如離軸照明、子解析度輔助特徵、相移遮罩、其他合適的技術等、或其組合。在一些實施例中,還使用反光刻技術(ILT),其將OPC視為反成像問題。
在一些實施例中,資料準備1121包括遮罩規則檢查器(MRC),該MRC使用一組遮罩創建規則來檢查已經在OPC中進行過處理的IC設計布圖1111,該組遮罩創建規則包括某些幾何和/或連線性限制以確保足夠的餘量,以考慮半導體製造程序等中的可變性等。在一些實施例中,MRC修改IC設計布圖1111以補償遮罩製造1122期間的限制,其可以撤銷由OPC執行的修改的一部分以滿足遮罩創建規則。
在一些實施例中,資料準備1121包括光刻程序檢查(LPC),其模擬將由IC fab 1130實現以製造IC裝置1140的處理。LPC基於IC設計布圖1111來模擬該處理以創建類比製造裝置,例如IC裝置1140。LPC類比中的處理參數可以包括與IC製造週期的各種程序相關聯的參數、與用於製造IC的工具相關聯的參數、和/或製造
程序的其他方面。LPC考慮了各種因素,例如,投影對比度、焦距深度(“DOF”)、遮罩誤差增強因素(“MEEF”)、其他合適的因素等、或其組合。在一些實施例中,在通過LPC創建了類比製造裝置之後,如果模擬裝置在形狀上不夠接近以滿足設計規則,則重複OPC和/或MRC以進一步完善IC設計布圖1111。
應當理解,為了清楚起見,已經簡化了對資料準備1121的以上描述。在一些實施例中,資料準備1121包括諸如邏輯操作(LOP)之類的附加特徵,以根據製造規則來修改IC設計布圖1111。另外,可以用各種不同的順序來執行在資料準備1121期間應用於IC設計布圖1111的處理。
在資料準備1121之後以及在遮罩製造1122期間,基於修改的IC設計布圖1111來製造遮罩1123或遮罩組1123。在一些實施例中,遮罩製造1122包括基於IC設計布圖1111執行一個或多個光刻曝光。在一些實施例中,使用電子束(e-beam)或多個電子束的機制基於修改的IC設計布圖1111來在遮罩(光遮罩或遮罩版)1123上形成圖案。遮罩1123可以用各種技術形成。在一些實施例中,使用二元技術來形成遮罩1123。在一些實施例中,遮罩圖案包括不透明區域和透明區域。用於曝光已經塗覆在晶圓上的圖像敏感材料層(例如,光致抗蝕劑)的輻射束(例如紫外線(UV)束)被不透明區域阻擋並且透射穿過透明區域。在一個示例中,遮罩1123的二元遮罩版本
包括透明襯底(例如,熔融石英)和塗覆在二元遮罩的不透明區域中的不透明材料(例如,鉻)。在另一示例中,使用相移技術來形成遮罩1123。在遮罩1123的相移遮罩(PSM)版本中,形成在相移遮罩上的圖案中的各種特徵用以具有適當的相差以增強解析度和成像品質。在各種示例中,相移遮罩可以是衰減PSM或交替PSM。由遮罩製造1122生成的(一個或多個)遮罩被用於各種程序。例如,這類(一個或多個)遮罩被用於離子注入程序中以在半導體晶圓1133中形成各種摻雜區域,被用於蝕刻程序中以在半導體晶圓1133中形成各種蝕刻區域,和/或被用於其他合適的程序中。
IC fab 1130包括晶圓製造1132。IC fab 1130是IC製造企業,其包括用於製造各種不同的IC產品的一個或多個製造設施。在一些實施例中,IC Fab 1130是半導體鑄造廠。例如,可以有一個製造工廠用於多個IC產品的前段製造(前段制程(FEOL)製造),而第二製造工廠可以為IC產品的互連和封裝提供後段製造(後段制程(BEOL)製造),並且第三製造工廠可以為鑄造業務提供其他服務。
IC fab 1130使用由遮罩室1120製造的(一個或多個)遮罩1123來製造IC裝置1140。因此,IC fab 1130至少間接地使用IC設計布圖1111來製造IC裝置1140。在一些實施例中,由IC fab 1130使用(一個或多個)遮罩1123來製造半導體晶圓1133以形成IC裝置
1140。在一些實施例中,IC製造包括至少間接基於IC設計布圖1111執行一個或多個光刻曝光。半導體晶圓1133包括在其上形成有材料層的矽襯底或其他合適襯底。半導體晶圓1133還包括(在後續製造步驟中形成的)各種摻雜區域、電介質特徵、多層互連等中的一個或多個。
關於用於自動分類DRC違規並且生成相應修復策略的方法100和200,DRC違規被系統地修復。使用者能夠根據分類瞭解DRC違規。標識與佈線壅塞相關聯的違規,以避免不必要地嘗試非壅塞策略。與手動修復DRC違規相比,減少了在ADF之後的DRC違規的數量。此外,修復時間也減少了。
還公開了一種用於修復佈局違規的方法,包括:接收第一佈局的設計規則違規;根據第一佈局的第一晶片特徵,將設計規則違規的第一違規分類為預定義類別的第一類別;為第一佈局的第一晶片特徵中的至少一個第一晶片特徵生成與第一違規相關聯的第一向量陣列;根據第一向量陣列,從預存操作中選擇第一操作;基於第一佈局和第一操作來生成第二佈局。在一些實施例中,方法還包括:通過將第一佈局的設計規則違規的一數量與第二佈局的多個設計規則違規的一數量進行比較,來評估與第一佈局相對應的第一操作的一修復率。在一些實施例中,方法還包括:根據第一佈局的第一晶片特徵中的至少一個第一晶片特徵,標識未被執行預存操作的第一違規。在一些實施例中,對第一違規進行分類包括:根據第一佈局中生成有第
一違規的一層的一金屬密度,以及層上的多個違規的一數量與第一佈局的設計規則違規的一總數量的一比率,標識與多個佈線壅塞相對應的第一違規。在一些實施例中,從預存操作中選擇第一操作包括:當第一違規對應於佈線壅塞時,從預存操作中與佈線壅塞相對應的多者中選擇第一操作。在一些實施例中,生成第一向量陣列包括:根據第一晶片特徵中的至少一個環境特徵來生成第一向量陣列,其中至少一個環境特徵與第一違規相關聯。在一些實施例中,方法還包括:累積與設計規則違規相對應的多個第一值以及與和設計規則違規相關聯的多個周圍環境相對應的多個第二值;以及根據第一值和第二值,生成預存操作中的至少一個操作。在一些實施例中,方法還包括:接收第二佈局的多個設計規則違規;根據第二佈局的多個第二晶片特徵,將第二佈局的設計規則違規的一第二違規分類為預定義類別的一第二類別;為第二佈局的第二晶片特徵中的至少一個第二晶片特徵生成與第二違規相關聯的一第二向量陣列;根據第二向量陣列,從預存操作中選擇多個第二操作;以及基於第二佈局和第二操作來生成一第三佈局。在一些實施例中,方法還包括:確定第一違規是否屬於與多個引腳存取相對應的一類別;其中在第一違規屬於與引腳存取相對應的類別時,第一操作包括以下各項中的至少一項:在生成有第一違規的一第一單元上添加一阻塞;將除第一單元的層之外的一層分配給引腳存取中的至少一個引腳存取;或確定第一單元與和第一單元鄰接的一第二單
元之間的一填充值。在一些實施例中,預存操作包括以下各項中的至少一項:生成至少一個晶片特徵;去除至少一個晶片特徵;或修改至少一個晶片特徵。在一些實施例中,選擇第一操作包括:由一電腦的一處理器從儲存在電腦的一記憶體中的預存操作中自動選擇第一操作。
還公開了一種包括記憶體和處理器的用於修復佈局違規的系統。記憶體用以儲存電腦程式代碼。處理器用以執行記憶體中的電腦程式代碼以執行以下操作:根據晶片的第一佈局的設計規則違規的資料,將設計規則違規分類為預定義類別;根據第一佈局的設計規則違規的資料,將預存操作的第一操作自動分配給設計規則違規中的每個設計規則違規;以及基於第一佈局和第一操作來生成第二佈局。在一些實施例中,處理器更用以將第一佈局的設計規則違規的一數量與第二佈局的多個設計規則違規的一數量進行比較,來生成與第一佈局相對應的第一操作的一修復率,並且處理器更用以根據修復率來調整第一操作。在一些實施例中,記憶體更用以儲存與多個結構特徵、多個環境特徵、多個違規類型或多個電路問題中的至少一者相關聯的資料。在一些實施例中,處理器更用以將設計規則違規中的每一個設計規則違規分類為多個佈線壅塞的一類別、非壅塞的一類別、或未被執行預存操作的多個設計規則違規的一類別。在一些實施例中,處理器更用以在設計規則違規與第一佈局的多個引腳存取相關聯時,根據資料在第一佈局上添加一阻塞或重新佈置引腳存取。
還公開了一種用於修復佈局違規的方法,包括:根據晶片的第一佈局的晶片特徵將第一佈局的設計規則違規中的每一個設計規則違規分類為預定義類別,晶片特徵包括第一佈局的結構特徵、環境特徵、違規類型或電路問題中的至少一項;根據預定義類別中的一個預定義類別以及與設計規則違規中的每一個設計規則違規相關聯的晶片特徵中的至少一個晶片特徵,將預存操作的第一操作分配給設計規則違規;根據第一操作來修改第一佈局以生成第二佈局;基於第二佈局來製造晶片。在一些實施例中,將第一佈局的設計規則違規中的每一個設計規則違規分類為預定義類別包括:根據與設計規則違規的一第一違規相關聯的晶片特徵中的至少一個晶片特徵,標識與預定義類別中未執行預存操作的類別相對應的第一違規;以及根據第一佈局中生成有第一違規的一層的一金屬密度,以及層上的多個違規的一數量與第一佈局的設計規則違規的一總數量的一比率,在第一違規不對應於未執行預存操作的類別時,標識與預定義類別中對應於多個佈線壅塞的一類別相對應的第一違規。在一些實施例中,在第一違規對應於佈線壅塞的類別時,方法還包括:繞行一金屬線以繞過佈線壅塞;或在佈線壅塞的一區域中重新定位多個緩衝器。在一些實施例中,將第一操作分配給設計規則違規包括:由一電腦的一處理器根據與第一違規相關聯的晶片特徵中的至少一個晶片特徵,將儲存在電腦的一記憶體中的第一操作中的至少一個第一操作自動分配給第一違規,其中第一操作中
的至少一個第一操作包括以下各項中的至少一項:生成至少一個晶片特徵;去除至少一個晶片特徵;或修改至少一個晶片特徵。
本揭露概述了各種實施例,使得熟習此項技術者可更好地理解本揭露的各態樣。熟習此項技術者應當理解,其可容易地將本揭露用作設計或修改其他製程及結構的基礎,以實施與本文介紹的實施例相同的目的及/或實現與本文介紹的實施例相同的優點。熟習此項技術者亦應當認識到,此類等效構造不脫離本揭露的精神及範圍,且在不脫離本揭露的精神及範圍的情況下,其可進行各種改變、替換及變更。
100:方法
102、104、106、108、110:操作
Claims (9)
- 一種用於修復佈局違規的方法,包括:接收一第一佈局的多個設計規則違規;根據該第一佈局的多個第一晶片特徵,將該些設計規則違規的一第一違規分類為多個預定義類別的一第一類別;為該第一佈局的該些第一晶片特徵中的至少一個第一晶片特徵生成與該第一違規相關聯的一第一向量陣列;根據該第一向量陣列,從多個預存操作中選擇多個第一操作;以及基於該第一佈局和該些第一操作來生成一第二佈局。
- 如請求項1所述之方法,還包括:通過將該第一佈局的該些設計規則違規的一數量與該第二佈局的多個設計規則違規的一數量進行比較,來評估與該第一佈局相對應的該些第一操作的一修復率。
- 如請求項1所述之方法,其中對該第一違規進行分類包括:根據該第一佈局中生成有該第一違規的一層的一金屬密度,以及該層上的多個違規的一數量與該第一佈局的該些設計規則違規的一總數量的一比率,標識與多個佈線壅塞相對應的該第一違規。
- 如請求項1所述之方法,還包括: 接收該第二佈局的多個設計規則違規;根據該第二佈局的多個第二晶片特徵,將該第二佈局的該些設計規則違規的一第二違規分類為該些預定義類別的一第二類別;為該第二佈局的該些第二晶片特徵中的至少一個第二晶片特徵生成與該第二違規相關聯的一第二向量陣列;根據該第二向量陣列,從該些預存操作中選擇多個第二操作;以及基於該第二佈局和該些第二操作來生成一第三佈局。
- 如請求項1所述之方法,還包括:確定該第一違規是否屬於與多個引腳存取相對應的一類別;其中在該第一違規屬於與該些引腳存取相對應的該類別時,該些第一操作包括以下各項中的至少一項:在生成有該第一違規的一第一單元上添加一阻塞;將除該第一單元的層之外的一層分配給該些引腳存取中的至少一個引腳存取;或確定該第一單元與和該第一單元鄰接的一第二單元之間的一填充值。
- 一種用於修復佈局違規的系統,包括:一記憶體,用以儲存多個電腦程式代碼;以及一處理器,用以執行該記憶體中的該電腦程式代碼以執 行:根據一晶片的一第一佈局的多個設計規則違規的資料,將該些設計規則違規分類為多個預定義類別;根據該第一佈局的該些設計規則違規的該資料,將多個預存操作的多個第一操作自動分配給該些設計規則違規中的每個設計規則違規;以及基於該第一佈局和該些第一操作來生成一第二佈局。
- 如請求項6所述之系統,其中該處理器更用以將該第一佈局的該些設計規則違規的一數量與該第二佈局的多個設計規則違規的一數量進行比較,來生成與該第一佈局相對應的該些第一操作的一修復率,並且該處理器更用以根據該修復率來調整該些第一操作。
- 如請求項6所述之系統,其中該處理器更用以在該些設計規則違規與該第一佈局的多個引腳存取相關聯時,根據該資料在該第一佈局上添加一阻塞或重新佈置該些引腳存取。
- 一種用於修復佈局違規的方法,包括:根據一晶片的一第一佈局的多個晶片特徵將該第一佈局的多個設計規則違規中的每一個設計規則違規分類為多個預定義類別,該些晶片特徵包括該第一佈局的多個結構特徵、多個環境特徵、多個違規類型或多個電路問題中的至 少一者;根據該些預定義類別中的一預定義類別以及與該些設計規則違規中的每一個設計規則違規相關聯的該些晶片特徵中的至少一個晶片特徵,將多個預存操作的多個第一操作分配給該些設計規則違規;根據該些第一操作來修改該第一佈局以生成一第二佈局;以及基於該第二佈局來製造該晶片,其中將該第一佈局的該些設計規則違規中的每一個設計規則違規分類為該些預定義類別包括:根據與該些設計規則違規的一第一違規相關聯的該些晶片特徵中的至少一個晶片特徵,標識與該些預定義類別中未執行該些預存操作的類別相對應的該第一違規;以及根據該第一佈局中生成有該第一違規的一層的一金屬密度,以及該層上的多個違規的一數量與該第一佈局的該些設計規則違規的一總數量的一比率,在該第一違規不對應於未執行該些預存操作的該類別時,標識與該些預定義類別中對應於多個佈線壅塞的一類別相對應的該第一違規。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011230270.3A CN114201939A (zh) | 2020-11-06 | 2020-11-06 | 用于修复布局违规的方法和系统 |
CN202011230270.3 | 2020-11-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202219815A TW202219815A (zh) | 2022-05-16 |
TWI783623B true TWI783623B (zh) | 2022-11-11 |
Family
ID=80645422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110129808A TWI783623B (zh) | 2020-11-06 | 2021-08-12 | 用於修復佈局違規的方法和系統 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11481536B2 (zh) |
CN (1) | CN114201939A (zh) |
TW (1) | TWI783623B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10943049B2 (en) * | 2018-09-28 | 2021-03-09 | Taiwan Semiconductor Manufacturing Co., Ltd. | Rule check violation prediction systems and methods |
DE102019112439A1 (de) | 2018-09-28 | 2020-04-02 | Taiwan Semiconductor Manufacturing Co., Ltd. | Systeme und Verfahren zur Verletzungsprädiktion bei einer Entwurfsregelprüfung |
CN114201939A (zh) * | 2020-11-06 | 2022-03-18 | 台湾积体电路制造股份有限公司 | 用于修复布局违规的方法和系统 |
CN115879410B (zh) * | 2022-12-16 | 2024-05-17 | 华芯巨数(杭州)微电子有限公司 | 一种掩模版图违例自动修复方法、数据库训练方法、系统及计算机设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW432302B (en) * | 1999-04-13 | 2001-05-01 | Taiwan Semiconductor Mfg | Reviewing method for layout design rule check |
US7568174B2 (en) * | 2005-08-19 | 2009-07-28 | Cadence Design Systems, Inc. | Method for checking printability of a lithography target |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6782516B2 (en) * | 2000-08-07 | 2004-08-24 | Dupont Photomasks, Inc. | System and method for eliminating design rule violations during construction of a mask layout block |
US6782517B2 (en) * | 2000-08-07 | 2004-08-24 | Dupont Photomasks, Inc. | Photomask and integrated circuit manufactured by automatically eliminating design rule violations during construction of a mask layout block |
US7096447B1 (en) * | 2003-10-15 | 2006-08-22 | Sun Microsystems, Inc. | Method and apparatus for efficiently locating and automatically correcting certain violations in a complex existing circuit layout |
US7784010B1 (en) * | 2004-06-01 | 2010-08-24 | Pulsic Limited | Automatic routing system with variable width interconnect |
US7380227B1 (en) * | 2005-10-28 | 2008-05-27 | Sun Microsystems, Inc. | Automated correction of asymmetric enclosure rule violations in a design layout |
US9779186B2 (en) * | 2007-08-28 | 2017-10-03 | Asml Netherlands B.V. | Methods for performing model-based lithography guided layout design |
WO2010005707A1 (en) * | 2008-06-16 | 2010-01-14 | The Board Of Trustees Of The University Of Illinois | Medium scale carbon nanotube thin film integrated circuits on flexible plastic substrates |
US20110145770A1 (en) * | 2009-05-14 | 2011-06-16 | Brooks Phillip A | Device Annotation |
US8612914B2 (en) * | 2011-03-23 | 2013-12-17 | Synopsys, Inc. | Pin routing in standard cells |
US8539421B2 (en) * | 2011-12-16 | 2013-09-17 | International Business Machines Corporaton | Layout-specific classification and prioritization of recommended rules violations |
US11093673B2 (en) * | 2016-12-22 | 2021-08-17 | Synopsys, Inc. | Three-dimensional NoC reliability evaluation |
CN114201939A (zh) * | 2020-11-06 | 2022-03-18 | 台湾积体电路制造股份有限公司 | 用于修复布局违规的方法和系统 |
-
2020
- 2020-11-06 CN CN202011230270.3A patent/CN114201939A/zh active Pending
- 2020-12-08 US US17/115,668 patent/US11481536B2/en active Active
-
2021
- 2021-08-12 TW TW110129808A patent/TWI783623B/zh active
-
2022
- 2022-07-27 US US17/875,314 patent/US20220366121A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW432302B (en) * | 1999-04-13 | 2001-05-01 | Taiwan Semiconductor Mfg | Reviewing method for layout design rule check |
US7568174B2 (en) * | 2005-08-19 | 2009-07-28 | Cadence Design Systems, Inc. | Method for checking printability of a lithography target |
Also Published As
Publication number | Publication date |
---|---|
CN114201939A (zh) | 2022-03-18 |
US20220366121A1 (en) | 2022-11-17 |
TW202219815A (zh) | 2022-05-16 |
US20220147691A1 (en) | 2022-05-12 |
US11481536B2 (en) | 2022-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI783623B (zh) | 用於修復佈局違規的方法和系統 | |
US11768991B2 (en) | Pin access hybrid cell height design | |
US11138362B2 (en) | Integrated circuit layout method and system | |
US12039246B2 (en) | Circuit layout | |
US11741288B2 (en) | Routing-resource-improving method of generating layout diagram, system for same and semiconductor device | |
TW202230197A (zh) | 預測難以修復之設計規則檢查違規的方法 | |
CN110852032A (zh) | 产生集成电路元件的布局图的方法 | |
US20230267262A1 (en) | Metal cut region location method | |
US20240176944A1 (en) | Semiconductor process technology assessment | |
US11636248B2 (en) | Metal cut region location system | |
US11844205B2 (en) | Semiconductor device including trimmed-gates and method of forming same | |
CN112446187A (zh) | 生成集成电路布局图的方法 | |
US20230014110A1 (en) | Variable tracks and non-default rule routing | |
US20230289508A1 (en) | Dummy cells placed adjacent functional blocks | |
US20230410887A1 (en) | Memory array connections | |
US20230281373A1 (en) | Semiconductor metal layer structure over cell region | |
US20240046020A1 (en) | Method and non-transitory computer-readable medium for arranging components within a semiconductor device | |
US12086525B2 (en) | Electrically aware routing for integrated circuits | |
US20230244845A1 (en) | Method, non-transitory computer-readable medium, and apparatus for arranging electrical components within a semiconductor device |