• 沒有找到結果。

Yes

Yes

done

圖 倳倮倵债 HiBinLegalizer 修改後的流程

3.4.1 長 長 長寬 寬 寬比 比 比的 的 的精 精 精化 化 化

標準單元合法化的過程中,所有巨集的位置固定,因此對標準單元而言,視其為障礙物,可 想而知,巨集的分佈會影響最終合法化的結果;再者,倘若我們將晶片分割成均勻的格子,

不但會分割可放置的列亦會切割障礙物,想當然而,會直接影響標準單元的移動量。 假設單 元格的面積相同且單元格的密度低於闕密度值,但單元格的寬長比不同,如圖倳倮倶倮所示。明顯 地,可知左圖所得到的移動量較右圖所得到的移動量要來的好。 然而,ㄧ個設計中有許多的 巨集,但單元格只可有一個長寬比,此時該如何決定長寬比?而哪些巨集主宰整體的移動量?

我們首先想到的是巨集的平均長寬比,然而全域擺置的結果中,標準單元與巨集也可能有面積 重疊。由圖我們可以知道,若巨集與越多的標準單元面積重疊,其影響標準單元的移動量則越 大。因此,我們利用加權平均倨偷健偩偧偨側健偤 偡偶健偲偡偧健倩來求得單元格長寬比。 加權平均的定義如

倳倰

圖 倳倮倶债 決定寬長比的示意圖

下:

X 倽倖 w倨t1倩X倨t1倩 倫 w倨t2倩X倨t2倩 倫 · · · 倫 w倨tM倩X倨tM

w倨t1倩 倫 w倨t2倩 倫 · · · 倫 w倨tM倩 倨倳倮倶倳倩 倽

PM

i=1w倨ti倩X倨ti倩 PM

i=1w倨ti倩 倨倳倮倶倴倩

其中 w倨ti倩 是非負的權重值,X倨ti倩 是輸入資料。

給定 N 標準單元和 M 巨集,令 Aoverlap 是巨集 ti 與 N 偣健偬偬偳 之間的總交疊面積,而令 為 w倨ti倩 等於 倱 倫 Aoverlap,X倨ti倩 是巨集 ti 的寬或長。求得寬與長加權平均數倬 倖W 和 倖H。 此外倬 由圖 倳倮倶 ,我們可以發現倘若格子的邊界沿著巨集切割,會迫使標準單元遠離最近的 列。因此未避免此情況發生,網格的寬長比等於加權平均寬長比的倒數,也就是,

AR 倽 Wb

Hb 倽 H倖

W倖 倨倳倮倶倵倩

其中 Wb 和 Hb 分別為單元格的寬度與長度

3.4.2 總 總 總格 格 格數 數 數的 的 的初 初 初估 估 估

給定的全域擺置結果,倘若標準單元與巨集的分佈不均勻,則經分割合併的程序後,合併區域 的面積大小與目標標準單元個數亦可能分佈不均。再者,由於時間複雜度與合併區域內的標準 單元個數有關,因此,擁有愈多標準單元的合併區域,花費時間時間愈久。因此倬 我們以最多 標準單元個數的最大合併區域倨偭偡偸偩偭偵偭 偭健偲偧健偤倭偢偩偮倩倬 作為猜測格子總數的依據。

首先,令 Gx 和 Gy 分別為水平和垂直方向的格子數;總格數 G 即可表示成 Gx× Gy。 我們規律的改變總格數,經過多次試驗,比較最大合併區域內的標準單元個數,記錄有最少標 準單元個數的 Gb,x 和 Gb,y。圖 倳倮倷 是依個簡單找總格數的例子。

倳倱

圖 倳倮倷债 總格數的切法

3.4.3 決 決 決定 定 定總 總 總格 格 格數 數 數

前一小節,我們給出一個總格數 Gb,x× Gb,y倬然而為了提供更多的選擇,我們將單一的初估總 格數擴展定義成總格數區間,如下式

倨Gb,x− 倱倩倨Gb,y− 倱倩 ≤ GxGy ≤ 倨Gb,x倫 倱倩倨Gb,y倫 倱倩, ∀Gx, Gy ∈ N 倨倳倮倶倶倩

其中 Gx 和 Gy 分別為水平和垂直方向的格子數。 我們希望給出一個合適的格子尺寸,使得 Gx 和 Gy 接近前一小節給出的寬長比 AR 以及接近初估的總格數。我們定義誤差量

Est 倽 a|AR − r|

AR 倫 b|Gb,xGb,y− GxGy|

Gb,xGb,y 倨倳倮倶倷倩 r 倽 Gx

Gy 倨倳倮倶倸倩

其中 a 和 b 是介於 倰 到 倱 的常數。 因此,在總格數區間下,對所有可能的 Gx 和 Gy,記錄 有最小誤差量 Gx 和 Gy,作為最終的格子尺寸。

倳倲

4

相關文件