李 揚(yáng)
(奧肯思科技有限公司,北京 100045)
?
航天計(jì)算機(jī)研制中的高速電路仿真技術(shù)
李 揚(yáng)
(奧肯思科技有限公司,北京 100045)
主要介紹了高速電路仿真技術(shù)在航天計(jì)算機(jī)研制中的應(yīng)用,通過某航天計(jì)算機(jī)主板實(shí)際項(xiàng)目的設(shè)計(jì)和仿真,介紹了高速電路設(shè)計(jì)中信號完整性仿真的流程和方法;通過前仿真對設(shè)計(jì)的指導(dǎo)以及后仿真對設(shè)計(jì)的驗(yàn)證,詳細(xì)描述了高速電路設(shè)計(jì)的流程,并提出高速電路設(shè)計(jì)應(yīng)注意的問題。
信號完整性;串?dāng)_;電磁兼容性;前仿真;后仿真;IBIS模型
隨著航天技術(shù)的發(fā)展,對航天計(jì)算機(jī)處理能力的要求也不斷提高,中央處理器CPU及其周邊器件工作頻率的提高不可避免地引發(fā)高速電路問題,因此,高速電路設(shè)計(jì)也成為航天計(jì)算機(jī)研制中的一個關(guān)鍵性問題。
在高速電路設(shè)計(jì)中,隨著系統(tǒng)工作頻率的提高和布線密度的增加,信號完整性(Signal Integrity)、串?dāng)_(Crosstalk)、EMC(Electro Magnetic Compatibility)等問題對于設(shè)計(jì)高質(zhì)量的電路越來越重要。要解決這些問題,通過高速電路仿真來輔助設(shè)計(jì)是十分有效的方法,通過仿真可以掌握信號傳播的基本特性[1]。在設(shè)計(jì)初期,仿真對系統(tǒng)設(shè)計(jì)起著指導(dǎo)的作用,用來確定在各種可選的情況下做出一種最合理的選擇,比如元器件不同的驅(qū)動能力、傳輸線的拓?fù)浣Y(jié)構(gòu)、終端匹配的方式等。在設(shè)計(jì)后期,仿真用來驗(yàn)證系統(tǒng)電路設(shè)計(jì)的可行性。在本設(shè)計(jì)中,將設(shè)計(jì)初期的仿真稱之為前仿真,設(shè)計(jì)后期的仿真驗(yàn)證稱之為后仿真。
需要注意的是,在實(shí)際電路環(huán)境中,還存在大量其他因素影響信號質(zhì)量,這時就需要靈活應(yīng)用高速電路設(shè)計(jì)概念及一些基本設(shè)計(jì)原則以及平時積累的經(jīng)驗(yàn)來分析問題。通過高速電路的理論知識并結(jié)合以往電路設(shè)計(jì)的經(jīng)驗(yàn)來確定最終的設(shè)計(jì)方案。
本文結(jié)合一種高性能航天計(jì)算機(jī)主板研制過程中遇到的高速電路問題及其解決方法,闡述了高速電路設(shè)計(jì)的基本方法,給出了信號完整性仿真的結(jié)果,并提出高速電路設(shè)計(jì)中應(yīng)注意的問題。
本文所述的電路設(shè)計(jì)采用了Mentor Graphics公司的原理圖及PCB設(shè)計(jì)軟件,高速信號完整性仿真采用了Mentor Graphics的HyperLynx SI高速信號完整性仿真軟件。
圖1 高速電路設(shè)計(jì)流程圖
對于低速電路設(shè)計(jì),通常的解決方法是:原理圖→硬件實(shí)現(xiàn)→樣機(jī)調(diào)試等幾個關(guān)鍵的步驟,調(diào)試中出現(xiàn)問題的解決方案也多是通過檢查原理圖、更改原理圖設(shè)計(jì)來實(shí)現(xiàn)。而高速電路設(shè)計(jì)中,即使原理圖正確無誤,也很可能因?yàn)樾盘柾暾缘葐栴}會使原理正確的電路在實(shí)際中無法正常工作。
通常,高速電路設(shè)計(jì)中的設(shè)計(jì)流程一般為: 原理圖設(shè)計(jì)→前仿真→PCB布局→確定布線規(guī)則→布線→后仿真→制板→硬件調(diào)試[2]。高速電路設(shè)計(jì)的流程圖如圖1所示。
原理圖設(shè)計(jì)階段的主要工作是確定系統(tǒng)的結(jié)構(gòu)、所采用的元器件以及使用的總線等,參考元器件手冊,選擇元器件的工作方式并進(jìn)行正確的網(wǎng)絡(luò)互連。
該航天計(jì)算機(jī)主板上的主要器件為CPU、FPGA、SDRAM、BOOTROM、Flash Disk、1553B接口芯片、Compact PCI接插件等,主板原理如圖2所示。
圖2 主板原理圖
主板上CPU運(yùn)行時鐘可達(dá)到250 MHz,處理能力可達(dá)到300 MIPS,SDRAM工作頻率為100 MHz,PCI總線工作頻率33 MHz,都屬于高速信號的范疇,這都需要通過高速電路仿真來確定合理的設(shè)計(jì)方案[3]。
通常,PCB板在設(shè)計(jì)完成之后要實(shí)施有效的解決辦法,需要花費(fèi)大量時間和費(fèi)用,甚至可能需要重新設(shè)計(jì)。相比之下,如果在設(shè)計(jì)初期和設(shè)計(jì)過程中就綜合考慮高速電路可能會造成的影響,修改同樣的問題所花的時間和費(fèi)用要少得多,因此,在電路板設(shè)計(jì)之前進(jìn)行深入細(xì)致的仿真分析及電路設(shè)計(jì)的前仿真是非常必要的。
前仿真可根據(jù)設(shè)計(jì)對信號完整性與時序的要求,在布局和布線前幫助設(shè)計(jì)者合理安排器件布局、規(guī)劃網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)以及確定關(guān)鍵信號的布線策略。
2.1 模型選擇
仿真中首先要解決的一個問題是元器件的模型問題,目前常用的模型為Spice模型和IBIS模型,Spice模型由Buffer內(nèi)部的電路結(jié)構(gòu)和工藝參數(shù)構(gòu)成,因?yàn)橹R產(chǎn)權(quán)等問題,一般廠商并不公開公布。IBIS模型數(shù)據(jù)來源于Spice模型,它基于Spice仿真結(jié)果而采用表格化的V-I及V-T曲線描述Buffer的行為,其特點(diǎn)是運(yùn)行速度較快,并且保護(hù)了廠商的知識產(chǎn)權(quán),便于與用戶間的數(shù)據(jù)交換[4]。IBIS模型已經(jīng)得到各主要EDA工具廠家仿真工具的支持。本設(shè)計(jì)中,器件的仿真模型選用了IBIS模型。
從器件廠商網(wǎng)站下載得到的IBIS模型可能會因?yàn)榉菃握{(diào)等問題需要進(jìn)行檢查和編輯,在本設(shè)計(jì)中采用的HyperLynx Visual IBIS Editor模型編輯工具對模型進(jìn)行了檢查和編輯,使之符合仿真要求[5]。
2.2 器件驅(qū)動能力選擇
在進(jìn)行前仿真之前,有些參數(shù)已經(jīng)基本確定,比如各種信號的線寬、線間距、走線類型、介電常數(shù)等參數(shù)都應(yīng)該能確定下來,這些參數(shù)實(shí)際也是進(jìn)行仿真的約束條件。在本設(shè)計(jì)中由于CPU使用手冊對地址總線和PCI總線推薦串聯(lián)10 Ω電阻,這相當(dāng)于在仿真中采用了串聯(lián)的終端匹配方式。終端匹配方式確定后,在前仿真中主要的工作就是CPU總線驅(qū)動能力的選擇以及總線拓?fù)浣Y(jié)構(gòu)的選擇。
CPU的時鐘總共有四路可以提供,而SDRAM需要有5路時鐘輸入,是采用四路輸出到SDRAM,其中第四路分成兩路輸出,還是采用1路輸出后分成5路到SDRAM的負(fù)載端,主要需考慮的是CPU時鐘信號的驅(qū)動能力。
如果CPU時鐘信號驅(qū)動能力較弱,就需采用前一種方案,如果驅(qū)動能力足夠強(qiáng),就應(yīng)該采用第二種方案。圖3給出兩種連接方式的仿真結(jié)果。
圖3 兩種時鐘連接方式仿真結(jié)果
通過仿真可以看出,采用第二種方案能滿足信號質(zhì)量的要求。雖然信號上升時間較第一種稍長,但避免了過沖的出現(xiàn),并且,對于高速電路設(shè)計(jì),在滿足時序的前提下,較大的上升時間可以避免傳輸線效應(yīng)的過早出現(xiàn),因而對信號完整性及EMC都是有益的,而且一路輸出布線簡單,各負(fù)載之間的同步更容易保證。所以,本設(shè)計(jì)采用了第二種方案。因?yàn)闀r鐘信號需要考慮同步,其拓?fù)浣Y(jié)構(gòu)選擇為遠(yuǎn)端分支連接。
時鐘的驅(qū)動能力確定后,CPU地址和數(shù)據(jù)總線驅(qū)動能力選擇也需要通過前仿真來確定。在本設(shè)計(jì)中,CPU地址總線有四種驅(qū)動能力可供選擇,數(shù)據(jù)總線有兩種驅(qū)動能力可供選擇。
地址總線四種驅(qū)動能力下的仿真結(jié)果如圖4所示。
圖4 地址總線的四種驅(qū)動能力下的仿真結(jié)果
數(shù)據(jù)總線兩種驅(qū)動能力下的仿真結(jié)果如圖5所示。
圖5 數(shù)據(jù)總線兩種驅(qū)動能力下的仿真結(jié)果
從仿真結(jié)果可以看出,對于本設(shè)計(jì)中的CPU,地址總線選擇弱驅(qū)動能力時,過沖、反射都比較小,信號完整性和EMC特性也比較好;對于數(shù)據(jù)總線,根據(jù)同樣的判斷原則,也應(yīng)當(dāng)選擇弱驅(qū)動能力。
2.3 規(guī)劃總線拓?fù)浣Y(jié)構(gòu)
CPU驅(qū)動能力確定后,下一步需要通過前仿真確定總線拓?fù)浣Y(jié)構(gòu),圖6是幾種比較典型的拓?fù)浣Y(jié)構(gòu)。
點(diǎn)到點(diǎn)(Point-to-Point)拓?fù)浣Y(jié)構(gòu)比較簡單,只要在發(fā)送端或接收端進(jìn)行適當(dāng)?shù)淖杩蛊ヅ浔憧梢缘玫捷^好的信號質(zhì)量;星型(Star)拓?fù)浣Y(jié)構(gòu)適合于對每個分支要求同步或者均衡的設(shè)計(jì);菊花鏈(Daisy chain)拓?fù)浣Y(jié)構(gòu)適合于對網(wǎng)絡(luò)中的每個分支并不需要完全同步或均衡的設(shè)計(jì);遠(yuǎn)端分支(Far-end cluster),跟星型有些類似,只不過分支靠近接收端,通常在時鐘信號分支中采用。
當(dāng)傳輸線由兩段不同特性阻抗的傳輸線組成時,連接點(diǎn)處也會產(chǎn)生信號反射,傳輸線上出現(xiàn)的分叉點(diǎn)就是這樣一個阻抗不連續(xù)點(diǎn)。在高速電路設(shè)計(jì)中,由于傳輸線特性的存在,導(dǎo)致多端網(wǎng)絡(luò)在使用不同的拓?fù)浣Y(jié)構(gòu)和阻抗匹配方式時,各點(diǎn)得到的信號波形不一樣。
在本設(shè)計(jì)中,地址、數(shù)據(jù)總線需從CPU連接到FPGA、SDRAM、FALSH DISK等,其中CPU和SDRAM之間的信號為關(guān)鍵信號,通常認(rèn)為,縮短傳輸線長度,減少傳輸線效應(yīng)是提高信號質(zhì)量的關(guān)鍵。因此在原理設(shè)計(jì)時考慮將SDRAM布局離CPU近一些,初步考慮布局時SDRAM應(yīng)該緊靠CPU。對于地址、數(shù)據(jù)總線的拓?fù)浣Y(jié)構(gòu),根據(jù)本設(shè)計(jì)的實(shí)際情況應(yīng)在星型和菊花鏈之間進(jìn)行選擇,至于到底是采用星型連接還是菊花鏈連接,就需要通過仿真來獲取合理的答案。
前仿真主要是在HyperLynx SI的前仿真環(huán)境LineSim下進(jìn)行,圖7是采用星型和菊花鏈兩種拓?fù)浣Y(jié)構(gòu)得到的仿真結(jié)果。
圖7 兩種不同拓?fù)浣Y(jié)構(gòu)仿真結(jié)果
從圖7仿真結(jié)果可以看出,采用菊花鏈方式信號質(zhì)量比較好,并且可以得出在菊花鏈的遠(yuǎn)端信號質(zhì)量相對較好,上升時間也較短,所以將速率較高、對信號質(zhì)量要求較嚴(yán)格的SDRAM放在菊花鏈的遠(yuǎn)端,這與最初原理圖設(shè)計(jì)時的考慮恰好是相反的,需要重點(diǎn)關(guān)注。
2.4 前仿真結(jié)論和對設(shè)計(jì)的指導(dǎo)
至此,前仿真工作已經(jīng)基本完成。通過前仿真可得到的結(jié)論如下:
(1)地址和數(shù)據(jù)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)選擇菊花鏈連接方式,并且將信號質(zhì)量要求較高的SDRAM放在菊花鏈的遠(yuǎn)端。
(2)時鐘網(wǎng)絡(luò)采用1對5的連接方式,拓?fù)浣Y(jié)構(gòu)為遠(yuǎn)端分支連接。
(3)CPU地址總線選擇弱驅(qū)動能力。
(4)CPU數(shù)據(jù)總線選擇弱驅(qū)動能力。
(5)串聯(lián)電阻的匹配方式,在仿真中得到檢驗(yàn),效果較好,能夠滿足設(shè)計(jì)要求。
前仿真結(jié)束后的工作就是電路板布局,布局的原則是參照前仿真結(jié)果,并結(jié)合以往的設(shè)計(jì)經(jīng)驗(yàn),在PCB設(shè)計(jì)工具中完成。SDRAM因?yàn)樘幱诰栈ㄦ湹倪h(yuǎn)端,所以放在了離CPU較遠(yuǎn)的位置,與最初原理設(shè)計(jì)時的考慮是不同的。
布局完成后的主要工作就是布線,在布線之前首先要設(shè)置好布線規(guī)則。
布線規(guī)則主要是限制各個網(wǎng)絡(luò)走線的長度、線間距、走線寬度、扇出方式、過孔選擇,以及網(wǎng)絡(luò)拓?fù)湟?guī)劃等。同時,對電路板的層定義、各層的布線方向、平面層分布、電源分割等也需要在布線前設(shè)置完成。
本主板設(shè)計(jì)為8層板結(jié)構(gòu),分為四個走線層,四個平面層,電路板各層分布如圖8所示,其中白色為走線層,灰色表示平面層(電源平面或地平面)。
圖8 電路板各層分布
因?yàn)槭褂?2.5 V和+5 V電源的元器件分布在電路板的不同部位,該設(shè)計(jì)對第7層進(jìn)行了電源平面層分割。分割時應(yīng)當(dāng)重點(diǎn)考慮平面層的分割線不能阻擋高速信號的通路。
各種規(guī)則設(shè)定好后就是布線,布線的原則是先布關(guān)鍵信號,然后布比較重要的信號,最后布一般信號;先從信號最密的地方開始布線。同時,給信號安排合適的布線層,確保高速信號有完整的回流路徑。本設(shè)計(jì)采用了手動布線結(jié)合自動布線的方法。首先手動完成關(guān)鍵信號和比較重要信號的布線,并將完成的布線鎖定保護(hù)起來,然后采用自動布線繼續(xù)布線,直到完成100%。在時間許可的情況下,應(yīng)盡量采用手動布線,這樣才能體現(xiàn)設(shè)計(jì)者的意圖,更能保證信號傳輸?shù)馁|(zhì)量。
布線完成后的工作是對設(shè)計(jì)進(jìn)行后仿真,驗(yàn)證電路設(shè)計(jì)的可行性。
后仿真可分為關(guān)鍵信號仿真和整板仿真,通過關(guān)鍵信號仿真檢查關(guān)鍵信號是否滿足信號完整性、串?dāng)_和EMC的要求;通過整板仿真,檢查整個板子上的所有信號,仿真報告會給出提示,說明哪些信號可能會存在信號完整性、串?dāng)_和EMC等問題。
后仿真的主要功能是驗(yàn)證電路設(shè)計(jì)的可行性,如果后仿真不能通過,系統(tǒng)就得重新進(jìn)行設(shè)計(jì)[6]。所以,對于高速電路設(shè)計(jì),前仿真更為重要。前仿真可以確保系統(tǒng)在一開始就能進(jìn)行正確合理的設(shè)計(jì),前仿真做充分了,后仿真就會有比較滿意的結(jié)果。如果前仿真沒有認(rèn)真完成就急于開始布局和布線,往往后仿真就不能順利通過,結(jié)果可能是從頭再來,人力和資源消耗都比較大,還會耽誤項(xiàng)目進(jìn)度。
后仿真是在HyperLynx SI的BoardSim里進(jìn)行的,本設(shè)計(jì)在布線完成后對關(guān)鍵信號和部分重要信號進(jìn)行了后仿真驗(yàn)證,信號質(zhì)量均滿足信號完整性的要求。
圖9給出布線完成后對PCI時鐘和地址數(shù)據(jù)的信號完整性仿真結(jié)果。
圖9 PCI后仿真驗(yàn)證結(jié)果
后仿真驗(yàn)證通過后,在PCB設(shè)計(jì)工具中進(jìn)行設(shè)計(jì)規(guī)則DRC檢查,檢查通過或問題得到確認(rèn)后,就可以輸出Gerber和Drill文件,進(jìn)行PCB制板、焊接和裝配等環(huán)節(jié),然后就是硬件電路調(diào)試。
該航天計(jì)算機(jī)主板在硬件電路調(diào)試中,采用示波器對關(guān)鍵信號進(jìn)行了測量,并與HyperLynx SI軟件仿真結(jié)果進(jìn)行了比對,測量結(jié)果和仿真結(jié)果具有較高的一致性,驗(yàn)證了仿真的準(zhǔn)確性,仿真對設(shè)計(jì)也起到了真正的指導(dǎo)作用。
本航天計(jì)算機(jī)主板采用了正確的設(shè)計(jì)方法,進(jìn)行了比較充分的信號完整性前仿真和后仿真,靈活運(yùn)用了高速電路設(shè)計(jì)的理論并結(jié)合以往電路設(shè)計(jì)的經(jīng)驗(yàn),所以,系統(tǒng)在硬件調(diào)試時順利通過。
該航天計(jì)算機(jī)性能滿足設(shè)計(jì)指標(biāo)要求,工作穩(wěn)定可靠,并成功應(yīng)用到航天項(xiàng)目中,達(dá)到了預(yù)期的目標(biāo)。
[1] JOHNSON H, GRAHAM M. High-speed digital design: a handbook of black magic[M].北京:電子工業(yè)出版社, 2003.
[2] MPC8240 integrated processor user’s manual[Z]. Motorola Corporation, 1999.
[3] Hyper Lynx signal integrity analysis workbook[Z]. Mentor Graphics, 2012.
[4] 孫宇貞.高速電路的信號完整性分析[J].電子技術(shù)應(yīng)用,2005, 31(3):73-76.
[5] 張志偉.基于時域有限差分法的IBIS模型修正[J].微型機(jī)與應(yīng)用,2011, 30(9):93-95.
[6] 謝金明,著.譚博,改編.高速數(shù)字電路設(shè)計(jì)與噪聲控制技術(shù)[M].北京:電子工業(yè)出版社,2003.
High-speed circuit simulation for the aerospace computer research
Li Yang
(AcconSys Technology Co., Ltd., Beijing 100045, China)
This paper mainly discussed the high-speed circuit simulation used in the aerospace computer research. It introduced the technique and flow of the signal integrity simulation. Through the pre-simulation we get the guidance and through post-simulation we validate the design. The paper describes the flow of high-speed circuit simulation in detail and puts forward what should be paid attention to in the high speed signal design.
signal integrity; crosstalk; electro magnetic compatibility (EMC); pre-simulation; post-simulation; IBIS model
V446+.4
A
10.19358/j.issn.1674- 7720.2017.12.009
李揚(yáng).航天計(jì)算機(jī)研制中的高速電路仿真技術(shù)[J].微型機(jī)與應(yīng)用,2017,36(12):29-32.
2016-11-29)
李揚(yáng)(1975-)男,碩士,SiP/PCB技術(shù)專家,主要研究方向:SiP/PCB設(shè)計(jì)與仿真技術(shù)。