文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.180457
中文引用格式: 李北國,,楊圣龍,,李輝景. 基于FPGA的LVDS高可靠性傳輸優(yōu)化設計[J].電子技術應用,2018,,44(8):78-81,,85.
英文引用格式: Li Beiguo,Yang Shenglong,,Li Huijing. High reliability transmission optimization design of LVDS based on FPGA[J]. Application of Electronic Technique,,2018,44(8):78-81,,85.
0 引言
LVDS(Low Voltage Differential Signal)信號比傳統(tǒng)TTL接口有很低的電壓擺幅,、較高的噪聲容限能力,且功耗僅為幾毫瓦,,抗干擾性相對其他總線接口也具有一定優(yōu)越性[1],。但由于其低電壓差分傳輸導致其正常通信距離僅為5 m左右,同時在面對空間復雜的電磁環(huán)境時會導致信號傳輸誤碼,,降低傳輸可靠性,。本設計通過對傳輸接口增加驅(qū)動器和自適應均衡器,極大地提高了LVDS信號通信距離;同時在鏈路中采用了10B6B的編碼方式,,在維持直流平衡的基礎上還可檢測并糾錯1 bit的數(shù)據(jù),,一定程度上減小了數(shù)據(jù)傳輸?shù)?a class="innerlink" href="http://forexkbc.com/tags/誤碼率" title="誤碼率" target="_blank">誤碼率,保證了LVDS信號在惡劣環(huán)境中高速遠距離傳輸時的可靠性,。
1 硬件電路的優(yōu)化設計
工程應用中采用一般LVDS接口進行數(shù)據(jù)傳輸時,,在傳輸距離為5 m時信號已經(jīng)發(fā)生嚴重衰減和畸變[2],無法正常區(qū)分高低電平,,從而導致傳輸時產(chǎn)生很高的誤碼率,。
在LVDS鏈路傳輸時,誤碼和丟數(shù)產(chǎn)生原因可從以下方面進行分析:
(1)發(fā)送端信號驅(qū)動能力不足,,距離較長時信號衰減嚴重,;
(2)線路中直流不失衡,導致誤碼產(chǎn)生,;
(3)時鐘同步錯誤,,接收端解出的時鐘與發(fā)送端嵌入的時鐘不一致,導致數(shù)據(jù)接收錯誤,。
通過以上分析,,首先在硬件設計方面對LVDS接口電路進行優(yōu)化。在數(shù)據(jù)發(fā)送端,,使用SN65LV1023A串化器將FPGA輸出的并行數(shù)據(jù)轉(zhuǎn)化為串行輸出,,其次在發(fā)送端增加LMH0001SQ高速驅(qū)動器,增強信號驅(qū)動能力,;在接收端則采用LMH0073SQ自適應均衡器,,補償信號在遠距離傳輸時出現(xiàn)的衰減,恢復其發(fā)生畸變的信號,,最后通過SN65LV1224BDBR解串器,,將串行數(shù)據(jù)轉(zhuǎn)化為并行數(shù)據(jù),經(jīng)地面測試臺PCI接口將數(shù)據(jù)送至上位機進行分析和處理,。系統(tǒng)總體設計框圖如圖1所示,。
1.1 發(fā)送端電路的優(yōu)化設計
在LVDS發(fā)送端,由于串行器SN65LV1023A輸出僅為100 mV左右的低壓差分信號,,故需其在差分輸出端增加LMH0001SQ驅(qū)動器來提高驅(qū)動能力,。LMH0001SQ高速驅(qū)動器最高傳輸速率可達 540 Mb/s,,差分輸入門檻電壓為100 mV,,功耗僅為125 mW[3]。輸出端電壓可通過REF引腳外接電阻進行調(diào)節(jié),。本設計使用750 Ω的外接電阻,,得到約800 mV的差分電壓輸出,加上直流偏置電壓,使得輸出電壓在1.6 V~2.4 V之間,,提高了數(shù)據(jù)遠距離傳輸?shù)尿?qū)動能力,。發(fā)送端驅(qū)動器設計如圖2所示。
由于LMH0001SQ差分線輸入電阻需要與串行器SN65LV1023A進行阻抗匹配,,因此PCB設計時100 Ω電阻要緊貼引腳,;同時輸出端增加了SMDA03LC接口保護芯片,可防止輸出端電路發(fā)生不可逆故障對后級電路造成影響,,保證了LVDS接口的安全性以及可靠性,。
1.2 接收端電路的優(yōu)化設計
LVDS信號在高速傳輸過程中由于導體的趨膚效應,信號會產(chǎn)生一定損耗,,損耗程度與信號頻率的平方根和電纜長度之積成正比[4],。為保證信號傳輸可靠性,需要在接收端補償信號[5],。LMH0074SQ均衡器是針對78 Mb/s~540 Mb/s的傳輸速率,,能夠自適應補償400 m belden 1694A 和第5類非屏蔽雙絞線傳輸?shù)膿p耗,該均衡器抖動性極低,,功耗僅為208 mW,。
接收端均衡器設計如圖3所示。使用時在LMH0074均衡器AEC+和AEC-引腳之間跨接一個1 μF的電容,,用來控制均衡環(huán)路的增益和帶寬[6],。由于輸出端具有50 Ω的差分輸出,為防止信號發(fā)生振鈴或反射,,可在差分線間匹配精度為1%的100 Ω電阻,,布線時應盡量靠近解串器。均衡器最大程度地還原了衰減和畸變信號,,提高了線纜傳輸質(zhì)量,,減少了誤碼和丟數(shù)現(xiàn)象。
2 10B6B編碼邏輯設計
為進一步提高LVDS數(shù)據(jù)傳輸?shù)目煽啃?,基于?,,4)線性分組碼的編碼思想,在傳統(tǒng)的10B8B編碼基礎上改進并設計了一種10B6B編碼方式,,在允許降低傳輸有效帶寬的情況下,,設計4 bit監(jiān)督位來糾錯4 bit信息位,極大地降低了LVDS數(shù)據(jù)傳輸?shù)恼`碼率,,很好地改善了直流平衡的狀況,。
2.1 10B6B編碼原理
根據(jù)線性分組碼的編碼原理,(n,,k)分組碼要求2r-1≥n(r=n-k),,才能用r個監(jiān)督位構造r個監(jiān)督關系式來指示一位誤碼的n種可能位置,,進而實現(xiàn)差錯控制。因為LVDS數(shù)據(jù)每次傳輸10 bit數(shù)據(jù),,所以至少需要4 bit監(jiān)督位,,因此該編碼方式核心是用4 bit監(jiān)督位構造4個監(jiān)督關系式用來指示誤碼的10種位置。這4 bit監(jiān)督位產(chǎn)生的4個監(jiān)督關系式理論上可以產(chǎn)生16種校正子碼組,,根據(jù)實際需要選擇合適的校正子碼組來生成更適合傳輸?shù)拇a型,。
2.2 10B6B發(fā)送端邏輯設計
改進后的10B6B編碼設定的校正子與誤碼位置關系如表1所示,其中S1,、S2,、S3、S4表示由監(jiān)督關系方程式計算得到的校正子,。由表1可知,,當誤碼位置在a6、a8,、a0,、a2、a3時,,校正子S1=1,;否則S1=0。因此有:
編碼時取a9,、a8,、a7、a6,、a5,、a4為信息碼元,取a3,、a2,、a1、a0為監(jiān)督碼元,,信息碼元隨機,,而監(jiān)督碼元由以下監(jiān)督方程唯一確定:
由上述方程式可得到表2所示的64個許用碼組。
LVDS數(shù)據(jù)傳輸交替?zhèn)鬏斢行?shù)據(jù)和無效數(shù)據(jù),。有效數(shù)據(jù)每個字節(jié)需傳輸兩次,,第一次傳輸?shù)? bit,第二次傳輸高4 bit,,由LVDS最高兩位a9,、a8作為高低位標識。0000011111作為無效數(shù)據(jù)在數(shù)據(jù)線空閑時發(fā)送,,用來鎖定發(fā)送時鐘,。LVDS數(shù)據(jù)位具體定義如表3所示。
線上空閑時發(fā)送無效數(shù)據(jù)為0000011111,,且編碼時要考慮1 bit誤碼的無效碼冗余,,即表4所示的無效冗余碼接收時均當做無效碼處理。由于0100011111與表2中許用碼組沖突,,因此在編碼時不用01這個碼組,。
2.3 10B6B接收端解碼設計
當接收端收到數(shù)據(jù)時,首先根據(jù)校正子方程式計算出校正子,,根據(jù)表1即可對應出數(shù)據(jù)誤碼位置,,對該位置進行編碼生成糾錯碼,如表5所示,。要注意的是當數(shù)據(jù)接收為表4中數(shù)據(jù)時,,此時全部認為無效碼,不予進行校正計算,。生成糾錯碼后與接收的原始LVDS數(shù)據(jù)進行異或運算,,即可糾正傳輸數(shù)據(jù)過程中的一位誤碼。
本系統(tǒng)還可對誤碼數(shù)據(jù)量進行統(tǒng)計,,當糾錯碼為0000000011時,,說明出現(xiàn)兩位或以上的錯位,此時字節(jié)錯誤統(tǒng)計自增1,;當糾錯碼為不為0000000000時,,說明數(shù)據(jù)出現(xiàn)一位錯誤,此時數(shù)據(jù)位錯誤統(tǒng)計自增1,,方便對誤碼量進行數(shù)據(jù)統(tǒng)計,。
3 時鐘同步邏輯設計
數(shù)據(jù)發(fā)送前,收發(fā)兩端都需要對時鐘進行同步鎖定,。初始化時串化器SN65LV1023A和解串器SN65LV1224B均為三態(tài)輸出,,當芯片供電電壓穩(wěn)定到2.45 V時,解串器啟動鎖相環(huán)跟蹤并鎖定本地時鐘,,完成數(shù)據(jù)串行器和數(shù)據(jù)解串器的同步[7],。
本設計同步模式式采用隨機同步和快速同步相結(jié)合的方式,設備上電后,,串化器SN65LV1023A鎖定發(fā)送時鐘TCLK,,F(xiàn)PGA將其SYNC1和SYNC2引腳電平拉低,此時串化器向接收端發(fā)送同步碼,,當解串器檢測到LVDS輸入端的邊沿轉(zhuǎn)換時,,它就會根據(jù)FPGA提供的REFCLK參考時鐘嘗試鎖定到嵌入在數(shù)據(jù)流中的時鐘信息[8]。由于串化器SYNC引腳與解串器的LOCK為開環(huán)狀態(tài),,因此不能準確判斷同步時間,,所以設置在25 μs的等待時間后,,解串器與串行器完成同步,將解出的RCLK時鐘送給FPGA后,,LOCK引腳自動拉低,,即可開始數(shù)據(jù)傳輸。
在進行數(shù)據(jù)發(fā)送時,,當某個字節(jié)數(shù)據(jù)重復發(fā)送時,,則解串器可能進入誤鎖定狀態(tài),錯誤地將數(shù)據(jù)上升沿識別為開始/停止位,,這種現(xiàn)象稱為重復多重轉(zhuǎn)換(RMT)[9],。解串器中的電路檢測到這種假鎖狀態(tài)時,電路就會阻止LOCK引腳輸出有效,,直到這種假鎖狀態(tài)發(fā)生改變,。當解串器檢測到4個連續(xù)周期的上升沿(停止/啟動位)在同一位置時,解串器將重新鎖定時鐘,,否則仍為失鎖狀態(tài),。
本設計數(shù)據(jù)傳輸采用有效數(shù)和無效數(shù)混合發(fā)送的方式,既可以保證LVDS線路時刻都有數(shù)據(jù)持續(xù)傳送,,不會因為由于有效數(shù)據(jù)發(fā)送不連續(xù)而造成失鎖,,也可減少由于內(nèi)嵌時鐘位鎖定錯誤所造成的丟數(shù)的情況。同時設置最高兩位為標識位,,當最高位為“10”和“11”時為有效數(shù)據(jù)的低4位和高4位,,否則為無效數(shù)。這種高位固定值的傳輸方式由于每次在12 bit后有固定周期的跳變,,極大程度地降低了嵌入時鐘位誤鎖定的可能,。
4 數(shù)據(jù)可靠性驗證
對硬件優(yōu)化效果進行測試,在沒有增加驅(qū)動器和均衡器雙絞線長度為3.5 m時,,數(shù)據(jù)接收正常,;當線纜長度增加時,誤碼率也隨之上升,,當測試傳輸電纜網(wǎng)長度增加為48 m時,,誤碼率已高達64.830 245%,已完全不能保證數(shù)據(jù)的可靠傳輸,。
在增加驅(qū)動器和均衡器硬件優(yōu)化后,,采用6段8 m的屏蔽雙絞線組成48 m的電纜網(wǎng)進行測試,修改采編器程序中LVDS數(shù)據(jù)發(fā)送時鐘,,使實際傳輸速率為100 Mb/s,、200 Mb/s、300 Mb/s,、400 Mb/s時,,分別對采用10B6B編碼方式前后進行誤碼測試,,結(jié)果如表6所示。
分析測試結(jié)果可知:當傳輸速率低于100 Mb/s時,,硬件電路能保證傳輸?shù)目煽啃?;當傳輸速率大?00 Mb/s時,誤碼率隨著速率的增大而增加,。在邏輯設計上加入10B6B編碼后,,在允許降低傳輸有效帶寬的情況下,,傳輸速率為400 Mb/s時可保證遠程LVDS數(shù)據(jù)傳輸?shù)目煽啃浴?/p>
5 結(jié)束語
針對LVDS傳輸過程中的可靠性問題,,從硬件和邏輯編碼方式兩方面進行了優(yōu)化,設計的10B6B編碼可對數(shù)據(jù)中存在1 bit誤碼數(shù)據(jù)進行檢測糾錯,,保障了數(shù)據(jù)的可靠性,。在測試“遞增數(shù)”、“遞增數(shù)”,、“全0數(shù)”,、“全1數(shù)”4種碼型數(shù)據(jù)時,可實現(xiàn)400 Mb/s速率下48 m的零誤碼遠距離可靠傳輸,,此設計系統(tǒng)已成功應用于航天飛行器中,。
參考文獻
[1] 李輝景,王淑琴,,任勇峰,,等.基于CRC校驗的高速長線LVDS傳輸設計[J].電子器件,2015(6):1346-1351.
[2] 李治華,,趙冬青,,甄國涌,等.高可靠性遠程數(shù)據(jù)傳輸系統(tǒng)設計[J].電子器件,,2017,,40(2):490-494.
[3] 鄢玲玲,文豐,,李輝景.一種基于LVDS高速傳輸?shù)慕涌趦?yōu)化設計[J].電測與儀表,,2016,53(20):80-83.
[4] 宋丹.某多通道采編存儲器的研制[D].太原:中北大學,,2014.
[5] 王紅旭.高速數(shù)字電路設計技術的應用研究[D].西安:西安電子科技大學,,2006.
[6] 吳聰達.高速數(shù)字設計中的信號完整性研究[D].西安:西安電子科技大學,2005.
[7] 郭柳柳,,甄國涌,,劉東海.基于LVDS傳輸電纜均衡器的可靠性分析[J].電子技術應用,2014,,40(10):40-42.
[8] 易敏,,蘇淑靖.基于LVDS的高可靠性數(shù)據(jù)傳輸設計[J].微電子學與計算機,,2014,31(9):131-134.
[9] 范丹,,何永強,,方晉賢.高速LVDS接口電路設計[J].儀表技術,2010(4):7-12.
作者信息:
李北國1,,楊圣龍2,,李輝景2
(1.北京航天長征飛行器研究所,北京100076,;
2.中北大學 儀器科學與動態(tài)測試教育部重點實驗室,,山西 太原030051)