国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

采用FPGA技術(shù)的北斗B3I同步算法

2020-07-14 11:02沈周鋒
關(guān)鍵詞:分部測(cè)距信噪比

沈周鋒

(漳州職業(yè)技術(shù)學(xué)院電子工程學(xué)院, 福建 漳州 363000)

0 引言

當(dāng)前,聯(lián)合國(guó)確定的全球四大導(dǎo)航系統(tǒng)包括我國(guó)的北斗衛(wèi)星導(dǎo)航系統(tǒng)(Beidou navigation satellite system,BDS)、 美國(guó)的全球定位系統(tǒng)(global positioning system,GPS)、 俄羅斯的格洛納斯系統(tǒng)(Global navigation satellite system, GLONASS)和歐盟伽利略(Galileo). 從一代、 二代至三代的升級(jí)過(guò)程中,BDS系統(tǒng)已經(jīng)具備全球服務(wù)的能力. 2018年BDS向民用設(shè)備開(kāi)放了B3I頻段,利用碼率更高的測(cè)距碼將導(dǎo)航電文頻譜擴(kuò)展到更寬的頻段,使其具有更強(qiáng)的抗干擾、 更精準(zhǔn)的導(dǎo)航定位性能[1]. 信號(hào)解調(diào)單元作為終端設(shè)備核心之一,決定了整個(gè)系統(tǒng)的抗干擾能力,大大影響導(dǎo)航電文分析單元能否正常工作. 文獻(xiàn)[2]提出了利用串行相干解調(diào)算法檢測(cè)測(cè)距碼相位,該算法需要加長(zhǎng)累加時(shí)長(zhǎng)才能充分發(fā)揮B3I的強(qiáng)抗干擾性能,計(jì)算量巨大. 文獻(xiàn)[3-6]提出了利用FFT求取互相關(guān)序列的方法,其實(shí)質(zhì)是以提高電路復(fù)雜度為代價(jià)換取計(jì)算量的減少,直接應(yīng)用于B3I頻段時(shí),測(cè)距碼碼長(zhǎng)較大將導(dǎo)致電路開(kāi)銷(xiāo)急劇上升,難以實(shí)現(xiàn). 文獻(xiàn)[7-8]提出非相干累加和差分累加的方法,雖然減少了計(jì)算量,但是抗噪聲性能仍然無(wú)法和同等累加時(shí)長(zhǎng)的相干累加相比擬. 文獻(xiàn)[9]提出了GPS半比特交替的弱信號(hào)捕獲算法,由于北斗系統(tǒng)導(dǎo)航電文利用NH(neumann-hoffman)碼進(jìn)行二次編碼,二次編碼跳變的問(wèn)題使該算法無(wú)法正常工作.

累加時(shí)長(zhǎng)20 ms的相干累加算法具有較高的抗噪聲性能,在弱信號(hào)環(huán)境下能夠勝任信號(hào)捕獲. 該算法在捕獲、 跟蹤單元被多次使用. 由于計(jì)算量巨大,直接實(shí)現(xiàn)將導(dǎo)致導(dǎo)航終端信號(hào)捕獲跟蹤耗時(shí)很長(zhǎng),且占用大量的芯片資源. 本研究對(duì)算法進(jìn)行改進(jìn),使其在保留原始性能的同時(shí)減少計(jì)算量,且滿足FPGA并行化和流水線化結(jié)構(gòu)的要求,具有較大的實(shí)用價(jià)值.

1 信號(hào)模型和算法分析

1.1 北斗B3I信號(hào)同步原理

圖1 編碼示意圖Fig.1 Coding schematic diagram

北斗B3I頻段D1導(dǎo)航電文碼率為50 bit·s-1,調(diào)制到NH碼上,形成1 kbit·s-1的碼流. 然后利用碼長(zhǎng)10 230 bit的測(cè)距碼對(duì)其進(jìn)行直接序列擴(kuò)頻,生成10.23 Mbit·s-1的序列. 該序列與1 268.520 MHz載波進(jìn)行BPSK調(diào)制,形成帶寬為20.46 MHz的射頻信號(hào). NH碼碼長(zhǎng)為20 bit,由0和1兩種碼組成,碼片寬度為1 ms.C(n)、D(n)和NH(n)采用模二加的方式進(jìn)行調(diào)制, 調(diào)制方式如圖1所示. 在算法設(shè)計(jì)中,一般采用數(shù)字-1表示碼片0,采用數(shù)字1表示碼片1. 不難得出,兩次模二加結(jié)果與兩次乘法結(jié)果相同,基帶數(shù)字信號(hào)可以表示為C(n)D(n)NH(n).

射頻信號(hào)經(jīng)過(guò)射頻前端電路下變頻生成中頻信號(hào). 采用相位差為90°的兩路本地載波分別與中頻信號(hào)混頻,得到同相、 正交兩路基帶信號(hào)[10]. 頻偏捕獲單元合理控制本地載波頻率,將頻偏補(bǔ)償?shù)? 基帶信號(hào)經(jīng)過(guò)采樣并合成復(fù)數(shù)形式. 頻偏完全被補(bǔ)償?shù)睦硐肭闆r下,接收序列R(n)可表示為:

R(n)=AC(n)D(n)NH(n)

(1)

其中:A表示接收信號(hào)幅度. 令PN(n)=C(n)NH(n),則PN(n)相當(dāng)于碼率10.23 Mbit·s-1,碼長(zhǎng)(10 230 ×20) bit,周期20 ms的偽隨機(jī)序列,其自相關(guān)曲線和互相關(guān)曲線如圖2所示. 橫軸表示相關(guān)運(yùn)算滑動(dòng)位置,縱軸表示相關(guān)運(yùn)算值. PN(n)繼承了NH(n)和C(n)良好的自相關(guān)特性,同時(shí)繼承了C(n)的偽正交特性. 圖2(a)為自相關(guān)曲線,具有尖銳的相關(guān)峰. 以1號(hào)衛(wèi)星和2號(hào)衛(wèi)星PN序列為例,互相關(guān)曲線如圖2(b)所示,曲線上無(wú)明顯相關(guān)峰.

圖2 PN(n)自相關(guān)和互相關(guān)特性曲線Fig.2 PN(n) autocorrelation and cross correlation characteristic curve

接收信號(hào)可以看成PN(n)對(duì)導(dǎo)航電文D(n)的直接序列擴(kuò)頻,R(n)重寫(xiě)為:

R(n)=AD(n)PN(n)

(2)

本地偽碼發(fā)生器產(chǎn)生偽隨機(jī)序列,表示為PNL(n). 與R(n)進(jìn)行互相關(guān),得到以下序列:

(3)

式(3)中,當(dāng)PN(n)和PNL(n)對(duì)齊時(shí),Z(n)出現(xiàn)相關(guān)峰, 峰值位置即為NH碼周期的起始位置.

在實(shí)際系統(tǒng)中,下采樣得到采樣率為10.23 MHz的碼流,從任意時(shí)刻開(kāi)始截取409 199個(gè)采樣點(diǎn)與PNL(n)做滑動(dòng)互相關(guān)運(yùn)算. 最多經(jīng)過(guò)204 600次運(yùn)算,必能檢測(cè)到相關(guān)峰. 直接計(jì)算Z(n)計(jì)算量相當(dāng)大,且難以將運(yùn)算電路進(jìn)行流水線化處理,需要對(duì)算法進(jìn)行改進(jìn).

1.2 分部相關(guān)算法原理

圖3 互相關(guān)運(yùn)算示意圖Fig.3 Cross-correlation operation schematic diagram

式(3)互相關(guān)運(yùn)算示意圖如圖3所示. 本地PN序列由20個(gè)周期的測(cè)距碼連接而成,每個(gè)測(cè)距碼周期由一個(gè)格子表示,填充陰影的格子表示該測(cè)距碼周期對(duì)應(yīng)的NH碼片等于-1,其他格子表示對(duì)應(yīng)的NH碼片等于1. 本地PN碼與接收序列R(n)進(jìn)行相乘并累加的過(guò)程,可以看成將R(n)分成20段,分別與20個(gè)周期的測(cè)距碼相乘并累加,再將20個(gè)累加結(jié)果加權(quán)求和. PN碼與接收序列R(n)滑動(dòng)互相關(guān)過(guò)程中,存在很多相同的運(yùn)算,浪費(fèi)系統(tǒng)資源. 因此提出分部相關(guān)算法,適當(dāng)記錄每個(gè)段的運(yùn)算結(jié)果,達(dá)到減少重復(fù)運(yùn)算的目的.

Z(n)的值可由累加時(shí)長(zhǎng)1 ms的互相關(guān)結(jié)果進(jìn)行加減運(yùn)算求得.Z(n)可整理為:

(4)

Z(n)由20個(gè)累加項(xiàng)與NH碼相乘并求和得到. 每個(gè)累加項(xiàng)對(duì)應(yīng)一個(gè)累加時(shí)長(zhǎng)1 ms的互相關(guān)運(yùn)算,表示為:

(5)

代入式(4),則:

(6)

只需計(jì)算出Y(n)序列,抽取特定位置的數(shù)據(jù)與NH碼進(jìn)行乘法和加法運(yùn)算即可得到Z(n). 計(jì)算Z(n)過(guò)程中,Y(n)序列的每個(gè)數(shù)值被多次調(diào)用. 計(jì)算過(guò)程的中間結(jié)果被充分利用,大大減小了計(jì)算量. 分部相關(guān)算法有如下3個(gè)具體步驟:

步驟一按照式(5)計(jì)算累加時(shí)長(zhǎng)1 ms的互相關(guān)序列Y(n).n的取值從0至(10 230×39-1).

步驟二按照式(6)抽取特定位置的Y值與NH碼相乘并累加,計(jì)算Z(n).n的取值從0至(10 230×20-1).

步驟三求Z(n)虛部和實(shí)部的平方和,與特定閾值對(duì)比, 超過(guò)閾值即認(rèn)定為相關(guān)峰,該點(diǎn)位置即為NH碼周期起始位置,或稱為導(dǎo)航電文比特起始位置.

加長(zhǎng)累加時(shí)長(zhǎng)至20 ms,使Z(n)序列信噪比相比接收序列提升(10 230×20)倍,同時(shí)相關(guān)峰峰值對(duì)頻偏更加敏感[11]. 頻偏存在時(shí),相關(guān)峰峰值表示為:

(7)

2 分部相關(guān)算法的FPGA實(shí)現(xiàn)

圖4 相干累加電路框圖Fig.4 Block diagram of coherent accumulation circuit

接收序列與本地偽碼相乘并累加,求取序列互相關(guān)值. 在FPGA中,乘法器電路復(fù)雜度遠(yuǎn)大于加法器,且片上集成的復(fù)數(shù)乘法單元數(shù)量有限. 本地偽碼的值為-1和+1,調(diào)用乘法器單元將會(huì)極大地浪費(fèi)芯片資源,也沒(méi)必要用電路復(fù)雜度更高的FFT IP核. 只需在累加時(shí)根據(jù)本地偽碼的符號(hào),切換加減運(yùn)算即可,如圖4所示. 當(dāng)本地偽碼為正時(shí),模擬選通開(kāi)關(guān)向上接通,復(fù)數(shù)序列進(jìn)入加法器,與累加結(jié)果相加后存入累加結(jié)果寄存器. 反之,當(dāng)本地偽碼為負(fù)時(shí),選通開(kāi)關(guān)向下接通,復(fù)數(shù)序列進(jìn)入減法器,與累加結(jié)果相減后存入累加結(jié)果寄存器. 電路在時(shí)鐘信號(hào)驅(qū)動(dòng)下,執(zhí)行相干累加運(yùn)算. 達(dá)到既定累加次數(shù)后,輸出使能引腳置一,累加結(jié)果從數(shù)據(jù)端口輸出.

NH碼相位檢測(cè)實(shí)現(xiàn)框圖如圖5所示. 射頻前端將接收信號(hào)下變頻并采樣為數(shù)字基帶信號(hào)后,送入本檢測(cè)電路. 復(fù)振蕩信號(hào)發(fā)生器產(chǎn)生特定頻率的信號(hào)與接收序列共軛相乘,進(jìn)一步補(bǔ)償剩余頻偏,然后存入信號(hào)緩存. 10 230次相干累加器從信號(hào)緩存中讀取所需接收序列和本地測(cè)距碼,生成Y(n)信號(hào),存入Y(n)序列緩存中. 20次相干累加器讀取Y(n)的值,與NH碼進(jìn)行相干累加,生成Z(n). 相關(guān)峰檢測(cè)單元求取Z(n)的實(shí)部和虛部的平方和,與閾值對(duì)比,檢測(cè)當(dāng)前值是否為相關(guān)峰. 最終根據(jù)相關(guān)峰位置換算出NH碼周期起始位置.

圖5 NH碼相位檢測(cè)實(shí)現(xiàn)框圖Fig.5 Realization block diagram of NH code phase detection

兩種相干累加運(yùn)算由不同運(yùn)算單元獨(dú)立完成. 合理控制Y(n)序列生成順序,兩種運(yùn)算可同時(shí)執(zhí)行,實(shí)現(xiàn)流水線化,加快NH碼相位檢測(cè)速度[12]. 由式(6)可知,每個(gè)Z(n)是由20個(gè)間隔10 230個(gè)點(diǎn)的Y(n)序列與本地NH碼相干累加求得. 例如:Y(10 230×0),Y(10 230×1),…,Y(10 230×38)等39個(gè)點(diǎn)用于計(jì)算Z(10 230×0),Z(10 230×1),…,Z(10 230×19)等20個(gè)點(diǎn). 39個(gè)Y(n)值存入序列緩存后,立即開(kāi)始下一組Y(n)序列的生成,同時(shí)啟動(dòng)20次相干累加器計(jì)算Z(n)序列,實(shí)現(xiàn)兩種相干運(yùn)算流水線化結(jié)構(gòu). 由于Z(n)序列生成速度大于Y(n)序列,Y(n)序列緩存被新數(shù)據(jù)覆蓋前Z(n)序列已經(jīng)計(jì)算完成. 計(jì)算完Z(n)后,Y(n)序列緩存數(shù)據(jù)可丟棄,用于存儲(chǔ)下一輪的Y(n)序列,大大節(jié)省內(nèi)部存儲(chǔ)空間.

10 230次相干累加相比20次相干累加,計(jì)算量較大,逐個(gè)計(jì)算Y(n)數(shù)據(jù)將大大降低運(yùn)算速度. 須采用并行化結(jié)構(gòu)解決此“瓶頸”,加快運(yùn)算速度. 如圖5所示,實(shí)例化39個(gè)10 230次相干累加器,同時(shí)計(jì)算39個(gè)間隔為10 230個(gè)采樣點(diǎn)的Y(n)的值,存入Y(n)序列緩存中. 39個(gè)電路同步運(yùn)行,同一時(shí)刻所需的接收序列點(diǎn)間隔10 230個(gè)采樣點(diǎn),接收序列緩存須保證間隔10 230個(gè)采樣點(diǎn)的接收序列數(shù)據(jù)并行輸出. 將間隔10 230個(gè)采樣點(diǎn)的接收序列值存入信號(hào)緩存的同一個(gè)字的不同位. 當(dāng)接收序列緩存讀取到地址信號(hào),則輸出對(duì)應(yīng)字節(jié),39個(gè)數(shù)據(jù)包含在同一字節(jié)的不同位中,并行輸出. 同一時(shí)刻所需的本地測(cè)距碼相同,只需要一個(gè)本地測(cè)距碼發(fā)生器即可滿足39個(gè)相干累加器的運(yùn)算需求.

具體的計(jì)算流程圖如圖6所示,最下方的箭頭為時(shí)間軸,各輪運(yùn)算沿著時(shí)間軸從左到右順序執(zhí)行. 每一輪運(yùn)算得到20個(gè)Z(n)數(shù)據(jù),最多經(jīng)過(guò)10 230輪,可完成NH碼相位捕獲. 總之,上述結(jié)構(gòu)占用的運(yùn)算單元主要有1個(gè)復(fù)數(shù)乘法器、 80個(gè)復(fù)數(shù)加法器,大大降低了電路結(jié)構(gòu)的復(fù)雜度和存儲(chǔ)器開(kāi)銷(xiāo). 同時(shí)實(shí)現(xiàn)了并行化和流水線化結(jié)構(gòu),加快算法執(zhí)行速度,無(wú)損地保留了算法的高抗干擾性能.

圖6 算法流程圖Fig.6 Flow diagram of algorithm

3 并行搜星結(jié)構(gòu)的FPGA實(shí)現(xiàn)

北斗導(dǎo)航系統(tǒng)采用2000中國(guó)大地坐標(biāo)系(CGCS2000). 該坐標(biāo)系以地球的質(zhì)心為原點(diǎn),Z軸指向國(guó)際地球自轉(zhuǎn)服務(wù)組織(IERS)定義的參考極(IRP)方向,X軸為IERS定義的參考子午面(IRM)與通過(guò)原點(diǎn)且正交于Z軸的赤道面的交線.Y軸與Z軸、X軸構(gòu)成右手直角坐標(biāo)系. 導(dǎo)航系統(tǒng)中,衛(wèi)星按照特定的星歷運(yùn)行,并定時(shí)進(jìn)行校正. 因此,在特定時(shí)間衛(wèi)星所處三維坐標(biāo)值是明確的,作為接收機(jī)定位的參考點(diǎn). 理論上,接收機(jī)鎖定三個(gè)參考點(diǎn)的信號(hào),分別測(cè)量三個(gè)參考點(diǎn)的距離,建立方程組,即可換算出接收機(jī)的三維坐標(biāo)值,達(dá)到導(dǎo)航定位的目的.

圖7 并行化搜星電路框圖Fig.7 Parallel circuit diagram of satellite search

北斗導(dǎo)航系統(tǒng)采用的無(wú)線電信號(hào)測(cè)距方法稱為單向測(cè)距法. 接收機(jī)通過(guò)解調(diào)出衛(wèi)星信號(hào)中包含的系統(tǒng)時(shí)間信息,與接收終端的本地時(shí)間進(jìn)行對(duì)比,得到該電文在空間中傳輸?shù)臅r(shí)長(zhǎng). 該時(shí)長(zhǎng)乘以無(wú)線電的傳播速度,即可換算出衛(wèi)星與接收機(jī)的距離. 所有北斗衛(wèi)星的星上時(shí)間定期與地面控制站進(jìn)行校對(duì),可以達(dá)到極高的一致性. 但是,由于接收機(jī)時(shí)鐘精度和成本原因,接收機(jī)無(wú)法與導(dǎo)航系統(tǒng)嚴(yán)格對(duì)時(shí),與系統(tǒng)時(shí)間存在一定的誤差,稱為“鐘差”. 因此所測(cè)得的參考點(diǎn)距離并不是真實(shí)距離,而是包含了鐘差項(xiàng),稱為“偽距”. 接收機(jī)測(cè)量鎖定四路衛(wèi)星信號(hào),分別測(cè)量四個(gè)參考點(diǎn)的偽距,建立四個(gè)方程,通過(guò)解方程組消除鐘差影響,求得三維坐標(biāo).

導(dǎo)航系統(tǒng)需要鎖定4路以上的衛(wèi)星信號(hào)才能完成定位功能. 在可見(jiàn)衛(wèi)星數(shù)量較多時(shí),搜索更多衛(wèi)星信號(hào)有助于提高定位精度. 定位終端的高速位移或者周?chē)h(huán)境的干擾,已鎖定信號(hào)失鎖后可能導(dǎo)致定位精度的下降. 此時(shí)須快速鎖定其他替補(bǔ)信號(hào),避免定位服務(wù)中斷. 因此,捕獲模塊需要保持激活狀態(tài),不斷搜索新的可用的衛(wèi)星信號(hào). NH碼相位檢測(cè)電路簡(jiǎn)單,適合實(shí)例化多個(gè)電路,同時(shí)搜索多路衛(wèi)星信號(hào),實(shí)現(xiàn)快速捕獲.

并行化搜星電路框圖如圖7所示. 20 ms長(zhǎng)的信號(hào)序列數(shù)據(jù)量巨大,各檢測(cè)單元共用信號(hào)緩存可以節(jié)約大量的存儲(chǔ)空間. 檢測(cè)單元1至n同步執(zhí)行,同一時(shí)刻所需的接收序列數(shù)據(jù)相同,實(shí)現(xiàn)信號(hào)緩存共用. 數(shù)字基帶信號(hào)是多路衛(wèi)星信號(hào)的疊加,每個(gè)衛(wèi)星相對(duì)速度不同導(dǎo)致頻率偏移各不相同,不同的檢測(cè)單元需要補(bǔ)償不同頻偏. 各檢測(cè)單元設(shè)置了獨(dú)立的頻偏補(bǔ)償電路,各自獨(dú)立運(yùn)行,補(bǔ)償不同衛(wèi)星信號(hào)的頻偏. 頻偏補(bǔ)償控制電路根據(jù)信號(hào)緩存數(shù)據(jù)輸出順序,補(bǔ)償數(shù)據(jù)頻偏. 各檢測(cè)單元本地測(cè)距碼發(fā)生器獨(dú)立運(yùn)行,根據(jù)捕獲目標(biāo)編號(hào)產(chǎn)生對(duì)應(yīng)的測(cè)距碼.

4 算法性能仿真

如表1所示,假設(shè)采樣率等于測(cè)距碼碼率,對(duì)直接計(jì)算Z(n)[13]和分部相干算法計(jì)算量進(jìn)行對(duì)比. 滑動(dòng)互相關(guān)次數(shù)設(shè)置為(10 230×20)次,保證Z(n)必定出現(xiàn)相關(guān)峰. 對(duì)比結(jié)果表明,改進(jìn)算法的計(jì)算量降低了一個(gè)數(shù)量級(jí).

表1 算法計(jì)算量對(duì)比

不同信噪比(SRN)和不同頻偏環(huán)境下,對(duì)分部相關(guān)算法性能進(jìn)行仿真. 如圖8 所示,仿真了信噪比-34 dB環(huán)境下,相關(guān)峰模值與頻偏大小的關(guān)系. 橫軸表示接收序列頻偏(fd),單位Hz,縱軸表示相關(guān)峰的模值,單位為1. 仿真曲線與式(7)變化趨勢(shì)基本一致. 由于高斯噪聲的影響,導(dǎo)致仿真曲線有毛刺存在. 頻偏小于±30 Hz時(shí),相關(guān)峰仍然明顯. 如圖9所示,對(duì)分部相關(guān)算法的捕獲概率進(jìn)行仿真. 采樣率設(shè)置為10 230 MHz,每個(gè)點(diǎn)進(jìn)行一萬(wàn)次仿真,對(duì)比同步結(jié)果與真實(shí)值換算得到捕獲概率. 橫軸表示信噪比,單位dB,縱軸表示捕獲概率,單位為1. 隨著信噪比的下降,捕獲概率呈下降趨勢(shì). 信噪比大于-34 dB時(shí),基本保持100%的捕獲概率;信噪比在-34 dB至-37 dB之間,頻偏為30 Hz的曲線率先出現(xiàn)捕獲失敗,頻偏0 Hz捕獲概率基本保持100%;信噪比小于-37 dB時(shí),兩條曲線均出現(xiàn)捕獲失敗,頻偏越低捕獲概率越高,可見(jiàn)剩余頻偏一定程度上降低了碼流的抗噪聲性能. 因此,頻偏控制在±30 Hz以內(nèi),信噪比在-34 dB以上,分部相關(guān)算法能夠保證可靠捕獲.

圖8 分部相關(guān)算法抗頻偏性能圖 圖9 分部相關(guān)算法捕獲概率

Fig.8 Anti frequency offset performance of correlation algorithm Fig.9 Acquisition probability of correlation algorithm

利用Quartus Prime V18.1軟件實(shí)現(xiàn)了捕獲算法,并下載到開(kāi)發(fā)板中進(jìn)行硬件仿真. 采用MATLAB產(chǎn)生信噪比-30 dB、 頻偏0 Hz、 時(shí)長(zhǎng)40 ms的接收序列,寫(xiě)入FPGA開(kāi)發(fā)板中作為測(cè)試信號(hào). 為了驗(yàn)證捕獲所需最大時(shí)鐘周期個(gè)數(shù),將NH編碼起始位置設(shè)置在204 599位置. 硬件仿真時(shí)序圖如圖10所示,Clk表示時(shí)鐘信號(hào),運(yùn)算單元跟隨時(shí)鐘信號(hào)的步調(diào)執(zhí)行運(yùn)算. 時(shí)鐘頻率越高,則分部相關(guān)算法執(zhí)行速度越快. 芯片外部采用50 MHz的晶振,通過(guò)FPGA芯片內(nèi)部PLL倍頻至500 MHz[14]. Position用于輸出相關(guān)峰位置,PeakValue用于輸出相關(guān)峰絕對(duì)值. Ena作為輸出信號(hào)使能端,輸出高電平時(shí)Position和PeakValue兩端口輸出數(shù)據(jù)有效. ClkCount作為時(shí)鐘周期計(jì)數(shù)單元,用于驗(yàn)證算法執(zhí)行所需的時(shí)鐘周期個(gè)數(shù). ClkCount等于104 653 453時(shí),Ena由低電平跳變?yōu)楦唠娖?,捕獲算法結(jié)束,得到相關(guān)峰峰值為204 694,相關(guān)峰位置204 599,與測(cè)試數(shù)據(jù)參數(shù)一致,捕獲成功.

圖10 FPGA仿真時(shí)序圖Fig.10 Sequence diagram of FPGA simulation

5 結(jié)語(yǔ)

根據(jù)BDS-B3I 頻段D1導(dǎo)航電文的特點(diǎn),理論演繹了累加時(shí)長(zhǎng)20 ms互相關(guān)運(yùn)算用于信號(hào)捕獲的可行性. 針對(duì)其計(jì)算量大,捕獲慢的缺點(diǎn),設(shè)計(jì)了分部相關(guān)算法,保持原有性能的同時(shí)減少90%計(jì)算量. 使用FPGA設(shè)計(jì)了一個(gè)并行處理且流水線化的結(jié)構(gòu),利用加法器這類(lèi)開(kāi)銷(xiāo)較小的運(yùn)算器單元實(shí)現(xiàn)了該算法. 多個(gè)算法單元實(shí)例可共用信號(hào)緩存并行搜星. MATLAB仿真和FPGA硬件仿真表明,本研究算法能夠在頻偏小于±30 Hz、 信噪比大于-34 dB環(huán)境下可靠完成信號(hào)同步,大約10.5×107個(gè)時(shí)鐘周期即可完成捕獲. 分部相關(guān)算法對(duì)跟蹤單元的位同步和頻偏跟蹤單元的設(shè)計(jì)具有一定借鑒意義,為將來(lái)提供重要的研究方向.

猜你喜歡
分部測(cè)距信噪比
基于RSSI測(cè)距的最大似然估計(jì)的節(jié)點(diǎn)定位算法
兩種64排GE CT冠脈成像信噪比與劑量對(duì)比分析研究
基于經(jīng)驗(yàn)分布函數(shù)快速收斂的信噪比估計(jì)器
自跟蹤接收機(jī)互相關(guān)法性能分析
基于深度學(xué)習(xí)的無(wú)人機(jī)數(shù)據(jù)鏈信噪比估計(jì)算法
基于單片機(jī)的超聲波測(cè)距導(dǎo)盲杖設(shè)計(jì)
直流系統(tǒng)行波測(cè)距的誤差分析
基于VMD和TEO的高壓輸電線路雷擊故障測(cè)距研究
多步輾轉(zhuǎn)積分列表表達(dá)
中國(guó)世界遺產(chǎn)分部圖