• 沒有找到結果。

時間限制下的佈局縮小

在文檔中 中 華 大 學 (頁 33-45)

第四章 考慮延遲時間因素及以良率為導向之標準元件佈局修改

4.2 時間限制下的佈局縮小

1. 是否有一些線段再放大寬度,它的延遲時間會再下降,這個做法重要面積就會維 持在接近零或等於零。

2. 再來我們會對幾層佈局層對延遲時間的影響做個別評估,優先對延遲時間影響大 的佈局層做佈局縮小工作,以儘量達到良率做最佳化(重要面積最小化),且延遲 時間達到需求。

圖 4.2 時間限制下的佈局縮小示意圖

4.1 良率為導向的佈局放寬

在這個階段裡主要的工作是放寬佈局將良率做最大化的處理,這種處理放寬的技 術,目前稱之為重要面積最小化(critical area minimization)。但由於佈局被做放寬 的修改,所以標準元件的延遲時間可能變大,造成標準元件的效能下降。

24

4.1.1 良率為導向的佈局放寬演算法

良率為導向的佈局放寬的演算法如下:

輸入 : 給一個標準元件的佈局 L,及做一些限制

步驟 1 : 判斷如果 L 是複雜型態標準元件,就將它分割成基本型態標準元件,後再分 析。

步驟 2 : 對每一個基本型態標準元件做下列處理:

步驟 2.1: 對每一條垂直線,建立它的相鄰圖形

步驟 2.2 : 對每一條垂直線,計算它開路及短路型態的重要面積

步驟 2.3: 對垂直線做線寬(width)及間距(space)的放寬,讓重要面積小化 步驟 2.4: 對每一條垂直線,重新安排它的位置且延伸相對應的水平線 步驟 3 : 將上個步驟的結果做組合,並建立佈局

4.1.2 佈局放寬的相鄰圖形

我們這篇論文利用相鄰圖形(Adjacent graph)的方式,來建出標準元件佈局的相關 資訊,如線段的寬度(wire width),相鄰間隔(Adjacent Spacing),這樣就可以在標準 元件在做放寬或縮小時,對一些權重(weight)做調整。

25

G( V , E ) : 代表是一個相鄰圖形

V : 代表是一個相鄰圖形端點的集合,這裡的一個端點,代表是一個垂直線 W(V) : 代表一個相鄰圖形端點的權重,這裡權重值代表是線寬

E : 代表是一個相鄰圖形邊的集合

W(E) : 代表一個相鄰圖形邊的權重,這裡權重值代表是相鄰間隔

另外對垂直線來說,在線段的寬度(wire width),相鄰間隔(Adjacent Spacing),都會 有一些限制,列出如下:

4.1.3 佈局放寬的相鄰圖形轉換

佈局放寬的相鄰圖形轉換的方法如下:

1.首先我們先建出垂直線的分布圖,這個時候就要抓出線段的寬度(wire width)相鄰間 隔(Adjacent Spacing),及線段的使用層(layer)

2.在來就是將以建好的垂直線的分布圖,轉換為相鄰圖形(Adjacent graph) 如圖 4.3 佈局放寬的相鄰圖形轉換示意圖所示:

W(V) : 代表端點的權重,這裡權重值是代表線寬 W(E) : 代表邊的權重,這裡權重值是代表相鄰間隔

圖 4.3 佈局放寬的相鄰圖形轉換示意圖

26

4.1.4 開路型態的重要面積最小化

當佈局的相鄰圖形轉換完成時,就可以開始調整線段的寬度(wire width)及相鄰間 隔(Adjacent Spacing),而調整線段的寬度(wire width)是可以解決開路型態的問題, 所以開路型態的重要面積最小化的方法,就是放大線寬,讓重要面積為零,達到重要面 積最小化的目的。

而放大線寬的公式如下:

W ≥ DS, DW = 0

W < DS, DW = DS – W, W is the width of layout’s vertical line

W : 線段的寬度(wire width) DS : 微小顆粒直徑

DW : 所需放寬的線寬

* 當線寬大於或等於微小顆粒直徑時,所需放寬的線寬為零

* 當線寬小於微小顆粒直徑時,所需放寬的線寬為微小顆粒直徑減去線寬

假設微小顆粒直徑為 6um,則圖 4.4 調整佈局線寬的相鄰圖形轉換示意圖,為轉換 前,轉換後的結果。 轉換後的結果 ”6/2”,6 表示是目前的線寬,2 表示是須放寬的 線寬。

圖 4.4 調整佈局線寬的相鄰圖形轉換示意圖

27

4.1.5 短路型態的重要面積最小化

當佈局的相鄰圖形轉換完成時,就可以開始調整線段的寬度(wire width)及相鄰間 隔(Adjacent Spacing),而調整相鄰間隔(Adjacent Spacing)是可以解決短路型態的問 題, 所以短路型態的重要面積最小化的方法,就是放大相鄰線段的寬度,讓重要面積為 零,達到重要面積最小化的目的。而放大線寬的公式如下:

S ≥ DS, DSW = 0

S < DS, DSW = DS – S, S is the space of adjacent vertical line of same layer.

S : 相鄰間隔(Adjacent Spacing) DS : 微小顆粒直徑

DSW : 所需放寬的線寬

* 當相鄰間隔大於或等於微小顆粒直徑時,所需放寬的相鄰間隔為零

* 當相鄰間隔小於微小顆粒直徑時,所需放寬的相鄰間隔為微小顆粒直徑減去相鄰間隔

* 另外相鄰間隔還需是相同的佈局層

假設微小顆粒直徑為 6um,則圖 4.5 調整佈局相鄰間隔的相鄰圖形轉換示意圖,為 轉換前,轉換後的結果。 轉換後的結果 ”20/0”,20 表示是金屬層 1 目前的相鄰間隔,

0 表示是須放寬金屬層 1 的相鄰間隔。

圖 4.5 調整佈局相鄰間隔的相鄰圖形轉換示意圖

28

4.1.6 佈局的相鄰圖形反轉換

在完成開路型態 / 短路型態的重要面積最小化後,再將它重建還原回佈局圖,如(圖 4.6) 調整佈局放寬後的相鄰圖形轉換示意圖。

圖 4.6 調整佈局放寬後的相鄰圖形轉換示意圖

4.1.7 時間複雜度的計算

對良率為導向的佈局放寬演算法做時間複雜度的計算,計算的過程如下:

整理時間複雜度的計算結果如下:

所以對軟體的時間複雜度為 O(mn)

29

4.2 時間限制下的佈局縮小

在這個階段裡主要的工作,是去檢查第一階段已完成佈局放寬工作標準元件的延遲 時間,如果大於設定的目標時間,就要做處理,處理的方法有二:

1. 去對線段做計算,找出最佳寬度(Optimal width, Wopt),如果線段寬度小於最 佳寬度,則可以再放寬線段,到最佳寬度。

2. 對幾層佈局層延遲時間的影響做個別評估,優先對延遲時間影響大的佈局層做佈 局縮小工作,而也是往最佳寬度(Optimal width, Wopt)去接近,以儘量達到重 要面積最小化(良率最佳化)。

4.2.1 線段的最佳化寬度

在圖 4.7 線段的最佳化寬度的說明示意圖裡,有線段 e, 它的寬度 w, 長度 l, 電 流從 D 端流入,S 端流出。 將它轉換成 RC 網路,Rso 是 D 端之前的電阻總和,Csi 是 S 端之後的電容總和,線段的最佳化寬度(Optimal width, Wopt)會是 :

圖 4.7 線段的最佳化寬度的說明示意圖

30

如果當線段的寬度小於最佳寬度(Wopt),則可以將線段再放寬(WireExtend, W1),

到達最佳寬度。 如果當線段的寬度大於等於最佳寬度(Wopt),則無法再將線段再放寬,

只能對線段做縮小工作。

4.2.2 時間限制下的佈局縮小演算法

時間限制下的佈局縮小演算法如下:

步驟 1 : 判斷如果 L 是複雜型態標準元件,就將它分割成基本型態標準元件,後再分 析。

步驟 2 : 對每一個基本型態標準元件做下列處理 步驟 2.1 : 計算基本型態標準元件的延遲時間 步驟 2.2: 計算所有垂直線段的最佳化寬度

步驟 3 : 如果 L 的延遲時間,小於限定的延遲時間,則跳到步驟 4 分類:

W1(線段的寬度小於最佳寬度(Wopt)) W2(線段的寬度大於等於最佳寬度(Wopt))

如果有 W1 的線段,就做線段延伸的工作,做完後跳到步驟 2

否則,就做縮小佈局的工作,而也是往最佳寬度(Optimal width, Wopt)去接近,

但如果先到達最小線寬(Min. Wdith)就必須停止縮小,上述工作結束後,跳 到步驟 2

步驟 4 : 重新安排垂直及水平線段的位置

步驟 5 : 將上個步驟 的結果做組合重建立佈局,計算標準元件的延遲時間

31

4.2.3 佈局縮小的相鄰圖形轉換

佈局縮小的相鄰圖形轉換的方法如下:

1. 首先我們先建出垂直線的分布圖,這個時候就要抓出線段的寬度(wire width) 相鄰間隔(Adjacent Spacing),及線段的使用層(layer)

2. 在來,就是將以建好的垂直線的分布圖,轉換為相鄰圖形(Adjacent relation graph)

如圖 4.8 佈局縮小的相鄰圖形轉換示意圖所示:

圖 4.8 佈局縮小的相鄰圖形轉換示意圖

4.2.4 線段延伸(Wire Extending)

在計算線段的最佳寬度(Wopt)後,如果線段的寬度小於最佳寬度(Wopt),則可以將 線段再放寬,到達最佳寬度,這個動作我們稱之為線段的延伸(Wire Extending)。

32

公式如上,它是將線段放寬,與最佳寬度同度,而重要面積(CA)還是為零,標準元 件的延遲時間下降。

如圖 4.9 線段延伸的佈局放寬相鄰圖形圖,原先線寬為 6um,而最佳寬度為 8um,

所以在線段延伸後,原先線寬為 6um 變為 8um。

圖 4.9 線段延伸的佈局放寬相鄰圖形圖

4.2.5 線段縮小(Wire Narrowing)

1. 先評估不同佈局層的延遲時間,依對延遲時間影響大的佈局層,列出先後順序。

2. 優先對延遲時間影響大的佈局層做佈局縮小工作,以儘量達到良率做最佳化(重要面 積最小化)。

3. 如果修改佈局後標準元件的延遲時間,大於限定的延遲時間,就回到“2”做下一個 佈局層的佈局縮小工作。

33

以上是線段的縮小的公式,當執行上述的公式,線寬與延遲時間會變小,重要面積 (CA)會變大(良率會下降)。 圖 4.10 線段縮小的佈局相鄰圖形圖,是將 Poly1(P1),

Metal1(M1),Metal2(M2),個別做線段縮小,直到達到限定的延遲時間。

圖 4.10 線段縮小的佈局相鄰圖形圖

4.2.6 佈局縮小的相鄰圖形反轉

在為了符合延遲時間的要求,所以會使用 線段延伸 / 線段縮小的方法來對佈局再 做修改,但還是會是以良率最佳化(重要面積最小化)為目的。

當完成時間限制下的佈局縮小後,再將它重建還原回佈局圖,如圖 4.11 調整佈局 縮小後的相鄰圖形轉換示意圖。

34

圖 4.11 調整佈局縮小後的相鄰圖形轉換示意圖

4.2.7 時間複雜度的計算

對時間限制下的佈局縮小演算法做時間複雜度的計算如下:

所以對軟體的時間複雜度為 O(mn)

35

在文檔中 中 華 大 學 (頁 33-45)

相關文件