許志宏 ,董振興 ,安軍社
(1.中國(guó)科學(xué)院國(guó)家空間科學(xué)中心北京100190;2.中國(guó)科學(xué)院大學(xué)北京100190)
隨著我國(guó)先導(dǎo)科學(xué)衛(wèi)星任務(wù)的展開,空間科學(xué)已由最初的實(shí)驗(yàn)階段逐步邁入應(yīng)用階段,一方面,單個(gè)科學(xué)衛(wèi)星的空間任務(wù)越來(lái)越復(fù)雜多樣,與任務(wù)需求對(duì)應(yīng)的有效載荷的數(shù)量也隨之增多,載荷數(shù)據(jù)量和速率大幅攀升;另一方面,科學(xué)衛(wèi)星發(fā)射密度逐年增加,星上產(chǎn)品需求量也隨之加大,衛(wèi)星建造成本和研發(fā)周期的不斷被壓縮。如何在短時(shí)間內(nèi)完成具有高可靠性,低成本和復(fù)雜功能的衛(wèi)星設(shè)計(jì)和建造任務(wù),成為了目前我國(guó)航天領(lǐng)域科研單位急需解決的難題。
針對(duì)這個(gè)難題,文中提出一種基于FPGA的高速數(shù)字復(fù)接器設(shè)計(jì),應(yīng)用在一體化星載高速數(shù)傳系統(tǒng)上,相比傳統(tǒng)復(fù)接器速度偏低、應(yīng)對(duì)任務(wù)類型單一,通用性較差等缺點(diǎn),該方案實(shí)現(xiàn)了載荷數(shù)據(jù)接收合路器、NAND flash大容量存儲(chǔ)控制器、數(shù)據(jù)復(fù)接器和信道LDPC編碼器一體化的集成設(shè)計(jì),外部通用高速接口采用LVDS接口,控制總線協(xié)議采用1553B總線協(xié)議,數(shù)據(jù)傳輸格式協(xié)議采用CCSDS AOS的網(wǎng)絡(luò)層協(xié)議,標(biāo)準(zhǔn)協(xié)議的使用和功能的高度集成化能夠使該設(shè)計(jì)應(yīng)對(duì)多類型任務(wù),并大幅降低星載數(shù)傳系統(tǒng)開發(fā)周期和成本。
高速數(shù)據(jù)復(fù)接器系統(tǒng)應(yīng)用在星載高速一體化數(shù)據(jù)處理平臺(tái)中,該數(shù)據(jù)處理平臺(tái)接收來(lái)自載荷的科學(xué)圖像數(shù)據(jù)、遙測(cè)數(shù)據(jù)以及工程參數(shù)數(shù)據(jù),并將接收到的數(shù)據(jù)按照實(shí)時(shí)和延時(shí)數(shù)據(jù)分類,延時(shí)下傳數(shù)據(jù)由合路器進(jìn)行預(yù)先處理后存入大容量固態(tài)存儲(chǔ)中。衛(wèi)星在軌運(yùn)行過(guò)程中,復(fù)接器等待計(jì)算機(jī)回放指令,收到回放指令后,進(jìn)行數(shù)據(jù)回放,經(jīng)復(fù)接器組成符合CCSDS AOS格式的傳輸幀,作為基帶信號(hào)經(jīng)過(guò)LDPC信道編碼和加擾處理,處理后數(shù)據(jù)通過(guò)X波段QPSK調(diào)制單元調(diào)制后輸出至功放器[2-4]。系統(tǒng)結(jié)構(gòu)見圖1。
圖中虛線框內(nèi)為本文提出的基于FPGA的高速數(shù)據(jù)復(fù)接器。整個(gè)數(shù)據(jù)處理系統(tǒng)由計(jì)算機(jī)控制單元、合路復(fù)接與存儲(chǔ)控制單元、LDPC信道編碼單元及QPSK調(diào)制單元等部分組成。復(fù)接調(diào)制器上電時(shí)接收載荷數(shù)據(jù)。載荷的主備通訊接口與復(fù)接調(diào)制器的主備機(jī)實(shí)現(xiàn)主備交叉通訊。
圖1 一體化數(shù)據(jù)處理平臺(tái)總體結(jié)構(gòu)圖
通用復(fù)接器主要包括通用數(shù)據(jù)合路與預(yù)處理模塊、大容量存儲(chǔ)控制模塊、數(shù)據(jù)復(fù)接模塊和信道編碼模塊組成,系統(tǒng)結(jié)構(gòu)圖見圖2。目前該復(fù)接器入口包括16路LVDS、8路RS-422、8路UART和4路OC門,都為常用衛(wèi)星數(shù)據(jù)傳輸系統(tǒng)接口,數(shù)據(jù)輸入理論帶寬為1 Gbps,入口各路數(shù)據(jù)速率能夠做到可預(yù)先配置,可按照具體工程需求分配各路輸入數(shù)據(jù)的速率,具有較高的靈活性。在外部控制總線通訊接口上該系統(tǒng)支持MIL-STD-1553B總線協(xié)議。
系統(tǒng)工作流程:外部數(shù)據(jù)接收接口主要包用來(lái)接收載荷數(shù)據(jù)。當(dāng)數(shù)據(jù)進(jìn)入合路單元后進(jìn)行數(shù)據(jù)的打包處理預(yù)處理,將多路數(shù)據(jù)進(jìn)行合路,處理后數(shù)據(jù)經(jīng)過(guò)NAND flash存儲(chǔ)控制器進(jìn)入存儲(chǔ),形成延時(shí)數(shù)據(jù),待星務(wù)計(jì)算機(jī)發(fā)送數(shù)據(jù)回放指令后,將延時(shí)數(shù)據(jù)讀出存儲(chǔ)區(qū)進(jìn)入數(shù)據(jù)復(fù)接器,按照CCSDS AOS傳輸幀格式進(jìn)行組織傳輸幀操作,幀數(shù)據(jù)經(jīng)LDPC(8192,7154)編碼后分為I和Q兩路串行輸出到下級(jí)調(diào)制器。整個(gè)系統(tǒng)設(shè)計(jì)指標(biāo)為:入口瞬時(shí)速率為1 Gbps,存儲(chǔ)容量為512G位,下行編碼速率為400 Mbps[6]。
圖2 復(fù)接器系統(tǒng)結(jié)構(gòu)圖
數(shù)據(jù)合路和預(yù)處理控制模塊主要完成載荷數(shù)據(jù)的接收功能和遙測(cè)源包打包功能,并且按照載荷的數(shù)據(jù)速率將載荷數(shù)據(jù)分為快速通路和慢速通路,實(shí)現(xiàn)分級(jí)緩存和分級(jí)合路總裁,低速通路按照252字節(jié)的長(zhǎng)度進(jìn)行遙測(cè)源包打包,高速通道按照1 008字節(jié)的長(zhǎng)度進(jìn)行遙測(cè)源包打包,低速通道數(shù)據(jù)滿4個(gè)短包后組合成一長(zhǎng)包對(duì)二級(jí)仲裁器發(fā)出占用數(shù)據(jù)通路請(qǐng)求,采用這種方式關(guān)鍵在于合理地分配高速與低速數(shù)據(jù)流占用物理信道的比率,必須根據(jù)數(shù)據(jù)源
個(gè)數(shù)以及數(shù)據(jù)流總數(shù)據(jù)率之比來(lái)確定。使用混合多路復(fù)用的方法,既能滿足等時(shí)數(shù)據(jù)的固定時(shí)隙要求,又適應(yīng)各數(shù)據(jù)源數(shù)據(jù)量的調(diào)整,以防止慢速通道過(guò)度占用數(shù)據(jù)通道,降低數(shù)據(jù)傳輸效率,具體原理與模塊結(jié)構(gòu)[5]見圖3。
圖3 分組合路調(diào)度原理圖
星載大容量固態(tài)存儲(chǔ)控制器與存儲(chǔ)控制CPU運(yùn)行基于VxWorks操作系統(tǒng)的嵌入式存儲(chǔ)管理應(yīng)用軟件進(jìn)行軟硬件協(xié)同工作,對(duì)固態(tài)存儲(chǔ)空間完成動(dòng)態(tài)擬文件化管理,工作方式為中斷方式,應(yīng)用軟件根據(jù)存儲(chǔ)控制器中斷狀態(tài)向FPGA發(fā)送相應(yīng)操作指令。FPGA完成對(duì)存儲(chǔ)器件的控制功能,通過(guò)對(duì)CPU應(yīng)用軟件的指令解析,完成對(duì)存儲(chǔ)介質(zhì)的讀寫操作、擦除操作和存儲(chǔ)壞塊維護(hù)等功能。
存儲(chǔ)系統(tǒng)所使用的存儲(chǔ)介質(zhì)為3DPLUS公司的64 Gb(8×8 Gbits)宇航級(jí)NAND flash疊裝器件,該器件由8片8 G位(1G×8 bits)的NAND flash芯片疊裝而成,采用 SIP(System In a Package)封裝方式。Flash芯片最大工作時(shí)鐘頻率為40 MHz,根據(jù)在空間應(yīng)用中的不同環(huán)境溫度條件下信號(hào)滿足芯片的建立保持時(shí)間的要求以及80%的設(shè)計(jì)降額要求,存儲(chǔ)系統(tǒng)工作時(shí)鐘頻率設(shè)定為32 MHz,存儲(chǔ)介質(zhì)數(shù)據(jù)總線采用32位(4芯片)并行擴(kuò)展,數(shù)據(jù)寫入采用4級(jí)流水方式,以提高寫入效率,吞吐率理論峰值速率為1 Gbps,實(shí)測(cè)平均有效速率為700 Mbps。容量為512 G位。整個(gè)存儲(chǔ)硬件系統(tǒng)在6U的PCB單板上集成,單板對(duì)外低速控制接口采用通用1553B總線接口,作為載荷單機(jī)總線網(wǎng)絡(luò)的遠(yuǎn)程終端,并能與星務(wù)分系統(tǒng)進(jìn)行通信。高速數(shù)據(jù)輸入和輸出接口采用rapid IO協(xié)議,物理層使用 LVDS(Low-Voltage Differential Signaling)接口[7-8,10]。
圖4 容量固態(tài)存儲(chǔ)控制系統(tǒng)結(jié)構(gòu)
由于復(fù)接控制模塊支持支持16路虛擬信道調(diào)度,優(yōu)秀的信道優(yōu)先級(jí)的調(diào)度策略能夠提高在有限的下傳帶寬中的信道傳輸效率,還能防止數(shù)據(jù)丟失,CCSDS AOS推薦虛擬信道的調(diào)度策略主要包括:靜態(tài)調(diào)度、動(dòng)態(tài)調(diào)度和混合調(diào)度策略,一般虛擬信道優(yōu)先級(jí)調(diào)度算法主要包括:先來(lái)先服務(wù)算法、靜態(tài)固定優(yōu)先級(jí)的調(diào)度算法,輪詢調(diào)度算法(roundrobin),剩余量?jī)?yōu)先級(jí)調(diào)度算法等,這些算法在不同應(yīng)用場(chǎng)景下各有優(yōu)缺點(diǎn),文中采用一種基于緊迫度的改進(jìn)型輪詢調(diào)度算法[9],算法主要思想:動(dòng)態(tài)優(yōu)先級(jí)調(diào)度需要考慮虛擬信道中的兩個(gè)狀態(tài)參數(shù):傳虛擬信道傳輸緊迫度基數(shù)(trans urgency)BTU與傳輸緊迫度加權(quán)系數(shù)(trans urgency weighting)WTU。傳輸緊迫度基數(shù)BTU是指一個(gè)虛擬信道從申請(qǐng)傳輸時(shí)刻開始到該虛擬信道被調(diào)度時(shí)刻的延遲,其取值是實(shí)時(shí)變化的,其取值方式如下:
1)當(dāng)虛擬信道中沒(méi)有完整的傳輸幀時(shí),該虛擬信道的傳輸緊迫度基數(shù)為0;有完整的傳輸幀時(shí),其傳輸緊迫度基數(shù)為1。
2)當(dāng)虛擬信道中有完整的傳輸數(shù)據(jù)幀而沒(méi)有得到傳輸時(shí),每延遲一個(gè)調(diào)度時(shí)刻,傳輸緊迫度基數(shù)加1。
3)當(dāng)一個(gè)虛擬信道被調(diào)度后,若該虛擬信道中還有完整的數(shù)據(jù)幀時(shí),緊迫度基數(shù)自動(dòng)降為1;若該虛擬信道中沒(méi)有完整的數(shù)據(jù)幀時(shí),緊迫度基數(shù)自動(dòng)降為0。
傳輸緊迫度加權(quán)系數(shù)WTU取值為該虛擬信道的靜態(tài)優(yōu)先級(jí),信道傳輸優(yōu)先級(jí)越高,WTU取值越大。定義第i個(gè)虛擬信道的傳輸綜合緊迫度Ui為:
其中BTUi和WTUi分別為第i個(gè)虛擬信道的傳輸緊迫度基數(shù)和傳輸緊迫度加權(quán)系數(shù)。
具有最大緊迫度系數(shù)的虛擬信道優(yōu)先級(jí)最高,按照傳統(tǒng)的輪詢調(diào)度機(jī)制,當(dāng)虛擬信道傳輸完后無(wú)論信道緩存中是否還有數(shù)據(jù),其優(yōu)先級(jí)降為最低,即WTU置0,這樣在下一個(gè)調(diào)度判斷時(shí)間到來(lái)時(shí),該信道將不會(huì)被調(diào)度,這樣對(duì)信道公平性產(chǎn)生影響。因此信道優(yōu)先級(jí)的排序依據(jù)信道綜合緊迫度大小來(lái)決定,算法原理圖見圖5。
圖5 基于緊張度的虛擬信道調(diào)度算法
CCSDS采納LDPC碼為近地空間和深空探測(cè)的信道編碼標(biāo)準(zhǔn),并推薦7/8碼率LDPC碼作為近地空間信道編碼方案。傳統(tǒng)串行編碼方式使用寄存器搭建運(yùn)算矩陣,當(dāng)高速數(shù)傳工況下,矩陣運(yùn)算所產(chǎn)生功耗大幅上升,無(wú)法應(yīng)用于衛(wèi)星高速數(shù)傳平臺(tái),針對(duì)運(yùn)算矩陣實(shí)現(xiàn)手段方面,本文設(shè)計(jì)中使用在待編碼信息位數(shù)據(jù)中插0和改變校驗(yàn)矩陣結(jié)構(gòu)的方法形成LDPC(8192,7154)碼字,并使用循環(huán)移位寄存器組的方式來(lái)實(shí)現(xiàn)LDPC編碼,使用大小為511x511的校驗(yàn)矩陣子矩陣,并且實(shí)現(xiàn)兩路數(shù)據(jù)奇偶位并行編碼運(yùn)算,在保證碼率不變的前提下,降低寄存器資源開銷,并提高了運(yùn)算效率,并行LDPC編碼電路結(jié)構(gòu)圖見圖6。
圖6 并行低功耗LDPC編碼電路結(jié)構(gòu)
循環(huán)移位寄存器的移位值范圍從0到510之間,每次移位都由移位控制器進(jìn)行控制,根據(jù)移位控制器輸出的控制信息進(jìn)行乘加操作。在編碼過(guò)程中,7154位有效信息數(shù)據(jù)經(jīng)插0操作后拓展到7168位,插0后數(shù)據(jù)分為14組,每組512位待編碼數(shù)據(jù),經(jīng)矩陣運(yùn)算電路編碼后,生成8192位的編碼碼字。
原理樣機(jī)應(yīng)用場(chǎng)景為衛(wèi)星平臺(tái)數(shù)據(jù)傳輸系統(tǒng)數(shù)管單元,本設(shè)計(jì)已經(jīng)在原理樣機(jī)上進(jìn)行驗(yàn)證,原理樣機(jī)電路板外觀見圖7。
圖7 原理樣機(jī)圖
根據(jù)應(yīng)用系統(tǒng)結(jié)構(gòu),搭建了一套完整的地面測(cè)試系統(tǒng),在該測(cè)試系統(tǒng)下,對(duì)設(shè)計(jì)進(jìn)行包括熱真空在內(nèi)的大量環(huán)境適應(yīng)性測(cè)試以及最大工況的強(qiáng)度測(cè)試。整個(gè)地面測(cè)試系統(tǒng)包括:1)載荷數(shù)據(jù)模擬單元,該單元用來(lái)模擬5路高速相機(jī)和衛(wèi)星遙測(cè)工參數(shù)據(jù)數(shù),入口碼速率為550 Mbps;2)待測(cè)數(shù)管分系統(tǒng)單機(jī),包括了載荷管理模塊,大容量存儲(chǔ)系統(tǒng)模塊,加密和射頻QPSK調(diào)制模塊;3)地面應(yīng)用模擬系統(tǒng),包括星務(wù)模擬系統(tǒng)和信號(hào)解調(diào)設(shè)備。4)地面應(yīng)用系統(tǒng),主要完成數(shù)據(jù)的解碼、解幀、解包和原始有效數(shù)據(jù)的比對(duì);5)數(shù)據(jù)處理終端,主要完成系統(tǒng)控制指令序列自動(dòng)化測(cè)試,以及對(duì)測(cè)試數(shù)據(jù)的記錄歸檔。經(jīng)過(guò)測(cè)試,所有接收到的傳輸幀格式符合CCSDS AOS建議,幀同步字、幀頭,幀長(zhǎng)度、插入長(zhǎng)度、遙測(cè)數(shù)據(jù)包長(zhǎng)度都和設(shè)定相符。填充數(shù)據(jù)、插入業(yè)務(wù)數(shù)據(jù)、虛擬信道調(diào)度功能,虛擬信道計(jì)數(shù)連續(xù),復(fù)接器工作時(shí)不丟數(shù)、不丟包,入口有效的數(shù)據(jù)接收碼速率不低于700 Mbps,出口速率達(dá)到400 Mbps。
該設(shè)計(jì)采用FPGA平臺(tái)[17-18]實(shí)現(xiàn)硬件功能,系統(tǒng)內(nèi)部設(shè)計(jì)也考慮了EDAC和定時(shí)刷新等抗空間單粒子效應(yīng)措施,具備較強(qiáng)的魯棒性。并且已在原理樣機(jī)上進(jìn)行驗(yàn)證,性能指標(biāo)能滿足設(shè)計(jì)預(yù)期,能夠滿足多種衛(wèi)星數(shù)傳要求,通過(guò)與國(guó)內(nèi)外已成功應(yīng)用的類似系統(tǒng)的橫向比較,該系統(tǒng)的各項(xiàng)功能和性能指標(biāo)達(dá)到相近水平。但在星載數(shù)據(jù)并行處理,圖像壓縮處理,輸入數(shù)據(jù)接口通用性,總線接口種類,存儲(chǔ)整列容量和速率等方面可進(jìn)一步地提升,可滿足未來(lái)更加復(fù)雜航天器數(shù)據(jù)處理需求。
參考文獻(xiàn):
[1]CCSDS 701.0-B-3, Blue Book, Issue 3,Advanced Orbiting Systems,Networks and DataLinks:Architectural specifications[S].2001.
[2]CCSD S 1 33.0-B-I.Space Packet Protocol[S].September 2003.
[3]戴曄.AOS高速多路合路器的研究[D].上海:上海交通大學(xué),2009.
[4]John Dickinson,Charlie Howard,Steven Torno.A High-Density,Non-Volatile Mass-Memory and Data Formatting Solution for Space Applications[C]//IEEEAC Paper 1575,Version 1,2009.
[5]司鋒,張強(qiáng).基于數(shù)據(jù)路由的星載高速數(shù)據(jù)處理系統(tǒng)研究[J].測(cè)繪通報(bào),2014(S1):27-31.
[6]宋琪,鄒業(yè)楠,李?yuàn)?,?衛(wèi)星固態(tài)存儲(chǔ)器數(shù)據(jù)容錯(cuò)設(shè)計(jì)與機(jī)制[J].國(guó)防科技大學(xué)學(xué)報(bào),2016,38(1):101-106.
[7]郭柳柳,甄國(guó)涌,劉東海.基于FPGA高速圖像數(shù)據(jù)的存儲(chǔ)及顯示設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014,40(11):75-77.
[8]鄒業(yè)楠,董振興,朱巖.基于CFDP標(biāo)準(zhǔn)的空間數(shù)據(jù)鏈路傳輸協(xié)議軟件實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2016(20):13-16.
[9]蘇秀紅,李春枝,申川.基于Nand Flash的高速存儲(chǔ)器結(jié)構(gòu)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2014(23):4-7.
[10]馬明曉,安軍社.一組高效LDPC碼空間通信方案設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2014(6):99-102.
[11]劉慶利,潘成勝,王國(guó)仁,等.AOS虛擬信道/幀分離估算的調(diào)度算法[J].系統(tǒng)仿真學(xué)報(bào),2013,25(1):87-93.
[12]宋琪,鄒業(yè)楠,李?yuàn)櫍?衛(wèi)星固態(tài)存儲(chǔ)器數(shù)據(jù)容錯(cuò)設(shè)計(jì)與機(jī)制[J].國(guó)防科技大學(xué)學(xué)報(bào),2016,38(1):101-106.
[13]Dutta C,Lalitkrushna T,Jeeja K H,et al.CCSDS complied data handling system for mini satellite[C]//International Conference on Communication and Industrial Application.IEEE,2011:1-4.
[14]Chen D,Wilcox E,Ladbury R,et al.Heavy Ion Irradiation Fluence Dependence for Single-Event UpsetsinaNANDFlashMemory[J].2016,PP(99):1.
[15]宋琪,李?yuàn)?,朱巖.星載固態(tài)存儲(chǔ)器數(shù)據(jù)管理結(jié)構(gòu)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2016(6):100-103,107.
[16]SamsungElectronics.K9F8G08U0M NAND Flash Memory datasheet(Revision1.1)[S].2012.
[17]胡雷鈞,陳乃剛,李健,等.FPGA異構(gòu)計(jì)算平臺(tái)及其應(yīng)用[J].電力信息與通信技術(shù),2016(7):6-11.
[18]楊延飛,雷倩倩,王春蘭.基于邊界掃描技術(shù)的FPGA延時(shí)故障檢測(cè)[J].紡織高?;A(chǔ)科學(xué)學(xué)報(bào),2017,30(3):396-401.