王紅彥,劉 泳,姜曉潔
(山東航天電子技術研究所預研 1室,山東煙臺 264003)
接收機采用了軟件無線電[1]設計思想,對輸入信號在中頻直接進行帶通采樣。輸入信號頻率為70 MHz,調制格式為 PCM/BPSK/PM。接收機的整體結構,如圖 1所示,其工作流程如下:輸入信號首先經過前端 AGC電路輸出穩定幅度,然后通過帶通濾波器濾除帶外噪聲,再經 A/D采樣轉換為數字信號,最后進入信號處理單元 FPGA,完成 AGC增益控制算法、數字下變頻和 BPSK信號解調。PCI總線對接收機供電并與計算機進行信息交互。

圖1 接收機結構
中頻輸入信號的載波頻率為 70 MHz,但是需要處理的信號帶寬只有 3MHz。對于這樣的信號,采用帶通采樣的方法,不僅可以降低采樣率,還可完成信號頻譜下搬移。根據帶通采樣定理[2]

式中,fs為帶通采樣率;fH為帶通信號高端邊界頻率;fL為帶通信號低端邊界頻率;B為信號帶寬。當選取信號帶寬為 16 MHz時,經計算,采樣頻率有 3個區間:39 MHz≤fs≤ 41.33 MHz,52 MHz≤fs≤62 MHz和 78MHz≤fs≤124 MHz。實際設計時,綜合考慮 A/D變換器性能價格、前端抗混疊濾波器的實現難易以及 FPGA的處理速度等因素,采樣率設定為80 MHz,采樣后信號頻譜被搬到 10 MHz附近。
AGC電路主要由可控增益放大器 VGA和 D/A轉換器構成。VGA芯片選用 AD公司的 AD8367。AD8367具有 45 dB控制范圍,輸入信號從低頻到500 MHz內增益均隨控制電壓以 dB為單位線性變化。模式控制管腳 MODE決定控制增益隨控制電壓變化的關系:當 MODE接高時,增益隨外加控制電壓Vgain增大而增大,當 MODE接低時,增益隨外加控制電壓 Vgain增大而減小。實際設計時采用兩片AD8367級聯以擴展 AGC的動態范圍。
VGA控制電壓由 D/A轉換器提供,選用 LINEAR公司的 LTC1458L,LTC1458L為 12位串行輸入數模轉換器,滿幅輸出電壓為 2.5 V,最小量化電平LSB=2.5/(212-1)=0.61mV。
模擬帶通濾波器選用國產 7MB61-70/U16型 LC帶通濾波器,其中心頻率為 70MHz,帶寬為16MHz。通帶內插入損耗最大值為 -1.634 dB,常規值為-1.193 dB。
A/D變換器選用 TI公司的 ADS5500高性能模數轉換器。ADS5500是一款低功耗、采樣率為 125MSPS的 14位流水線模數轉換器,模擬輸入部分采用差分輸入,所以在 A/D前端用變壓器 ADT1-1WT將單級信號轉換成差分信號,CLKOUT引腳隨采樣數據輸出同步時鐘。
由于中頻采樣后數字信號全部在 FPGA內部處理,數據量大,而且信息速率比較高,因此 FPGA需要具有較高的資源。本設計選用 Altera公司的 StratixⅡ系列器件 EP2S60F672C,具有 60440個邏輯單元,最高工作頻率可達到 550 MHz,可以滿足系統的要求。
PCI總線是一種采用 32/64位傳輸的局部總線,使用了獨立于 CPU的 33 MHz/66 MHz時鐘,峰值傳輸速率為 132/264MB?p-1,適合高速數據傳輸的要求[4]。本設計中 PCI總線工作時鐘為 33 MHz,接口芯片選用 PCI9054,工作于 C模式。控制芯片用于控制 PCI9054的時序邏輯,選用 Altera公司的MAX3000A系列器件 EPM3128。
下位機軟件的編寫全部在 FPGA內部完成,采用硬件描述語言 VHDL和 Verilog編寫各個程序模塊,主要包括 AGC模塊、數字下變頻模塊和 BPSK解調模塊。其中數字下變頻模塊與解調模塊都用到了Costas環:第一級環路用于提取載波,第二級環路用于提取副載波。整個設計流程如圖 2所示,ADS5500的同步輸出時鐘 80 MHz作為整個系統工作的時鐘。

圖2 下位機軟件流程圖
AGC模塊根據輸入信號的平均功率來實現增益控制,A/D采樣后的信號平均功率 Pm可寫成

其中,N為樣本累加數;Pm為模擬輸出信號平均功率;ui為 A/D輸出的樣本值;A/D采樣的是經過增益調整的信號。平均功率的計算如圖 3所示,N取2n,n為正整數,對累加寄存器右移 n位即是平均功率值。

圖3 平均功率計算框圖
增益控制字計算的方法是:與參考的平均功率值作比較,小于或超過參考功率,就分別增大或減小控制字,每次增大或減小固定的變化量,經過一定時間的調整,輸入的平均功率會在參考功率左右變化。實際設計時,由于信號的瞬間變化不會太大,為保證控制精度,參考功率取一個窄帶區間,當實際功率小于區間的下限時,調整控制字以增大 VGA輸出增益;當實際功率大于區間上限時,調整控制字以減小VGA輸出增益??刂谱置看握{整一位,則 D/A輸出電壓每次變化 0.61 mV,對應 VGA輸出增益每次變化 0.61×0.05=0.030 5 dB。
在進行數字下變頻模塊設計時,考慮到接收端與發射端之間存在頻率和相位偏移,所以采用了 Costas環在提取相干載波的同時完成下變頻功能。Costas環的結構,如圖 4所示。

圖4 Costas環結構
實際設計時,用數字頻率合成器 DDS代替 VCO向兩支路提供正交載波,DDS由頻率控制字寄存器、相位累加器和 ROM表構成,如圖 5所示。

圖5 DDS結構
輸出頻率為 fnco=FTW×fclk/2N,其中 FTW是頻率控制字,N是頻率控制字字長,fclk是系統時鐘頻率。本設計中頻率控制字長 N取 32,FTW=232×10 MHz/80 MHz=536 870 912。
低通濾波器 LPF采用積分清零濾波器,通過分段累加實現低通濾波的功能。環路濾波器 LF采用圖 6所示的結構,環路中兩個重要參數 C1和 C2的推導過程參見文獻[5]。

圖6 環路濾波器結構
BPSK解調模塊與數字下變頻模塊類似,此時Costas對副載波進行提取,DDS產生相干副載波。位同步時鐘的提取選用早遲門位同步法。位同步環與Costas環相關,Costas環中積分清零濾波器的清零速率為 4倍的碼元速率,受位同步 NCO輸出時鐘控制,位同步環分別取積分清零濾波器輸出的前兩項和后兩項作早遲判決,計算出相位差值,并用該相位差值控制位同步 NCO的頻率控制字,位同步環的結構,如圖 7所示。

圖7 位同步環結構
完成副載波恢復、位同步時鐘提取之后,對同步積分信號進行取樣判決,最終輸出解調數據。
對下位機軟件進行調試時,需要修改很多參數。每個參數修改后都需進行重編譯,由于工程較大,編譯一次往往需要用很長時間。為此,設計中利用上位機軟件通過 PCI板卡對外部 RAM的寫操作來配置下位機中的參數:將下位機中的參數在 RAM中分配特定的地址,修改時將參數值寫入其對應的地址就可以了。下位機中的幾個關鍵參數,比如碼速率、副載波速率、頻率控制字、環路濾波器參數 C1和 C2等,都可以通過上位機軟件進行修改。圖 8給出了設計中使用的一個典型上位機軟件界面。

圖8 上位機軟件界面
下面給出數字下變頻模塊和 BPSK解調模塊的仿真和部分測試結果。圖 9為Matlab仿真圖,其中發送碼元為 0 0 0 1 1 0 1 0,碼速率 1 kHz,副載波速率8 kHz,載頻為 10 MHz。
可以看出,信號經下變頻后,同相 I路輸出BPSK信號;在解調部分,BPSK信號與副載波相乘后,同相 I路數據極性與碼元符號一致,所以將 I路數據分段累加取符號位,最后作碼型變換即可得到解調數據。
實際測試時,發射機產生頻率為 70 MHz、原始數據為 1ACFFC1D循環序列、碼速率 1 kHz,副載波速率 8 kHz、調相指數為 0.6的PCM/BPSK/PM信號,用 QuartusⅡ 8.0軟件中的 SignalTap和示波器分別觀察數字下變頻和解調后的信號。圖 10顯示的是在SignalTap中觀察到的數字下變頻后的信號波形,其中 fir_i_d為同相分量 I,fir_q_d為正交分量 Q。圖 11顯示在示波器中觀察到的發送數據與解調后的數據波形,其中圖 11(a)為發送數據,圖 11(b)為解調數據。

圖10 下變頻后 I,Q信號波形

圖11 發送數據與解調數據
從 SignalTap中可以看出,數字下變頻后同相支路的輸出信號波形與仿真結果是一致的,表明數字下變頻模塊可以正常工作;而示波器則更直觀地顯示出發送數據與解調數據,通過對比,說明接收機可以正確解調信號。
經過聯調測試,接收機各功能模塊工作正常,AGC電路可以在 0~-60 dBm的動態范圍內實現增益控制;在輸入碼速率 1~32 kHz,副載波速率 8~128 kHz信號的情況下,解調輸出誤碼率低于 10-6,滿足系統設計要求,接收機目前已成功應用于某地面測控設備。
本文設計的接收機結構簡單,性能優良,PCI總線結構設計可以使接收機完成數據的高速實時處理,通過對 FPGA加載不同的軟件,還可以實現對其他系統的中頻接收,具有較強的通用性。
[1]楊小牛,樓才義,徐建良.軟件無線電原理與應用[M].北京:電子工業出版社,2001.
[2]殷瑞,萬國龍.數字信號處理[M].北京:清華大學出版社,2007.
[3]田耘,徐文波,張延偉.無線通信FPGA設計[M].北京:電子工業出版社,2007.
[4]王晗中,吳利民.基于PCI總線的軟件無線電中頻數字接收機設計[J].無線電工程,2005,35(6):69-72.
[5]張厥盛.鎖相技術[M].西安:西安電子科技大學出版社,1991.