文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2013)07-0035-03
無線通信、傳感器和微機(jī)電系統(tǒng)(MEMS)等技術(shù)的飛速發(fā)展推動(dòng)了無線傳感器的普及和應(yīng)用。無線傳感器網(wǎng)絡(luò)由大量無線傳感器構(gòu)成,大量節(jié)點(diǎn)協(xié)作和感知,收集和處理網(wǎng)絡(luò)覆蓋領(lǐng)域內(nèi)感知對(duì)象的相關(guān)信息,并且將信息傳送給需要的用戶,具有自組織、容錯(cuò)能力、微型化三大特點(diǎn)[1-2]。盡管無線傳感器網(wǎng)絡(luò)具有很強(qiáng)的自組織性和容錯(cuò)能力,但信道傳輸中也面臨著一些問題,尤其是在復(fù)雜工業(yè)環(huán)境中,無線信號(hào)存在路徑幅度衰減、小尺度衰落、電波極化偏轉(zhuǎn)等現(xiàn)象[3]。因此,對(duì)無線傳感器網(wǎng)絡(luò)信道信號(hào)進(jìn)行整形濾波十分必要。
其他學(xué)者對(duì)波形整形濾波器的研究與設(shè)計(jì)有很多豐富的案例和先進(jìn)的理論分析,但是在波形濾波器的靈活性、精度、易實(shí)現(xiàn)等方面仍有改進(jìn)的空間。面對(duì)當(dāng)前SoC嵌入式設(shè)計(jì)潮流,如何設(shè)計(jì)一種靈活、便于配置和易于生成IP核的信道波形整形濾波器是一件急需解決的問題。
本文基于DE2開發(fā)板,利用QuartusII開發(fā)環(huán)境,在Altera公司CycloneII系列EP2C35芯片中,設(shè)計(jì)了WSN信道波形數(shù)字整型濾波器,該設(shè)計(jì)方法原理清晰,設(shè)計(jì)周期短,便于形成IP核以及集成應(yīng)用,具有重要的教學(xué)和科研價(jià)值。
1 波形整形濾波器總體設(shè)計(jì)方案
1.1 基于查表法的波形整形方案
波形整形濾波器是將輸入數(shù)字序列變?yōu)檩敵雒}沖序列的數(shù)字信號(hào)處理器,是語音與圖像處理、模式識(shí)別和譜分析等應(yīng)用中的一種基本的處理部件。整形濾波器的設(shè)計(jì)方法有多種,如窗函數(shù)設(shè)計(jì)法、頻率取樣法、逼近法、查表法等[4-5]。
查表法是基于FPGA的DDS技術(shù),可在一片F(xiàn)PGA芯片上實(shí)現(xiàn)信號(hào)源的信號(hào)產(chǎn)生和控制,只要改變存儲(chǔ)波形信息的ROM數(shù)據(jù),就可以靈活地實(shí)現(xiàn)任意波形發(fā)生器[6]。用FPGA實(shí)現(xiàn)DDS比較靈活,可以產(chǎn)生多種調(diào)制方式,本文基于查表法設(shè)計(jì)波形整形濾波器的實(shí)現(xiàn)原理圖如圖1所示。
2.2 波形整形濾波器參數(shù)設(shè)計(jì)
2.2.1 頻率選擇
基于直接頻率合成技術(shù)的波形整形濾波器,其輸出波形的頻率由兩方面決定:一方面是由頻率控制字(即波形輸出的步長(zhǎng))決定;另一方面是由波形點(diǎn)輸出的固有頻率決定。本文設(shè)定基準(zhǔn)時(shí)鐘頻率為131 kHz,累加器為8 bit,頻率控制字的字長(zhǎng)K=4,經(jīng)計(jì)算輸出波形的頻率fout=2 048 Hz。
2.2.2 初相位選擇
對(duì)于產(chǎn)生的波形的初相的控制,設(shè)定一個(gè)輸入控制端,通過控制端的不同狀態(tài)給波形添加不同的初相。其原理是對(duì)相頻累加器的初次輸出加上一個(gè)特定的值。在本文中無法實(shí)現(xiàn)初相的任意值設(shè)定,只是設(shè)定了幾個(gè)特定的初相供選擇以驗(yàn)證理論和方法的正確性。
2.2.3 幅度選擇
設(shè)計(jì)要求中規(guī)定波形的最終輸出幅度值應(yīng)能夠按照1~4倍的大小調(diào)節(jié),故本設(shè)計(jì)在最后輸出前增加了一個(gè)幅度可調(diào)節(jié)部分。將相位幅度轉(zhuǎn)換成功后的值乘上一個(gè)要求的調(diào)幅系數(shù)即為最終的波形輸出。
2.3 原代碼編譯
2.3.1 擴(kuò)頻模塊
系統(tǒng)由頻譜擴(kuò)展模塊和數(shù)據(jù)波形整形模塊組成。利用擴(kuò)頻模塊對(duì)原來的頻率進(jìn)行編碼,并將編碼后的數(shù)據(jù)進(jìn)行256倍擴(kuò)頻,再按照4倍內(nèi)插根升余弦成型濾波,成形濾波后按4路并行輸出,以滿足并行輸入DA的要求。通過擴(kuò)頻后的信號(hào)波形具有抗截獲性能強(qiáng)、抗多徑干擾能力強(qiáng)、便于實(shí)現(xiàn)多址通信擴(kuò)頻信號(hào)等特性。
擴(kuò)頻信號(hào)就是將信號(hào)的帶寬擴(kuò)展,使其性能提高,可以提高系統(tǒng)的抗干擾能力。本文采用直接擴(kuò)頻的方式,即使用偽隨機(jī)的碼序列,將波形序列進(jìn)行256倍擴(kuò)頻,從而易于在接收端得到較好性能的波形。擴(kuò)展頻譜模塊原理圖如圖3所示。
將頂層文件進(jìn)行全編譯仿真之后,在Quartus II的工具欄選擇“Tools”,點(diǎn)擊“Netlist Viewers”下的“RTL Viewer”之后顯示本設(shè)計(jì)的邏輯原理圖,如圖5所示。先通過擴(kuò)頻模塊對(duì)數(shù)據(jù)進(jìn)行內(nèi)插和擴(kuò)頻處理,之后對(duì)數(shù)據(jù)進(jìn)行整形處理,實(shí)現(xiàn)4路平行輸出。
3 系統(tǒng)功能調(diào)試和仿真
3.1 系統(tǒng)調(diào)試
根據(jù)方案設(shè)計(jì)的要求,調(diào)試過程共分3大部分:硬件調(diào)試、軟件調(diào)試和綜合調(diào)試。電路用FPGA/CPLD實(shí)驗(yàn)箱按模塊調(diào)試,各模塊逐個(gè)調(diào)試通過后再進(jìn)行綜合調(diào)試。
3.1.1 軟件調(diào)試
本系統(tǒng)的軟件功能強(qiáng)大,采用Verilog語言編寫。先在Quartus II里對(duì)所編的模塊逐一進(jìn)行仿真,排除語法的編寫錯(cuò)誤和設(shè)計(jì)邏輯思維的錯(cuò)誤;當(dāng)仿真完確認(rèn)程序沒問題時(shí),直接下載到FPGA芯片,用FPGA實(shí)驗(yàn)箱進(jìn)行調(diào)試。采取自底向上的調(diào)試方法,即先單獨(dú)調(diào)試好每一個(gè)模塊,然后再連接成一個(gè)完整的系統(tǒng)進(jìn)行調(diào)試。
3.1.2 硬件調(diào)試
在控制電路的調(diào)試中,對(duì)輸入、輸出進(jìn)行分析,可以知道時(shí)序仿真結(jié)果是否與實(shí)際結(jié)果相符合,以便找出硬件設(shè)計(jì)電路中存在的故障。再調(diào)試D/A轉(zhuǎn)換是否正常。
為提高電路的抗干擾性能,本文采取了一些抗干擾相關(guān)措施。如接線時(shí)的線要盡量短,減少交叉,每個(gè)芯片的電源與地之間接有去擾電容,數(shù)字與模擬地要分開。實(shí)踐結(jié)果表明,此措施對(duì)于消除個(gè)別引腳上的“毛刺”和高頻噪聲方面都得到了較佳的效果。
對(duì)于運(yùn)算放大器進(jìn)行選擇時(shí),通常輸出頻率可以達(dá)到上千赫茲,這就要求放大器的帶寬滿足特定要求。所以,在進(jìn)行調(diào)試濾波的電路和進(jìn)行緩沖的輸出電路中,通常都選擇高速、寬帶運(yùn)算放大器。
3.1.3 綜合調(diào)試
在JTAG模式下,配置數(shù)據(jù)由主機(jī)直接裝載進(jìn)FPGA器件的配置SRAM中,之后只要不掉電FPGA將一直保持配置后的電路功能。在AS模式下,配置數(shù)據(jù)則被裝載到一個(gè)與FPGA相連的配置器件中,之后在加電或重新配置時(shí),這些數(shù)據(jù)可自動(dòng)通過配置器件裝載進(jìn)FPGA,因此FPGA的電路功能可不受掉電影響。這里使用JTAG模式,先確認(rèn)DE2板上的SW19(RUN/PROG)開關(guān)位于RUN位置;然后使用USB線,一端連接到開發(fā)板的J9(BLASTER)口,另一端連接到計(jì)算機(jī)的USB口,開發(fā)板加電。
測(cè)試時(shí),把一個(gè)被干擾的模擬信號(hào)輸入ACD中,采樣得到的數(shù)據(jù)通過FPGA和USB傳輸?shù)接?jì)算機(jī)上,然后用示波器顯示其時(shí)域和頻域圖形,開發(fā)板上電并與電腦連接。在Quartus II里選擇菜單項(xiàng)“Tools”中的“Programmer”。編程器界面顯示了當(dāng)前檢測(cè)到的編程線纜,對(duì)于DE2板應(yīng)為USB-Blaster。如果未顯示,則點(diǎn)擊“Hardware Setup”按鈕查看并檢查線是否插好。
配置模式選擇JTAG,然后找到與工程對(duì)應(yīng)的.sof文件(SRAM Object File),在“Program/Configure”一欄打勾。點(diǎn)擊“Start”開始配置。點(diǎn)擊“確定”,完成FPGA器件的配置。此后,切換開關(guān)SW0和改變按鍵KEY0的狀態(tài)可以正確控制LEDG0的亮與滅,說明整個(gè)設(shè)計(jì)過程正確。
3.2 仿真結(jié)果
將仿真出來的vwf文件轉(zhuǎn)化成Matlab可以讀取的數(shù)據(jù)文件送到Matlab中查看結(jié)果。可以把vwf文件另存為tbl文件,這個(gè)文件的格式很簡(jiǎn)單(功能仿真時(shí)),在Matlab中編寫簡(jiǎn)單的程序就可讀出仿真結(jié)果,反過來也可以在Matlab中生成tbl文件然后轉(zhuǎn)化成vwf文件作為輸入。在Matlab中輸出的結(jié)果如圖6所示。
本文針對(duì)模擬濾波器設(shè)計(jì)靈活性差且不能兼顧數(shù)據(jù)通信的并行和速度等問題,結(jié)合無線傳感器網(wǎng)絡(luò)信道的特點(diǎn),完成了基于FPGA的無線傳感器網(wǎng)絡(luò)信道波形整形濾波器的設(shè)計(jì)。將要實(shí)現(xiàn)的設(shè)計(jì)進(jìn)行編程與時(shí)序仿真,建立相應(yīng)數(shù)據(jù)的存儲(chǔ)查表,通過對(duì)存儲(chǔ)器中程序的調(diào)用以及對(duì)片選的設(shè)定和ROM中波形的調(diào)用,輸出所想要的波形,實(shí)現(xiàn)了波形整形硬件平臺(tái)通過USB接口與主機(jī)的通信。實(shí)際測(cè)試結(jié)果表明,該波形整形濾波器符合預(yù)期的設(shè)計(jì)目標(biāo),具有低成本、頻率可擴(kuò)展、即插即用等優(yōu)點(diǎn),使用方便。
參考文獻(xiàn)
[1] 楊慶.基于VHDL與CPLD器件的FIR數(shù)字濾波器的設(shè)計(jì)[J].湖北民族學(xué)院學(xué)報(bào),2009,31(2):23-56.
[2] 袁輝.基于FPGA的數(shù)字信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2011,37(9):67-69.
[3] 劉鋒,裴紅星,王青三.工業(yè)無線傳感器網(wǎng)絡(luò)信道特征研究[J].鄭州大學(xué)學(xué)報(bào)(理學(xué)版),2011,43(4):39-43.
[4] 喻應(yīng)芝,王愛華,周榮花.基于現(xiàn)場(chǎng)可編程器件的全數(shù)字成形濾波器實(shí)現(xiàn)[J].北京理工大學(xué)學(xué)報(bào),2010,32(4):32-45.
[5] BAKULA C J.Low-power pulse-shaping filter desing using hardware-specific[D].Akron:Master of Science,2010:7-10.
[6] 江健康.基于Verilog HDL的FIR數(shù)字濾波器設(shè)計(jì)與仿真[J].微計(jì)算機(jī)信息,2011,21(3):11-34.