基于FPGA的數字下變頻設計與實現
接收信號經A/D采樣后可表示為:
其中,TS為A/D采樣時鐘的周期,A為信號幅度的量化,d(nTS)表示二進制數據信息,c(nTS)表示偽碼序列信息。
經過A/D后,信號通過一個數字低通濾波器,濾掉噪聲和寄生信號,然后與本地NCO輸出的頻率為18.533 MHz的正交載波相乘,完成數字下變頻,再經過低通濾波,濾除倍頻分量,就可以得到基帶擴頻信號。
從圖2可以看出,本地NCO產生的同相和正交載波經過正交下變頻和低通濾波之后,不考慮噪聲的影響,輸出信號可以表示為:
其中,為本地載波與接收信號的頻差,
為NCO的載波頻率,
為起始相位差。
2 下變頻實現方案
3 下變頻器模塊實現
本文將輸入r正弦信號分為16相,NCO通過clk信號脈沖作為控制信號以查找法的形式找出其對應的正余弦值,與r信號混頻,得到兩路信號i0和q0,再經過低通濾波器,最后得到兩路正交信號i和q,如圖4和圖5所示。從仿真結果可以看出,從第二個clk脈沖開始工作到最后結果輸出,僅僅用了52 ns的時間。
本文針對擴頻通信接收的數字下變頻在特定的輸入信號下,通過查找表的方式進行了混頻和低通濾波的設計及實現。仿真結果在軟件Matlab上的建模結果完全一致,表明了設計的正確性。在Xilinx公司的FPGA集成設計軟件ISE7.1環境下選用 xc3s5000-4fg900實現了綜合和映射。本文的創新點是:用移位代替濾波器乘法運算,節約了硬件資源;對抽頭系數進行擴大,將結果誤差減小到了 1%;根據抽頭系數的對稱性減少了寄存器的使用,節約了讀取存儲的時間。
評論