介紹了一種標(biāo)準(zhǔn)芯片單元可連通性的檢測(cè)方法,可以有效檢測(cè)標(biāo)準(zhǔn)芯片單元的可連通性,在布局布線(xiàn)階段之前,改進(jìn)標(biāo)準(zhǔn)單元的版圖,或者增加布局布線(xiàn)的約束條件,從而保證標(biāo)準(zhǔn)芯片單元的設(shè)計(jì)對(duì)布局布線(xiàn)的友好性。通過(guò)對(duì)標(biāo)準(zhǔn)芯片單元的檢測(cè)和改進(jìn),可以有效提高芯片的整體可連通性,從而節(jié)約布局布線(xiàn)階段的工作時(shí)間,減少開(kāi)發(fā)周期,提高芯片良率。本方法可以實(shí)現(xiàn)標(biāo)準(zhǔn)芯片單元庫(kù)的全覆蓋檢測(cè),通過(guò)優(yōu)化算法,可以在盡可能減少芯片測(cè)試工作量的前提下,實(shí)現(xiàn)90%以上的隨機(jī)場(chǎng)景再現(xiàn)。通過(guò)在不同技術(shù)節(jié)點(diǎn)標(biāo)準(zhǔn)芯片單元檢測(cè)中的應(yīng)用,有效地捕獲了標(biāo)準(zhǔn)芯片單元連通性的問(wèn)題,在數(shù)字后端布局布線(xiàn)之前,改進(jìn)或阻止了可能出現(xiàn)的不友好場(chǎng)景,提升了芯片后端設(shè)計(jì)的效率。
在市場(chǎng)需求的驅(qū)動(dòng)下,近40年來(lái),芯片的設(shè)計(jì)和制造技術(shù)得到了突飛猛進(jìn)的發(fā)展。從45nm到28nm,從16nm到10nm,芯片制造技術(shù)一路高歌猛進(jìn),每隔一到兩年時(shí)間,芯片的設(shè)計(jì)和制造技術(shù)就會(huì)被推進(jìn)到下一個(gè)技術(shù)節(jié)點(diǎn)。在人們津津樂(lè)道享受著芯片性能提升帶來(lái)便利的同時(shí),芯片的設(shè)計(jì)和制造正在面臨著巨大的挑戰(zhàn)。
基于物理學(xué)定律,工程師通過(guò)縮小芯片尺寸來(lái)提升其性能。作為一個(gè)實(shí)際問(wèn)題,把芯片變得越來(lái)越小是非常困難的。現(xiàn)在芯片設(shè)計(jì)已經(jīng)將芯片各個(gè)組成部分之間的空間縮小到了十幾納米,但邏輯芯片的管腳數(shù)量不會(huì)因?yàn)樾酒叽绲目s小而減少,如何把百萬(wàn)數(shù)量級(jí)的管腳按照邏輯關(guān)系連接好,是不得不面對(duì)的技術(shù)問(wèn)題。隨著制造工藝越來(lái)越復(fù)雜,設(shè)計(jì)規(guī)則也越來(lái)越復(fù)雜。工藝每推進(jìn)一個(gè)技術(shù)節(jié)點(diǎn),后端布局布線(xiàn)的設(shè)計(jì)規(guī)則都會(huì)有兩到三倍增加,這給芯片設(shè)計(jì)和制造帶來(lái)很大的挑戰(zhàn)。標(biāo)準(zhǔn)芯片單元作為最小的邏輯單元,在整個(gè)芯片上會(huì)被大量重復(fù)使用,所以標(biāo)準(zhǔn)芯片單元的設(shè)計(jì)顯得尤為重要。如果標(biāo)準(zhǔn)芯片單元的可連通性出現(xiàn)問(wèn)題,將會(huì)導(dǎo)致布局布線(xiàn)無(wú)法滿(mǎn)足設(shè)計(jì)規(guī)則要求,甚至造成芯片斷路失效。本文介紹一種標(biāo)準(zhǔn)芯片單元可連通性的檢測(cè)方法,可以實(shí)現(xiàn)標(biāo)準(zhǔn)芯片單元庫(kù)的全覆蓋檢測(cè),并模擬實(shí)際布局布線(xiàn)中的隨機(jī)場(chǎng)景來(lái)預(yù)測(cè)可能出現(xiàn)的問(wèn)題,在實(shí)際應(yīng)用中,取得了很好的效果。
1影響標(biāo)準(zhǔn)芯片單元連通性的主要因素
標(biāo)準(zhǔn)芯片單元的管腳形狀和排列布局會(huì)影響芯片的可連通性。在標(biāo)準(zhǔn)芯片單元庫(kù)中,與門(mén)是一種使用最頻繁的標(biāo)準(zhǔn)單元。圖1(a)是與門(mén)的邏輯電路圖,有兩個(gè)輸入管腳和一個(gè)輸出管腳。在標(biāo)準(zhǔn)芯片單元的版圖上,對(duì)應(yīng)的也有兩塊金屬用于輸入端的連接,一塊金屬用于輸出端的連接,如圖1(b)。
在進(jìn)行版圖設(shè)計(jì)時(shí),版圖工程師會(huì)對(duì)版圖本身的設(shè)計(jì)規(guī)則進(jìn)行檢查,同時(shí)預(yù)留管腳的外連空間。管腳的外連方法一般有兩種,一種是在管腳上打過(guò)孔,然后再用金屬層接出;另一種方法是把管腳做金屬層延伸,然后在通過(guò)跳層方法接出。不管采用哪種方法把管腳引出,在進(jìn)行標(biāo)準(zhǔn)芯片單元版圖設(shè)計(jì)時(shí),這些引出的金屬層都是不存在的,版圖工程師只能預(yù)估可能的接線(xiàn)方法來(lái)預(yù)留空間。
影響管腳接線(xiàn)的設(shè)計(jì)規(guī)則主要有:金屬線(xiàn)與金屬線(xiàn)之間的距離、金屬端頭之間的距離、過(guò)孔被金屬層覆蓋的面積、跨層金屬之間的距離等。圖2(a)~圖2(c)是一些常見(jiàn)的設(shè)計(jì)規(guī)則。
設(shè)計(jì)規(guī)則比較復(fù)雜,有些場(chǎng)景需要考慮多個(gè)金屬之間的相互影響。如果版圖工程師沒(méi)有能充分考慮到這些可能存在的場(chǎng)景,或者對(duì)設(shè)計(jì)規(guī)則的理解不充分,就有可能在實(shí)際連線(xiàn)中出現(xiàn)管腳不能被引出,或者管腳能夠被引出,但引線(xiàn)違反了設(shè)計(jì)規(guī)則。
在實(shí)際應(yīng)用中,標(biāo)準(zhǔn)芯片單元有可能是緊挨著放在一起,這時(shí)候兩個(gè)單元的管腳就會(huì)相互影響。版圖工程師很能考慮這種情形,因?yàn)楹茈y預(yù)測(cè)到哪些標(biāo)準(zhǔn)芯片單元會(huì)被放在一起。圖3是兩個(gè)標(biāo)準(zhǔn)芯片單元放在一起的場(chǎng)景。兩個(gè)輸入端管腳離得很近,而且都需要引出,引出線(xiàn)之間很容易觸發(fā)設(shè)計(jì)規(guī)則,如果預(yù)留的空間不足,就有可能造成管腳無(wú)法引出的情況。
2 標(biāo)準(zhǔn)芯片單元連通性檢測(cè)的思路
標(biāo)準(zhǔn)芯片單元是孤立的元器件,為了檢測(cè)芯片管腳的可連通性,需要把標(biāo)準(zhǔn)芯片單元連接一起,通過(guò)實(shí)際布局布線(xiàn)來(lái)檢測(cè)管腳設(shè)計(jì)的合理性。在標(biāo)準(zhǔn)單元設(shè)計(jì)初期,標(biāo)準(zhǔn)芯片單元的功能可能還沒(méi)有完善,數(shù)量也不足以組成一個(gè)真正的邏輯芯片[10]。同時(shí)做一個(gè)真正的邏輯網(wǎng)表和完成完整的數(shù)字后端,需要的時(shí)間也比較長(zhǎng),版圖工程師可能沒(méi)有經(jīng)驗(yàn)和時(shí)間來(lái)做這種測(cè)試。如果能夠簡(jiǎn)單地把這些標(biāo)準(zhǔn)芯片單元連接起來(lái),并做快速的布局布線(xiàn),將會(huì)幫助工程師快速地檢測(cè)芯片管腳的連通性。
基于以上需求,本文用腳本產(chǎn)生一個(gè)網(wǎng)表,然后使用innovus的布局布線(xiàn)工具來(lái)模擬標(biāo)準(zhǔn)芯片單元的管腳連接情況。圖4是本方法的流程圖。
從標(biāo)準(zhǔn)芯片單元庫(kù)中任選兩個(gè)驅(qū)動(dòng)單元和接收單元,用驅(qū)動(dòng)單元來(lái)連接單元庫(kù)的標(biāo)準(zhǔn)單元,所有標(biāo)準(zhǔn)單元的管腳連接到接受單元。使用這種方法來(lái)產(chǎn)生隨機(jī)網(wǎng)表,其目的是遍歷標(biāo)準(zhǔn)單元庫(kù)的所有標(biāo)準(zhǔn)單元,保證每個(gè)標(biāo)準(zhǔn)單元的管腳都被連接。
使用這個(gè)隨機(jī)網(wǎng)表,在innovus平臺(tái)進(jìn)行布局,通常布局的密度從小到大。先使用較小的布局密度,這時(shí)標(biāo)準(zhǔn)單元放在一起的幾率不大,可以檢查標(biāo)準(zhǔn)單元本身的連通性。然后逐步增加布局密度,這時(shí)標(biāo)準(zhǔn)單元放在一起的幾率增大,可以檢查標(biāo)準(zhǔn)單元之間的相互影響。
在布線(xiàn)階段,通過(guò)參數(shù)設(shè)置,來(lái)限制管腳連接的方向和位置,可以實(shí)現(xiàn)特定目的的測(cè)試。也可以通過(guò)設(shè)置參數(shù)來(lái)模擬實(shí)際芯片設(shè)計(jì)時(shí)的場(chǎng)景,比如,增大連接線(xiàn)的寬度,增加過(guò)孔的數(shù)量,添加靜電隔離線(xiàn),等等,從而盡可能再現(xiàn)實(shí)際應(yīng)用場(chǎng)景。
如果標(biāo)準(zhǔn)芯片單元的管腳連通性出現(xiàn)問(wèn)題,innovus會(huì)在管腳處留下違規(guī)標(biāo)記。我們可以根據(jù)違規(guī)標(biāo)記找到對(duì)應(yīng)的設(shè)計(jì)規(guī)則,對(duì)管腳的形狀進(jìn)行分析,研究如何改進(jìn)管腳的形狀來(lái)避免管腳引線(xiàn)觸發(fā)設(shè)計(jì)規(guī)則。如果芯片單元的管腳受空間限制,不能夠進(jìn)行更改,則研究是否可能通過(guò)增加布局布線(xiàn)的約束條件來(lái)避免出現(xiàn)這些場(chǎng)景。
3 隨機(jī)網(wǎng)表的產(chǎn)生
隨機(jī)網(wǎng)表使用verilog語(yǔ)言描述,下面是一段連接關(guān)系的例子。
supply0 VSS;
supply1 VDD;
NR 01 (.A1(41),.A2(VSS),.ZN(01),.A3(86) );
AD 02 (.S(02),.A(47),.CO(03),.B(44) );
QD 03 (.CP(50),.Q(04),.D(71),.DN(VDD) );
ND 04 (.DN(83),.CP(clk),.Q(05),.D(38),.SDN(58) );
RD 05 (.A1(72),.A2(56),.A4(12),.ZN(06),.A3(56) );
用驅(qū)動(dòng)單元的驅(qū)動(dòng)端作為起點(diǎn), 遍歷標(biāo)準(zhǔn)芯片單元庫(kù)里的標(biāo)準(zhǔn)單元,連接到驅(qū)動(dòng)單元的驅(qū)動(dòng)管腳上。當(dāng)驅(qū)動(dòng)單元驅(qū)動(dòng)能力達(dá)到上限時(shí),停止遍歷標(biāo)準(zhǔn)單元庫(kù),把被驅(qū)動(dòng)單元的管腳連接到接收單元上。再使用驅(qū)動(dòng)單元作為新的起點(diǎn),重復(fù)上面的步驟,生成新的連接關(guān)系。由于管腳之間的連接關(guān)系是隨機(jī)選取的,遍歷單元庫(kù)的次數(shù)越多,標(biāo)準(zhǔn)芯片單元被兩兩互聯(lián)的幾率越大。
在隨機(jī)網(wǎng)表中,驅(qū)動(dòng)單元驅(qū)動(dòng)多個(gè)標(biāo)準(zhǔn)芯片單元,這些連接沒(méi)有實(shí)際意義的邏輯關(guān)系,只是為了把芯片的管腳連接在一起。圖5是一個(gè)驅(qū)動(dòng)單元驅(qū)動(dòng)多個(gè)標(biāo)準(zhǔn)單元的例子。在布局后,這些標(biāo)準(zhǔn)芯片單元分布在芯片的各個(gè)角落,在布線(xiàn)后,被實(shí)體金屬線(xiàn)連接在一起。
4 重點(diǎn)芯片單元的選取
如果標(biāo)準(zhǔn)芯片單元的管腳設(shè)計(jì)對(duì)布局布線(xiàn)不友好,布線(xiàn)工具會(huì)把管腳連接上,同時(shí)留下違規(guī)標(biāo)記;或者讓管腳懸空,同時(shí)留下管腳懸空標(biāo)記。在布局布線(xiàn)后,通過(guò)布線(xiàn)工具留下的違規(guī)標(biāo)記,可以找到有問(wèn)題的標(biāo)準(zhǔn)芯片單元。
有些管腳的連接性問(wèn)題是受它的周邊環(huán)境的影響,也就是說(shuō),這些管腳隨著它的周邊環(huán)境變化,有的時(shí)候出現(xiàn)連通性問(wèn)題,有的時(shí)候又可以正常引出。innovus平臺(tái)提供了一個(gè)功能來(lái)統(tǒng)計(jì)標(biāo)準(zhǔn)芯片單元在芯片中出現(xiàn)的次數(shù)和出現(xiàn)連通性問(wèn)題的頻率。表1是一個(gè)innovus報(bào)告的例子,報(bào)告中列舉了設(shè)計(jì)規(guī)則違規(guī)的標(biāo)準(zhǔn)單元的出現(xiàn)次數(shù)和違規(guī)頻率。違規(guī)頻率越高,表明這個(gè)標(biāo)準(zhǔn)單元越容易出錯(cuò)。
由于標(biāo)準(zhǔn)芯片的組合非常多,窮舉所有的組合進(jìn)行測(cè)試顯示不大現(xiàn)實(shí)。假如一個(gè)標(biāo)準(zhǔn)芯片單元庫(kù)有300個(gè)標(biāo)準(zhǔn)單元,每個(gè)標(biāo)準(zhǔn)單元在布局有4種翻轉(zhuǎn)狀態(tài),也就是有1 200種芯片單元放置狀態(tài)。考慮兩個(gè)標(biāo)準(zhǔn)單元兩兩相鄰的情況,這些場(chǎng)景就有超過(guò)100萬(wàn),而實(shí)際上每個(gè)標(biāo)準(zhǔn)單元周邊可以擺放8個(gè)標(biāo)準(zhǔn)單元, 那么就是所以需要選取重點(diǎn)的標(biāo)準(zhǔn)芯片單元來(lái)進(jìn)行測(cè)試。
在選取重點(diǎn)標(biāo)準(zhǔn)芯片單元時(shí),設(shè)計(jì)規(guī)則和設(shè)計(jì)規(guī)則違規(guī)頻率是兩個(gè)重要的考慮因素。我們賦予設(shè)計(jì)規(guī)則類(lèi)型不同的權(quán)重,如表2所示。
根據(jù)設(shè)計(jì)規(guī)則違規(guī)出現(xiàn)的頻率,來(lái)進(jìn)行權(quán)重的修正。
根據(jù)重點(diǎn)芯片的權(quán)重,我們把權(quán)重大于0.1的標(biāo)準(zhǔn)芯片單元選取出來(lái),生出更多的隨機(jī)網(wǎng)表來(lái)增加布局布線(xiàn)的場(chǎng)景覆蓋率。對(duì)于權(quán)重大于0.5的標(biāo)準(zhǔn)芯片單元,我們會(huì)生成特定的場(chǎng)景來(lái)檢測(cè)芯片單元放在一起時(shí)的連通性。
5 重點(diǎn)芯片連通性的檢測(cè)方法
對(duì)于重點(diǎn)芯片,我們通過(guò)遍歷芯片的擺放位置, 來(lái)檢測(cè)芯片周邊環(huán)境的影響。圖6所示,標(biāo)準(zhǔn)芯片單元繞Y軸翻轉(zhuǎn),有兩個(gè)擺放狀態(tài)。如果兩兩相鄰的話(huà),共有4種組合。
本方法遍歷所有的重點(diǎn)芯片單元,每種組合生成一個(gè)網(wǎng)表。在布局時(shí),標(biāo)準(zhǔn)芯片單元兩兩相鄰。布線(xiàn)后檢查芯片管腳的連通性,如果Innovus檢查出有設(shè)計(jì)規(guī)則違規(guī),則輸出設(shè)計(jì)規(guī)則違規(guī)報(bào)告文件,自動(dòng)保存布線(xiàn)后的數(shù)據(jù)以備進(jìn)一步分析使用。
6 芯片聯(lián)通性問(wèn)題的處理
連通性問(wèn)題通常是由不合理的管腳形狀引起。如圖7(a)所示,在使用過(guò)孔連接中間位置的管腳時(shí),過(guò)孔會(huì)觸發(fā)過(guò)孔和相鄰金屬之間的設(shè)計(jì)規(guī)則。在使用金屬線(xiàn)連接中間位置的管腳時(shí),如圖7(b)所示,則會(huì)觸發(fā)金屬線(xiàn)和金屬線(xiàn)之間的設(shè)計(jì)規(guī)則。
對(duì)上面這個(gè)管腳設(shè)計(jì),有兩種改進(jìn)方案,一種是把中間的這個(gè)管腳往下移動(dòng),或者增大管腳面積,這樣在用過(guò)孔連接管腳的時(shí)候,可以把過(guò)孔向下方挪動(dòng)一些,以避免觸發(fā)過(guò)孔和金屬線(xiàn)之間的設(shè)計(jì)規(guī)則,如圖8(a)所示。或者如圖8(b)所示,把相鄰的管腳剪除一些,這個(gè)管腳往下引線(xiàn)的時(shí)候,可以避開(kāi)金屬線(xiàn)端頭和金屬線(xiàn)之間的設(shè)計(jì)規(guī)則,同時(shí)這條引線(xiàn)可以和相鄰的金屬線(xiàn)保持一點(diǎn)距離,允許使用過(guò)孔往高層跳線(xiàn)。
如果管腳的連通性問(wèn)題是由于兩個(gè)標(biāo)準(zhǔn)單元擺放在一起引起的,同時(shí)受限于版圖空間的限制,管腳的形狀無(wú)法改變。這時(shí)我們采用增加布局布線(xiàn)約束的方法來(lái)阻止這種場(chǎng)景出現(xiàn)。如圖9(a)所示,兩個(gè)標(biāo)準(zhǔn)芯片單元相鄰放在一起,中間兩個(gè)短的管腳無(wú)法被連接。通過(guò)增加布局布線(xiàn)的約束,在標(biāo)準(zhǔn)單元的邊界上增加約束條件,在布局的時(shí)候,不允許這兩個(gè)標(biāo)準(zhǔn)單元的邊界放在一起,從而留出大的空間來(lái)連接這兩個(gè)短的管腳。
7 本方法的優(yōu)缺點(diǎn)和可能改進(jìn)的方面
本方法可以快速地生成隨機(jī)網(wǎng)表,在標(biāo)準(zhǔn)芯片單元開(kāi)發(fā)的早期階段,使用innovus平臺(tái)對(duì)標(biāo)準(zhǔn)單元的連通性進(jìn)行檢測(cè)分析。本方法的優(yōu)點(diǎn)在于簡(jiǎn)單易用,標(biāo)準(zhǔn)芯片單元的連通性問(wèn)題比較直觀,方便統(tǒng)計(jì)分析;缺點(diǎn)在于運(yùn)算量比較大,無(wú)法實(shí)現(xiàn)場(chǎng)景全覆蓋測(cè)試,隨機(jī)網(wǎng)表比較大時(shí),會(huì)出現(xiàn)無(wú)法布局布線(xiàn)的情況。可能改進(jìn)的兩個(gè)方面:一是在產(chǎn)生隨機(jī)網(wǎng)表時(shí),盡可能模擬實(shí)際的邏輯電路,避免出現(xiàn)不能布局布線(xiàn)的情形。二是優(yōu)化實(shí)驗(yàn)設(shè)計(jì),在盡可能減少運(yùn)算量的情況下,增加場(chǎng)景的覆蓋率。
8 結(jié)語(yǔ)
本文介紹了一種標(biāo)準(zhǔn)芯片單元可連通性的檢測(cè)方法,可以實(shí)現(xiàn)標(biāo)準(zhǔn)芯片單元庫(kù)的全覆蓋檢測(cè),通過(guò)優(yōu)化算法,可以在減少芯片測(cè)試工作量的前提下,實(shí)現(xiàn)90%以上的隨機(jī)場(chǎng)景再現(xiàn)。在標(biāo)準(zhǔn)芯片單元檢測(cè)中的實(shí)際應(yīng)用中,有效地捕獲了標(biāo)準(zhǔn)芯片單元連通性的問(wèn)題,通過(guò)和標(biāo)準(zhǔn)芯片單元庫(kù)廠商合作,改進(jìn)了標(biāo)準(zhǔn)的單元版圖設(shè)計(jì),從而提高的芯片設(shè)計(jì)的效率和芯片的制造良率。
評(píng)論
查看更多