鮑大志,邢斯瑞,刁國(guó)影,陳 悅
(長(zhǎng)光衛(wèi)星技術(shù)有限公司,吉林 長(zhǎng)春 130102)
在衛(wèi)星通信系統(tǒng)研發(fā)和測(cè)試階段,需要分析衛(wèi)星在軌的實(shí)際通信性能. 對(duì)于衛(wèi)星通信來(lái)說(shuō),實(shí)際環(huán)境的信道測(cè)試難以實(shí)現(xiàn),需要借助信道模擬系統(tǒng)進(jìn)行測(cè)試. 隨著軟件無(wú)線電技術(shù)的成熟,信道模擬器普遍采用軟件無(wú)線電技術(shù)實(shí)現(xiàn)[1,2].
衛(wèi)星信道受自由空間損耗、 時(shí)延、 多普勒頻移、 陰影、 多徑等多種因素影響. 其中針對(duì)陰影,多徑等因素目前已研發(fā)出多種描述模型. 但針對(duì)目前最為熱點(diǎn)的低軌通信衛(wèi)星,由于通信仰角相對(duì)較高,相比于陰影、 多徑等因素,高動(dòng)態(tài)的時(shí)延和多普勒對(duì)信道特性具有更為普遍的影響,但目前針對(duì)時(shí)延多普勒特性高動(dòng)態(tài)實(shí)時(shí)模擬的相關(guān)研究較少[3-5]. 由于衛(wèi)星高速運(yùn)動(dòng)且通信距離遠(yuǎn)的特點(diǎn),使得衛(wèi)星信道時(shí)延與多普勒呈現(xiàn)高動(dòng)態(tài)范圍,且快速變化,這種影響在低軌衛(wèi)星上尤其明顯. 高動(dòng)態(tài)特性對(duì)衛(wèi)星通信性能和導(dǎo)航測(cè)距等有較大影響[6,7]. 信道模擬系統(tǒng)可以通過(guò)先進(jìn)先出(FIFO)的存儲(chǔ)器模擬固定的通信時(shí)延,需要的存儲(chǔ)器規(guī)模與采樣率和最大時(shí)延量成正比. 針對(duì)信號(hào)發(fā)生器可利用數(shù)控振蕩器(NCO)調(diào)整信號(hào)發(fā)送速率,模擬高動(dòng)態(tài)時(shí)延變化; 通過(guò)載波NCO完成多普勒頻率控制[8]. 而對(duì)于信道模擬器,由于信號(hào)形式未知,上述時(shí)延控制方法無(wú)法使用,需要對(duì)時(shí)延直接控制. 本文結(jié)合存儲(chǔ)器控制,可變分?jǐn)?shù)時(shí)延濾波器,數(shù)字NCO等技術(shù),利用軟件無(wú)線電實(shí)現(xiàn)了衛(wèi)星信道靜態(tài)時(shí)延模擬、 高動(dòng)態(tài)時(shí)延和多普勒的聯(lián)合實(shí)時(shí)模擬,并對(duì)系統(tǒng)功能進(jìn)行了驗(yàn)證.
提出的衛(wèi)星信道高動(dòng)態(tài)時(shí)延與多普勒模擬系統(tǒng)模型如圖1所示. 射頻輸入信號(hào)經(jīng)過(guò)下變頻和模數(shù)(AD)變換模塊之后,輸出數(shù)字基帶信號(hào),在FPGA當(dāng)中完成時(shí)延和多普勒特性的實(shí)時(shí)生成,再經(jīng)過(guò)數(shù)模(DA)變換和上變頻模塊變換,實(shí)現(xiàn)射頻信號(hào)輸出.
圖1 系統(tǒng)架構(gòu)Fig.1 System architecture
FPGA中集成了靜態(tài)時(shí)延控制、 動(dòng)態(tài)時(shí)延控制以及多普勒頻移模擬控制模塊. 靜態(tài)時(shí)延控制模塊實(shí)現(xiàn)FPGA和DRAM之間的數(shù)據(jù)交換,實(shí)現(xiàn)固定延遲. 動(dòng)態(tài)時(shí)延控制模塊從上位機(jī)參數(shù)控制模塊實(shí)時(shí)接收時(shí)延變化量,計(jì)算實(shí)時(shí)時(shí)延,實(shí)現(xiàn)實(shí)時(shí)時(shí)延控制. 多普勒頻移模擬模塊從上位機(jī)接收實(shí)時(shí)多普勒頻移量,實(shí)現(xiàn)實(shí)時(shí)多普勒實(shí)時(shí)模擬. 上位機(jī)參數(shù)控制模塊提供輸入頻點(diǎn),輸出頻點(diǎn),固定時(shí)延參數(shù),實(shí)時(shí)時(shí)延變化量和多普勒頻移量等參數(shù)信息,并傳輸?shù)紽PGA模塊當(dāng)中.
信號(hào)時(shí)延即對(duì)信號(hào)進(jìn)行一段時(shí)間的緩存后再輸出,需要FIFO存儲(chǔ)器來(lái)實(shí)現(xiàn). 時(shí)延越大,信號(hào)采樣率越高,則需要的存儲(chǔ)器容量則越大. 為了滿足大范圍時(shí)延的要求,選擇DRAM存儲(chǔ)器實(shí)現(xiàn)和FPGA的交互. DRAM具有存儲(chǔ)空間大,成本低的特點(diǎn). 但從DRAM存儲(chǔ)器讀取數(shù)據(jù)具有不固定的延時(shí),并且DRAM存儲(chǔ)器讀寫(xiě)不能同時(shí)進(jìn)行.
對(duì)于DRAM中的數(shù)據(jù),按照地址進(jìn)行連續(xù)讀寫(xiě),到達(dá)末尾地址后繞回到首地址,從而實(shí)現(xiàn)FIFO結(jié)構(gòu); 對(duì)DRAM采取數(shù)據(jù)請(qǐng)求和獲取的分級(jí)形式對(duì)數(shù)據(jù)進(jìn)行緩存,克服讀取延時(shí)不確定性; 通過(guò)高速時(shí)鐘(高于二倍采樣時(shí)鐘)進(jìn)行讀寫(xiě)周期切換,并利用FIFO緩存控制讀寫(xiě)速度,從而達(dá)到等價(jià)于讀寫(xiě)同時(shí)進(jìn)行的效果. 在時(shí)鐘周期分配部分,首先寫(xiě)入N個(gè)周期,然后讀取N個(gè)周期,再次寫(xiě)入N個(gè)周期,然后讀取N個(gè)周期……. 通過(guò)選擇合適的N值,降低頻繁的讀寫(xiě)切換導(dǎo)致的數(shù)據(jù)吞吐量降低問(wèn)題.
具體流程如圖2 所示: 建立FIFO 1和FIFO 2,F(xiàn)IFO 1中存儲(chǔ)數(shù)字信號(hào)輸入; FIFO 2中存儲(chǔ)DRAM輸出的數(shù)字信號(hào)并輸出給后續(xù)模塊處理. 通過(guò)判斷FIFO中數(shù)據(jù)存儲(chǔ)情況,控制DRAM讀寫(xiě)速度,由于讀取的延時(shí)性,進(jìn)行DRAM數(shù)據(jù)請(qǐng)求時(shí),應(yīng)該保證FIFO 2中留有一定空間余量,余量應(yīng)大于DRAM最大的讀取延遲周期數(shù).
圖2 靜態(tài)時(shí)延控制原理Fig.2 Principle of static delay control
對(duì)于數(shù)字IQ調(diào)制信號(hào)
s(n)=I(n)+jQ(n),
(1)
式中:I(n)為同向路信號(hào);Q(n)為正交路信號(hào). 要對(duì)s(n)進(jìn)行頻率f的變頻,則
s′(n)=s(n)ej2πfn=
I(n)cos(2πfn)-Qsin(2πfn)+
j[I(n)sin(2πfn)+Q(n)cos(2πfn)].
(2)
令θ(n)為正弦信號(hào)的相位信息,則
(3)
式中:fs為采樣頻率,n為采樣周期計(jì)數(shù). 利用式(3) 可計(jì)算實(shí)時(shí)相位信息,根據(jù)相位信息,查詢(xún)存儲(chǔ)器中的正弦函數(shù)表得到對(duì)應(yīng)的正余弦值. 然后利用式(2)中的乘法器結(jié)構(gòu),完成數(shù)字變頻,實(shí)現(xiàn)多普勒模擬.
利用FIFO結(jié)構(gòu)實(shí)現(xiàn)信號(hào)時(shí)延,時(shí)延分辨率為采樣周期Ts. 為了獲得更高的時(shí)延分辨率,本文基于最小二乘法設(shè)計(jì)了分?jǐn)?shù)時(shí)延濾波器,在濾波器階數(shù)固定的情況下,可保證整個(gè)通帶內(nèi)時(shí)延誤差最小化,最大化利用信道模擬器的采樣帶寬. 為實(shí)現(xiàn)時(shí)延實(shí)時(shí)可變,濾波器采用Farrow結(jié)構(gòu)實(shí)現(xiàn),對(duì)于不同的時(shí)延輸入值,濾波器系數(shù)不需要進(jìn)行重新計(jì)算.
簡(jiǎn)要介紹分?jǐn)?shù)時(shí)延濾波器設(shè)計(jì)方法如下,詳細(xì)推導(dǎo)過(guò)程可參考相關(guān)文獻(xiàn)[9,10].Hid(ejω)為理想分?jǐn)?shù)時(shí)延濾波器頻率響應(yīng),H(ejω)為分?jǐn)?shù)時(shí)延濾波器實(shí)際頻率響應(yīng),設(shè)D為時(shí)延系數(shù),例如D=0.3則代表延遲0.3個(gè)采樣周期,則
Hid(ejω)=e-jωD.
(4)
考慮通帶內(nèi)誤差最小化,令通帶為[0,aπ],在整個(gè)通帶范圍內(nèi),頻率響應(yīng)誤差函數(shù)
hTPh-2hTQ+m,
(5)
式中:h為時(shí)域沖激響應(yīng)系數(shù)向量.
在式(5)中,對(duì)hT求偏導(dǎo),使得導(dǎo)數(shù)為0得到誤差最小值,于是
h=P-1Q.
(6)
計(jì)算可得
asinc[a(k-l)],
(7)
asinc[a(i-D)].
(8)
FARROW架構(gòu)濾波器實(shí)現(xiàn):
分?jǐn)?shù)時(shí)延濾波器延時(shí)系數(shù)為D,濾波器的傳遞函數(shù)定義為
(9)
用M階多項(xiàng)式進(jìn)行擬合
(10)
根據(jù)式(9),式(10),有
(11)
(12)
Gm(z)可以看成子濾波器的傳遞函數(shù),整個(gè)濾波器結(jié)構(gòu)如圖3 所示.
圖3 FARROW結(jié)構(gòu)濾波器Fig.3 Farrow structure filter
本文采用3階多項(xiàng)式擬合的32階濾波器,通帶歸一化頻率a=0.8,濾波器的幅頻特性曲線和時(shí)延特性如圖4、 圖5 所示,時(shí)延以采樣周期(sample)為單位:
圖4 幅頻特性圖Fig.4 Amplitude-frequency characteristic diagram
圖5 時(shí)延特性圖Fig.5 Delay characteristic diagram
通帶內(nèi)最大幅度誤差不超過(guò)0.001,通帶內(nèi)最大時(shí)延誤差不超過(guò)0.000 1.
在實(shí)際的衛(wèi)星通信當(dāng)中,發(fā)射機(jī)和接收機(jī)之間的位置關(guān)系持續(xù)變化,所以,時(shí)延也是動(dòng)態(tài)變化的,需要對(duì)時(shí)延進(jìn)行動(dòng)態(tài)連續(xù)控制. 控制方式如圖2 所示:
FIFO 2中緩存輸入數(shù)據(jù)(即靜態(tài)時(shí)延控制模塊中的FIFO 2),F(xiàn)IFO 3中緩存輸出數(shù)據(jù). 整個(gè)循環(huán)以略高于采樣頻率的時(shí)鐘運(yùn)行,循環(huán)時(shí)鐘頻率越高,則能達(dá)到的時(shí)延變化率越高,而時(shí)延變化率取決于衛(wèi)星徑向飛行速度與光速的比,由于衛(wèi)星飛行速度遠(yuǎn)低于光速,所以循環(huán)運(yùn)行時(shí)鐘略高于采樣時(shí)鐘即可,保證在后續(xù)處理中以采樣速率讀取FIFO 3中數(shù)據(jù)情況下不會(huì)讀空. 具體步驟如圖6 所示.
圖6 動(dòng)態(tài)時(shí)延控制原理Fig.6 Dynamic delay control principle
步驟 1) 判斷FIFO 2中待讀取的數(shù)據(jù)是否充足,如果是,則執(zhí)行步驟2),如否,執(zhí)行步驟1);
步驟 2) 判斷FIFO 3中待寫(xiě)入的數(shù)據(jù)是否充足,如果是,則執(zhí)行步驟3),如否,執(zhí)行步驟1);
步驟 3) 所述動(dòng)態(tài)時(shí)延控制單元進(jìn)行動(dòng)態(tài)時(shí)延處理,并將動(dòng)態(tài)時(shí)延處理后的數(shù)據(jù)寫(xiě)入FIFO 3,返回步驟1).
動(dòng)態(tài)時(shí)延處理部分利用了上文設(shè)計(jì)的分?jǐn)?shù)時(shí)延濾波器:
假設(shè)第n個(gè)輸出時(shí)刻的時(shí)延為T(mén)d(n),采樣周期為T(mén)s,令
(13)
令ΔTd(n)為第n個(gè)輸出時(shí)刻到n+1個(gè)采樣時(shí)刻的時(shí)延變化量,設(shè)
(14)
則td(n+1)=td(n)+Δt(n).
(15)
對(duì)td(n)進(jìn)行拆分,令
td(n)=md(n)+kd(n),
(16)
式中:md(n)為td(n)的整數(shù)部分;kd(n)為td(n)的小數(shù)部分,因?yàn)榉謹(jǐn)?shù)時(shí)延濾波器的時(shí)延范圍為 [-0.5,0.5],所以令-0.5 md(n+1)= (17) kd(n+1)= (18) 當(dāng)md(n+1)=md(n)時(shí),從FIFO 2中讀取數(shù)據(jù)輸入分?jǐn)?shù)時(shí)延濾波器,分?jǐn)?shù)時(shí)延值設(shè)為kd(n),分?jǐn)?shù)時(shí)延濾波器輸出數(shù)據(jù); 當(dāng)md(n+1)=md(n)+1時(shí),不向分?jǐn)?shù)時(shí)延濾波器輸入新的數(shù)據(jù),分?jǐn)?shù)時(shí)延值設(shè)為kd(n),分?jǐn)?shù)時(shí)延濾波器輸出數(shù)據(jù); 當(dāng)md(n+1)=md(n)-1時(shí),連續(xù)兩周期從FIFO 2數(shù)據(jù)輸入分?jǐn)?shù)時(shí)延濾波器后,分?jǐn)?shù)時(shí)延值設(shè)為kd(n),分?jǐn)?shù)時(shí)延濾波器輸出數(shù)據(jù). 上位機(jī)參數(shù)控制單元向下位機(jī)傳遞的一次性參數(shù)包括DRAM初始延遲周期n0,分?jǐn)?shù)時(shí)延濾波器初始時(shí)延值k0,實(shí)時(shí)參數(shù)包括多普勒頻移模擬單元中的數(shù)字變頻器的變頻參數(shù)d(n),動(dòng)態(tài)時(shí)延控制單元中的時(shí)延變化量相對(duì)值Δt(n),其中n為采樣周期計(jì)數(shù). 對(duì)于確定的傳輸環(huán)境,設(shè)初始時(shí)刻傳播時(shí)延值T0,扣除信道模擬器各部分處理的固定時(shí)延Tf,得到 T0-Tf=n0Ts+k0-0.5 (19) 式中:Ts為采樣周期,由式(19)可計(jì)算n0和k0值. (20) 設(shè)fs為采樣頻率,數(shù)字變頻器在第n個(gè)輸出周期的變頻參數(shù)輸入可設(shè)定為 (21) ΔTd(n)為時(shí)延變化量,fd(n)為多普勒值,兩個(gè)參數(shù)成正比,設(shè)f為通信頻率 (22) 可根據(jù)多普勒變化值計(jì)算時(shí)延變化量,動(dòng)態(tài)時(shí)延控制及多普勒頻移模擬控制模塊實(shí)時(shí)傳遞參數(shù). 系統(tǒng)時(shí)延和多普勒特性難以直接測(cè)試,這給系統(tǒng)的驗(yàn)證帶來(lái)了困難. 本文通過(guò)測(cè)距系統(tǒng),間接對(duì)系統(tǒng)的靜態(tài)時(shí)延特性進(jìn)行驗(yàn)證. 構(gòu)建直接序列擴(kuò)頻收發(fā)信機(jī),通過(guò)擴(kuò)頻接收機(jī)的鎖相環(huán)和碼環(huán)分別對(duì)動(dòng)態(tài)時(shí)延和多普勒功能進(jìn)行了驗(yàn)證. 系統(tǒng)信號(hào)處理存在固有時(shí)延,固定延時(shí)模塊時(shí)延也會(huì)因?yàn)椴蓸訒r(shí)鐘偏差和理想結(jié)果存在誤差,通過(guò)配有精確時(shí)鐘的測(cè)距系統(tǒng),可以對(duì)系統(tǒng)時(shí)延特性進(jìn)行測(cè)量,從而完成時(shí)延特性的校準(zhǔn)和性能檢驗(yàn). 本文采用了側(cè)音測(cè)距系統(tǒng)進(jìn)行功能驗(yàn)證[11]. 由于系統(tǒng)數(shù)據(jù)處理需要一定時(shí)間,延遲的采樣點(diǎn)數(shù)不能無(wú)限小,令靜態(tài)時(shí)延控制模塊延遲點(diǎn)數(shù)分別取30 000,100 000,1 000 000,2 000 000,3 000 000,4 000 000,采樣率120 MHz,每個(gè)延遲點(diǎn)數(shù)利用側(cè)音測(cè)距系統(tǒng)分別進(jìn)行10次時(shí)延測(cè)量,根據(jù)測(cè)量結(jié)果,采用最小二乘法,對(duì)系統(tǒng)實(shí)際時(shí)延性能進(jìn)行擬合,如圖7 所示,得到擬合方程為 圖7 靜態(tài)延遲最小二乘擬合圖Fig.7 Static delay least squares fitting diagram Dr=1.000 003 047 5Di+4.092 9*10-6, (23) 式中:Dr為系統(tǒng)實(shí)際時(shí)延;Di為理論時(shí)延. 動(dòng)態(tài)特性利用鎖相環(huán)和碼環(huán)驗(yàn)證[12]. 利用鎖相環(huán)可以跟蹤相位變化,鎖相環(huán)生成的載波可以驗(yàn)證系統(tǒng)的實(shí)時(shí)多普勒頻率模擬性能. 在時(shí)延實(shí)時(shí)快速變化條件下,時(shí)延的實(shí)時(shí)值難以直接監(jiān)測(cè),但是時(shí)延變化將導(dǎo)致信號(hào)符號(hào)速率發(fā)生變化 (24) 符號(hào)速率變化量Δp,多普勒頻移量fd,時(shí)延變化量ΔT3者成正比關(guān)系. 而對(duì)于直接序列擴(kuò)頻信號(hào),利用碼環(huán)可以實(shí)時(shí)跟蹤符號(hào)速率的變化,從而可以驗(yàn)證系統(tǒng)動(dòng)態(tài)時(shí)延控制功能. 碼環(huán)的具體形式如圖8 所示. 圖8 碼環(huán)原理圖Fig.8 Code tracking loop schematic diagram 利用偽碼生成器生成超前、 即時(shí)、 滯后3組偽碼,分別對(duì)輸入數(shù)據(jù)進(jìn)行解擴(kuò)并對(duì)解擴(kuò)后的信號(hào)進(jìn)行積分,利用超前滯后兩組偽碼的積分結(jié)果進(jìn)行鑒相,鑒相結(jié)果經(jīng)過(guò)環(huán)路濾波器后利用碼NCO調(diào)整偽碼速率,使得偽碼速率和輸入數(shù)據(jù)速率匹配. 因此,在碼環(huán)結(jié)構(gòu)中可以通過(guò)監(jiān)控碼NCO得到符號(hào)速率的變化情況,從而驗(yàn)證系統(tǒng)延時(shí)的動(dòng)態(tài)變化情況. 本文選擇了BPSK調(diào)制方式的直列擴(kuò)頻收發(fā)信機(jī)進(jìn)行功能驗(yàn)證,符號(hào)速率4.096 kbps,碼速率3.069 Mbps,擴(kuò)頻碼長(zhǎng)度1 023. 分別選擇常量和線性變化兩種形式的多普勒和時(shí)延變化形式,得到鎖相環(huán)和碼環(huán)的跟蹤結(jié)果,如圖9,圖10 所示. 圖9 多普勒偏移對(duì)比圖Fig.9 Doppler frequency shift comparison diagram 圖10 符號(hào)速率偏移對(duì)比圖Fig.10 Comparison diagram of symbol rate deviation 跟蹤結(jié)果和理論值趨勢(shì)一致,系統(tǒng)有效實(shí)現(xiàn)了多普勒頻率和時(shí)延的實(shí)時(shí)動(dòng)態(tài)模擬. 時(shí)延和多普勒特性是衛(wèi)星信道的重要特征,在衛(wèi)星通信系統(tǒng)設(shè)計(jì)當(dāng)中需要重點(diǎn)考慮. 本文給出了一種實(shí)現(xiàn)信道時(shí)延和多普勒特性模擬的有效方法,可以實(shí)現(xiàn)大范圍高精度的時(shí)延模擬,并可以實(shí)現(xiàn)時(shí)延和多普勒的實(shí)時(shí)動(dòng)態(tài)控制. 同時(shí),本文給出了系統(tǒng)的測(cè)試方案,證明系統(tǒng)的有效性. 本文的衛(wèi)星信道時(shí)延與多普勒模擬系統(tǒng)可以用于衛(wèi)星通信,導(dǎo)航等系統(tǒng)的測(cè)試當(dāng)中.6 上位機(jī)參數(shù)控制
7 性能驗(yàn)證
7.1 靜態(tài)時(shí)延驗(yàn)證
7.2 動(dòng)態(tài)多普勒和時(shí)延驗(yàn)證
8 結(jié) 論