1.引言 軟件無線電(software defined radio)是無線電系統從模擬到數字再向前發展的新階段。其目標是在可編程的硬件平臺上通過注入不同的軟件,實現對工作頻段、調制解調方式、信道多址方式等無線功能的改變。在軟件無線電的研究過程中,調制解調技術是無線通信系統的重要組成部分。目前對于軟件無線電調制技術的實現多是采用具有調制功能的專用芯片(其中應用較為廣泛的是AD公司的AD985X系列)或是采用可編程器件結合專用芯片方法實現。然而在某些場合,調制方式和控制方式會與系統的要求差距很大。因而,完全采用高性能的FPGA器件設計出符合要求的調制電路就是一個很好的解決方法,此方法提供了一個良好的數字無線通訊系統的驗證環境,可將多種調制算法在實驗平臺上實現,并通過平臺提供的基本控制對系統進行驗證仿真。并且用這種軟件化硬件的設計方法,可以產生多種模式的數字調試方式,具有集成度高、易于升級等優點。 本文基于DDS(直接數字頻率合成)的技術原理,采用Altera公司推出的在FPGA上進行DSP開發的開發工具DSP Builder軟件,設計了一種適合與軟件無線電使用的可調中頻數字調制器,實現FSK、PSK、ASK三種調制方式,并通過FPGA芯片進行系統驗證。 2.DDS的基本原理 DDS(Direct Digital Synthesize)即直接數字合成,是一種新型的頻率合成技術,圖1為DDS的基本實現原理結構圖。 DDS以數控振蕩器的方式,產生頻率、相位和幅度可控的正弦波。電路包括相位累加器、相位調制器、正弦ROM查找表、基準時鐘源、D/A轉換器等組成。其中前三者是DDS結構中的數字部分,具有數控頻率合成的功能。DDS是基于查找表方法,將一個正弦波周期的N個均勻采樣點存儲在存儲器中,以均勻速率將這些采樣點輸送到DAC,即可得到一個單頻正弦波,如果每隔K個采樣點輸出一個數據,則會得到K倍頻的正弦波。但是,系統會存在一個上限頻率,這取決于N的選擇和系統的采樣頻率。設一正弦波為: s(t)=sin(w0t)=sin(2∏f0t) (1) 對其以采樣頻率fs進行采樣,得到: s(n)=sin(2∏f0tTs) (2) 這樣可以得到此正弦信號的相位增量為: △φ=2∏f0Ts=2∏f0/f (3) 將一個周期的正弦波均勻分為N份,取N為2的整數冪。則每一份的相位的大小是: δ=2∏/N (4) 如果每隔K個點輸出一個采樣值,則相位增量就是Kδ,輸出頻率為: f=Kδ/2∏Ts=Kfs/N (5) 根據采樣定理,K應該滿足K≤N/2。可以通過增加一個周期的采樣點N,也就是增加采樣頻率得到更高的輸出頻率。這是計算中頻調制參數的依據。 DDS與傳統的頻率合成技術相比,具有頻率穩定度高,頻率轉換速度快,輸出相對帶寬寬,頻率分辨率高等特點,將DDS的這些功能應用于軟件無線電中,可以部分降低CPU的處理負擔,使整個系統的性能達到較好的程度。 3. FSK、PSK、ASK調制原理 在數字通信系統中,數字基帶信號通常要經過數字調制后再傳輸。常見的調制方式有頻移鍵控(FSK)、相移鍵控(PSK)、幅移鍵控(ASK)等。 以基帶數字波形序列來表示{ak},通常二進制數字基帶信號表示為: m(t)=∑akg(t-kTb) 其中,ak為二元碼符號,1或0;g()為單極性不歸0波形,歸一化幅度;Tb為二元序列碼元間隔。 則頻移鍵控(FSK)信號為: sFSK(t)= A0∑[akg1(t-kTb)cos(w1t+θ1)+(1-ak) g2(t-kTb)cos(w2t+θ2)] 其中w1為傳號載頻;w2為空號載頻;θ1和θ2分別為傳號與空號載波的初相,在[-∏, ∏]均勻分布;w0=(w1+ w2)/2為載波頻率;kTb≤t≤(k+1) Tb。 相移鍵控(PSK)信號為: sPSK(t)=A0∑[akg1(t-kTb)cos(w1t+θ1)+(1-ak) g2(t-kTb)cos(w1t+θ2+∏)] 幅移鍵控(ASK)信號為: sASK(t)= m(t) c(t)= m(t)A0cos(w0t+θ0)= A0∑akg(t-kTb)cos(w0t+θ0) 實現上述調制的方式有多種,采用DDS技術做正交調制,能夠克服解調輸出的嚴重失真,提高抗噪聲性能。對此正交調制表現在已調信號(傳號與空號)各自的相關系數——正交關系。FSK和ASK相關系數均為ρ12=0,PSK的相關系數為ρ12=-1。一般的,要滿足此條件,應考慮到載波頻率f0是碼元頻率Rb=1/Tb整數倍,即f0=mRb,或1bit間隔包括整數個載波周期,即Tb=mT0,這將作為在DSP Builder中優化系統時的依據。 4.基于DSP Builder的可調中頻調制模塊設計 DSP Builder是Altera公司推出的一個面向DSP開發的系統級工具,它提供了Quartus II 軟件和Matlab/Simulink工具之間的接口。DSP Builder允許系統、算法和硬件設計去共享一個通用的開發平臺,DSP Builder設計流程如圖2。 根據DDS基本原理,基于Matlab/Simulink/Altera DSP Builder建立適合軟件無線電應用的中頻調制器模型如圖3。電路全部采用有符號數,其中頻率字為32位,幅度字為18位,分別控制載波的頻率值及載波幅度值。系統由兩個控制按鍵(key1和key2),一個信號輸入端,三個初值輸入端(key3、key4和key5)組成。其中key1和key2控制調制方式,key3和key4是載波的頻率控制字輸入口,key5是載波幅度控制字的輸入端。 整個系統主要由一個DDS構成,包括兩個查表ROM及其他控制電路。當key1、key2為11、01、00時,分別實現FSK、PSK、ASK調制;當key1、key2為10時無信號輸出。在信號的輸入端接收被調制的信號。由AltBus、Parallel Adder Substractor、Delay構成DDS的核心部分——相位累加器。正弦查找表模塊LUT的計算式為: 255*sin( 10*[0:1*pi/(2^10):10*pi] ) +256 受存儲器容量和成本限制,正弦查找表模塊LUT容量有限,這里設置為10位,為了獲得較高的頻率分辨率,DDS模塊的頻率字設置為32位,也即相位累加器字長位32位,DDS將獲得fclk/232。 要達到軟件無線電傳輸標準的調制器設計,能夠通過計算推算出頻率字的取值。設基帶碼元速率為1kHz,系統采樣頻率為32MHz,即對每個碼元采樣32k個點,要達到一個中頻載頻取中頻載頻為:f1=600k,f2=1M,取N=232,根據式(5),可得其頻率控制字分別為: Key1=80530637;key2=134217728;取幅度控制字key5=128。對此系統進行仿真驗證。 5.系統仿真及硬件實現。 按照圖3所示的調制器結構在Simulink中完成仿真系統的搭建,并對其進行系統級仿真,施加合適的激勵,添加合適的觀察區間,在模型窗口選擇“Simulink”菜單,再選Start項仿真。雙擊Scope模塊,分別得到FSK、PSK、ASK仿真波形,如圖3。 通過Simulink系統級仿真后對模塊進行編譯,這在Simulink中自動完成后續的綜合,時序分析等操作。通過SignalComplier(如圖4)把Simulink的模塊文件(.mdl)轉換成通過的硬件描述語言VHDL文件,選定Cyclone系列芯片,并由QuartusII進行綜合、適配、時序分析,最終得到可供下載使用的.sof文件。 打開Quartus II,進行Cyclone系列的EP1C6Q240C8芯片,進行重新編譯,仿真,下載到芯片在示波器中驗證了系統的調制功能。 6.結論 該設計避免了編寫繁瑣的硬件描述程序,同時避免了向ROM中填寫大量的波形數據。充分利用了Matlab中Simulink的DSP Builder工具箱的圖形化界面建模、系統仿真功能,同時又區別與完全圖形化的方法。采用DDS技術,具有分辨率高、頻率變化快、頻率可控等優點,很好的實現了調制功能。實驗證明,采用文中的方法設計的基于軟件無線電的調制器具有較好的功能,基本滿足一般應用的需求。而對于如何控制調制器的頻率是下一步研究的內容。 |