李治華,趙冬青,甄國涌,劉東海
(中北大學儀器科學與動態測試教育部重點實驗室,電子測試技術國家重點實驗室,太原 030051)
高可靠性遠程數據傳輸系統設計*
李治華,趙冬青*,甄國涌,劉東海
(中北大學儀器科學與動態測試教育部重點實驗室,電子測試技術國家重點實驗室,太原 030051)
針對數據在遠距離高速傳輸系統中存在的可靠性低的問題,提出了一種基于LVDS長線傳輸和8b/10b編碼的解決方案。該設計以LVDS為數據傳輸接口,在硬件電路上加入均衡設計,補償長線傳輸的損耗;在邏輯設計上加入8b/10編碼,實現傳輸中的直流平衡,提高數據傳輸的可靠性。經驗證,該系統工作穩定,串行數據以400 Mbit/s的速率,可實現在百米雙絞電纜傳輸線或2 km光纖傳輸線上的零誤碼傳輸。
高速傳輸;LVDS;可靠;低誤碼率;8b/10b編碼
某飛行器在研制過程中,需要使用數據采集系統采集各種模擬信號,并將信息回傳給地面進行數據處理,但由于飛行器所處環境特殊,無法近距離測試,因此需要將數據通過長線高速實時的回傳給地面數據處理系統,以便實時了解飛行器設備的工作狀態,但飛行器的使用的彈上電纜網或光纖所處環境惡劣,周圍電磁干擾大。普通并行的總線在長距離傳輸的條件下,抗干擾能力差,無法應用于系統中。
基于串化器/解串器的LVDS是一種低功耗、低擺幅、低誤碼率的低壓差分信號,它的理論傳輸速度可達1.923 Gbit/s,是解決數據高速長距離傳輸,保證數據可靠性的簡單有效的方案[1]。但該解決方案,在極其惡劣的環境下,數據傳輸的可靠性會降低,單純依靠LVDS技術本身的抗干擾性已無法滿足數據的高速可靠傳輸,為進一步優化設計,降低誤碼率,增加了8b/10b編碼,保證傳輸中的直流平衡,從而提高傳輸的可靠性。
系統電路結構如圖1所示,由彈上采編設備,地面測試存儲設備及計算機3部分組成。彈上采編設備采集并存儲,地面設備接受計算機下發指令并轉發給彈上采集設備和接受彈上回傳數據。
系統采用LVDS接口實現高速數據傳輸。在發送端,FPGA邏輯控制模塊通過CPCI接口模塊接受上位機下發的10bit命令,通過SN65LV1023串化器進行并串轉化后,再經驅動器LMH0074增強電壓擺幅后下發給轉發器;在接收端,LVDS接受模塊通過SN65LV1224解串器接收轉發器上傳的數據并進行串/并轉化后經均衡器LMH0074對信號進行恢復后,再通過CPCI總線上傳至上位機進行實時信息處理。

圖1 高速數據傳輸系統電路結構
為了盡可能的提高數據傳輸的可靠性,減少由電纜或PCB損耗引起的高頻信號邊沿變化速率降低,引入碼間串擾,導致高頻在長距離傳輸時的信號衰減。為了解決信號衰減和損耗引起的誤碼率,在本設計中采用了信號調理和預(去)加重法和均衡(EQ)技術芯片對高頻信號進行補償,提高了傳輸性能。該設計采用美國半導體公司的LMH0074和LMH0001,是一對數據傳輸均衡器和驅動器,可以完成高速長線數據傳輸信號的調理作用,降低信號的衰減和損耗,提高數據傳輸的可靠性[2-3]。

圖2 LVDS接口收發電路
2.1 控制命令鏈路硬件可靠性設計
電纜驅動器LMH0001SQ是PECL電平,光收發一體模塊則是LVPECL電平,這二種電平在相互連接時,需要考慮三者之間的電平的擺幅及大小的問題,因此要求上級輸出的電平落入后一級輸入電平有效范圍內。在設計中我們選擇交流耦合,有效地避免了前一級和后一級的電位的聯系,同時不會破壞前級的內部偏差。圖3是LMH0001SQ接收端和輸出端波形圖。

圖3 LMH0001SQ接收端(波形1)和輸出端(波形2)
在本設計中選用收發一體的光模塊OCM3823,最高傳輸速率為1.25 Gbit/s。在命令鏈路的發送端,串化器SN65LV1023A將10bit并行的命令數據串化成串行數據,此時輸出的低壓差分信號為100 mV左右,傳輸距離約10 m,不能滿足長距離傳輸的需要。LMH0001芯片傳輸速率可達540 Mbit/s,100 mV的差分輸入門檻電壓;當REF外接電阻的阻值為750 Ω時,差分輸出電壓約為800 mV,加外部電阻的偏置,輸出電壓約為1.5 V~2.3 V之間,這樣就可以驅動百米雙絞電纜傳輸線或2 km光纖,提高了命令數據在距離上傳輸的可靠性。
2.2 數據回傳鏈路硬件可靠性設計
LVDS傳輸信號經過百米雙絞電纜傳輸線或2 km光纖傳輸后,會產生損耗,損耗與信號頻率的平方根成正比[4-5]。為了使接收的正確可靠的接受信號,補償信號損耗。均衡芯片LMH0074SQ是針對125 Mbit/s到540 Mbit/s的傳輸速率,能夠自適應補償400 m belden 1694A或第5類非屏蔽雙絞線傳輸的損耗,該均衡器抖動性極低,功耗僅有200 mW。

圖4 LMH0074SQ接收端(波形1)和輸出端(波形2)
在本設計中,在數據鏈路的接收端,在差分信號之間接入一個100 Ω的電阻,匹配傳輸線上的阻抗;在LMH0074自動均衡控制模塊即AEC+和AEC-之間跨接一個1 μF的電容,用于控制均衡環路的增益和帶寬;為了防止信號媒介發生發射,在LVDS信號的輸出端匹配一個100 Ω,精度為1%的電阻,且在PCB布線時盡量靠近解串器。
3.1 控制命令鏈路軟件可靠性設計
如果指令識別錯誤,采集存儲設備將不能進入正確的工作模式,最終可能導致不能采集到數據,因此在指令識別上應充分考慮到冗余及校驗設計,以確保命令指令能準確無誤地下發。
LVDS有效的指令數據傳輸是10位,但在實際傳輸中卻是12位,增加了起始位“1”和終止位“0”,他們的作用是作為嵌套時鐘的起始位和終止位。解串器從嵌套的時鐘的數據中重建并行時鐘,該時鐘用來選通輸出鎖存器,并將串行數據轉化成10位并行的數據存入輸出的鎖存器[6-7]。當收到的數據是連續幾個“0”“1”變化的數據時,解串器則會將數據誤認為是嵌套時鐘的起始位和終止位并鎖存,數據傳輸出錯。
針對上述問題,提出了在發送有效指令的同時插入無效指令,就可以從根本上解決了連續多次重復發“0”“1”變化的數據引起的指令數據解碼錯誤問題。由于LVDS同步碼格式能夠快速使解串器鎖定時鐘,因此在設計上采用同步碼作為插入數據,因此有效指令和同步碼以1∶7的比例下發命令。這樣不僅能保證不會出現將數據誤認為是嵌套時鐘的起始位或終止位即RMT模式,也能最大限度保證命令下發不失鎖。經測試該方法正確可靠,指令能夠正確無誤地下發。
3.2 數據回傳鏈路軟件可靠性設計
當數據流中有多個連續的“1”或“0”時,信號的轉換可能因為電壓位階的變換而造成信息錯誤,而直流平衡可以有效地克服此類問題。8b/10b編碼的特性之一是保證數據流中的直流平衡,遠程數據回傳時,采用8b/10b編碼的方式,可以有效平衡數據流中“1”“0”的個數比例[8]。連續的“1”或“0”的個數不會超過5個,即連續的5個“1”或“0”后,必會插入一個“0”或“1”,這樣就保證了直流平衡。一個8 bit的數據,經8b/10b編碼后,可能出現的只有3種情況:
(1)6個邏輯“1”,4個邏輯“0”;
(2)6個邏輯“0”,4個邏輯“1”;
(3)5個邏輯“0”,5個邏輯“1”。
這3種情況你對應的8b/10b編碼的極性誤差為+2,-2,和0。
3.2 LVDS發送端8b/10b編碼
8b/10b編碼中有268個有效的編碼列表,其中256個是數據編碼列表,12個控制字編碼。其中12個控制字用于建立位同步,鏈路狀態,數據幀標志的開始和結束。8b/10b編碼時字節ABCDEFGH被分為ABCDE和FGH兩部分,其中E和H為最高位,編碼后對應生成abcdei和fghj,其中i和j是做高位。數據編碼在編碼過程中分為5b/6b和3b/4b相互獨立的兩部分。如圖5顯示了8b/10b的關系變換。

圖5 8b/10b變換關系
8b/10b編碼具有直流平衡的特性,主要是引入了Run Disparity的概念來平衡數據流中的“1”和“0”的個數即Run Disparity實際上是指數據流中“1”和“0”的個數之差[9]。如果Run Disparity為0,則Run Disparity為中性,如果數據模塊abcdei和fghj都為中性,那么整個數據模塊都為中性,就可以得到真正完美的直流平衡,在LVDS數據回傳鏈路就不會出現因為多個連續的“1”“0”電位轉換而造成的信息錯誤,這是最完美情況,但LVDS總線在實際工程應用中上是不可能實現真正的直流平衡。因此8b/10b的編碼原理就是通過檢測前一個字符的不均衡型來決定后一個字符的選擇。如果前一個字符是正不均衡型,則后一個字符就應該選擇一個負不均衡型;同理,反之。因此這種不均衡機制使得整個高速傳輸系統中的數據流盡可能的保持了“1”和“0”的平衡。

圖6 RD狀態轉換圖
根據編碼規則,鏈路系統在上電或初始化之后RD為負。在編碼過程中,5b/6b編碼在前,3b/4b編碼在后,當前用于5b/6b編碼的RD是前一個字節編碼產生的產生RD,用于3b/4b編碼的RD來源于前一個相鄰的5b/6b產生的RD。RD的運算規則如圖6所示。
(1)如果編碼后的任意子模塊的RD大于零,則新生成的RD為正;同時若6比特模塊abcdei為“111000”或者4比特模塊fghj為“1100”時,生成新的RD亦為正;
(2)如果編碼后的任意子模塊的RD小于零,則新生成的RD為負;同時若6比特模塊abcdei為“000111”或者4比特模塊fghj為“0011”時,生成新的RD亦為負;
(3)任意RD為零的子模塊所生成的子模塊由前面緊接著的模塊RD決定。
編碼過程實現流程圖如圖7所示,LVDS接口在發送端,把8b的數據分為高3b和低5b,然后進行5b/6b轉換和3b/4b轉化。在5b/6b編碼模塊和3b/4b編碼模塊,由變量控制單元和查找表邏輯實現輸入源碼到碼組的映射,大部分碼源對應兩種極性碼組。在RD控制模塊中,RD的初始值為RD-(上電或者復位),或者根據上一次RD的極性來判斷6b對應的碼組,以及6b次態的極性;然后再根據5b/6b編碼的極性來決定4b的對應的碼組,以及4b次態的極性,最后的RD的極性作為下次10b編碼的初始值,依次循環判斷,最后把4b和6b進行拼接后輸出十位的LVDS數據流。

圖7 8b/10b實現流程圖
3.2.2 LVDS接收端8b/10b解碼
LVDS接收端解碼是發送端的逆過程,采用多對一的映射關系,分別通過對6b/5b和4b/3b解碼實現[6]。該部分需要外部基準時鐘來恢復時鐘信號,在對遠程數據進行解碼時為保證解碼的正確可靠性,外部提供了嚴格基準時鐘源頻率,并對時鐘進行抖動控制。在解碼后對8b進行校驗,判斷是否產生誤碼,如果校驗正確,則輸出有效數據。
采用7段15 m屏蔽雙絞線,通過J14H系列的連接器串接成105 m的電纜網,通過LVDS接口連接地面綜合測試臺和彈上采編存儲設備。通過程序控制數據的傳輸速率分別為100 Mbit/s,200 Mbit/s,300 Mbit/s,400 Mbit/s,500 Mbit/s,分別對加8b/10b編碼前后進行速率及誤碼率測試,測試結果如表1所示。
從測試結果可以分析得出,當傳輸速率低于100 Mbit/s時,硬件電路能保證傳輸的可靠性,當傳輸速率大于100 Mbit/s時,誤碼率隨著速率的增大而增加。在邏輯設計上加入8b/10b編碼后,能有保證400 Mbit/s,遠程數據傳輸的可靠性。

表1
針對高速數據在傳輸過程可靠性低的問題,從硬件電路上,對LVDS信號做預處理和信號補償,同時在邏輯設計上,采用8b/10b編碼,優化了數據傳輸的可靠性。通過LVDS接口,在105 m彈上電纜網或者2 km光纖上,以400 Mbit/s的速度傳輸全“0”,全“1”,以及遞增數,遞減數等數據,可實現零誤碼傳輸。
[1] 馬將,任勇鋒,李圣昆,等. LVDS遠程傳輸中繼電路的設計應用[J]. 通信技術,2010,43(1):26-28,31.
[2] 張天文,劉文怡. 基于LVDS和PCI接口的高速圖像傳輸系統設計[J]. 電子技術應用,2014,40(7):51-53,60.
[3] 任勇峰,彭巧君,劉占峰,等. 基于FPGA的CPCI高速讀數接口設計[J]. 電子器件,2015,38(1):148-151.
[4] 李輝景,王淑琴,任勇峰,等. 基于CRC校驗的高速長線LVDS傳輸設計[J]. 電子器件,2015,38(6):1346-1351.
[5] 來衛國. 10位BLVDS串化器DS92LV1023和解串器DS92LV1224的原理及應用[J]. 國外電子元器件,2002(8):45-47.
[6] 方平,丁凡,李其朋,等. 基于PCI總線的高速圖像數據通道的研究[J]. 傳感技術學報,2006,19(3):690-693.
[7] 許軍,許西榮. PCI-Express中8b/10b編碼解碼器的設計與實現[J]. 微電子學與計算機,2006(3):37-39.
[8] 孫科達,石旭剛,史故臣,等. 一種新的8B/10B編解碼方案設計與實現[J]. 光通信技術,2009,33(7):27-30.
[9] 武小強,田小平. 一種基于FPGA的8B/10B編解碼電路的設計與實現[J]. 西安郵電學院學報,2010,15(5):27-29,52.
Design of High Reliability Remote Data Transmission System*
LIZhihua,ZHAODongqing*,ZHENGuoyong,LIUDonghai
(Key Laboratory of Instrumentation Science and Dynamic Measurement,Ministry of Education,Science and Technology on Electronic Test and Measurement Laboratory,North University of China,Taiyuan 030051,Chain)
Focused on the low reliable problem of data existing in high-speed and long-distance transmission system,a method based on long transmission of LVDS and 8b/10b encoding is proposed. LVDS is designed as high speed data transmission interface,the equalization circuit is adopted to compensate loss of remote transmission;8b/10b coding is realized on logic design which achieves the equilibrium of DC transmission and stability improvement in data transmission. The experiment proves that the system works stable,and realizes the rate of 400 Mbit/s of serial data transmission via 100 m shielded twisted-pair or 2 km optical fiber transmission line.
high-speed transmission;LVDS reliability;low error rate;8b/10b encoding

項目來源:國家自然科學基金項目(51275492)
2016-05-07 修改日期:2016-06-08
C:6210
10.3969/j.issn.1005-9490.2017.02.045
TP274
A
1005-9490(2017)02-0490-05