用于倒裝芯片設(shè)計(jì)的高效的重新布線層布線技術(shù)
工程師在倒裝芯片設(shè)計(jì)中經(jīng)常使用重新布線層(RDL)將I/O焊盤重新分配到凸點(diǎn)焊盤,整個(gè)過程不會改變I/O焊盤布局。然而,傳統(tǒng)布線能力可能不足以處理大規(guī)模的設(shè)計(jì),因?yàn)樵谶@些設(shè)計(jì)中重新布線層可能非常擁擠,特別是在使用不是最優(yōu)化的I/O凸點(diǎn)分配方法情況下。這種情況下即使采用人工布線,在一個(gè)層內(nèi)也不可能完成所有布線。
隨著對更多輸入/輸出(I/O)要求的提高,傳統(tǒng)線綁定封裝將不能有效支持上千的I/O。倒裝芯片裝配技術(shù)被廣泛用于代替線綁定技術(shù),因?yàn)樗粌H能減小芯片面積,而且支持多得多的I/O。倒裝芯片還能極大地減小電感,從而支持高速信號,并擁有更好的熱傳導(dǎo)性能。倒裝芯片球柵陣列(FCBGA)也被越來越多地用于高I/O數(shù)量的芯片。
圖1:倒裝芯片橫截面:信號線經(jīng)過包括重新布線層在內(nèi)的三個(gè)面。
重新布線層(RDL)是倒裝芯片組件中芯片與封裝之間的接口界面(圖1)。重新布線層是一個(gè)額外的金屬層,由核心金屬頂部走線組成,用于將裸片的I/O焊盤向外綁定到諸如凸點(diǎn)焊盤等其它位置。凸點(diǎn)通常以柵格圖案布置,每個(gè)凸點(diǎn)都澆鑄有兩個(gè)焊盤(一個(gè)在頂部,一個(gè)在底部),它們分別連接重新布線層和封裝基板。因此重新布線層被用作連接I/O焊盤和凸點(diǎn)焊盤的層。
圖2:自由分配(FA)和預(yù)分配(PA)是兩種焊盤分配方法。外圍I/O(PI/O)和區(qū)域I/O(AI/O)是兩種倒裝芯片結(jié)構(gòu)。
倒裝芯片結(jié)構(gòu)與焊盤分配
以往研究已經(jīng)明確了兩種倒裝芯片結(jié)構(gòu)和兩種焊盤分配方法,如圖2所示。自由分配(FA)和預(yù)分配(PA)是兩種焊盤分配方法,而外圍I/O(PI/O)和區(qū)域I/O(AI/O)是兩種倒裝芯片結(jié)構(gòu)。
兩種焊盤分配方法的區(qū)別在于凸點(diǎn)焊盤和I/O焊盤之間的映射是否定義為輸入。自由分配的問題是,每個(gè)I/O焊盤都可以自由分配到任意凸點(diǎn)焊盤,因此分配與布線需要一起考慮。而對預(yù)分配來說,每個(gè)I/O焊盤必須連接指定的凸點(diǎn)焊盤,因此需要解決復(fù)雜的交叉連接問題。預(yù)分配問題的解決比自動分配要難,但對設(shè)計(jì)師來說則更加方便。
兩種倒裝芯片結(jié)構(gòu)分別代表不同的I/O布局圖案。AI/O和PI/O的挑戰(zhàn)分別在于將I/O放在中心區(qū)域和將I/O放在裸片外圍。目前PI/O更加流行,因?yàn)樗唵?,設(shè)計(jì)成本低,雖然AI/O理論上可以提供更好的性能。
圖3給出了一個(gè)PI/O例子。外圍一圈綠色矩形代表I/O焊盤。紅色和黃色圓圈代表電源和地凸點(diǎn),而藍(lán)色圓圈代表信號凸點(diǎn)。位于裸片中央的那些電源/地凸點(diǎn)被分類為網(wǎng)狀類型,信號凸點(diǎn)被分類為柵格類型。
圖3:重新布線層頂視圖,圖中顯示了柵格圖案的凸點(diǎn)焊盤和外圍的I/O焊盤。
上述所有工作都集中在單層布線。它們將布線限制在一個(gè)金屬層,每個(gè)網(wǎng)絡(luò)都必須在這個(gè)層完成布線。一般的目標(biāo)是盡可能地減少走線長度。優(yōu)化算法需要在布通率為100%的前提下完成。這種方法被證明可以很好地解決每種重新布線層的布線問題,前提是存在單層解決方案。
實(shí)用的重新布線層布線方案
重新布線層布線和凸點(diǎn)分配都是額外的實(shí)現(xiàn)任務(wù),它們有助于設(shè)計(jì)從線綁定過渡到倒裝芯片。凸點(diǎn)分配的意思是將每個(gè)凸點(diǎn)分配到指定的I/O焊盤。由于對大多數(shù)設(shè)計(jì)來說I/O焊盤位于裸片外圍,因此飛線和信號走線看起來像是從芯片中心到四周邊界的網(wǎng)狀圖案。
圖3顯示的是一個(gè)使用兩層重新布線層的真實(shí)比例設(shè)計(jì)例子。金屬層10(M10)和金屬層9(M9)完成所有信號網(wǎng)絡(luò)布線,并分別實(shí)現(xiàn)電源/地(PG)網(wǎng)格和電源布線。通常有數(shù)量眾多的信號網(wǎng)絡(luò)需要布線。凸點(diǎn)焊盤的占用面積比較大,在布線階段常被認(rèn)為是影響布線的障礙。
圖4:擁擠的重新布線層的布線解決方案。
圖4(a)顯示了一個(gè)擁擠的重新布線層例子,其中netA、netB……netF這6條網(wǎng)絡(luò)顯示為飛線。這種設(shè)計(jì)如此擁塞,以致于在單個(gè)層(如M10)上根本不可能達(dá)到100%的布通率。一種解決方案是增加重新布線層(如M10)的面積。這相當(dāng)于增加裸片尺寸,如圖4(b)所示。另外一種解決方案是再增加一層重新布線層(如M11),如圖4(c)所示。雖然從工程角度看具有實(shí)際可操作性,但從成本角度看兩種解決方案都是不可接受的。
替代性框架
一種更實(shí)用的選項(xiàng)是被稱為偽單層布線的概念,它要占用已有金屬層(如M9)上的一小塊區(qū)域。如果所占用的區(qū)域用于非性能關(guān)鍵功能,這種方法就具有可操作性,并且極具成本效益。
在圖4(d)中,M9的一些區(qū)域(粉色區(qū)域)被用來完成布線。這里我們假設(shè)邊界線(打點(diǎn)的灰線)和裸片邊界之間的區(qū)域用于輔助布線。偽單層布線方法規(guī)避了成本問題,而且降低了擁擠布線的難度。雖然前述工作集中于單層布線,但偽單層布線在小塊區(qū)域內(nèi)使用了兩層布線。
這種方法適用于重新布線層,因?yàn)镸9通常用于連接電源地和I/O焊盤,而且最重要的M9功能是將電源平均分配到內(nèi)核中的每個(gè)邏輯門。結(jié)果M9外圍區(qū)域的重要性就沒有中心區(qū)域高,使得信號網(wǎng)絡(luò)能夠與電源地網(wǎng)絡(luò)共享M9外圍區(qū)域。
圖5:分別位于第9層和第10層的第一和第二個(gè)重新布線層。電源地網(wǎng)放置在M_inner^L9。可布線的區(qū)域是M_outer^L10 ∪ M_inner^L10 ∪ M_outer^L9。
重新布線層布線的問題表現(xiàn)在連接凸點(diǎn)焊盤Bi和輸入/輸出焊盤Oi之間的網(wǎng)絡(luò)Ni。第一和第二個(gè)重新布線層分別是M9和M10,見圖5。我們根據(jù)邊界線將這個(gè)區(qū)域命名為內(nèi)部/外部區(qū)域。整個(gè)重新布線層被劃分為4個(gè)區(qū):M_inner^L9、M_outer^L9、M_inner^L10和M_outer^L10。
術(shù)語定義
● 可布線區(qū)(偽單層):M_outer^L10 ∪ M_inner^L10 ∪ M_outer^L9
● 外部區(qū):M_outer^L10 ∪ M_outer^L9
● 內(nèi)部區(qū):M_inner^L9 ∪ M_inner^L10
偽單層重新布線層的布線問題是在可布線區(qū)內(nèi)完成網(wǎng)絡(luò)Ni的Bi和Oi的實(shí)際連線,并最大限度地減小內(nèi)部區(qū)的面積。這也意味著邊界線不是固定的。解決方案就是要確定邊界線的位置。
我們的偽單層布線算法共有4步:第一步是區(qū)域性層分配、可移動的引腳分配和版圖抽取。第二步是完成從一個(gè)凸點(diǎn)焊盤到一個(gè)引腳的網(wǎng)絡(luò)布線。第三步是確定使用哪根線。第四步是完成從I/O焊盤到引腳的布線。圖6顯示了完成可移動引腳分配流程的簡單例子。第一步最重要。好的可移動引腳分配能最大限度地減少重新布線層走線。
圖6:這個(gè)簡單例子解釋了布線流程:(a)區(qū)域性層分配,可移動引腳的分配以及版圖抽取。步驟(b)和(d)描述了使用哪根線以及使用通道布線完成從I/O焊盤到引腳的布線。(e)展示了重新映射進(jìn)原始版圖的布線結(jié)果。
圖7:可移動引腳分配的兩個(gè)版本:(a)從單邊排序的可移動引腳分配。(b)使用凸點(diǎn)引腳選擇算法的可移動引腳分配。凸點(diǎn)引腳選擇算法可以實(shí)現(xiàn)更少走線的布線結(jié)果。
圖7顯示了兩種可移動引腳分配方法。第一個(gè)版本從同一邊完成每排凸點(diǎn)的可移動引腳分配,因此引腳順序和凸點(diǎn)順序是相同的。這種方法可以快速完成可移動引腳分配,但缺點(diǎn)是順序被凸點(diǎn)排固定了。如果凸點(diǎn)順序不理想,就會產(chǎn)生大量的走線。
第二個(gè)也是推薦的方法是引腳選擇算法,如圖8所示。第一步產(chǎn)生所有可能的可移動引腳順序,并在沒有任何交叉網(wǎng)絡(luò)的情況下完成從凸點(diǎn)到引腳的布線。第二步是按照最少交叉數(shù)量的原則從第一步選擇可移動引腳順序。凸點(diǎn)選擇算法確保凸點(diǎn)到引腳連接沒有任何交叉,引腳到焊盤的交叉數(shù)量最少。在使用凸點(diǎn)選擇算法后,再由通道布線算法完成從引腳到I/O焊盤的布線,并確定走線數(shù)量,分配走線資源。最后將布線結(jié)果重新映射到原始版圖,完成偽單層的重新布線層布線。
圖8:凸點(diǎn)選擇算法。(a)產(chǎn)生可移動的引腳順序。(b)選擇可盡量減少可移動引腳和I/O焊盤間交叉連接的引腳順序。
驗(yàn)證有效性
上述框架結(jié)構(gòu)已經(jīng)在一個(gè)大規(guī)模的商業(yè)項(xiàng)目中實(shí)現(xiàn)。首先,芯片被分為4個(gè)區(qū):W、N、E和S。每個(gè)區(qū)包含100個(gè)以上的信號凸點(diǎn)。針對每個(gè)區(qū),我們的布線器可以在不到5秒的時(shí)間內(nèi)產(chǎn)生結(jié)果并完成命令腳本的下載。通過在Encounter Digital Implementation (EDI)中提交這些腳本就完成了物理布線。這個(gè)結(jié)果也可以用任何引腳至引腳布線器實(shí)現(xiàn),因?yàn)樗幸_位置都分配好了。設(shè)計(jì)規(guī)則檢查(DRC)判斷所有結(jié)果都是好的。布線結(jié)果見圖6和圖7,同時(shí)總結(jié)在表I中,其中fcroute是在所定義的EDI中的倒裝芯片布線器,p2proute是點(diǎn)到點(diǎn)布線器。由于沒有簽署披露協(xié)議,因此只顯示了部分結(jié)果。
表I:布線結(jié)果小結(jié)。
本文小結(jié)
本文介紹了在偽單層上完成重新布線層布線的一種方法,這種方法可以用于太過擁塞以至于人工布線都無法實(shí)現(xiàn)單層解決方案的場合。偽單層布線方法提供了替代增加額外金屬層或增加裸片尺寸的可行方法。成功的關(guān)鍵是區(qū)域性層分配、可移動的引腳分配和版圖抽取。這些技術(shù)將重新布線層的布線問題轉(zhuǎn)變成為典型的通道布線問題。利用這種方法可以做到百分之百的布通率,并且最大限度地減小了兩層布線的面積。