• 沒有找到結果。

導熱轉接點的插入

在文檔中 中華大學 碩士論文 (頁 52-57)

第四章 以降溫為目的之空白區塊重新分配和導熱轉接點的插入

4.2 導熱轉接點的插入

4.2.1 導熱轉接點的插入

導熱轉接點的插入比利用空白區塊分配的降溫效果更加明顯,導熱轉接點除 了本身不產生熱能外,與其他區塊間的熱阻更低,更容易將熱傳向導熱轉接點,

是一個比空白區塊更好的熱導體,不過導熱轉接點插入在不同層間,所以在上下 兩層必頇都有空白空間可以插入且一定會有一邊溫度較高,另一邊溫度較低,這 樣才會有熱傳導效應。

導熱轉接點在版面規劃中任意位置插入都會造成熱傳導的影響,我們想要將 晶片中心的熱往下傳遞,根據熱力學第二定律,熱量會從高溫傳向低溫,所以我 們插入導熱轉接點的位置上層溫度一定要比下層溫度高,如果下層較上層溫度高 的話,導熱轉接點會將我們下層的熱量傳到上方,這樣會使我們晶片中心溫度更 高,且無法將熱散出,造成晶片的損毀。

要找尋適合導熱轉接點插入位置,我們整個插入導熱轉接點的步驟可分為四 項,首先利用我們的二維區塊層級的熱模型分別計算各層溫度,並利用前面提到 的空白重新分配方法,先對三維版面規劃的各層降低最高溫度,在對各層做完空 白重新分配的動作,第二個步驟,我們再利用三維區塊層級的熱模型對整個三維 版面規劃做一次溫度的計算,並找出三維版面規劃中溫度最高的區塊,我們將對 這個最高溫區塊藉由導熱轉接點的插入來改善目前的最高溫度。第三個步驟為導 熱轉接點的插入,找到最高溫的區塊後將對它的下一層去作投影的動作,可知道 上下層區塊重疊的關係,如圖 4_12,假設目前計算後最高溫度為區塊 B,對區 塊 B 作投影後,可知和下層的區塊 A 和區塊 C 有關係後,並計算區塊 B 和區塊 A、C 間的溫差值,我們將先對溫差值最大的區塊去判斷是否可以插入導熱轉接 點。

Layer 1

A B

Layer 2

C

B A C

Layer 3

A B

C

Via insertion

Layer 1

A B

Layer 2

C

B A C

Layer 3

A B

C

Via insertion

(a) 空白分配後的 版面規劃

(b) 插入導熱轉接點 的版面規劃

圖 4_ 12 兩層版面規劃投影關係

在插入導熱轉接點的過程中會有幾種狀況,第一種是上下層剛好都有足夠的 空白空間供給導熱轉接點的插入,第二種是在上層版面規劃有可用空白空間可以 插入導熱轉接點,但下層區塊周圍沒有空白空間可以插入,區塊水帄或垂直可移 動距離為零,這時候我們可以改為對其他有投影關係的區塊去判斷是否有可用空 白空間可以插入導熱轉接點,我們將選擇溫差值次高的區塊去判斷是否可以插 入,若其投影區塊都剛好沒有空白空間可以插入導熱轉接點時,將對整個版面規 劃溫度第二高的區塊去作投影,並判断是否可以插入導熱轉接點。第三種狀況是 在上層版面規劃沒有可用空白空間的時候,如圖 4_13,我們將去計算除了目前 最熱區塊外的其他區塊是否有可移動空間,並找出這些有可移動空間的區塊中溫 度最高者,我們將對其判斷是否可插入導熱轉接點。

C w1 B

B w1 C

w1 S

S w1 w2

D w2

D

C w1 B

B w1 C

w1 S

S w1 w2

D w2

D

Via insertion

(a) 最熱區塊沒有空白空 間可以插入導熱轉接點

(b) 尋找第二高溫區塊且有 空間可以插入導熱轉接點

圖 4_ 13 當最熱區塊沒有空白空間時的作法

最後一個步驟是我們將導熱轉接點插入不同層間,根據之前提到我們將導熱 轉接點插入不同位置對溫度變化的不同影響又分為三種導熱區塊,所以在插入導 熱轉接點後,我們必頇去更新每層的區塊數,並利用三維區塊層級之熱模型重新 計算整個三維版面規劃的溫度,直到三維版面規劃的溫度沒有改善或是沒有空白 空間可以加入導熱轉接點,則停止整個流程。

在這有限的空白空間中,除了可以用來插入導熱轉接點,空白空間也可因不 同目的而放置不同的東西,如電容的插入或繞線也需要空白空間,沒有足夠的空 白空間會造成繞線的複雜度提高,且會造成一些物理上的效應,降低我們晶片的 可靠度,所以我們再插入導熱轉接點時,需考慮插入的數量,避免過度使用。我 們利用反覆法(Iterative approach)配合我們提出的區塊層級熱模型一次加入一個 導熱轉接點,慢慢降低晶片溫度,這樣的作法也可避免當加入導熱轉接點需要做 第二次空白重新分配時對相鄰區塊推動太多或是導熱轉接點過度使用。若遇到推 動其他區塊才能插入導熱轉接點時,要判斷插入後對溫度的影響,如果沒有改善 則取消導熱轉接點的插入,調整回原先的擺置結果,並找次高溫區塊做導熱轉接

4.2.2 以溫度為導向的導熱轉接點插入流程圖

Input

Calculate floorplan temperature by 2D block-level thermal

model

Find the hottest block and via

location

Insert via

Slack for via insertion Whitespace redistribution for

each layer

Calculate floorplan temperature by 3D block-level thermal

model for all blocks

Find other blocks have slack &

temperature is highest Transfer to three

types of block &

update each layer block number

Slack > 0

Finish

在文檔中 中華大學 碩士論文 (頁 52-57)

相關文件