新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 面向有挑戰(zhàn)性功能塊的時(shí)序收斂技術(shù)

面向有挑戰(zhàn)性功能塊的時(shí)序收斂技術(shù)

作者: 時(shí)間:2010-05-07 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:
始終是高性能處理器的一個(gè)大問(wèn)題。如測(cè)試尺寸、有用偏斜等平常技術(shù)可能不足以解決某些案例中違規(guī)行為。本文將探討以前深亞微米項(xiàng)目中所用的一些技術(shù),這些技術(shù)以眾所周知的功能為基礎(chǔ),但卻不局限于這些功能,包括:預(yù)測(cè)塊級(jí)邊界時(shí)序問(wèn)題、增量布局迭代、時(shí)鐘門(mén)控克隆戰(zhàn)略選擇、采用線路延時(shí)最大程度降低不同時(shí)序角點(diǎn)下延時(shí)差異。.

關(guān)鍵詞索引:、邊界時(shí)序、布局迭代、時(shí)鐘門(mén)控克隆、線路延時(shí)

第I章:介紹

中,一直是個(gè)問(wèn)題,解決這個(gè)問(wèn)題的方法多式多樣。本文將探討幾種可幫助盡早檢測(cè)到可能要在非常晚期設(shè)計(jì)階段才會(huì)出現(xiàn)的問(wèn)題以及降低正常PR階段TNS(負(fù)余量總和)的方法。這些方法以Magma Talus現(xiàn)有功能為基礎(chǔ),但功能的使用有經(jīng)過(guò)進(jìn)一步擴(kuò)展或是重新考量。

第II章:繞障I/O密度地圖

隨著芯片規(guī)模的日益壯大,層次化設(shè)計(jì)正逐漸成為許多芯片設(shè)計(jì)的一種常用方法。在層次化設(shè)計(jì)中,最高層設(shè)計(jì)師(top level designer)會(huì)將整個(gè)芯片劃分為多個(gè)小塊。每個(gè)小塊作為一個(gè)獨(dú)立功能塊,將貫穿整個(gè)流程,最后再由最高層設(shè)計(jì)師將這些小塊集成為完整芯片。這樣一來(lái),集成的時(shí)候塊邊界難免會(huì)有時(shí)序和布線問(wèn)題。通常,這些問(wèn)題的修復(fù)技術(shù)是要落實(shí)到功能塊上,將由塊設(shè)計(jì)師(block designers)應(yīng)用以進(jìn)行修復(fù)工作。

在一些案例中,功能塊設(shè)計(jì)師將發(fā)現(xiàn)很難在布線后晚期階段修復(fù)這些邊界問(wèn)題,這會(huì)導(dǎo)致項(xiàng)目進(jìn)度大大延遲。

圖1是一例這種問(wèn)題。在功能塊左上角有個(gè)大型宏,它占用了許多布線層,在其周?chē)鷧^(qū)域造成了非常高的擁塞情況。圖中加亮線是貫穿這個(gè)區(qū)域的一條路徑,中間插入了幾個(gè)緩沖區(qū)。有幾點(diǎn)應(yīng)多加注意:

1.這條路徑是往下走的,因?yàn)樵诖笮秃甑谋泵鏇](méi)有足夠空間用于緩沖區(qū)、沒(méi)有足夠?qū)к売糜诓季€。
2.線路中間部分由于高度擁塞布線而呈割階狀態(tài)。
3.很難這個(gè)宏旁邊找個(gè)位置插入新的緩沖區(qū)以修復(fù)轉(zhuǎn)換和建立違規(guī)。

上述第1點(diǎn)和第2 點(diǎn)是導(dǎo)致最高層時(shí)序差的罪魁禍?zhǔn)祝?點(diǎn)則是導(dǎo)致這個(gè)問(wèn)題難以修復(fù)的原因所在。布線后功能塊層中內(nèi)部狀態(tài)對(duì)于時(shí)序和布線來(lái)說(shuō)還是很不錯(cuò)的;但當(dāng)最高層設(shè)計(jì)師開(kāi)始修復(fù)這個(gè)時(shí)序問(wèn)題后,插入了許多單元,布線也發(fā)生了很大變化,這些均使得內(nèi)部時(shí)序和布線變得更為糟糕且難以融合。

原因相當(dāng)簡(jiǎn)單:沒(méi)有足夠資源可留給最高層設(shè)計(jì)師來(lái)修復(fù)這個(gè)時(shí)序問(wèn)題。但如何才能讓塊設(shè)計(jì)師知道他需要在哪里保留資源和保留多少資源呢?功能塊設(shè)計(jì)后內(nèi)部時(shí)序和布局很不錯(cuò),這時(shí)要假設(shè)將會(huì)有問(wèn)題時(shí)真得特別困難。

通過(guò)分析具有類(lèi)似問(wèn)題的一些功能塊后,我們發(fā)現(xiàn)了幾個(gè)能反映最高層設(shè)計(jì)潛在困難的指標(biāo),比如:邊界網(wǎng)路繞障嚴(yán)重程度。繞障(Detour)雖可在一定區(qū)域?qū)崿F(xiàn)好的DRC(設(shè)計(jì)規(guī)則檢查)數(shù)目,但這好DRC背后卻隱藏著問(wèn)題。對(duì)于擁塞嚴(yán)重的區(qū)域,時(shí)序水平一直在降低,新插入的單元先是會(huì)讓好的布線變差,然后還會(huì)變得不可布線。

為了評(píng)估邊界網(wǎng)路繞障嚴(yán)重程度,設(shè)計(jì)師首先要計(jì)算這些網(wǎng)路的密度,接著再以顏色直觀顯示其嚴(yán)重級(jí)別。這個(gè)過(guò)程分為5個(gè)步驟:

1.顯示功能塊的I/O引腳密度。
2.調(diào)整初始平面布局和引腳分布以避免明顯的擁塞問(wèn)題。
3.找出所有連接I/O引腳的繞障網(wǎng)路
4.顯示所有連接繞障網(wǎng)路的I/O引腳的密度。
5.根據(jù)步驟調(diào)整平面布局和引腳分布。

關(guān)鍵是第4步,它意味著最高層修復(fù)工作哪里將存在潛在困難。每個(gè)步驟的詳細(xì)內(nèi)容如下所述:

步驟1
首先,你可將每個(gè)邊界分為多個(gè)小段;可基于個(gè)人喜好,設(shè)50um或100um作為一段長(zhǎng)度。其次,計(jì)算出每小段中所有非PG(non-PG)引腳數(shù)量,基于每段中引腳數(shù)以不同顏色來(lái)加亮這些片段;為每小段選擇適當(dāng)顏色閾值很重要,因?yàn)樗苯佑绊懙侥銓?duì)一個(gè)區(qū)域是否具有高引腳密度的印象。設(shè)計(jì)師可基于之前項(xiàng)目經(jīng)驗(yàn)來(lái)設(shè)置顏色。你需要將所有信號(hào)引腳層、類(lèi)似模擬的特殊引腳層都計(jì)算在內(nèi),但電源引腳除外??梢暡糠挚梢酝ㄟ^(guò)命令“ui layout sketch line …”繪制,而所有其它部分則可通過(guò)自帶Tcl來(lái)完成。

步驟2
步驟2中顯示了在一些區(qū)域里I/O引腳密度高,那么我們需將存儲(chǔ)器從高密度區(qū)域(白色區(qū)域最高,紅色區(qū)域其次)移出。

步驟3
完成布線后,接下來(lái)是要找出所有連接I/O引腳的繞障網(wǎng)路。判斷一個(gè)網(wǎng)路是否是繞障網(wǎng)路,可通過(guò)對(duì)比網(wǎng)路線長(zhǎng)與其所連接引腳的曼哈頓距離(Manhattan distance)來(lái)完成。設(shè)計(jì)師可依據(jù)個(gè)人需求來(lái)設(shè)置20%或30%作為閾值;當(dāng)然若能設(shè)置最短長(zhǎng)度就更好了,這樣就可忽略不計(jì)比它更短的網(wǎng)路;若沒(méi)有這個(gè)設(shè)置,設(shè)計(jì)師將會(huì)看到許多短的“繞障”網(wǎng)路,而實(shí)際上這些都是錯(cuò)誤警報(bào)。

在測(cè)試功能塊中,1對(duì)1連接占了絕大部分?;谶@點(diǎn),作者假設(shè)忽略多連接網(wǎng)路不會(huì)對(duì)最終結(jié)果有任何影響,因此此次demo只計(jì)算了一個(gè)輸入一個(gè)輸出的網(wǎng)路,大大簡(jiǎn)化了計(jì)算腳本編寫(xiě)。當(dāng)然,這種假設(shè)還需要經(jīng)過(guò)其它設(shè)計(jì)的驗(yàn)證。

這次計(jì)算將產(chǎn)生一張所有繞障I/O網(wǎng)路名單。不過(guò),如果直接就加亮所有這些網(wǎng)路(如圖3),設(shè)計(jì)師幾乎說(shuō)不出哪里布線真的很差,哪里還不錯(cuò)可以繼續(xù)當(dāng)前布線。

圖3中上區(qū)域看起來(lái)最為擁擠,但事實(shí)上,它既不是根源所在,也不是最關(guān)鍵區(qū)域。我們需要以另一種可直接反映問(wèn)題所在的方式來(lái)提供信息。


上一頁(yè) 1 2 3 4 5 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉