賈明福,宋舒雯,王 寧,袁 寰
(北京自動(dòng)化控制設(shè)備研究所,北京 100074)
近年來,隨著半導(dǎo)體工藝技術(shù)的迅猛發(fā)展,晶體管的體積越來越小,芯片的集成度越來越高,單位芯片內(nèi)的晶體管數(shù)量逐漸增加,數(shù)字電路系統(tǒng)朝著高密度和低成本的趨勢(shì)不斷發(fā)展[1]。與此同時(shí),板級(jí)電路信號(hào)速度不斷提升,串?dāng)_、反射、振鈴等信號(hào)完整性問題日益突出[2]。
作為典型的數(shù)字電路,慣性捷聯(lián)導(dǎo)航系統(tǒng)的數(shù)字時(shí)鐘速率也不斷提升,由此帶來的信號(hào)完整性問題已不容忽視。隨著捷聯(lián)慣性技術(shù)的不斷發(fā)展和成熟,慣性導(dǎo)航系統(tǒng)正向著更寬更廣的領(lǐng)域發(fā)展,如智能炸彈、水下無人制導(dǎo)系統(tǒng)及車載導(dǎo)航等[3-7]。應(yīng)用領(lǐng)域的拓展和工作速率的提升使得產(chǎn)品的功能性要求和可靠性要求越來越高。各功能電路信號(hào)完整性的好壞將直接影響整個(gè)慣導(dǎo)系統(tǒng)的可靠性。
在高速數(shù)字電路中,若信號(hào)完整性問題不能夠得到及時(shí)解決,將會(huì)直接導(dǎo)致信號(hào)失真、時(shí)序紊亂等,從而造成系統(tǒng)誤工作甚至系統(tǒng)崩潰[8]。傳統(tǒng)的經(jīng)驗(yàn)設(shè)計(jì)已無法滿足現(xiàn)代半導(dǎo)體產(chǎn)業(yè)高速、低電壓的技術(shù)路線,在電路設(shè)計(jì)中加入信號(hào)完整性仿真成為保證產(chǎn)品可靠性的必需環(huán)節(jié)[9]。
本文以慣性捷聯(lián)導(dǎo)航系統(tǒng)為例,針對(duì)傳統(tǒng)經(jīng)驗(yàn)設(shè)計(jì)下的某導(dǎo)航計(jì)算機(jī)SDRAM時(shí)鐘信號(hào)異常問題進(jìn)行了信號(hào)完整性仿真與分析,通過對(duì)SDRAM時(shí)鐘信號(hào)傳輸路徑進(jìn)行合理的端接設(shè)計(jì),得到了符合時(shí)序要求的時(shí)鐘波形。仿真和實(shí)驗(yàn)結(jié)果表明,將信號(hào)完整性仿真融入高速數(shù)字電路設(shè)計(jì)中,有利于指導(dǎo)設(shè)計(jì),提高電路可靠性,提前規(guī)避風(fēng)險(xiǎn)。
嵌入式導(dǎo)航計(jì)算機(jī)作為捷聯(lián)式慣性導(dǎo)航系統(tǒng)的核心設(shè)備,主要分為兩部分功能電路,分別是信息預(yù)處理部分和導(dǎo)航計(jì)算部分。其中信息預(yù)處理部分主要完成慣性信息的采集及預(yù)處理等功能;導(dǎo)航計(jì)算部分主要完成慣導(dǎo)系統(tǒng)導(dǎo)航解算以及與外部設(shè)備的信息傳遞[10]。
導(dǎo)航計(jì)算機(jī)硬件電路主要由電源、時(shí)鐘、處理器、存儲(chǔ)器和外圍設(shè)備組成。其功能電路結(jié)構(gòu)示意圖如圖1所示。處理器系統(tǒng)由DSP擴(kuò)展外部程序存儲(chǔ)器FLASH和數(shù)據(jù)存儲(chǔ)器SDRAM組成。
圖1 導(dǎo)航計(jì)算機(jī)功能電路結(jié)構(gòu)示意圖Fig.1 Schematic diagram of circuit structure for navigation computer
信號(hào)完整性可以泛指信號(hào)的電壓、電流在互連結(jié)構(gòu)傳輸中的信號(hào)質(zhì)量問題,包括噪聲、干擾以及由其造成的時(shí)序影響等[11]。信號(hào)完整性需要保證信號(hào)的質(zhì)量,即要保證信號(hào)在驅(qū)動(dòng)端、互連結(jié)構(gòu)上,特別是接收端上的特性,避免產(chǎn)生功能性和穩(wěn)定性方面的問題[12]。
從傳統(tǒng)意義上的數(shù)字波形來看,信號(hào)質(zhì)量主要從過沖、振鈴、邊沿單調(diào)性等幾個(gè)方面進(jìn)行評(píng)判[13-14]。具體定義如下:
1)過沖包括上過沖(Overshoot_High)和下過沖(Overshoot_Low)[15]。上過沖是信號(hào)高于信號(hào)供電電源電壓Vcc的最高電壓,下過沖是信號(hào)低于參考地電壓Vss的最低電壓。過大的過沖會(huì)導(dǎo)致信號(hào)誤觸發(fā)、損壞芯片或者影響其使用壽命。
2)振鈴(Ringing)是信號(hào)跳變之后的振蕩。振鈴會(huì)使信號(hào)的噪聲容限減小,過大會(huì)造成邏輯錯(cuò)誤,而且會(huì)使信號(hào)的高頻分量增加,加劇電磁干擾(Electromagnetic Interference, EMI)問題[16]。
3)邊沿單調(diào)性(Monotonicity)是指信號(hào)上升或下降沿的回溝。對(duì)于邊沿判決的時(shí)鐘信號(hào),波形邊沿在翻轉(zhuǎn)門限電平處的非單調(diào)性可能造成邏輯判斷錯(cuò)誤[17]。
除此之外,廣義的信號(hào)質(zhì)量還包括所有可能引起信號(hào)接收、時(shí)序、工作穩(wěn)定性或者電磁干擾方面的不正?,F(xiàn)象[18]。因此,在進(jìn)行數(shù)字電路設(shè)計(jì)時(shí),要合理地運(yùn)用信號(hào)完整性技術(shù)手段,反復(fù)驗(yàn)證,不斷優(yōu)化,以保證信號(hào)的傳輸質(zhì)量。
在某慣導(dǎo)系統(tǒng)研制過程中,采用傳統(tǒng)經(jīng)驗(yàn)設(shè)計(jì)方法設(shè)計(jì)了一款導(dǎo)航計(jì)算機(jī)。在系統(tǒng)進(jìn)行測(cè)試的過程中發(fā)現(xiàn)處理器通電自檢時(shí)報(bào)用戶區(qū)程序CRC校驗(yàn)錯(cuò)誤,未完成通電加載。連接仿真器對(duì)FLASH區(qū)及SDRAM區(qū)進(jìn)行測(cè)試,多次測(cè)試FLASH區(qū)并未發(fā)現(xiàn)錯(cuò)誤,但對(duì)SDRAM區(qū)進(jìn)行測(cè)試時(shí),出現(xiàn)讀出和寫入數(shù)據(jù)不相符的情況,所以此次故障發(fā)生的原因?yàn)樘幚砥髟L問SDRAM異常。
SDRAM各信號(hào)包括時(shí)鐘信號(hào)、復(fù)位信號(hào)、讀寫控制信號(hào)、地址總線信號(hào)以及數(shù)據(jù)總線信號(hào)。使用實(shí)驗(yàn)室最高帶寬的示波器(2GHz采樣率/500MHz帶寬)對(duì)上述信號(hào)進(jìn)行測(cè)量,波形未見異常,但在測(cè)量ECLKOUT信號(hào)時(shí)SDRAM訪問故障消失,說明ECLKOUT信號(hào)完整性可能存在問題,但現(xiàn)有儀器無法準(zhǔn)確測(cè)量。用仿真軟件對(duì)SDRAM各信號(hào)進(jìn)行信號(hào)完整性仿真掃描,除時(shí)鐘信號(hào)網(wǎng)絡(luò)ECLKOUT外其余信號(hào)波形均未發(fā)現(xiàn)異常。ECLKOUT仿真波形如圖2所示。
圖2 ECLKOUT信號(hào)仿真結(jié)果Fig.2 Simulation result of ECLKOUT signal
由圖2可以看出,在時(shí)鐘信號(hào)的上升邊和下降沿出現(xiàn)了非單調(diào)性問題。對(duì)于時(shí)鐘沿采樣的信號(hào),如果存在非單調(diào)性,就可能引起器件的時(shí)序錯(cuò)誤,進(jìn)而導(dǎo)致功能錯(cuò)誤,如采樣延遲或者在周期內(nèi)無法完成采樣、出現(xiàn)誤觸發(fā)而產(chǎn)生誤碼等。
借用安捷倫開放實(shí)驗(yàn)室高帶寬有源探頭示波器測(cè)得SDRAM時(shí)鐘輸入管腳處信號(hào)波形如圖3所示。
圖3 裝配22Ω端接電阻ECLKOUT信號(hào)測(cè)量波形Fig.3 Measurement waveform of ECLKOUT signal with 22Ω resistance
從圖2和圖3中可以看出,信號(hào)的仿真結(jié)果與實(shí)測(cè)結(jié)果基本一致,ECLKOUT信號(hào)上升沿在1.82V附近存在不單調(diào)現(xiàn)象,下降沿在1.31V附近存在不單調(diào)現(xiàn)象。圖4所示的SDRAM數(shù)據(jù)手冊(cè)要求高電平判決門限VIH為2V,低電平判決門限VIL為0.8V,即0.8~2V為信號(hào)判決門限的未定態(tài)區(qū)間。
圖4 SDRAM直流電氣特性Fig.4 DC electrical characteristics of SDRAM
若時(shí)鐘信號(hào)ECLKOUT在未定態(tài)區(qū)間存在不單調(diào)現(xiàn)象,會(huì)引起器件采集時(shí)鐘信號(hào)錯(cuò)誤,導(dǎo)致器件讀寫時(shí)序錯(cuò)誤或者造成器件內(nèi)部狀態(tài)機(jī)工作錯(cuò)誤。這樣會(huì)造成處理器訪問SDRAM錯(cuò)誤,導(dǎo)致處理器加載異常。
一般來說,在電路板投產(chǎn)前可以通過引入信號(hào)完整性仿真,從阻抗匹配、更改PCB走線、改變端接拓?fù)浣Y(jié)構(gòu)等方面改善信號(hào)完整性。但在該導(dǎo)航計(jì)算機(jī)產(chǎn)品已投產(chǎn),PCB走線已確定的情況下,最好不改變走線的拓?fù)浣Y(jié)構(gòu),選擇在已有設(shè)計(jì)的基礎(chǔ)上通過信號(hào)完整性仿真優(yōu)化改變端接電阻的方式進(jìn)行調(diào)整。
該導(dǎo)航計(jì)算機(jī)時(shí)鐘信號(hào)ECLKOUT的拓?fù)浣Y(jié)構(gòu)如圖5所示。在原版設(shè)計(jì)中,ECLKOUT信號(hào)經(jīng)過22Ω的串行端接電阻后,驅(qū)動(dòng)SDRAM和FPGA這2個(gè)串行負(fù)載。其中端接電阻R1后端到SDRAM的走線長(zhǎng)度為31.4706mm,SDRAM到FPGA之間的走線長(zhǎng)度為90.805mm。
圖5 ECLKOUT信號(hào)拓?fù)浣Y(jié)構(gòu)圖Fig.5 Topology diagram of ECLKOUT signal
根據(jù)圖5拓?fù)浣Y(jié)構(gòu)及走線長(zhǎng)度在仿真軟件中建立仿真模型,如圖6所示。
圖6 ECLKOUT信號(hào)仿真模型Fig.6 Simulation model of ECLKOUT signal
對(duì)該模型中R1進(jìn)行參數(shù)掃描,選取起始值為0Ω,考慮到阻抗匹配,終值選取50Ω,步進(jìn)為4。啟動(dòng)掃描仿真得到ECLKOUT波形如圖7所示。
圖7 0~50Ω端接電阻ECLKOUT信號(hào)掃描仿真波形Fig.7 Simulation waveform of ECLKOUT signal with 0~50Ω resistance
從圖7可以看出,改變R1阻值上升沿和下降沿不單調(diào)現(xiàn)象依然存在,而且阻值越小不單調(diào)的重疊區(qū)域和過沖越大;但隨著阻值的減小,上升沿非單調(diào)性的位置不斷上升,下降沿非單調(diào)性的位置不斷下降。從邊沿采樣的角度來說,非單調(diào)性偏離2V和0.8V的位置越遠(yuǎn)越好,查詢SDRAM數(shù)據(jù)手冊(cè),考慮過沖閾值的前提下,選取0Ω端接電阻非單調(diào)性位置偏離未定態(tài)最遠(yuǎn),滿足SDRAM數(shù)據(jù)手冊(cè)參數(shù)要求。
用高帶寬示波器測(cè)量得到實(shí)際串聯(lián)0Ω端接電阻下的時(shí)鐘信號(hào)波形如圖8所示。
由圖8可知,當(dāng)端接電阻阻值改為0Ω時(shí),信號(hào)上升沿不單調(diào)區(qū)間發(fā)生在2.53V附近,信號(hào)下降沿不單調(diào)區(qū)間發(fā)生在0.6V附近,與仿真波形一致。在0.8~2.0V的未定態(tài)區(qū)間不存在信號(hào)上升沿或者下降沿不單調(diào)的情況,可以避免時(shí)鐘信號(hào)電平誤判。
為了驗(yàn)證仿真模型的正確性,將端接電阻R1改為16Ω和33Ω,測(cè)量得到ECLKOUT管腳信號(hào)波形如圖9、圖10所示。
圖8 裝配0Ω端接電阻時(shí)ECLKOUT信號(hào)Fig.8 Measurement waveform of ECLKOUT signal with 0Ω resistance
圖9 裝配16Ω端接電阻時(shí)ECLKOUT信號(hào)Fig.9 Measurement waveform of ECLKOUT signal with 16Ω resistance
圖10 裝配33Ω端接電阻時(shí)ECLKOUT信號(hào)Fig.10 Measurement waveform of ECLKOUT signal with 33Ω resistance
測(cè)量結(jié)果同樣顯示,信號(hào)上升沿不單調(diào)的位置隨著端接電阻阻值的變小而逐步提高,將端接電阻換成0Ω后非單調(diào)性的位置最高,改成16Ω和33Ω時(shí)過沖較小,但非單調(diào)性的位置較低。將產(chǎn)品中端接電阻由22Ω更改為0Ω,單板進(jìn)行-40℃~70℃范圍內(nèi)的變溫試驗(yàn)驗(yàn)證,溫度變化速率為不大于2℃/min。溫度變化過程中,連接仿真器,配置DSP參數(shù)后,加載SDRAM測(cè)試程序,對(duì)SDRAM每個(gè)地址分別寫入0x5555、0xAAAA和0~0xFFFF遞加三種數(shù)據(jù)。然后對(duì)讀出和寫入數(shù)據(jù)進(jìn)行比較,測(cè)試過程中讀出寫入數(shù)據(jù)次數(shù)大于1×108次,未發(fā)現(xiàn)讀出寫入數(shù)據(jù)不符的情況。
由上述分析和測(cè)試可知,去除R1端接電阻,ECLKOUT信號(hào)完整性能夠滿足器件要求。但值得注意的是,去除R1端接電阻,雖然使得信號(hào)非單調(diào)性處的電壓不處于未定態(tài)區(qū)間,但端接電阻過小會(huì)使得信號(hào)的過沖加大,過大的過沖可能導(dǎo)致芯片損壞或者影響芯片的使用壽命。此時(shí)要將過沖控制在相應(yīng)的總線規(guī)范和芯片數(shù)據(jù)手冊(cè)中規(guī)定的限定值內(nèi),在后續(xù)設(shè)計(jì)中應(yīng)在PCB投產(chǎn)之前進(jìn)行阻抗匹配和拓?fù)浣Y(jié)構(gòu)等方面的綜合設(shè)計(jì),完成信號(hào)完整性仿真,以確定最優(yōu)的設(shè)計(jì)方案和參數(shù)。
本文以某導(dǎo)航計(jì)算機(jī)為例,運(yùn)用信號(hào)完整性分析技術(shù)分析了傳統(tǒng)經(jīng)驗(yàn)設(shè)計(jì)下端接電阻阻值匹配不當(dāng)引起的邊沿非單調(diào)性問題。通過對(duì)導(dǎo)航計(jì)算機(jī)電路板進(jìn)行信號(hào)完整性分析和測(cè)試,得到如下結(jié)論:1)端接電阻阻值選取不當(dāng)會(huì)引起SDRAM的時(shí)鐘信號(hào)的非單調(diào)性問題,造成數(shù)據(jù)讀取異常;2)進(jìn)行信號(hào)完整性仿真有助于在既定PCB布局下快速選取保證數(shù)據(jù)正常讀取的最佳端接電阻阻值;3)仿真和實(shí)驗(yàn)結(jié)果表明,在正常的高速數(shù)字電路研制流程中,加入信號(hào)完整性仿真可以在不進(jìn)行投產(chǎn)的情況下遍歷所有取值情況,可以提前規(guī)避風(fēng)險(xiǎn),有效縮短高速電路研制周期,降低研制成本。