• 沒有找到結果。

中 華 大 學

N/A
N/A
Protected

Academic year: 2022

Share "中 華 大 學"

Copied!
73
0
0

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

全文

(1)

中 華 大 學 碩 士 論 文

題目:對於緩衝器設定與插入之版面已知樹形重建 設計

Floorplan-aware Tree Modification for Optimal Buffer Insertion

系 所 別:資訊工程學系碩士班 學號姓名:E09202006 洪志強 指導教授:顏金泰 博士

中華民國九十四年七月

(2)
(3)
(4)
(5)
(6)
(7)

摘 要

隨 著 製 程 技 術 進 步 , 從 深 次 微 米 (Deep- Submicron , DSM) 到 奈 米 (Nano-meter)、單一系統晶片(System on Chip)設計時代的來臨,晶片的設計越 來越複雜,連線的複雜度及緩衝器需求量也相對提升許多,IP 應用日趨重要,

伴 隨 而 來 許 多 的 繞 線 問 題 , 如 可 繞 度 (Routability) 、 滿 足 時 序 限 制 (Timing-constrained Maintenance)、訊號完整性(Signal Integrity)、避開障 礙物(Blockage Avoidance)、緩衝器區塊規劃(Buffer Block Planning)…等等,

這些都是現代化的繞線技術必須解決的問題。避開障礙物的問題通常是在繞線階 段之後處理,簡單的說,任何信號線可以經由史丹爾樹形重建,能成功而有效地 避開障礙物,同時連線增加緩衝器插入位置。任何已知版面規畫的史丹爾樹,都 必須考慮最佳時序限制。

在本論文中,提出兩個階段之已知版面規劃的樹型重整設計,第一階段,我 們提出三種運算,重建原始的史丹爾繞線樹形,第一種運算為史丹爾端點移動運 算(Steiner Point Movement),經由重新調整原始史丹爾端點,避開障礙物及增 加緩衝器插入;進一步提出,第二種運算為路徑修正運算(Edge Modification),

在合理繞線區域中,尋找合理繞線路徑達到避開障礙物;最後提出,第三種運算 為繞遠路修正運算(Detour Modification),如果在原始合理繞線區域,不存在 合理繞線路徑,擴展原始合理繞線區域,增加最小成本情形下,連線成功。經由 已知版面規劃的樹型重整設計執行後,第二階段,插入緩衝器至最佳化插入位 置,降低最後史丹爾樹中整體延遲時間,提升效能。

實驗結果指出,本論文提出的已知版面規劃的樹型重整設計,應用於最小化 延遲時間及避開障礙物,對於我們提出的六個測試例子,可以得到延遲時間

(8)

8%~19%改善,比原始未經過已知版面規劃的樹型重整設計之史丹爾樹,得到較佳 結果,同時有效率的避開所有版面規劃上之障礙物,降低繞線延遲時間,增加晶 片效能。

(9)

Abstract

Due to the VLSI process in progress from deep-submicron into nano-meter, system-on-chip (SoC) design becomes more important, and the design stages in a single chip are more and more complicated. In addition to the interconnect complexity, the buffer insertion and the IP reuse, a lot of interconnection problems are issued. For example, routability, timing-constrained maintenance, signal integrity, blockage avoidance and buffer block planning etc. In general, the floorplan phase and the routing phase can be independently completed. However, all the signals in a floorplan must be successfully routed in a single chip. Clearly, the question of avoiding the blockages must be solved in a post-routing process. Generally speaking, any signal can be successfully routed by using a rectilinear Steiner tree. To avoid blockages and increase the candidates of additional buffer insertion, any Steiner tree with floorplan-aware modification must be further considered to minimize the timing delay.

In the paper, we propose a two-stage floorplan-aware modification algorithm.

In the first stage, three modification operations are proposed to reconstruct the original Steiner tree. The first operation, Steiner point movement, is proposed to avoid possible blockages and increase possible buffer insertion by assigning the original Steiner-points inside a timing-constrained region. Furthermore, the second operation, Edge modification, is proposed to avoid possible blockages by finding a feasible path in its routing region. Finally, the third operation, Detour modification, is proposed to extend the original feasible routing region if there is no feasible path in its original routing region. After running the floorplan-aware tree modification, the second stage

(10)

Steiner tree.

The experimental results show that our proposed dynamic floorplan-aware tree modification to minimizes the timing delay and avoid blockages. For six tested examples, it improved 8%~19% interconnect delay than the original trees and avoid all the blockages in the floorplans.

(11)

致 謝

這兩年的研究所課程中,讓我受益良多,學到許多有用知識,本論文能順利 的誕生,要特別感謝指導教授顏金泰博士的指導與諄諄教誨,使我能在專業知識 與工作之間平行並進,同時人生觀的思考上也有進一步的啟發,以及從二技與研 究所一路上,多位系上老師在兩年的研究過程中的協助與指導,使我受益匪淺。

感謝 VLSI 實驗室的所有學長、姐批評與指教,陪伴我一起成長的張榮謙、

黃麗琴、吳嘉偉、林鎧平、李育政及王姿雅等同學,相互討論協助,以及多位學 弟、妹,在精神上的支持與鼓勵。

最後要感謝我的家人,父母親、岳父母及我老婆莊美芬,在我ㄧ邊工作又一 邊唸書情形下,幫我把兩個寶貝女兒,家琪及佳瑜照顧無微不至,讓我無後顧之 憂,能夠專心的完成碩士學位,同時兼顧工作。

最後,謹將此篇論文獻給我的家人、師長、同學及朋友們,共同分享這得來 不易的榮耀。

洪志強 謹致 中華民國九十四年七月於新竹

(12)

目 錄

中文摘要...I

Abstract

...III 致 謝...V 目 錄...VI 圖形目錄...VIII 表格目錄...X

第一章 簡 介...1

1.1 前 言...1

1.2 VLSI 深 次 微 米 製 程 挑 戰 ...2

1.3 VLSI CAD 設 計 流 程 ...3

1.4 緩 衝 器 在 版 面 規 畫 上 所 扮 演 之 角 色 及 定 位 ...4

第二章 研究動機及問題描述...6

2.1 晶 片 版 面 規 劃 與 史 丹 爾 繞 線 樹 獨 立 處 理 . . . 6

2.2 本 篇 論 文 最 主 要 的 兩 個 研 究 動 機 . . . 7

2.3 問 題 定義 .. . .. . .. .. . .. . .. .. . .. . .. .. . .. . .. .. . .. . .. .. . 8

第三章 動 態 繞 線 樹 形 重 整 ...10

3.1 晶片版面規畫上史丹爾繞線樹成本定義...10

3.1.1 線段成本(Wiring Cost)...10

3.1.2 緩衝器成本 (Buffering Cost)...12

3.1.3 障礙物損失(Blockage Penalty)...13

3.1.4 全部成本...14

(13)

3.2 設計流程...17

第四章 動 態 繞 線 樹 形 重 整 避 開 障 礙 物 的 方 法 ...19

4.1 史丹爾繞線樹重整方法...19

4.2 史 丹 爾 端 點 移 動 運 算 ( S t e i n e r P o i n t M o v e m e n t ) . . . 1 9 4.2.1 史丹爾繞線樹中 Y 型態線段...19

4.2.2 符合時序限制的史丹爾端點可移動區域...20

4.2.3 Y 型態線段長度的表示法...22

4.2.4 符合時序限制的前提下之下計算史丹爾端點可移動的區域.24 4.2.5 史丹爾端點的合理位置...32

4.3 路 徑 修 正 運 算 ( E d g e M o d i f i c a t i o n ) . . . 3 5 4.3.1 合理的繞線區域...35

4.3.2 合理的繞線路徑...36

4.4 繞 遠 路 修 正 運 算 ( D e t o u r M o d i f i c a t i o n ) . . . 3 8 4.4.1 障礙物與合理繞線區域之間的重疊關係...38

4.4.2 避開障礙物的繞遠路(Detour)修正...39

4.5 動態樹形重整演算法...42

第五章 在史丹爾樹上緩衝器的插入... ...44

5.1 插入緩衝器史丹爾樹上...44

5.2 演算法及時間複雜度...49

第六章 實驗結果...51

第七章 結 論...53

(14)

圖形目錄

圖 1-1 VLSI 設計流程...4

圖 1-2 緩衝器改善連線延遲時間之示意圖...5

圖 1-3 當代需求大量緩衝器...5

圖 2-1 版面規劃結果...6

圖 2-2 史丹爾繞線樹...6

圖 2-3 版面規劃結果與史丹爾繞線樹結合造成繞線失敗...7

圖 2-4 輸入資訊...9

圖 2-5 輸出結果...9

圖 3-1 最小的矩形區域...10

圖 3-2 線段成本(Wiring cost)範例...11

圖 3-3 緩衝器成本 (Buffering cost)範例...13

圖 3-4 障礙物懲罰(Blockage Penalty)範例...14

圖 3-5 全部成本計算範例...15

圖 3-6 設計流程圖...17

圖 4-1 繞線樹中的 Y 型態線段...20

圖 4-2 一個交叉型態由兩個 Y 型態線段組成...20

圖 4-3 滿足史丹爾端點定義的區域...21

圖 4-4 Y 型態線段經過史丹爾端點的移動運算之結果...21

圖 4-5 Y 型態線段長度定義...22

圖 4-6 P 端點和 R 端點在不同相對關係下的 Y 型態線段長度表示...24

圖 4-7 史丹爾繞線樹-R 端點為來源端的 Y 型態線段...25

圖 4-8 史丹爾繞線樹-R 端點為不是來源端的 Y 型態線段...29

圖 4-9 史丹爾繞線樹-障礙物與可移動區域關係...33

(15)

圖 4-10 史丹爾點移動原始圖...33

圖 4-11 史丹爾點移動避開障礙物...34

圖 4-12 合理的繞線區域...35

圖 4-13 不合法的繞線路徑...36

圖 4-14 合理的繞線路徑...36

圖 4-15 路徑修正前...37

圖 4-16 路徑修正後避開障礙物...37

圖 4-17 障礙物與合理的繞線區域之重疊關係...38

圖 4-18 擴展繞線區域得繞遠路結果(平衡對稱型)...39

圖 4-19 擴展繞線區域得繞遠路結果(不平衡非對稱型)...40

圖 4-20 繞遠路修改原始圖...40

圖 4-21 繞遠路修正避開障礙物...41

圖 5-1 繞線樹上插入緩衝器候選位置...44

圖 5-2 Van Ginneken 緩衝器插入演算法輸入資訊...45

圖 5-3 Van Ginneken 緩衝器插入演算法輸出結果...45

圖 5-4 緩衝器插入可能選擇位置...46

圖 5-5 刪除多餘插入選擇位置...46

圖 5-6 延續緩衝器插入可能選擇位置...47

圖 5-7 刪除多餘候選位置...47

圖 5-8 合併分支上可能候選位置...48

圖 5-9 合併分支後產生候選位置...48

圖 5-10 合併分支後刪除多餘的候選位置...49

(16)

表格目錄

表 4-1 P 端點和 R 端點在不同相對關係...23

表 6-1 測試用參數引用 0.18 微米製程的 SIA'97...51

表 6-2 測試用 RST 樹形...51

表 6-3 實驗數據...52

(17)

第一章 簡 介

1.1 前言

單晶片(System on Chip,SoC)和複雜ASIC設計的困難度正推動電腦輔助 設計(CAD)工具向兩個明顯相反的方向發展:一方面,數百萬閘設計所導致的 非常大量數據,迫使工程師採用由上而下(Top-down)的設計方法,這種方法 最初階段採用抽象形式(Abstract)或術語來描述設計;另一方面,隨著製程 技術繼續向0.13微米以下發展,IC設計工程師必須考慮詳細的物理特性對設 計時序、功能、良率和可靠性的影響。為了解決這一矛盾,CAD工具必須提供 抽象級設計能力,這可使複雜設計的表示非常簡潔緊湊,以及必須具備對深 次微米技術的詳細物理效應進行測試及驗證的能力,達成設計收斂性。

由於深次微米技術下設計複雜度的與日俱增,階層化設計與矽智財區塊 (IP block)已漸被使用,可以重複使用特性(Reuseable),此趨勢使得區塊階 層(Block Level)的晶片擺置(Placement)/版面規劃(Floorplanning)/繞線 (Routing)及其時序成本(Timing Budget) 的決定,對電路設計品質的影響變 得更為重要。因此發展快速具彈性,且能處理各種條件限制,如區塊間排列 (Alignment) 、 相 鄰 關 係 (Proximity) 、 障 礙 物 (Blockage) 等 限 制 條 件 (Constraints) 及時序(Timing)、面積(Area)、雜訊(Noise)等設計導向的矽 智財整合工具,日益受到重視。有鑑於此,硬體矽智財元件(Hard IP)已經 佈局完成,在連線階段我們視為障礙物,傳統上版面規劃與繞線之間各自獨 立階段處理,因此兩者結合在一起即產生問題,造成繞線失敗,這是本片論 文主要關注重點。

現有的物理合成和虛擬原型工具可以在後端處理這一問題,但VLSI CAD 工具供應商必須繼續使IC設計工具鏈上的所有工具都能綜合考慮物理資訊,

從而在IC設計過程的每一階段,設計工程師不管做出什麼設計修改,都能馬 上看到實際完成後的效果,邏輯設計(Logic Design)與實體設計(Layout)之

(18)

間差異大幅縮小。

1.2 VLSI深次微米製程挑戰

傳統的ASIC設計方法是邏輯與實體佈局(Layout)設計分離,從RTL到 GDSII逐步由上往下(Top-down Methodology)的設計流程,由於無法準確預 測線路延遲(Routing Delay),導致必須數次遞迴執行邏輯合成(Synthesis)

及自動實體佈局與繞線(Place & Route )以達到時序收歛(Timing Closure);

當系統設計超過100K閘與製程0.25微米、0.18微米或0.13微米以下時,內部 連線延遲(Inter-connect Delay)為影響IC執行速度的重要因素,傳統的設 計方法往往無法達到系統功能要求。由於IC朝高密度的方向發展的趨勢,因 此電腦輔助設計(Computer-aided Design, CAD)廠商提出最新矽智財元件 (Intellectual Property, IP)與單晶片設計(System on Chip, SoC)的解決 模式和概念因應,但是高密度電路的複雜性,設計流程特色必須兼顧硬體、

軟體設計同時發展,而且平行處理驗證與合成模式並用;邏輯合成過程亦必 須考慮實體佈局與繞線,儘可能使用已經驗證過的軟體巨集(Soft Macro)

模組或硬體巨集(Hard Macro)模組。

IC設計產業未來幾年將因深次微米製程技術精進以及系統層次設計工 具需求,半導體界不斷轉向0.13微米線寬、甚至90奈米以下的設計領域,此 趨勢將是影響新超大規模積體電路(Very Large-scale Integrated Circuits, VLSI)設計工具的主因,由於新產品的需求將帶動新設計方法,並帶給IC設計 產業新的契機。各廠商要維持長久的成長,必須投入新技術的研發與運用,

使新產品不只僅限於少數使用者,更能擴展至整個主流設計圈。如果IC設計 廠商能夠和CAD廠商及晶圓代工廠商做更密切的配合,例如與CAD廠商共同發 展及改善設計環境與設計流程,以縮短產品上市時間並且加強先進技術研 發,進而增強IC設計能力,如此一來勢必造成彼此雙贏的局面。

在深次微米技術下,電路之連線為決定效能(Performance)的最關鍵因

(19)

素 , 因 此 設 計 全 程 皆 需 考 慮 連 線 的 效 應 , 即 以 連 線 為 導 向 之 設 計流 程 (Interconnect-driven Design Flow) , 以 達 成 時 間 收 斂 及 設 計 收 斂 性 (Design Convergence) 。 此 相 關 研 究 主 題 有 連 線 導 向 擺 置 及 版 面 規 劃 (Interconnect-driven Placement/Floorplanning) , 緩 衝 器 規 劃 (Buffer Planning),最佳化緩衝器插入及線寬(Optimal Buffer Insertion/Sizing and Wire Sizing),佈局導向邏輯合成(Layout-driven Logic Synthesis) 等。

由於元件的縮小及晶元尺寸的變大,電路的複雜度日益增高,而具有千 萬個邏輯閘的單晶片已有量產。然而目前能處理極大型電路的實體合成及分 析工具,如VLSI 電路分割器(Partitioner)、電路擺置器 (Placer)、 版面 規劃器(Floorplanner), 晶片繞線器(Router)、 RLC 抽取器(Extractor) 等 , 卻 極 為 匱 乏 , 因 此 發 展 方 法 , 如 階 層 式 / 多 層 次 架 構 (Hierarchical/Multilevel Frameworks)以輔助超大規模積體電路之設計,

並提昇設計生產力,為當今的重要研究課題。

1.3 VLSI CAD 設計流程

隨著製程技術向90奈米發展,一系列新的問題逐漸浮上檯面。信號完整 性、可測性設計、驗証和設計再使用等,為滿足今天不斷增加的設計複雜性 方面正成為前所未有的關鍵。此外,將VLSI CAD供應商所有的CAD工具整合成 為一個涵蓋(Resister Transfer Level)RTL-to-GDSII佈局規格的流程,也 可以幫助設計師提高設計效率。

實體設計(Physical Design)流程,傳統上的設計流程,先做版面規劃 (Floorplanning) , 版 面 規 劃 完 成 後 , 作 緩 衝 器 區 塊 規 劃 (Buffer Block Planning),緩衝器在還未作史丹爾繞線樹建立之前,預先作緩衝器區塊規 劃,進入史丹爾樹建立,最後階段為整體晶片繞線,包含整體繞線(Global Routing)及細部繞線(Detail Routing)下圖1-2中,紅色虛線框住部分,就是

(20)

本篇論文重點改善部分,動態樹形重整及最佳化緩衝器插入問題。

版面規劃 史丹爾樹形

建立

圖1-1 VLSI設計流程

1.4 緩衝器在版面規畫上所扮演之角色及定位

傳統上,藉由緩衝器之幫助來降低連線延遲時間之方式,在傳統上是應 用於細部繞線階段之後,然而隨著系統效能需求提高,緩衝器數目也隨之提 高,若緩衝器插入之方式還是應用於細部繞線階段之後,那時間收斂之問題 也將日趨嚴重,因此如何在繞線之前就預估緩衝器插入位置來改善收斂時間 之問題的討論也逐漸受到重視,而從線段延遲模式中更可了解線段寬度與線 段延遲之時間有其密切之關係,再者因緩衝器本身在晶片中佔有其一定之面 積與延遲時間,若在插入緩衝器之同時也將其面積與時間延遲因素也納入考 量,那對於晶片成本也有相當程度之影響。

緩衝器主要之功能是降低線段延遲時間,通常一線段延遲時間如不能符 合系統之要求,且其延遲時間在大於緩衝器本身延遲之情況下,藉由緩衝器 之幫助來降低線段延遲時間是一種常用之方式,如圖1.6所示。

史丹爾樹形 重建及 緩衝器插入

已知板面規劃

;障礙物

;空白區域

緩衝器區塊 規劃

全晶片繞線

(21)

來源端 目的端

來源端 緩衝器 目的端

延遲時間:1ns

延遲時間:0.5ns

圖1-2 緩衝器改善連線延遲時間之示意圖

圖1-3 當代需求大量緩衝器

當製程每一個新世代,緩衝器數量增加大約三倍之多,預估當製程 進入50奈米時,緩衝器數量,將暴增至80萬個所以緩衝器問題需要愈早 處理愈好[15]。

(22)

第二章 研究動機與問題定義

2.1 晶片版面規劃與史丹爾繞線樹獨立處理

傳統上,晶片設計流程中,在晶片版面規劃(Floorplan)階段,決定了各 個 模 組 與 區 塊 在 晶 片 上 的 位 置 , 再 進 入 緩 衝 器 區 塊 規 劃 (Buffer Block Planning)階段,決定了來源端(Source)及目的端(Sink)位置之後,既可進行 史丹爾繞線樹建立(Steiner Tree Construction)階段。傳統設計流程上,晶 片版面規劃階段,如圖2-1所示,與史丹爾繞線樹建立階段,如圖2-2所示,彼 此之間獨立不同階段進行,並未將晶片版面規劃結果相關資訊互通,使得晶片 版面規劃階段所產生的一些有用資訊,例如:空白區域(Empty Space)及障礙物 (Blockage)等資訊,無法傳遞給下一個設計流程-史丹爾繞線樹建立,常常造 成在史丹爾繞線樹建立階段時,所建立出來之繞線樹完成後,需要放回上一個 晶片設計流程階段之晶片版面規劃結果,原來的晶片版面規劃時,造成有些繞 線樹形跨過障礙物[20]上,勢必會產生晶片功能不正確,整個設計結果功虧一 簣,如圖2-3結果繞線失敗。

障礙物 來源端

目的端

目的端

障礙物 來源端

目的端

目的端

圖 2-1 版面規劃結果 圖 2-2 史丹爾繞線樹

整個計設流程被迫重新退回到晶片版面規劃階段,另外產生一個晶片版面 規劃結果,再次執行史丹爾繞線樹建立階段;或者是再次重新建立整棵史丹爾 繞線樹,倘若史丹爾繞線樹結果,再次與晶片版面規劃結果結合,仍然有發生

(23)

繞線樹形跨過障礙物上,晶片功能還是不正確,如此重複循環下去,使得整個 晶片設計複雜度增加,那時間收斂之問題也將無法控制,因此這就是本篇論文 最主要的研究動機,不需要整棵繞線樹重新建立,經由部分史丹爾繞線樹形重 整方法,將跨過障礙物部分繞線重整,避開障礙物,得到比較好的設計時序收 斂性。

障礙物

來源端

目的端

目的端

繞線失敗 障礙物

來源端

目的端

目的端 來源端

目的端

目的端

繞線失敗 繞線失敗

圖 2-3 版面規劃結果與史丹爾繞線樹結合造成繞線失敗

2.2 研究動機

本 篇 論 文 研 究 動 機 分 成 兩 大 目 標 , 被 動 式 目 標 為 避 開 障 礙 物 (Blockage Avoidance) , 主 動 式 目 標 為 空 白 區 域 插 入 適 當 緩 衝 器 (Optimal Buffer Insertion),分別敘述如下。

被動式目標為避開障礙物,晶片版面規劃(Floorplan)結果之障礙 物(Blockage),例如:硬體矽智財元件(Hard IP)則是經過設計規則的檢 查(Design Rule Check,DRC),並經佈局繞線、光罩製作、在矽晶圓上 作過實體驗證等,因此對於繞線樹建立階段,既成為障礙物,因為硬性 矽智財電路佈局及繞線完成,因上方金屬繞線層,已經被用罄,所以繞 線樹無法跨過其上方,當然更不可能可以插入緩衝器,在其上方繞線樹 形覆蓋上障礙物,非得避開障礙物不可,否則晶片功能錯誤,被迫一定 要避開,稱為被動式目標。

(24)

主動式目標為空白區域插入適當緩衝器,晶片版面規劃(Floorplan) 結果之空白區域(Empty Space),此空白區域也是我們可以利用之處,充 分運用空白區域插入適當大小及數量之緩衝器(Buffer),達到降低晶片 的延遲時間(Delay),提升整體晶片的效能(Performance),此動機無關 於晶片功能之正確性,但對整體具有加分之作用,故成為主動式目標。

將晶片版面規劃階段所產生的空白區域及障礙物(Blockage)等有 用 資 訊 記 錄 下 來 , 下 一 個 階 段 史 丹 爾 繞 線 樹 建 立 (Steiner Tree Construction),所建立產生之繞線樹形,擺放回原來之晶片版面規劃結 果,假使發生繞線樹形跨過障礙物,經由動態樹形重建修正(Dynamic Tree Reconstruction)方式,做動態樹形重整去避開障礙物,將大幅改 善晶片設計流程複雜度以及得到良好時間史丹爾樹形重整去避開障礙 物,將大幅改善晶片設計流程複雜度以及得到良好時序收斂性。

2.3 問題定義(Problem Formulation)

輸入資訊為晶片版面規劃(Floorplan)結果,其中包含一些資訊可 供述形重建避開障礙物,一是障礙物(Blockage)資訊鎖在版面規劃上之 位置及大小,二是空白區域(Empty Space)位置及數量。其次是一棵史丹 爾繞線樹(Recetilinear Steiner Tree, RST)結果,以一棵一完成繞線 之史丹爾繞線樹,輸入資訊如下圖2-4所示。

輸出結果為具有已知晶片版面規劃能力,經由樹形重整之一棵史丹 爾繞線樹形結果,最主要目標為有效地避開障礙物(Blockage),完全處 於被動方式,必須避開障礙物,繞線方能成功;然而,有一主動積極目 標,動態樹形重建時,盡量經過版面規劃之空白區域,充分地增加緩衝 器可插入位置(Buffer Candidates),經由插入最佳化緩衝器數量、位 置,使得一棵繞線樹中最緊要的繞線路徑,從來源端到目的端的線段連 線延遲最短(Critical Net)的繞線路徑,從來源端到目的端的線段路徑

(25)

延遲最小,得到結果成本愈小愈好(Cost Minimization),輸出結果如下 圖2-5所示。

障礙物 障礙物

S1,S2,S3,S4 :史丹爾端點 S1,S2,S3,S4 :史丹爾端點

125 375

345

130 505

320 110

330

230

425 100 65

70 435

125 375

345

130 505

320 110

330

230

425 100 65

70 435

S1 S2 S3

S4 S1

S2 S3

S4

125 375

345

130 505

320 110

330

230

425 100 65

70 435

125 375

345

130 505

320 110

330

230

425 100 65

70 435

S1 S2 S3

S4 S1

S2 S3

S4

圖 2-4 輸入資訊

障礙物

來源端 目的端

緩衝器 障礙物

來源端 目的端

緩衝器

圖 2-5 輸出結果

(26)

第三章 動態繞線樹形重整

3.1 晶片版面規畫上史丹爾繞線樹成本定義

最小的矩形限制區域(Minimum Bounding Rectangle Region)(MBRR) ─ 將所有的節點連結在一起,所圍成最小矩形區域,如下圖(圖3-1)所示:

連接端點

w

h h

圖3-1 最小的矩形限制區域

我們由上圖3-1得知,此矩形區域涵蓋所有節點,而得到之最小矩形區 域,我們定義其寬度(Width)為W,其高度(Height)為H,然而,其最小矩形 區域週長的一半,則是矩形寬度加上矩形高度W+H,由先前的論文中,將所 有的節點以最小生成樹(Minimal Spanning Tree)方式連結,其全部線段長度 一定大於其最小矩形區域週長之ㄧ半,我們就以此結果,推論線段成本如下:

3.1.1 線段成本(Wiring cost, W

c

)

線段成本為全部線段長度除以最小矩形週長二分之ㄧ(公式3-1),產 生一組比例值,此值必定大於一,我們的目標希望此比例值,愈小愈好,

繞線長度愈短成本愈彽。

(27)

連接端點

w

圖3-2 線段成本(Wiring cost)範例

l Where WC f1 h

Wc w T

= + ……… 公式3-1

WC > 1,將所有的節點以最小生成樹(Spanning Tree)方式連結,其 全部線段長度 ,一定大於其最小矩形區域週長之ㄧ半(W+h)。

如圖3-1為例,求的線段成本如下:

530

530 1230

=

=

=

h w lT

530 1.16 530

1230 h

WC w T

= +

= l +

最小矩形區域的高度 最小矩形區域的寬度 全部線段成本

線段成本

:

:

: :

h w W

T C

l

w

530530

h h

530 530

l

T

(28)

3.1.2 緩衝器成本 (Buffering cost,B

c

)

緩衝器成本為可以插入緩衝器的空白區域(Empty room)數量與全部 空白區域的數量比值(公式3-2),若以面積成本為考量時,我們希望版面 規劃(Floorplan)的結果,愈小愈好,面積為導向設計方式,但是,就以 插入緩衝器觀點而言,我們希望版面規劃的結果,能在不增加原來版面規 劃的成本下,有愈多的空白區域愈好,我們可以增加更多插入緩衝器的位 置;然而,讓我們更進一步思考後,我們可以發現事實並不盡然如此,假 使版面規劃的結果,空白區域很大又過於集中某處時,實際上對我們插入 緩衝器設定插入效益有限,一個比較好的版面規劃的結果,反而是能夠產 生大量的空白區域並均勻分布其中,使得緩衝器插入時,有更多更有利的 緩 衝 器 插 入 位 置 , 能 夠 將 連 線 延 遲 (Delay) 降 低 , 使 之 更 有 效 能 (Performance)。

緩衝器成本為最小的矩形限制區域(Minimum Bounding Rectangle Region)(MBRR)中,可以插入緩衝器的空白區域數量與全部空白區域的數 量比值(公式3-2),若以面積成本為考量時,我們希望版面規劃的結果,

愈小愈好,面積為導向的設計方式,但是就以插入緩衝器觀點而言,我們 希望版面規劃的結果,能在不增加原來版面規劃的成本下,有愈多的空白 區域愈好,我們可以增加更多插入緩衝器的位置;然而,讓我們更進一步 思考後,我們可以發現事實並不盡然如此,假使版面規劃的結果,空白區 域很大又過於集中某處時,實際上對我們插入緩衝器設定插入效益有限,

一個比較好的版面規劃的結果,反而是能夠產生大量的空白區域並均勻分 布其中,使得緩衝器插入時,有更多更有利的緩衝器插入位置,能夠將延 遲降低,使之更有效能。

1 2

N

B

C

= N

………公式3-2

BC : 緩衝器成本

N1 :合理的繞線區域中之全部空白區域數量 N2 : 可以插入緩衝器的空白區域數量

(29)

以圖3-3為例,計算緩衝器成本如下:

90

125 375

345

285 435

170

260

435 90

125 375

345

285 435

170

260

435

圖3-3 緩衝器成本範例

合理繞線區域中之空白區域總數量 N1 = 8,合理繞線區域中繞線經 過之空白區域總數量 N2 = 5

8 B

C

= 5

3.1.3 障礙物懲罰(Blockage Penalty,

lB

)

跨過障礙物全部線段長度之總和,稱為障礙物懲罰。對於晶片與障 礙物之關係而言,障礙物就是我們一定而且必須要去避開,否則整個晶片 是無法成功,這是一個比較消極的目標。

以下圖3-4為例,障礙物懲罰為跨過障礙物之繞線總長度為

B

= 130 l

B:

l 跨過障礙物全部線段長度之總和

(30)

90

125 375

345

285 435

170

260

435

圖 3-4 障礙物懲罰範例

3.1.4 全部成本(Total Cost, Total

C

)

晶片版面規畫上史丹爾繞線樹全部成本={障礙物的損失, [線段成本 -緩衝器成本] },(公式3-3)避開所有障礙物的情況下,能夠得到全部的 成本最小,最佳化的目標。

…公式3-3

如 圖3-5,在使丹爾繞線樹的全部成本TotalC,計算如下:

Totalc =

750 780

2520

+ 9

5

(

130

, )

=

780 750 2520

+ 9

5

(

130

, )

( 130 , 1.092 ) ( 130 , 1.092 ) 不合法解-無解

130

90 130

125 375

345

285 435

170

260

435

130 130

h w

+

T

l

1 2

N

N

=

( l

B ( )

TotalC ,

)

h w

+

T

l

1 2

N

N

=

( l

B ( )

,

)

TotalC

最小矩形區域高度 :

最小矩形區域寬度 :

全部線段長度 :

h w lT

障礙物懲罰 :

被使用的空白區域數量 :

N

全部空白區域數量 :

N

B 2 1

最小矩形區域高度 l :

最小矩形區域寬度 :

全部線段長度 :

h w lT

障礙物懲罰 :

被使用的空白區域數量 :

N

全部空白區域數量 :

N

B 2 1

l

(31)

90

125 375

345

285 435

170

260

435

圖 3-5 全部成本計算範例

我們的目標是找到丹爾繞線樹全部成本的值(TotalC),愈小愈好,花 費成本最低,得到的結果也最佳,但是由上述計算後,求得一組全部成本 值為(130, 1.092),這一組值的第一個值”130”為障礙物懲罰(Blockage Penalty),可以很清楚得到一個結論,只要第一個障礙物懲罰值不為零,

代表著依然還有線段跨過障礙物,就是無解,儘管丹爾繞線樹全部成本非 常的小,障礙物損失不為零,整棵丹爾繞線樹仍然失敗,當然晶片也無法 成功。

由上圖例中,我們可以得到下列推論為 將公式3-3轉換成下列(ai, bj)表示式

不合法的解答─假設(ai , bi)為晶片全部成本,動態樹形重整之史 丹爾樹上全部成本的其中一組解,如果 ai ≠ 0 ,則這一組解,在史丹 爾樹上為不合法的解,因此表示還有線段跨過障礙物。

)

( a

i

, b

j 緩衝器懲罰

連線及緩衝器成本 ai

bj

130

90 130

125 375

345

285 435

170

260

435

130 130

(32)

以下舉例說明,經由動態樹形重整後,史丹爾樹全部成本(a1 , b1)

= (0,500) 和 (a2 , b2) = (10,10),(a1 , b1) 即為一組合法解答,儘管 (a1 , b1) 全部成本總和大於(a2 , b2) ,我們還是必須取(a1 , b1),因為 (a2 , b2)為一組不合法的解答,a2不為零。

支配的關係─假設同時存在兩組的候選組時,全部成本 (ai, bi) 及 (aj, bj),如果 ai=0, aj=0 且 bi<bj ,則 (ai, bi) 支配(Dominated) (aj, bj), ai=0, aj=0 代表這兩組候選解,為合法的解答,所以我們進一步的 比較第二個解,連線及緩衝器成本(Wiring/Buffering Cost)才有意義,

此時避開所有的障礙物,再比第二個值,取最小值,得到成本也最低。

為晶片規劃後,經由動態樹形重整後,史丹爾樹全部成本 (a1 , b1)

= (0,100) 和 (a2 , b2) = (0, 250),兩組候選解答,a1=0, a2=0 均為 合法解且 b1 < b2 ,(a1 , b1) 支配著另一組解 (a2 , b2),所以 (a1 , b1) 比 (a2 , b2) 為較佳的解答。

(33)

3.2 設計流程

輸入

:

史丹爾樹, 版面資訊

方法一 : 動態樹形重整

輸出:

史丹爾樹形 緩衝器插入

樹形重整

" 史丹爾端點移動

" 路徑修正

" 繞遠路修正

版面規劃資訊 障礙物、空白區域

方法二 :

緩衝器插入

"

圖 3-6 設計流程圖

上圖3-6中,整體演算法的設計流程,主要分成兩個階段,第一個方法為 動態繞線樹形重建,其中再細分成三個運算方法,第一種運算:史丹爾端點移 動(Steiner point movement),在滿足時序限制情形下,把跨過障礙物的史丹 爾端點、或是繞線線段,經由移動史丹爾端點,進而避開障礙物,第一種運算 解 決 不 了 時 , 交 由 第 二 種 運 算 處 理 ; 第 二 種 運 算 為 路 徑 修 正 運 算 (Edge modification),在不增加線段成本情形下,在合理的繞線區域中找一條合理 的繞線路徑,替代原來跨過障礙物路徑;第二種運算無法處理時,由第三種運 算接手為繞遠路修正運算(Detour modification),擴展合理的繞線區域,在 增加最小成本的情形下,繞遠路方式連線;第二個方法為緩衝器插入,盡量地 在作樹形重整時,增加繞線樹形跨過空白區域,意味著同時也增加緩衝器插入 位置,有效率地插入緩衝器減少連線延遲時間,有效地增加整體晶片效能。

(34)

果,以一棵一完成繞線之史丹爾繞線樹,輸入資訊如圖2-4所示。

其 次 是 晶 片 版 面 規 劃 (Floorplan) 結 果 , 其 中 包 含 一 些 有 用 資 訊 (Floorplan Results)可供述形重建避開障礙物,一是障礙物(Blockage)資 訊在版面規劃上之位置及大小,二是空白區域(Empty Space)位置及數量。

整體演算法包含兩種方法,方法一為動態樹形重整(Dynamic Tree Modification); 方 法 二 為 最 佳 化 緩 衝 器 插 入 (Optimal Buffer Insertion),引用Van Ginneken演算法。史丹爾樹形重整有兩大主要動機 如下:

被動動機:避開障礙物(Blockage Avoidance)-硬體矽智財元件(Hard IP)為一已經電路佈局(Layout)完成之線路圖,有其固定之製程限制,經過 (Design Rule Check,DRC)驗證成功,不允許任何繞線跨過其上。主動動機:

充分地考慮晶片規劃(Floorplan)中的空白區域(Empty Space),增加有效 的緩衝器插入候選位置,以期許得到更好的效能。

最佳化緩衝器插入,參考引用Van Ginneken緩衝器插入演算法,線段 延遲以艾爾摩(Elmore Delay)π模型取代,比原L模型延遲計算更加精確,

增加更多插入緩衝器候選位置(Buffer Candidates),得到比原來樹形更好 的結果,效能也更佳。

輸出結果為具有已知版面規劃能力,經由史丹爾樹形重整之一棵史丹 爾繞線樹形結果,最主要目標為有效地避開障礙物(Blockage),完全處於 被動方式,必須避開障礙物,繞線方能成功;然而,有一主動積極目標,

動態樹形重建時,盡量經過版面規劃之空白區域,充分地增加緩衝器可插 入位置(Buffer Candidates),經由插入最佳化緩衝器數量、位置,使得一 棵繞線樹中最緊要的繞線路徑,從來源端到目的端的線段連線延遲最短 (Critical Net)的繞線路徑,從來源端到目的端的線段路徑延遲最小,得 到結果全部成本最低,輸出結果如圖2-5所示。

(35)

第四章 動態繞線樹形重整避開障礙物的方法

4.1 史丹爾繞線樹重整方法

史丹爾繞線樹重整方法分成三種運算,分別依序說明如下,第一種運算為 史丹爾端點移動運算(Steiner Point Movement),第二種運算為路徑修正運算 (Edge Modification),第三種運算為繞遠路修正運算(Detour Modification)

上述三種運算,有其順序性,當輸入一棵史丹爾樹形進來時,第一步驟,

先執行第一種運算-史丹爾端點移動運算(Steiner Point Movement),在不違 反時間限制(Time constraint)情況下,經由合理的史丹爾端點(Steiner point) 移動,達到避開障礙物的目的。如果第一種運算仍然無法排除所有的障礙物,

則必須進入第二種運算-路徑修正運算(Edge Modification),在不增加線段成 本情形下,於合理的繞線區域(Feasible Routing Region, FRR)中,尋找另一 條合理的路徑(Feasible Routing Path ,FRP),避開障礙物。最後若仍無法避 開所有障礙物時,為了讓晶片能夠功能正常,所以我們必須進入第三種運算- 繞遠路修正運算(Detour Modification),於增加最小的線段成本情況下,繞 遠路(Detour)的方式,避開所有的障礙物,經由一些少許的繞遠路懲罰(Detour Penalty),換取整個晶片功能正常。

樹形重整最主要目標有三大目的,第一、避開所有晶片上障礙物 第二、

滿足保持原有時間限制 第三、增加更多可以插入緩衝器的候選位置

4.2 史丹爾端點移動運算(Steiner Point Movement)

4.2.1 史丹爾繞線樹中Y型態線段

史 丹 爾 繞 線 樹 中 Y 型 態 線 段 [16][17] , 它 包 含 一 個 史 丹 爾 端 點

(36)

(Steiner Point),和史丹爾端點連接出去的三個連接點(Connecting Node),這三個連接點可以是終端點(Sink)也可以是史丹爾端點,而且可 以坐落於任意繞線平面上四個象限其中之一,如下圖4-1所示:

史丹爾端點

Y- Y-型態

圖4-1 繞線樹中的Y型態線段

交叉型態線段,它包含一個史丹爾端點,和史丹爾端點連接出去的 四個連接點,由兩個Y型態線段組合而成,如圖4-2所示,將兩個Y型態線 段重疊而成,其中一個線段長度視為零,如此一來,這種型態線段就歸類 為兩個Y型態線段。

交叉型態

圖4-2 一個交叉型態,由兩個Y型態線段組成

4.2.2 符合時序限制的史丹爾端點可移動區域

調整繞線樹形來避開障礙物方法就是移動史丹爾端點,史丹爾端點 的移動必須在合理可移動範圍(Feasible Movable Region)之內移動,可 移 動 範 圍 受 到 兩 個 條 件 限 制 , 第 一 個 是 滿 足 時 序 限 制 的 區 域

(37)

(Timing-constrained Region),須由艾爾摩延遲(Elmore Delay)π型態 計 算 而 得 , 第 二 個 是 滿 足 史 丹 爾 端 點 定 義 的 區 域 (Steiner-point Location Region, SLR),史丹爾端點合理的移動區域,下圖4-3及圖4-4 所示。

來源端點 史丹爾端點 目的端點 來源端點 史丹爾端點 目的端點

史丹爾端點定義的區域 (SLR)

圖4-3 繞線樹中的Y型態線段

來源端點 史丹爾端點 目的端點

史丹爾端點定義的區域(SLR)

時序限制的區域

I

I = =

合理的移動區域

圖 4-4 Y型態線段經過史丹爾端點的移動運算之結果

(38)

Y型態線段是從史丹爾端點衍生出來的,因此,可以移動的 史丹爾 端點是必須有所限制,他只能被移動於一個限制區域中,第一前提,不違 反原來的時序限制,在我們要動態史丹爾樹形重整時,史丹爾端點移動,

一定不能比原來結果還差,若是變差則毫無意義,不接受此結果,只有移 動時,結果變好我們才接受,接下來我們討論如何計算史丹爾端點可移動 區域。

4.2.3 Y型態線段長度的表示法

如圖4-5所示,它包含一個史丹爾端點P(xP,yP),和它三個固定的連接 端點R(xR,yR)、A(xA,yA)、B(xB,yB),圖4-5中(Steiner-point Location Region, SLR)為史丹爾端點的定義區域,史丹爾端點的移動不能超出這個 範圍,以數學式表示如下所示:

( ) ( ) ( )

{ }

( ) ( ) ( )

{

R A B R A B

}

B A R B

A R

y , y , y Max y

, y , y Min

| y x,

and , x , x , x Max x

, x , x Min

| y x, : SLR

y

x

………(4-1) C(xC,yC)的xC是取R、A、B三個端點的x座標中間值,yC是取R、A、B三 個端點的y座標中間值,以數學式來表示如下所示:

(

R A B

)

C

(

R A B

)

C Medium x ,x ,x and y Medium y ,y ,y

x = = ………(4-2)

C R

A

B L

A

L

B

L

R

? y P

? x L

PA

L

PR

L

PB

SLR

C R

A

B L

A

L

B

L

R

△y P

△x L

PA

L

PR

L

PB

SLR 圖 4-5 Y型態線段長度定義

(39)

Medium()為取三數值的中間值函數,C端點至R、A、B三個端點的三 個連接線段分別為LR、LA、LB,P端點分別至R、A、B三個端點的三個連接 線段分別為LPR、LPA、LPB,C端點和P端點的水平距離以∆x表示,C端點和P 端點的垂直距離以∆y表示,以數學式來表示如下所示:

C P

C P

P B P B

P A P A

P R P R

C B C B

C A C A

C R C R

y y y

x x x

y y x x

y y x x

y y x x

y y x x

y y x x

y y x x

= Δ

= Δ

− +

=

− +

=

− +

=

− +

=

− +

=

− +

=

PB PA PR B A R

L L L L L L

…………(4-3)

位置

區域 R端點的位置狀態 P端點的位置狀態

Region I UR,VR 1,1 U,V -UR,-VR Region II UR,VR -1,1 U,V UR,-VR Region III UR,VR -1,-1 U,V UR,VR Region IV UR,VR 1,-1 U,V -UR,VR

表4-1 P端點和R端點在不同象限相對關係

如表4-1所示,(uR,vR)來表示R端點的位置狀態參數,定義R端點落於 第 一 區 域 時 , 它 的 (uR,vR)=(1,1) , R 端 點 落 於 第 二 區 域 時 , 它 的 (uR,vR)=(-1,1),R端點落於第三區域時,它的(uR,vR)=(-1,-1),R端點落 於第四區域時,它的(uR,vR)=(1,-1),接下來以(u,v)來表示R端點和P端點 的相對位置關係,假設P端點落於第一區域時,(u,v)=(-uR,-vR), 假設P 端點落於第二區域時,(u,v)=(uR,-vR),假設P端點落於第三區域時,

(40)

(u,v)=(uR,vR),假設P端點落於第四區域時,(u,v)=(-uR,vR)。

舉例說明,如下圖4-6所示,假設R端點在第三區域時,P端點分別在 坐落於四個不同區域時,LPR、LPA、LPB分別以LR、LA、LB搭配對△x、△y的 加減來表示,可以看的出來,u和v值分別為LPR=LR+△x+△y中△x和△y的 係數。

C

R

A

B

P in Region I LPR=LR+Ux+Uy LPA=LA+Ux-Uy LPB=LB-Ux+Uy Pin Region II

LPR=LR-Ux+Uy LPA=LA+Ux-Uy LPB=LB+Ux+Uy

Pin Region III LPR=LR-Ux-Uy LPA=LA+Ux+Uy LPB=LB+Ux+Uy

Pin Region IV LPR=LR+Ux-Uy LPA=LA+Ux+Uy LPB=LB-Ux+Uy

(u,v)=(1,1)

(u,v)=(-1,-1) (u,v)=(1,-1) (u,v)=(-1,1)

SLR

C

R

A

B

P in Region I LPR=LR+Ux+Uy LPA=LA+Ux-Uy LPB=LB-Ux+Uy Pin Region II

LPR=LR-Ux+Uy LPA=LA+Ux-Uy LPB=LB+Ux+Uy

Pin Region III LPR=LR-Ux-Uy LPA=LA+Ux+Uy LPB=LB+Ux+Uy

Pin Region IV LPR=LR+Ux-Uy LPA=LA+Ux+Uy LPB=LB-Ux+Uy

(u,v)=(1,1)

(u,v)=(-1,-1) (u,v)=(1,-1) (u,v)=(-1,1)

SLR

圖4-6 P端點和R端點在不同相對關係下的Y型態線段長度表示

因此,我們可以經由歸納化簡方式,可以得到下列的計算數學式為 ㄧ般化表示式,來表示Y型態上的三個線段長度為

{ 1, - 1 }

Δ Δ -

Δ - Δ

Δ Δ

B B

A A

+

= +

=

+ +

=

u,v

y x u L L

y v x u L L

y v x u L L

P P

R PR

………(4-4)

4.2.4 符合時序限制的前提下之下計算史丹爾端點可移動的區

(41)

本小節將介紹如何計算滿足時序限制的區域,首先介紹(Elmore)艾 爾摩延遲模式[2],線段π模型為基礎,本論文即是套用它,來計算內部 連線線段延遲時間,接下來介紹計算滿足時序限制的區域。由於史丹爾端 點的移動會影響到某些起始端點到終止端點的延遲時間,因此要確保史丹 爾端點移動之後每個來源端點到終止端點的延遲時間都在它的時序限制 之內。舉例說明如下圖4-7是一個繞線樹,S為來源端點,P為史丹爾端點 的原始位置,P’為移動之後的史丹爾端點位置,且符合時序條件下,

第一種情形為R端點為來源端的Y型態線段:

TA

A

LPR

LPA

LPB

B

TB

S R

TS P

TE

TA

A

LPRPR

L

LPAPA

L

LPBPB

L B

TB

S R

TS P

TE

'

LPA

'

LPR

'

LPB

P' L'PA

TA

A

LPR

LPA

LPB

B

TB

S

TS P

R TE

TA

A

LPRPR

L

LPAPA

L

LPBPB

L B

TB

S

TS P

R TE

'

LPA

'

LPR

'

LPB

P' LL''PAPA

'

L'PRPR

L

'

L'PBPB

L

P''

P

) ( )

( and ) ( )

(

必須維持 ' '

'

t i t i t i t i

p

B Breq

req A

A

≤ ≤

圖4-7 史丹爾繞線樹-R端點為來源端的Y型態線段

有效的移動史丹爾端點必須符合下列兩個限制為

) ( )

( and ) ( )

(

'

'

i t i t i t i

t

A

req B

req

………(4-5) 也就是說對於子樹A和子樹B上面的每一個終止端點來說,源頭端點

經過P’端點到每一個終止端點的延遲時間,都必須在它的時序限制之內,

主要重點,從P端點移到P’端點的延遲時間,一定要變好不能變差。

對於A子樹來說,將不等式左右兩端扣掉原本的延遲時間得到下列不

(42)

等式:

) ( )

( )

( )

'

(

i t i t i t i

t

A

A

reqA

A ………(4-6)

TA’小於TA,代表移動史丹爾端點P’後,TA’的延遲時間必須小於原來為 移動前之TA 的延遲時間,代入(Elmore Delay)艾爾摩延遲模式,化簡之後 得到下列數學式:

( ) ( )

{

( ) ( )

}

2 2

2 ) ( 2 )

(

) (

) (

' '

' ' ' '

' ' '

i t i t Min r

c C L L

r c C

L L

r C C c L L L

L r C C c L L L

L

c R R L L L c R R L L L

A req

T A A i

PA PA A

PA PA

B A PB

PA PR PR B

A PB

PA PR PR

R S PB PA PR R

S PB PA PR

A

⎟ ≤

⎜ ⎞

⎛ +

⎟⎟ −

⎜⎜ ⎞

⎛ + +

⎟⎠

⎜ ⎞

⎛ + + + +

⎟⎟ −

⎜⎜ ⎞

⎛ + + + +

+

+ +

+

− +

+ +

………(4-7)

再將Y型態線段做取代轉換:

{ 1 , 1 }

,

, ,

, ,

,

' ' '

' '

' ' '

'

Δ + Δ

= Δ

− Δ +

= Δ

+ Δ +

=

Δ + Δ

= Δ

− Δ +

= Δ

+ Δ +

=

v u

y x u L L

y v x L

L y v x u L L

y x u L L

y v x L

L y v x u L L

B PB A

PA R

PR

B PB A

PA R

PR

………(4-8)

可以化簡得到下列數學式:

( )

( )

{ }

( , , , ) 0

0 ) ( ) ( )

' )(

(

) ' )(

( ) ' ( )

(

) ' ( )

1 ( ) )

1 ( ( ) '

(

) '

' )(

1 ( )

' 2 )(

) 1 1 ( (

' ' 2 2

2 2 2

≤ Δ Δ

− Δ

− Δ +

+

Δ

− Δ +

+ Δ

− Δ +

+ +

Δ

− Δ +

+ + +

+ + +

Δ

− Δ +

Δ Δ

− Δ Δ

− + Δ

− Δ

y x v u f

i t i t Min c

y y R R

c x x R R r y y vC c vL L

r x x uC C

u c

uL L u L

rc y y v

rc y x y x v u rc x u x

A

A req

T A R i

S

R S B

B R

B A

B A R

A

………(4-9)

參考文獻

相關文件

Selcuk Candan, ”GMP: Distributed Geographic Multicast Routing in Wireless Sensor Networks,” IEEE International Conference on Distributed Computing Systems,

Shih and W.-C.Wang “A 3D Model Retrieval Approach based on The Principal Plane Descriptor” , Proceedings of The 10 Second International Conference on Innovative

Jones, &#34;Rapid Object Detection Using a Boosted Cascade of Simple Features,&#34; IEEE Computer Society Conference on Computer Vision and Pattern Recognition,

Dragan , “Provably good global buffering using an available buffer block plan”, IEEE International Conference on Computer-Aided Design, pp.. Cong, “Interconnect performance

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks”, the 16th IEEE International Conference on Computer Communications

Plumbley, “Beat Tracking with a Two State Model,” IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP 2005), vol. Honing, “Computational

Gu, “Corner Block List: An Effective and Efficient Topological Representation of Nonslicing Floorplan,” IEEE/ACM International Conference on Computer-Aided Design, pp.8–12,

CMAC Neural network model based on compose particle swarm optimization, International Conference on Computational Intelligence and Security Workshops, CISW, 212-215. Design