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