久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于FPGA的電臺接口轉換模塊

基于FPGA的電臺接口轉換模塊

作者: 時間:2011-05-30 來源:網絡 收藏

4 Cordic算法實現求模

目前實現Cordic算法主要有兩種基本的結構:較為簡潔的狀態機和高速全流水線處理器。在此采用高速全流水線處理器。在流水線結構中,各階段數據處理不影響后面數據的輸入,在每個時鐘周期到來是將各階段的數據不斷前移,后面的數據不斷輸入,猶如一個FIFO緩沖期,在每個時鐘周期到來時地址不斷向前移一位,后來的數據不斷的往里輸,在各時鐘周期不同地址間數據不會相互影響。這就保證了實時系統的數據能不斷地流入而不會導致沖突。圖4所示為5級迭代快速Cordic流水線結構:

如圖5所示,采用QuartusⅡ的SignalTap采集的數據,經計算其準確率高達98%以上,能夠滿足設計的需求。根據圖5所示計算mmsource_ exp信號,此信號是指數修正信號,是有符號型,將其轉換成十進制數的-2。先計算頭二組mmsource_real信號和mmource_imag信號數據。它們也是有符號數,因此將其轉化為十進制數,轉換結果為{-1,-80;-2,-17;-11,-53;26,-51},而根據Cordic算法得出的結果從圖5中讀出,依次為{5 209;1 113;3 517;3 723}。而實際經模修改后得到的標準值分別為{5 120;1 088;5 317;3 648}。

基于FPGA的電臺接口轉換模塊設計

5 穩定處理

FFT閾值法的原理是先對原始信號做FFT處理,適當預設濾波閾值,將低于該閾值的頻帶設定為無效信號,定義為接收器沒有接收到信號。當然閾值以下,并不能代表該周期產生了單頻信而由于信道上或者硬件本身的干擾,單檢測周期的測量值超過閾值或者在號或沒產生。僅憑單檢測周期的閾值檢測而產生PTT控制信號會帶來話音控制的不穩定性。

設計的算法能極大地提高閾值測試的穩定性。具體處理如下,流程如圖6所示。

基于FPGA的電臺接口轉換模塊設計

為實現該功能,需自定義一個計數器,初始值為0,計數器值定義在0到T(T>0)之間。若在加操作中使計數器值大于T,則將計數器值飽和到T;若在減操作中使計數器小于0,則將計數器值飽和到0。

第一步,檢測測量值是否過閾值。若過閾值,計數器值加m,進行第二步;若不過閾值,計數器值減n,進行第四步。

第二步,若計數器值大于T,則飽和到T值。進行第三步。

第三步,檢測計數器值,若計數器值等于T,則啟動輸出PTT控制信號,結束流程;若計數器值小于T,則維持上一次的PTT控制信號輸出狀態,結束流程。

第四步,若計數器值小于0,則飽和到0值。進行第五步。

第五步,檢測計數器值,若計數器值等于0,則取消輸出PTT控制信號,結束流程;若計數器值大于0,則維持上一次的PTT控制信號輸出狀態,結束流程。

在流程中,m,n值的選擇取決于信道上或者硬件本身干擾的大小。若沒有單頻信號而誤檢出單頻信號的錯誤概率比較大,則m的取值應較小;反之,若沒有單頻信號而誤檢出單頻信號的錯誤概率比較小,則m的取值可以較大。同理,若有單頻信號而未檢出單頻信號的錯誤概率比較大,則n的取值應較??;反之,若有單頻信號而未檢出單頻信號的錯誤概率比較小,則n的取值可以較大。

圖7所示,在實驗板運行時采用SignalTapⅡ對狀態機的各項內容進行驗證,保證狀態機運行良好。將相關程序下載到Cyclone-Ⅲ芯片里,實時采集音頻數據對狀態機進行分析。

基于FPGA的電臺接口轉換模塊設計

在圖7中,mmod在一個采樣周期結束后ostart信號被觸發,其獲得的總能量為1 427,比預設閾值要低,因此ocounter1的狀態不變,仍保持在第0狀態,而ocounter2的狀態則由第3狀態跳到第2狀態,這實踐的結果和理論都是保持一致的,可以說明程序的正確性,狀態機運行正常。

6 結語

本文可以用于一切需要PTT信號端的設備上,應用極其廣泛,如:對講機、飛機場指揮塔的應答系統以及目前已在美國推出的PTT手機業務等均運用到該技術。而在做該課題時遇到一些問題,如:陷波濾波器其阻帶帶寬偏大,需要尋求一種更好的算法來解決其帶寬問題;其次,FIR消耗內存較大,這樣會消耗大部分的邏輯資源,會導致較大系統的資源不夠,因此需要設計更好的數據流結構和算法來處理這個問題。這將是筆者以后需要繼續研究學習的。


上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉