本發(fā)明涉及半導(dǎo)體制造領(lǐng)域,特別涉及一種冗余金屬填充方法的方法及系統(tǒng)。
背景技術(shù):
隨著半導(dǎo)體技術(shù)的不斷發(fā)展,半導(dǎo)體工藝結(jié)點在不斷變小,化學(xué)機械平坦化(chemicalmechanicalpolishing,cmp)被用于全局化平坦,變得越來越重要。cmp工藝制造過程中,由于金屬和氧化物等介質(zhì)具有不同的材料特性,它們在cmp過程中材料去除速率并不相同,導(dǎo)致產(chǎn)生了蝶形缺陷(dishing)和侵蝕缺陷(erosion)。蝶形缺陷是空白區(qū)域的介質(zhì)層和溝槽中金屬的厚度差。侵蝕缺陷指在圖形區(qū)域氧化物和金屬被減薄,為拋光前后氧化層厚度差?,F(xiàn)有技術(shù)主要通過冗余金屬填充來消除蝶形缺陷和侵蝕缺陷。
冗余金屬填充(dummyfill)技術(shù)的主要原理是通過向網(wǎng)格內(nèi)填充與電路不連通的金屬小塊來改變該網(wǎng)格的金屬圖形密度,從而提高版圖圖形密度的均勻性,改善芯片的平整度和電性能。其核心技術(shù)主要有兩個:1)版圖密度和填充數(shù)量分析技術(shù);2)余量分析技術(shù)。
目前,對于版圖密度和填充數(shù)量分析技術(shù)的研究主要是基于版圖網(wǎng)格密度分析來確定填充區(qū)域和填充密度。例如,kahng等人通過提出的使密度變化最小的填充方法(min-variation)和tian等人提出的最少填充(min-fill)線性規(guī)劃模型。余量分析技術(shù)的研究主要有兩種算法,陣列索引算法和掃描線算法。其中,陣列索引算法將網(wǎng)格劃分為n*n的索引陣列,并對符合要求的陣列進行填充,其優(yōu)點在于計算速度快,而缺點在于由于陣列大小嚴(yán)重依賴與冗余金屬填充參數(shù)設(shè)置,當(dāng)設(shè)置的填充參數(shù)不合適時會導(dǎo)致漏填現(xiàn)象,并且填充后為傳統(tǒng)排列,寄生效應(yīng)明顯,可調(diào)性差;掃描線算法則通過掃描線將網(wǎng)格劃分為若干區(qū)域,隨后對這些區(qū)域進行冗余金屬填充,這一方法的優(yōu)點在于避免了陣列索引算法的部分漏填問題,填充方式多樣,可以有效減小寄生效應(yīng),其缺點在于無法處理復(fù)雜幾何結(jié)構(gòu)的版圖,計算速度遠低于陣列索引算法。
技術(shù)實現(xiàn)要素:
本發(fā)提供一種冗余金屬填充方法的方法及系統(tǒng),解決通過現(xiàn)有余量分析技術(shù)無法在不漏填充的前提下快速完成冗余金屬填充的問題。
本發(fā)明提供了一種冗余金屬填充方法的方法,包括步驟:
對待填充版圖進行版圖密度分析,確認(rèn)各網(wǎng)格的待填充密度;
根據(jù)各網(wǎng)格的待填充密度設(shè)定用于填充各網(wǎng)格的冗余金屬邊長和間距;
根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列;
將每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域;
在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充。
優(yōu)選地,所述對待填充版圖進行版圖密度分析,確認(rèn)各網(wǎng)格的待填充密度包括:
步驟a1:利用化學(xué)機械平坦化cmp-可制造性型設(shè)計dfm工具獲得各網(wǎng)格內(nèi)的密度值dij,所述網(wǎng)格大小為g×g;
步驟a2:判斷是否存在超出預(yù)設(shè)密度下限di的待填充網(wǎng)格,若是,則獲取待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為預(yù)設(shè)密度下限di;若否,則直接進入步驟a3;
步驟a3:從一邊到對邊依序計算每個網(wǎng)格與其相鄰網(wǎng)格的密度最大值dmax;
步驟a4:判斷是否存在與dmax的差值大于預(yù)設(shè)允許密度波動△d的待填充網(wǎng)格,若是,則更新待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為dmax-△d;若否,則進入步驟a5;
步驟a5:從一邊到對邊依序獲取每個網(wǎng)格的待填充密度,到對邊時轉(zhuǎn)入下一行。
優(yōu)選地,所述根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列包括:
將步驟a2和步驟a4確定的待填充網(wǎng)格以l1為邊長劃分為各陣列,其中,
判斷各陣列是否與金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列。
優(yōu)選地,所述方法還包括:
判斷各陣列是否與金屬線存在重疊部分之前,通過cmp工藝模擬產(chǎn)生缺陷的臨界尺寸l0;
將各網(wǎng)格內(nèi)的金屬線外擴l0/2;
所述判斷各陣列是否與金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列包括:
判斷各陣列是否與外擴后的金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列。
優(yōu)選地,所述待填充區(qū)域為矩形或方形,所述將每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域包括:
步驟c1:從網(wǎng)格一個頂角處陣列開始遍歷,如果當(dāng)前陣列ni,j為非待填充陣列則跳過,否則進入步驟c2,所述遍歷包括:自一邊向?qū)呁七M,在推進至對邊時轉(zhuǎn)入下一行或下一列;
步驟c2:自網(wǎng)格的一邊起,當(dāng)前陣列ni,j為待填充陣列時,判斷ni+1,j或ni,j+1是否為待填充陣列,若是則將ni,j、ni+1,j,或ni,j、ni,j+1合并為(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni+2,j或ni,j+2是否為待填充陣列,以此類推,直到ni+k,j或ni,j+k為非待填充陣列或網(wǎng)格對邊為止,其中i為列數(shù),j為行數(shù),k為正整數(shù);
步驟c3:判斷陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k是否存在非待填充陣列,若否,則將陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k合并入(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni,j+2至ni+k,j+2或陣列ni+2,j至ni+2,j+k是否合并入(i,j)待填充區(qū)域mi,j,以此類推,當(dāng)陣列ni,j+p至ni+k,j+p或陣列ni+p,j至ni+p,j+k中存在非待填充陣列,若是,則不調(diào)整(i,j)待填充區(qū)域mi,j;其中p為正整數(shù);
步驟c4:重復(fù)步驟c1至步驟c3直至遍歷當(dāng)前網(wǎng)格內(nèi)全部陣列,得到網(wǎng)格內(nèi)各待填充區(qū)域;
步驟c5:重復(fù)步驟c1至步驟c4直至得到各網(wǎng)格內(nèi)待填充區(qū)域。
優(yōu)選地,所述在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充包括:
確定待填充區(qū)域各頂點的幾何坐標(biāo);
根據(jù)待填充區(qū)域各頂點的幾何坐標(biāo)計算冗余金屬的實際填充坐標(biāo);
將冗余金屬的實際填充坐標(biāo)輸出到版圖文件中,完成冗余金屬填充。
一種冗余金屬填充方法的系統(tǒng),包括:
密度確認(rèn)模塊,用于對待填充版圖進行版圖密度分析,確認(rèn)各網(wǎng)格的待填充密度;
冗余金屬設(shè)定模塊,用于根據(jù)各網(wǎng)格的待填充密度設(shè)定用于填充各網(wǎng)格的冗余金屬邊長和間距;
陣列確認(rèn)模塊,用于根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列;
區(qū)域獲取模塊,用于將每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域;
填充模塊,用于在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充。
優(yōu)選地,所述密度確認(rèn)模塊包括:
密度值獲取單元,用于利用cmp-dfm工具獲得各網(wǎng)格內(nèi)的密度值dij,所述網(wǎng)格大小為g×g;
第一判斷單元,用于判斷是否存在超出預(yù)設(shè)密度下限di的待填充網(wǎng)格,若是,則獲取待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為預(yù)設(shè)密度下限di;若否,則執(zhí)行計算單元;
計算單元,用于從一邊到對邊依序計算每個網(wǎng)格與其相鄰網(wǎng)格的密度最大值dmax;
第二判斷單元,用于判斷是否存在與dmax的差值大于預(yù)設(shè)允許密度波動△d的待填充網(wǎng)格,若是,則更新待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為dmax-△d;若否,則執(zhí)行獲取單元;
獲取單元,用于從一邊到對邊依序獲取每個網(wǎng)格的待填充密度,到對邊時轉(zhuǎn)入下一行。
優(yōu)選地,所述陣列確認(rèn)模塊包括:
陣列劃分單元,用于將步驟a2和步驟a4確定的待填充網(wǎng)格以l1為邊長劃分為各陣列,其中,
陣列標(biāo)記單元,用于判斷各陣列是否與金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列。
優(yōu)選地,所述系統(tǒng)還包括:
臨界尺寸獲取模塊,用于判斷各陣列是否與金屬線存在重疊部分之前,通過cmp工藝模擬產(chǎn)生缺陷的臨界尺寸l0;
與陣列確認(rèn)模塊相連的金屬線外擴模塊,用于將各網(wǎng)格內(nèi)的金屬線外擴l0/2;
所述陣列標(biāo)記單元具體用于判斷各陣列是否與外擴后的金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列。
優(yōu)選地,所述區(qū)域獲取模塊包括:
遍歷單元,用于從網(wǎng)格一個頂角處陣列開始遍歷,如果當(dāng)前陣列為非待填充陣列則跳過,否則執(zhí)行區(qū)域合并單元,所述遍歷包括:自一邊向?qū)呁七M,在推進至對邊時轉(zhuǎn)入下一行或下一列;
區(qū)域合并單元,用于自網(wǎng)格的一邊起,當(dāng)前陣列ni,j為待填充陣列時,判斷ni+1,j或ni,j+1是否為待填充陣列,若是則將nij、ni+1,j,或nij、ni,j+1合并為(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni+2,j或ni,j+2是否為待填充陣列,以此類推,直到ni+k,j或ni,j+k為非待填充陣列或網(wǎng)格對邊為止,其中i為列數(shù),j為行數(shù),k為正整數(shù);
區(qū)域調(diào)整單元,用于判斷陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k是否存在非待填充陣列,若否,則將陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k合并入(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni,j+2至ni+k,j+2或陣列ni+2,j至ni+2,j+k是否合并入(i,j)待填充區(qū)域mi,j,以此類推,當(dāng)陣列ni,j+p至ni+k,j+p或陣列ni+p,j至ni+p,j+k中存在非待填充陣列,若是,則不調(diào)整(i,j)待填充區(qū)域mi,j;其中p為正整數(shù);
第三判斷單元,用于判斷是否遍歷當(dāng)前網(wǎng)格內(nèi)全部陣列,若是則執(zhí)行第四判斷單元,若否則執(zhí)行遍歷單元;
第四判斷單元,用于判斷是否遍歷所有網(wǎng)格,若是則結(jié)束,若否則執(zhí)行遍歷單元。
優(yōu)選地,所述填充模塊包括:
區(qū)域坐標(biāo)確定單元,用于確定待填充區(qū)域各頂點的幾何坐標(biāo);
填充坐標(biāo)技術(shù)單元,用于根據(jù)待填充區(qū)域各頂點的幾何坐標(biāo)計算冗余金屬的實際填充坐標(biāo);
填充單元,用于將冗余金屬的實際填充坐標(biāo)輸出到版圖文件中,完成冗余金屬填充。
本發(fā)明提供的一種冗余金屬填充方法的方法及系統(tǒng),該方法通過版圖密度分析確認(rèn)各網(wǎng)格的待填充密度,并根據(jù)待填充密度設(shè)定冗余金屬邊長和間距,接著根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,獲取各網(wǎng)格內(nèi)待填充陣列,然后對每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到待填充區(qū)域,最終在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充。由于根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列,能避免現(xiàn)有陣列索引算法當(dāng)設(shè)置的填充參數(shù)不合適時會導(dǎo)致漏填的現(xiàn)象;此外,將每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域,有效地提高了處理速度,使得本發(fā)明能在不漏填充的前提下快速完成冗余金屬填充。
進一步地,所述待填充區(qū)域為矩形或方形,并提供了形成矩形或方形的待填充區(qū)域的步驟,使得本發(fā)明可以通過獲取待填充區(qū)域的頂角坐標(biāo)來獲取冗余金屬填充的實際填充坐標(biāo),進一步提高了冗余金屬填充速度。
進一步地,將各網(wǎng)格內(nèi)的金屬線外擴l0/2,其中l(wèi)0為cmp工藝模擬產(chǎn)生缺陷的臨界尺寸,使得本發(fā)明提供的方法考慮了cmp工藝產(chǎn)生缺陷的臨界尺寸,能擴大后續(xù)半導(dǎo)體制備的工藝窗口,并且由于進一步確定了不需要進行冗余金屬填充區(qū)域,使得待填充區(qū)域減小,能提高冗余金屬填充速度。
附圖說明
為了更清楚地說明本申請實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明中記載的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為根據(jù)本發(fā)明提供的一種冗余金屬填充方法的流程圖;
圖2為根據(jù)本發(fā)明提供的一種對待填充版圖進行版圖密度分析的邏輯圖;
圖3為根據(jù)本發(fā)明提供的一種進行網(wǎng)格余量分析技術(shù)的邏輯圖;
圖4為根據(jù)本發(fā)明提供的進行陣列劃分和合并的示意圖;
圖5為根據(jù)本發(fā)明提供的冗余金屬填充的示意圖;
圖6為根據(jù)本發(fā)明提供的一種冗余金屬填充系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施方式
下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。此外,本發(fā)明可以在不同例子中重復(fù)參考數(shù)字和/或字母。這種重復(fù)是為了簡化和清楚的目的,其本身不指示所討論各種實施例和/或設(shè)置之間的關(guān)系。
現(xiàn)有冗余金屬填充方法的余量分析技術(shù)主要有兩種算法,陣列索引算法和掃描線算法。其中,陣列索引算法計算速度快,但是由于陣列大小嚴(yán)重依賴于冗余金屬填充參數(shù)設(shè)置,當(dāng)設(shè)置的填充參數(shù)不合適時會導(dǎo)致漏填現(xiàn)象,且可調(diào)性差;掃描線算法能解決上述問題,但是無法處理復(fù)雜幾何結(jié)構(gòu)的版圖,且計算速度遠低于陣列索引算法。
本發(fā)明提供的一種冗余金屬填充方法的方法及系統(tǒng),由于根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列,能避免由于設(shè)置的填充參數(shù)不合適導(dǎo)致漏填的現(xiàn)象,并且對待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域,有效地提高了處理速度,使得本發(fā)明能在不漏填充的前提下快速完成冗余金屬填充。
為了更好的理解本發(fā)明的技術(shù)方案和技術(shù)效果,以下將結(jié)合流程圖和具體的實施例進行詳細的描述,流程圖如圖1所示。
步驟s01,對待填充版圖進行版圖密度分析,確認(rèn)各網(wǎng)格的待填充密度,參考圖2所示。
在本實施中,所述對待填充版圖進行版圖密度分析,確認(rèn)各網(wǎng)格的待填充密度包括:步驟a1:利用cmp-dfm工具獲得各網(wǎng)格內(nèi)的密度值dij,所述網(wǎng)格大小為g×g;步驟a2:判斷是否存在超出預(yù)設(shè)密度下限di的待填充網(wǎng)格,若是,則獲取待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為預(yù)設(shè)密度下限di;若否,則直接進入步驟a3;步驟a3:從一邊到對邊依序計算每個網(wǎng)格與其相鄰網(wǎng)格的密度最大值dmax;步驟a4:判斷是否存在與dmax的差值大于預(yù)設(shè)允許密度波動△d的待填充網(wǎng)格,若是,則更新待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為dmax-△d;若否,則進入步驟a5;步驟a5:從一邊到對邊依序獲取每個網(wǎng)格的待填充密度,到對邊時轉(zhuǎn)入下一行。其中,預(yù)設(shè)密度下限di、預(yù)設(shè)允許密度波動△d可以根據(jù)經(jīng)驗或?qū)嶋H使用效果而定,還可以通過仿真模擬獲得;從一邊到對邊可以為從左邊到右邊、從右邊到左邊、從上邊到下邊或從下邊到上邊,在本實施例中,以從左邊到右邊為例進行說明。
在一個具體實施例中,所述對待填充版圖進行版圖密度分析,確認(rèn)各網(wǎng)格的待填充密度包括:
步驟a1:設(shè)定密度下限di以及允許密度波動δd;
步驟a2:利用cmp-dfm工具獲得各網(wǎng)格內(nèi)的密度值,此時版圖被劃分為若干個大小為g×g的網(wǎng)格;
步驟a3:判斷是否存在超出密度下限的網(wǎng)格,如果有,通過加入冗余金屬使此網(wǎng)格密度達到di,獲取待調(diào)整密度d1,如d1=di-dij,反之,直接進入步驟a4;需要說明的是,di也可以為一個范圍,即d1處于di的設(shè)定范圍時即可;
步驟a4:從左到右進行遍歷,計算每個網(wǎng)格與其相鄰網(wǎng)格的密度最大值dmax;
步驟a5:判斷最大值dmax與當(dāng)前網(wǎng)格密度的差值是否大于δd,若大于則將當(dāng)前網(wǎng)格密度大小調(diào)整為dmax-δd,更新待調(diào)整密度d1=dmax-δd-dij,進入步驟a6,若小于或者等于則不做調(diào)整;
步驟a6:以自左向右的方式推進網(wǎng)格計算,在最右端時轉(zhuǎn)入下一行。
上述獲取待填充密度僅僅是示例性的,現(xiàn)有技術(shù)中獲取待填充密度的方法都適用,在此不做限定。
步驟s02,根據(jù)各網(wǎng)格的待填充密度設(shè)定用于填充各網(wǎng)格的冗余金屬邊長和間距。
在本實施例中,冗余金屬邊長和間距可以是根據(jù)待填充密度及版圖的幾何約束等即時計算出來的,還可以是提前構(gòu)建好的冗余金屬模板,例如從填充模板的模板庫中選擇金屬密度與待填充密度最相近的模板,該模板的輸入可以為待填充密度等,輸出為冗余金屬邊長和間距等,在此不做限定。
在一個具體實施例中,冗余金屬的邊長和間距分別為w、s,其金屬密度為w2/(w+s)2。
步驟s03,根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列,參考圖3至圖4。
在本實施例中,所述根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列包括:將步驟a2和步驟a4確定的待填充網(wǎng)格以l1為邊長劃分為各陣列,其中,
進一步地,為了擴大后續(xù)半導(dǎo)體制備的工藝窗口,并減小待填充區(qū)域,以提高冗余金屬填充速度,所述方法還包括:判斷各陣列是否與金屬線存在重疊部分之前,通過cmp工藝模擬產(chǎn)生缺陷的臨界尺寸l0;將各網(wǎng)格內(nèi)的金屬線外擴l0/2;所述判斷各陣列是否與金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列包括:判斷各陣列是否與外擴后的金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列。
在一個具體實施例中,所述根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列包括:
步驟b1:cmp模擬確定產(chǎn)生缺陷的臨界尺寸l0;
步驟b2:將網(wǎng)格內(nèi)的金屬線外擴l0/2;
步驟b3:將步驟a3和步驟a5確定的待填充網(wǎng)格以l1為邊長劃分陣列,其中,
步驟b4:判斷陣列是否與虛擬金屬線相交,若是則將其標(biāo)記為非待填充陣列,反之則將其標(biāo)記為待填充陣列。
步驟s04,將每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域,參考圖4、圖5所示。
在本實施中,所述待填充區(qū)域為矩形或方形,所述將每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域包括:步驟c1:從網(wǎng)格一個頂角處陣列開始遍歷,如果當(dāng)前陣列為非待填充陣列則跳過,否則進入步驟c2,所述遍歷包括:自一邊向?qū)呁七M,在推進至對邊時轉(zhuǎn)入下一行或下一列;步驟c2:自網(wǎng)格的一邊起,當(dāng)陣列ni,j為待填充陣列時,判斷ni+1,j或ni,j+1是否為待填充陣列,若是則將nij、ni+1,j,或nij、ni,j+1合并為(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni+2,j或ni,j+2是否為待填充陣列,以此類推,直到ni+k,j或ni,j+k為非待填充陣列或網(wǎng)格對邊為止,其中i為列數(shù),j為行數(shù),k為正整數(shù);步驟c3:判斷陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k是否存在非待填充陣列,若否,則將陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k合并入(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni,j+2至ni+k,j+2或陣列ni+2,j至ni+2,j+k是否合并入(i,j)待填充區(qū)域mi,j,以此類推,當(dāng)陣列ni,j+p至ni+k,j+p或陣列ni+p,j至ni+p,j+k中存在非待填充陣列,若是,則不調(diào)整(i,j)待填充區(qū)域mi,j;其中p為正整數(shù);步驟c4:重復(fù)步驟c1至步驟c3直至遍歷當(dāng)前網(wǎng)格內(nèi)全部陣列,得到網(wǎng)格內(nèi)各待填充區(qū)域;步驟c5:重復(fù)步驟c1至步驟c4直至得到各網(wǎng)格內(nèi)待填充區(qū)域。本實施例以從左上角處陣列開始遍歷為例進行說明。
在一個具體實施例中,首先,步驟c1:從網(wǎng)格左上角陣列開始遍歷自左向右推進,在最右端時轉(zhuǎn)入下一行,如果某陣列為不可填充陣列則直接跳過,反之進入步驟c2;
步驟c2:陣列ni,j為待填充陣列,判斷ni+1,j是否為待填充陣列,若是則將nij和ni+1,j合并為mi,j,并繼續(xù)判斷陣列ni+2,j,以此類推,直到ni+k,j為不可填充陣列或網(wǎng)格最右端為止;
步驟c3:假設(shè)mi,j為陣列ni,j到ni+k,j之間網(wǎng)格的集合體,則檢測陣列ni,j+1到ni+k,j+1是否均為可填充陣列,如是則將其加入集合體mi,j,并繼續(xù)檢查陣列ni,j+2到ni+k,j+2,以此類推,直到ni,j+p到ni+k,j+p之間存在不可填充陣列,反之則不對mi,j進行調(diào)整;
步驟c4:重復(fù)步驟c1到c3,直至遍歷網(wǎng)格內(nèi)全部陣列,圖4中示例最終被合并為8個待填充區(qū)域;
通過上述步驟可以形成矩形或方形的待填充區(qū)域,便于后續(xù)根據(jù)待填充區(qū)域的頂角坐標(biāo)進行金屬冗余填充。
需要說明的是,以上對待填充陣列進行整合的方式僅僅是一種優(yōu)選地方式,此外,也可以為現(xiàn)有技術(shù)中常用的待填充區(qū)域獲取方式,并在后續(xù)步驟相應(yīng)地選取金屬冗余填充方式,在此不作限定。
步驟s05,在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充,參考圖5所示。
在本實施中,所述在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充包括:確定待填充區(qū)域各頂點的幾何坐標(biāo);根據(jù)待填充區(qū)域各頂點的幾何坐標(biāo)計算冗余金屬的實際填充坐標(biāo);將冗余金屬的實際填充坐標(biāo)輸出到版圖文件中,完成冗余金屬填充。
在一個具體實施例中,所述在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充包括:
步驟d1:待填充區(qū)域幾何坐標(biāo)的確定:在網(wǎng)格gr,s內(nèi),假設(shè)待填充區(qū)域mi,j為陣列集合
其中,r,s分別為橫向網(wǎng)格序號和縱向網(wǎng)格序號;k,p分別為自陣列ni,j起橫向和縱向的陣列數(shù)(不包括陣列ni,j);
步驟d2:冗余金屬的實際填充坐標(biāo)計算:如圖5所示,以傳統(tǒng)排列方式為例,對實際填充坐標(biāo)計算進行說明(其他排列方式可以采用相似的方法進行計算)。對于待填充區(qū)域mi,j,冗余金屬rm,n四頂點坐標(biāo)公式如式(2)所示:
其中,bs為緩沖距離,即冗余金屬陣列到金屬線的距離;m為橫向冗余金屬序號;n為縱向冗余金屬序號;
步驟d3:將冗余金屬的實際填充坐標(biāo)輸出到版圖文件中,完成冗余金屬智能填充。
需要說明的是,上述冗余金屬的填充方法僅為示例性的,也可以直接對待填充陣列進行冗余金屬填充,在此不做限定。
在本發(fā)明實施例中,該方法對版圖進行版圖密度分析獲取各網(wǎng)格的待填充密度,然后根據(jù)待填充密度設(shè)定冗余金屬尺寸等,并根據(jù)設(shè)定的冗余金屬尺寸對各網(wǎng)格進行索引陣列分析,獲取待填充陣列,能避免現(xiàn)有陣列索引算法當(dāng)設(shè)置的填充參數(shù)不合適時會導(dǎo)致漏填的現(xiàn)象,接著然后對每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到待填充區(qū)域,最終在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充,有效地提高后續(xù)處理速度,使得本發(fā)明能在不漏填充的前提下快速完成冗余金屬填充。
相應(yīng)地,本發(fā)明還提供了一種冗余金屬填充方法的系統(tǒng),如圖6所示,包括:
密度確認(rèn)模塊601,用于對待填充版圖進行版圖密度分析,確認(rèn)各網(wǎng)格的待填充密度;
冗余金屬設(shè)定模塊602,用于根據(jù)各網(wǎng)格的待填充密度設(shè)定用于填充各網(wǎng)格的冗余金屬邊長和間距;
陣列確認(rèn)模塊603,用于根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列;
區(qū)域獲取模塊604,用于將每個網(wǎng)格內(nèi)的待填充陣列進行整合,得到各網(wǎng)格內(nèi)待填充區(qū)域;
填充模塊605,用于在各網(wǎng)格內(nèi)待填充區(qū)域進行冗余金屬填充。
在實際應(yīng)用中,所述密度確認(rèn)模塊601可以包括:
密度值獲取單元,用于利用cmp-dfm工具獲得各網(wǎng)格內(nèi)的密度值dij,所述網(wǎng)格大小為g×g;
第一判斷單元,用于判斷是否存在超出預(yù)設(shè)密度下限di的待填充網(wǎng)格,若是,則獲取待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為預(yù)設(shè)密度下限di;若否,則執(zhí)行計算單元;
計算單元,用于從一邊到對邊依序計算每個網(wǎng)格與其相鄰網(wǎng)格的密度最大值dmax;
第二判斷單元,用于判斷是否存在與dmax的差值大于預(yù)設(shè)允許密度波動△d的待填充網(wǎng)格,若是,則更新待填充網(wǎng)格的待填充密度d1,以使待填充網(wǎng)格的密度被調(diào)整為dmax-△d;若否,則執(zhí)行獲取單元;
獲取單元,用于從一邊到對邊依序獲取每個網(wǎng)格的待填充密度,到對邊時轉(zhuǎn)入下一行。
在本實施例中,本系統(tǒng)根據(jù)設(shè)定的冗余金屬邊長和間距對各網(wǎng)格進行索引陣列分析,確認(rèn)各網(wǎng)格內(nèi)待填充陣列,所述陣列確認(rèn)模塊603包括:
陣列劃分單元,用于將步驟a2和步驟a4確定的待填充網(wǎng)格以l1為邊長劃分為各陣列,其中,
陣列標(biāo)記單元,用于判斷各陣列是否與金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列。
為了進一步提高冗余金屬填充速度并擴大后續(xù)半導(dǎo)體制備的工藝窗口,所述系統(tǒng)還包括:
臨界尺寸獲取模塊706,用于判斷各陣列是否與金屬線存在重疊部分之前,通過cmp工藝模擬產(chǎn)生缺陷的臨界尺寸l0;
與陣列確認(rèn)模塊603相連的金屬線外擴模塊707,用于將各網(wǎng)格內(nèi)的金屬線外擴l0/2;
所述陣列標(biāo)記單元具體用于判斷各陣列是否與外擴后的金屬線存在重疊部分,若是,則將該陣列標(biāo)記為非待填充陣列;若否,則將該陣列標(biāo)記為待填充陣列。
此外,所述區(qū)域獲取模塊604包括:
遍歷單元,用于從網(wǎng)格一個頂角處陣列開始遍歷,如果當(dāng)前陣列為非待填充陣列則跳過,否則執(zhí)行區(qū)域合并單元,所述遍歷包括:自一邊向?qū)呁七M,在推進至對邊時轉(zhuǎn)入下一行或下一列;
區(qū)域合并單元,用于自網(wǎng)格的一邊起,當(dāng)陣列ni,j為待填充陣列時,判斷ni+1,j或ni,j+1是否為待填充陣列,若是則將nij、ni+1,j,或nij、ni,j+1合并為(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni+2,j或ni,j+2是否為待填充陣列,以此類推,直到ni+k,j或ni,j+k為非待填充陣列或網(wǎng)格對邊為止,其中i為列數(shù),j為行數(shù),k為正整數(shù);
區(qū)域調(diào)整單元,用于判斷陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k是否存在非待填充陣列,若否,則將陣列ni,j+1至ni+k,j+1或陣列ni+1,j至ni+1,j+k合并入(i,j)待填充區(qū)域mi,j,并繼續(xù)判斷陣列ni,j+2至ni+k,j+2或陣列ni+2,j至ni+2,j+k是否合并入(i,j)待填充區(qū)域mi,j,以此類推,當(dāng)陣列ni,j+p至ni+k,j+p或陣列ni+p,j至ni+p,j+k中存在非待填充陣列,若是,則不調(diào)整(i,j)待填充區(qū)域mi,j;其中p為正整數(shù);
第三判斷單元,用于判斷是否遍歷當(dāng)前網(wǎng)格內(nèi)全部陣列,若是則執(zhí)行第四判斷單元,若否則執(zhí)行遍歷單元;
第四判斷單元,用于判斷是否遍歷所有網(wǎng)格,若是則結(jié)束,若否則執(zhí)行遍歷單元。
在本實施例中,所述區(qū)域獲取模塊604可以形成矩形或方形待填充區(qū)域,為了提高冗余金屬填充效率,所述填充模塊605包括:
區(qū)域坐標(biāo)確定單元,用于確定待填充區(qū)域各頂點的幾何坐標(biāo);
填充坐標(biāo)技術(shù)單元,用于根據(jù)待填充區(qū)域各頂點的幾何坐標(biāo)計算冗余金屬的實際填充坐標(biāo);
填充單元,用于將冗余金屬的實際填充坐標(biāo)輸出到版圖文件中,完成冗余金屬填充。
當(dāng)然,該系統(tǒng)還可以進一步包括存儲模塊(未圖示),可以用于保存索引陣列分析結(jié)果等,如待填充陣列及即待填充區(qū)域相關(guān)信息等。這樣,以方便對待處理版圖進行計算機自動處理,并存儲冗余金屬填充結(jié)果相關(guān)信息等。
本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可。尤其,對于系統(tǒng)部分而言,由于其是根據(jù)本發(fā)明提供的方法形成的系統(tǒng),所以描述得比較簡單,相關(guān)之處參見方法部分說明即可。以上所描述的實施例僅僅是示意性的,本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
雖然本發(fā)明已以較佳實施例披露如上,然而并非用以限定本發(fā)明。任何熟悉本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍情況下,都可利用上述揭示的方法和技術(shù)內(nèi)容對本發(fā)明技術(shù)方案做出許多可能的變動和修飾,或修改為等同變化的等效實施例。因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實質(zhì)對以上實施例所做的任何簡單修改、等同變化及修飾,均仍屬于本發(fā)明技術(shù)方案保護的范圍內(nèi)。