文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.190096
中文引用格式: 雷武偉,文豐,劉東海,等. 基于LVDS的高可靠性遠(yuǎn)距離數(shù)據(jù)傳輸設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2019,45(6):130-134.
英文引用格式: Lei Wuwei,Wen Feng,Liu Donghai,et al. Design of high reliability and remote data transmission based on LVDS[J]. Application of Electronic Technique,2019,45(6):130-134.
0 引言
在某遠(yuǎn)距離測試任務(wù)中,需要使用數(shù)據(jù)采集編碼器采集多路高速模擬量信號(hào),并將這些信號(hào)實(shí)時(shí)地回傳給地面測試臺(tái)進(jìn)行數(shù)據(jù)檢測與處理,由于此任務(wù)測試環(huán)境特殊,測試員不可近距離測試,因此需要將數(shù)據(jù)在遠(yuǎn)距離的情況下高速地回傳給地面測試臺(tái)進(jìn)行數(shù)據(jù)處理?;诖巳蝿?wù)中使用的電纜網(wǎng)所處的環(huán)境較為惡劣,周圍電磁干擾大,對(duì)于傳統(tǒng)的并行線傳輸,雖然傳輸速率可以滿足任務(wù)要求,但由于需要較多接口數(shù)據(jù)線,在這種傳輸速率高且環(huán)境惡劣的情況下會(huì)導(dǎo)致數(shù)據(jù)質(zhì)量嚴(yán)重下降;PECL速率雖然也滿足此次任務(wù)要求,但其接口電平并不與標(biāo)準(zhǔn)邏輯兼容[1];而RS422和RS485的數(shù)據(jù)傳輸速率明顯不能滿足任務(wù)要求,因此選用LVDS技術(shù)作為本次設(shè)計(jì)的解決方案。
LVDS是一種可以滿足高傳輸速率和遠(yuǎn)距離傳輸?shù)牡蛪翰罘中盘?hào),其理論傳輸速度可達(dá)到1.923 Gb/s[2],而LVDS信號(hào)在500 Mb/s的傳輸速率下其自身傳輸距離其實(shí)只有2~3 m,因此本設(shè)計(jì)為了達(dá)到任務(wù)要求,在硬件電路設(shè)計(jì)中加入了串行數(shù)字電纜驅(qū)動(dòng)器和自適應(yīng)電纜均衡器用于增加信號(hào)的驅(qū)動(dòng)能力和補(bǔ)償信號(hào)的衰減,而在軟件邏輯設(shè)計(jì)中增加了一種新型的8B/10B編碼方案,用于更加高效快速地處理數(shù)據(jù),提高數(shù)據(jù)傳輸?shù)目煽啃?sup>[3]。
1 系統(tǒng)總體方案設(shè)計(jì)
系統(tǒng)的總體設(shè)計(jì)框圖如圖1所示,由數(shù)據(jù)采集編碼器、地面測試臺(tái)及上位機(jī)三部分組成。數(shù)據(jù)采集編碼器采集高速模擬量信號(hào),地面測試臺(tái)接收上位機(jī)下發(fā)的指令并轉(zhuǎn)發(fā)給數(shù)據(jù)采集編碼器且接收數(shù)據(jù)采集編碼器回傳的數(shù)據(jù)。
根據(jù)測試任務(wù),本設(shè)計(jì)采用4段60 m,共240 m的平衡雙絞導(dǎo)線連接數(shù)據(jù)采集編碼器與地面測試臺(tái),數(shù)據(jù)采集編碼器以500 Mb/s的碼率向地面測試臺(tái)發(fā)送LVDS數(shù)據(jù),并進(jìn)行大量的實(shí)驗(yàn)?zāi)M測試任務(wù)的現(xiàn)場條件,通過測試臺(tái)回讀的數(shù)據(jù)的正確性驗(yàn)證此方案的可行性與可靠性。
2 硬件電路設(shè)計(jì)
為了積極響應(yīng)進(jìn)口電子元器件國產(chǎn)化的需求,支持“中國芯”工程的發(fā)展[4],同時(shí)避免出現(xiàn)進(jìn)口電子元器件由于停產(chǎn)、禁運(yùn)的斷檔問題以及對(duì)芯片插入木馬等的安全問題[5],本次設(shè)計(jì)放棄了傳統(tǒng)設(shè)計(jì)中使用進(jìn)口的LVDS串行器和解串器,經(jīng)過對(duì)比多家國內(nèi)芯片廠商的LVDS接口產(chǎn)品,最終選定了符合本次測試要求的成都振芯的LVDS編碼器GM8223以及LVDS解碼器GM8224。
由于趨膚效應(yīng)和介質(zhì)損耗,高速LVDS信號(hào)在電纜傳輸中會(huì)有所衰減[6],兩者導(dǎo)致的信號(hào)衰減分別正比于傳輸頻率的平方根和傳輸速率,尤其是在高速遠(yuǎn)距離傳輸過程中,電纜傳輸中的衰減更是產(chǎn)生信號(hào)不穩(wěn)定的主要原因。本設(shè)計(jì)為了保證數(shù)據(jù)的傳輸質(zhì)量,采用了針對(duì)500 Mb/s傳輸速率和240 m遠(yuǎn)距離的信號(hào)調(diào)理技術(shù),通過對(duì)信號(hào)的均衡和預(yù)(去)加重[7],以達(dá)到設(shè)計(jì)要求。該部分采用了美國TI公司的串行數(shù)字電纜驅(qū)動(dòng)器LMH0002和自適應(yīng)電纜均衡器LMH0044。
2.1 LVDS接口發(fā)送電路設(shè)計(jì)
圖2所示為LVDS接口發(fā)送電路,GM8223編碼器接收來自FPGA的10位并行的TTL數(shù)據(jù)信號(hào)和一路TTL時(shí)鐘信號(hào),將其轉(zhuǎn)化為1對(duì)LVDS串行數(shù)據(jù)信號(hào)輸出到串行數(shù)字電纜驅(qū)動(dòng)器LMH0002,GM8223串行傳輸速率在100 Mb/s~660 Mb/s之間,滿足本設(shè)計(jì)要求。圖中R9、R10和R11為上拉電阻,并且起到限流作用。
LMH0002驅(qū)動(dòng)器的數(shù)據(jù)傳輸速率可以達(dá)到1.485 Gb/s,可以將GM8223輸出的差分電壓提升,從而有效地增加了數(shù)據(jù)在傳輸線上的傳輸距離。信號(hào)由LMH0002的輸出端輸出后經(jīng)過LVDS平衡雙絞線傳向LMH0044的接收端。圖中R7、R15、L1和R8、R16、L2分別組成兩個(gè)回波損耗網(wǎng)絡(luò),用于減少信號(hào)在連接器處的回波損耗,提高信號(hào)傳輸質(zhì)量[8];R13和R14為差分終端匹配電阻,用于消除信號(hào)的反射,增強(qiáng)信號(hào)的穩(wěn)定性;C9、C10和C11為去耦電容;R12為控制輸出電壓擺幅的電阻,當(dāng)阻值為590 Ω時(shí),輸出電壓擺幅可達(dá)2.5 V。
2.2 LVDS接口接收電路設(shè)計(jì)
圖3所示為LVDS接口接收電路,LVDS信號(hào)通過線纜和連接器傳輸至LMH0044均衡器,LMH0044具有208 mW的低功耗和極低抖動(dòng)性的特性,其內(nèi)部包含一個(gè)多級(jí)自適應(yīng)濾波器,LVDS差分信號(hào)從輸入端輸入后,首先通過多級(jí)自適應(yīng)濾波器對(duì)信號(hào)進(jìn)行濾波,然后進(jìn)入自偏置恢復(fù)電路對(duì)信號(hào)進(jìn)行完全恢復(fù)后發(fā)送至輸出驅(qū)動(dòng)模塊并產(chǎn)生自動(dòng)均衡控制(AEC)信號(hào),AEC信號(hào)用于反饋設(shè)置自適應(yīng)濾波器的增益和帶寬,之后內(nèi)部的載波檢測模塊產(chǎn)生載波檢測信號(hào)并發(fā)送給輸出驅(qū)動(dòng)模塊,最后輸出驅(qū)動(dòng)模塊經(jīng)過綜合后將信號(hào)通過輸出管腳輸出并傳送至GM8224解碼器進(jìn)行解碼。圖中R1和R2為差分終端匹配電阻;C2和C3為隔直電容,避免輸入電位影響正常信號(hào)的傳輸;由于LMH0044的輸入信號(hào)為弱信號(hào),較強(qiáng)的信號(hào)會(huì)耦合到其中并破壞數(shù)據(jù),因此在PCB布板時(shí)LMH0044的輸入信號(hào)與其他信號(hào)隔離開。
GM8224解碼器利用了數(shù)據(jù)與時(shí)鐘恢復(fù)技術(shù),可以將串行輸入的高速LVDS信號(hào)解碼為10位并行數(shù)據(jù)和1路時(shí)鐘信號(hào),其串行傳輸速率在100 Mb/s~660 Mb/s之間,滿足本設(shè)計(jì)要求。LVDS信號(hào)經(jīng)過LMH0044的自動(dòng)補(bǔ)償后恢復(fù)至正常強(qiáng)度,再由GM8224解碼器將1對(duì)LVDS數(shù)據(jù)信號(hào)轉(zhuǎn)化為10位并行TTL數(shù)據(jù)信號(hào)和1位TTL時(shí)鐘信號(hào),傳輸給FPGA進(jìn)行處理。圖中R3、R4和R5為上拉電阻,并且起到限流作用。
3 軟件可靠性設(shè)計(jì)
在LVDS信號(hào)高速遠(yuǎn)距離傳輸中,數(shù)據(jù)傳輸?shù)目煽啃允桥袛嘣O(shè)計(jì)成功與否的最重要的標(biāo)準(zhǔn)[9],本次設(shè)計(jì)的主控芯片采用了北京微電子技術(shù)研究所設(shè)計(jì)的FPGA——BQV600。本次設(shè)計(jì)利用了FPGA速度與面積互換的思想,對(duì)傳統(tǒng)的8B/10B編解碼方案進(jìn)行了改進(jìn),在一個(gè)時(shí)鐘下同時(shí)并行將4組數(shù)據(jù)進(jìn)行編碼或解碼的處理,通過增加處理數(shù)據(jù)的位寬從而提高了8B/10B編解碼的整體速度[10],以達(dá)到500 Mb/s的數(shù)據(jù)傳輸速率。
3.1 LVDS發(fā)送端的新型8B/10B編碼設(shè)計(jì)
為了保證數(shù)據(jù)在編碼過程中的速度與正確性,采用了基于并行處理方式的新型8B/10B編碼方法,圖4是其編碼電路流程圖。該編碼電路通過Transceiver IP核將4組8 bit數(shù)據(jù)組成一組32 bit數(shù)據(jù),將每32 bit數(shù)據(jù)看成一個(gè)大的整體,每8 bit數(shù)據(jù)看成一個(gè)小的整體,分別為Din[7:0]、Din[15:8]、Din[23:16]和Din[31:24],然后4組數(shù)據(jù)會(huì)在同一個(gè)時(shí)鐘下進(jìn)入編碼模塊并進(jìn)行編碼處理,每組數(shù)據(jù)按照正負(fù)編碼列表會(huì)得到2個(gè)10 bit數(shù)據(jù)以及2個(gè)極性值,處理后的8組10 bit數(shù)據(jù)和極性值經(jīng)過均衡檢測控制模塊,根據(jù)極性均衡準(zhǔn)則判斷得出4組10 bit數(shù)據(jù)Dout[9:0]、Dout[19:10]、Dout[29:20]和Dout[39:30],最終通過Transceiver IP核將4組10 bit數(shù)據(jù)連續(xù)發(fā)出。其中Dout[9:0]在D11和D12中選出,Dout[19:10]在D21和D22中選出,Dout[29:20]在D31和D32中選出,Dout[39:30]在D41和D42中選出。
由于傳統(tǒng)的8B/10B編碼在編碼過程中具有內(nèi)在相關(guān)性,即前一個(gè)數(shù)據(jù)輸出的游程值會(huì)對(duì)后一個(gè)數(shù)據(jù)編碼有影響[11],因此在此方法的基礎(chǔ)上無法完全按照傳統(tǒng)的8B/10B編碼對(duì)4組數(shù)據(jù)進(jìn)行處理,需要重新設(shè)計(jì)編碼電路,下面將對(duì)于新型8B/10B編碼電路中的模塊進(jìn)行逐一介紹。
3.1.1 編碼模塊的設(shè)計(jì)
圖5所示為編碼模塊的流程圖,Datan為8 bit數(shù)據(jù)輸入,其中n=1、2、3、4時(shí)分別對(duì)應(yīng)Din[7:0]、Din[15:8]、Din[23:16]和Din[31:24],對(duì)于每個(gè)輸入數(shù)據(jù)的正列表和負(fù)列表編碼時(shí),首先會(huì)判斷其是否為控制碼,若為控制碼,則按照控制編碼的映射關(guān)系進(jìn)行編碼,若不是控制碼,則說明輸入為數(shù)據(jù)碼,按照3B/4B和5B/6B映射關(guān)系進(jìn)行編碼。
圖6所示為極性判斷的電路圖,其中rd1與rd2分別為5B/6B與3B/4B的極性值,根據(jù)編碼極性規(guī)則表,無論是5B/6B編碼還是3B/4B編碼,其極性值只可能為0和1[12]。對(duì)于圖中的不帶進(jìn)位計(jì)算的加法器來說,在正負(fù)列表編碼時(shí),rd1與rd2相加所得到的RDn值將會(huì)與數(shù)據(jù)相對(duì)應(yīng)的列表編碼極性值相等,其中n取1或者2,當(dāng)n取1時(shí)表示負(fù)列表極性的RD值,當(dāng)n取2時(shí)表示正列表極性的RD值。
3.1.2 均衡檢測控制模塊的設(shè)計(jì)
在8B/10B編碼過程中,由于輸出碼流中0與1的個(gè)數(shù)具有不均等性,因此要求在編碼過程中要極性交替,從而保證0與1的相對(duì)平衡[13],具體操作為:如果當(dāng)前取正列表編碼,得到極性值RD=1,則下一次編碼取負(fù)列表編碼;反之亦然。
圖7所示為均衡檢測控制模塊的流程圖。圖示rd1、rd2、rd3、rd4是記錄數(shù)據(jù)Din[7:0]、Din[15:8]、Din[23:16]、Din[31:24]編碼相對(duì)應(yīng)的編碼取值列表,Dout1、Dout2、Dout3、Dout4分別對(duì)應(yīng)輸出Dout[9:0]、Dout[19:10]、Dout[29:20]和Dout[39:30]。根據(jù)8B/10B編碼規(guī)定,第一個(gè)編碼值取負(fù)列表編碼的值,然后判斷與該編碼對(duì)應(yīng)的極性值RD是否為1,若為1則第二個(gè)編碼列表的值取與第一個(gè)編碼列表的值的相反的值,若不為1則第二個(gè)編碼列表的值取與第一個(gè)編碼列表的值的相同的值。以此類推,第四個(gè)編碼列表的RD值同樣也決定了下一組編碼中第一個(gè)編碼的取值,進(jìn)而確保了整個(gè)數(shù)據(jù)編碼的直流平衡。
3.2 LVDS接收端的新型8B/10B解碼設(shè)計(jì)
LVDS接收端解碼電路的工作原理與編碼電路的工作原理類似,是編碼電路的逆過程[14],將接收到的4組10 bit數(shù)據(jù)通過Transceiver IP核組成一組40 bit數(shù)據(jù),該數(shù)據(jù)通過如圖8所示的新型8B/10B解碼電路得到32 bit數(shù)據(jù),最終通過Transceiver IP核將數(shù)據(jù)以每組8 bit連續(xù)發(fā)出。
控制字符編碼檢測模塊用于檢測接收到的編碼字符是否為控制碼,若為控制碼則對(duì)應(yīng)的kin賦值為1,否則說明為數(shù)據(jù)碼,kin賦值為0;解碼模塊將接收到的4組數(shù)據(jù)根據(jù)4B/3B和6B/5B解碼映射關(guān)系表進(jìn)行解碼,然后進(jìn)行4組數(shù)據(jù)的不均衡性檢測得出其對(duì)應(yīng)的RD值;違規(guī)檢測模塊通過比較相鄰兩組8 bit數(shù)據(jù)的值與RD值,判斷在傳輸過程中是否產(chǎn)生解碼違規(guī)數(shù)據(jù),若沒有產(chǎn)生,則輸出有效數(shù)據(jù),否則將該數(shù)據(jù)刪除。
4 可靠性結(jié)果驗(yàn)證
為了驗(yàn)證本次設(shè)計(jì)的可靠性,采用數(shù)據(jù)采集編碼器、地面測試臺(tái)與上位機(jī)共同搭建的測試系統(tǒng)。地面測試臺(tái)與數(shù)據(jù)采集編碼器之間的數(shù)據(jù)傳輸采用了4段50 m的LVDS平衡雙絞導(dǎo)線作為傳輸介質(zhì)。測試中將數(shù)據(jù)采集編碼器與LVDS平衡雙絞導(dǎo)線放置于60 ℃高溫環(huán)境并向LVDS雙絞線中注入脈沖激勵(lì)作為干擾,采用的數(shù)據(jù)幀結(jié)構(gòu)如圖9所示,其中“96 14 6F 14 6F”為數(shù)據(jù)幀包頭,“00 00 00 00~00 00 00 09”為包計(jì)數(shù),數(shù)據(jù)為00~59的遞增數(shù)。
通過FPGA程序控制LVDS串行數(shù)據(jù)的傳輸速率,以及通過電纜長度控制LVDS串行數(shù)據(jù)的傳輸距離,分別進(jìn)行如下誤碼率的測試,測試結(jié)果見表1、表2。
根據(jù)測試結(jié)果可知,硬件電路可以保證以100 Mb/s的傳輸速率在240 m的電纜中或以500 Mb/s的傳輸速率在60 m的電纜中無誤碼傳輸,但隨著傳輸速率和電纜長度的增加誤碼率會(huì)越來越大,遠(yuǎn)不及測試任務(wù)要求。但在FPGA程序中加入新型的8B/10B編解碼后,可以明顯地降低數(shù)據(jù)誤碼率,不僅可以保證240 m長的遠(yuǎn)距離傳輸,而且速率上也可以滿足500 Mb/s的高速無誤碼傳輸。
5 結(jié)論
針對(duì)數(shù)據(jù)在高速遠(yuǎn)距離傳輸過程中可靠性低的問題,本設(shè)計(jì)在硬件電路上采用了信號(hào)調(diào)理技術(shù),對(duì)LVDS信號(hào)進(jìn)行均衡和預(yù)(去)加重處理,同時(shí)在邏輯設(shè)計(jì)中,加入了一種新型8B/10B編解碼的優(yōu)化方式,極大地增強(qiáng)了傳輸鏈路的可靠性。通過大量的測試實(shí)驗(yàn),驗(yàn)證了本設(shè)計(jì)中LVDS數(shù)據(jù)能夠以500 Mb/s的傳輸速率在240 m的平衡雙絞導(dǎo)線上實(shí)現(xiàn)無誤碼傳輸,滿足測試任務(wù)要求。
參考文獻(xiàn)
[1] 儲(chǔ)成群.基于LVDS接口的高速數(shù)據(jù)記錄器的設(shè)計(jì)[D].太原:中北大學(xué),2011.
[2] 張?zhí)煳?,劉文?基于LVDS和PCI接口的高速圖像傳輸系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014,40(7):51-53,60.
[3] 劉佳寧,文豐,王淑琴,等.基于LVDS的高可靠性長線傳輸設(shè)計(jì)[J].電子器件,2017,40(5):1209-1213.
[4] 畢錦棟,鄭麗香,周軍連,等.電子元器件國產(chǎn)化替代工作討論[J].質(zhì)量與可靠性,2015(3):35-40.
[5] 李永梅,李先亞,周傳祥.軍用進(jìn)口電子元器件的國產(chǎn)化替代驗(yàn)證典型案例分析[J].質(zhì)量與可靠性,2017(5):30-33.
[6] 郭佳欣.基于LVDS的圖像采集存儲(chǔ)裝置的設(shè)計(jì)與實(shí)現(xiàn)[D].太原:中北大學(xué),2017.
[7] 李治華,趙冬青,甑國勇,等.高可靠性遠(yuǎn)程數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)[J].電子器件,2017,40(2):490-494.
[8] 李宏儒,劉亮.并行轉(zhuǎn)串行LVDS長線接口設(shè)計(jì)[J].實(shí)驗(yàn)室研究與探索,2010,29(6):62-65.
[9] 趙陽剛,郭濤,黃玉崗.基于FPGA和LVDS的彈載數(shù)據(jù)回讀系統(tǒng)設(shè)計(jì)[J].電子器件,2017,40(1):113-117.
[10] 張平.基于FPGA的高速8B/10B編解碼電路設(shè)計(jì)[D].合肥:安徽大學(xué),2016.
[11] 劉泳銳,張彥軍,劉龍飛,等.8B/10B編碼實(shí)現(xiàn)LVDS交流耦合傳輸中的直流平衡[J].科學(xué)技術(shù)與工程,2012,12(35):9693-9696,9701.
[12] 李長慶,程軍,李梁,等.采用并行8B/10B編碼的JESD-204B接口發(fā)送端電路設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī),2017,34(8):70-75.
[13] 常紅,柯導(dǎo)明,孟堅(jiān),等.新型8B/10B編碼方案的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2018,54(2):87-90,106.
[14] 王方,周璐,張正璠.8B/10B編碼器新型算法結(jié)構(gòu)的設(shè)計(jì)與實(shí)現(xiàn)[J].微電子學(xué)與計(jì)算機(jī),2016,33(10):151-154,158.
作者信息:
雷武偉,文 豐,劉東海,王淑琴
(中北大學(xué) 儀器科學(xué)與動(dòng)態(tài)測試教育部重點(diǎn)實(shí)驗(yàn)室,電子測試技術(shù)國家重點(diǎn)實(shí)驗(yàn)室,山西 太原030051)