TWI903671B - 用於產生在積體電路佈局圖中的適應性電力傳輸網路之方法與系統 - Google Patents
用於產生在積體電路佈局圖中的適應性電力傳輸網路之方法與系統Info
- Publication number
- TWI903671B TWI903671B TW113129235A TW113129235A TWI903671B TW I903671 B TWI903671 B TW I903671B TW 113129235 A TW113129235 A TW 113129235A TW 113129235 A TW113129235 A TW 113129235A TW I903671 B TWI903671 B TW I903671B
- Authority
- TW
- Taiwan
- Prior art keywords
- layout
- design
- pdn
- apr
- power transmission
- Prior art date
Links
Abstract
本發明實施例係關於一種方法,其包含以下步驟:獲得一積體電路(IC)設計之一網表;對該網表執行一自動置放與佈線(APR)程序以產生一最終佈局圖;及在該APR程序內之各操作期間使用一機器學習模型改進該APR程序內之各操作處產生之一佈局圖內之一電力傳輸網路。
Description
本發明實施例係有關用於產生在積體電路佈局圖中的適應性電力傳輸網路之方法與系統。
半導體積體電路(IC)產業已經歷指數增長。在半導體IC設計中,標準單元方法常用於一晶片上之半導體裝置之設計。標準單元方法將標準單元用作特定功能之抽象表示以將數百萬個裝置整合於一單一晶片上。隨著IC不斷縮小,越來越多裝置整合至一單一晶片上。此縮小程序一般藉由提高生產效率及降低相關聯成本來提供益處。
本發明的一實施例係關於一種方法,其包括:獲得一積體電路(IC)設計之一網表;及執行一自動置放與佈線(APR)程序之複數個操作;在該APR程序之各操作完成之後產生具有一電力傳輸網路之一佈局圖;及使用一機器學習模型藉由將該APR程序之各自操作處產生之該佈局圖之複數個特徵輸入至該機器學習模型來調整該佈局圖之該電力傳輸網路之一部分。
本發明的一實施例係關於一種方法,其包括:獲得一積體電路(IC)設計之一網表;對該網表執行一自動置放與佈線(APR)程序以產生一最終佈局圖;及在該APR程序內之各操作期間:將該APR程序內之各操作處產生之一佈局圖分割成一固定大小之複數個網格;及使用一機器學習模型藉由將該佈局圖內之各網格之複數個特徵輸入至該機器學習模型來基於一網格適應性更新該佈局圖之一電力傳輸網路。
本發明的一實施例係關於一種系統,其包括儲存程式指令之一非暫時性電腦可讀媒體及可操作地耦合至該非暫時性電腦可讀媒體之一處理器,其中該等程式指令在由該處理器執行時引起該處理器執行:獲得一積體電路(IC)設計之一網表;及使用一機器學習模型基於該IC設計之複數個特徵來判定由一自動置放與佈線(APR)程序產生之對應於該IC設計之一佈局圖內之一電力傳輸網路是屬於一第一類型還是一第二類型;及使用由該APR程序產生之該佈局圖製造一積體電路。
以下揭露提供用於實施所提供標的之不同特徵之諸多不同實施例或實例。下文將描述組件及配置之特定實例以簡化本揭露。當然,此等僅為實例且不意在限制。例如,在以下描述中,在一第二構件之上或上形成一第一構件可包含其中形成直接接觸之第一及第二構件之實施例,且亦可包含其中額外構件可形成於第一與第二構件之間使得第一及第二構件可不直接接觸之實施例。另外,本揭露可在各種實例中重複參考數字及/或字母。此重複係為了簡單及清楚且其本身不指示所討論之各種實施例及/或組態之間的一關係。
此外,為便於描述,諸如「底下」、「下方」、「下」、「上方」、「之上」、「上」、「在…上」及其類似者之空間相對術語在本文中可用於描述一個元件或構件與另一(些)元件或構件之關係,如圖中所繪示。除圖中所描繪之定向之外,空間相對術語亦意欲涵蓋裝置在使用或操作中之不同定向。可依其他方式定向設備(旋轉90度或以其他定向)且亦可因此解譯本文中所使用之空間相對描述詞。
此外,應理解,當一元件指稱「連接至」或「耦合至」另一元件時,其可直接連接至或耦合至另一元件或可存在中介元件。
圖式中所繪示之實施例或實例使用特定語言揭露如下。然而,應理解,實施例及實例不意在限制。相關領域之一般技術者通常應想到,可考量所揭露實施例中之任何更改或修改及本文件中所揭露之原理之任何進一步應用。
此外,應理解,可僅簡要描述一裝置之若干處理步驟及/或構件。此外,可添加額外處理步驟及/或構件,且可移除或改變以下處理步驟及/或構件之特定者,同時仍實施申請專利範圍。因此,應理解,以下描述僅表示實例且不意欲暗示一或多個步驟或構件係必需的。
另外,本揭露可在各種實例中重複參考數字及/或字母。此重複係為了簡單及清楚且其本身不指示所討論之各種實施例及/或組態之間的一關係。
在積體電路(IC)設計中,各種功能整合至一個晶片上,且通常使用一基於專用積體電路(ASIC)或單晶片系統(SOC)單元之設計。在此方法中,提供一已知功能庫,且在藉由選擇及連接此等標準功能來指定裝置之功能設計且使用電子設計自動化(EDA)工具驗證所得電路之適當操作之後,將庫元件映射至含有預想元件(諸如電晶體)之預定義佈局單元上。單元由所考量之特定半導體程序節點及參數選擇且產生設計之一程序參數化實體表示。設計流程藉由執行使用標準單元形成完整設計之一佈局所需之局部及全局連接之置放與佈線來自該點繼續。
在完成佈局之後,執行各種分析過程且驗證佈局以檢查佈局是否違背各種約束或規則之任何者。例如,執行設計規則檢查(DRC)、佈局對原理圖(LVS)及電氣規則檢查(ERC)。DRC係根據設計規則使用一實體量測空間檢查佈局是否成功完成之一程序,且LVS係檢查佈局是否滿足一對應電路圖之一程序。另外,ERC係用於檢查裝置及電線/網是否在其等之間良好電連接之一程序。在設計規則檢查、設計規則驗證、時序分析、關鍵路徑分析、靜態及動態電力分析及設計最終修改之後,執行一下線程序以產生光罩產生資料。此光罩產生(PG)資料接著用於產生光罩,光罩用於在一晶圓製造設施(FAB)處之一光微影程序中製造半導體裝置。在下線程序中,IC之資料庫檔案用於產生用於積體電路製造之遮罩之各種層。在一些實施例中,資料庫檔案係一圖形資料庫系統(GDS)檔案(例如一GDS檔案或一GDSII檔案)。此外,GDS檔案係用於在不同供應商之設計工具之間傳送IC佈局資料之工業標準格式。
圖1係根據一些實施例之一IC設計系統100之一方塊圖。根據一或多個實施例之用於設計IC佈局圖及適應性產生電力傳輸網路之本文中所描述之方法(例如)可使用根據一些實施例之IC設計系統100實施。在一些實施例中,IC設計系統100係一APR (自動置放與佈線)系統,包含一APR系統,或為一APR系統之部分,可用於執行一APR方法。
在一些實施例中,IC設計系統100係包含一硬體處理器102及記憶體104之一通用運算裝置。記憶體104係一非暫時性電腦可讀儲存媒體。除此之外,記憶體104編碼有(即,儲存)電腦程式碼1041,即,一組可執行指令。電腦程式碼1041由硬體處理器102執行(至少部分)表示一EDA工具,其實施一方法(例如稍後描述之流程200、300、700、900、1100及1300)(下文中所提及之程序及/或方法)之一部分或全部。
處理器102經由匯流排108電耦合至記憶體104。處理器102亦透過匯流排108電耦合至一I/O介面110。網路介面112亦透過匯流排108電連接至處理器102。網路介面112經連接至一網路114,使得處理器102及記憶體104能夠經由網路114連接至外部元件。處理器102經組態以執行編碼於記憶體104中之電腦程式碼1041以引起IC設計系統100可用於執行所提及程序及/或方法之一部分或全部。在一或多個實施例中,處理器102係一中央處理單元(CPU)、一多處理器、一分佈式處理系統、一專用積體電路(ASIC)及/或一適合處理單元,但本揭露不限於此。
在一或多個實施例中,記憶體104係一電子、磁性、光學、電磁、紅外線及/或半導體系統(或設備或裝置)。例如,記憶體104可為或包含一非揮發性記憶體,諸如一半導體或固態記憶體、一硬碟機(HDD)、一磁帶、一可抽換電腦碟片、一隨機存取記憶體(RAM)、一唯讀記憶體(ROM)、一硬磁碟、一光碟、SD記憶卡、記憶棒、鐵電隨機存取記憶體(FeRAM)、電阻性隨機存取記憶體(RRAM)等等,但本揭露不限於此。在使用光碟之一或多個實施例中,記憶體104包含一光碟唯讀記憶體(CD-ROM)、一光碟讀取/寫入(CD-R/W)及/或一數位視訊光碟(DVD)。
在一或多個實施例中,記憶體104儲存電腦程式碼1041,其經組態以引起IC設計系統100 (其中此執行(至少部分)表示EDA工具)可用於執行所提及程序及/或方法之一部分或全部。在一或多個實施例中,記憶體104亦儲存促進執行所提及程序及/或方法之一部分或全部之資訊。在一或多個實施例中,記憶體104包含IC設計儲存器1042,其經組態以儲存一或多個IC佈局圖,例如稍後相對於圖8A至圖8D、圖10A至圖10D、圖12A至圖12D及圖14A至圖14D討論之一IC佈局圖702至708、902至908、1102至1108、1400A至1400D。
IC設計系統100包含I/O介面110。I/O介面110經耦合至外部電路系統。在一或多個實施例中,I/O介面110包含用於將資訊及命令傳送至處理器102之一鍵盤、鍵區、滑鼠、軌跡球、軌跡墊、觸控螢幕及/或游標方向鍵。
在一些實施例中,IC設計系統100亦包含耦合至處理器102之網路介面112。網路介面112允許IC設計系統100與網路114通信,一或多個其他電腦系統連接至網路114。在一些實施例中,網路介面112包含無線網路介面及/或有線網路介面。無線網路介面可包含Wi-Fi (802.11)、全球行動通信系統(GSM)、GSM演進式增強資料速率(EDGE)、寬頻分碼多重存取(WCDMA)、分時同步分碼多重存取(TD-SCDMA)、長期演進(LTE)、第4代(4G)、第5代(5G)、第6代(6G)、超寬頻(UWB)、紅外線(IR)協定、近場通信(NFC)協定、Wibree、Bluetooth協定、無線通用串列匯流排(USB)協定等等。有線網路介面可包含乙太網路、通用串列匯流排(USB)、內部積體電路(I2C)、串列周邊介面(SPI)等等,但本揭露不限於此。在一或多個實施例中,所提及程序及/或方法之一部分或全部實施於兩個或更多個IC設計系統100中。
在一些實施例中,IC設計系統100經組態以透過I/O介面110接收資訊。透過I/O介面110接收之資訊包含指令、資料、設計規則、標準單元庫及/或用於由處理器102處理之其他參數之一或多者。資訊經由匯流排108傳送至處理器102。IC設計系統100經組態以透過I/O介面110接收與一使用者介面相關之資訊。資訊作為使用者介面(UI) 1043儲存於記憶體104中。
在一些實施例中,單元庫1044可經組態以儲存可用於一APR程序中之複數個標準單元及/或電路元件。在一些實施例中,機器學習模型1045可經組態以產生基於一電力網之一半導體基板之一前側、一後側或雙側(即,包含前側及後側兩者)上之一適應性電力傳輸網路。例如,處理器102可執行機器學習模型1045以在一APR程序(其可包含平面規劃、單元置放、時脈樹合成、佈線、佈線後最佳化等等)內之各操作或階段之後適應性修改佈局圖上之電力傳輸網路,其可為一前側、後側或雙側PDN。將在相對於圖2至圖14之以下實施例中描述更多細節。
在一些實施例中,機器學習模型1046可經組態以基於一給定IC佈局圖之一或多個設計參數在一半導體基板之前側上產生一最佳前側電力傳輸網路。
在一些實施例中,所提及程序及/或方法之一部分或全部經實施為一獨立軟體應用程式用於由一處理器執行。在一些實施例中,所提及程序及/或方法之一部分或全部經實施為係一額外軟體應用程式之一部分之一軟體應用程式。在一些實施例中,所提及程序及/或方法之一部分或全部經實施為一軟體應用程式之一插件。在一些實施例中,所提及程序及/或方法之至少一者經實施為係一EDA工具之一部分之一軟體應用程式。在一些實施例中,所提及程序及/或方法之一部分或全部經實施為由IC設計系統100使用之一軟體應用程式。在一些實施例中,包含標準單元之一佈局圖使用諸如可購自CADENCE DESIGN SYSTEMS公司之VIRTUOSO®之一工具或另一適合佈局產生工具來產生。
在一些實施例中,程序經實現為儲存於一非暫時性電腦可讀記錄媒體中之一程式之功能。一非暫時性電腦可讀記錄媒體之實例包含(但不限於)外部/可抽換及/或內部/內建儲存器或記憶體單元,例如一光碟(諸如一DVD)、一磁碟(諸如一硬碟)、一半導體記憶體(諸如一ROM、一RAM)、一記憶卡及其類似者之一或多者。
具有電力傳輸網路改進階段之 IC 設計流程
圖2係根據本發明之一些實施例之一IC設計流程200之至少一部分之一功能流程圖。設計流程200利用一或多個電子設計自動化(EDA)工具(例如電腦程式碼1041)在製造一IC之前產生、最佳化及/或驗證IC之一設計。在一些實施例中,EDA工具係用於由一處理器(例如處理器102)或控制器或一程式化電腦執行以執行指示功能之一或多組可執行指令。在至少一個實施例中,IC設計流程200由本文中相對於圖16討論之一IC製造系統之一設計室執行。
在IC設計操作210處,由一電路設計者提供一IC之一設計。在一些實施例中,IC之設計包括IC之一IC原理圖,即,一電氣圖。在一些實施例中,原理圖依一原理圖網表之形式產生或提供,諸如一積體電路重要性模擬程式(SPICE)網表。在一些實施例中可使用用於描述設計之其他資料格式。在一些實施例中,對設計執行一預佈局模擬以判定設計是否滿足一預定規格。當設計不滿足預定規格時,重新設計IC。在至少一個實施例中,省略一預佈局模擬。
在一些實施例中,處理器102可執行一或多個電腦程式碼(例如EDA工具或APR工具)以執行一APR程序以構建一IC設計之一佈局圖。APR程序可包含操作221、222、223、224及225,即,分別為平面規劃、單元置放、時脈樹合成、佈線、佈線後最佳化。
在自動置放與佈線(APR)操作220處,基於IC原理圖產生IC之一佈局圖。IC佈局圖包括IC之各種電路元件之實體位置及使電路元件互連之各種網之實體位置。例如,依一圖形設計系統(GDS)檔案之形式產生IC佈局圖。用於描述IC之設計之其他資料格式在各種實施例之範疇內。在圖2之實例性組態中,IC佈局圖由一EDA工具(諸如一APR工具)產生。APR工具(例如電腦程式碼1041)接收呈一網表之形式之IC之設計,如本文中所描述。在圖2之實例性組態中,APR工具執行平面規劃操作221、單元置放操作222、時脈樹合成操作223、佈線操作224及佈線後最佳化操作225。另外,APR操作220與PDN改進階段240 (其包含PDN規劃操作241及PDN改進操作242至245)合作執行。在一些實施例中,PDN改進階段240可由圖1中所展示之機器學習模型1045執行,藉此改進APR操作220中之各操作221至225處產生之佈局圖內之PDN以滿足具有一較佳PPA (效能、功率及面積)之積體電路之IR要求。將描述其更多細節。
在平面規劃操作221處,APR工具識別電路元件及/或標準單元,其等將彼此電連接且將置放成彼此緊密接近以減小IC之面積及/或減少訊號透過連接電連接電路元件之互連件或網行進之時間延遲。在一些實施例中,APR工具執行分割以將IC之設計分成複數個區塊或群組,諸如時脈及邏輯群組。
在PDN規劃操作241處,APR工具或機器學習模型1045基於IC設計之一半導體基板之分割及/或平面規劃來執行電力規劃以產生包含若干導電層(諸如金屬層)之一初始電力傳輸網路(例如一電力網結構)。屬於一稀疏類型或一密集類型之初始電力傳輸網路可放置於半導體基板之前側、後側或雙側(即,包含前側及後側兩者)上,其取決於所使用之機器學習模型1045之預設類型。
在單元置放操作222處,APR工具執行單元置放。例如,經組態以提供預定義功能且具有預設計佈局圖之標準單元經儲存於單元庫1044中。APR工具自單元庫1044存取各種標準單元且依一鄰接方式置放此等標準單元以產生對應於IC原理圖之一IC佈局圖。
在一些實施例中,由單元置放操作222產生之IC佈局圖(例如第一IC佈局圖)包含電力網結構及複數個標準單元(或簡稱「單元」),各標準單元包含一或多個電路元件及/或一或多個網。一電路元件可為一主動元件或一被動元件。主動元件之實例包含(但不限於)電晶體及二極體。電晶體之實例包含(但不限於)金屬氧化物半導體場效電晶體(MOSFET)、互補式金屬氧化物半導體(CMOS)電晶體、雙極接面電晶體(BJT)、高電壓電晶體、高頻電晶體、p通道及/或n通道場效電晶體(PFET/NFET)等等、FinFET、具有凸起源極/汲極之平面MOS電晶體或其類似者。被動元件之實例包含(但不限於)電容器、電感器、熔絲及電阻器。網之實例包含(但不限於)通路、導電墊、導電跡線及導電重佈層或其類似者。在一些實施例中,各標準單元可為包含一或多個邏輯閘之一巨集。包含一個邏輯閘之一巨集之實例可為一NAND、NOR、XOR、XOR閘等等。包含複數個邏輯閘或一CMOS複合閘之一巨集之實例可為一2位元全加器、一D正反器、一鎖存器、一緩衝器、「與或非」閘(AOI)、「或與非」閘(OAI)等等。
由單元置放操作222產生之IC佈局圖由PDN改進操作242改進。例如,在PDN改進操作242處,處理器102可執行機器學習模型1045以使用由單元置放操作222產生之IC佈局圖執行一推斷程序(例如第一推斷程序),藉此使導電層之分佈及電力密度網路之各網格內之標準單元之位置交替以產生具有一較佳PPA之一改進IC佈局圖(例如改進第一IC佈局圖),其取決於佈局圖之各網格內之標準單元之特徵。例如,佈局圖之各網格內之標準單元之特徵可包含(但不限於)電力密度、單元驅動、單元功能、雙態觸變率、佈線擁塞、接腳密度、時序關鍵路徑等等,但本揭露不限於此。由PDN改進操作242產生之改進IC佈局圖發送至APR工具用於時脈樹合成(CTS)。
在時脈樹合成操作223處,APR工具執行時脈樹合成以最小化歸因於在由PDN改進操作242產生之IC佈局圖中置放標準單元而可能存在之時脈偏斜及/或延遲。時脈樹合成可包含一最佳化程序以確保訊號依適當時序傳輸及/或到達。例如,在時脈樹合成內之最佳化程序期間,APR工具可將一或多個通路插入至IC佈局圖中以添加及/或移除裕量(用於訊號到達之時序)及/或將一或多個時脈緩衝器插入至IC佈局圖中以達成所要時脈時序。因此,由時脈樹合成操作223產生另一IC佈局圖(例如第二IC佈局圖)。
由時脈樹合成操作223產生之IC佈局圖由PDN改進操作243改進。例如,在PDN改進操作243處,處理器102可執行機器學習模型1045以使用由時脈樹合成操作223產生之IC佈局圖執行另一推斷程序(例如第二推斷程序),藉此使導電層之分佈及電力密度網路之各網格內之標準單元之位置交替以產生具有一較佳PPA之一改進IC佈局圖(例如改進第二IC佈局圖),其取決於佈局圖之各網格內之標準單元之特徵。將由PDN改進操作243產生之改進IC佈局圖發送至APR工具用於佈線。
在佈線操作224處,APR工具執行佈線以使將置放標準單元互連之各種網(例如導電線)佈線。執行佈線以確保佈線互連件或網滿足一組約束。例如,佈線操作224包含全局佈線、追蹤指派及詳細佈線。在全局佈線期間,分配用於互連件或網之佈線資源。例如,將佈線區分成數個子區,將置放標準單元之接腳映射至子區,且將網建構為其中互連件可實體佈線之子區組。在追蹤指派期間,APR工具將互連件或網指派給IC佈局圖之對應導電層。在詳細佈線期間,APR工具使指派導電層中及全局佈線資源內之互連件或網佈線。例如,在全局佈線處定義之對應子區組內及追蹤指派處定義之導電層中產生詳細實體互連件。在佈線操作224之後,APR工具輸出包含電力網結構、置放標準單元及佈線網之IC佈局圖(例如第三IC佈局圖)。所描述APR工具係一實例。其他配置在各種實施例之範疇內。例如,在一或多個實施例中,省略所描述操作之一或多者。
由佈線操作224產生之IC佈局圖由PDN改進操作244進一步改進。例如,在一PDN改進操作244處,處理器102可執行機器學習模型1045以使用由佈線操作224產生之IC佈局圖執行又一推斷程序(例如第三推斷程序),藉此使導電層之分佈及電力密度網路之各網格內之標準單元之位置交替以產生具有一較佳PPA之一改進IC佈局圖(例如改進第三IC佈局圖),其取決於佈局圖之各網格內之標準單元之特徵。將由PDN改進操作244產生之改進IC佈局圖發送至APR工具用於佈線後最佳化。
在一些實施例中,佈線後最佳化操作225可被視為一簽核操作。在佈線後最佳化操作225處,執行一或多個實體及/或時序驗證。例如,佈線後最佳化操作225包含一電阻及電容(RC)提取、一佈局對原理圖(LVS)檢查、一設計規則檢查(DRC)及一時序簽核檢查(亦指稱一佈局後模擬)之一或多者。在其他實施例中可使用其他驗證程序。
在一些實施例中,一EDA工具執行一RC提取以判定IC佈局圖中之組件之寄生參數(例如寄生電阻及寄生電容)用於一後續操作中之時序模擬。
在一些實施例中,一LVS檢查工具(例如EDA工具之一者)可執行一LVS檢查以確保所產生IC佈局圖對應於IC之設計。具體言之,LVS檢查工具自所產生IC佈局圖之圖案識別電組件及連接且接著產生表示所識別電組件及連接之一佈局網表。LVS檢查工具比較自IC佈局圖產生之佈局網表與IC設計之原理圖網表。若兩個網表在一特定容限內匹配,則通過LVS檢查。否則,對IC佈局圖及/或IC之設計做出校正,且程序返回至IC設計操作210及/或APR操作220。
在一些實施例中,一DRC工具(例如EDA工具之一者)可執行一DRC以確保IC佈局圖滿足特定製造設計規則以確保IC之可製造性。若違背任何設計規則,則對IC佈局圖及IC之設計做出校正且程序返回至IC設計操作210及/或APR操作220。設計規則之實例包含(但不限於)指定一圖案之一最小寬度之一寬度規則、指定相鄰圖案之間的一最小間距之一間距規則、指定IC佈局圖中之一圖案之一最小面積之一面積規則等等。在一些實施例中,設計規則之至少一者係電壓相依的。經執行以檢查一IC佈局圖與一或多個電壓相依設計規則之符合性之一DRC指稱一VDRC。
在一些實施例中,EDA工具使用所提取寄生參數執行一時序簽核檢查(佈局後模擬)以判定IC佈局圖是否滿足一或多個時序要求之一預定規格。若模擬展示IC佈局圖不滿足預定規格(例如,寄生參數引起非期望延遲),則藉由使程序返回至IC設計操作210及/或APR操作220來對IC佈局圖或IC設計之至少一者做出校正。否則,IC佈局圖由PDN改進操作245改進。
在PDN改進操作245處,處理器102可執行機器學習模型1045以使用由佈線後最佳化操作225產生之IC佈局圖執行又一推斷程序(例如第四推斷程序),藉此使導電層之分佈及電力密度網路之各網格內之標準單元之位置交替以產生具有改良PPA之一改進IC佈局圖(例如改進第四IC佈局圖),其取決於佈局圖之各網格內之標準單元之特徵。改進IC佈局圖接著可傳遞至製造或額外驗證程序。
在一些其他方法中,在佈線操作224之後(例如在佈線後最佳化操作225期間)執行一電力分析。若電力分析結果不滿足設計規格,則將電力傳輸至IC佈局圖中之標準單元之電力傳輸網路應重新設計或修改。此繼而導致單元置放及/或佈線改變以可能引起一長回轉時間。在本文中所描述之一些實施例中可避免該等缺點。
在一些實施例中,電力傳輸網路改進階段240內之操作241至245可基於一網格改進APR程序220之各階段處產生之IC佈局圖以允許各階段處產生之改進IC佈局圖以一較佳PPA滿足IR (電流-電阻)要求(例如包含耗電單元、IR熱點等等之問題)。例如,PDN改進操作242可適應性改進單元置放操作222處產生之IC佈局圖,且改進IC佈局圖可包含一適應性PDN,其中一密集PDN用於具有高密度耗電單元之網格且一稀疏PDN用於具有低密度單元之網格。另外,PDN改進操作243可適應性改進時脈樹合成操作223處產生之IC佈局圖,且改進IC佈局圖可包含另一適應性PDN以解決由時脈樹合成操作223添加之新時脈緩衝器誘發之IR熱點。
機器學習模型之訓練過程
圖3係根據本發明之一些實施例之用於產生一積體電路中之一適應性電力傳輸網路之機器學習模型之訓練過程之一流程圖。圖3之方法可包含在此未繪示之其他操作,且方法之各種繪示操作可依不同於所展示之一順序執行。圖3之方法可由一運算裝置內之一或多個處理裝置執行。
在一些實施例中,圖3中所展示之流程300繪示用於圖2中所展示之APR操作220中之機器學習模型1045之訓練過程。在操作310中,獲得複數個PnR (置放與佈線)資料庫。例如,PnR資料庫可包含一或多個IC設計之複數個IC佈局圖連同PDN因數及設計因數。PDN因數可包含PDN類型、PDN結構及PDN密度。
在一些實施例中,PDN類型可係指PDN在各PnR資料庫內是定位於半導體基板之前側、後側還是雙側處。PDN結構可係指PDN之配置及佈線,諸如條(或帶)、長/短柱、長/短交錯柱、長/短對準柱等等,如圖4A至圖4J中分別繪示。PDN密度可包含一密集或稀疏PDN。當PDN係一密集PDN時,其指示相對較多導電線在一單位面積內。另一方面,當PDN係一稀疏PDN時,其指示相對較少導電線在一單位面積內。另外,可設定一預定密度臨限值以區分密集PDN與稀疏PDN。
在一些實施例中,設計因數可包含操作頻率、設計風格、佈線擁塞、接腳密度及利用率。例如,操作頻率可係指形成於半導體基板上之功能電路系統(例如標準單元)操作之頻率,諸如100 MHz、5 GHz等等。設計風格可係指IC佈局圖之功能,諸如中央處理單元(CPU)、圖形處理單元(GPU)、神經處理單元(NPU)、資料處理單元(DPU)、單晶片系統(SoC)等等。單元驅動可係指IC佈局圖內之標準單元之單元驅動能力。佈線擁塞可係指IC佈局圖之佈線擁塞水平,諸如高、中或低。接腳密度及利用率可為相依的。例如,一高接腳密度指示一高利用率,而一低接腳密度指示一低利用率。在一些實施例中,各IC佈局圖之接腳密度及利用率可共同被視為一個設計因數。替代地,各IC佈局圖之接腳密度及利用率可被視為單獨設計因數。
在操作320中,將PnR資料庫之各者分解成複數個網格。例如,網格可具有相同大小,且其等可在圖2中所展示之APR操作220期間固定。
在操作330中,使用不同特質之一各自組合特徵化各網格。例如,特質可包含(但不限於)電力密度、單元驅動、單元功能、雙態觸變率、佈線擁塞、接腳密度及時序關鍵路徑。例如,大部分特質(電力密度、單元驅動、雙態觸變率、擁塞、接腳密度及關鍵路徑)可分類成三個水平。例如,電力密度、雙態觸變率、擁塞、接腳密度及關鍵路徑之各者可分類成三個水平,諸如高、中及低。另外,單元驅動亦可分類成三個水平,諸如強、中及弱。因為各網格可包含一或多個標準單元,所以單元功能可係指各網格內之邏輯閘之類型,諸如一反相器、NAND、NOR、D正反器等等。
在操作340中,分類各PnR資料庫之第一特徵及各網格之第二特徵。例如,第一特徵可係指各PnR資料庫之效能、功率及面積,其統稱為PPA。第二特徵可係指各網格中之單元(例如邏輯閘之類型)、線延遲及線長度。
在操作350中,使用PnR資料庫、各網格之預定特質、各PnR資料庫之第一特徵及各網格之第二特徵訓練機器學習模型1045。例如,在訓練過程完成之後,經訓練機器學習模型1045可用於圖2中所展示之APR操作220中以基於一網格適應性調整IC佈局圖內之PDN。在一些實施例中,機器學習模型1045可為一K最近鄰(KNN)模型或任何其他分類機器學習模型,但本揭露不限於此。
圖4A至圖4J係根據本發明之一些實施例之不同PDN結構之圖式。
在一些實施例中,參考圖4A,網格410A內之PDN結構可指稱一「帶」或「條」結構。例如,網格410A可包含沿一第一方向(例如水平方向)延伸之第一軌道414及沿不同於第一方向之一第二方向(例如豎直方向)延伸之第二軌道415。另外,第一軌道414平行且沿第二方向均勻分佈,而第二軌道415平行且沿第一方向均勻分佈。網格410A內之PDN由複數個帶411形成,各帶411自網格410A之一第一邊緣(例如上邊緣)延伸至一第二邊緣(例如下邊緣),其中第一邊緣與第二邊緣對置。網格410A內之佈線網路由複數個帶412形成,各帶412自網格410A之一第三邊緣(例如左邊緣)延伸至與第三邊緣對置之一第四邊緣(例如右邊緣),其中第三邊緣與第四邊緣對置。另外,一或多個通路413可形成於PDN與佈線網路之間的相交點處。
在一些實施例中,圖4B中所展示之網格410B可類似於圖4A中所展示之網格410A,差異在於圖4B中之兩個相鄰帶411之間的距離D2大於圖4A中之兩個相鄰帶411之間的距離D1。具體言之,網格410A及410B內之PDN結構可分別指稱一密集帶結構及一稀疏帶結構。
在一些實施例中,參考圖4C,網格420A內之PDN結構可指稱一「長柱」結構。圖4C中所展示之軌道424及425可類似於圖4A中所展示之軌道414及415。網格420A內之PDN由複數對柱421A及421B形成,其中各對位於一各自軌道425上。各柱421A略大於各柱421B。另外,網格420A內之佈線網路由複數個短柱422形成,各短柱422具有小於或等於兩個相鄰軌道425之間的間隔之一長度。柱421A及421B可依一交插方式配置且跨兩個相鄰第一軌道424之間的若干間隔置放。另外,一或多個通路423可形成於PDN與佈線網路之間的相交點處。因為長柱421A及421B在相同軌道425上置放及對準,所以網格420A內之PDN亦可被視為一「長對準柱」結構。
在一些實施例中,圖4D中所展示之網格420B可類似於圖4C中所展示之網格420A,差異在於圖4D中之兩個相鄰帶421之間的距離D2大於圖4C中所展示之兩個相鄰帶421之間的距離D1。具體言之,網格420A及420B內之PDN結構可分別指稱一密集長柱結構及一稀疏長柱結構。
在一些實施例中,參考圖4E,網格430A內之PDN結構可指稱一「短柱」結構。圖4E中所展示之軌道434及435可類似於圖4A中所展示之軌道414及415。網格430A內之PDN由依一交插方式配置之複數個柱431形成,其中各柱431具有小於或等於兩個相鄰軌道434之間的間隔之一長度。例如,三個柱431配置於相同軌道435上,而兩個柱431配置於另一軌道435上。另外,網格430A內之佈線網路由複數個短柱432形成,各短柱432具有小於或等於兩個相鄰軌道435之間的間隔之一長度。因為短柱431在相同軌道435上置放及對準,所以網格430A內之PDN亦可被視為一「短對準柱」結構。
在一些實施例中,圖4F中所展示之網格430B可類似於圖4E中所展示之網格430A,差異在於圖4F中之兩個相鄰柱431之間的距離D2大於圖4E中所展示之兩個相鄰柱431之間的距離D1。具體言之,網格430A及430B內之PDN結構可分別指稱一密集短柱結構及一稀疏短柱結構。
在一些實施例中,參考圖4G,網格440A內之PDN結構可指稱一「長交錯柱」結構。圖4G中所展示之軌道444及445可類似於圖4A中所展示之軌道414及415。網格440A內之PDN由依一交插方式配置之複數個柱441形成,其中各柱441跨兩個相鄰軌道444之間的若干間隔置放。例如,最左柱441經放置於其各自軌道445之一上側上,而下一柱441經放置於其各自軌道445之下側上。換言之,長柱441依一交錯方式置放於不同軌道445上。另外,網格440A內之佈線網路由複數個短柱442形成,各短柱442具有小於或等於兩個相鄰軌道445之間的間隔之一長度。
在一些實施例中,圖4H中所展示之網格440B可類似於圖4G中所展示之網格440A,差異在於圖4H中之兩個相鄰柱441之間的距離D2大於圖4G中所展示之兩個相鄰柱441之間的距離D1。具體言之,網格440A及440B內之PDN結構可分別指稱一密集長交錯柱結構及一稀疏長交錯柱結構。
在一些實施例中,參考圖4I,網格450A內之PDN結構可指稱一「短交錯柱」結構。圖4I中所展示之軌道454及455可類似於圖4A中所展示之軌道414及415。網格450A內之PDN由依一交錯方式配置之複數個柱451形成,其中各柱451具有小於或等於兩個相鄰軌道454之間的間隔之一長度。例如,柱441經放置於不同軌道455上。例如,網格450A內之佈線網路由複數個短柱452形成,各短柱452具有小於或等於兩個相鄰軌道445之間的間隔之一長度。
在一些實施例中,圖4J中所展示之網格450B可類似於圖4I中所展示之網格450A,差異在於圖4J中之兩個相鄰柱451之間的距離D2大於圖4I中所展示之兩個相鄰柱451之間的距離D1。具體言之,網格450A及450B內之PDN結構可分別指稱一密集短柱結構及一稀疏短柱結構。
圖5係繪示根據本發明之一些實施例之一半導體基板之前側及後側上之不同層的一圖式。
在一些實施例中,半導體基板510可具有一前側510s1及一後側510s2。操作223至225處產生之IC佈局圖可包含複數個前側層及/或複數個後側層,前側層可包含形成於半導體基板510之前側510s1上之M0 (金屬層0)、VIA0 (通路層0)、M1 (金屬層1)、VIA1 (通路層1)、M2 (金屬層2)等等。為了描述,M15 (金屬層15)係最上金屬層(例如Mtop)。類似地,後側層可包含形成於半導體基板510之後側510s2上之B_M0 (後側金屬層0)、B_VIA0 (後側通路層0)、B_M1 (後側金屬層1)、B_RV (後側重佈通路)、B_RDL (後側重佈層)等等。為了描述,B_M15係最下後側金屬層或最上後側金屬層。
在一些實施例中,標準單元可放置於IC佈局圖內之半導體基板510之前側510s1上之層M1至M2之間。當IC佈局圖內之半導體基板510之前側510s1上採用一前側PDN時,前側PDN之導電線可分佈於層M0至M15 (Mtop)內。當IC佈局圖內之半導體基板510之後側510s2上採用一後側PDN時,後側PDN之導電線可分佈於後側層B_M0至B_M15 (BMtop)內。另外,當IC佈局圖內採用一雙側PDN時,其指示採用前側PDN及後側PDN兩者。因此,雙側PDN之導電線可分佈於層M0至M15及B_M0至B_M15內。
更具體言之,圖4A至圖4E中所展示之PDN結構內之PDN之柱及佈線網路之柱未必在相同金屬層內。PDN及佈線網路可透過形成於其等之間的相交點處之一或多個通路電連接,其取決於EDA工具之配置。
機器學習模型之推斷過程
圖6A係根據本發明之一些實施例之一機器學習模型之推斷過程之一流程圖。圖6B係繪示圖6A中之機器學習模型之推斷過程的一圖式。
在一些實施例中,圖6A中之流程600繪示機器學習模型1045之推斷過程內之各種操作。在操作602中,獲得與一IC佈局圖之各自預定特質相關聯之複數個圖611至617。例如,預定特質可包含電力密度、單元驅動、單元功能、雙態觸變率、擁塞、接腳密度及時序關鍵路徑。因此,圖6B中所展示之圖611至617可分別指稱電力密度圖、單元驅動圖、單元功能圖、雙態觸變率圖、擁塞圖、接腳密度圖、時序關鍵路徑圖。應注意,此等圖611至617之大小可實質上相同於IC佈局圖之大小。
在操作604中,將IC佈局圖及與各自預定特質相關聯之各圖分割成複數個網格。例如,圖611至617分別可分割成網格6111、6121、6131、6141、6151、6161及6171,如圖6B中之操作604之區塊中所展示。另外,IC佈局圖之各網格可具有一固定大小,且IC佈局圖內之網格分割亦可在圖2中所展示之APR操作220期間保持相同。
在操作606中,提取各網格之特徵。例如,圖內之各網格可表示IC佈局圖內之各網格之不同特徵。例如,在操作606之區塊中放大之網格6171可包含複數個特徵,各特徵表示各自預定特質(例如包含電力密度、單元驅動能力、單元雙態觸變率、佈線擁塞、接腳密度、時序關鍵路徑)之一水平或由各自預定特質使用之實際標準單元(例如XOR、NAND、D正反器等等)(例如用於單元功能)。例如,預定特質(諸如電力密度、單元驅動能力、單元雙態觸變率、佈線擁塞、接腳密度、時序關鍵路徑)之水平可歸類為高、中或低(弱)。為了描述,網格6171內之特徵621至627可分別係指低電力密度、弱單元驅動、NAND單元、高雙態觸變率、高擁塞、高接腳密度及低時序關鍵路徑。
在操作608中,使用機器學習模型1045基於各網格之提取特徵推斷IC佈局圖內之各網格之PDN結構以產生一適應性PDN。例如,使用PnR資料庫(例如圖1中之IC設計儲存器1042)內之各種佈局圖內之各網格之特徵訓練機器學習模型1045,且因此可基於網格執行機器學習模型1045之推斷過程。因此,機器學習模型1045可基於各網格之提取特徵預測各網格之最適合PDN結構以產生IC佈局圖之一適應性PDN。
例如,各網格之不同特徵之組合可被視為一向量,其可映射至多維空間上之各自座標。為簡潔起見,在圖6B中之操作608之區塊中繪示二維平面。機器學習模型1045可為一K最近鄰(KNN)模型,其自訓練組識別一給定資料點之k最近鄰且將鄰居中之多數類之一標記指派給該資料點。另外,KNN模型可評估輸入圖及分段特徵以判定輸入點(例如點6081)與預訓練歸類點之間的距離。因此,經訓練機器學習模型1045 (例如一經訓練KNN模型)能夠基於提取特徵分類及產生各網格之一適合PDN結構。
在一些實施例中,可存在三個主要群組631、632及633用於不同類型之PDN,諸如前側PDN、後側PDN及雙側PDN。另外,主要群組631至633之各者可分別包含6個子群組,諸如子群組6311至6316、6321至6326及6331至6336。子群組6311至6316、6321至6326及6331至6336可係指密集條、稀疏條、密集短柱、稀疏短柱、密集長柱及稀疏長柱結構,如圖4A、圖4B、圖4E、圖4F、圖4C及圖4D中分別展示。在一些實施例中,除上述6個PDN結構之外,更多子群組可用於各主要群組中,諸如圖4G至圖4J中所展示之密集對準長柱、稀疏對準長柱、密集對準短柱及稀疏對準短柱結構。更具體言之,PDN結構可按導電線之長度分類(例如密集條、稀疏條、密集短柱、稀疏短柱、密集長柱及稀疏長柱結構)或按導電線之對準分類(例如密集條、稀疏條、密集對準長柱、稀疏對準長柱、密集對準短柱及稀疏對準短柱結構)。
在操作610中,使用所產生之適應性PDN更新IC佈局圖內之PDN。例如,各網格之推斷(或預測) PDN結構可形成適應性PDN,且IC佈局圖內之各網格之PDN可由各網格之推斷PDN結構替換。換言之,機器學習模型1045能夠使用各網格之推斷PDN結構適應性更新IC佈局圖內之電力傳輸網路。
圖7係根據本發明之一些實施例之在一APR程序中之各種操作期間建構一IC佈局圖內之一適應性前側PDN之過程之一流程圖。圖8A至圖8D係圖7之流程700中之不同操作期間之佈局圖之不同透視圖。
在一些實施例中,圖7中所展示之流程700可類似於圖2中所展示之流程200,差異在於流程700特別用於建構一IC佈局圖內之一適應性前側(FS) PDN。例如,在操作222至225之各者之後進行前側PDN之一各自PDN改進操作(例如操作242至245)。
在平面規劃操作221處,APR工具可對一輸入IC設計(例如一IC原理圖)執行平面規劃以產生一佈局圖221L,諸如圖8A中所展示之一半導體基板810。在PDN規劃操作241處,APR工具或機器學習模型1045基於佈局圖221L之分割及/或平面規劃執行電力規劃以產生具有包含金屬線801之一初始前側電力傳輸網路之一佈局圖702。在一些實施例中,屬於一稀疏類型或一密集類型之初始電力傳輸網路可放置於半導體基板810之前側810s1上,其取決於APR工具之預定義設定。為簡潔起見,初始電力傳輸網路係一稀疏PDN。
在單元置放操作222處,APR工具將一或多個標準單元820置放於半導體基板810之前側810s1上以產生一佈局圖222L。例如,經組態以提供預定義功能且具有預設計佈局圖之標準單元820經儲存於單元庫1044中。APR工具自單元庫1044存取各種標準單元且依一鄰接方式置放此等標準單元以產生對應於IC原理圖之一IC佈局圖。在PDN改進操作242處,處理器102可執行機器學習模型1045以使用佈局圖222L執行一推斷程序(例如第一推斷程序)以產生具有一適應性前側PDN之一佈局圖704,如圖8B中所展示。
在時脈樹合成操作223處,APR工具對佈局圖704執行時脈樹合成以產生一佈局圖223L。例如,在時脈樹合成內之最佳化程序期間,APR工具可將一或多個時脈緩衝器822插入至佈局圖704中以達成所要時脈時序。在PDN改進操作243處,處理器102可執行機器學習模型1045以使用佈局圖223L執行一推斷程序(例如一第二推斷程序)以產生具有一適應性前側PDN之一佈局圖706,如圖8C中所展示。應注意,金屬線801在佈局圖706之前側PDN內之位置及分佈不同於佈局圖704之前側PDN內之位置及分佈。另外,佈局圖706中之標準單元820之數目及位置可不同於佈局圖704中之數目及位置。
在佈線操作224處,APR工具執行佈線以使將佈局圖706內之置放標準單元820及時脈緩衝器822互連之各種網(例如金屬線831)佈線以產生一佈局圖224L。例如,執行佈線以確保佈線互連件或網滿足一組約束。在PDN改進操作244處,處理器102可執行機器學習模型1045以使用佈局圖224L執行一推斷程序(例如一第三推斷程序)以產生具有一適應性前側PDN之一佈局圖708,如圖8D中所展示。佈線操作224及PDN改進操作244可使佈局圖708之金屬線801 (例如前側PDN)及金屬線831 (例如佈線網路)交替以導致佈局圖708內之金屬線801及831之位置及分佈不同於佈局圖706內之位置及分佈。
在佈線後最佳化操作225處,APR工具對佈局圖708執行一或多個實體及/或時序驗證以產生一佈局圖225L。應注意,為解決佈局圖225L之IR及時序問題,APR工具可使佈局圖706內之標準單元820、時脈緩衝器822、金屬線801及831之位置及分佈交替。因此,佈局圖225L內之標準單元820、時脈緩衝器822、金屬線801及831之位置及分佈可不同於佈局圖708內之位置及分佈。類似地,由佈線後最佳化操作225產生之佈局圖225L由PDN改進操作245進一步改進。在PDN改進操作245處,處理器102可執行機器學習模型1045以使用佈局圖225L執行又一推斷程序(例如第四推斷程序)以產生一佈局圖710,其可為傳遞至製造之一簽核佈局圖。為簡潔起見,未明確展示類似於圖8D中之佈局圖708之佈局圖710。
圖9係根據本發明之一些實施例之在一APR程序中之各種操作期間建構一IC佈局圖內之一適應性後側PDN之過程之一流程圖。圖10A至圖10D係圖9之流程900中之不同操作期間之佈局圖之不同透視圖。
在一些實施例中,圖9中之流程900可類似於圖2中所展示之流程200,差異在於流程900特別用於建構一IC佈局圖內之一適應性後側(BS) PDN。例如,在操作222至225之各者之後進行後側PDN之一各自PDN改進操作(例如操作242至245)。
在平面規劃操作221處,APR工具可對一輸入IC設計(例如一IC原理圖)執行平面規劃以產生一佈局圖902,諸如圖10A中所展示之一半導體基板1010。在一些實施例中,省略PDN規劃操作241以指示佈局圖902將用於單元置放操作222中。替代地,執行PDN規劃操作241以指示APR工具或機器學習模型1045基於佈局圖221L之分割及/或平面規劃執行電力規劃以產生具有一初始後側電力傳輸網路之佈局圖902。為了描述,圖10A中所展示之佈局圖902未配備有任何後側電力傳輸網路。
在單元置放操作222處,APR工具將一或多個標準單元1020置放於半導體基板1010之前側1010s1上以產生一佈局圖222L。在PDN改進操作242處,處理器102可執行機器學習模型1045以使用佈局圖222L執行一推斷程序(例如第一推斷程序)以產生具有一適應性後側PDN之一佈局圖904,如圖10B-1至圖10B-3中所展示。例如,參考圖10B-1 (其係佈局圖904之一俯視透視圖),標準單元1020經放置於半導體基板1010之前側1010s1上。參考圖10B-2 (其係佈局圖904之一仰視透視圖),後側PDN之金屬線1001B經放置於半導體基板1010之後側1010s2上。參考圖10B-3 (其係佈局圖904之一側視圖),可看到標準單元1020及後側PDN之金屬線1001B經放置於半導體基板1010之對置側(即,前側1010s1及後側1010s2)上。
在時脈樹合成操作223處,APR工具對佈局圖904執行時脈樹合成以產生一佈局圖223L。例如,在時脈樹合成內之最佳化程序期間,APR工具可將一或多個時脈緩衝器1022插入至佈局圖904中以達成所要時脈時序。在PDN改進操作243處,處理器102可執行機器學習模型1045以使用佈局圖223L執行一推斷程序(例如一第二推斷程序)以產生具有一適應性後側PDN之一佈局圖906,如圖10C-1至圖10C-3中所展示。例如,參考圖10C-1 (其係佈局圖906之一俯視透視圖),前側佈線網路之金屬線1031經放置於半導體基板1010之前側1010s1上。參考圖10C-2 (其係佈局圖906之一仰視透視圖),後側PDN之金屬線1001B經放置於半導體基板1010之後側1010s2上。另外,圖10C-2中之佈局圖906內之後側PDN之金屬線1001B之位置及分佈不同於圖10B-2中之佈局圖904內之位置及分佈。參考圖10C-3 (其係佈局圖904之一側視圖),可看到圖10C-2中之佈局圖906內之後側PDN之金屬線1001B之位置及分佈不同於圖10B-2中之佈局圖904內之位置及分佈。
在佈線操作224處,APR工具執行佈線以使將佈局圖906內之置放標準單元1020及時脈緩衝器1022互連之各種網(例如金屬線831)佈線以產生一佈局圖224L。例如,執行佈線以確保佈線互連件或網滿足一組約束。在PDN改進操作244處,處理器102可執行機器學習模型1045以使用佈局圖224L執行一推斷程序(例如一第三推斷程序)以產生具有一適應性前側PDN之一佈局圖908,如圖10D-1至圖10D-3中所展示。佈線操作224及PDN改進操作244可使佈局圖906內之金屬線1001B (例如後側PDN)交替以導致佈局圖908內之金屬線1001B及1031之位置及分佈不同於佈局圖906之PDN內之位置及分佈。
在佈線後最佳化操作225處,APR工具對佈局圖908執行一或多個實體及/或時序驗證以產生一佈局圖225L。應注意,為解決佈局圖225L之IR及時序問題,APR工具可使佈局圖908內之標準單元1020、時脈緩衝器1022及金屬線1001B及1031之位置及分佈交替。因此,佈局圖225L內之標準單元1020、時脈緩衝器1022及金屬線1001B及1031之位置及分佈可不同於佈局圖908內之位置及分佈。類似地,由佈線後最佳化操作225產生之佈局圖225L內之後側PDN由PDN改進操作245進一步改進。在PDN改進操作245處,處理器102可執行機器學習模型1045以使用佈局圖225L執行又一推斷程序(例如第四推斷程序)以產生具有一適應性後側PDN之一佈局圖910,其可為傳遞至製造之一簽核佈局圖。為簡潔起見,未明確展示類似於圖10D-1至圖10D-3中之佈局圖908之佈局圖910。
圖11係根據本發明之一些實施例之在一APR程序之各種操作期間建構一IC佈局圖內之一適應性雙側PDN之過程之一流程圖。圖12A至圖12D係圖11之流程1100中之不同操作期間之佈局圖之不同透視圖。
在一些實施例中,圖11中所展示之流程1100可類似於圖2中所展示之流程200,差異在於流程1100特別用於建構一IC佈局圖內之一適應性雙側(DS) PDN,其包含一前側PDN及一後側PDN。例如,在操作222至225之各者之後進行雙側PDN之一各自PDN改進操作(例如操作242至245)。
在平面規劃操作221處,APR工具可對一輸入IC設計(例如一IC原理圖)執行平面規劃以產生一佈局圖221L,諸如圖12A-1中所展示之一半導體基板1210。在PDN規劃操作241處,APR工具或機器學習模型1045基於佈局圖221L之分割及/或平面規劃執行電力規劃以產生具有包含金屬線1201及1201B之一初始雙側電力傳輸網路之一佈局圖1102。在一些實施例中,屬於一稀疏類型或一密集類型之初始雙側電力傳輸網路可放置於半導體基板1210之前側1210s1及後側1210s2兩者上,其取決於APR工具之預定義設定。為簡潔起見,初始雙側電力傳輸網路係一稀疏PDN,如圖12A-1至圖12A-3中所展示。例如,參考圖12A-1 (其係佈局圖1102之一俯視透視圖),金屬線1201 (即,前側PDN)經放置於半導體基板1210之前側1210s1上。參考圖12A-2 (其係佈局圖1102之一仰視透視圖),金屬線1201B (即,後側PDN)經放置於半導體基板1210之後側1210s2上。參考12A-3 (其係佈局圖1102之一側視圖),可看到金屬線1201及1201B分別放置於半導體基板1210之前側1210s1及後側1210s2上。
在單元置放操作222處,APR工具將一或多個標準單元1220置放於半導體基板1210之前側1210s1上以產生一佈局圖222L。在PDN改進操作242處,處理器102可執行機器學習模型1045以使用佈局圖222L執行一推斷程序(例如第一推斷程序)以產生具有一適應性雙側PDN之一佈局圖1104,如圖12B-1至圖12B-3中所展示。例如,參考圖12B-1 (其係佈局圖1104之一俯視透視圖),標準單元1220及金屬線1201經放置於半導體基板1210之前側1210s1上。參考圖12B-2 (其係佈局圖1104之一仰視透視圖),後側PDN之金屬線1201B經放置於半導體基板1210之後側1210s2上。參考圖12B-3 (其係佈局圖1104之一側視圖),可看到金屬線1201及金屬線1201B經放置於半導體基板1210之對置側(即,前側1210s1及後側1210s2)上。應注意,圖12B-1及圖12B-2中之前側PDN (例如金屬線1201)及後側PDN (例如金屬線1201B)之位置及分佈不同於圖12A-1及圖12A-2中之位置及分佈,因為前側PDN及後側PDN兩者由PDN改進操作242改進(例如,分別用推斷適應性前側PDN及推斷適應性後側PDN替換前側PDN及後側PDN)。
在時脈樹合成操作223處,APR工具對佈局圖1104執行時脈樹合成以產生一佈局圖223L。例如,在時脈樹合成內之最佳化程序期間,APR工具可將一或多個時脈緩衝器1022插入至佈局圖1104中以達成所要時脈時序。在PDN改進操作243處,處理器102可執行機器學習模型1045以使用佈局圖223L執行一推斷程序(例如一第二推斷程序)以產生具有一適應性雙側PDN之一佈局圖1106,如圖12C-1至圖12C-3中所展示。例如,參考圖12C-1 (其係佈局圖1106之一俯視透視圖),前側佈線網路之金屬線1231連同標準單元1220及金屬線1201放置於半導體基板1210之前側1210s1上。參考圖12C-2 (其係佈局圖1106之一仰視透視圖),後側PDN之金屬線1201B經放置於半導體基板1210之後側1210s2上。參考圖12C-3 (其係佈局圖1106之一側視圖),可看到圖12C-1至圖12C-3中之佈局圖1106內之金屬線1201 (例如前側PDN)及金屬線1201B (例如後側PDN)之位置及分佈不同於圖12B-1至圖12B-3中之佈局圖1106內之位置及分佈。
在佈線操作224處,APR工具執行佈線以使將佈局圖1106內之置放標準單元1220及時脈緩衝器1222互連之各種網(例如金屬線1231)佈線以產生一佈局圖224L。例如,執行佈線以確保佈線互連件或網滿足一組約束。在PDN改進操作244處,處理器102可執行機器學習模型1045以使用佈局圖224L執行一推斷程序(例如一第三推斷程序)以產生具有一適應性雙側PDN之一佈局圖1108,如圖12D-1至圖12D-3中所展示。佈線操作224及PDN改進操作244可使佈局圖1106內之金屬線1201 (例如前側PDN)及1201B (例如後側PDN)交替以導致佈局圖1108內之金屬線1201及1201B之位置及分佈不同於佈局圖1106內之位置及分佈。
在佈線後最佳化操作225處,APR工具對佈局圖1108執行一或多個實體及/或時序驗證以產生一佈局圖225L。應注意,為解決佈局圖225L之IR及時序問題,APR工具可使佈局圖1108內之標準單元1220、時脈緩衝器1222及金屬線1201、1201B及1231之位置及分佈交替。因此,佈局圖225L內之標準單元1220、時脈緩衝器1222及金屬線1201、1201B及1231之位置及分佈可不同於佈局圖1108內之位置及分佈。類似地,由佈線後最佳化操作225產生之佈局圖225L內之雙側PDN由PDN改進操作245進一步改進。在PDN改進操作245處,處理器102可執行機器學習模型1045以使用佈局圖225L執行又一推斷程序(例如第四推斷程序)以產生具有一適應性雙側PDN之一佈局圖1110,其可為傳遞至製造之一簽核佈局圖。為簡潔起見,未明確展示類似於圖12D-1至圖12D-3中之佈局圖1108之佈局圖1110。
在一些實施例中,圖15中所展示之半導體結構1500可用於圖10B至圖10D及圖12A至圖12D之佈局圖之後側PDN (例如金屬線1001B)中。稱為「後側直接接觸」之一技術可應用於半導體結構1500。例如,後側PDN可包含放置於半導體基板1510之後側1510s2上之金屬層1501B。金屬層1501B可透過後側接點1511電連接至放置於半導體基板1510之前側1510s1上之標準單元1520之一源極/汲極區域(例如S/D區域) 1521。具體言之,後側接點1511可自半導體基板1510之後側1510s2穿透半導體基板1510直接至標準單元1520之S/D區域1521以減小自後側PDN至前側1510s1上之標準單元之豎直距離。此允許後側PDN (例如金屬線1501B及通路1502B)上之電力直接傳輸至標準單元1520之S/D區域1521以減少由電力路徑引起之非必要電力耗散。
圖13係根據本發明之一些實施例之在一APR程序中建構一IC佈局圖內之一最佳前側PDN之過程之一流程圖。圖14A至圖14D係圖13之流程1300中之不同操作期間之佈局圖之不同透視圖。
在一些實施例中,圖13中所展示之流程1300可類似於圖2中所展示之流程200,差異在於流程1300特別用於建構一IC佈局圖內之一最佳前側(FS) PDN。例如,最佳前側PDN可使用機器學習模型1046基於一IC佈局圖之複數個設計參數產生。
在平面規劃操作221處,APR工具可產生一IC設計之一輸入網表之一佈局圖221L,諸如圖14A中所展示之一半導體基板1410。在操作1302處,機器學習模型1046可使用輸入IC設計網表之複數個設計參數產生半導體基板1410之前側1410s1上之一最佳前側電力傳輸網路以產生圖14A中所展示之一佈局圖1400A。在一些實施例中,可為密集或稀疏之最佳前側電力傳輸網路可放置於半導體基板810之前側810s1上,其取決於機器學習模型1046之判定結果。為了描述,包含金屬線1401之圖14A中所展示之最佳前側電力傳輸網路係一稀疏前側PDN。
在一些實施例中,設計參數可包含(但不限於)輸入網表之單元組成及IC設計之操作頻率及設計風格。例如,單元組成可係指輸入網表內之標準單元之類型,其可包含(但不限於) AOI22 (例如「與或非」閘)、OAI22 (例如「或與非」閘)、ND2 (例如NAND閘)、NR2 (例如NOR)、INV (例如反相器)、BUFF (例如緩衝器)、SDF (例如掃描D正反器)等等。在一些實施例中,輸入網表內之AOI22或OAI22單元之高使用可指示對應於輸入網表之IC設計之接腳接取及佈線可具挑戰性。另外,輸入網表內之ND2、NR2、INV及BUFF單元之高使用可指示對應於輸入網表之IC設計之接腳接取及佈線可較容易。
在一些實施例中,IC佈局圖1400A之PDN之結構或類型可與IC設計之操作頻率相關聯。例如,IC設計使用之一操作頻率越高,單元使用之功耗越高。換言之,當IC設計之操作頻率非常高時,其指示機器學習模型1046更可能使用密集PDN結構。另一方面,當IC設計之操作頻率為低時,其指示機器學習模型1046更可能使用稀疏PDN結構。
在一些實施例中,IC佈局圖1400A之PDN之結構或類型可與IC設計之設計風格相關聯。針對具有重資料存取速率之設計風格(諸如CPU、GPU、NPC等等),IC佈局圖內之標準單元要消耗更多電力。因此,在此情境中,機器學習模型1046更可能使用密集PDN結構。針對具有較輕資料存取速率之設計風格,機器學習模型1046在此情境中更可能使用稀疏前側PDN結構。
具體言之,機器學習模型1046之訓練資料可包含IC設計之複數個網表及此等IC設計之操作頻率及設計風格。另外,此等IC設計之簽核佈局圖之PDN結構可為訓練資料之標記。因此,經訓練機器學習模型1046能夠使用一給定IC設計之一網表預測或判定最適當PDN結構(例如稀疏或密集的)。在一些實施例中,不同金屬層(例如圖5中所展示之M0至Mtop)中之前側PDN之PDN結構可不同。PDN結構之細節可參考圖4A至圖4J之實施例且因此不會在此重複。
在一些實施例中,機器學習模型1046亦可為一K最近鄰(KNN)模型或任何其他分類機器學習模型,但本揭露不限於此。
在單元置放操作222處,APR工具將一或多個標準單元1420置放於半導體基板1410之前側1410s1上以產生一佈局圖1400B。例如,經組態以提供預定義功能且具有預設計佈局圖之標準單元1420經儲存於單元庫1044中。
在時脈樹合成操作223處,APR工具對佈局圖1400B執行時脈樹合成以產生一佈局圖1400C。例如,在時脈樹合成內之最佳化程序期間,APR工具可將一或多個時脈緩衝器1422插入至佈局圖1400B中以達成所要時脈時序。
在佈線操作224處,APR工具執行佈線以使將佈局圖1400C內之置放標準單元1420及時脈緩衝器1422互連之各種網(例如金屬線1431)佈線以產生一佈局圖1400D。例如,執行佈線以確保佈線互連件或網滿足一組約束。應注意,IC佈局圖1400A、14000B、1400C及1400D內之PDN (例如金屬線1401)之位置及分佈在流程1400期間保持不變。
在佈線後最佳化操作225處,APR工具對佈局圖1400D執行一或多個實體及/或時序驗證以產生一輸出IC佈局圖。應注意,為解決輸出佈局圖之IR及時序問題,APR工具可使佈局圖1400D內之標準單元1420、時脈緩衝器1422、金屬線1401及1431之位置及分佈交替。因此,輸出IC佈局圖內之標準單元1420、時脈緩衝器1422、金屬線1401及1431之位置及分佈可不同於佈局圖1400D內之位置及分佈。為簡潔起見,未明確展示類似於圖14D中之佈局圖1400D之輸出IC佈局圖。此外,由APR程序(例如流程1300)產生之輸出IC佈局圖可用於在一晶圓代工廠中製造一積體電路。
圖16係根據一些實施例之一IC製造系統1600及與其相關聯之一IC製造流程之一方塊圖。在一些實施例中,基於一IC佈局圖,一半導體積體電路之一層中之(A)一或多個半導體遮罩或(B)至少一個組件之至少一者使用製造系統1600製造。
在圖16中,IC製造系統1600包含實體,諸如一設計室1620、一遮罩室1630及一IC製造商/製作者(「fab」) 1650,其等在與製造一IC裝置1660相關之設計、開發及製造循環及/或服務中彼此互動。系統1600中之實體由一通信網路連接。在一些實施例中,通信網路係一單一網路。在一些實施例中,通信網路係各種不同網路,諸如一內部網路及網際網路。通信網路包含有線及/或無線通信信道。各實體與一或多個其他實體互動且將服務提供至一或多個其他實體及/或自一或多個其他實體接收服務。在一些實施例中,設計室1620、遮罩室1630及IC fab 1650之兩者或更多者由一單一較大公司擁有。在一些實施例中,設計室1620、遮罩室1630及IC fab 1650之兩者或更多者共存於一共同設施中且使用共同資源。
設計室(或設計團隊) 1620產生一IC設計佈局圖1622。IC設計佈局圖1622包含各種幾何圖案,例如上文所討論之一IC佈局圖。幾何圖案對應於組成待製造之IC裝置1660之各種組件之金屬、氧化物或半導體層之圖案。各種層組合以形成各種IC特徵。例如,IC設計佈局圖1622之一部分包含形成於一半導體基板(諸如一矽晶圓)中之各種IC特徵(諸如一主動區域、閘極電極、源極及汲極、一層間互連件之金屬線或通路及用於接合墊之開口)及放置於半導體基板上之各種材料層。設計室1620實施一適當設計過程以形成IC設計佈局圖1622。設計過程包含邏輯設計、實體設計或置放與佈線之一或多者。IC設計佈局圖1622呈現於具有幾何圖案之資訊之一或多個資料檔案中。例如,IC設計佈局圖1622可依一GDSII檔案格式或DFII檔案格式表示。
遮罩室1630包含資料準備1632及遮罩製造1644。遮罩室1630使用IC設計佈局圖1622來製造一或多個遮罩1645以用於根據IC設計佈局圖1622製造IC裝置1660之各種層。遮罩室1630執行遮罩資料準備1632,其中將IC設計佈局圖1622轉譯成一代表性資料檔案(RDF)。遮罩資料準備1632將RDF提供至遮罩製造1644。遮罩製造1644包含一遮罩寫入器。一遮罩寫入器將RDF轉換成一基板(諸如遮罩(倍縮光罩) 1645或一半導體晶圓1653)上之一影像。設計佈局圖1622由遮罩資料準備1632操縱以符合遮罩寫入器之特定特性及/或IC fab 1650之要求。在圖16中,遮罩資料準備1632及遮罩製造1644經繪示為單獨元件。在一些實施例中,遮罩資料準備1632及遮罩製造1644可統稱為遮罩資料準備。
在一些實施例中,遮罩資料準備1632包含光學鄰近校正(OPC),其使用微影增強技術來補償影像誤差,諸如可由繞射、干涉、其他程序效應及其類似者導致之影像誤差。OPC調整IC設計佈局圖1622。在一些實施例中,遮罩資料準備1632進一步包含解析度提高技術(RET),諸如偏軸照明、亞解析度輔助特徵、相移遮罩、其他適合技術及其類似者或其等之組合。在一些實施例中,亦使用逆微影技術(ILT),其將OPC視為一逆成像問題。
在一些實施例中,遮罩資料準備1632包含一遮罩規則檢查器(MRC),其使用含有特定幾何及/或連接限制之一組遮罩產生規則檢查已經歷OPC中之程序之IC設計佈局圖1622以確保足夠裕度用於考量半導體製程之可變性及其類似者。在一些實施例中,MRC修改IC設計佈局圖1622以補償遮罩製造1644期間之限制,其可取消由OPC執行之部分修改以滿足遮罩產生規則。
在一些實施例中,遮罩資料準備1632包含微影程序檢查(LPC),其模擬將由IC fab 1650實施以製造IC裝置1660之處理。LPC基於IC設計佈局圖1622模擬此處理以產生一模擬製造裝置,諸如IC裝置1660。LPC模擬中之處理參數可包含與IC製造循環之各種程序相關聯之參數、與用於製造IC之工具相關聯之參數及/或製程之其他態樣。LPC考量各種因數,諸如航拍影像對比度、焦深(「DOF」)、遮罩誤差增強因數(「MEEF」)、其他適合因數及其類似者或其等之組合。在一些實施例中,在一模擬製造裝置由LPC產生之後,若模擬裝置之形狀不夠接近以無法滿足設計規則,則重複OPC及/或MRC以進一步改進IC設計佈局圖1622。
應理解,遮罩資料準備1632之以上描述已為了清楚而簡化。在一些實施例中,資料準備1632包含額外特徵,諸如用於根據製造規則修改IC設計佈局圖1622之一邏輯運算(LOP)。另外,在資料準備1632期間施加於IC設計佈局圖1622之程序可依各種不同順序執行。
在遮罩資料準備1632之後且在遮罩製造1644期間,基於經修改IC設計佈局圖1622製造一遮罩1645或一遮罩群組1645。在一些實施例中,遮罩製造1644包含基於IC設計佈局圖1622執行一或多個微影曝光。在一些實施例中,一電子束(e束)或多個e束之一機構用於基於經修改IC設計佈局圖1622形成一遮罩(光罩或倍縮光罩) 1645上之一圖案。遮罩1645可依各種技術形成。在一些實施例中,遮罩1645使用二元技術形成。在一些實施例中,一遮罩圖案包含不透明區域及透明區域。用於使已塗覆於一晶圓上之影像敏感材料層(例如光阻劑)曝光之一輻射束(諸如一紫外線(UV)或EUV束)由不透明區域阻擋且透射穿過透明區域。在一個實例中,遮罩1645之二元遮罩版本包含一透明基板(例如熔融石英)及塗覆於二元遮罩之不透明區域中之一不透明材料(例如鉻)。在另一實例中,遮罩1645使用一相移技術形成。在遮罩1645之一相移遮罩(PSM)版本中,形成於相移遮罩上之圖案中之各種特徵經組態以具有適當相差來提高解析度及成像品質。在各種實例中,相移遮罩可為衰減PSM或交替PSM。由遮罩製造1644產生之(若干)遮罩用於各種程序中。例如,此一(些)遮罩用於一離子植入程序中以形成半導體晶圓1653中之各種摻雜區域,用於一蝕刻程序中以形成半導體晶圓1653中之各種蝕刻區域,及/或用於其他適合程序中。
IC fab 1650係包含用於製造各種不同IC產品之一或多個製造設施之一IC製造企業。在一些實施例中,IC Fab 1650係一半導體晶圓代工廠。例如,可存在一製造設施用於複數個IC產品之前段製造(前段製程(FEOL)製造),而一第二製造設施可提供IC產品之互連及封裝之後段製造(後段製程(BEOL)製造),且一第三製造設施可提供晶圓代工廠企業之其他服務。
IC fab 1650包含晶圓製造工具1652,其經組態以對半導體晶圓1653執行各種製造操作,使得IC裝置1660根據(若干)遮罩(例如遮罩1645)製造。在各種實施例中,製造工具1652包含以下之一或多者:一晶圓步進器、一離子植入器、一光阻劑塗覆器、一程序室(例如一CVD室或LPCVD爐)、一CMP系統、一電漿蝕刻系統、一晶圓清潔系統或能夠執行本文中所討論之一或多個適合製程之其他製造設備。
IC fab 1650使用由遮罩室1630製造之(若干)遮罩1645製造IC裝置1660。因此,IC fab 1650至少間接使用IC設計佈局圖1622製造IC裝置1660。在一些實施例中,半導體晶圓1653由IC fab 1650使用(若干)遮罩1645製造以形成IC裝置1660。在一些實施例中,IC製造包含至少間接基於IC設計佈局圖1622執行一或多個微影曝光。半導體晶圓1653包含一矽基板或其上形成有材料層之其他適當基板。半導體晶圓1653進一步包含各種摻雜區域、介電特徵、多層互連件及其類似者(在後續製造步驟處形成)之一或多者。
本揭露之一態樣提供一種方法,其包含以下步驟:獲得一積體電路(IC)設計之一網表;對該網表執行一自動置放與佈線(APR)程序以產生一最終佈局圖;及在該APR程序內之各操作期間,使用一機器學習模型改進該APR程序內之各操作處產生之一佈局圖內之一電力傳輸網路。
本揭露之另一態樣提供一種方法,其包含以下步驟:獲得一積體電路(IC)設計之一網表;對該網表執行一自動置放與佈線(APR)程序以產生一最終佈局圖;及在該APR程序內之各操作期間,將該APR程序內之各操作處產生之一佈局圖分割成複數個網格且使用一機器學習模型根據各網格之複數個特徵基於一網格來適應性更新該佈局圖之一電力傳輸網路。
本揭露之又一態樣提供一種系統,其包含儲存程式指令之一非暫時性電腦可讀媒體及可操作地耦合至該非暫時性電腦可讀媒體之一處理器。該等程式指令在由該處理器執行時引起該處理器執行以下操作:獲得一積體電路(IC)設計之一網表;及使用一機器學習模型基於該IC設計之複數個特徵判定由一自動置放與佈線(APR)程序產生之對應於該IC設計之一佈局圖內之一電力傳輸網路是屬於一第一類型還是一第二類型。
已在所提供實例及描述中充分描述本揭露之方法及特徵。應理解,不背離本揭露之精神之任何修改或改變意欲涵蓋於本揭露之保護範疇內。
此外,本申請案之範疇不意欲受限於本說明書中所描述之程序、機器、製造及物質組成、構件、方法及步驟之特定實施例。熟習技術者應易於自本揭露瞭解,可根據本揭露來利用執行實質上相同於本文中所描述之對應實施例之功能或達成實質上相同於本文中所描述之對應實施例之結果之目前既有或以後開發之程序、機器、製造、物質組成、構件、方法或步驟。
因此,隨附申請專利範圍意欲將程序、機器、製造、物質組成、構件、方法或步驟包含於其範疇內。另外,各請求項構成一單獨實施例,且各種請求項及實施例之組合在本揭露之範疇內。
100:積體電路(IC)設計系統
102:處理器
104:記憶體
108:匯流排
110:I/O介面
112:網路介面
114:網路
200:IC設計流程
210:IC設計操作
220:自動置放與佈線(APR)操作
221:平面規劃操作
221L:佈局圖
222:單元置放操作
222L:佈局圖
223:時脈樹合成操作
223L:佈局圖
224:佈線操作
224L:佈局圖
225:佈線後最佳化操作
225L:佈局圖
240:電力傳輸網路(PDN)改進階段
241:PDN規劃操作
242:PDN改進操作
243:PDN改進操作
244:PDN改進操作
245:PDN改進操作
300:流程
310:操作
320:操作
330:操作
340:操作
350:操作
410A:網格
410B:網格
411:帶
412:帶
413:通路
414:第一軌道
415:第二軌道
420A:網格
420B:網格
421A:柱
421B:柱
422:短柱
423:通路
424:軌道
425:軌道
430A:網格
430B:網格
431:柱
432:短柱
433:通孔
434:軌道
435:軌道
440A:網格
440B:網格
441:柱
442:短柱
443:通孔
444:軌道
445:軌道
450A:網格
450B:網格
451:柱
452:短柱
453:通孔
454:軌道
455:軌道
500:半導體結構
510:半導體基板
510s1:前側
510s2:後側
600:流程
602:操作
604:操作
606:操作
608:操作
610:操作
611至617:圖
621至627:特徵
631至633:主要群組
700:流程
702:佈局圖
704:佈局圖
706:佈局圖
708:佈局圖
710:佈局圖
801:金屬線
810:半導體基板
810s1:前側
810s2: 背面
820:標準單元
822:時脈緩衝器
831:金屬線
900:流程
902:佈局圖
904:佈局圖
906:佈局圖
908:佈局圖
910:佈局圖
1001B:金屬線
1010:半導體基板
1010s1:前側
1010s2:後側
1020:標準單元
1022:時脈緩衝器
1031:金屬線
1041:電腦程式碼
1042:IC設計儲存器
1043:使用者介面(UI)
1044:單元庫
1045:機器學習模型
1046:機器學習模型
1100:流程
1101:金屬導線
1101B:金屬導線
1102:佈局圖
1104:佈局圖
1106:佈局圖
1108:佈局圖
1110:佈局圖
1201:金屬線
1201B:金屬線
1210:半導體基板
1210s1:前側
1210s2:後側
1220:標準單元
1222:時脈緩衝器
1231:金屬線
1300:流程
1302:操作
1400A:佈局圖
1400B:佈局圖
1400C:佈局圖
1400D:佈局圖
1401:金屬線
1410:半導體基板
1410s1:前側
1410s2:背面
1420:標準單元
1422:時脈緩衝器
1431:金屬線
1500:半導體結構
1501B:金屬層
1502B:通路
1510:半導體基板
1510s1:前側
1510s2:後側
1511:後側接點
1520:標準單元
1521:源極/汲極(S/D)區域
1541:金屬層
1542:金屬層
1543:金屬層
1544:金屬層
1600:IC製造系統
1620:設計室
1622:IC設計佈局圖
1630:遮罩室
1632:遮罩資料準備
1644:遮罩製造
1645:遮罩
1650:IC製造商/製作者(fab)
1652:晶圓製造工具
1653:半導體晶圓
1660:IC裝置
6081:點
6111:網格
6121:網格
6131:網格
6141:網格
6151:網格
6161:網格
6171:網格
6311至6316:子群組
6321至6326:子群組
6331至6336:子群組
B_M0至B_M15:後側金屬層0至後側金屬層15
B_RDL:後側重佈層
B_RV:後側重佈通路
B_VIA0:後側通路層0
B_VIA1:後側通路層1
D1:距離
D2:距離
M0至M15:金屬層0至金屬層15
VIA0至VIA14:通路層0至通路層14
自結合附圖解讀之以下詳細描述最佳理解本揭露之態樣。應強調,根據行業標準做法,各種構件未按比例繪製。事實上,為使討論清楚,可任意增大或減小各種構件之尺寸。
圖1係根據一些實施例之一IC設計系統100之一方塊圖。
圖2係根據本發明之一些實施例之一IC設計流程200之至少一部分之一功能流程圖。
圖3係根據本發明之一些實施例之用於產生一積體電路中之一適應性電力傳輸網路之機器學習模型之訓練過程之一流程圖。
圖4A至圖4J係根據本發明之一些實施例之不同PDN (電力傳輸網路)結構之圖式。
圖5係繪示根據本發明之一些實施例之一半導體基板之前側及後側上之不同層的一圖式。
圖6A係根據本發明之一些實施例之一機器學習模型之推斷過程之一流程圖。
圖6B係繪示圖6A中之機器學習模型之推斷過程的一圖式。
圖7係根據本發明之一些實施例之在一APR程序之各種操作期間建構一IC佈局圖內之一適應性前側PDN之過程之一流程圖。
圖8A至圖8D係圖7之流程700中之不同操作期間之佈局圖之不同透視圖。
圖9係根據本發明之一些實施例之在一APR程序之各種操作期間建構一IC佈局圖內之一適應性後側PDN之過程之一流程圖。
圖10A至圖10D-3係圖9之流程900之不同操作期間之佈局圖之不同透視圖。
圖11係根據本發明之一些實施例之在一APR程序之各種操作期間建構一IC佈局圖內之一適應性雙側PDN之過程之一流程圖。
圖12A-1至圖12D-3係圖11之流程1100中之不同操作期間之佈局圖之不同透視圖。
圖13係根據本發明之一些實施例之在一APR程序中建構一IC佈局圖內之一最佳前側PDN之過程之一流程圖。
圖14A至圖14D係圖13之流程1300中之不同操作期間之佈局圖之不同透視圖。
圖15係根據本發明之一些實施例之一半導體結構之一剖面。
圖16係根據一些實施例之一IC製造系統及與其相關聯之一IC製造流程之一方塊圖。
200:積體電路(IC)設計流程
210:IC設計操作
220:自動置放與佈線(APR)操作
221:平面規劃操作
222:單元置放操作
223:時脈樹合成操作
224:佈線操作
225:佈線後最佳化操作
240:電力傳輸網路(PDN)改進階段
241:PDN規劃操作
242:PDN改進操作
243:PDN改進操作
244:PDN改進操作
245:PDN改進操作
Claims (9)
- 一種用於產生在積體電路佈局圖中的適應性電力傳輸網路之方法,其包括:獲得一積體電路(IC)設計之一網表;及執行一自動置放與佈線(APR)程序之複數個操作;在該APR程序之各操作完成之後產生具有一電力傳輸網路之一佈局圖;及使用一機器學習模型藉由將該APR程序之各自操作處產生之該佈局圖之複數個特徵輸入至該機器學習模型來調整該佈局圖之該電力傳輸網路之一部分之配置及/或一密度。
- 如請求項1之方法,其進一步包括:在該APR程序內之一平面規劃操作處基於該IC設計之該網表產生一第一佈局圖;將一初始電力傳輸網路放置於該第一佈局圖內之一半導體基板上以產生一改進第一佈局圖;及在該APR程序內之一單元置放操作處將複數個標準單元置放於該改進第一佈局圖內之該半導體基板上以產生一第二佈局圖;及使用該機器學習模型改進該第二佈局圖內之該初始電力傳輸網路以產生一改進第二佈局圖。
- 如請求項2之方法,其中該初始電力傳輸網路及該等標準單元經放置於該半導體基板之一第一側上。
- 如請求項2之方法,其中該等標準單元及該初始電力傳輸網路分別放置於該半導體基板之一第一側及與該第一側對置之一第二側上。
- 如請求項2之方法,其進一步包括:在該APR程序內之一時脈樹合成操作處對該改進第二佈局圖執行時脈樹合成以產生一第三佈局圖;及使用該機器學習模型改進該第三佈局圖內之該電力傳輸網路以產生一改進第三佈局圖,其中一或多個時脈緩衝器在該時脈樹合成操作期間放置於該改進第二佈局圖內之該半導體基板上。
- 如請求項5之方法,其進一步包括:在該APR程序內之一佈線操作處使將該等置放標準單元互連之複數個導體線佈線以產生一第四佈局圖;使用該機器學習模型改進該第四佈局圖內之該電力傳輸網路以產生一改進第四佈局圖;在該APR程序內之一佈線後最佳化操作處對該改進第四佈局圖執行一最佳化程序以產生一第五佈局圖;及使用該機器學習模型改進該第四佈局圖內之該電力傳輸網路以產生一最終佈局圖。
- 如請求項1之方法,其中使用該機器學習模型改進該APR程序內之各操作處產生之該佈局圖內之該電力傳輸網路包括:獲得與該佈局圖之複數個預定特質相關聯之複數個圖;將該APR程序內之各操作處產生之該佈局圖分割成複數個網格;提取該佈局圖內之各網格之特徵;使用該機器學習模型基於各網格之該等提取特徵推斷該佈局圖內之各網格之一電力傳輸網路結構以產生一適應性電力傳輸網路;及用該所產生適應性電力傳輸網路替換該佈局圖內之該電力傳輸網路。
- 一種用於產生在積體電路佈局圖中的適應性電力傳輸網路之方法,其包括:獲得一積體電路(IC)設計之一網表;對該網表執行一自動置放與佈線(APR)程序以產生一最終佈局圖;及在該APR程序內之各操作期間:將該APR程序內之各操作處產生之一佈局圖分割成一固定大小之複數個網格;及使用一機器學習模型藉由將該佈局圖內之各網格之複數個特徵輸入至該機器學習模型來基於一網格適應性更新該佈局圖之一電力傳輸網路在各網格的配置及/或一密度。
- 一種用於產生在積體電路佈局圖中的適應性電力傳輸網路之系統,其包括儲存程式指令之一非暫時性電腦可讀媒體及可操作地耦合至該非暫時性電腦可讀媒體之一處理器,其中該等程式指令在由該處理器執行時引起該處理器執行:獲得一積體電路(IC)設計之一網表;及使用一機器學習模型基於該IC設計之複數個特徵判定由一自動置放與佈線(APR)程序產生之對應於該IC設計之一佈局圖內之一電力傳輸網路是屬於一第一類型還是一第二類型,其中該IC設計之該等特徵包括該IC設計之該網表之單元組成及該IC設計之一操作頻率及一設計風格;及使用由該APR程序產生之該佈局圖製造一積體電路,其中該第一類型之該電力傳輸網路中之導電線之密度高於該第二類型之導電線之密度。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202463627751P | 2024-01-31 | 2024-01-31 | |
| US63/627,751 | 2024-01-31 | ||
| US18/736,596 US20250245414A1 (en) | 2024-01-31 | 2024-06-07 | Method and system for generating adaptive power delivery network in integrated circuit layout diagram |
| US18/736,596 | 2024-06-07 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202533084A TW202533084A (zh) | 2025-08-16 |
| TWI903671B true TWI903671B (zh) | 2025-11-01 |
Family
ID=
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230274071A1 (en) | 2022-02-23 | 2023-08-31 | D2S, Inc. | Generating routes for an integrated circuit design with non-preferred direction curvilinear wiring |
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230274071A1 (en) | 2022-02-23 | 2023-08-31 | D2S, Inc. | Generating routes for an integrated circuit design with non-preferred direction curvilinear wiring |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12400067B2 (en) | Integrated circuit and method of forming same and a system | |
| US11775724B2 (en) | Integrated circuit and method of manufacturing the same | |
| US20220075922A1 (en) | System and computer program product for integrated circuit design | |
| US12009356B2 (en) | Integrated circuit and method of forming the same | |
| US20240088126A1 (en) | Cell structure having different poly extension lengths | |
| US20250255003A1 (en) | Integrated circuit and method of forming the same | |
| CN116314175A (zh) | 集成电路及其形成方法 | |
| US20230154990A1 (en) | Arrangement of source or drain conductors of transistor | |
| TWI903671B (zh) | 用於產生在積體電路佈局圖中的適應性電力傳輸網路之方法與系統 | |
| US20250245414A1 (en) | Method and system for generating adaptive power delivery network in integrated circuit layout diagram | |
| TWI879663B (zh) | 半導體裝置、其製造方法及積體電路 | |
| US20250342301A1 (en) | Integrated circuit design method, system and computer program product | |
| US12164853B2 (en) | Method for generating routing structure of semiconductor device | |
| US20250372507A1 (en) | Integrated circuit (ic) device, and methods | |
| US20250380512A1 (en) | Multi-finger mos circuit, method of manufacturing the same, and system | |
| TW202601438A (zh) | 半導體裝置、其製造方法及積體電路 | |
| CN117371380A (zh) | 集成电路设计方法、系统和计算机程序产品 |