王翠蓮,李 寅,李 珂,沈小虎
(1.北京空間飛行器總體設(shè)計(jì)部,北京 100094;2.航天東方紅衛(wèi)星有限公司,北京 100094)
嫦娥四號(hào)探測(cè)器搭載的降落相機(jī)安裝在著陸器底部,與月表垂直,用于實(shí)時(shí)獲取探測(cè)器動(dòng)力下降段月球表面的圖像數(shù)據(jù),圖像幀頻不小于10幀/s,峰值圖像傳輸速率高于10 Mbps[1]。為了實(shí)現(xiàn)探測(cè)器著陸過(guò)程的可視化,需要將降落相機(jī)最新生成的圖像盡快下傳。深空通信具有通信距離遠(yuǎn)、信號(hào)衰減嚴(yán)重的特點(diǎn),同時(shí)深空航天器的天線增益和發(fā)射功率有限,到達(dá)地面站的信號(hào)十分微弱[2]。因此,為保證遠(yuǎn)距離數(shù)據(jù)傳輸?shù)目煽啃?,深空通信速率一般不?huì)太高[3]。目前深空數(shù)傳對(duì)地通信速率一般在2 Mbps以下。在嫦娥四號(hào)任務(wù)中,探測(cè)器產(chǎn)生的遙測(cè)數(shù)據(jù)、探測(cè)數(shù)據(jù)和圖像數(shù)據(jù)通過(guò)統(tǒng)一的合路調(diào)度及編碼后由中繼星轉(zhuǎn)發(fā)至地面。圖像數(shù)據(jù)可用的通信速率不超過(guò)500 kbps。在這種情況下,圖像的生成速率和下行速率之間存在矛盾。因此,需設(shè)計(jì)一種可視化的圖像傳輸方案。同時(shí),深空探測(cè)器是資源受限的系統(tǒng),應(yīng)盡可能降低方案工程化的復(fù)雜度。
嫦娥四號(hào)探測(cè)器數(shù)據(jù)管理分系統(tǒng)中設(shè)計(jì)復(fù)接存儲(chǔ)器,負(fù)責(zé)對(duì)探測(cè)數(shù)據(jù)、圖像數(shù)據(jù)和探測(cè)器遙測(cè)數(shù)據(jù)進(jìn)行合路調(diào)度、存儲(chǔ)和下傳。針對(duì)不同應(yīng)用場(chǎng)景下對(duì)數(shù)據(jù)傳輸?shù)男枨?,?fù)接存儲(chǔ)器可以實(shí)現(xiàn)靈活的數(shù)據(jù)流管理。在動(dòng)力下降段,圖像數(shù)據(jù)的存儲(chǔ)和下傳需求為:(1)所有載荷(含降落相機(jī))在動(dòng)力下降段產(chǎn)生的數(shù)據(jù)都需要保存在大容量存儲(chǔ)器中。當(dāng)探測(cè)器到達(dá)月面且對(duì)地通信信道可用時(shí),可將存儲(chǔ)數(shù)據(jù)選擇性回放并下傳;(2)在探測(cè)器著陸過(guò)程中,實(shí)時(shí)下傳降落相機(jī)生成的最新圖像。
文獻(xiàn)[4-7]提出了一種星載數(shù)據(jù)復(fù)接存儲(chǔ)器設(shè)計(jì)方案,針對(duì)多類載荷數(shù)據(jù)的存儲(chǔ)和下傳需求,實(shí)現(xiàn)靈活的數(shù)據(jù)流向管理。載荷數(shù)據(jù)可以先存儲(chǔ)再回放,也可以不經(jīng)存儲(chǔ)直接下行。載荷數(shù)據(jù)同時(shí)輸入至存儲(chǔ)通道和下傳通道。在存儲(chǔ)通道的數(shù)據(jù)流設(shè)計(jì)中,需要保證存儲(chǔ)芯片編程速率高于載荷數(shù)據(jù)的峰值輸入速率。在下傳通道的數(shù)據(jù)流設(shè)計(jì)中,為保證下傳圖像的完整性,需要對(duì)整幅圖像進(jìn)行緩存,之后判斷下行信道是否空閑,當(dāng)信道空閑時(shí)從緩存中讀取數(shù)據(jù)下傳。該方案的優(yōu)點(diǎn)是:實(shí)現(xiàn)簡(jiǎn)單,可以與復(fù)接存儲(chǔ)器整體的數(shù)據(jù)流兼容。缺點(diǎn)是:(1)由于需要緩存一幅完整的圖像,當(dāng)圖像較大時(shí),需要的硬件資源開銷隨之增長(zhǎng);(2)在一幅圖像緩存滿后,才開始讀取下傳,實(shí)時(shí)性較差。
除此之外,目前星載大容量存儲(chǔ)器廣泛采用“記錄-回放”的設(shè)計(jì)模式[8-11],將載荷數(shù)據(jù)輸入存儲(chǔ)通道,采用邊記邊放的方式存儲(chǔ)并下傳?;胤拍J娇蛇x擇按時(shí)間回放或按地址回放。上述兩種回放方式需要地面提前獲得載荷數(shù)據(jù)的存儲(chǔ)時(shí)間或存儲(chǔ)地址,并將包含回放時(shí)間或回放地址在內(nèi)的回放指令注入探測(cè)器。此方案的缺點(diǎn)在于:(1)應(yīng)用較復(fù)雜,不利于實(shí)現(xiàn)自主化的存儲(chǔ)及回放管理;(2)僅在圖像輸入速率不變的前提下才能準(zhǔn)確估計(jì)最新圖像的存儲(chǔ)時(shí)間或存儲(chǔ)地址,無(wú)法實(shí)現(xiàn)速率自適應(yīng)的可視化傳輸。
因此,本文在傳統(tǒng)星載大容量存儲(chǔ)器的設(shè)計(jì)基礎(chǔ)上,提出一種特殊的回放模式,在該模式下圖像在存儲(chǔ)的同時(shí)打上特殊標(biāo)記,在回放時(shí)采用抽幀回放[12]的方式將最新的有特殊標(biāo)記的圖像讀取并下傳。該方案與探測(cè)器復(fù)接存儲(chǔ)器設(shè)計(jì)狀態(tài)兼容,需要增加的硬件開銷僅為一個(gè)附加信息寄存器,以及一組最新圖像存儲(chǔ)地址寄存器。本文重點(diǎn)對(duì)該方案的整體設(shè)計(jì)和關(guān)鍵技術(shù)進(jìn)行討論。
降落相機(jī)通過(guò)LVDS(Low-voltage differential signaling)接口與復(fù)接存儲(chǔ)器相連,數(shù)據(jù)內(nèi)容包括高壓縮比圖像數(shù)據(jù)和低壓縮比圖像數(shù)據(jù)。兩種數(shù)據(jù)以幅為單位間隔出現(xiàn),傳輸比例可變。由于高壓縮比圖像壓縮率高,數(shù)據(jù)幀長(zhǎng)較短,為了提高信道利用率,應(yīng)盡可能多下傳高壓縮比圖像。兩種圖像格式如圖1所示。
圖1 降落相機(jī)圖像格式(上:低壓縮比;下:高壓縮比)
為實(shí)現(xiàn)降落相機(jī)圖像的可視化傳輸,需要在存儲(chǔ)所有圖像數(shù)據(jù)的同時(shí),將高壓縮比圖像實(shí)時(shí)下傳。考慮探測(cè)器軟硬件資源的設(shè)計(jì)開銷,對(duì)降落相機(jī)圖像的處理應(yīng)與復(fù)接存儲(chǔ)器整體的設(shè)計(jì)兼容。圖2為復(fù)接存儲(chǔ)器的設(shè)計(jì)框圖,在此基礎(chǔ)上實(shí)現(xiàn)降落相機(jī)圖像可視化傳輸?shù)姆桨妇唧w如下:
圖2 復(fù)接存儲(chǔ)器設(shè)計(jì)框圖
(1)降落相機(jī)發(fā)送至復(fù)接存儲(chǔ)器的圖像數(shù)據(jù)首先經(jīng)過(guò)圖像格式識(shí)別及組幀模塊,將高壓縮比圖像和低壓縮比圖像分離、切分并分配虛擬信道標(biāo)識(shí)。
(2)每一幅高壓縮比圖像為16394 B,按空間數(shù)據(jù)系統(tǒng)咨詢委員會(huì)(Consultative committee for space data system,CCSDS)組織定義的高級(jí)在軌系統(tǒng)(Advanced orbiting system,AOS)幀格式對(duì)圖像數(shù)據(jù)進(jìn)行虛擬信道數(shù)據(jù)單元(Virtual channel data unit,VCDU)組幀,可組成19幀,包括1幀頭VCDU,1幀尾VCDU和17幀中間VCDU。
(3)存儲(chǔ)合路模塊將高壓縮比圖像VCDU與其他載荷產(chǎn)生的VCDU進(jìn)行合路調(diào)度,競(jìng)爭(zhēng)存儲(chǔ)信道后存入存儲(chǔ)載體。
(4)存儲(chǔ)載體中的回放控制模塊在動(dòng)力下降段采用一種抽幀回放方法,將高壓縮比圖像VCDU幀從存儲(chǔ)載體中回放出來(lái),具體工作流程為:①存儲(chǔ)載體加載最新圖像的存儲(chǔ)地址,從此地址開始順序回放;②當(dāng)回放至一幅高壓縮比圖像的末尾時(shí),完成一幅圖像的抽幀回放;③重復(fù)以上步驟,抽取回放下一幅圖像。
(5)經(jīng)篩選、過(guò)濾后的高壓縮比圖像VCDU幀與其他實(shí)時(shí)下傳幀經(jīng)過(guò)下行合路及編碼之后發(fā)送至數(shù)傳應(yīng)答機(jī)。
由以上處理流程可知,該方案中涉及的關(guān)鍵技術(shù)包括抽幀回放算法、幀格式識(shí)別方法、合路調(diào)度算法等。
抽幀回放算法主要在存儲(chǔ)控制和回放控制兩個(gè)模塊內(nèi)實(shí)現(xiàn),圖3為抽幀回放算法原理框圖。為了準(zhǔn)確識(shí)別一幅完整的高壓縮比圖像,經(jīng)過(guò)AOS組幀后數(shù)據(jù)幀需要設(shè)計(jì)附加信息區(qū)分高壓縮比圖像的VCDU頭幀、VCDU尾幀和VCDU中間幀,在存儲(chǔ)時(shí)需要把附加信息同時(shí)保存。
圖3 抽幀回放算法原理框圖
復(fù)接存儲(chǔ)器選用NandFlash作為存儲(chǔ)載體,每頁(yè)大小為2 KByte,可存儲(chǔ)兩個(gè)VCDU幀。在按頁(yè)存儲(chǔ)時(shí),除了保存VCDU幀的數(shù)據(jù)內(nèi)容外,還需要保存附加信息和編碼校驗(yàn)位。由于NandFlash采用合路調(diào)度機(jī)制訪問(wèn),所以保存在同一頁(yè)數(shù)據(jù)可能包括多種載荷產(chǎn)生的不同VCDU幀。附加信息需要對(duì)NandFlash頁(yè)內(nèi)存儲(chǔ)的數(shù)據(jù)內(nèi)容予以區(qū)分。附加信息格式設(shè)計(jì)如表1所示。
表1 附加信息格式
同時(shí),存儲(chǔ)控制模塊需要將高壓縮比圖像頭幀存儲(chǔ)地址和尾幀存儲(chǔ)地址實(shí)時(shí)傳遞到回放控制模塊,保證回放控制模塊在加載回放地址時(shí)能夠立即獲得最新一幅圖像的存儲(chǔ)地址。
在動(dòng)力下降段需要將回放控制模塊設(shè)置為抽幀回放模式,該模式區(qū)別于傳統(tǒng)的順序回放或選址回放,是一種可以自主運(yùn)行的回放模式,通過(guò)回放地址加載、回放開始、回放停止的自主管理,實(shí)現(xiàn)高壓縮比圖像幀的抽取下傳。當(dāng)下行數(shù)傳信道可用時(shí),回放控制模塊加載最新的圖像頭幀存儲(chǔ)地址并從該地址開始順序回放。在回放過(guò)程中,首先讀取該頁(yè)NandFlash內(nèi)存儲(chǔ)的附加信息,根據(jù)附加信息的內(nèi)容過(guò)濾掉非高壓縮比圖像的VCDU幀,僅將高壓縮比圖像VCDU幀傳輸至下行合路模塊。當(dāng)回放地址等于最新的圖像尾幀存儲(chǔ)地址時(shí),停止回放。之后重新加載圖像頭幀存儲(chǔ)地址,若與上一次的頭幀地址一致,認(rèn)為當(dāng)前沒(méi)有新的圖像存儲(chǔ)?;胤拍K在停止?fàn)顟B(tài)下繼續(xù)等待,當(dāng)新加載的頭幀地址發(fā)生變化時(shí),啟動(dòng)新一輪的抽取回放流程。
在圖像格式識(shí)別及組幀模塊對(duì)降落相機(jī)的兩種圖像數(shù)據(jù)加以區(qū)分,處理流程如圖4所示。(1)LVDS信號(hào)經(jīng)過(guò)串并轉(zhuǎn)換將單比特信號(hào)轉(zhuǎn)為字節(jié)信號(hào);(2)對(duì)字節(jié)信號(hào)進(jìn)行滑動(dòng)匹配;(3)當(dāng)幀頭匹配后,啟動(dòng)對(duì)后續(xù)數(shù)據(jù)塊長(zhǎng)度和個(gè)數(shù)的統(tǒng)計(jì);(4)當(dāng)數(shù)據(jù)塊長(zhǎng)度和個(gè)數(shù)與圖1所示的幀結(jié)構(gòu)一致時(shí),將數(shù)據(jù)進(jìn)行緩存和組幀,否則重新檢測(cè)幀頭。兩個(gè)接收模塊采用完全相同的處理結(jié)構(gòu),只是數(shù)據(jù)塊長(zhǎng)度、數(shù)據(jù)塊個(gè)數(shù)兩個(gè)參數(shù)設(shè)計(jì)不同。在進(jìn)行FPGA工程化時(shí),可通過(guò)例化兩個(gè)相同模塊,設(shè)置不同參數(shù)的方法實(shí)現(xiàn)。
圖4 圖像格式識(shí)別和組幀模塊處理流程
本方案中涉及兩個(gè)部分的合路處理:(1)所有載荷(含降落相機(jī))數(shù)據(jù)在存儲(chǔ)前需要經(jīng)過(guò)統(tǒng)一的合路調(diào)度;(2)遙測(cè)數(shù)據(jù)、回放數(shù)據(jù)和其他實(shí)時(shí)數(shù)據(jù)在下行前的合路調(diào)度。在多個(gè)虛擬信道合路設(shè)計(jì)時(shí),需采用合理的調(diào)度算法和優(yōu)先級(jí)控制策略,以保證合路前后的數(shù)據(jù)速率匹配,提高傳輸效率。CCSDS推薦的合路調(diào)度算法包括[5]固定優(yōu)先級(jí)調(diào)度算法、輪詢優(yōu)先級(jí)調(diào)度算法、剩余量?jī)?yōu)先級(jí)調(diào)度算法等,上述算法的優(yōu)缺點(diǎn)在不同的應(yīng)用場(chǎng)景和調(diào)度需求下有所不同。本文根據(jù)探測(cè)器在動(dòng)力下降段、可見弧段和不可見弧段的存儲(chǔ)和下傳需求,設(shè)計(jì)了一種基于工作模式的優(yōu)先級(jí)調(diào)度算法,在不同模式下采用不同的調(diào)度機(jī)制,將采用固定優(yōu)先級(jí)和輪詢優(yōu)先級(jí)相結(jié)合,具體設(shè)計(jì)如表2所示。
表2 不同工作模式的優(yōu)先級(jí)調(diào)度策略
本方案中采用的抽幀回放算法,在收到一幅完整的高壓縮比圖像數(shù)據(jù)后更新圖像頭幀及尾幀存儲(chǔ)地址。考慮最惡劣的情況,最新一幅高壓縮比圖像接收完畢時(shí)前一幅的抽幀回放剛剛開始,此時(shí)的處理時(shí)延為圖像接收時(shí)間與兩幅圖像的輸入時(shí)間間隔之和。降落相機(jī)LVDS接口速率為13.33 Mbps,一幅高壓縮比圖像接收時(shí)間為16394×8 bit/13.33 Mbps=9.84 ms。降落相機(jī)成像頻率為10幅/s,假設(shè)兩幅高壓縮比圖像之間的間隔為64幅,時(shí)間間隔約為6.4 s。當(dāng)下行速率為50 kbps時(shí),一幅圖像的19幀VCDU下傳時(shí)間為19×2048×8 bit/50 kbps=6.226 s。
由圖5可以看出,最惡劣情況下第N幅圖像處理時(shí)延為6.4 s+9.84 ms=6.40984 s。第N幅圖像下傳完畢后,最新圖像的存儲(chǔ)地址為第N+2幅圖像的存儲(chǔ)地址,地址更新后回放下傳第N+2幅圖像的數(shù)據(jù)內(nèi)容,處理時(shí)延自動(dòng)調(diào)整為9.84 ms。后續(xù)圖像處理延時(shí)均保持在9.84 ms,滿足可視化傳輸?shù)男枨蟆?/p>
圖5 圖像處理時(shí)延示意圖
圖像下傳的完整性是指完整下傳1幅高壓縮比圖像的19幀VCDU,傳輸過(guò)程不受其他事件的影響。在抽幀回放模式下,回放控制狀態(tài)機(jī)的四個(gè)狀態(tài)自主運(yùn)行,最新圖像的頭幀存儲(chǔ)地址和尾幀存儲(chǔ)地址兩個(gè)寄存器僅在停止回放狀態(tài)下同時(shí)刷新,在其他狀態(tài)下不刷新。這種處理機(jī)制可以避免頭幀存儲(chǔ)地址和尾幀存儲(chǔ)地址更新不同步造成下傳圖像不完整。
本方案的速率自適應(yīng)性包括兩個(gè)方面,(1)高壓縮比圖像數(shù)據(jù)的輸入速率自適應(yīng),(2)數(shù)傳下行速率自適應(yīng)。輸入速率影響NandFlash的存儲(chǔ)效率,下行速率影響NandFlash的讀取效率,兩種速率通過(guò)NandFlash芯片實(shí)現(xiàn)了解耦合。當(dāng)高壓縮比圖像數(shù)據(jù)輸入速率超過(guò)了數(shù)傳下行速率時(shí),最新一幅圖像頭幀及尾幀存儲(chǔ)地址會(huì)覆蓋前一幅圖像的頭幀及尾幀存儲(chǔ)地址,以保證下傳數(shù)據(jù)內(nèi)容為最新生成。通過(guò)這種地址實(shí)時(shí)覆蓋的方式,該方案可不受圖像數(shù)據(jù)的輸入速率和數(shù)傳下行速率的影響,實(shí)際下傳的圖像為自適應(yīng)抽取后的整幅圖像。
當(dāng)下行速率為50 kbps,280 kbps,下傳一幅高壓縮比圖像需要的時(shí)間分別為6.226 s和1.118 s。高壓縮比圖像和低壓縮比圖像傳輸比例分別為1∶8,1∶16,1∶32,1∶64時(shí),地面接收的圖像序號(hào)如下表所示。幾種比例下,高壓縮比圖像的輸入頻率分別為0.8 s/幅,1.6 s/幅,3.2 s/幅和6.4 s/幅。由表3可以看出,當(dāng)數(shù)傳下行速率大于圖像的輸入速率時(shí),可以無(wú)間隔的下傳所有的高壓縮比圖像;當(dāng)數(shù)傳下行速率小于圖像的輸入速率時(shí),下傳的圖像序號(hào)不連續(xù),兩幅圖像之間序號(hào)有一定間隔,下傳的圖像為最新產(chǎn)生的數(shù)據(jù)內(nèi)容。同時(shí),由表3可知,在下傳速率固定時(shí)(如50 kbps),存在一個(gè)最優(yōu)的圖像輸入比例,可以無(wú)間隔的下傳所有高壓縮比圖像。在此情況下增大高壓縮比圖像的傳輸比例不能將所有的高壓縮比圖像完全下傳。因此在設(shè)計(jì)時(shí)應(yīng)根據(jù)下傳速率靈活設(shè)置圖像的輸入比例。
表3 不同輸入比例及下傳速率下高壓縮比圖像序號(hào)
為進(jìn)一步評(píng)估方案的性能,將本文方案與前言所述兩種方案進(jìn)行比較。方案1將降落相機(jī)圖像數(shù)據(jù)同時(shí)輸入至存儲(chǔ)通道和下傳通道,其中高壓縮比圖像緩存完畢后直接通過(guò)下行合路及編碼模塊輸出。方案2將降落相機(jī)圖像數(shù)據(jù)輸入存儲(chǔ)通道,采用邊記邊放的方式存儲(chǔ)并下傳。
表4為三種方案的資源占用情況、性能以及在軌指令干預(yù)情況比較。由表4可知,方案1實(shí)現(xiàn)結(jié)構(gòu)簡(jiǎn)單,但占用的Block RAMs資源隨著圖像的增大而增大,不適應(yīng)于探測(cè)器等資源受限的系統(tǒng)。方案2與傳統(tǒng)的星載大容量存儲(chǔ)器設(shè)計(jì)狀態(tài)一致,但是在軌需要發(fā)送指令進(jìn)行干預(yù),且圖像下傳的實(shí)時(shí)性和速率自適應(yīng)性較差,不能滿足圖像可視化傳輸?shù)男枨?。本文提出的方案在增加少量Slice資源的情況下,實(shí)現(xiàn)了圖像的可視化傳輸,且圖像下傳的實(shí)時(shí)性、完整性、速率自適應(yīng)性都明顯優(yōu)于另外兩種方案。
表4 三種方案綜合比較
目前該方案已經(jīng)在FPGA(Field programmable gate array)上實(shí)現(xiàn),芯片型號(hào)為Xilinx公司宇航級(jí)芯片XQR2V3000。采用該方案設(shè)計(jì)的復(fù)接存儲(chǔ)器作為嫦娥四號(hào)數(shù)據(jù)管理分系統(tǒng)的重要模塊經(jīng)過(guò)了在軌驗(yàn)證。2019年1月3日上午,嫦娥四號(hào)探測(cè)器開始著陸,復(fù)接存儲(chǔ)器設(shè)置為抽幀回放模式,下行速率設(shè)置為50 kbps。降落相機(jī)開機(jī)后,高壓縮比圖像開始自動(dòng)下傳,約6.4 s更新1次,圓滿實(shí)現(xiàn)了著陸過(guò)程的可視化。圖6為動(dòng)力下降段下傳的實(shí)拍高壓縮比圖像。嫦娥四號(hào)在軌運(yùn)行狀態(tài)表明,在數(shù)傳通信速率有限的情況下,實(shí)現(xiàn)了動(dòng)力下降段圖像可視化的傳輸,設(shè)備工作穩(wěn)定正常。
圖6 嫦娥四號(hào)探測(cè)器動(dòng)力下降段下傳圖像
本文設(shè)計(jì)實(shí)現(xiàn)了一種動(dòng)力下降段速率自適應(yīng)的可視化圖像傳輸方案,該方案通過(guò)設(shè)置抽幀回放模式識(shí)別最新的圖像幀進(jìn)行抽取回放并下傳,在數(shù)傳通信速率受限的情況下實(shí)現(xiàn)了降落相機(jī)圖像的存儲(chǔ)管理和可視化下傳,具有實(shí)時(shí)性高、速率自適應(yīng)、圖像下傳完整等特點(diǎn)。
本文提出的圖像可視化傳輸方案中要求降落相機(jī)低壓縮比圖像和高壓縮比圖像在數(shù)據(jù)能夠格式上有所區(qū)分,后續(xù)研究重點(diǎn)是設(shè)計(jì)通用的圖像可視化傳輸方案,不限制載荷圖像的數(shù)據(jù)格式。同時(shí),進(jìn)一步提高方案的健壯性和可擴(kuò)展性,為航天器星載數(shù)據(jù)管理分系統(tǒng)的設(shè)計(jì)提供參考。