首頁 > 新聞係統 > 電子技術 > 技術 > 可編程器件 正文 > 論壇 返回 打印

基於FPGA的偽碼測距電路的設計與實現

  1 引 言

  現場可編程門陣列()用硬件電路完成算法的過程,一方麵解決了係統的開銷問題,提供了提高係統整體性能的條件,另一方麵,由於靜態RAM型的FPGA具備可重構特性,這使得資源利用率得到顯著提高。FPGA既具有通用計算係統的靈活性,又有專用處理係統的性能,對實現高性能信號處理具有很高的應用價值,而且可重構的特性使其可以根據算法來調整相應的通信結構和數據字長。FPGA以其高度的靈活性與硬件的高密度性在通信信號處理中得到了廣泛的應用。

  在對Xilinx公司的Virtex-E係列FPGA芯片進行充分理解的基礎上,結合炮兵某數字定位係統的實現,這裏設計了的測距電路,並對其FPGA的實現進行了分析。

  係統偽碼測距電路總體設計如圖1所示。

係統偽碼測距電路總體設計

  係統根據前端輸入數據進行碼的捕獲與跟蹤,這些都在FPGA邏輯運算控製部分實現。該部分是係統的核心。

  單片機控製部分主要實現數據的計算以及人機的信息互換。該部分對輸入數據進行運算,以得出距離信號;並負責將距離信號進行顯示,同時還可根據外部指令控製係統的工作。指令輸入接口可以控製數據顯示的刷新頻率,控製係統的工作進程。

  時鍾產生部分的主要功能是為單片機控製部分及FPGA邏輯運算控製部分產生所需的不同的時鍾信號。

  2 偽碼測距原理

  係統采用轉發式二次偽隨機碼測距,即主控站發射的隨機測距信號經用戶站轉發後再與本地碼進行相關運算,通過測量兩者相關峰的位置來確定信號到達的時間,根據收發之間的時間差即可確定主控站與用戶站之間的距離,如圖2所示。

  PN碼的相關特性取決於所取碼的類型和長度。分析表明,當接收到的PN碼與本地碼相差一個碼元以上時,二者的相關值接近於最大輸出的1/p(p為偽碼周期中的碼元數,即碼長);當時間相差為零,即兩序列完全對準時,輸出最大;當二者的時間差為正負一個碼元之內時,相關值隨著時間差的變化而變化。在一個序列周期內,相關值隻在一個碼元寬度內有明顯變化,為三角形,其它時間基本為零。圖3為一個m序列偽碼的自相關函數的示意圖。

二次偽隨機碼測距

  相關峰可以被用來測量兩個PN序列之間的時間差,借此測量用戶站與主控站之間的距離。利用三角形相關峰的線性斜邊,粗到一個碼片寬度內之後,通過PN碼跟蹤環可實現碼片內的精同步。

  3 偽碼同步模塊實現

  擴頻碼的同步又分粗略同步和精確同步,也就是擴頻碼的捕獲和跟蹤。通過擴頻碼的捕獲可以使本地偽碼與接收到的碼元基本保持同步,獲得二分之一碼元寬的同步精度。但由於發射機和接收機的相對運動及時鍾的不穩定,特別是測距的需要,必須對接收信號進一步跟蹤,使本地參考信號盡可能跟隨接收信號的變化。擴頻碼的跟蹤可以使同步精度控製在更小碼元周期範圍內,由此得到的距離估計誤差較小。

  常用的偽碼捕獲方法有並行捕獲方法和串行捕獲方法。並行捕獲法的捕獲時間短,但對長的PN碼,匹配濾波器設備量大,實現困難;對擴頻碼捕獲使本地碼與接收碼的相位保持二分之一碼元的同步精度,工程上多采用滑動捕獲法,使接收到的序列與本地產生的序列進行滑動比較,直至滿足要求。經綜合比較,采用在實現上較簡單的簡單逐步移位串行捕獲法。

  偽碼跟蹤即使本地參考信號盡可能跟隨接收信號的變化,擴頻碼的跟蹤可以使同步精度控製在十分之一碼元周期範圍內,以減小距離估計誤差。擴頻碼的跟蹤通過碼跟蹤回路實現。延時鎖定環DLL和抖動環TDL是碼跟蹤環的兩種配置,TDL和DLL都可用於相關模式和非相關模式。TDL可以克服DLL的增益不平衡問題,但會導致3dB的跟蹤誤差而使性能降低,一般采用非相幹延時鎖定環DLL。

偽碼同步模塊實現

偽碼同步實現

  在本原理性設備的研製過程中,不加任何導航數據,經數字下變頻後所得的數信號理論上是相對發射具有一定延時的PN序列。圖4給出了偽碼捕獲與跟蹤的實現過程。碼跟蹤采用的是超前-滯後型數字鎖相環(LL-DPLL),鑒相器逐周地比較輸入信號與本地參考信號的相位,根據相位超前或滯後相應地輸出一個超前或滯後脈衝,雙相高頻時鍾源產生兩路反相的高頻時鍾。同時,控製電路根據鑒相電路的超前或滯後脈衝控製分頻器輸入脈衝的加減,以達到調整本地PN碼相位的目的,實現精同步。隻要根據記錄下的超前與滯後脈衝的數目(一個碼片內的延時),以及捕獲時記錄下的數據(一個偽碼周期內的延時)即可計算出傳輸延時。

  4 工作流程

  4.1 碼的捕獲

  在本地產生與發送碼完全相同並有一定相對時延的本地碼,將本地碼與接收到的PN碼進行逐位比較,相同則計數器加1,即記錄下相同的碼片數。持續一個PN碼周期後,將二者相同的數目與門限進行比較,如果大於門限則判斷為已經捕獲到PN碼,輸出標誌信號;否則,通過控製電路扣除PN碼的產生時鍾一個脈衝,使PN碼延遲一個碼元,並將計數器清零,同時另一計數器記錄下PN碼延遲的碼元數,並最終輸出粗同步輸出信號。

  4.2 精同步

  中頻數字化處理後的信號與本地PN碼時鍾信號進行鑒相比較,輸出超前或滯後脈衝信號,根據超前與滯後信號,加上或減去一個高頻脈衝,從而控製分頻器的輸入,達到調整本地時鍾相位的目的。同時記錄下加減脈衝的數目,計數器的輸出即為精同步輸出信號。二者達到同步時,也即完成精同步時,鑒相器產生交替的加減脈衝。

  4.3 

  當同步標誌信號輸出為真時,根據精同步輸出信號與粗同步輸出信號即可以計算出傳輸的延時,得到測量距離。

  5 結束語

  按圖4所示結構用實現的同步,還應綜合考慮芯片內部資源利用情況與綜合後的運行速率問題。設計時利用VHDL(Very High SpeedIntegrated Circuit Hardware DescriptionLanguage)硬件描述語言進行設計。VHDL語言描述能力強,覆蓋麵廣,抽象能力強,可讀性好。運用VHDL語言可以大大減輕設計工作強度,提高設計質量,降低出錯率。

  根據初步的試驗結果,PN碼碼長為127,速率為4MHz時,最大捕獲時間約為幾個ms。采用高頻時鍾,精同步可達到十分之一碼元的分辨率。

  參考文獻

  1 常 青.可編程專用集成電路及其應用與設計實踐.北京:國防工業出版社,1997

  2 查光明等.擴頻通信.西安:西安電子科技大學出版,1990



http://www.autooo.net/autooo/Electronic/Tech/PLD/2007-10-27/39900.html