于茫
摘 要:針對(duì)通信系統(tǒng)成型濾波器實(shí)現(xiàn)過程中邏輯資源緊張的問題,提出了一種正弦曲線模板方法。利用該方法可以解決FPGA中占用大量LUT和DSP資源的問題,減少有效地址位數(shù),提高尋址速度。該方法利用并行及流水線處理方式,提升了運(yùn)算速度。最后通過仿真及頻譜儀測(cè)試,占用帶寬完全滿足國(guó)家標(biāo)準(zhǔn)。
關(guān)鍵詞:正弦曲線;成型濾波器;FPGA;MATLAB;仿真;ModelSim
中圖分類號(hào):TP39文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-1302(2020)07-00-02
0 引 言
通信系統(tǒng)中信源輸出的信號(hào)會(huì)經(jīng)過基帶處理、DAC器件、放大器、調(diào)制器、濾波器、衰減器、功率放大器……,最后到達(dá)天線負(fù)載輸出給信宿?;鶐幚磉^程包括MAC層編碼、數(shù)據(jù)鏈路層編碼、調(diào)制編碼、濾波器設(shè)計(jì)等。而信源采用濾波器設(shè)計(jì)用以限制發(fā)送信號(hào)的帶寬,降低帶外干擾及帶內(nèi)的碼間干擾[1]。
成型濾波器在FPGA有多種實(shí)現(xiàn)方案。
方案一:利用FIR算法,通過MATLAB中的濾波器仿真選取滿足系統(tǒng)要求的濾波器系數(shù),然后把該組系數(shù)寫入FPGA中的FIR IP核內(nèi)并仿真及驗(yàn)證[2]。
方案二:為了節(jié)省邏輯資源,把MATLAB中仿真滿足系統(tǒng)要求而生成的FIR系數(shù)歸一化后存入ROM,按照分布式算法,對(duì)查找表進(jìn)行切割處理,累加乘運(yùn)算得到最終結(jié)果[3-4]。
方案三:CIC插值濾波器中只有加法器,無乘法單元,因此進(jìn)行上變頻處理,滿足DVB-S系統(tǒng)要求[5]。
方案一的實(shí)現(xiàn)過程簡(jiǎn)單明了,但邏輯的資源消耗最大,且要求FPGA器件具有大量DSP和LUT資源,支持FIR的IP;方案二相比方案一省卻了資源,但在實(shí)現(xiàn)過程中需要考慮參數(shù)歸一化的字長(zhǎng)位數(shù),每級(jí)乘法中需要考慮尾數(shù)截取的范圍,同時(shí)對(duì)ROM的存儲(chǔ)深度和存儲(chǔ)字長(zhǎng)也有要求;方案三中信號(hào)字長(zhǎng)位寬的增加會(huì)對(duì)級(jí)聯(lián)的加法器性能產(chǎn)生一定限制。隨著濾波器階數(shù)的增加,三種方案對(duì)邏輯資源的消耗將呈幾何級(jí)增加。
本文針對(duì)無線通信的幅度調(diào)制提出了一種新的成型濾波器設(shè)計(jì)方法,首先把正弦曲線模板生成的參數(shù)存入ROM,然后把調(diào)制編碼完成的信號(hào)與ROM表中的曲線參數(shù)進(jìn)行累加乘運(yùn)算,最終輸出波形。該法不僅限制了帶外干擾,節(jié)省了資源,而且占用帶寬滿足國(guó)家標(biāo)準(zhǔn)[6]。
1 正弦模板算法
本文所闡述基帶處理系統(tǒng)FPGA的采樣頻率Fs為26 MHz,先對(duì)Fb進(jìn)行TPP編碼(見圖1),Tb=6.25 μs,然后進(jìn)行DSB調(diào)制編碼[6],最后經(jīng)成型濾波器輸出給14 bit的DAC器件。具體實(shí)施步驟如下。
(1)選取標(biāo)準(zhǔn)正弦函數(shù)y=cos(t),t?。?,),y值用來表示信號(hào)的變化沿。計(jì)算Fb信號(hào)一個(gè)碼元持續(xù)時(shí)間內(nèi)所需要的采樣點(diǎn)的個(gè)數(shù)N=Fs/Fb=162,構(gòu)造y(n)=acos(2πxn)+b,已知y(0)=1,y(162)=0,a=b。求出y(n)=0.5cos((2πn)/324)+0.5,保留(0,162)區(qū)間的y值(圖2)。
把從MATLAB獲取的y(n)值按照16 bit量化取整,處理后的數(shù)據(jù)寫入FPGA的ROM。
(2)對(duì)輸出信號(hào)s(t)進(jìn)行調(diào)制編碼,字長(zhǎng)寬度與DAC器件保持一致,采用14 bit。碼元1取十進(jìn)制數(shù)4095,二進(jìn)數(shù)補(bǔ)碼為00_1111_1111_1111,碼元0取十進(jìn)制數(shù)低電平值是-4 096,二進(jìn)數(shù)補(bǔ)碼為11_0000_0000_0000。
(3)檢測(cè)到s(t)的沿變化(上升沿和下降沿),s(t)延遲兩拍輸出s(t)_2d,比較s(t)和s(t)_2d數(shù)值,當(dāng)數(shù)值不同時(shí)找到s(t)的變化沿后啟動(dòng)查找表。找到s(t)的變化沿后把s(t)當(dāng)前值賦值給s_data_A寄存器,當(dāng)前值對(duì)應(yīng)的相反電平值賦給s_data_B寄存器。模塊中信號(hào)設(shè)置均采用16 bit字長(zhǎng),對(duì)小于16 bit的寄存器寬度,符號(hào)位進(jìn)行擴(kuò)展。計(jì)算出來的s_data_A與s_data_B的值賦值給s_data_AsubB寄存器。
(4)啟動(dòng)查找表,每個(gè)采樣時(shí)鐘ROM地址加1直到N,但在s(t)的變化沿重新為ROM地址置0。每次從ROM讀取出來的數(shù)q乘以s_data_AsubB,結(jié)果為S_data_dsb_out。調(diào)制編碼碼元0按照-4 095取值,所以計(jì)算結(jié)果S_data_dsb_out需整體向上偏移4 096。
2 仿真及驗(yàn)證
利用ModelSim對(duì)方法進(jìn)行仿真驗(yàn)證,成型濾波前后的數(shù)據(jù)如圖3所示。使用頻譜儀進(jìn)行占用帶寬測(cè)試,如圖4所示。不進(jìn)行濾波處理的信號(hào)占用帶寬約1.6 MHz,將嚴(yán)重影響其他信道的設(shè)備工作,而濾波后信號(hào)的占用帶寬[6]小于標(biāo)準(zhǔn)要求的250 kHz。
3 結(jié) 語
本文使用一種正弦模板算法實(shí)現(xiàn)成型濾波器的設(shè)計(jì),并給出了ModelSim的仿真結(jié)果及頻譜儀測(cè)試的占用帶寬,驗(yàn)證了該算法設(shè)計(jì)的正確性和可行性。采用該方法可以很好地設(shè)計(jì)無線通信系統(tǒng)中要求的成型濾波器。
參考文獻(xiàn)
[1]樊昌信,曹麗娜.通信原理[M].7版.北京:國(guó)防工業(yè)出版社,2012.
[2]郭勇,楊歡.基于IP核FIR濾波器的設(shè)計(jì)與FPGA實(shí)現(xiàn)[J].無線電工程,2017(1):79-82.
[3]洪炳镕,趙林.利用系數(shù)函數(shù)ROM查找表設(shè)計(jì)的數(shù)字濾波器硬件[J].軍事通信技術(shù),1987(4):55-60.
[4]吳鳳輝,遲永剛,鄭宇希,等.一種改進(jìn)DA算法的成型濾波器設(shè)計(jì)[J].哈爾濱工業(yè)大學(xué)學(xué)報(bào),2016(5):32-35.
[5]張文坡,常亮,史麗榮.DVB-S中可變插值率CIC濾波器設(shè)計(jì)及其FPGA實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2018,41(11):103-104.
[6]中國(guó)國(guó)家標(biāo)準(zhǔn)化委員會(huì).GB/T 29768-2013,信息技術(shù) 射頻識(shí)別 800/900 MHz 空中接口協(xié)議[S].2013.
[7]張龔,謝文博.基于DSP Builder的FIR濾波器設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2016,6(5):33-35.
[8]文明.基于FPGA的高速并行濾波器設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代導(dǎo)航,2018(5):382-386.
[9]邵浩,何忠秋.減少脈沖成形濾波器系數(shù)個(gè)數(shù)的高效算法[J].應(yīng)用科技,2014(6):35-40.
[10]龔業(yè)勇.高清晰度電視VSB調(diào)制器及頻譜成形濾波器的設(shè)計(jì)[D].北京:北京大學(xué),1998.