《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于VerilogHDL濾波器的設(shè)計(jì)
基于VerilogHDL濾波器的設(shè)計(jì)
中電網(wǎng)
摘要: VerilogHDL是目前應(yīng)用最廣泛的一種硬件描述語(yǔ)言,,用于數(shù)字電子系統(tǒng)的設(shè)計(jì),??捎盟M(jìn)行各種級(jí)別的邏輯設(shè)計(jì),,并進(jìn)行數(shù)字邏輯系統(tǒng)的仿真驗(yàn)證,時(shí)序分析,,邏輯綜合,。小波濾波器的設(shè)計(jì)屬于復(fù)雜算法的電路設(shè)計(jì),因此利用Veril—ogHDL對(duì)雙正交小波濾波器進(jìn)行建模,、仿真,,實(shí)現(xiàn)電路的自動(dòng)化設(shè)計(jì),將是一種較為理想的方法,。
關(guān)鍵詞: SoPC 濾波器 VerilogHDL
Abstract:
Key words :

現(xiàn)代計(jì)算機(jī)和通信系統(tǒng)中廣泛采用數(shù)字信號(hào)處理的技術(shù)和方法,,其基本思路是先把信號(hào)用一系列的數(shù)字來(lái)表示,然后對(duì)這些數(shù)字信號(hào)進(jìn)行各種快速的數(shù)學(xué)運(yùn)算,。其目的是多種多樣的,,有的是為了加密,,有的是為了去掉噪聲等無(wú)關(guān)的信息,稱為濾波,;有時(shí)也把某些種類的數(shù)字信號(hào)處理運(yùn)算成為變換,如離散的傅里葉變換,,小波變換等,。VerilogHDL是目前應(yīng)用最廣泛的一種硬件描述語(yǔ)言,用于數(shù)字電子系統(tǒng)的設(shè)計(jì),??捎盟M(jìn)行各種級(jí)別的邏輯設(shè)計(jì),并進(jìn)行數(shù)字邏輯系統(tǒng)的仿真驗(yàn)證,,時(shí)序分析,,邏輯綜合。小波濾波器的設(shè)計(jì)屬于復(fù)雜算法的電路設(shè)計(jì),,因此利用Veril—ogHDL對(duì)雙正交小波濾波器進(jìn)行建模,、仿真,實(shí)現(xiàn)電路的自動(dòng)化設(shè)計(jì),,將是一種較為理想的方法,。

Verilog HDL介紹

Verilog HDL是一種硬件描述語(yǔ)言,是一種以文本形式來(lái)描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的語(yǔ)言,,用它可以表示邏輯電路圖,、邏輯表達(dá)式,還可以表示數(shù)字邏輯系統(tǒng)所完成的邏輯功能,。 Verilog HDL和VHDL是目前世界上最流行的兩種硬件描述語(yǔ)言,,都是在20世紀(jì)80年代中期開發(fā)出來(lái)的。前者由Gateway Design Automation公司開發(fā),。兩種HDL均為IEEE標(biāo)準(zhǔn),。

Verilog HDL就是在用途最廣泛的C語(yǔ)言的基礎(chǔ)上發(fā)展起來(lái)的一種硬件描述語(yǔ)言,它是由GDA公司的PhilMoorby在1983年末首創(chuàng)的,,最初只設(shè)計(jì)了一個(gè)仿真與驗(yàn)證工具,,之后又陸續(xù)開發(fā)了相關(guān)的故障模擬與時(shí)序分析工具。1985年Moorby推出它的第三個(gè)商用仿真器Verilog-XL,獲得了巨大的成功,,從而使得Verilog HDL迅速得到推廣應(yīng)用,。1989年CADENCE公司收購(gòu)了GDA公司,使得VerilogHDL成為了該公司的獨(dú)家專利,。1990年CADENCE公司公開發(fā)表了Verilog HDL,并成立LVI組織以促進(jìn)Verilog HDL成為IEEE標(biāo)準(zhǔn),,即IEEE Standard 1364-1995.

Verilog HDL的最大特點(diǎn)就是易學(xué)易用,如果有C語(yǔ)言的編程經(jīng)驗(yàn),,可以在一個(gè)較短的時(shí)間內(nèi)很快的學(xué)習(xí)和掌握,,因而可以把Verilog HDL內(nèi)容安排在與ASIC設(shè)計(jì)等相關(guān)課程內(nèi)部進(jìn)行講授,,由于HDL語(yǔ)言本身是專門面向硬件與系統(tǒng)設(shè)計(jì)的,這樣的安排可以使學(xué)習(xí)者同時(shí)獲得設(shè)計(jì)實(shí)際電路的經(jīng)驗(yàn),。與之相比,,VHDL的學(xué)習(xí)要困難一些。但Verilog HDL較自由的語(yǔ)法,,也容易造成初學(xué)者犯一些錯(cuò)誤,,這一點(diǎn)要注意。

l 小波濾波器的設(shè)計(jì)

對(duì)于小波函數(shù),,要求它具有正交性,、緊支集、對(duì)稱性和平滑性,。正交性可以使變換無(wú)冗余,;緊支集則帶來(lái)優(yōu)良的空間分辨率;對(duì)稱性保證了與其對(duì)應(yīng)濾波器的相位為線性,;平滑性可以產(chǎn)生較小的失真,。這樣使離散二進(jìn)小波變換受到很大的限制,為此,,人們提出一種雙正交的小波變換,。本文設(shè)計(jì)小波濾波器正是基于雙正交小波變換的一種雙通道完全重構(gòu)濾波器,因此可以對(duì)信號(hào)進(jìn)行分解后實(shí)現(xiàn)精確重構(gòu),,所以對(duì)信號(hào)的濾波有很好的作用,。由于它具有正變換二元上抽樣采樣和反變換二元下抽樣采樣特性,在進(jìn)行濾波器設(shè)計(jì)時(shí)可以將雙正交小波濾波器設(shè)計(jì)成具有多相結(jié)構(gòu)的雙通道完全重構(gòu)濾波器,。雙正交小波變換可以看成原始信號(hào)通過一系列高低通濾波器濾波并經(jīng)過抽樣后所得到的結(jié)果,,重構(gòu)過程與此相反。為了使變換后的信號(hào)能夠完全重建,,須滿足Y(n)=x-kX(n),,在這里取k=1。雙正交小波濾波器分解和重構(gòu)過程如圖1所示,。



設(shè)G(z),,H(z)分別為分解低通,高通濾波器,,下采樣后用H(z)濾波等價(jià)于先用H(z2)濾波,,然后下采樣,所以:



其中:Ge和Go分別是G(z)的偶數(shù)項(xiàng)和奇數(shù)項(xiàng),,He和H,。分別是H(z)的偶數(shù)項(xiàng)和奇數(shù)項(xiàng)。根據(jù)式(1),式(2)可以建立雙正交小波濾波器的多相結(jié)構(gòu)模型如圖2所示,。



下面對(duì)雙正交小波濾波器用VerilogHDL進(jìn)行頂層設(shè)計(jì):



對(duì)于雙正交小波濾波器的部件Ge,,Go,He,,Ho設(shè)計(jì),,采用行為描述方式進(jìn)行設(shè)計(jì)。VerilogHDL行為描述語(yǔ)言作為一種結(jié)構(gòu)化和過程性的語(yǔ)言,,其語(yǔ)法結(jié)構(gòu)非常適合于算法級(jí)和RTL級(jí)的模型設(shè)計(jì),。在Veril—ogHDL語(yǔ)言中行為描述分為算法和RTL兩種。算法級(jí):用語(yǔ)言提供的高級(jí)結(jié)構(gòu)能夠?qū)崿F(xiàn)算法的運(yùn)行模型,。RTL級(jí):描述數(shù)據(jù)在寄存器之間的流動(dòng)和如何處理,控制這些數(shù)據(jù)的流動(dòng),,采用改進(jìn)的DA算法(如圖3所示),。DA算法完成一次濾波所需要B次的累加也就是B個(gè)時(shí)鐘周期完成一次運(yùn)算,B位輸入數(shù)據(jù)的位寬,。它的查找表(LUT)的大小是由濾波器的階數(shù)N決定的,,共需要2N個(gè)查找表單元,如果系數(shù)N過多,,用單個(gè)LUT不能夠執(zhí)行全字查找則可把系數(shù)分組,,利用部分表并將結(jié)果相加,為了簡(jiǎn)單的闡述算法,,在此系數(shù)只分了2組,,每個(gè)單元的位寬是由濾波器的系數(shù)的量化決定的。Ge,,Go,,He,Ho四個(gè)濾波器雖然長(zhǎng)度不同,,但具有相同的電路結(jié)構(gòu),,如圖4所示。





計(jì)算控制器用于控制濾波單元中移位寄存器移位,,累加器的循環(huán)周期和計(jì)算輸出,,并控制移位寄存器的數(shù)據(jù)輸入。

2 利用VerilogHDL語(yǔ)言實(shí)現(xiàn)以上功能

2.1 用VerilogHDL語(yǔ)言進(jìn)行算法建模

計(jì)算機(jī)控制器的veril—ogHDL模型:

寄存器組中每個(gè)寄存器的位數(shù)為0,,1,,…,num一1,。


 


2.2 定制ROM

QuartusⅡ包含有許多有用的LPM模塊,,它們是復(fù)雜或高級(jí)系統(tǒng)構(gòu)建的重要組成部分,可以與QuartusⅡ普通設(shè)計(jì)文件一起使用,該文使用“Tools”菜單下的MegaWizardPlug—In Manager命令定制ROM的元件,。如圖5所示,。



2.3 用VerilogHDL進(jìn)行數(shù)據(jù)流建模

濾波器的建模過程如下:



3 驗(yàn)證仿真

利用Altera公司的QuartusⅡ7.2軟件內(nèi)部帶有仿真器對(duì)濾波器的VerilogHDL模型進(jìn)行波形仿真,通過建立正確的Vector Waveform File就可以開始仿真了,。如圖6所示,。



通過QuartusⅡ的波形仿真功能,對(duì)輸入輸出進(jìn)行波形仿真,,對(duì)其結(jié)果進(jìn)行定量分析,。通過時(shí)序分析和功能分析結(jié)果,對(duì)設(shè)計(jì)進(jìn)行進(jìn)一步的完善,。在仿真中,,in—put濾波器輸入數(shù)據(jù),output濾波器輸入數(shù)據(jù)x0,,x1,,x2,x3,,x4為移位寄存器組中寄存器,,count為控制計(jì)數(shù)器,table-in為流水線寄存器,。所得結(jié)果如圖6所示,。經(jīng)驗(yàn)證,仿真結(jié)果和實(shí)際運(yùn)算結(jié)果一致,。所以對(duì)于大多數(shù)連續(xù)的LTI系統(tǒng)都可以采用以上方法進(jìn)行分析,,但是他也有局限性:對(duì)于時(shí)變系統(tǒng),非線性系統(tǒng)分析,,它無(wú)能為力,;只適合分析一維變量,對(duì)于多維變量,,它無(wú)能為力,;可采用狀態(tài)變量分析方法;就精確度來(lái)說(shuō),,這種分析方法不是很高,。

盡管連續(xù)LTI系統(tǒng)有很多缺點(diǎn),但是通過對(duì)LTI系統(tǒng)的分析可以培養(yǎng)系統(tǒng)建模和求解能力,,為以后分析其他系統(tǒng)作參考,。

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。