程蕓 王建宇 黃巧林
(北京空間機電研究所,北京 100076)
隨著遙感技術(shù)及相應(yīng)處理方法的不斷發(fā)展,國內(nèi)外遙感衛(wèi)星有效載荷的空間、時間和光譜分辨率不斷提高,相應(yīng)的數(shù)據(jù)規(guī)模呈幾何級數(shù)增長,對高分辨率遙感衛(wèi)星數(shù)據(jù)傳輸接口提出了更高的要求,其必須具有傳輸速率快、可靠性高和連接點少等特點。目前,大部分遙感衛(wèi)星設(shè)備間接口類型都是低壓差分信號(LVDS),圖像數(shù)據(jù)傳輸接口的數(shù)據(jù)形式多為并行輸出[1],這就需要大量的連接電纜,并且傳輸速率較低,帶來可靠性、成本、質(zhì)量等問題,越來越不適應(yīng)航天遙感技術(shù)的發(fā)展要求。
為解決衛(wèi)星遙感器獲取的大量圖像信息的高速傳輸問題,本文從硬件電路與互連協(xié)議兩個方面進(jìn)行設(shè)計,應(yīng)用高速串行編解碼收發(fā)器配合現(xiàn)場可編程門陣列(FPGA)器件,編程實現(xiàn)設(shè)備間數(shù)據(jù)傳輸。本文的設(shè)計采用高速串行總線接口技術(shù),由于將時鐘與數(shù)據(jù)合并進(jìn)行傳輸,從而克服了時鐘和數(shù)據(jù)的抖動問題,可獲得較佳的信號完整性[2],為遙感衛(wèi)星設(shè)備間的大數(shù)據(jù)量傳輸提供了一種解決方案。
本文提出的高速數(shù)據(jù)傳輸接口設(shè)計,其關(guān)鍵是串行器/解串器(Serializer/Deserializer,簡稱Ser-Des)的應(yīng)用。在發(fā)送端,多路低速并行信號被轉(zhuǎn)換成高速串行差分信號,接收端再將串行差分信號轉(zhuǎn)換為并行信號。這種點對點的串行通信技術(shù),充分利用傳輸媒介的信道容量,減少所需的傳輸信道和器件引腳數(shù)目,從而大大降低通信成本。
基于SerDes的高速串行接口,采用以下3點措施突破傳統(tǒng)并行I/O接口的數(shù)據(jù)傳輸瓶頸,提高傳輸性能。①采用差分信號傳輸代替單端信號傳輸,從而增強抗噪聲、抗干擾能力[3-4];②采用時鐘和數(shù)據(jù)恢復(fù)技術(shù)代替同步傳輸數(shù)據(jù)和時鐘,從而解決限制數(shù)據(jù)傳輸速率的信號時鐘偏移問題[5];③采用8B/10B編碼技術(shù),使編碼后的數(shù)據(jù)中0、1的數(shù)量基本一致,連續(xù)的0、l不會超過5位,從而保證信號的直流平衡,能很好地滿足高速信號傳輸?shù)男枨螅?]。
本設(shè)計應(yīng)用SerDes芯片配合FPGA 編程實現(xiàn)設(shè)備間數(shù)據(jù)傳輸,其接口總體框圖見圖1。
圖1 高速串行數(shù)據(jù)傳輸總體方案框圖Fig.1 Layout of high-speed serial data transmission interface
高速串行傳輸電路系統(tǒng)包括以下幾個部分:時鐘產(chǎn)生模塊、發(fā)送(接收)數(shù)據(jù)處理模塊、數(shù)據(jù)發(fā)送(接收)模塊和傳輸電纜。工作時,發(fā)送部分的FPGA 作為發(fā)送數(shù)據(jù)處理模塊,產(chǎn)生多路16bit的數(shù)據(jù)包,這些數(shù)據(jù)包符合所使用的高速串行協(xié)議。發(fā)送器接收到數(shù)據(jù)包之后進(jìn)行8B/10B編碼,再進(jìn)行并/串轉(zhuǎn)換,串行數(shù)據(jù)由一對差分線串行送出。
接收部分與發(fā)送部分之間傳輸線上的阻抗匹配關(guān)系如圖2 所示,傳輸線上通過50Ω 電阻進(jìn)行匹配[7],以保證信號的完整性。
圖2 接口阻抗匹配框圖Fig.2 Impedance matching of interface
為了適應(yīng)航天應(yīng)用,保證數(shù)據(jù)高速、可靠傳輸,收發(fā)端使用高速連接器連接,收發(fā)接口間的連接線采用兩芯同軸電纜連接,以傳輸一對差分信號,信號線屏蔽關(guān)系如圖3所示,信號線上屏蔽層通過連接器接地。
圖3 傳輸接口信號屏蔽與接地Fig.3 Shield and grounding of transmission interface
為了啟動串行接口數(shù)據(jù)傳輸,在建立物理鏈路之后,還要對所傳送數(shù)據(jù)的格式進(jìn)行更詳細(xì)的定義,數(shù)據(jù)才可在發(fā)送器和接收器之間傳送?;赟er-Des的高速串行接口,在互連協(xié)議上對于采用何種同步碼只給出了一些選擇項,并未明確規(guī)定,也未確定數(shù)據(jù)幀的格式。因此,在SerDes的高速串行接口協(xié)議框架下,針對航天應(yīng)用的實際情況,本文設(shè)計出了一種傳輸協(xié)議,其中包括數(shù)據(jù)幀的定義、協(xié)議規(guī)定和協(xié)議工作過程。
考慮實際應(yīng)用情況,從提高可靠性的角度出發(fā),數(shù)據(jù)幀增加幀頭、幀尾。設(shè)計傳輸協(xié)議的控制字符定義如表1所示,包括數(shù)據(jù)幀的幀頭、幀尾以及同步字符。以16bit作為一個基本的傳輸單位,每一個控制字符都定義成2個字節(jié),分別由D碼和K碼組成[5]。
表1 控制字符格式Table 1 Control character formats
數(shù)據(jù)幀包括幀頭(/SF/)、幀尾(/EF/)和數(shù)據(jù)單元(DATA)三部分,如圖4所示。傳輸時,幀和幀之間發(fā)送同步字符/SP/,保證傳輸鏈路的同步。
圖4 數(shù)據(jù)幀的定義Fig.4 Definition of data frame
本協(xié)議是基于點對點的單工串行傳輸制定的,對協(xié)議作如下的規(guī)定。
(1)數(shù)據(jù)在通道上以數(shù)據(jù)幀的形式傳遞。每個數(shù)據(jù)幀的開始和結(jié)束,分別用幀頭控制字符/SF/和幀尾控制字符/EF/標(biāo)出。每一幀的數(shù)據(jù)(DATA)個數(shù)(不包括數(shù)據(jù)幀的幀頭和幀尾標(biāo)記)按約定輸出。
(2)傳輸中,數(shù)據(jù)幀與數(shù)據(jù)幀之間發(fā)送同步字符/SP/,以保持傳輸鏈路的同步狀態(tài),如果在傳輸過程中收發(fā)雙方失去同步,則通過幀間的同步字符重新建立同步。
(3)在系統(tǒng)上電或復(fù)位后,收發(fā)雙方要首先建立同步,發(fā)送端先發(fā)送同步字符/SP/并保持1 ms,以建立與接收端的同步關(guān)系,之后發(fā)送數(shù)據(jù)幀。
協(xié)議的工作過程見圖5。系統(tǒng)上電或復(fù)位后,收發(fā)雙方處于失步狀態(tài)(要求在發(fā)送端復(fù)位后,接收端要保證已處于接收狀態(tài)),發(fā)送端發(fā)送同步字符/SP/,時間長度為不小于1ms,1ms結(jié)束后認(rèn)為系統(tǒng)完成同步過程,發(fā)送端開始數(shù)據(jù)幀的發(fā)送。在數(shù)據(jù)幀之間,發(fā)送端要發(fā)送同步字符,以保持?jǐn)?shù)據(jù)傳輸鏈路的同步狀態(tài),發(fā)送同步字符的個數(shù)由傳輸逆程的長度決定,依此循環(huán)直至遙感相機停止工作。在同步狀態(tài)建立后,接收端不斷檢測,輸出控制信號RKLSB和RKMSB(K 碼標(biāo)志信號),如果在發(fā)送數(shù)據(jù)過程中控制信號出現(xiàn)高電平,即認(rèn)為出現(xiàn)失步。接收端如果在數(shù)據(jù)幀傳輸過程中失步,依靠數(shù)據(jù)幀間的同步字符重新建立起收發(fā)間的同步關(guān)系;同步關(guān)系建立后,立刻轉(zhuǎn)入正常數(shù)據(jù)接收狀態(tài)。
圖5 協(xié)議工作過程Fig.5 Protocol working procedure
偽隨機碼序列具有良好的抗干擾性和抗衰落能力[8],利用發(fā)送端發(fā)送偽隨機碼,在接收端接收測試傳輸誤碼,在通信領(lǐng)域是一種常用方式。針對本文提出的串行接口設(shè)計方案,選取特征多項式為
式中:Y為序列輸出;X為原始序列。
偽隨機碼序列可以很方便地用若干個移位寄存器來產(chǎn)生,最常用的是D 觸發(fā)器[9]。圖6演示了一種采用帶線性反饋的移位寄存器產(chǎn)生偽隨機碼序列的原理機制[10]。級聯(lián)移位寄存器根據(jù)選取的特征多項式,抽取寄存器的輸出反饋,產(chǎn)生偽隨機碼。
圖6 偽隨機碼發(fā)生器原理Fig.6 Protocol of PRBS generator
試驗中,利用FPGA 編程實現(xiàn)偽隨機碼發(fā)生,通過串行編碼器進(jìn)行8B/10B 編碼,經(jīng)串行器轉(zhuǎn)換成為2Gbit/s的高速串行信號,傳輸?shù)浇獯鬓D(zhuǎn)換成并行信號后送到安捷倫公司誤碼儀,進(jìn)行長時間數(shù)據(jù)傳輸誤碼率測試,測試結(jié)果如圖7所示。經(jīng)過6個多小時的數(shù)據(jù)傳輸試驗,累計多達(dá)2.191 537×1015位數(shù)據(jù)中無誤碼出現(xiàn),充分證明了高速串行接口設(shè)計的穩(wěn)定、有效。
圖7 誤碼率測試結(jié)果Fig.7 Test results of BER(bit error rate)
衛(wèi)星遙感器獲取的大量高速圖像信息,使設(shè)備間大數(shù)據(jù)量的傳輸成為技術(shù)發(fā)展瓶頸。高速串行總線接口技術(shù)由于將時鐘與數(shù)據(jù)合并進(jìn)行傳輸,從而克服了時鐘和數(shù)據(jù)的抖動問題,能夠極大提高傳輸速率,減少IC外圍引腳數(shù),降低功耗,并能獲得較佳的信號完整性。本文論述了用于衛(wèi)星遙感器高速數(shù)據(jù)傳輸?shù)脑O(shè)計過程,應(yīng)用高速串行編解碼收發(fā)器配合FPGA 編程,實現(xiàn)了設(shè)備間數(shù)據(jù)傳輸,通過偽隨機碼傳輸測試,實現(xiàn)了2Gbit/s的高速串行傳輸。目前,遙感衛(wèi)星設(shè)備間數(shù)據(jù)傳輸一般采用并行方式,速率僅有800 Mbit/s,本文的設(shè)計無疑為高分辨率遙感衛(wèi)星的數(shù)據(jù)傳輸問題提供了一種解決方案。不過,串行接口設(shè)計對時鐘信號質(zhì)量,包括占空比、時鐘抖動等要求較高,為此,要在如何保證信號完整性方面進(jìn)行更多的研究,以更好地提高數(shù)據(jù)傳輸率與可靠性。
(References)
[1]肖龍,萬旻,李濤.高速數(shù)字圖像數(shù)據(jù)傳輸?shù)难芯考皩崿F(xiàn)[J].航天返回與遙感,2009,30(2):50-55
Xiao Long,Wan Min,Li Tao.Research and implementation of a high-speed digital image data transmission[J].Spacecraft Recovery & Remote Sensing,2009,30(2):50-55(in Chinese)
[2]高志,黃生葉.基于FPGA 的通用高速串行互連協(xié)議設(shè)計[J].計算機測量與控制,2009,17(9):1826-1830
Gao Zhi,Huang Shengye.Design of high-speed serial interconnection protocol based on FPGA[J].Computer Measurement & Control,2009,17(9):1826-1830 (in Chinese)
[3]葉菁華.高速串行數(shù)據(jù)發(fā)送器的研究[D].上海:復(fù)旦大學(xué),2005
Ye Jinghua.Study on high-speed transmitter[D].Shanghai:Fudan University,2005(in Chinese)
[4]曹躍勝,胡軍,劉燁銘.高速SERDES的多板傳輸技術(shù)與SI仿真[J].計算機工程與科學(xué),2008,30(8):139-143
Cao Yuesheng,Hu Jun,Liu Yeming.The multi-board transmission technology and the SI simulation for highspeed SERDES design[J].Computer Engineering &Science,2008,30(8):139-143(in Chinese)
[5]Cole C R.100Gbit/s and beyond transceiver technologies[J].Optical Fiber Technology,2011,17(5):472-479
[6]杜旭,于洋,黃建.基于FPGA 的高速串行傳輸接口的設(shè)計與實現(xiàn)[J].計算機工程與應(yīng)用,2007,43(12):94-96
Du Xu,Yu Yang,Huang Jian.Design and implementation of high-speed serial transmission interface based on FPGA[J].Computer Engineering and Applications,2007,43(12):94-96(in Chinese)
[7]黃乘順,李星亮,蔡益宇.傳輸線阻抗匹配模型及精確計算[J].通信技術(shù),2007,40(11):119-120
Huang Chengshun,Li Xingliang,Cai Yiyu.Impedance matching model and its precise computing of transmission line[J].Communication Technology,2007,40(11):119-120(in Chinese)
[8]于燕,焦暉.基于FPGA 的偽隨機碼序列發(fā)生器實現(xiàn)方案研究[J].電腦與電信,2006(6):47-52
Yu Yan,Jiao Hui.Research of the realization plan of pseudo-stochastic-code generator based on FPGA[J].Computer & Telecommunication,2006(6):47-52 (in Chinese)
[9]吳煒祺,艾勇,左韜,等.基于SOPC 的無線激光通信誤碼儀設(shè)計及實現(xiàn)[J].光通信技術(shù),2008,32(2):52-55
Wu Weiqi,Ai Yong,Zuo Tao,et al.Design of embedded wireless laser communication BER tester based on SOPC[J].Optical Communication Technology,2008,32(2):52-55(in Chinese)
[10]Zid M,Scandurra A,Tourki R,et al.A high-speed four-phase clock generator for low-power on-chip Ser-Des applications[J].Microelectronics Journal,2011,42(9):1049-1056