<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 直擴導(dǎo)航系統(tǒng)中數(shù)字科思塔斯環(huán)的FPGA設(shè)計與實現(xiàn)

          直擴導(dǎo)航系統(tǒng)中數(shù)字科思塔斯環(huán)的FPGA設(shè)計與實現(xiàn)

          作者:解放軍電子工程學(xué)院 張 頌 楊景曙 胡海娜 時間:2008-12-23 來源:世界電子元器件 收藏

          引言

          本文引用地址:http://www.ex-cimer.com/article/90423.htm

            擴頻接收機載波的同步包括捕獲和跟蹤兩個過程,載波捕獲即多普勒頻移的粗略估計通常包含在偽碼同步過程中,而精確的載波相位及多普勒頻移則通過FLL(鎖頻環(huán))和PLL(鎖相環(huán))跟蹤來實現(xiàn)。鎖頻環(huán)直接跟蹤載波頻率,而鎖相環(huán)則直接對載波相位進行跟蹤。鎖相環(huán)具有較高的跟蹤精度,但對通信鏈路干擾的容忍能力差,特別是受載體動態(tài)引入的多普勒頻移影響較大;而鎖頻環(huán)具有較好的動態(tài)性能,但跟蹤精度較低。載波跟蹤環(huán)的跟蹤精度決定了最后定位測量的精度。常規(guī)接收機中載波跟蹤是在數(shù)字延遲鎖定環(huán)對偽碼相關(guān)解擴的基礎(chǔ)上,通過科斯塔斯環(huán)(PLL的一種)重構(gòu)載波相位解調(diào)BPSK數(shù)據(jù)實現(xiàn)的。當多普勒頻移高于±40kHz ,多普勒頻率一次變化率為4kHz/s ,二次變化率為200Hz/s2時,接收機的PLL將不能穩(wěn)定工作。由于在系統(tǒng)設(shè)計中,多普勒頻移遠小于這一極限值,另外,鎖頻環(huán)鑒別器需要兩組相關(guān)積分采樣點用于計算頻率差值,并且這兩組采樣值應(yīng)該在同一個數(shù)據(jù)位時間區(qū)間之內(nèi)。系統(tǒng)中,由于積分時間與調(diào)制數(shù)據(jù)位寬度相同,每次得到的相關(guān)采樣值將位于不同的數(shù)據(jù)位區(qū)間內(nèi),不適合使用鎖頻環(huán),故只采用科斯塔斯環(huán)完成載波頻率和相位的跟蹤。

          環(huán)路原理

            科思塔斯載波跟蹤環(huán)由載波鑒相器、載波環(huán)路濾波器和載波NCO組成。其結(jié)構(gòu)原理圖如圖1所示。


           


           
           

          環(huán)路實現(xiàn)
          載波NCO的設(shè)計

            載波NCO是載波跟蹤環(huán)的重要組成部分,它的主要功能是產(chǎn)生本地復(fù)制載波信號。載波NCO主要由相位累加器、地址寄存器和正弦查找表構(gòu)成。結(jié)構(gòu)原理如圖2所示。

            載波NCO設(shè)置有頻率控制字輸入口,相位累加器對輸入的控制字進行累加,累加結(jié)果的高8位作為查詢表的地址,通過查詢預(yù)先存設(shè)的正余弦表,輸出兩路信號,其中一路與載波同相,另一路與載波正交。載波環(huán)路通過不斷調(diào)整載波NCO的頻率控制字來保持對接收信號載波頻率和相位的跟蹤。載波NCO要有足夠的頻率分辨率,保證能高精度跟蹤載波,這就要求載波NCO要有足夠的相位累加器字長。本設(shè)計中累加字長取為32位,累加時鐘為60MHz,要求輸出頻率為50MHz,可以得到頻率控制字為:


           
            頻率分辨率為: 即通過輸入頻率控制字來改變輸出正/余弦信號的頻率時,可以達到0.014Hz的最小步進。另外,也可以根據(jù)實際需要的頻率改變輸入頻率控制字值。

            首先在Matlab中仿真一個周期的正余弦波形,由于取8位輸出,所以一個周期應(yīng)該取28個點,均勻取256個點作為一個周期數(shù)據(jù)。在中調(diào)用ROM單元,存儲這256個點值,作為查找表。根據(jù)圖1的結(jié)構(gòu)原理在中設(shè)計頂層框圖如圖3所示。圖中,sin_rom和cos_rom為正余弦查找表。頻率控制字輸入在累加器中累加,取累加結(jié)果的高8位作為查詢地址,在工程中調(diào)用sin_rom和cos_rom模塊,得到正余弦輸出信號。在FPGA中對設(shè)計進行仿真,仿真輸入控制字為20000000。下載到FPGA中可得到SignalTap II測試結(jié)果。仿真和測試結(jié)果(圖略)驗證了設(shè)計的正確性。


           

          低通濾波器

            數(shù)字低通濾波器實際上是由累加器和寄存器所組成的一個積分清洗器,它的作用是去掉數(shù)字混頻器后的高次諧波。累加器對數(shù)字混頻后輸入信號與本地碼相乘的每一位結(jié)果進行累加,經(jīng)過一個碼周期時間(本方案為15000次)的積分累積后,得到一個數(shù)據(jù)位的相關(guān)值。該積分清洗器的累加時鐘為中頻采樣時鐘,清洗脈沖是累加一個數(shù)據(jù)位的進位脈沖,并要求它的時鐘沿跟其采樣時鐘保持一致,其FPGA實現(xiàn)頂層原理結(jié)構(gòu)如圖4所示。


           

            在FPGA中對積分清洗模塊進行仿真,仿真中輸入信號data為1,在某一時刻,使累加清洗信號aclr有效。下載到FPGA中利用SignalTap II對積分清洗模塊進行測試,測試中輸入數(shù)據(jù)為1,當累加到14時,使清洗信號有效。測試結(jié)果(圖略)驗證了設(shè)計的正確性。
          數(shù)字鑒相器的設(shè)計

            科斯塔斯環(huán)常用的鑒相器是正弦和反正切鑒相器。對于本文設(shè)計的接收機,積分時間T_wogageo=0.25ms,4kHz的信號在0.25ms內(nèi)將變化1周,二象限反正切算法的鑒相范圍為[π/2,π/2],因此必須保證輸入信號在0.25ms內(nèi)變化不超過 ,即允許最大的頻差為2kHz,否則將得到錯誤的輸出。因此必須對鑒相器的輸出進行校正。實際設(shè)計時通過計算前后兩次鑒別器的輸出差值,根據(jù)差值大小進行校正,校正算法為:當 ,就對取反,否則 保持不變,其中 為上一次鑒別器誤差輸出, 為本次鑒別器誤差輸出。

          環(huán)路數(shù)字濾波器參數(shù)的設(shè)計

            環(huán)路選用的是理想二階環(huán),帶寬的大小又決定了整個鎖相環(huán)的鎖定時間和跟蹤精度。為了減小噪聲引起的相位抖動,提純輸入信號,環(huán)路帶寬應(yīng)盡量取窄一些,選取環(huán)路噪聲帶寬跟信息數(shù)據(jù)速率的比為,其中B_{L}為環(huán)路噪聲等效帶寬,R_為信息數(shù)據(jù)速率,一般選取 ,另一方面,也要兼顧捕獲時間,從而環(huán)路帶寬又要求取寬一些,因此應(yīng)折衷考慮設(shè)計的環(huán)路帶寬。當環(huán)路處于頻率牽引狀態(tài)時,要求環(huán)路有較寬的捕捉頻帶,使之能迅速同步頻偏較大的載波;當環(huán)路處于相位跟蹤或鎖定狀態(tài)時,卻要求它具有盡量窄的捕捉頻帶,以保證恢復(fù)出的載波相位不產(chǎn)生大的抖動。設(shè)計時應(yīng)根據(jù)具體要求來選擇環(huán)路參數(shù)。

            在本方案中,設(shè)計要求數(shù)據(jù)率為4kbps,在頻率跟蹤階段,取B_{L}=0.1R_=400H_{z},取ξ=0.7,ω_{0}=B_{L}/0.53≈754.7(rad/s),由于采用反正切的鑒別器算法,所以鑒別器的增益k_mqwuaqi可取為1,而NCO的控制靈敏度為k_{0}=2πTf_{s}/2^{N},其中,NCO相位累加器的位數(shù)設(shè)計中N為32,f_{s}為NCO的采樣頻率,系統(tǒng)中f_{s}為系統(tǒng)時鐘60MHz,即為清洗脈沖的周期1/4k秒。從而得到

            在用這組值完成頻率跟蹤后,取窄帶的環(huán)路濾波器進行相位鎖定。這時取B_{L}=0.01R_=40H_{z},此時的計算結(jié)果為:C_{1}=1203.9;C_{2}=16.22;快捕帶為:106.4Hz。

            總的來說,環(huán)路濾波器系數(shù)C_{1}和C_{2}需要根據(jù)環(huán)路的特性選取,它們值的選取是整個環(huán)路跟蹤性能的關(guān)鍵。 C_{1}主要決定了環(huán)路捕捉帶的大小,C_{2}則決定了環(huán)路的長期跟蹤速度和環(huán)路捕獲速度。C_{2}較大時,環(huán)路將經(jīng)過相當長的時間才能成功入鎖。若用一個固定的環(huán)路濾波器,由于鎖定時間和精度的不同要求,捕捉時間遠小于跟蹤時間,這樣得到的結(jié)果顯然不是最優(yōu)的。為了使環(huán)路既具有快速捕獲的能力,又能在跟蹤狀態(tài)時僅在平衡點附近有細微擺動,使輸出相位平緩變化,故應(yīng)使環(huán)路和步進具有自適應(yīng)調(diào)整的能力??梢圆捎铆h(huán)路切換法,即在不同時刻轉(zhuǎn)換環(huán)路濾波器的參數(shù)。

          環(huán)路的Matlab仿真

            分別利用正弦鑒相器和反正切鑒相器,在Matlab中仿真一個連續(xù)波的跟蹤過程。生成連續(xù)正弦波的頻率為10MHz,采樣頻率為80MHz,初始相位為30 。利用圖1的環(huán)路電路,通過設(shè)置環(huán)路濾波器的參數(shù),仿真其跟蹤過程,并對跟蹤結(jié)果分析。

            跟蹤過程如圖5所示。橫坐標為時間,縱坐標為信號幅度。圖5、6分別是利用正弦鑒相和反正切鑒相后,NCO的同相和正交輸出,同相輸出即為跟蹤結(jié)果。對比可知,反正切鑒相時40s就可以實現(xiàn)正確跟蹤,而正弦鑒相則要到80s才能實現(xiàn)。

            比較正弦和反正切鑒相器的輸出(圖略),開始時輸出誤差較大,通過環(huán)路的調(diào)整,輸出誤差信號逐漸減小,最終趨于穩(wěn)定。穩(wěn)定后的輸出最小值是鑒相器的最小分辨率,即為跟蹤精度。跟蹤精度除了和鑒相器本身特性有關(guān),還和環(huán)路濾波器的參數(shù)設(shè)置有關(guān)。通過對比可知,利用正切鑒相器比正弦鑒相器實現(xiàn)跟蹤速度快。

            另外對環(huán)路濾波器取兩組不同參數(shù)時環(huán)路的性能分別進行了仿真。數(shù)字環(huán)路濾波器在環(huán)路中對輸入噪聲起抑制作用,并且對環(huán)路的校正速度起調(diào)節(jié)作用。采用理想二階環(huán),設(shè)置C_{1}和C_{2},采用反正切鑒相器,仿真結(jié)果如圖7、圖8。圖7是 C_{1}=1200、C_{2}=16時的環(huán)路的跟蹤結(jié)果和鑒相器輸出,圖8是C_{1}=16039、 C_{2}=1622時環(huán)路的跟蹤結(jié)果和鑒相器輸出。橫坐標為時間,縱坐標為信號幅度。從圖7中可以看出,環(huán)路在10s左右即可以實現(xiàn)跟蹤,相應(yīng)的鑒相器的輸出也很快維持在0值的附近。如圖8,當C_{2}較大時,跟蹤時間明顯延長,鑒相器的輸出波動很大。

           
           
           

          環(huán)路測試

            在系統(tǒng)測試中,測試原理如圖9所示,在-5dB條件下,載波環(huán)帶寬為40Hz,碼環(huán)帶寬為10Hz。對載波環(huán)路進行測試,載波環(huán)鑒相器及累加器的輸出如圖10所示。在穩(wěn)定跟蹤后,累加器的輸出穩(wěn)定在一個相對固定的數(shù)量級上。

           

          結(jié)束語

            科斯塔斯環(huán)由于對載波上的調(diào)制信息不敏感,在直擴數(shù)字接收機中被普遍采用。本環(huán)路設(shè)計已在一款測距接收機中得到應(yīng)用,在一片F(xiàn)PGA(EP1C12Q240C8)上編程實現(xiàn)。經(jīng)測試,在系統(tǒng)可提供33dB的擴頻增益的條件下,輸入信噪比高于-30dB時,環(huán)路正常工作,在-5dB時,多普勒頻移±2kHz條件下,經(jīng)本載波跟蹤環(huán)路后殘余頻差小于1Hz,殘余相差小于3°。

           

          鑒相器相關(guān)文章:鑒相器原理


          關(guān)鍵詞: FPGA 導(dǎo)航

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();