趙冬青,王越濤,李東星,武慧軍
(1.中北大學儀器與電子學院,山西太原 030051;2.中北大學電子測試技術與重點實驗室,山西太原 030051;3.北京航天長征飛行器研究所,北京 100071)
隨著時代的不斷進步及科技的高速發展,遠距離高速率數據傳輸技術逐漸趨于成熟,同時要求傳輸的數據量越來越大,傳輸速率越來越快。由于對環境因素掌握不全面,惡劣環境下將不利于數據測試[1]?;诖?,設計了遠距離高速數據傳輸測試設備。長線電纜將設備引至安全地點測試,保障了測試人員與設備的安全。
由于遠距離并行傳輸數據成本高,布線工藝復雜,且每一位同時傳輸導致誤碼率的不可控,種種因素限制著遠距離并行傳輸的發展。文中采用的串行傳輸,在誤碼率、傳輸速率等方面都有著并行傳輸無可比擬的優勢。串行傳輸的接口標準有RS232、RS422和LVDS(Low Voltage Differential Signaling)等。故在方案設計中,綜合各總線接口的優缺點,同時兼顧考慮到傳輸距離、速率及可靠性等因素,選用RS422 通信協議進行上位機、待測設備指令與狀態的交互,LVDS 進行遠距離數據傳輸[2]。以FPGA 為控制核心,實現了數據遠距離高速傳輸存儲,同時添加8B/10B 校驗碼,降低了誤碼率。
數據傳輸系統由上位機、存儲器綜合測控臺和數據采編存儲裝置組成[3]。如圖1 所示,數據采編存儲裝置用于采集遙測數據并進行編碼存儲,存儲器綜合測控臺負責回讀采編到的數據,上位機軟件發送回讀指令并將回讀數據進行分析[4]。由于采編裝置與遙測數據的兩個電路之間存在接地環路,為阻斷共模、浪涌信號的傳播,硬件上增加了隔離芯片,通過電氣隔離,提高了數據采編存儲裝置的安全性和可靠性。

圖1 系統總體設計
為實現地面測控臺高速回讀數據采編存儲裝置記錄的遙測數據,采用LVDS 作為收發接口。地面測控臺向外發送RS422 回讀指令,數據采編存儲裝置在接收到回讀指令后,由FPGA 控制數據經串化器并轉串后進行傳輸。因為數據經長線傳輸后會有不同程度的衰減,為了提高LVDS 信號的傳輸速率與傳輸距離[5],在數據發送接口增添高速驅動器,同時在數據接收端增加均衡器以進行信號補償,電平信號識別的準確率得到提高。LVDS 信號傳輸采用雙絞屏蔽線QX2539 作為傳輸介質,由于其每30 m 衰減11 dB,而均衡器CLC014 最大可以恢復40 dB 的電纜衰減,故傳輸距離可達90 m。
LVDS 是一種差分信號的傳輸方式,可一對一或一對多進行信號傳輸[6]。當信號經過兩條平行的差分線后,由于接收端僅關注兩電平的差值,又因為該傳輸標準采用電流模式驅動輸出,不會受到信號切換或阻尼振蕩的影響,故具有良好的抗電磁干擾(EMI)特性。同時有低電壓(250~450 mV)傳輸的特點,故振幅較小,功耗較低,電平轉換快。發送端電路如圖2 所示。

圖2 發送端電路設計
存儲器綜合測試臺的LVDS 接口主要用于實時監測數據和存儲器數據的下傳。LVDS 發送端以SN65LV1023A 為主要芯片,由芯片資料可知,其數據傳輸速率區間為100~660 Mbit/s。FPGA 輸出的并行數據經該芯片后全部轉化為串行輸出,在電路板內嵌時鐘的協調下有效地降低了時鐘與數據不同步造成的傳輸誤碼錯誤,提高了傳輸可靠性。DIN0-DIN9 是十路并行數據信號接口,TCLK 為時鐘信號口,經串化器輸出一對差分串行信號D0+和D0-,在高速驅動器CLC001AJE 的驅動下穩定傳輸。
在發送端增加的靜電保護芯片SMDA03LC-LF有效地降低了芯片被浪涌電壓擊穿的風險。R5、R6、R7分別為1 kΩ的電阻,上拉至3.3V 限流。發送芯片與驅動器之間接入的R3電阻,將對兩條差分信號線進行阻抗匹配;同時盡量靠近驅動器引腳進行布線可有效降低干擾。LVDS 輸出的電壓值由1.5 kΩ的R4進行調節,R1、R2取49.9 Ω精度1%的電阻為發送電路做阻抗匹配[7]。
當信號進入接收端,經緩沖芯片緩沖后,SN65LV1224解串器將一對串行差分數據解碼為數據和時鐘信號并由FPGA 進行處理。R1、R2、R3為1 kΩ電阻,通 過3.3 V上拉電壓進行限流。接收端電路如圖3所示。

圖3 接收端電路
為加強電路板和電纜的抗干擾能力,電路設計時采用雙隔離式LVDS 緩沖器芯片DS10BR150TSD,其自帶8 kV PK 增強型隔離電壓,具備靜電釋放(15 kV 以內)和帶電插接保護的功能;由于其可將信號傳輸路徑細分為很短的區段,故可在整個信號路徑上控制阻抗以遮蔽阻抗誤配,降低信號衰減,使信號完整性得以保證;并且也因為不需使用高成本的高頻連接器,降低了開發成本,提升了系統的運作效能。由于芯片具有低輻射、低功耗和高電磁抗擾度等特性,在設計中提高了可靠性并節省了布板空間[8]。
經遠距離傳輸后,接收端接收到的信號電平會部分衰減,少數信號會由于幅度衰減嚴重而導致解串器無法判斷其處于高電平或低電平,從而出現誤碼。如圖4 所示,由于電平衰減幅度與電纜長度和信號頻率成正比,因此當接收到信號后,要對信號進行美化,修正其幅頻和相頻等關鍵參數。采用的LVDS 緩沖器可將信號恢復,修正后的波形如圖5 所示。經示波器抓取判斷,高低電平擺幅基本一致,高低電位區別顯著,解串器解串正確率大幅提升。

圖4 LVDS經長電纜后傳輸波形

圖5 LVDS修正后的波形
RS422 是一種支持多點通信,傳輸方式為差分傳輸的協議,因具有較強的抗干擾能力而被廣泛運用于多個領域[9]。兩設備在進行通信時,通常采用隔離電路可避免互相干擾和異常信號導致的接口損壞。傳統RS422 電路進行隔離設計時通常為協議芯片、電源隔離芯片和光耦相連接的方式,電路較為復雜,開發成本高。而ADM2682E 芯片內部集成了隔離式DC/DC 轉換器,同時可配置為全雙工或半雙工模式,極大簡化了電路結構,降低了成本。RS422 收發接口電路如圖6 所示。
為提高收發的穩定性和安全性[10],需對芯片進行配置。電路配置時,為降低噪聲干擾,需在ADM2682E芯片電源引腳和地引腳之間并聯一大一小兩只旁路電容。為應對電路突發短路狀況時引起的故障,一方面,由芯片手冊可知,芯片的輸入端具備故障保護功能,電路短路時接收器將輸出高電平;另一方面,在電路設計時,分別在兩芯片輸入端接1 kΩ的上、下拉電阻,可確保差分信號電壓始終高于芯片門限電壓,保證了芯片始終工作在穩態。在兩芯片正負輸出端各接5.1 Ω電阻,防止了芯片發生短路。由于信號會發生反射,故選用阻值與傳輸電纜阻抗接近的120 Ω電阻,并將其跨接在各終端的正負引腳,可靠性得到提升。
為保證通信穩定,硬件電路中加入可靠性設計的同時,對軟件進行設計優化。在指令傳輸過程中加入校驗字和三判二機制,提高指令可靠性;在數據傳輸過程中加入8B/10B 編碼,降低誤碼率。
存儲器綜合測控臺向數據采編存儲裝置發送命令,采編存儲裝置向存儲器綜合測控臺反饋狀態,傳輸碼率可達327.68 kbit/s。為防止因傳輸過程中的偶發性因素導致的指令錯誤,通常指令傳輸時有兩種可靠性設計:一種采用三判二機制,測控臺連續發送三次相同指令,當數據存儲器檢測到兩次正確命令后,才會執行該命令;而另一種是在指令后添加校驗字,其校驗字由指令內容按位異或的方式求得[11]。指令傳輸在設計時,采用了三判二機制和校驗字相結合的方法,保證了指令傳輸的可靠性。測控臺下發一條指令時,將附帶校驗字的該指令連續發送三次,每次間隔1 ms,當數據存儲器準確接收到其中兩條指令后,將按照指令要求進行下一步操作[12]。指令內容如表1 所示。
當高速串行傳輸數據時,會有鏈路超時的情況出現[13]。由于連續高電平對高通濾波器的電容器充電時,可能會發生誤碼,從而將信號輸入錯誤地降低為低電平。為了避免該類型的位錯誤,同時為避免電容寄生效應與電壓位階的存在對數據傳輸的干擾,在線路數據傳輸時,在犧牲少量帶寬的情況下,加入了8B/10B 編碼[14]。與4B/5B 編碼的直流不平衡最大可達10%相比,8B/10B 編碼更易達到DC 平衡,故采用8B/10B 編碼,使得發送的“0”、“1”數量保持基本一致,提高了數據傳輸穩定性,降低了誤碼率。8B/10B 編碼模塊化的思路如下:
1)判斷代碼類型是數據代碼還是特殊命令代碼;
2)如果是特殊命令代碼,則根據極性偏差的正負進行取值;
3)如果是數據字符,則將8 bit 拆分為高三位和低五位,并分別按其十進制數值記為x與y,故得到D.X.Y,再對照8B/10B 編碼表進行編碼[15]。由于8B/10B 編碼表是從10 位共1 024 種排列組合中挑選256種0、1 個數差值較小的組合,故保證了DC 平衡。
4)編碼時,5B/6B 編碼在前,3B/4B 編碼在后[16],在并串轉換后將進行串行傳輸,其中,由5B/6B 的高位先進行發送。
通過上位機反復讀取大量數據,并測試誤碼率,其數據結構如圖7 所示。其中“C1 AA”為包頭,其后的“B9 C3”至“B9 C9”為幀計數,每包共1 019 個字節有效數據,在測試時以“DD”進行代替。最后一位為校驗位,用于校驗接收數據的正確性。
為了驗證設計的可靠性,將存儲器綜合測控臺、數據采編存儲設備、上位機組成閉環測試系統。采編設備通過一根長90 m 電纜向存儲器綜合測控臺發送LVDS 數據,上位機對不同速率接收到的數據進行可靠性驗證。通過多次測試,數據傳輸結果如表2 所示。

表2 測試結果
分析表2 中的數據可知,在不加8B/10B 編碼的情況下,LVDS 數據可以無誤碼在傳輸速度為240 Mbit/s,傳輸距離為90 m 的情況下發送。隨著傳輸速率的增加,數據開始頻繁失鎖。在加有8B/10B編碼后,傳輸速度有所下降,但傳輸穩定性得到提升,在320 Mbit/s 的速度下,90 m 電纜可保持零誤碼傳輸。
文中通過RS422 與LVDS 相結合,進行了通信鏈路的設計。在滿足設計需求的前提下,針對LVDS 高速數據傳輸可靠性低的問題,硬件上提出預加重設計,增加緩沖器和均衡器;采用隔離芯片,在增加可靠性的同時,效率更高,功耗更小,降低了開發成本。軟件上,對LVDS 數據傳輸采用8B/10B 編碼,有效降低誤碼率。對RS422 指令傳輸采用三判二機制和校驗字雙結合,增強了檢錯能力。經驗證,數據在320 Mbit/s 的速率下可靠傳輸,傳輸距離可達90 m。