日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > > 艾思后端實(shí)現(xiàn)

令人又愛又恨的ECO,它又回來了。

在上一講中,和大家一起討論地兩個(gè)關(guān)鍵話題:

  • 功能ECO的介入時(shí)機(jī)
  • eco_netlist的用法和技巧
    點(diǎn)擊查看上期文章:版圖ECO的那點(diǎn)事(上)
在這一講中,大家一起來看看ECO實(shí)現(xiàn)時(shí)候的小技巧。

ECO版圖實(shí)現(xiàn)的技巧和經(jīng)驗(yàn)

在實(shí)際的ECO中,版圖的實(shí)現(xiàn)是非常重要的步驟。是否能完成STA的腳本期望,是數(shù)據(jù)庫能否走向收斂的關(guān)鍵點(diǎn)。一般的STA對應(yīng)的ECO和相應(yīng)的修復(fù)方法如下:可以看到,ECO的物理實(shí)現(xiàn)就是兩種情形
  • size_cell
  • add buffer

這里邊最會產(chǎn)生的影響其實(shí)是面積器件的位置變動(dòng)(dis-placement)

通常的版圖和ECO流程如下圖,在sign-off階段,理想的是以類似silicon-freeze的方式進(jìn)行操作

ECO的簡明流程如下:

這里的關(guān)鍵節(jié)點(diǎn)是在,placement/legalization,任何器件的位置變動(dòng)帶來的意外的影響都有可能導(dǎo)致ECO無法按照期望方向進(jìn)行,這是因?yàn)?,原有?shù)據(jù)庫的cell的放置被調(diào)整,之前的繞線需要做相應(yīng)的調(diào)整,同時(shí)帶來更多的timing/驅(qū)動(dòng)能力的問題,這樣就會給數(shù)據(jù)庫帶來不期望的抖動(dòng)。為了盡可能保證原有數(shù)據(jù)庫的狀態(tài),這里需要引入一個(gè)新名詞:Minimal Physical Impact Flow(MPI):
為了實(shí)現(xiàn)MPI的效果,ICC給出了它的一套解決方案。

【敲黑板劃重點(diǎn)】


較小的dis-placement帶來更為穩(wěn)定的版圖數(shù)據(jù),繞線的挑戰(zhàn)也比較小,這個(gè)是MPI的核心思想下邊一起來看一下,如何使用合理的命令和流程來弱化legalization帶來的影響:

傳統(tǒng)的legalize命令在跑流程的時(shí)候,可以很好的進(jìn)行增量性的legalization,但是到了ECO這里,legalize的動(dòng)作相對于版圖的穩(wěn)定性而言,就是有點(diǎn)太大了,需要使用place_eco_cells來實(shí)現(xiàn)MPI:

從上邊這個(gè)截圖可以看出來,傳統(tǒng)的legalize模式,帶來的明顯的average/max dis-placement,但是place_eco_cell可以非常好的避免這種情況的發(fā)生。place_eco_cell可以實(shí)現(xiàn)MPI的目標(biāo),而且run-time速度也很快,這到底是為什么呢?天底下還有這么既省時(shí)又省力的兩全其美的好事情?
通常使用的legalize_placement -increment命令,它是一個(gè)全局命令,它會在需要legalize的cell就近找尋位置,如果找不到,那么就會push周圍的cell,從而在ECO cell就近產(chǎn)生足夠的空間,這樣會產(chǎn)生明顯的漣漪效應(yīng),尤其在高利用率的區(qū)域。但是place_eco_cell的行為完全不一樣,它的操作范圍完全是有用戶決定的,它的目的就是一個(gè):在規(guī)定的范圍內(nèi),完成目標(biāo)cell的legalization,如果在規(guī)定的區(qū)域內(nèi)(dis-placement threshold)找不到,它就直接放棄,較小的作用范圍,帶來的就是高速的執(zhí)行速度。
這里有一個(gè)test-case,一個(gè)全局的的時(shí)序修復(fù)(size_cell),基于同樣的改變,看看兩個(gè)命令的表現(xiàn):
  • CMD: legalize_placement -increment

    可以看到,這里有30871個(gè)cell的位置被改變,ECO的cell其實(shí)只有7081個(gè)cell。可見大約有23K個(gè)cell的移動(dòng),是為了來給ECO cell騰挪空間的。
  • CMD: place_eco_cell -eco_changed -displacement_threshold 10 -max_displacement_threshold 10

仔細(xì)看圖片描述,place_eco_cell的作用范圍只有10um,目標(biāo)cell也只有eco_changed的7081個(gè)cell,所以runtime極快。
在使用place_eco_cell之后,如何原始數(shù)據(jù)庫的cell并沒有被動(dòng)到,只有ECO_changed cell 被動(dòng)到,所以有一些沒法完成legalize的cell,需要使用legalize_placement -increment 再次調(diào)整,保證整個(gè)數(shù)據(jù)庫的legalization:

這里可以看到,使用legalize_placement -increment ,moved cell較之前會有所好轉(zhuǎn)。這樣通過兩步走的手段,可以有效地保證eco_changed的cell的legalization,也能最大限度地完成其他cell的原地不動(dòng)。這里附帶完整腳本流程圖如下:

本講小結(jié)

使用place_eco取代傳統(tǒng)命令legalize_placement來實(shí)現(xiàn)芯片的MPI的ECO策略。
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
關(guān)閉