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