邵永杰,陳 穎,方 科
(中國電子科技集團(tuán)公司第十研究所,四川 成都 610036)
跟蹤與數(shù)據(jù)中繼衛(wèi)星系統(tǒng)是為中、低軌道的航天器與航天器之間、航天器與地面站之間提供數(shù)據(jù)中繼、連續(xù)跟蹤與軌道測控服務(wù)的系統(tǒng),簡稱中繼衛(wèi)星系統(tǒng)(Tracking and DataRelay Satellite System,TDRSS)。TDRSS以其能較大幅度地覆蓋和轉(zhuǎn)發(fā)地面站對中、低軌道航天器的跟蹤測控信號并對中、低軌道航天器發(fā)回地面的數(shù)據(jù)信息進(jìn)行實(shí)時、連續(xù)的中繼等優(yōu)勢,逐漸成為發(fā)展航天技術(shù)越來越重要的項(xiàng)目[1-3]。
在TDRSS的地面站上行調(diào)制系統(tǒng)中,調(diào)制器采用數(shù)據(jù)幀的形式,以固定幀周期調(diào)制數(shù)據(jù)幀。為了有效的利用帶寬,調(diào)制器按先到先調(diào)的順序調(diào)制產(chǎn)生自不同的地面分系統(tǒng)多種數(shù)據(jù)幀。這些數(shù)據(jù)幀包括語音、圖像、郵件、遙控等,具有相同的幀長和幀結(jié)構(gòu),由各個分系統(tǒng)按照自己的周期產(chǎn)生并通過網(wǎng)絡(luò)傳送到地面站調(diào)制器。TDRSS對地面站上行調(diào)制器的要求十分嚴(yán)謹(jǐn),包括發(fā)射信號的雜散、符號均衡、調(diào)制時延和各種類數(shù)據(jù)的同步比如音畫同步等。其中一個重要要求就是:分系統(tǒng)的數(shù)據(jù)幀必須均勻間隔的調(diào)制并發(fā)射至中繼衛(wèi)星,不能因?yàn)榈孛娴木W(wǎng)絡(luò)速率波動使得中繼星接收機(jī)的后端緩沖區(qū)上存在數(shù)據(jù)幀的堆積與讀空。這樣可以保證中繼衛(wèi)星接正確接收數(shù)據(jù)并降低了對中繼衛(wèi)星接收機(jī)后端緩沖區(qū)容量的要求[4]。
本文提出了一種基于時間輪詢的數(shù)據(jù)幀重排算法[5],在調(diào)制器的前端對來自網(wǎng)絡(luò)的各分系統(tǒng)數(shù)據(jù)幀進(jìn)行重新排序,完成了分系統(tǒng)數(shù)據(jù)幀的均衡調(diào)制發(fā)送,降低了對星載接收機(jī)端數(shù)據(jù)緩沖區(qū)的要求,并減小了數(shù)據(jù)傳輸時延。該算法已在工程中得到實(shí)際驗(yàn)證,具有靈活、安全、可靠的特點(diǎn),在衛(wèi)星通訊領(lǐng)域具有一定的參考價值。
TDRSS的調(diào)制接收系統(tǒng)如圖1所示。不同分系統(tǒng)的數(shù)據(jù)幀具有相同的幀長L。幀內(nèi)有固定字段用標(biāo)識區(qū)分?jǐn)?shù)據(jù)源。數(shù)據(jù)幀由分系統(tǒng)以固定的幀頻率=FA、FB、FC…產(chǎn)生,通過網(wǎng)絡(luò)傳輸進(jìn)入地面站調(diào)制器前端的先進(jìn)先出(First In First Out,F(xiàn)IFO)數(shù)據(jù)緩沖區(qū)。地面站調(diào)制器的調(diào)制幀頻率是Ft,每經(jīng)過Tt=1/Ft的時間調(diào)制器從FIFO數(shù)據(jù)緩沖區(qū)按照先進(jìn)先出的順序讀取數(shù)據(jù)幀,調(diào)制成中頻信號再經(jīng)信道發(fā)送至中繼衛(wèi)星。衛(wèi)星接收機(jī)解調(diào)數(shù)據(jù)幀后根據(jù)數(shù)據(jù)所屬的分系統(tǒng)將數(shù)據(jù)幀分發(fā)到不同的緩沖區(qū)A、B、C。緩沖區(qū)A、B、C的后續(xù)處理模塊分別以FA、FB、FC的幀頻對緩沖區(qū)A、B、C進(jìn)行數(shù)據(jù)讀取并處理。
圖1 TDRSS的調(diào)制接收系統(tǒng)
所有分系統(tǒng)的數(shù)據(jù)幀頻之和不大于調(diào)制器的調(diào)制幀頻,在這種條件下調(diào)制器可以將所有數(shù)據(jù)源的數(shù)據(jù)幀調(diào)制出去,而調(diào)制器前端FIFO緩沖區(qū)不產(chǎn)生數(shù)據(jù)堆積:FA+FB+FC≤Ft。
設(shè)定地面站調(diào)制器的調(diào)制速率為6 M幀/秒。各分系統(tǒng)的幀頻如表1所示。則分系統(tǒng)A數(shù)據(jù)幀的產(chǎn)生幀間隔是5個調(diào)制幀;分系統(tǒng)B數(shù)據(jù)幀的產(chǎn)生幀間隔是3個調(diào)制幀;分系統(tǒng)C數(shù)據(jù)幀的產(chǎn)生幀間隔是1個調(diào)制幀。
表1 各分系統(tǒng)的幀頻
分系統(tǒng)等間隔的產(chǎn)生數(shù)據(jù)幀后,數(shù)據(jù)幀通過網(wǎng)絡(luò)傳輸?shù)降孛嬲{(diào)制器前端緩沖區(qū)。在理想條件下,網(wǎng)絡(luò)傳輸不存在速率波動,則個分體統(tǒng)數(shù)據(jù)幀仍然等間隔地到達(dá)地面調(diào)制器前端緩沖區(qū)。
地面站調(diào)制器按照先進(jìn)先出的順序從FIFO數(shù)據(jù)緩沖區(qū)順序讀取數(shù)據(jù)幀并調(diào)制。星載接收機(jī)解調(diào)數(shù)據(jù)幀并分發(fā)給各個后端緩沖區(qū)A、B、C;在沒有網(wǎng)絡(luò)傳輸波動的情況下,接收機(jī)后端緩沖區(qū)的寫入幀間隔與各分系統(tǒng)的產(chǎn)生幀間隔相同。圖2表示的是各分系統(tǒng)產(chǎn)生數(shù)據(jù)幀的幀間隔數(shù);圖3表示的是在沒有網(wǎng)絡(luò)速率波動的情況下中繼星接收機(jī)后端緩沖區(qū)的數(shù)據(jù)幀寫入幀間隔。
圖2 各個分系統(tǒng)產(chǎn)生數(shù)據(jù)幀的幀間隔
圖3 中繼星接收機(jī)后端各緩沖區(qū)數(shù)據(jù)幀寫入幀間隔
在圖3中緩沖區(qū)A的寫入幀間隔固定為5,緩沖區(qū)B的寫入幀間隔固定為2,緩沖區(qū)C的寫入幀間隔為0、1、2幀相互交替,平均幀間隔為1。衛(wèi)星接收機(jī)解調(diào)數(shù)據(jù)幀后根據(jù)數(shù)據(jù)所屬的分系統(tǒng)將數(shù)據(jù)幀分發(fā)到不同的緩沖區(qū)A、B、C。緩沖區(qū)A、B、C的后續(xù)處理模塊分別以FA、FB、FC的幀頻對緩沖區(qū)A、B、C進(jìn)行數(shù)據(jù)讀取并處理。經(jīng)實(shí)驗(yàn)驗(yàn)證:在滿足表2中對各個緩沖區(qū)的容量要求時,各緩沖區(qū)不會發(fā)生溢出現(xiàn)象。
表2 接收機(jī)后端緩沖區(qū)不發(fā)生溢出的最小深度要求
在實(shí)際情況下,分系統(tǒng)與地面站調(diào)制器之間的網(wǎng)絡(luò)傳輸會受到路由器等外界因素影響而使得數(shù)據(jù)幀到達(dá)調(diào)制器發(fā)生快慢的波動。當(dāng)數(shù)據(jù)幀在網(wǎng)絡(luò)中被阻塞時,傳輸幀頻率低于數(shù)據(jù)源產(chǎn)生頻率;當(dāng)阻塞后網(wǎng)絡(luò)又恢復(fù)通暢時,傳輸幀頻率高于數(shù)據(jù)源產(chǎn)生頻率。這些波動的數(shù)據(jù)幀經(jīng)過調(diào)制解調(diào)系統(tǒng)后同樣會以波動的頻率進(jìn)入接收機(jī)后端數(shù)據(jù)緩沖區(qū),當(dāng)波動幅度很大時甚至可以造成緩沖區(qū)的溢出,產(chǎn)生丟失數(shù)據(jù)的現(xiàn)象。
本文采用傳輸時間正玄波疊加的方式模擬數(shù)據(jù)幀的網(wǎng)絡(luò)傳輸波動。數(shù)據(jù)幀C的產(chǎn)生頻率是每秒3K幀,幀周期為0.333 ms每幀。在網(wǎng)絡(luò)傳輸波動的影響下到達(dá)調(diào)制器前端的幀間隔是最高0.6 ms、最低0.7 ms、均值為0.333 ms。圖4所示是數(shù)據(jù)幀C的網(wǎng)絡(luò)傳輸波動間隔。
圖4 模擬數(shù)據(jù)幀C的網(wǎng)絡(luò)傳輸波動
假設(shè)分系統(tǒng)A、B網(wǎng)絡(luò)傳輸沒有波動,分系統(tǒng)C的網(wǎng)絡(luò)波動如圖4所示。則中繼星接收機(jī)后端緩沖區(qū)的數(shù)據(jù)幀寫入幀間隔如圖5所示。
圖5 中繼星接收機(jī)后端各緩沖區(qū)的數(shù)據(jù)幀寫入幀間隔
由圖5可以看出,當(dāng)分系統(tǒng)C的網(wǎng)絡(luò)傳輸出現(xiàn)波動時,中繼星接收機(jī)的后端緩沖區(qū)A、B、C的數(shù)據(jù)幀寫入間隔均受到了影響:數(shù)據(jù)幀間密集和稀疏的區(qū)域。當(dāng)數(shù)據(jù)幀在短時間內(nèi)大量寫入接收機(jī)后端緩沖區(qū)時,會造成緩沖區(qū)的溢出。經(jīng)實(shí)驗(yàn)驗(yàn)證:在滿足表3中對各個緩沖區(qū)容量要求時,本實(shí)驗(yàn)中各緩沖區(qū)不會發(fā)生溢出現(xiàn)象。
表3 接收機(jī)后端緩沖區(qū)不發(fā)生溢出的最小深度要求
通過以上分析可以看出:多數(shù)據(jù)源的調(diào)制信息在數(shù)據(jù)源傳輸網(wǎng)絡(luò)發(fā)生抖動的時候數(shù)據(jù)幀調(diào)制順序混亂。最終導(dǎo)致各個幀在接收機(jī)端的解調(diào)數(shù)據(jù)不均勻,出現(xiàn)同一類型數(shù)據(jù)幀溢出和斷續(xù)的情況。
為了解決多多分系統(tǒng)數(shù)據(jù)網(wǎng)絡(luò)傳輸波動造成的中繼星數(shù)據(jù)幀的丟失與斷檔的問題,本文提出了基于時間輪詢的數(shù)據(jù)幀數(shù)據(jù)重排算法。改進(jìn)后的地面站調(diào)制系統(tǒng)如圖6所示:將一個地面站調(diào)制器前端的FIFO數(shù)據(jù)緩沖區(qū)改為多個FIFO數(shù)據(jù)緩沖區(qū),并在緩沖區(qū)與調(diào)制器之間加入數(shù)據(jù)幀重拍算法。數(shù)據(jù)幀重拍算法由DSP或者其他處理器完成。當(dāng)各個分系統(tǒng)的數(shù)據(jù)經(jīng)過網(wǎng)絡(luò)到達(dá)FIFO緩沖區(qū)后由處理器以時間輪詢的方式對數(shù)據(jù)進(jìn)行重新編排,送到調(diào)制器進(jìn)行調(diào)制,發(fā)送給中繼衛(wèi)星。
圖6 改進(jìn)后的地面站調(diào)制系統(tǒng)
以時間輪詢的數(shù)據(jù)幀編排算法如圖7所示(以三個分系統(tǒng)為例)。
在時間輪詢數(shù)據(jù)幀編排算法中,為各分系統(tǒng)分別設(shè)定一個全局變量TimerA、TimerB、TimerC,作為每一路分系統(tǒng)數(shù)據(jù)幀的調(diào)制間隔計(jì)時器。TA=1/FA是分系統(tǒng)A的數(shù)據(jù)幀產(chǎn)生時間間隔,TB=1/FB是分系統(tǒng)B的數(shù)據(jù)幀產(chǎn)生時間間隔,TC=1/FC是分系統(tǒng)C的數(shù)據(jù)幀產(chǎn)生時間間隔。Tt=1/Ft是地面站調(diào)制器調(diào)制一幀數(shù)據(jù)需要的時間。
時間輪詢數(shù)據(jù)幀編排算法實(shí)現(xiàn)的目標(biāo)是:只有當(dāng)數(shù)據(jù)幀調(diào)制間隔大于或等于數(shù)據(jù)幀的產(chǎn)生周期時,該路數(shù)據(jù)幀才會被數(shù)據(jù)幀編排處理器送到調(diào)制器進(jìn)項(xiàng)調(diào)制
時間輪詢數(shù)據(jù)幀編排算法以調(diào)制周期Tt為運(yùn)行周期,重排算法處理器對全局變量TimerA、TimerB、TimerC和各分系統(tǒng)FIFO緩沖器進(jìn)行檢查與判斷。時間輪詢數(shù)據(jù)幀編排算法的流程描述如下:
第一步:數(shù)傳任務(wù)開始,將TimerA、TimerB、TimerC復(fù)位清零。
第二步:以數(shù)據(jù)幀調(diào)制周期Tt為調(diào)用周期,調(diào)用以下處理函數(shù)語句:
如果TimerA≥TA,并且FIFO A中存在分系統(tǒng)A的數(shù)據(jù)幀則:
(1)取一幀F(xiàn)IFO A中的數(shù)據(jù)幀送至調(diào)制器
(2)TimerA=TimerA+Tt-TA;
(3)TimerB=TimerB+Tt;
圖7 基于時間輪詢的數(shù)據(jù)幀編排算法
(4)TimerC=TimerC+Tt
(5)函數(shù)結(jié)束并返回到第二步(return);
否則:如果TimerB≥Tb,并且FIFO B中存在分系統(tǒng)B數(shù)據(jù)幀則:
(1)取一幀F(xiàn)IFO B中的數(shù)據(jù)幀送至調(diào)制器
(2)TimerA=TimerA+Tt;
(3)TimerB=TimerB+Tt-TB;
(4)TimerC=TimerC+Tt;
(5)函數(shù)結(jié)束并返回到第二步(return);否則:如果TimerC≥TC,并且FIFO C中存在分系統(tǒng)C的數(shù)據(jù)幀則:
(1)取一幀F(xiàn)IFO C中的數(shù)據(jù)幀送至調(diào)制器;
(2)TimerA=TimerA+Tt;
(3)TimerB=TimerB+Tt;
(4)TimerC=TimerC+Tt-TC;
(5)函數(shù)結(jié)束并返回到第二步(return);
否則:
(1)TimerA=TimerA+Tt;
(2)TimerB=TimerB+Tt;
(3)TimerC=TimerC+Tt;
(4)函數(shù)結(jié)束并返回到第二步(return);
第三步:數(shù)傳任務(wù)結(jié)束。
采用第一節(jié)中的模擬網(wǎng)絡(luò)波動參數(shù):假設(shè)分系統(tǒng)A、B網(wǎng)絡(luò)傳輸沒有波動,分系統(tǒng)C的網(wǎng)絡(luò)波動如圖4所示。則經(jīng)過時間輪詢數(shù)據(jù)幀編排算法后中繼星接收機(jī)后端緩沖區(qū)的數(shù)據(jù)幀寫入幀間隔如圖8所示。
圖8 中繼星接收機(jī)后端各緩沖區(qū)的數(shù)據(jù)幀寫入幀間隔
由圖8可以看出,當(dāng)分系統(tǒng)C的網(wǎng)絡(luò)傳輸出現(xiàn)波動時,經(jīng)過時間輪詢數(shù)據(jù)幀編排算法處理在調(diào)制后,中繼星接收機(jī)的后端緩沖區(qū)A、B、C的數(shù)據(jù)幀寫入間隔均勻:各緩沖區(qū)數(shù)據(jù)幀間隔沒有發(fā)生密集和稀疏的變化。經(jīng)驗(yàn)證:在滿足表4中對各個緩沖區(qū)容量要求時,本實(shí)驗(yàn)中各緩沖區(qū)不會發(fā)生溢出現(xiàn)象。
表4 接收機(jī)后端緩沖區(qū)不發(fā)生溢出的最小深度要求
經(jīng)過本分以上的分析:時間輪詢數(shù)據(jù)幀編排算可以在地面站網(wǎng)發(fā)生速率絡(luò)波動的情況下保持各分系統(tǒng)調(diào)制幀可以在不增加接收機(jī)后端緩沖區(qū)容量的條件下,平滑和抵消地面站網(wǎng)絡(luò)抖動帶來的影響。當(dāng)數(shù)據(jù)傳輸業(yè)務(wù)量另增加時,因?yàn)樾l(wèi)星在軌道上無法更新設(shè)備,增加接收機(jī)的后端緩沖區(qū)容量,而造成數(shù)據(jù)傳輸受限,或者數(shù)據(jù)丟失。
本文提出的基于時間輪詢的數(shù)據(jù)幀重排算法,在調(diào)制器的前端對來自網(wǎng)絡(luò)的各分系統(tǒng)數(shù)據(jù)幀進(jìn)行重新排序,完成了分系統(tǒng)數(shù)據(jù)幀的均衡調(diào)制發(fā)送,降低了對星載接收機(jī)端數(shù)據(jù)緩沖區(qū)的要求,并減小了數(shù)據(jù)傳輸時延。該算法已在工程中得到實(shí)際驗(yàn)證,具有靈活、安全、可靠的特點(diǎn),在衛(wèi)星通訊領(lǐng)域具有一定的參考價值。