如今
pcb設(shè)計(jì)考慮的因素越來(lái)越復(fù)雜,如時(shí)鐘、串?dāng)_、阻抗、檢測(cè)、制造工藝等等,這經(jīng)常使得設(shè)計(jì)人員要重復(fù)進(jìn)行大量的布局布線、驗(yàn)證以及維護(hù)等工作。參數(shù)約束編輯器能將這些參數(shù)編到公式中,協(xié)助設(shè)計(jì)人員在設(shè)計(jì)和生產(chǎn)過(guò)程中更好地處理這些有時(shí)甚至還會(huì)互相對(duì)立的參數(shù)。
近年來(lái)對(duì)pcb布局布線的要求越來(lái)越復(fù)雜,集成電路中晶體管數(shù)量還在按摩爾定律預(yù)計(jì)的速度不斷上升,從而使得器件速度更快且每個(gè)脈沖沿上升時(shí)間縮短,同時(shí)管腳數(shù)也越來(lái)越多——常常要到500~2,000個(gè)管腳。所有這一切都會(huì)在設(shè)計(jì)pcb時(shí)帶來(lái)密度、時(shí)鐘以及串?dāng)_等方面的問(wèn)題。
幾年前,大部分pcb上只有不多的幾個(gè)“關(guān)鍵性”節(jié)點(diǎn)(net),通常是指在阻抗、長(zhǎng)度及間隙等方面受到一些約束,pcb設(shè)計(jì)人員一般先對(duì)這些走線進(jìn)行手工布線,然后再用軟件對(duì)整個(gè)電路作大規(guī)模自動(dòng)布線。如今的pcb上常常會(huì)有5,000個(gè)甚至更多的節(jié)點(diǎn),而其中50%以上都屬于關(guān)鍵性節(jié)點(diǎn)。由于面臨著上市時(shí)間的壓力,此時(shí)采用手工布線已不可能。此外,不僅僅關(guān)鍵性節(jié)點(diǎn)的數(shù)量有所增加,每個(gè)節(jié)點(diǎn)的約束條件也在增加。
這些約束條件主要是由于參數(shù)相關(guān)性以及設(shè)計(jì)要求越來(lái)越復(fù)雜而產(chǎn)生的,例如兩條走線的間隔可能取決于一個(gè)和節(jié)點(diǎn)電壓及線路板材料都有關(guān)的函數(shù),數(shù)字IC上升時(shí)間減小對(duì)高時(shí)鐘速度和低時(shí)鐘速度的設(shè)計(jì)都會(huì)產(chǎn)生影響,由于脈沖產(chǎn)生更快而使建立及保持時(shí)間更短,另外互連延時(shí)作為高速電路設(shè)計(jì)總延時(shí)的重要部分對(duì)低速設(shè)計(jì)也同樣非常重要等等。
如果電路板能設(shè)計(jì)得更大一點(diǎn),上面有些問(wèn)題就比較容易解決,但現(xiàn)在的發(fā)展趨勢(shì)卻正好相反。由于在互連延時(shí)及高密度封裝上的要求,電路板正在不斷變小,從而出現(xiàn)了高密度電路設(shè)計(jì),同時(shí)還必須遵循小型化設(shè)計(jì)規(guī)則。上升時(shí)間減小再加上這些小型化設(shè)計(jì)規(guī)則,使串?dāng)_噪聲問(wèn)題變得越來(lái)越突出,而球柵格陣列和其它高密度封裝本身也會(huì)加重串?dāng)_、開(kāi)關(guān)噪聲及地線反彈等問(wèn)題。
固定約束存在的限制
對(duì)付這些問(wèn)題的傳統(tǒng)做法是憑經(jīng)驗(yàn)、缺省值、數(shù)表或計(jì)算方法將電氣和工藝要求轉(zhuǎn)化為固定的約束參數(shù)。例如工程師設(shè)計(jì)電路時(shí)也許先確定一個(gè)額定阻抗,然后根據(jù)最后的工藝要求“估算”出一個(gè)能達(dá)到所需阻抗的額定線寬,或者利用計(jì)算表格或算術(shù)程序?qū)Ω蓴_進(jìn)行測(cè)試,再求出長(zhǎng)度約束條件。
這種方法通常需要設(shè)計(jì)出一整套經(jīng)驗(yàn)數(shù)據(jù)作為pcb設(shè)計(jì)人員的基本指導(dǎo)原則,以便在用自動(dòng)布局布線工具進(jìn)行設(shè)計(jì)時(shí)能夠利用這些數(shù)據(jù)。該方法的問(wèn)題在于經(jīng)驗(yàn)數(shù)據(jù)只是一個(gè)一般性原則,大部分情況下它們都是正確的,但有些時(shí)候卻不起作用或?qū)е洛e(cuò)誤的結(jié)果。
我們以上面確定阻抗的例子來(lái)看看這種方法可能造成的誤差。和阻抗有關(guān)的因素包括電路板材料的電介質(zhì)特性、銅箔高度、各層到地/電源層間的距離及線寬,由于前三個(gè)參數(shù)一般由生產(chǎn)工藝決定,所以設(shè)計(jì)師通常是靠線寬來(lái)控制阻抗。由于每一線路層到地或電源層的距離各不相同,因此對(duì)每一層都用同一個(gè)經(jīng)驗(yàn)數(shù)據(jù)顯然是錯(cuò)誤的。此外在開(kāi)發(fā)過(guò)程中采用的生產(chǎn)工藝或電路板特性可能隨時(shí)會(huì)改變,所以問(wèn)題還會(huì)更加復(fù)雜。
大多數(shù)時(shí)候這些問(wèn)題會(huì)在樣機(jī)制作階段暴露出來(lái),一般是找出問(wèn)題后通過(guò)對(duì)線路板修補(bǔ)或重新進(jìn)行板子設(shè)計(jì)來(lái)解決。這樣做成本比較高,并且修補(bǔ)經(jīng)常還會(huì)帶來(lái)額外的問(wèn)題而需要作進(jìn)一步調(diào)試,最后由于延誤上市時(shí)間而造成收入上的損失更是遠(yuǎn)遠(yuǎn)高于調(diào)試成本。幾乎每家電子生產(chǎn)商都面臨著這樣的問(wèn)題,最終都?xì)w結(jié)到傳統(tǒng)的pcb設(shè)計(jì)軟件無(wú)法跟上當(dāng)前對(duì)電氣性能要求的實(shí)際情況,在這一點(diǎn)上它不像機(jī)械設(shè)計(jì)的經(jīng)驗(yàn)數(shù)據(jù)那么簡(jiǎn)單。
解決方案:參數(shù)化約束
目前設(shè)計(jì)軟件供應(yīng)商們?cè)噲D通過(guò)在約束條件上增加參數(shù)的辦法來(lái)解決這個(gè)問(wèn)題。這種方法最先進(jìn)的地方在于能夠詳細(xì)說(shuō)明完全反映各種內(nèi)部電氣特性的機(jī)械指標(biāo),只要將其加入到
pcb設(shè)計(jì)中,設(shè)計(jì)軟件就可利用這些信息對(duì)自動(dòng)布局布線工具進(jìn)行控制。
當(dāng)后續(xù)生產(chǎn)工藝改變時(shí)也不需要重新作設(shè)計(jì),設(shè)計(jì)人員只需簡(jiǎn)單地更新工藝特性參數(shù),即可自動(dòng)改變相關(guān)約束條件。設(shè)計(jì)人員然后可以運(yùn)行DRC(設(shè)計(jì)規(guī)則檢查)確定新工藝是否還違反了其它設(shè)計(jì)規(guī)則,并找出應(yīng)該對(duì)設(shè)計(jì)的哪些方面進(jìn)行更改才能糾正所有錯(cuò)誤。
約束條件可以用數(shù)學(xué)表達(dá)式的形式輸入,包含常數(shù)、各種運(yùn)算符、向量以及其它設(shè)計(jì)約束,為設(shè)計(jì)人員提供一個(gè)參數(shù)化規(guī)則驅(qū)動(dòng)系統(tǒng)。約束條件甚至能以查表的形式輸入,將它們存放在pcb或原理圖的設(shè)計(jì)文件中。pcb布線、銅箔區(qū)位置及布局工具都要遵照這些條件生成的約束規(guī)則,DRC則驗(yàn)證整個(gè)設(shè)計(jì)是否都符合這些約束,包括線寬、間隔及空間方面的要求(如面積和高度限制)等。
一個(gè)很簡(jiǎn)單的例子是上升時(shí)間約束,一般將其設(shè)置為常數(shù)1.5ns,根據(jù)此條件就可得出最大走線長(zhǎng)度的約束,即用5,800mil/ns乘以上升時(shí)間1.5ns。稍為復(fù)雜一點(diǎn)的例子是元件間隔,它通過(guò)將檢測(cè)角的正切值乘以器件高度來(lái)決定,該算式可算出元件最小間隔值。
分級(jí)管理
參數(shù)化約束的一個(gè)主要的好處在于它能分級(jí)進(jìn)行處理。例如全局線寬規(guī)則可作為一個(gè)設(shè)計(jì)約束用于整個(gè)設(shè)計(jì)中,當(dāng)然會(huì)有個(gè)別區(qū)域或節(jié)點(diǎn)不能照搬這個(gè)原則,這時(shí)就可繞過(guò)高一級(jí)約束而采用分級(jí)設(shè)計(jì)中的低級(jí)約束。以ACCEL Technologies的約束條件編輯器Parametric Constraint Solver為例,共有7級(jí)約束:
1.設(shè)計(jì)約束,用于所有無(wú)其它約束的對(duì)象。
2.層級(jí)約束,用于某一層上的對(duì)象。
3.節(jié)點(diǎn)類型約束,用于某個(gè)類型包含的所有節(jié)點(diǎn)。
4.節(jié)點(diǎn)約束,用于某一個(gè)節(jié)點(diǎn)。
5.類間約束,表示兩類節(jié)點(diǎn)之間的約束。
6.空間約束,用于某個(gè)空間內(nèi)的所有器件。
7.器件約束,用于某一個(gè)器件。
該軟件按照從個(gè)別器件到整個(gè)設(shè)計(jì)規(guī)則的順序遵循各個(gè)設(shè)計(jì)約束,并用圖形的方式顯示出這些規(guī)則在設(shè)計(jì)中的應(yīng)用次序。
·例1:線寬=f(阻抗,層間距,介電常數(shù),銅箔高度)
這里舉例說(shuō)明參數(shù)化約束條件如何作為設(shè)計(jì)規(guī)則控制阻抗。如前所述,阻抗是介電常數(shù)、到最近線路層距離、銅線寬度及高度的函數(shù),由于已確定了設(shè)計(jì)所要求的阻抗,因此可任意取這四個(gè)參數(shù)作為相關(guān)變量重新寫(xiě)出阻抗公式,大多數(shù)情況下設(shè)計(jì)人員能夠控制的參數(shù)只有線寬。
正因?yàn)榇耍瑢?duì)線寬的約束就是阻抗、介電常數(shù)、到最近線路層距離及銅箔高度的函數(shù)。如果將該公式定義為層級(jí)約束而將制造工藝參數(shù)定義為設(shè)計(jì)級(jí)約束,那么當(dāng)所設(shè)計(jì)的線路層改變時(shí)軟件會(huì)自動(dòng)調(diào)整線寬以進(jìn)行補(bǔ)償。同樣道理,如果設(shè)計(jì)的線路板用另一種工藝進(jìn)行生產(chǎn)而使銅箔高度發(fā)生了變化,則只要改變?cè)O(shè)計(jì)級(jí)里的銅箔高度參數(shù)就可使層級(jí)里的相關(guān)規(guī)則自動(dòng)重新計(jì)算。
· 例2:器件間隔=max(默認(rèn)間隔,f(器件高度,檢測(cè)角度))
同時(shí)使用參數(shù)約束和設(shè)計(jì)規(guī)則檢查顯而易見(jiàn)的好處是當(dāng)設(shè)計(jì)修改時(shí),參數(shù)化方法具有很好的可移植性和可監(jiān)測(cè)性。本例表明如何由工藝特性及測(cè)試要求來(lái)決定器件間隔,上面的公式表示器件間隔是器件高度和檢測(cè)角度的函數(shù)。
通常檢測(cè)角度對(duì)整塊板都是一個(gè)常數(shù),所以可在設(shè)計(jì)級(jí)進(jìn)行定義。當(dāng)改由不同的機(jī)器進(jìn)行檢測(cè)時(shí),只需在設(shè)計(jì)級(jí)中輸入新的值即可更新整個(gè)設(shè)計(jì)。將新機(jī)器性能參數(shù)輸入之后,設(shè)計(jì)人員只要簡(jiǎn)單地運(yùn)行一下DRC以檢查器件間隔是否與新的間隔值有沖突,即可知道設(shè)計(jì)是否可行,這要比先分析再改正然后按新間隔要求硬性計(jì)算容易得多。
·例3:元器件布局
除了對(duì)設(shè)計(jì)對(duì)象和約束條件進(jìn)行組織,設(shè)計(jì)規(guī)則還可用于元器件布局,也即它能夠根據(jù)約束條件檢測(cè)出在哪里放置器件不會(huì)帶來(lái)錯(cuò)誤。圖1中突出顯示的部分是滿足物理約束條件(如與板邊沿間隔及器件間隔等)的器件放置區(qū)域,圖2突出顯示的是滿足電性約束的器件放置區(qū)域,如最大走線長(zhǎng)度,圖3僅顯示滿足空間約束的區(qū)域,最后,圖4是前3幅圖中各部分的交集,這就是有效布局區(qū)域,在這個(gè)區(qū)域放置的器件可以滿足所有約束條件。
事實(shí)上用模塊化方式生成約束條件可極大提高其可維護(hù)性和可復(fù)用性。參考前一階段不同層的約束參數(shù)可生成新表達(dá)式,如頂層線寬取決于頂層的距離和銅線高度及設(shè)計(jì)級(jí)中的變量Temp和Diel_Const。請(qǐng)注意設(shè)計(jì)規(guī)則是按由低到高的順序顯示的,改變一個(gè)高一級(jí)約束會(huì)立刻影響參考這個(gè)約束的所有表達(dá)式。
設(shè)計(jì)復(fù)用和文檔
參數(shù)化約束不僅可以顯著改進(jìn)初始設(shè)計(jì)流程,而且對(duì)工程更改和設(shè)計(jì)復(fù)用更為有用,約束條件可作為設(shè)計(jì)、系統(tǒng)和文件資料的一部分,如果不這樣而只存放在工程師或設(shè)計(jì)人員的頭腦中,那么當(dāng)他們轉(zhuǎn)到其它項(xiàng)目時(shí)可能就會(huì)慢慢忘掉。約束文檔記錄了設(shè)計(jì)過(guò)程中應(yīng)遵循的電性能規(guī)則,可使他人有機(jī)會(huì)了解設(shè)計(jì)者意圖,從而易于將這些規(guī)則應(yīng)用到新的制造工藝中或根據(jù)電性能要求進(jìn)行改變。以后的復(fù)用者也可以知道準(zhǔn)確的設(shè)計(jì)規(guī)則,并通過(guò)輸入新的工藝要求而進(jìn)行更改,不必再去猜測(cè)諸如線寬是如何得到之類的問(wèn)題。
本文結(jié)論
參數(shù)約束編輯器有助于多維約束條件下的pcb布局布線,這也是第一次使自動(dòng)布線軟件和設(shè)計(jì)規(guī)則完全按照復(fù)雜的電氣和工藝要求進(jìn)行檢查,而不是僅僅靠經(jīng)驗(yàn)或簡(jiǎn)單沒(méi)多大用處的設(shè)計(jì)規(guī)則。其結(jié)果是設(shè)計(jì)能夠做到一次成功,減少甚至取消樣機(jī)調(diào)試。