深圳宏力捷是一家專業(yè)的PCB設(shè)計(jì)公司,公司擁有平均設(shè)計(jì)經(jīng)驗(yàn)超過(guò)10年的設(shè)計(jì)工程師團(tuán)隊(duì),能夠提供各類多層、高頻、高速等電路板的布線設(shè)計(jì)服務(wù)。接下來(lái)為大家介紹PCB設(shè)計(jì)如何加速和改進(jìn)PCB布線。
PCB布線方法在不斷進(jìn)步,靈活的布線技術(shù)可以縮短導(dǎo)線長(zhǎng)度,釋放更多的PCB空間。傳統(tǒng)PCB布線受到導(dǎo)線坐標(biāo)固定和缺少任意角度導(dǎo)線的限制。去除這些限制可以顯著改善布線的質(zhì)量。本文將通過(guò)實(shí)際例子介紹任意角度布線的優(yōu)勢(shì)、靈活布線的優(yōu)勢(shì)以及一種用于構(gòu)造Steiner樹的新算法。
背景
我們首先來(lái)介紹一些術(shù)語(yǔ)[1-3]。我們將任意角度布線定義為使用任意角度的線段和弧度進(jìn)行的導(dǎo)線布線。它是一種導(dǎo)線布線,但不限于只能使用90度和45度角度的線段。拓?fù)涫讲季€是不粘附柵格和坐標(biāo)的導(dǎo)線布線,不使用像基于形狀的布線器那樣的規(guī)則或不規(guī)則柵格。讓我們把術(shù)語(yǔ)靈活布線定義為沒有形狀固定的導(dǎo)線布線,能夠通過(guò)實(shí)時(shí)導(dǎo)線形狀再計(jì)算實(shí)現(xiàn)下文的轉(zhuǎn)變可能性。只有來(lái)自障礙物的圓弧和它們的公切線被用來(lái)形成走線形狀[4,5]。(障礙物包括引腳、銅箔、禁布區(qū)、過(guò)孔和其它物體)
圖1顯示了兩種PCB模型的部分電路。其中的綠色導(dǎo)線和紅線導(dǎo)線分別走在PCB模型的不同層上。藍(lán)色圓圈是過(guò)孔。紅色元件被高亮顯示。另外有一些紅色的圓形引腳。圖1a是只使用線段和線段間夾角為90度的模型。圖1b是使用弧和任意角度的PCB模型。也許任意角度布線看起來(lái)很奇怪,但它確實(shí)有許多優(yōu)勢(shì)。它的這種布線方式與半個(gè)世紀(jì)前工程師的手工布線方式非常類似。
圖1:兩種PCB模型的部分電路。頂圖:傳統(tǒng)設(shè)計(jì)版本。底圖:同樣的設(shè)計(jì)但采用了任意角度的布線。
圖2顯示了一家名為Digibarn的美國(guó)公司在1972年開發(fā)的完全手工布線的真實(shí)PCB。這是一塊基于Intel 8008的計(jì)算機(jī)內(nèi)的PCB板。圖2所示的任意角度布線事實(shí)上與圖1b很相似。為何他們會(huì)使用任意角度的布線呢?因?yàn)檫@種布線方式有許多優(yōu)勢(shì)。
圖2:1972年開發(fā)的一塊基于Intel 8008的計(jì)算機(jī)中的印刷電路板。(資源來(lái)源:DigiBarn計(jì)算機(jī)博物館)
任意角度布線的優(yōu)勢(shì)
任意角度布線有許多優(yōu)勢(shì)。首先,不使用線段間的角度可以節(jié)省PCB空間(多邊形所占的空間總是要大于內(nèi)切圓)。
傳統(tǒng)的自動(dòng)布線器在緊鄰元件之間只能布3根線(見圖3中的左邊和中間)。而任意角度布線時(shí)的空間足以在相同路徑上布4根線而不違反設(shè)計(jì)規(guī)則檢查(DRC),見圖3右邊。
圖3:左邊和中間的圖:傳統(tǒng)自動(dòng)布線器在緊鄰元件之間只能布3根線。右圖:任意角度布線時(shí)的空間足以在相同路徑上布4根線而不違反DRC。
假設(shè)我們有一個(gè)正方式芯片,想把芯片引腳連接到另外兩列引腳(見圖4)。只使用90度夾角要占很大的面積(見圖4頂部)。
圖4:正方形芯片布線:(頂部)正交版圖布線要求很大的面積;(中間)任意角度布線不僅有助于縮短導(dǎo)線長(zhǎng)度,而且在確保滿足所有要求的同時(shí)占用更小的面積;(底部)旋轉(zhuǎn)芯片可以提供更好的效果,占用面積可以進(jìn)一步縮小兩倍以上。
使用任意角度布線可以縮短芯片和其它引腳之間的距離(圖4中間),同時(shí)減小占用面積。在本例中,面積從30平方厘米縮小到了23平方厘米。
任意角度旋轉(zhuǎn)芯片還可以提供更好的效果。在本例中,面積從23平方厘米縮小到了10平方厘米(圖4底部)。圖5顯示了一塊真實(shí)的PCB。帶旋轉(zhuǎn)芯片功能的任意角度布線是這種電路板的唯一布線方法。這不僅是一個(gè)理論,也是得到實(shí)際應(yīng)用的解決方案(有時(shí)是唯一可行的解決方案)。
圖5:帶旋轉(zhuǎn)芯片功能的任意角度布線是給這種電路板布線的唯一方法。
圖6顯示了一個(gè)簡(jiǎn)單PCB的例子。拓?fù)洳季€器結(jié)果如圖6a所示,而基于最佳形狀的自動(dòng)布線器結(jié)果如圖6b所示。圖6c是實(shí)際PCB的照片?;谧罴研螤畹淖詣?dòng)布線器無(wú)法完成這種電路板的布線,因?yàn)樵恍D(zhuǎn)成任意角度放置。你需要更多的面積,如果不旋轉(zhuǎn)元件,設(shè)備必須做得更大。
圖6:PCB布線例子:(a)拓?fù)涫阶詣?dòng)布線器(完成了100%導(dǎo)線的布線);(b)基于最佳形狀的自動(dòng)布線器(完成了56.3%的導(dǎo)線布線);(c)實(shí)際PCB。
電磁干擾(EMI)
如果沒有并行導(dǎo)線段,版圖性能將得到很大的提升,因?yàn)椴⑿袑?dǎo)線段經(jīng)常是串?dāng)_的來(lái)源。隨著并行導(dǎo)線長(zhǎng)度的增長(zhǎng),串?dāng)_等級(jí)將呈線性增加。當(dāng)并行導(dǎo)線之間的間距增加時(shí),串?dāng)_則呈二次方減小。讓我們把兩條并行的1mm長(zhǎng)導(dǎo)線在間距為d時(shí)所產(chǎn)生的串?dāng)_等級(jí)設(shè)為e(見圖7)。
如果導(dǎo)線段之間有個(gè)夾角,那么當(dāng)這個(gè)夾角增加時(shí),串?dāng)_等級(jí)將下降。這時(shí)的串?dāng)_不取決于導(dǎo)線長(zhǎng)度,僅受限于夾角值:
其中α代表導(dǎo)線段之間的夾角。
圖7:如何導(dǎo)線段之間有個(gè)夾角,那么串?dāng)_等級(jí)將隨這個(gè)夾角的增加而減小(d:導(dǎo)線段之間的距離,α:導(dǎo)線段之間的夾角)。
下面考慮三種導(dǎo)線布線方式。在圖8中的左邊(90度布局),由于并行線段而存在最大的導(dǎo)線長(zhǎng)度和最大的電磁干擾值。在圖8的中間(45度布局),導(dǎo)線長(zhǎng)度和電磁干擾值都減小了。在圖8的右邊(任意角度),導(dǎo)線長(zhǎng)度最短,也沒有并行的導(dǎo)線段,因此干擾值可以忽略不計(jì)。
圖8:三種導(dǎo)線布線方式。
因此任意角度布線有助于減小總的導(dǎo)線長(zhǎng)度,并顯著減少電磁干擾。另外你應(yīng)該還記得對(duì)信號(hào)延時(shí)的影響吧(導(dǎo)線方向不應(yīng)該并行,并且不應(yīng)該垂直于PCB玻璃纖維方向)。
靈活布線的優(yōu)勢(shì)
元件的人工和自動(dòng)移動(dòng)不會(huì)破壞靈活布線中的走線。布線器會(huì)自動(dòng)計(jì)算導(dǎo)線的最佳形狀(考慮必要的安全間隙)。因此靈活布線可以極大地減少編輯拓?fù)渌璧臅r(shí)間,很好地支持因?yàn)橐獫M足限制條件而做的多次重新布線。圖9a顯示的是一個(gè)PCB設(shè)計(jì),移動(dòng)過(guò)孔和分支點(diǎn)后的結(jié)果如圖9b所示。
圖9:自動(dòng)移動(dòng)過(guò)孔(淡藍(lán)色圓)和分支點(diǎn)。(a)原始設(shè)計(jì)的一部分,(b)移動(dòng)過(guò)孔后的設(shè)計(jì),(c)分支點(diǎn)(3條紅色導(dǎo)線)被自動(dòng)移動(dòng)到最佳位置。
在自動(dòng)移動(dòng)過(guò)程中,導(dǎo)線分支點(diǎn)和過(guò)孔被調(diào)整到最佳位置(如圖9c所示)。
在大多數(shù)計(jì)算機(jī)輔助設(shè)計(jì)(CAD)系統(tǒng)中,布線互連問(wèn)題被簡(jiǎn)化為在焊盤、禁布區(qū)和已布好的導(dǎo)線形成的迷宮中按順序?qū)ふ页蓪?duì)點(diǎn)之間的路徑問(wèn)題。當(dāng)找到一條路徑時(shí),它就被固定下來(lái),并成為迷宮的一部分。順序布線的缺點(diǎn)是布線結(jié)果可能與布線的順序有關(guān)。
當(dāng)拓?fù)滟|(zhì)量仍然離完美很遠(yuǎn)時(shí),在局部很小的區(qū)域?qū)l(fā)生“被困住”的問(wèn)題。但不管你重新布線哪根導(dǎo)線,都無(wú)法改善布線的質(zhì)量。這是在使用順序優(yōu)化的所有CAD系統(tǒng)中都存在的很嚴(yán)重的問(wèn)題。
這時(shí)應(yīng)用打彎消除過(guò)程就很有用了[6]。導(dǎo)線打彎是指某條網(wǎng)絡(luò)中的導(dǎo)線想要接入某個(gè)物體時(shí)必須圍著另一條網(wǎng)絡(luò)上的物體四周行走的現(xiàn)象。重新布線一條導(dǎo)線并不能糾正這種現(xiàn)象。
圖10a顯示了一個(gè)打彎的例子。一條點(diǎn)亮的紅色導(dǎo)線圍繞另一條網(wǎng)絡(luò)的一個(gè)引腳行走,一條未點(diǎn)亮的紅色導(dǎo)線接入這個(gè)引腳。圖10b顯示了自動(dòng)處理結(jié)果。在第2種情況中(另一層上),一條點(diǎn)亮的綠色導(dǎo)線通過(guò)改變布線層得到了自動(dòng)調(diào)整(重新布線)(從綠色層到紅色層)。
圖10:通過(guò)自動(dòng)優(yōu)化導(dǎo)線形狀消除導(dǎo)線打彎(用線段近似弧線只是為了顯示沒有弧線的任何角度例子)。(頂部)原始設(shè)計(jì),(底部)消除打彎后的設(shè)計(jì)。紅色打彎導(dǎo)線被高亮顯示。
在Steiner樹中,所有連線都必須以線段方式連接到頂點(diǎn)(終點(diǎn)和新增點(diǎn))。在每個(gè)新增頂點(diǎn)的頂部,三個(gè)線段必須匯聚在一起,終點(diǎn)的線段不得超過(guò)3個(gè)。集中到頂點(diǎn)的線段之間的夾角不得小于120度。構(gòu)造具有這些充足條件性能的Steiner不是很困難,但沒有必要是最小的。圖11中的灰色Steiner樹不是最優(yōu)的,但黑色Steiner樹是最優(yōu)的。
圖11:灰色Steiner樹不是最優(yōu)的,但黑色Steiner樹是最優(yōu)的。
在實(shí)際通信設(shè)計(jì)中,必須考慮到存在不同種類的障礙物。它們會(huì)限制使用兩種算法構(gòu)造最小生成樹(圖12a)的能力和使用幾何方法構(gòu)造Steiner樹(圖12b)的能力。圖中用灰色表示障礙物。
圖12:樹和(灰色顯示的)障礙物。(a)最小生成樹,(b)Steiner樹。
我們建議從任意一個(gè)終結(jié)頂點(diǎn)開始。如果有超過(guò)一個(gè)的相鄰終結(jié)頂點(diǎn),你應(yīng)該選擇一個(gè)允許你繼續(xù)使用第二個(gè)頂點(diǎn)的那個(gè)頂點(diǎn)。這是由角度決定的。
這里的主要機(jī)制是一種基于力的算法,它會(huì)計(jì)算作用在新增頂點(diǎn)上的力,并反復(fù)移動(dòng)它們到一個(gè)平衡點(diǎn)(力的幅度和方向取決于鄰近分支點(diǎn)的導(dǎo)線)。如果接入某個(gè)頂點(diǎn)(終點(diǎn)或新增點(diǎn))的一對(duì)線段之間的角度小于120度(圖13a和圖13b),可以再增加一個(gè)分支點(diǎn)(圖13b和圖13d),然后使用力學(xué)算法優(yōu)化頂點(diǎn)的位置(圖13c和圖13d)。最終結(jié)果如圖13e所示。
值得注意的是,只是按降序排序所有角度然后按這個(gè)順序增加新的頂點(diǎn)是行不通的,結(jié)果會(huì)更糟。在新加一個(gè)節(jié)點(diǎn)之后,你應(yīng)該檢查由4個(gè)引腳組成的子網(wǎng)的最小性:
1.如果頂點(diǎn)增加到其它新增頂點(diǎn)的鄰近位置,要檢查最小的四引腳網(wǎng)絡(luò)(圖14a)。
2.如果四引腳網(wǎng)絡(luò)不是最小的,選擇一對(duì)“對(duì)角”(屬于四邊形對(duì)角線)終點(diǎn)或虛擬的終端節(jié)點(diǎn)(虛擬終端節(jié)點(diǎn)-導(dǎo)線彎曲)。
3.連接終點(diǎn)(虛擬終點(diǎn))到最近的新增頂點(diǎn)的線段被連接終點(diǎn)(虛擬終點(diǎn))到遠(yuǎn)處的新增頂點(diǎn)的線段所代替(圖14b)。
4.使用力學(xué)算法優(yōu)化頂點(diǎn)的位置(圖14c)。
圖14:重新構(gòu)建四引腳子網(wǎng)(a-c):算法步驟。
這種方法并不保證構(gòu)建最小的網(wǎng)絡(luò),但相比其它方法,它不用牧舉就能實(shí)現(xiàn)最小的網(wǎng)絡(luò)長(zhǎng)度。它還考慮到了終點(diǎn)連接被禁止的區(qū)域,并且終端節(jié)點(diǎn)數(shù)量可以是任意的。
其它優(yōu)勢(shì)
任何角度靈活布線還有其它一些有趣的優(yōu)勢(shì)。例如,如果你能借助自動(dòng)的實(shí)時(shí)導(dǎo)線形狀重新計(jì)算功能自動(dòng)移動(dòng)許多物體,你可以創(chuàng)建并行的蛇形線。這種布線方式能夠更好的利用空間,最大限度地減小反復(fù)次數(shù),并且允許靈活地使用容差(見圖15)。如果有兩條蛇形線相互交織在一起,自動(dòng)布線器會(huì)減小其中一條或同時(shí)減小兩條的長(zhǎng)度,具體取決于規(guī)則優(yōu)先級(jí)。
圖15:在自動(dòng)模式中延時(shí)校準(zhǔn)可以按串行而不是并行的方式完成。這樣可以更好的利用空間,最大限度地減少反復(fù)次數(shù),并靈活地使用容差。
BGA元件的布線
下面考慮BGA元件的布線[7]。在傳統(tǒng)的“從外圍到中心”方法中,到外圍的通道數(shù)量將隨著每個(gè)連續(xù)層而逐層減8(由于周長(zhǎng)的減小)。例如,具有784個(gè)引腳、尺寸為28x28mm的元件需要10層。在圖中有些層存在逃逸布線。圖16顯示了一個(gè)BGA的四分之一部分。
圖16:BGA布線。“從外圍到中心”的傳統(tǒng)方法。
與此同時(shí),當(dāng)采用“從中心到外圍”的布線方法時(shí),退出到外圍所要求的通道數(shù)量不會(huì)隨著層的改變而改變。這將極大地減少層的數(shù)量。對(duì)于尺寸為28x28mm的元件來(lái)說(shuō),7層就足夠了。對(duì)于尺寸更大的元件,還可以取得雙贏。圖17顯示了BGA的四分之一部分。
圖17:BGA布線。“從中心到外圍”的布線方法。
圖18顯示了一個(gè)BGA布線的例子。當(dāng)采用“從中心到外圍”的布線方法時(shí),我們可以完成所有網(wǎng)絡(luò)的布線(圖18b)。任意角度的拓?fù)涫阶詣?dòng)布線器就可以做到這一點(diǎn)。傳統(tǒng)的自動(dòng)布線器則無(wú)法布線這個(gè)例子(圖18a)。
圖18:BGA布線。(頂部)傳統(tǒng)的自動(dòng)布線器。38個(gè)網(wǎng)絡(luò)沒有完成布線。(底部)任意角度的拓?fù)涫阶詣?dòng)布線器。所有網(wǎng)絡(luò)都完成了布線。
真實(shí)PCB例子
圖19顯示了一個(gè)真實(shí)PCB的例子,工程師將信號(hào)層數(shù)從6層減少到了4層(與規(guī)格相比)。另外,工程師只花了半天時(shí)間就完成了這塊PCB的布線。
圖19:一個(gè)真實(shí)PCB例子。
小結(jié)
本文介紹了加快和改進(jìn)PCB布線的一些方法,并展示了一些真實(shí)印刷電路板的例子。靈活的任意角度布線和層中無(wú)優(yōu)先方向布線可以幫助你:
1.縮短總的導(dǎo)線長(zhǎng)度
2.減小總的走線面積
3.通過(guò)縮短導(dǎo)線長(zhǎng)度和減少并行長(zhǎng)度減少電磁串?dāng)_等級(jí)
4.減少由于PCB材料的異質(zhì)性引起的信號(hào)群組或差分信號(hào)中的延時(shí)失配
5.改善BGA元件的布線質(zhì)量
6.通過(guò)構(gòu)造Steiner樹改善網(wǎng)絡(luò)結(jié)構(gòu)
7.方便地修改網(wǎng)絡(luò)拓?fù)?/span>
深圳宏力捷推薦服務(wù):PCB設(shè)計(jì)打樣 | PCB抄板打樣 | PCB打樣&批量生產(chǎn) | PCBA代工代料