• 沒有找到結果。

中華大學 碩士論文

N/A
N/A
Protected

Academic year: 2022

Share "中華大學 碩士論文"

Copied!
63
0
0

加載中.... (立即查看全文)

全文

(1)中華大學 碩士論文. 題目:考慮時序因素之良率導向的連線與轉接點 設計改善 Yield-Driven Wiring and Via Improvement with Timing Consideration. 系 所 別:資訊工程學系碩士班 學號姓名:M09302049. 江柏毅. 指導教授:顏金泰 博士. 中華民國 九十六 年 七 月.

(2) 摘要. 近年來科技日漸發達,各種微處理器功能日漸強大,而英特爾創辦人高登莫爾 在 1965 年首次對半導體產業下了一個『莫爾定律』 ,該定律預言在特定大小的晶 片裡,每隔 18 個月電晶體數目會呈倍數成長,造成電路的複雜度相對性的增加, 加上製程的下降,晶片的體積縮小,讓在作 IC 成像技術時將變的困難,而造成 晶片在生產製造時的良率也跟著快速的下降,要在越來越小的晶片裡塞入越多的 電晶體,製造的難度也會相對的增加,當沒辦法去保證設計出來的晶片能完整的 製造出來時,製程的良率(yield)問題也就相對的重要,在 EDA Industry 裡 DFM(Design for Manufacturing)、DFY(Design for Yield)也就對整個 IC Design Flow 及晶圓製造廠佔有極重要的角色。 在本論文中,主要會利用ㄧ個模型去分析整顆晶片上的轉接點(Via)跟線段 (Wire)的良率,在線段(Wire)上會分類成兩大類,分別是會讓線段(Wire)發生斷 線及短路的現象,而在轉接點(Via)上會利用加入多餘轉接點(Redundant-via) 的方式去讓整顆晶片上轉接點(Via)的良率值提高,在線段(Wire)上利用線寬放 寬(Wire-sizing)的技術來提高線段(Wire)會因為雜質掉落而發生斷路現象的良 率值,利用線段重整(Path-reconstruction)的技術來將線段(Wire)會因為雜質 掉落而發生短路現象的良率值提高,進而將整顆晶片的良率值給提高。 最後在實驗結果中,可瞭解到在轉接點(Via)方面良率值都會有提升的動作, 當所輸入的晶片複雜度越高,良率所提升的比率也就會越高,連線(Wire)方面也 會有顯著的提升,以整顆晶片而言,平均的良率會有 5.5%至 44.8%的增幅。. I.

(3) Abstract In VDSM technologies, the process variation becomes more and more serious. Due to the difficulty of lithography and manufacture in nanometer process, the concept of yield-driven design becomes more and more important for modern chip designs. For a given design, the design flow may focus on the yield impact on three physical factors: wires, vias and cells. To reduce the yield loss due to via failure and wire short and open failures is a very important issue in DFM. In this paper, the yield model to analysis yield on a chip is firstly proposed to model the via、wire yield in post detail routing. Given a particle defect size and the width constraint of any wire segment in the RST, all the paths in the routing nets are reconstructed and the widths of all the wire segments are reassigned to minimize total routing area of the RST and satisfy all the width and timing constrained for critical area minimization by running a timing-constrained wire sizing process. A two-phase insertion approach for yield optimization is proposed to insert on-track redundant vias by finding a maximum matching result in a bipartite graph and insert off-track redundant vias by using a maximum constrained edge-pair matching result in a multi-partite graph with via sharing constraints. According to the Poisson yield model for redundant via insertion, wire sizing and path. reconstruction,. the. experimental. results. show. that. our. proposed. timing-constrained path reconstruction for critical area minimization (TYPR), timing and weight-constrained wire sizing for critical area minimization (TYWS) and yield-driven two-phase redundant via insertion (YRVI) approach can improve 5.5%~44.8% chip yield for the tested benchmarks.. II.

(4) 致謝. 本論文能夠順利完成要特別感謝指導教授顏金泰老師不遺餘力的 指 導,不 論 在 課 業 上 或 是 生 活 上 所 遇 到 的 困 難,都 能 給 予 我 最 大 的 幫 助 , 讓 我 能 順 利 的 解 決 問 題, 還 有 陳 永 源 老 師 在 研 究 所 兩 年 期 間 , 對 於相關課程的指導教學盡心盡力,在此也特別感謝他。. 在 研 究 所 的 求 學 過 程 中,非 常 感 謝 實 驗 室 的 學 長 -吳 嘉 偉、李 育 政 、 林 鎧 平、呂 昆 龍、賴 世 軒、張 云 斌、林 勝 茂 與 學 姊 李 佳 芳、王 姿 雅 , 在 這 兩 年 中 均 給 予 我 很 大 的 幫 助 。 以 及 許 多 實 驗 室 的 同 學 -黃 明 欽 、 羅岳峯、林 崑明、林 立文、葉 昭松、陶 尚宇、柯 俊育、羅 建豪、陳 美 君 及 吳 建 弘 幫 助 我 解 決 問 題。 也 感 謝 學 弟 -陳 志 瑋 、吳 名 源 、 張坤鈞、 石孟儒、 吳耿偉、 劉威成與 學 妹 黃詩芩在 實 驗 室 的 熱 心 服 務 以 及 課 業 上 的 討 論 與 指 教。最 後 要 感 謝 家 人 的 支 持,當 我 在 挫 折 及 困 難 時,給 我 鼓 勵 及 關 心,讓 我 在 求 學 過 程 中 無 後 顧 之 憂,能 夠 專 心 的 完 成 學 位 。. 謹將此篇論文獻給家人、師長、同學及 朋友們,共 同分享這得來不 易之榮耀。. 江柏毅 謹致 中華民國九十五年七月於新竹. III.

(5) 章節目錄 中文摘要........................................................I 英文摘要(Abstract).............................................II 致謝...........................................................III 章節目錄.................................................IV 圖形目錄................................................VI. 第一章 簡介...............................................1 第二章 良率模型...........................................7 2.1.1 轉接點(Via)良率模型.........................................8 2.1.2 轉接點(Via)的時間分析......................................13 2.1.2.1 原始轉接點(Single-via) ................................13 2.1.2.2 實體繞線(On-track)多餘轉接點(Redundant-via) ...........14 2.1.2.3 延伸繞線(Off-track)多餘轉接點(Redundant-via) ..........15 2.2.1 連線(Wire)良率模型.........................................17 2.2.1.1 連線(Wire)開路現象.....................................17 2.2.1.2 連線(Wire)短路現象.....................................19 2.2.2 連線(Wire)的時間分析.......................................20 2.2.2.1 連線(Wire)開路現象.....................................20 2.2.2.2 連線(Wire)短路現象.....................................21. IV.

(6) 第三章 動機及問題描述....................................22 第四章 符合時間限制下利用線路重整減少重要面積............26 4.1 在無短路的重要面積(Critical-area)下可重新繞線的範圍..........26 4.2 在整顆晶片中的連線權重.......................................28 4.3 線路重整之轉換型態及改變史丹爾端點(Steiner-point)位置........29 4.4 符合時間延遲下利用迷宮繞線(Maze-routing)法重新配置連線.......30. 第五章 符合時間限制下有效的加大線寬減少重要面積..........33 5.1 單一線段線寬的放寬...........................................33 5.2 單一連線線寬的放寬...........................................34 5.3 線寬放寬的演算法.............................................35 5.4 線寬放寬後的最佳化...........................................36. 第六章 加入多餘轉折點來增加轉折點的良率..................38 6.1 以良率為導向的加入實體繞線(on-track)的多餘轉接點 (Redundant-via)..................................................38 6.2 以良率為導向的加入延伸繞線(off-track)的多餘轉接點 (Redundant-via)..................................................41. 第七章 實驗結果與實驗數據................................44 第八章 結論與未來展望....................................49 參考文獻.................................................51. V.

(7) 圖形目錄 圖 1.1 IC 設計的流程圖................................................2 圖 1.2 製程與良率統計圖.............................................3 圖 1.3a 線段(Wire)產生斷路的現象....................................5 圖 1.3b 線段(Wire)產生短路的現象....................................5 圖 1.4. DFM 示意圖...................................................6. 圖 2.1 Single-via 示意圖及 3D 立體圖...................................8 圖 2.2 實體繞線(On-track)多餘轉折點(Redundant-via)示意圖及 3D 立體 圖..................................................................8 圖 2.3 延伸繞線(Off-track)多餘轉折點(Redundant-via)示意圖及 3D 立體 圖..................................................................9 圖 2.4 原始轉折點(Single-via)示意圖及其機率........................10 圖 2.5 實體繞線(On-track)多餘轉折點(Redundant-via)示意圖及其機 率.................................................................10 圖 2.6 延伸繞線(Off-track)多餘轉折點(Redundant-via)示意圖及其機 率.................................................................10 圖 2.7 連線 i 上轉折點(Via)的損壞機率分析示意圖.....................12 圖 2.8 整顆晶片上轉折點(Via)的良率計算分析示意圖...................12 圖 2.9 原始轉折點(Single-via)的時間延遲分析示意圖..................14 圖 2.10 實體繞線(On-track)多餘轉折點(Redundant-via)時間延遲分析示意 圖.................................................................15 圖 2.11 延伸繞線(Off-track)多餘轉折點(Redundant-via)的時間延遲分析示 意圖...............................................................16 圖 2.12 電流與充電時間示意圖.......................................16 圖 2.13 線段(Wire)會因為開路而產生重要面積(Critical-area)的情況....18. VI.

(8) 圖 2.14 線段(Wire)會因為短路而產生重要面積(Critical-area)的情況....19 圖 2.15 線段(Wire)與電阻對應圖.....................................20 圖 2.15 線段(Wire)產生開路會發生的兩種情況示意圖...................21 圖 2.16 線段(Wire)產生短路會發生的兩種情況示意圖...................21 圖 3.1 良率模型....................................................22 圖 3.2 尚未加入多餘轉折點(Redundant-via) ..........................23 圖 3.3 加入多餘轉折點(Redundant-via)後的結果.......................23 圖 3.4 提高良率流程圖..............................................24 圖 3.5a 尚未經過良率修正...........................................25 圖 3.5b 經過良率修正...............................................25 圖 4.1a 單一線段之可重新繞線範圍(Flexible-region) .................27 圖 4.1b 整條連線之可重新繞線範圍(Flexible-region) .................27 圖 4.2 繞線結果與空白空間(Empty-space) ............................28 圖 4.3 可重新繞線範圍(Flexible-region)的計算方式...................28 圖 4.4 直線式史丹爾樹(Rectilinear Steiner Tree,RST)還原成史丹爾繞線樹 (Steiner Routing Tree,SRT) .........................................28 圖 4.5 史丹爾端點(Steiner-point)可移動區域示意圖...................29 圖 4.6 移動史丹爾端點(Steiner-point)後所計算出來的權重比較.........30 圖 4.7 迷宮繞線(Maze-routing)法來作細部繞線........................31 圖 4.8 範例圖示....................................................31 圖 5.1 單一線段利用π模型來計算延遲時間的示意圖及公式..............33 圖 5.2 延遲時間跟線寬的示意圖......................................34 圖 5.3 單一連線轉換成π模型來計算總時間延遲值......................35 圖 5.4a 線寬大於雜質時的延遲時間跟線寬對應圖.......................36 圖 5.4b 線寬大於雜質時的解法.......................................36 圖 5.5a 線寬小於雜質時的延遲時間跟線寬對應圖.......................37 VII.

(9) 圖 5.5b 線寬小於雜質時的解法.......................................37 圖 6.1 實體繞線(On-track)多餘轉折點(Redundant-via)在不同 layer 搶同一 個位置時的示意圖及 3D 立體圖........................................39 圖 6.2 找出可以加入實體繞線(on-track) 多餘轉折點(Redundant-via)的原始 轉折點(Single-via)及位置...........................................40 圖 6.3 對照圖 6.2 所建立出來的 bipartite graph......................40 圖 6.4 Off-track Redundant-via 遇到堆疊情況時的示意圖及 3D 立體圖.....41 圖 6.5 找出可以加入 off-track Redundant-via 的 Single-via 及位置.....42 圖 6.6 對照圖 6.5 所建立出來的 multi-partite graph..................43 圖 7.1 所有測試檔............................ . . . . . ..............44 圖 7.2 程式測試檔案輸入............................................45 圖 7.3 原始測試檔之良率圖..........................................45 圖 7.4 提高良率後之輸出............................................46 圖 7.5 程式輸出分析圖表............................................47 圖 7.6 原始測試檔跟經過轉接點(Via)的良率提升後的比較表.............48 圖 8.1 OPC 的示意圖.................................................50 圖 8.2 晶片擁擠度對 CMP 的影響示意圖................................50. VIII.

(10) 第一章. 簡介. 在當今社會中,充斥著各種形形色色的電子產品,不管在民生、國防、工業 上都大量的使用到電子相關設備,譬如,手機、電視、電腦、衛星、雷達等等, 讓現在的人們從早上起床到睡覺一整天的生活中,都離不開電子設備,而這些電 子設備都是由許許多多的電晶體零件所組合而成的;在西元 1947 年,巴 丁 (Bardeen)、布拉頓(Brattain)、蕭 克 利 (Shockley)三 人,在 美 國 的 貝 爾 實 驗 室 製 造 出 第 一 個 具 有 放 大 電 流 效 果 的 固 態 三 極 體,並 首 先 啟 用 了 電 晶 體 (Transistor)的 學 名 之 後 ,正式將電晶體帶進我們的生活中;到 了西元 1965 年英特爾創辦人高登莫爾首次對半導體產業下了一個『莫爾定律』, 該定律預言在特定大小的晶片裡,每隔 18 個月電晶體數目會呈倍數成長,在現 今 IC 晶片中的電晶體數幾乎都達到了數十萬個以上,電晶體如此快速的速度增 加時,會造成在以往設計 IC 晶片時單純只用人工徒手來設計的時代也漸漸的成 為過去式,人工無法勝任如此龐大電晶體的設計及後續的驗證工作,於是一些重 複性的工作就可以交給電腦來幫助人們做運算處理的事情,於是也就產生了計算 機輔助設計軟體(Computer-Aided Design, CAD)來處理如此龐大的電路設計及驗 證工作。 利用計算機輔助設計軟體,開發人員可以非常的輕鬆去處理複雜度極高的設 計,及事後的驗證工作,而在現今的 IC 設計流程中分為兩大類,一類是全客製 化(Fully-custom)的設計,利用電晶體配置輔助設計軟體來繪製 IC 中每個電晶 體的擺置與連線,此類設計方法設計出來的 IC 效能是最佳的,能完全的依照各 種導向去設計各種類的 IC,但也相對的需要花費極大的開發時間及成本,另一 類是基本元件式(Cell-base)的設計方式,利用以建立好的各種模組存在資料庫 中,合成時在至資料庫中取出元件組合,此類設計方法設計出來的 IC 效能會比 上一類設計出來的還要差一點,但是現今所欲設計的 IC 複雜度都極高,市場上 商品的導向也都是一陣一陣的,如錯過了此一時期要在切入市場必定會付出更多 1.

(11) 的代價,加上此類設計的開發週期跟成本都比全客製化小很多,在目前業界都是 利用此類方法來做設計開發 IC 的。 在基本元件式(Cell-base)的設計流程中,分為前段跟後段兩個部份,前段分 別為系統構想、系統功能的規劃、邏輯合成、電路設計,一開始有個新的構想, 將詳細功能制訂出來後,先用高階語言先將整個功能的可行性先驗證過一次,確 定可行性後在實際的去撰寫低階的硬體描述語言(RTL)語言,免得撰寫完畢後才 發現系統功能是不可行的,轉寫完畢後在至資料庫中抓出對應的邏輯電路作合成 的動作,最後再將邏輯的電路轉換成實際的電晶體電路,即完成前段的設計,在 後段設計方面,分為實體設計、IC 製造、最後為晶圓封裝測試,在轉換成實體 電晶體電路後,因為晶片的面積形狀跟轉換後的電晶體電路的面積形狀不同,於 是需要將此電路做切割、版面規劃、及外部輸出入接腳的決定、最後在去作重新 繞線的動作,繞線完畢後在經過設計規則檢查完畢是否有違背設計規則的情況發 生後,在將所產生的 GDSII 檔案送至晶圓代工廠做生產的動作,生產完畢後在至 晶圓封裝廠做整顆晶片封裝及測試,下圖(1.1)為整個 IC 設計的流程圖, 系統的構想. 有個新構想, 並驗證可行性. 系統功能的規劃. 開始制定系統有哪些功能, 並將系統功 能撰寫出來. 邏輯合成. 將撰寫出來的原始碼, 至資料庫取出基 本元件來作合成. 電路設計. 將合成出來的邏輯電路轉換成電晶體電 路. 實體設計. 在實體電路層中去作各種實體設計, 以符 合晶片上各種限制. IC製造. 封裝與測試. 將產生出來的檔案至晶圓廠製造. 製造出來的核心送至封裝廠封裝程晶片. 圖(1.1) IC 設計的流程圖 2.

(12) 在 IC 設計時前段部份,會發生出錯損壞讓 IC 損毀的機率很低,除了電腦在處 理時發生問題或是規格制定錯誤,程式碼撰寫錯誤等人為因素居多,而後段部份 會產生無發估計或是很難預防的情況會發生在 IC 製造部分,現今製程快速的下 降,只要設計部分都不變更,當利用製程較低的流程去製造時,晶片的速度就會 相對的加快,所以各大晶圓製造廠皆陸陸續續的將製程往下降低,一組製造晶片 的機器售價都相當的高,當製程只是稍微往下降時要在更換整批機器,相信沒有 一家廠商受的了,但是不更換機器時在製造上則是會出現各種錯誤造成製造出來 的良率值低落,當製程進到了奈米製程時,會發生的情況根本無法預期,而製造 出來的良率值也會反應一切,如下圖(1.2)由各大晶圓廠所統計的資料表所示, 可以很清楚的發現當製程越降越低時整個平均的良率值也就快速的下降,製程從 500nm 下降到 180nm 時平均的良率值從 0.9 下降至 0.6 左右,良率值 0.3 的變動 幅度是非常大的,而良率越下降時對晶圓製造廠商而言收入也就會降越低,. 圖(1.2) 製程與良率統計圖 (參考文獻 [2]、[3]). 在現今工程設計自動化(Engineering Design Automation, EDA)的工業裡,有 四項參數對設計的廠商而言是非常重要的,分別晶片的面積、晶片的時間、晶片 3.

(13) 的功率消耗以及最近才開始漸漸熱門起來的良率問題,而現今良率問題也已經被 各大晶片設計公司及晶圓製造廠列為當今最需解決的問題,因為這會直接的影響 到各家廠商的收入問題;當製程進入了深次微米時,要在去維持之前製程的高良 率是越來越困難的事情,晶片的功能越來越複雜,當製程越降低時,晶片中的電 晶體數增加間距也越來越近,線寬越來越細,而相對的晶片面積也會越小,而要 在越小的面積裡塞入越多的電晶體,在製造時的複雜度也就會很高,也就會讓良 率值降低。 在現今的 IC 製造中,當製程降至 nanometer 時,以良率為導向的設計是越來 越重要,基本上許多的晶圓廠在每次幫客戶做下線處理時都需要去評估這整顆晶 片的良率問題。要如何去提昇良率是現今很重要的議題之ㄧ,要想去提升良率就 要先去了解會影響到良率高低的因素為何,在各家廠商統計的資料裡可以歸類出 來會直接的影響良率的三個重要參數分別為連線(Wire)、轉接點(Via)及元件 (Cell)。 元件(Cell) 要在元件(Cell)部份去提升良率值時須在 IC 設計流程中的邏輯合成階段去將 良率較低的基本元件(Standard-cell)換至成已經經過良率修正而良率較高的基 本元件(Standard-cell),這樣在做邏輯合成時才會合成到良率較高的元件 (Cell)。 轉接點(Via) 在製造時,會因為製造場所的電磁干擾及溫度壓力等等外面環境的影響,而造 成轉接點(Via)製造出來時會發生完全損壞跟半損壞的情況,半損壞的轉接點 (Via) 會讓此轉接點(Via)部分根據歐姆定律的結果,線寬變窄電阻值就會變 高,寄生電容也就會跟著加大,而會讓此條連線的時間延遲加大有可能會讓整顆 晶片的效率降低,完全損壞的轉接點(Via)則會讓此條連線的連線關係斷裂,要 去 增 加 晶 片 中 的 轉 接 點 (Via) 的 良 率 , 最 直 觀 的 方 法 就 是 在 原 始 轉 接 點 (Single-via)旁邊再加入一個多餘的轉接點(Redundant-via),讓原始轉接點 4.

(14) (Single-via)損壞時還有一顆備份的轉接點(Via)可以使用,而各廠商也統計出 來當多加入多餘轉接點(Redundant-via)時的轉接點(Via)會損壞而造成連線關 係斷裂的機率會比只有原始轉接點(Single-via)還小 10~100 倍。 連線(Wire) 在連線(Wire)上會發生損壞的情況在此篇論文中將分成兩大類,一類是會因為 製造時的無塵室裡的雜質會因為製程降低而讓雜質掉落在晶片上時會讓連線 (Wire)產生斷裂的情況,而連線(Wire)斷裂則連線的連線關係就會斷裂,另一類 是連線(Wire)因為雜質的掉落而造成連線(Wire)跟連線(Wire)之間發生短路的 情況,讓兩條不同的連線發生互相導通,而不同大小的雜質掉落時則也會有可能 造成線路的半損壞,半損壞的線路則也會造成連線(Wire)的截面積變小讓電阻增 加,延遲時間也就相對的增加,下圖(1.3a)為連線(Wire)因為雜質的掉落而造成 斷裂的情況,圖(1.3b)為連線(Wire)因為雜質掉落而造成兩個以上不同連線的連 線(Wire)連接短路在一起,. 雜質導致開路. 圖(1.3a) 連線(Wire)產生斷路的現象(參考文獻 [1]). 雜質導致短路. 圖(1.3b) 連線(Wire)產生短路的現象(參考文獻 [1]). 在之前所提到會產生讓製造時的良率下降的各種情況,因為這些情況在製造時 也可以去解決但是到了目前要在製造時去解決問題已經是變的很困難了,而相較 之前設計開發人員就專注於 IC 晶片的開發,而製造人員就專注於 IC 晶片的製 5.

(15) 造,但是到了目前製程近到了奈米時代,製造人員跟設計人員必須緊密的配合才 能設計及製造出效能及良率都高的 IC 晶片,因為到了目前 IC 的功能複雜度都相 當的高,當在設計時將晶片的面積、時間延遲、功率的消耗都能降的很低很小, 但是卻在製造時會發生製造不出來或是良率值偏低的糗境發生,這時候就必需再 設計時就去考慮到在製造時會可能會發生的各種錯誤情況讓整顆晶片損毀,這就 稱為 Design For Manufactability (DFM),各家晶圓廠商也有統計過當進入到 130nm 的製程時,DFM 是幾乎被需要的,否則會因為良率的下降太快讓各家晶圓 廠商吃不消,DFM 這名詞於去年暑假時開始熱門起來,而全世界的晶圓代工龍頭 台灣積體電路(TSMC)於今年年初也對各家欲至 TSMC 下線製造的廠商發表了一份 聲明,如送至台灣積體電路(TSMC)下線的檔案未處理過 DFM,則 TSMC 不會幫櫃 公司做製造的動作,下圖(1.4)則表示了,當設計出來的結果會不等於在做光罩 後的結果,而坐完光罩後的結果也不等於製造出來的結果,於是就必需要在製造 出來時去檢討哪裡發生了問題而將此參數回傳給設計時處理,這就是 DFM,當然 這一定是需要 EDA 廠商跟製造廠做緊密的配合才行,. Layout 佈局. ≠. 光罩. ≠. 晶圓. 良率因素. 圖(1.4) DFM 示意圖 在工業業界方面,良率分析供應商 PDF Solutions 公司現場營運副總裁 Kimon Michaels 表示,此時的情形與 20 年前類似,ASIC 設計師必須要在設計時考慮測 試。「在過去的 18 個月裡,設計師已開始認識到他們需要考慮製造。」. 6.

(16) 第二章. 良率模型. 為了方便分析整顆晶片上的良率,我們採用一個良率模型來分析整顆晶片上的 良率,而不是以單純的以數量來決定良率的高低,在此良率模型提出的時間為 1997 年在一篇名為利用自動化配置多餘轉折點來增加良率及可靠度的論文中提 出,作者柏以森(Poisson)訂出此模型並需要真正晶圓廠下線製造後傳回來的參 數才能去計算出良率值,但是對我們而言,要去得到這些參數值是非常困難的, 需要花費龐大的資金去做下線處理候,才能獲得此值,於是我們便稍微修改此模 型的一些參數定義,改成以機率的眼光來計算整顆晶片的良率。 而本篇論文主要在討連線(wire)開路及短路跟轉接點(Via)損壞時會對整顆晶 片良率的影響,所以此良率模型為:. Ychip = YwYv Ychip 則為整顆晶片上的良率值,Yw 為 (Wire)的模型,Yv 為轉接點(Via)的模型, 而整顆晶片的良率值為連線的模型跟轉折點的模型相乘,因為在之前有提過,會 影響晶片上的良率值主要有三類分別為連線(Wire)、轉接點(Via)及基本元件 (Cell),而要從這三點去提昇良率值在基本元件(Cell)方面還是包含在連線 (Wire)中,所以在此良率模型中只分為連線(Wire)跟轉接點(Via)兩大部分來探 討。而在轉接點(Via)的良率模型中,它的模型為: n. Yv = ∏ e −λi i =1. 在連線(Wire)的良率模型中,我們在分為兩小類,分別為當雜質(Particle)掉落 到晶片上而導致連線斷裂,或是連線短路的問題,它的模型為:. Yw = YOpen × YShort. Yopen 為當雜質(Particle)掉落至晶片上時會讓連線斷路時的良率值,Yshort 為當雜 質(Particle)掉落至晶片上時會讓連線跟連線短路時的良率值。. 7.

(17) 2-1-1 轉接點(Via)良率模型 基本上,在 IC 佈局電路設計圖(IC Layout)上的任何一個轉接點(Via),皆是 用來連結兩相鄰的金屬層,也因為如此,轉接點(Via)在晶圓製造的過程中,會 造成部分電路失敗或是整個電路完全失敗的ㄧ大原因。針對部分電路失敗的轉接 點(Via),可能會產生過大的電阻值,導致整個設計上的延遲時間過大,其電路 效能也相對應的變差,而對於會導致整個電路失敗的轉接點(Via),甚至會影響 到整個電路上的功能無效(Functionality invalidation)。 一開始,先將晶片上會發生的轉折點分為三類:原始轉接點(Single-via)、實 體繞線(on-track)的多餘轉接點(Redundant-via)、延伸繞線(off-track)的多餘 轉接點(Redundant-via)等,在下圖的表示中可以清楚的了解到多餘轉接點 (Redundant-via)的結構並看到原本尚未加入多餘轉接點(Redundant-via)也就 是原始轉接點(Single-via)的示意圖跟它的 3D 立體圖(2.1). 圖(2.1) Single-via 示意圖及 3D 立體圖 ,加入實體繞線(on-track)的多餘轉接點(Redundant-via)後的示意圖跟 3D 立體 圖(2.2). 圖(2.2) 實體繞線(On-track)多餘轉接點(Redundant-via)示意圖及 3D 立體圖 8.

(18) 最後為加入延伸繞線(off-track)的多餘轉接點(Redundant-via)後的示意圖跟 3D 立體圖(2.3). 圖(2.3) 延伸繞線(Off-track)多餘轉接點(Redundant-via)示意圖及 3D 立體圖. 本篇論文探討的良率模型主要是利用機率的方式來計算出會失敗的機率來當 成是整顆片去作製造時的良率高低值,假設一個細部繞線(Detailed Routing) 結果會有 n 條訊號線(n signal nets),總共會有 mi 個介於在兩個不同層的轉接 點(vias)在第 i 條訊號線上,任何一個轉接點(via)的損壞最少都會讓兩個以上 的連線連接失敗,於是定義第 i 條訊號線上的第 j 個轉接點(via)會正常導通讓 兩條以上的連線連接成功的機率是 S ij .k ,而以整條訊號線上來看成功的機率為 mi. ∏ S ij .k , 定 義 會 失 敗 的 機 率 為 λi , 則 整 條 訊 號 線 上 會 失 敗 的 機 率 為 j =1. mi. λi = 1 − ∏ S ij .k ,此外在定義整個晶片上的良率為 Yv ,並基於柏以森(Poisson)模 j =1. n. 型上所定義的 ∏ e i =1. − λi. ,我們可以完整的定義出整顆晶片上轉接點(via)的良率. n. Yv = ∏ e −λi 。 i =1. 在之前我們分為三類的轉接點(Via)中,原始轉接點(Single-via)、實體繞線 (On-track)多餘轉接點(Redundant-via)、延伸繞線(Off-track)多餘轉接點 (Redundant-via) , Pv 為 轉 接 點 (Via) 會 失 敗 的 機 率 , S ij .0 為 原 始 轉 接 點 (Single-via)會成功的連接兩層金屬導線層的機率, S ij .1 為實體繞線(On-track). 9.

(19) 多餘轉接點(Redundant-via)會成功的連接兩層金屬導線層的機率, S ij .2 為延伸 繞線(Off-track)多餘轉接點(Redundant-via)會成功的連接兩層金屬導線層的 機率, Pe 為為了增加多餘轉接點(Redundant-via)而多出來的線段,而此多出來 的線段會產生損壞的機率值,轉接點(Via)的成功連接機率圖如圖(2.4)、(2.5)、 (2.6):. Pv. S ij .0 = (1 − Pv ). 圖(2.4) 原始轉接點(Single-via)示意圖及其機率. Pv. Pv. S ij .1 = (1 − Pv ) + Pv (1 − Pv )(1 − Pe ). Pe. 圖(2.5) 實體繞線(On-track)多餘轉接點(Redundant-via)示意圖及其機率. Pe Pv. Pv Pe. S ij .2 = (1 − Pv ) + Pv (1 − Pv )(1 − Pe ) 2. 圖(2.6) 延伸繞線(Off-track)多餘轉接點(Redundant-via)示意圖及其機率. 10.

(20) 因為使用機率的眼光來計算整顆晶片上的良率,所以將 Pe 及 Pv 的機率訂為小於 1,才能正確的去計算出所需要的良率,簡單的說可以為了提高轉接點(via)在整 顆晶片上的良率,而去加入而外的多餘轉接點(Redundant-via)在原本的轉接點 (via)旁邊,而不會去違反設計的規則。至於多餘轉接點(Redundant-via)可以將 它分為兩大類,分別為實體繞線(on-track)的多餘轉接點(Redundant-via)跟延 伸繞線(off-track)的多餘轉接點(Redundant-via)。延伸繞線(off-track)的多 餘 轉 接 點 (Redundant-via) 則 是 在 相 同 的 訊 號 線 上 增 加 一 個 額 外 的 轉 接 點 (via),因為是在相同線上,所以只會增加一條額外的線段;延伸繞線(off-track) 的多餘轉接點(Redundant-via)則是在訊號線段旁邊之外增加一個額外的轉接點 (via),於是會增加出比實體繞線(on-track)的多餘轉接點(Redundant-via)還多 出ㄧ倍的線段。經過上面以機率的眼光所推導出來的定義,在套用到柏以森 (Poisson)模型上,在計算良率時,可以很清楚的發現到當有加入多餘轉接點 (Redundant-via)時,總良率會遠比尚未加入多餘轉接點(Redundant-via)時還高 很多,而實體繞線(on-track)的多餘轉接點(Redundant-via)所造成的良率提升 會比加入延伸繞線(off-track)的多餘轉接點(Redundant-via)還要來的高。 剛剛是以單一個轉接點(Via)來探討,而在一條連線 i 當中會有數個轉接點 (Via),在這些轉折點當中可能可以加入多餘轉接點(Redundant-via)的型態不一 定,也有可能四周都有線段經過而造成無法加入多餘轉接點(Redundant-via)的 情況,在下圖(2.7)中,可以很清楚的了解到在一條連線當中的所有轉接點(Via) 都 有 可 能 為 原 始 轉 接 點 (Single-via) 、 實 體 繞 線 (On-track) 多 餘 轉 接 點 (Redundant-via)、延伸繞線(Off-track)多餘轉接點(Redundant-via),而一條 mi. 連線 i 上共有 m 個轉接點(Via)的連通導通機率為 ∏ S ij .k ,連線 i 上會失敗的機 j =1. mi. 率 λi 為 λi = 1 − ∏ S ij .k ,計算出 λi 即可知道連線 i 上會造成損壞的機率,接下來即 j =1. 可對整顆晶片做分析轉接點(Via)部分的良率。. 11.

(21) 轉接點 原始轉接點 實體繞線多餘轉接點 延伸繞線多餘轉接點. M1. λi = 1 − ∏ S ij .k j =1. k = 0, k = 1 or k = 2. …. M2. mi. … 轉接點 原始轉接點 實體繞線多餘轉接點 延伸繞線多餘轉接點. 轉接點 原始轉接點 實體繞線多餘轉接點 延伸繞線多餘轉接點. M1. M2. 圖(2.7) 連線 i 上轉接點(Via)的損壞機率分析示意圖. 整顆晶片中,會存在兩條以上的連線,於是基於剛剛所推導計算出來的單一連 線的損害機率 λi ,便可繼續推導出整顆晶片上轉接點(Via)對整顆晶片上的良率 值,下圖(2.8)為整顆晶片上所有連線轉接點(Via)的良率值計算定義,將整顆晶 片上所有每條連線上的轉接點(Via)會損壞的機率帶入模型中,即可算出整顆晶 片上的轉接點(Via)良率值。. Net 1. 3. λ1 = 1 − ∏ S 1j .0 j =1. Net 2. 2. λ2 = 1 − ∏ S 2j .0 j =1 1. λ3 = 1 − ∏ S 3j .0. Net 3. j =1. …. …. 1. λn = 1 − ∏ S nj.0. Net n. j =1. 圖(2.8) 整顆晶片上轉接點(Via)的良率計算分析示意圖. 12. n. Yv = ∏ e −λi i =1.

(22) 2-1-2 轉接點(Via)的時間分析 在整顆晶片上,大致可以分為兩大類,分別為連線(Wire)及轉接點(Via),因 為在製程中連線(Wire)跟轉接點(Via)所使用的材料不同而在整顆晶片中所造成 線路傳輸上的時間延遲各不一樣,在時間延遲方面轉接點(Via)會遠大於連線 (Wire),而在整顆晶片中的任何一條連線,遇到需要換層繞線時就需要使用到轉 接點(Via),當在一條連線中轉接點(Via)使用越多,則會讓這條連線的時間延遲 相對的增加;在本篇論文中,我們假定會成功連接兩層線段連線的轉接點(Via) 有三大類,分別是原始轉接點(Single-via)、實體繞線(On-track)多餘轉接點 (Redundant-via)、延伸繞線(Off-track)多餘轉接點(Redundant-via),而在探 討時間延遲時,假定連線(Wire)跟轉接點(Via)是可以獨立分析的,於是在探討 轉接點(Via)的時間延遲時,不會去計算原始連線(Wire)上的時間延遲,這樣才 不會讓整個問題複雜化。 接 下 來 開 始 將 三 大 類 的 轉 接 點 (Via) 作 時 間 延 遲 的 分 析 , 在 原 始 轉 接 點 (Single-via)的模型圖中,可以對應至電阻等效電路圖,在此也不去考慮電容電 感關係對轉接點(Via)的影響: 2-1-2-1. 原始轉接點(Single-via). 下圖(2.9)中可以清楚的了解到原始轉接點(Single-via)由 3D 實體圖對應至等 效電路的結果, Re 1 為水平線段的電阻值 Re 2 為垂直線段的電阻值而 Rv 則為轉接 點(Via)的電阻值,當轉接點(Via)損壞時的電阻值 Rv 為無限大,也就是開路的 意思,當 Rv 等於無窮大那原始轉接點(Single-via)的總電阻值也為無窮大,如 轉接點(Via)無損壞,那總電阻值 Rs 則為三個電阻做串聯連接的結果,. 13.

(23) Re1. Rv Re2 轉接點(Via)損壞時 → Rs = ∞ 轉接點(Via)無損壞時 → Rs = Re1 + Re 2 + Rv 圖(2.9) 原始轉接點(Single-via)的時間延遲分析示意圖. 2-1-2-2. 實體繞線(On-track)多餘轉接點(Redundant-via). 下 圖 (2.10) 中 可 以 清 楚 的 了 解 到 實 體 繞 線 (On-track) 多 餘 轉 接 點 (Redundant-via)由 3D 實體圖對應至等效電路的結果, Re 1 為水平線段的電阻值. Re 2 為垂直線段的電阻值 R x 為增加多餘轉接點(Redundant-via)時所多出來的 線段上的電阻值而 Rv 則為轉接點(Via)的電阻值,當其中一個轉接點(Via)損壞 時,還有另一個轉接點(Via)可以當備份不至於讓連線關係中斷,而時間延遲方 面因兩個轉接點(Via)的配置方式是並聯方式, R x 跟 Rv 串聯,兩組在並聯,在兩 顆轉折點都無損壞時,總電阻值會比原來原始轉接點(Single-via)時還要來的 小,當有其中一個轉接點(Via)損壞時所呈現的是原始轉接點(Single-via)的型 態,所以總電阻值不會呈現增加的情況,. Re1-Rx. Rx. Rv. Rv Rx. Re2. 轉接點(Via)無損壞時 →. Ron = Re1 − Rx +. Rx + Rv + Re 2 2. 單一個轉接點(Via)無損壞時 → Ron = Re1 + Re 2 + Rv. 14.

(24) 兩個轉接點(Via)皆損壞時 → Ron = ∞ 跟原始轉接點(Single-via)的時間延遲比較→ R ≤ R on s 圖(2.10)實體繞線(On-track)多餘轉接點(Redundant-via)時間延遲分析示意圖. 2-1-2-3. 延伸繞線(Off-track)多餘轉接點(Redundant-via). 下 圖 (2.11) 中 可 以 清 楚 的 了 解 到 延 伸 繞 線 (Off-track) 多 餘 轉 接 點 (Redundant-via)由 3D 實體圖對應至等效電路的結果, Re 1 為水平線段的電阻值. Re 2 為垂直線段的電阻值 R x 為增加多餘轉接點(Redundant-via)時所多出來的 線段上的電阻值而 Rv 則為轉接點(Via)的電阻值,當其中一個轉接點(Via)損壞 時,還有另一個轉接點(Via)可以當備份不至於讓連線關係中斷,而時間延遲方 面因兩個轉接點(Via)的配置方式是並聯方式, R x 跟 Rv 串聯,兩組在並聯,在兩 顆轉接點都無損壞時,總電阻值也是會比原來原始轉接點(Single-via)時還要來 的小,當有 Rv 2 轉接點(Via)損壞時所呈現的是原始轉接點(Single-via)的型 態,當有 Rv 1 轉接點(Via)損壞時則會呈現比原始轉接點(Single-via)還多出了 兩倍的 R x 電阻值,在探討機率問題時須以最差的情況去評估才能將所有各總情 況都考慮進去,所以在延伸繞線(Off-track)多餘轉接點(Redundant-via)時需考 慮 Rv 1 損壞時的情況. 轉接點(Via)無損壞時 → Roff = Re1 + ( Rv1 // 2 Rx + Rv2 ) + Re 2. Rv 1 轉接點(Via)損壞時 → Roff = Re1 + Re 2 + Rv + 2 Rx Rv 2 轉接點(Via)損壞時 → Roff = Re1 + Re 2 + Rv 兩個轉接點(Via)皆損壞時 → Roff = ∞ 15.

(25) 跟原始轉接點(Single-via)的時間延遲比較→ Roff = Rs or. Roff > Rs. 圖(2.11)延伸繞線(Off-track)多餘轉接點(Redundant-via)的時間延遲分析示 意圖. 在上面去探討出三大類的型態時,因為在電阻值方面連線(Wire)上的電阻值會 遠小於轉接點(Via)上的電阻值,所以在加入多餘轉接點(Redundant-via)時會將 總時間延遲給有效的降低,另外從剛剛的分析結果可以知道在加入延伸繞線 (Off-track)多餘轉接點(Redundant-via)時會多出兩倍的 R x 電阻值,也就是兩 倍的多餘線段出來,在一條連線中不知道轉接點(Via)會有多少個,在加入時如 果都加入了延伸繞線(Off-track)多餘轉接點(Redundant-via),而剛好又是都是. Rv 1 損壞則會造成那條連線的時間延遲會增加,所以在結論上,一顆晶片中時間 延遲最長的連線在加入多餘轉接點(Redundant-via)時盡量的避免去加入延伸繞 線(Off-track)多餘轉接點(Redundant-via),以避免讓整顆晶片功能失敗。在時 間延遲上因為歐姆定律,V=IR,當連線增長時電阻值也相對的增加,電壓不變的 前提下電流也就會下降,當電流變小時要對負載充電到額定電位的時間也就會增 加,如下圖(2.12)所示,R1 為線路上的電阻值,R2 為負載,當 R1 增加時要對 R2 充電的電流也就會變小而充電的時間也就會增加,這也就是延遲時間,. Q = It. 圖(2.12)電流與充電時間示意圖 故可推導出延遲時間跟線路的電阻成正比,t delay ∝ R 。 16.

(26) 最後整理所分析有關三種型態轉接點(Via)的良率及時間延遲方面可以得到一 個結論,在良率分析方面,實體繞線(On-track)多餘轉接點(Redundant-via)的 良率會大於延伸繞線(Off-track)多餘轉接點(Redundant-via),而延伸繞線 (Off-track)多餘轉接點(Redundant-via)則會大於原始轉接點(Single-via),在 時間延遲分析方面,實體繞線(On-track)多餘轉接點(Redundant-via)的時間延 遲會小於延伸繞線(Off-track)多餘轉接點(Redundant-via),而多餘轉接點 (Redundant-via)的時間延遲都會比原始轉接點(Single-via)小,於是综合良率 及時間延遲兩大分析來看,在加入多餘轉接點(Redundant-via)時要多加入實體 繞線(On-track)多餘轉接點(Redundant-via),而不是一味的亂加,良率才能大 大的提高。. 2-2-1 連線(Wire)良率模型 當製程一直下降,晶片的面積越來越小,而在越小的面積裡塞入越多的電晶 體,相對的連線中的線寬會越來越細,線跟線之間的間距(Space)也會越來越窄, 在製造的晶圓廠裡,會因為空氣中的雜質掉落至晶片上而讓晶片上線寬及線距越 來越小的連線呈現開路或斷路的現象,這現象會隨著製程越來越低會越明顯;當 在探討連線(Wire)短路及開路的情況時,所分別產生的重要面積(Critical-area) 是獨立計算出來的。 2-2-1-1 連線(Wire)開路現象 在連線(Wire)中會因為空氣中的雜質掉落至晶片上的線段,而讓連線(Wire)斷 裂而讓連線關係失敗或是電阻變大,在此可以定義出一個重要面積 (Critical-area),只要雜質的直徑大於連線上的線寬時即會產生重要面積 (Critical-area),當重要面積(Critical-area)越大則會讓晶片因為此大小的雜 質掉落而損壞的機率也越大,在此也可以訂出整顆晶片中因為雜質掉落而讓連線 (Wire)斷裂的良率模型,下列是會產生重要面積(Critical-area)的時機,d 為. 17.

(27) 空氣中雜質的半徑,w 為此連線(Wire)的線寬大小,l 為此條連線的長度,在下 圖(2.13)中,可以更清楚的了解到開路的重要面積(Critical-area)的產生情形,. ⎧⎪l (2d − w), Critical area = ⎨ ⎪⎩ 0,. if if. 2d > w, 2d ≤ w. 長度. 重要面積. 寬度. 損壞. 未損壞 線段 雜質 重要面積. 圖(2.13) 連線(Wire)會因為開路而產生重要面積(Critical-area)的情況. 在良率的計算方面,因為是將連線(Wire)開路及短路的現象分開探討,所以在 連線(Wire)開路的計算時,是計算出一個雜質掉落在整顆晶片上而會產生所有的 開路重要面積(Critical-area)加起來,去除以整顆晶片在實際繞線部分所有的 面積,這樣也就可以了解到在整顆晶片上的開路重要面積(Critical-area)共佔 了實際繞線多少百分比,利用此方式來建立連線(Wire)因為開路而產生的良率模 型, λOpen 為會因為連線(Wire)產生斷路現象而損壞的機率, YOpen 為連線(Wire) 會 發 生 斷 路 的 良 率 值 , CAi 則 為 第 i 條 連 線 會 產 生 的 開 路 重 要 面 積 (Critical-area), n. YOpen = 1 − λOpen. λOpen =. 18. ∑ CA i =1. i. Wires area.

(28) 2-2-1-2 連線(Wire)短路現象 在連線(Wire)中會因為空氣中的雜質掉落至晶片上的線段,而讓連線(Wire)跟 鄰近的連線(Wire)短路而讓連線關係失敗,在此可以定義出一個重要面積 (Critical-area),只要雜質的直徑大於此連線上的連線(Wire)跟鄰近的連線 (Wire) 之 間 間 距 時 即 會 產 生 重 要 面 積 (Critical-area) , 當 重 要 面 積 (Critical-area)越大則會讓晶片因為此大小的雜質掉落而損壞的機率也越大, 在此也可以訂出整顆晶片中因為雜質掉落而讓連線(Wire)跟連線(Wire)產生短 路時的良率模型,下列是會產生重要面積(Critical-area)的時機,d 為空氣中 雜質的半徑,s 為此連線(Wire)跟鄰近連線(Wire)的間距,l 為此條連線的長度, 在下圖(2.14)中,可以更清楚的了解到短路的重要面積(Critical-area)產生情 形,. ⎧⎪l (2d − s ), Critical area = ⎨ ⎪⎩ 0,. if if. 2d > s, 2d < s. 長度 寬度. 重要面積. 損壞 未損壞 線段 雜質 重要面積. 圖(2.14) 連線(Wire)會因為短路而產生重要面積(Critical-area)的情況. 在短路的良率的計算方面,因為是將連線(Wire)開路及短路的現象分開探討, 所以在連線(Wire)短路的計算時,是計算出一個雜質掉落在整顆晶片上而會產生 所有的短路重要面積(Critical-area)加起來,去除以整顆晶片剩下空白部分所 有的面積,這樣也就可以了解到在整顆晶片上的短路重要面積(Critical-area) 19.

(29) 共佔了空白區域多少百分比,利用此方式來建立連線(Wire)因為短路而產生的良 率模型, λ Short 為會因為連線(Wire)產生斷路現象而損壞的機率, YShort 為連線 (Wire)會發生短路的良率值, CAi 則為第 i 條連線會產生的短路重要面積 (Critical-area), n. λ Short =. YShort = 1 − λShort. ∑ CA i =1. i. 總面積 − 線路面積. 因將連線(Wire)會發生短路及斷路的情況分開來討論,所以最後在將連線 (Wire)會產生短路及斷路的良率相乘起來,則為連線(Wire)上的總良率,. Yw = YOpen × YShort 2-2-2 連線(Wire)的時間分析 在連線(Wire)的時間分析上,一開始將連線(Wire)轉換成電阻模型,而單一電 阻定義為介電係數乘上導線長度分之截面積,當電壓固定的情況下,當電阻增加 時相對的電流會下降,而當電流下降時就會造成線路在傳輸充電時的時間會拉 長,會造成充電時間延遲,讓整條連線的時間延遲,下圖(2.15)為限段(Wire) 與電阻的對應圖,故可推導出延遲時間跟線路的電阻成正比,. { h{ w. l. R. A. R=ρ. l A. t delay ∝ R 圖(2.15) 連線(Wire)與電阻對應圖. 2-2-2-1 連線(Wire)開路現象 在此可以分為兩類去探討,分別是當雜質落到晶片上時造成開路或短路的狀 20.

(30) 態,在開路方面雜質落下時或許不會剛好讓連線(Wire)斷裂,只是造成連線(Wire) 半損壞,而半損壞時因截面積變小,會讓連線(Wire)上的電阻值增加,造成時間 的延遲,當完全損壞的連線(Wire)則會讓電阻無限大,讓功能損壞之情況,下圖 (2.15)為連線(Wire)會產生開路的兩種情況完全損壞跟半損壞的示意圖。. 長度. 電阻增加. 寬度. 長度. 電阻無限大. 寬度. 圖(2.15) 連線(Wire)產生開路會發生的兩種情況示意圖. 2-2-2-2 連線(Wire)短路現象 在短路方面也可以分為兩類去探討,分別是當雜質落到晶片上時造成短路的狀 態,在短路方面雜質落下在晶片上時或許不會剛好讓連線(Wire)跟連線(Wire) 短路,只是剛好落在連線(Wire)跟連線(Wire)與連線(Wire)之間,而造成半損壞 的情況,而此半損壞就會跟連線(Wire)開路時ㄧ樣,造成單條連線的電阻增加, 讓連線時間延遲變大,當完全損壞時的連線(Wire)會跟連線(Wire)短路連接在一 起會讓兩條不相干的連線連接在一起,讓功能損壞之情況,下圖(2.16)為連線 (Wire)會產生短路的兩種情況完全損壞跟半損壞的示意圖。. 長度. 半損壞. 電阻增加. 寬度. 長度. 功能錯誤. 寬度. 圖(2.16) 連線(Wire)產生短路會發生的兩種情況示意圖 21.

(31) 第三章. 動機及問題描述. 一開始有提到,在這篇論文中是利用建立轉接點(Via)跟連線(Wire)的良率模 型去探討分析整顆晶片的良率,在處理前跟處理後都會利用此模型去分析整顆晶 片上的良率值,看是否有顯著的提升,在轉接點(Via)部份就只有轉接點(Via), 而連線(Wire)部分則分為連線(Wire)會因雜質而造成短路及開路兩種型態。如圖 (3.1)所示,. 轉接點. 線路 開路. 線路. 線路 短路. 製造良率模型. 圖(3.1) 良率模型. 轉接點(Via) 在繞線後處理(Post-routing)後所得到的細部繞線(Detail-routing)結果,並 不會去將任何一條訊號線做重新繞線(Re-routing)的動作,而直接去作多餘轉接 點 (Redundant-via) 的 加 入 動 作 , 定 義 出 一 個 以 良 率 為 導 向 多 餘 轉 接 點 (Redundant-via)的加入問題,使得讓整顆晶片上良率達到最佳化,而在作加入 額外的轉接點(Via)時,則會去分實體繞線(On-track)跟延伸繞線(Off-track) 的多餘轉接點(Redundant-via),使良率提升最高,不管原本的轉接點(Via)能不 能做多餘轉接點(Redundant-via)的加入,都不會去違反到設計的規則。而在考 慮延遲時間下,在將分析出來的結果做最合適多餘轉接點(Redundant-via)加 入,並利用 k 層的二分圖作配對的演算法去將如何作多餘轉接點(Redundant-via) 的加入問題作一個最佳化。. 22.

(32) M1 M2 M3 M4 圖(3.2) 尚未加入多餘轉接點(Redundant-via). M1 M2 M3 M4 圖(3.3) 加入多餘轉接點(Redundant-via)後的結果. 連線(Wire) 連線(Wire)中會因為雜質的掉落至晶片中而讓連線(Wire)產生開路或是短路 的現象,於是在解決連線(Wire)開路方面是利用增加線寬(Wire-sizing)的方式 23.

(33) 符合時間延遲的情況下有效的去增加線寬而讓線段會因為雜質掉落而產生斷裂 開路的機率降低,良率也會跟著上升,另一個問題是連線(Wire)短路的問題,也 是在符合時間延遲的情況下,有效的利用晶片上多餘的空白空間(Empty-space) 採用迷宮繞線(Maze-routing)的方式將以繞線好的連線作重新繞線以減少連線 (Wire)會因為連線(Wire)跟連線(Wire)之間的間距太窄而讓晶片上的良率降低 的情況。. 在本論文中主要要解決的問題分別是解決轉接點(Via)因製程的降低,而造成 良率下降及連線(Wire)因雜質掉落發生斷路或是短路的現象,會在繞線後處理 (Post-routing)時再去做處理,在整個流程圖中可以很清楚的知道,所要處理的 事情為在做完細部繞線(Detail-routing)後,利用所剩下的資源,讓整顆晶片上 的良率提高,下圖(3.4)為本篇論文的設計流程圖,在繞線後處理(Post-routing) 時先去計算連線(Wire)上的短路狀態的良率,去將連線重新繞線降低連線(Wire) 短路的重要面積(Critical-area),好了之後再去將線寬做放大的動作,降低開 路的重要面積(Critical-area),再利用此良率模型算出良率值,. 前段實體層設計. 後段實體層設計. 時序限制下重要面積 最小化之迷宮繞線 (maze routing). 線路短路. 線路開路 佈局後良率提升. 時序限制下之線寬調整. 轉接點損毀 高良率之晶片. 加入多餘轉接點. 圖(3.4) 提高良率流程圖. 24.

(34) 在問題描述方面,輸入的資料為已經做完細部繞線(Detail-routing)的檔案, 及轉接點(Via)連線(Wire)的良率模型,輸出則為一個已經經過良率修正的細部 繞線(Detail-routing)結果,擁有較高的良率,下圖(3.5a)為尚未做良率修正的 細部繞線(Detail-routing)結果,所大約計算出來的良率約 99.997%,圖(3.5b) 為經過良率修正後的結果,共經過了修正連線(Wire)短路、連線(Wire)開路、多 餘轉接點(Redundant-via)的加入等,讓良率提升趨近於 100%,表示良率會有顯 著的提昇。. Single Via. Single Via. Sink or source of net. Redundant Via. Net. Sink or source of net Net. 良率≒99.997%. 良率≒100%. 圖(3.5a)尚未經過良率修正. 圖(3.5b)經過良率修正. 25.

(35) 第四章. 符合時間限制下利用線路重整減少重要面積. 在本章節主要是要去解決因雜質掉落在晶片上而造成晶片上的連線(Wire)跟 鄰近的連線(Wire)產生短路的現象,在此會分為兩大類,一類是線路依造權重將 整顆晶片上的連線做排序,另ㄧ大類為符合時間限制下做線路重整的步驟,在線 路排序方面會先去計算出晶片上每一條連線的可繞線區域在沒有短路的重要面 積(Critical-area)時,接下來再分配可繞線的權重給每條連線,決定出在晶片 上的哪一條連線擁有最高的可繞線面積去進行重新繞線,當決定出在晶片上哪一 條連線擁有最大的可重新繞面積後,就將原本繞線完畢的直線式史丹爾樹 (Rectilinear Steiner Tree,RST) 還 原 成 史 丹 爾 繞 線 樹 (Steiner Routing Tree,SRT) 型 態 , 去 掉 不 必 要 的 轉 接 端 點 , 接 下 來 再 去 移 動 史 丹 爾 端 點 (Steiner-point)讓可重新繞線的區域變大並符合時間延遲的限制,最後在將移 動史丹爾端點(Steiner-point)過的連線端點利用迷宮繞線(Maze-routing)並符 合時間延遲來做細部繞線(Detail-routing)。. 4-1 在無短路的重要面積(Critical-area)下可重新繞線的範圍 ㄧ開始先給兩個線段 i 跟 j,當線段 i 往線段 j 方向移動,當移動到連線(Wire) 會 產 生 短 路 的 重 要 面 積 (Critical-area) 時 的 距 離 稱 為 可 重 新 繞 線 的 距 離 (Flexible-distance),而在將距離乘上此ㄧ線段的長度時就是可重新繞線的範 圍(Flexible-region),在一條連線中會有許多的線段組成,所以要計算此ㄧ條 連線的可重新繞線範圍(Flexible-region),便是將所有線段的可重新繞線範圍 (Flexible-region)給加起來,所得到的值就為單一條連線中的可重新繞線範圍 (Flexible-region),在下圖(4.1a)中可以看到單一個線段時的可重新繞線範圍 (Flexible-region) , 而 在 圖 (4.1b) 中 為 一 整 條 連 線 的 可 重 新 繞 線 範 圍 (Flexible-region),. 26.

(36) 彈性空 間. 線段之彈性範圍 圖(4.1a) 單一線段之可重新繞線範圍(Flexible-region). 彈性空 間. 連線之彈性範圍 圖(4.1b) 整條連線之可重新繞線範圍(Flexible-region) 在晶片中當作完細部繞線(Detail-routing)後,會因為每個區塊的輸入輸出腳位 的位置不同而讓整顆晶片在連線佈置後會產生許許多多的空白空間 (Empty-space)這也就是所謂的可重新繞線範圍(Flexible-region),而這些範圍 都可以拿來當作是做線路重新繞線時的資源,在下圖(4.2)中是一個作完細部繞 線 (Detail-routing) 後 的 結 果 , 由 圖 中 可 以 很 清 楚 的 看 到 有 許 許 多 多 的 (Empty-space) ,. 27.

(37) 實體繞線後結果. 圖(4.2) 繞線結果與空白空間(Empty-space). 4-2 在整顆晶片中的連線權重 接下來對整顆晶片中的每條連線分配權重,在依照此權重去對整顆晶片上的所 有連線做排序即可取出一條權重最重的連線來做線路重新配置,而此權重的計算 方式為, 權重 =. 所有彈性面積 所有長度. 將此連線上所有的可重新繞線範圍(Flexible-region)去除以這一條連線的線 長,就可以算出此權重而分配給整顆晶片上每一條連線,下圖(4.3)詳細的表示 了可重新繞線範圍(Flexible-region)如何計算,. 間距 − 雜質大小. 雜質. 間距 − 雜質大小. 雜質. 彈性面積 =. 圖(4.3) 可重新繞線範圍(Flexible-region)的計算方式 28. +.

(38) 4-3 線路重整之轉換型態及改變史丹爾端點(Steiner-point)位置 要將以做好細部繞線(Detail-routing)的結果在重新繞線時須先將連線的型 態轉換,由直線式史丹爾樹(Rectilinear Steiner Tree,RST)還原成史丹爾繞線 樹(Steiner Routing Tree,SRT)型態,才能進行重新繞線的動作,在此步驟會去 刪除掉在繞線時不必要的轉接端點(Corner-point),如下圖(4.4)所示,. :Corner point :SteinerSteiner-point :Connecting node. A RST and its SRT. 圖(4.4) 直線式史丹爾樹(Rectilinear Steiner Tree,RST)還原成史丹爾繞線樹 (Steiner Routing Tree,SRT) 在將晶片上的某一條連線形態轉換後,即可對史丹爾端點(Steiner-point)作移 動的動作,在移動時需要去將此史丹爾端點(Steiner-point)可以移動的區域計 算出來,及此端點符合時間延遲限制的區域計算出來,這兩區域重疊部分便是這 個史丹爾端點(Steiner-point)可以作移動的區域,在此區域中移動史丹爾端點 (Steiner-point)後不會超過此條連線的時間延遲限制,下圖(4.5)的示意圖可以 很明瞭的看出最後符合時間延遲的史丹爾端點(Steiner-point)可移動區域,. Source node Steiner node Sink node. : 史丹爾端點移動區域(SLR) : 時序限制之區域 : 可移動之區域 =. ∩. 圖(4.5) 史丹爾端點(Steiner-point)可移動區域示意圖 29.

(39) 在本篇論文中主要是要去降低連線(Wire)上短路的重要面積(Critical-area), 在移動完史丹爾端點(Steiner-point)後,還需要去比較之前所介紹的權重是否 有比尚未移動前還高,如果沒有就不需去移動此史丹爾端點(Steiner-point), 有較高的權重表示可以將此連線重新配置的資源較多,在重新將連線配置時比較 有機會去將連線(Wire)上短路的重要面積(Critical-area)降低,下圖(4.6)為簡 單的範例,說明當移動史丹爾端點(Steiner-point)後所計算出來的權重比原先 的權重還低時,則不去作移動的動作,. 權重≒32. 權重 =. 所有彈性面積 所有長度. 權重≒16. 差. 圖(4.6) 移動史丹爾端點(Steiner-point)後所計算出來的權重比較. 4-4 符合時間延遲下利用迷宮繞線(Maze-routing)法重新配置連線 利用迷宮繞線法來作細部繞線(Detail-routing)的好處是可以在符合延遲時 間內的區域做迷宮式的繞線,讓繞線成功的機會增大,在傳統的迷宮繞線 (Maze-routing) 法 中 可 以 在 符 合 延 遲 時 間 中 去 擴 大 可 繞 線 的 範 圍 (Routing-region),迷宮繞線法是在合適的繞線範圍(Routing-region)中將此範 圍切割成 n*n 的格子再將每個格子分配權重值,在利用此方法去走出一條權重值 最高的路線,而分配的權重值則為當走過此格子時會產生多少連線(Wire)上的短 路重要面積(Critical-area)值,於是在做細部繞線(Detail-routing)時只要取 得一條會產生連線(Wire)上的短路重要面積(Critical-area)最小的路徑即可完 成此連線重新配置的動作,下圖(4.7)為實際去利用迷宮繞線法來將此連線重新 繞線成功, 30.

(40) 1. s. 1. 2. 2. 3. 1. 2. 2. 1. 1. 2. 2. 1. 2. 2. 2. 1. 1. 1. 1. 3. t. 1. 圖(4.7) 迷宮繞線(Maze-routing)法來作細部繞線. 最後再舉個例子詳細的說明整個去解決連線(Wire)上產生短路重要面積 (Critical-area)的方法,下圖(4.8a)(4.8b)(4.8c)(4.8d)分別說明整個流程中 每一個步驟如何去處理的情況,. Flexible Weight=0 Flexible Weight=2 Flexible Weight=6. 圖(4.8a) 在此圖中先將每條連線的可重新繞線範圍(Flexible-region)計算出 來,並分配個權重給整顆晶片上的每條連線。. 圖(4.8b) 在此圖中計算出來最左方的連線的權重為最高,在延遲時間允許的情 況下可以適時的增加可繞線的範圍(Routing-region)。. 31.

(41) 圖(4.8c) 在此圖中會在允許的可繞線範圍(Routing-region)內將每個格子的權 重 計 算 出 來 , 也 就 是 當 走 這 格 子 時 所 會 產 生 連 線 (Wire) 的 短 路 重 要 面 積 (Critical-area)。. 圖(4.8d) 在此圖中說明將取得最小的權重的路徑,也就是走這條路會是取得連 線(Wire)的短路重要面積(Critical-area)的路徑,最後這也是調整好的線路重 整(Path reconstruction)的狀態,一直到當抓出來的連線上的權重小於某個特 定值後則停止,這時候如果繼續改進良率的成果會上升緩慢,所以以目前的結果 來說會是一個良率跟執行時間最好的平衡點。. 32.

(42) 第五章. 符合時間限制下有效的加大線寬減少重要面積. 在本章節主要是要去解決因雜質掉落在晶片上而造成晶片上的連線(Wire)發 生斷路的現象,在此也是會分為兩大類,一大類是在符合延遲時間下去有效的調 整一條連線上的線寬,另一大類則為在調整完畢候在去修正至符合最佳化的值, 在調整線寬上,先將某條連線上的單一線段作線寬的調整,接下來才對整條連線 作線寬的調整。. 5-1 單一線段線寬的放寬 在計算延遲時間上採用了π型模型來計算連線上的延遲時間,此模型只考慮到 線路上的電阻跟電容值部份來計算其延遲時間,而單純以電阻來分析時,延遲時 間跟線寬會是個等比例線性的關係,但因為加入電容的影響所以整個曲線會變成 拋物線的狀態,下圖(5.1)為單一連線利用π模型來計算延遲時間的示意圖及計 算的公式, R D 為上一級的總電阻, C L 為下一級的總電容量, r 為目前線段的電 阻值, l 為目前線段的長度, w 為目前線段的線寬, c 為目前線段上的電容值,. r. RD. RD. l w. clw 2. CL. l w. clw 2. π-模型之愛爾摩延遲模型. D( w) = RD (clw + CL ) +. rl clw ( + CL ) w 2. 圖(5.1) 單一線段利用π模型來計算延遲時間的示意圖及公式. 33. CL.

(43) 在剛剛有稍微提到線路上探討的延遲時間,是探討電阻跟電容的關係,因為電阻 加上電容的關係導致延遲時間跟線寬呈現非線性的曲線,在圖(5.2)中很清楚的 可以看到 W 為原本的線寬, ΔW 為增加的線寬, W + ΔW 為增加線寬後的總線 寬,由此公式推導出可以求得一個在時間延遲跟線寬之前最好的平衡點,也就是 最佳的解,不過由於在有限空間內並符合時間的限制時將線寬放越大越好,於是 由圖中可以很清楚的了解到可以找到一點跟原始有一樣的時間延遲,但是線寬卻 新增了 ΔW 的大小,如此一來就可以去解掉連線(Wire)上有開路重要面積 (Critical-area),進而提升整顆晶片上的總良率。 ∂D =0 ∂woptimal ⇒ RD cl − rlC L. 2. woptimal. 2. =0. 延遲時間. 2. rC L RD c. ⇒ woptimal = ± ⇒ woptimal =. woptimal 1. ⇒ RD c = rC L ⇒ woptimal =. 1. rC L RD c. 最佳的寬度. rC L RD c. w. woptimal w + Δw. 線寬. 圖(5.2) 延遲時間跟線寬的示意圖. 5-2 單一連線線寬的放寬 剛剛是對單一條線段做探討,而在晶片中每一條連線會有許許多多的線段,當連 線中某條線段的線寬有變更,相對的會讓其他條的時間延遲值變更,所以必須做 整體的考慮,下圖(5.3)為單一個連線套用π模型來計算總時間延遲值,在圖中 有 5 個 sink 點,3 個史丹爾端點(Steiner-point),一個轉折端點(Corner),最 後有整體計算的公式,. 34.

(44) S4. S5. e45. e35. C4. S2. e34. e22. P3. e24. e13. e11. P2. P1. S0. e12. e23 S1. S3. cl34 w34 / 2. cl45 w45 2. 5 3. cl w 2. cl 22 w22 / 2. cl34 w34 / 2. rl34 / w34. rl 22 / w22. rl35 w35 5 3. 5 3. cl w 2 rl / w 4 2. rl 23 / w23. 4 2. cl24 w24 / 2. cl11 w11 / 2. 5 3. cl 45 w45 2. cl12 w12 / 2. rl 45 w45. rl12 / w12. rl11 / w11. rl 21 / w12. cl 23 w23 / 2. cl23 w23 / 2. cl 22 w22 / 2. cl 21 w12 / 2 cl 21 w12 / 2. From s0 to sink si : α (i ). rl ij cl ij Total Delay = Rs 0C + ∑ i ( + C ij ) 2 j =1 w j i 0. 圖(5.3) 單一連線轉換成π模型來計算總時間延遲值. 5-3 線寬放寬的演算法 為了去增加當雜質掉落至晶片上時連線(Wire)不會被雜質給打斷掉,而造成連 線開路的情況,於是將增加連線線寬,增加線寬時需去考慮到時間延遲的問題, 此問題不是個線性的曲線而是個拋物線,於是在相同的延遲時間下可以找到一個 較寬的線寬值,其演算法如下: TWW (T ) Input : A routing tree, T, with source, s0 , and a set of sinks, S = {s1 , s2 ,L , sn }; { for(i == 1 ; i <= n ; i + + ) { Find wire segments, e1i , e2i ,L , and eαi (i) , from source, s0 , to sink, si , in T; for(j == 1; j <= α (i); i + + ) { Find the extra width, Δwij , of the width, wij ; if( Δwij > 0 and the extra delay, cl ij Rik, j Δwij , does not destroy the timing constraints of the others sink) Replace the original width, wij , with its timing − consistent width, wij + Δwij ; }} Output the final routing tree, T ' , with the assignment of timing − consistent widths; }. 35.

(45) 5-4 線寬放寬後的最佳化 在相同的延遲時間下可以找到一個較寬的線寬值,此線寬值會發生兩種情況,一 種為當線寬值比雜質的直徑還大時,那多餘出來的線寬對線段上的良率沒有影 響,反而會將延遲時間給增加,增成多餘的浪費,下圖(5.4a)所示為延遲時間跟 線寬的對應圖,當發生放大後的線寬遠比雜質還大時,可以適時的將線寬往回 縮,圖(5.4b)則為往回縮之後的對應圖,也就是直接將線段放大後的寬度 W + ΔW 減掉跟雜質直徑 d 的間距,. 延遲時間. 雜質. l w w+Δw. 最佳的寬度. w. woptimal w + Δw. 圖(5.4a) 線寬大於雜質時的延遲時間跟線寬對應圖. 延遲時間 wij − 2d. Δtci , j. 雜質的直徑. 最佳的寬度. w. woptimal. w + Δw. 圖(5.4b) 線寬大於雜質時的解法. 36. 線寬. 線寬.

(46) 另一種情況為,當線寬放寬之後還是比雜質大小還小,這樣對計算良率來說還是 會產生連線(Wire)上開路重要面積(Critical-area),對良率來說提升的還是不 夠,在下圖(5.5a)中可以清楚的了解到線寬增加後還是比雜質的直徑還小的示意 圖 及 延 遲 時 間 跟 線 寬 的 對 應 圖 , 圖 (5.5b) 則 為 線 段 不 是 最 重 要 的 連 線 (Critical-path)時線寬可以再往上增加些許寬度之對應圖,也就是在時間延遲 允許範圍內還可以直接將線段放大後的寬度 W + ΔW 加上跟雜質直徑 d 的間距,. 延遲時間. 雜質. l. 最佳的寬度. 重要 面積. w. w. woptimal w + Δw. 圖(5.5a) 線寬小於雜質時的延遲時間跟線寬對應圖. 延遲時間 2d − wij. Δt. Min{W ji ,2d }. i, j c. 最佳的寬度. w. woptimal w + Δw. 線寬. 圖(5.5b) 線寬小於雜質時的解法. 37. 線寬.

(47) 第六章. 加入多餘轉折點來增加轉折點的良率. 基本上,加入多餘轉折點(Redundant-via)可以降低因轉折點(via)的損壞而讓 整顆晶片的良率降低的情況。而利用連線是否成功來分析原本的轉折點(via)跟 多餘轉折點(Redundant-via),眾所皆知的加入實體繞線(on-track)的多餘轉折 點 (Redundant-via) 會 比 加 入 延 伸 繞 線 (off-track) 的 多 餘 轉 折 點 (Redundant-via)對提升良率而言要來的高,於是提出了兩個階段分別去作以良 率為導向實體繞線(on-track)的多餘轉折點(Redundant-via)的加入及延伸繞線 (off-track)多餘轉折點(Redundant-via)的加入,可以讓整顆晶片上的良率達到 最佳化。. 6-1 以良率為導向的加入實體繞線(on-track)的多餘轉折點(Redundant-via) 以良率為導向去作實體繞線(on-track)多餘轉折點(Redundant-via)的加入 時 , 所 有 的 多 餘 轉 折 點 (Redundant-via) 都 會 有 一 條 線 段 跟 原 始 轉 折 點 (Single-via)做連接,而一條是原本的線段,所以當在尋找一個原始轉折點 (Single-via)是否有可以加入多餘轉折點(Redundant-via)的位置時,需要去尋 找會增加額外線段的那一層位置是否有被佔用的情況,另外還有一種情況也就是 兩 顆 原 始 轉 折 點 (Single-via) 搶 同 一 個 位 置 作 為 加 入 多 餘 轉 折 點 (Redundant-via),但是事實上他們分布在不同兩層可以直接再同一個位置加入 兩個以上的多餘轉折點(Redundant-via),如下圖為示意圖及 3D 立體圖(6.1). 38.

(48) 圖(6.1) 實體繞線(On-track)多餘轉折點(Redundant-via)在不同 layer 搶同 一個位置時的示意圖及 3D 立體圖 在一整個晶片上的任何一條信號線. Ni , 可 以 對 應 轉 換 成 一 個 二 分 圖. (bipartite graph), Gi (V , E ) ,建造出轉折點(vias)對所有可以加入實體繞線 (on-track)的多餘轉折點(Redundant-via)位置。基本上在 Gi 中的 vertex set V,可以劃分為 via-vertex set,Vv ,和 location-vertex set,V L 。每個 vertex. Vv 為在 N i 上的原始轉折點(Single-via),而 vertex VL 則為在 Vv 上的原始轉 折 點 (Single-via) 所 擁 有 可 以 加 入 實 體 繞 線 (on-track) 的 多 餘 轉 折 點 (Redundant-via)位置,如果兩個原始轉折點(Single-via)不在同一層,而又擁 有共同的多餘轉折點(Redundant-via)的 location,如圖(f),則建立出來的二 分圖(bipartite graph)的 Vv 跟 V L 的線段(edge)連接關係為獨立的,所以不會發 生有 location 重複到而被認為在同個位置而覆蓋掉的情況。要做到以良率為導 向實體繞線(on-track)多餘轉折點(Redundant-via)的加入的步驟只要對剛剛所 建立任何一條訊號線. N i 的 二 分 圖 (bipartite graph) 做 最 大 配 對 (maximum. matching) 的 動 作 , 即 可 完 成 加 入 實 體 繞 線 (on-track) 的 多 餘 轉 折 點. 39.

(49) (Redundant-via),由圖(6.2),圖(6.3)可清楚的了解到實體繞線(on-track)多 餘 轉 折 點 (Redundant-via) 的 二 分 圖 (bipartite graph) 建 立 情 況 ,. C1 V1. C4. C2. V3 V2. C3. 圖(6.2) 找出可以加入實體繞線(on-track) 多餘轉折點(Redundant-via)的 原始轉折點(Single-via)及位置. V= Single-via. C=可以加入 on-track Redundant-via 的位置. 圖(6.3) 對照圖(6.2)所建立出來的 bipartite graph 在做最大配對(maximum matching)時,先配對權重(matching weight)為 1 的 v ia-vertex,因為它只有一個絕對位置可以分配,等到配對完畢後在將權重為 2 以上的 via-vertex 順序由小到大開始做配對的動作,如此一來即可做到最大配. 40.

(50) 對(maximum matching),例如上圖所示,一開始會先配對 V1 跟 V3,接下來才會 去配對 V2,而 V2 有兩個位置可以選擇,便亂數選擇一個位置,最後得到的結果 為 V1->C1,V2->C2,V3->C4。 至於在加入實體繞線(on-track) 多餘轉折點(Redundant-via)的時間複雜度 方面,在最差的條件下為 O(n),n 是在這整片晶片中有幾個原始轉折點(Single -via)數。. 6-2 以良率為導向的加入延伸繞線(off-track)的多餘轉折點(Redundant-via) 以良率為導向去作延伸繞線(off-track) 多餘轉折點(Redundant-via)的加入 時 , 所 有 的 多 餘 轉 折 點 (Redundant-via) 都 會 有 兩 條 線 段 跟 原 始 轉 折 點 (Single-via)做連接,也就是說會多餘增加出兩條線段出來,所以當在尋找一個 原始轉折點(Single-via)是否有可以加入多餘轉折點(Redundant-via)的位置 時,需要去尋找要加入多餘轉折點(Redundant-via)的那兩層的位置是否有被佔 用的情形,另外還有一種情況,為兩個原始轉折點(Single-via)連接相同的線 段,並且是堆疊起來的,於是便會擁有相同的延伸繞線(off-track)多餘轉折點 (Redundant-via)的位置, 如下圖為示意圖及 3D 立體圖(6.4). 圖(6.4) Off-track Redundant-via 遇到堆疊情況時的示意圖及 3D 立體圖. 41.

(51) 在加入延伸繞線(off-track)多餘轉折點(Redundant-via)時也是跟實體繞線 (on-track)類似,不同的是所建立的 graph 為多分割圖(multi-partite graph),. Gi (V , E ) 。基本上在 Gi 中的 vertex set V,可以劃分為 via-vertex set. Vv , 2 LVv ,m ,和 location-vertex. set. Vv ,1 ,. VL ,1 , V L , 2 L V L ,m +1 。. 由 圖 (6.5) , 圖 (6.6) 可 清 楚 的 了 解 到 延 伸 繞 線 (off-track) 多 餘 轉 折 點 (Redundant-via)的多分割圖(multi-partite graph)建立情況,. V11. C6 V5 V8. C10. C5. V9. V6. V4. C8. V10 C9. C7. V7. 圖(6.5)找出可以加入 off-track Redundant-via 的 Single-via 及位置. V= Single-via. C=可以加入 off-track Redundant-via 的位置. 由上圖所示找出可以加入延伸繞線(off-track)多餘轉折點(Redundant-via) 的原始轉折點(Single-via)的位置,在找出此原始轉折點(Single-via)有哪些位 置可以加入延伸繞線(off-track) 多餘轉折點(Redundant-via),並依照原始轉 折點(Single-via)跟多餘轉折點(Redundant-via)所在的層樓建立整顆晶片訊號 42.

(52) 線上的多分割圖(multi-partite graph),如下圖(j)所示, M1. C6. C7. C8. VL ,1. V5. V6. V7. VV ,1. C7. C8. VL , 2. M2 C5. C6. C10. V8. V4. V11. VV , 2. M3 C10. VL ,3. C5. C9. V9. V10. VV , 4. C9. VL , 4. M4 C5. 圖(6.6) 對照圖(6.5)所建立出來的 multi-partite graph 在所有 via-vertex 中的權重最大為 4,而在做最大配對(maximum matching) 時,先權重(matching weight)為 1 的 via-vertex,因為它只有一個絕對位置可 以分配,在這裡跟 on-track 不同點是,在這裡是以整顆晶片所有的層樓位置去 考 慮 每 個 via-vertex 是 否 有 跟 其 他 樓 層 的 via-vertex 擁 有 相 同 的 location-vertex , 在 去 分 配 權 重 , 即 可 做 到 真 正 的 最 大 配 對 (maximum matching)。在上圖方面,最後的結果為 V5->C6,V6->C7,V7->C8,V10->C9, V11->C10。 至於在加入延伸繞線(off-track)的多餘轉折(Redundant-via)的時間複雜度 方 面 , 在 最 差 的 條 件 下 為 O(n) , n 是 在 這 整 片 晶 片 中 有 幾 個 原 始 轉 折 點 (Single-via)數。 43.

(53) 第七章 實驗結果與實驗數據. 在本實驗當中,所模擬使用的電腦處理器為 Intel Celeron 2.8GHz,記憶體為 256MB,所安裝的系統為微軟的視窗 XP SP2,使用的程式語言為 C++並利用 Borland C++這套開發軟體撰寫而成,在本實驗中所使用到的雜質直徑定義為 1.2 倍的線段寬度,所使用的測試檔共有 11 組,分別如下圖(7.1)所示:. Mcc1. Mcc2. Primary1. Primary2. S5378. S9234. S13207. S15850. S38417. S38584. Struct. 圖(7.1)所有測試檔. 下圖(7.2)為程式檔案輸入一個原始細部繞線後的測試檔圖. 44.

(54) 圖(7.2) 程式測試檔案輸入. 下圖(7.3)為 11 個原始測試檔輸入程式後,利用良率模型所分析出來的良率值. 圖(7.3) 原始測試檔之良率圖. 45.

(55) 下圖(7.4)為經過此工具提高良率後的測試檔圖. 圖(7.4)提高良率後之輸出. 46.

(56) 下圖(7.5)為程式執行完畢輸出分析圖表的結果. 圖(7.5) 程式輸出分析圖表. 47.

參考文獻

相關文件

Convergence of the (block) coordinate descent method requires typi- cally that f be strictly convex (or quasiconvex or hemivariate) differentiable and, taking into account the

Instructional Design for Developing Value Education and Critical Thinking

This thesis focuses on path dependent, with the critical event of “Basic Wage”, and listing into “election path” “cost down path” and “protection path” etc., and then

Keywords: RFID, Mobile Learning, Sequence knowledge, Bloom’s cognition taxonomy, Ubiquitous Context-Aware. Distance learning has impacted and transformed conventional

(1999), &#34;Mining Association Rules with Multiple Minimum Supports,&#34; Proceedings of ACMSIGKDD International Conference on Knowledge Discovery and Data Mining, San Diego,

But the network security, the perceive risk of online insures behaviors, the cognitive of e-life insurance products, allow them to maintain reservation about the online

“ Consumer choice behavior in online and traditional supermarkets: the effects of brand name, price, and other search attributes”, International Journal of Research in Marketing,

This paper aims to study three questions (1) whether there is interaction between stock selection and timing, (2) to explore the performance of &#34;timing and stock