国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于折疊結(jié)構(gòu)的半帶濾波器的設(shè)計(jì)*

2010-12-21 06:27葉巧文
電子器件 2010年1期
關(guān)鍵詞:加法器同步控制結(jié)點(diǎn)

葉巧文,林 偉

(1.福建省微電子與集成電路重點(diǎn)實(shí)驗(yàn)室, 福州350002;2.福建省微電子與集成電路重點(diǎn)實(shí)驗(yàn)室,福州 350002)

作為軟件無線電的核心技術(shù)[1]——上下變頻技術(shù)[2]可以通過專用芯片來實(shí)現(xiàn)。目前市場(chǎng)上的DDC、DUC品種很多,盡管這些專業(yè)芯片的功能強(qiáng)大但其價(jià)格昂貴,工作參數(shù)配置非常的復(fù)雜,且由于當(dāng)前的通信制式多種多樣,專用芯片無法完全滿足軟件無線電系統(tǒng)的性能指標(biāo)。而FPGA,即現(xiàn)場(chǎng)可編程門陣列,擁有豐富的邏輯資源,可編程性強(qiáng),可以用于復(fù)雜的數(shù)字信號(hào)處理[3-6]比如卷積、相關(guān)和濾波等等,為此采用FPGA[7-8]來實(shí)現(xiàn)數(shù)字上下變頻是目前軟件無線電通信系統(tǒng)的主要實(shí)現(xiàn)方案。

數(shù)字上下變頻由各種多采樣率數(shù)字濾波器組成,常見的濾波器有CIC濾波器、半帶濾波器、FIR整形濾波器等。半帶濾波器(Half-Band)是一種特殊的FIR濾波器,由于其系數(shù)的對(duì)稱性以及將近一半系數(shù)為零值,這使得其濾波運(yùn)算過程中乘法次數(shù)減少近3/4,加法次數(shù)減少近一半,同時(shí)用于存儲(chǔ)系數(shù)的存儲(chǔ)器也減少了一半,因此半帶濾波器是個(gè)高效的數(shù)字濾波器,特別適合實(shí)現(xiàn)2的冪次方倍的抽取或者內(nèi)插,有計(jì)算效率高,實(shí)時(shí)性強(qiáng)等特點(diǎn)。流行的半帶濾波器系統(tǒng)級(jí)設(shè)計(jì)方法主要是在MATLAB環(huán)境下根據(jù)設(shè)計(jì)要求搭建系統(tǒng),用system generator系統(tǒng)設(shè)計(jì)工具,將模型直接轉(zhuǎn)化成代碼,然后進(jìn)行調(diào)用,此方法實(shí)現(xiàn)起來比較簡(jiǎn)單,一般能夠滿足要求但其存在著功耗高、面積大、資源耗費(fèi)代價(jià)高等不足之處。為了彌補(bǔ)上述不足,本設(shè)計(jì)首先根據(jù)設(shè)計(jì)要求用MATLAB產(chǎn)生相應(yīng)的濾波器系數(shù),然后采用折疊結(jié)構(gòu),通過代碼[9-10]編寫來實(shí)現(xiàn)。

1 半帶濾波器的設(shè)計(jì)原理

半帶濾波器(HB)是一種特殊的FIR濾波器,其頻率響應(yīng)滿足公式1的FIR濾波器。

FIR濾波器可以表示為:

根據(jù)公式2,通常半帶濾波器 可以采用直接型或者轉(zhuǎn)置型結(jié)構(gòu)來實(shí)現(xiàn)。由于h(k)=h(N-1-k),采用轉(zhuǎn)置型結(jié)構(gòu)可以減少乘法器以及加法器的使用,其結(jié)構(gòu)圖如圖1所示。

圖1 轉(zhuǎn)置型FIR濾波器的結(jié)構(gòu)圖

2 基于折疊結(jié)構(gòu)的半帶濾波器的設(shè)計(jì)

2.1 折疊技術(shù)的原理

半帶濾波器用作抽取器使用時(shí),其輸出速率為輸入速率的一半,即輸出速率與系統(tǒng)時(shí)鐘頻率是1∶2的關(guān)系,因此可以把轉(zhuǎn)置型的半帶濾波器進(jìn)行折疊,折疊因子為2。為了使得折疊后時(shí)序不會(huì)出錯(cuò),我們首先得算出折疊后各結(jié)點(diǎn)之間的延遲值,延遲可按照公式3進(jìn)行計(jì)算。

其中DF(u→v)指折疊后功能單元u的輸出到功能單元v的輸入所經(jīng)過的延時(shí)數(shù), N為折疊因子即折疊后功能單元迭代的次數(shù), w(e)是折疊前功能單元u和功能單元v之間的延時(shí)數(shù), Pu是功能單元u的流水級(jí)數(shù), v和u分別是功能單元v和u的編號(hào)。計(jì)算出各個(gè)結(jié)點(diǎn)延遲值后我們就可以得到相應(yīng)的結(jié)構(gòu)圖,然后根據(jù)結(jié)構(gòu)圖編寫代碼。在下采樣當(dāng)中采用折疊技術(shù),可以大大減少乘法器的使用,減少大量的乘法運(yùn)算,減少了面積和功耗。

2.2 基于折疊結(jié)構(gòu)的半帶濾波器的設(shè)計(jì)

下面以一個(gè)基于折疊結(jié)構(gòu)的11階半帶濾波器的設(shè)計(jì)為例來說明設(shè)計(jì)的可行性及優(yōu)越性。

2.2.1 設(shè)計(jì)指標(biāo)

設(shè)計(jì)指標(biāo):系統(tǒng)時(shí)鐘為61.44 MHz,半帶濾波器的階數(shù)11 階,系數(shù)為定點(diǎn)18位,濾波器通帶要求1.23 M,阻帶位置要求為30.72-1.75=28.97 M。

2.2.2 下采樣數(shù)據(jù)率變換

半帶濾波器作為抽取器[12]使用時(shí),其抽取因子為2,即輸出速率為輸入速率的一半,也就是說輸出速率與系統(tǒng)時(shí)鐘頻率是1:2的關(guān)系。為了采用折疊技術(shù),同時(shí)也方便整個(gè)濾波過程的時(shí)序控制,首先我們利用系統(tǒng)時(shí)鐘產(chǎn)生一個(gè)同步控制信號(hào)contr_rw。同步控制信號(hào)contr_rw的初始值為1,在每個(gè)系統(tǒng)時(shí)鐘上升沿到來時(shí),其值在0與1之間進(jìn)行跳變,其它時(shí)候數(shù)值保持不變,也就是說在第一個(gè)系統(tǒng)時(shí)鐘上升沿到來時(shí), contr_rw的值由1跳變?yōu)?,此值一直保持著,直到第二個(gè)系統(tǒng)時(shí)鐘上升沿到來時(shí), contr_rw的值才由0跳變?yōu)?,同樣此值也一直保持到第三個(gè)系統(tǒng)時(shí)鐘上升沿到來時(shí)才發(fā)生跳變。由此可見contr_rw的值只有在系統(tǒng)時(shí)鐘上升沿到來時(shí)才發(fā)生跳變,為此我們可以用此同步控制信號(hào)作為分路器(DEMUX)的選通開關(guān)把輸入數(shù)據(jù)分成奇、偶2個(gè)通道,以此達(dá)到下采樣數(shù)據(jù)率變換。當(dāng)系統(tǒng)時(shí)鐘上升沿到來時(shí),如果同步控制信號(hào)contr_rw的值為0,則把輸入數(shù)據(jù)送入奇通道,此時(shí)偶通道送入的是0值;如果contr_rw的值為1,則把輸入數(shù)據(jù)送入偶通道,此時(shí)奇通道送入的是0值;緊接著在經(jīng)過兩級(jí)的數(shù)據(jù)率穩(wěn)定之后,奇、偶2個(gè)通道的數(shù)據(jù)率均為系統(tǒng)時(shí)鐘頻率的一半,也就是說此時(shí)奇、偶通道均為每?jī)蓚€(gè)時(shí)鐘變化一次數(shù)據(jù)。根據(jù)公式2,我們知道此11階半帶濾波器的輸出為:

由此表達(dá)式我們知道x(n)h0、x(n-2)h2、x(n-4)h4、x(n-6)h4、x(n-8)h2、x(n-10)h0是根據(jù)奇通道數(shù)據(jù)產(chǎn)生的, x(n-5)h5是根據(jù)偶通道數(shù)據(jù)產(chǎn)生的。為了節(jié)約資源同時(shí)也為后續(xù)的折疊技術(shù)的應(yīng)用,系數(shù)h2、h4采用分時(shí)復(fù)用技術(shù),當(dāng)同步控制信號(hào)contr_rw的值為0時(shí)產(chǎn)生系數(shù)h4、contr_rw的值為1時(shí)產(chǎn)生系數(shù)h2。

2.2.3 各結(jié)點(diǎn)延時(shí)單元計(jì)算

首先我們把設(shè)計(jì)當(dāng)中用到的每個(gè)乘法器和加法器都當(dāng)成一個(gè)結(jié)點(diǎn),在應(yīng)用折疊技術(shù)之前我們必須先知道各結(jié)點(diǎn)之間的延時(shí)值。如圖1所示我們標(biāo)注好每個(gè)結(jié)點(diǎn)的編號(hào),為了讓其結(jié)構(gòu)具有對(duì)稱性,我們把圖1當(dāng)中的結(jié)點(diǎn)12當(dāng)成是一個(gè)加法器,此加法器的輸入分別為:0值和結(jié)點(diǎn)8的輸出值。由于時(shí)鐘頻率是輸出速率的2倍,因此折疊因子N=2,此時(shí)所有編號(hào)為奇數(shù)的結(jié)點(diǎn)其u或者v值均為0,所有編號(hào)為偶數(shù)的結(jié)點(diǎn)其u或者v值均為1,根據(jù)公式3我們可以算出各個(gè)關(guān)鍵結(jié)點(diǎn)之間的延遲值為:DF(5→6)=5、DF(6→7)=3、DF(7→8)=3、DF(8→12)=0、DF(12→11)=1、DF(11→10)=5、DF(10→9)=3。根據(jù)這些延遲值,我們知道完成一次的濾波工作需要22個(gè)系統(tǒng)時(shí)鐘和20個(gè)D觸發(fā)器。為了能夠以最快的速度完成濾波功能,這時(shí)可以引入重定時(shí)技術(shù)對(duì)D觸發(fā)器進(jìn)行分配,在滿足時(shí)序的情況下減少D觸發(fā)器的使用,從而減少延遲。重定時(shí)后各結(jié)點(diǎn)的延遲值為:DF(5→6)=3、DF(6→7)=1、DF(7→8)=1、DF(8→12)=0、DF(12→11)=1、DF(11→10)=3、DF(10→9)=1,也就是說采用重定時(shí)以后完成一次的濾波工作只需11個(gè)系統(tǒng)時(shí)鐘和10個(gè)D觸發(fā)器。于是根據(jù)這些延遲值我們便得到了折疊結(jié)構(gòu)的結(jié)構(gòu)圖,如圖2所示。

圖2 基于折疊結(jié)構(gòu)的半帶濾波器的結(jié)構(gòu)圖

2.2.4 時(shí)序分析

圖2當(dāng)中的0表示同步控制信號(hào)contr_rw的值為0, 1表示同步控制信號(hào)contr_rw的值為1,為了方便分析,我們把圖2當(dāng)中的加法器按照從左到右,從上到下的順序依次編號(hào)為加法器1、加法器2、加法器3、加法器4,用fm0mul_w表示通道送給加法器1的輸入, 用 fm0add_r表示加法 器 1 的輸出;用fm1mul_w表示通道送給加法器2的輸入,用fm1add_r表示加法器2的輸出,其它類推。接下來簡(jiǎn)要的分析下該設(shè)計(jì)是如何工作的。

第一個(gè)時(shí)鐘Clock1:同步控制信號(hào)contr_rw的值為0,通道送入加法器1的數(shù)據(jù)為x(0)h0,加法器1的另一個(gè)輸入值為0,此時(shí)加法器1 的輸出值為x(0)h0;通道送入加法器2的數(shù)據(jù)為x(0)h4;通道送入加法器3的數(shù)據(jù)為x(0)h0;通道送入加法器4的數(shù)據(jù)為x(0)h4。

第二個(gè)時(shí)鐘Clock2:同步控制信號(hào)contr_rw的值為1,通道送入加法器1的數(shù)據(jù)為x(0)h2;通道送入加法器2的數(shù)據(jù)為x(1)h5;通道送入加法器3的數(shù)據(jù)為x(0)h2;送入加法器4的數(shù)據(jù)為0。

第三個(gè)時(shí)鐘Clock3、第四個(gè)時(shí)鐘Clock4、第五個(gè)時(shí)鐘Clock5、第六個(gè)時(shí)鐘Clock6可按照此方法依此類推,具體時(shí)序參見表1。

第七個(gè)時(shí)鐘Clock7:同步控制信號(hào)contr_rw的值為0,通道送入加法器1的數(shù)據(jù)為x(6)h0,加法器1的另一個(gè)輸入值為0,此時(shí)加法器1 的輸出值為x(6)h0;通道送入加法器2 的數(shù)據(jù)為x(6)h4,在Clock6產(chǎn)生的fm0add_r經(jīng)過1個(gè)時(shí)鐘延時(shí)成為此時(shí)刻加法器2的另外一個(gè)輸入值,于是此時(shí)加法器2的輸出值為x(2)h0+x(4)h2+x(6)h4;通道送入加法器3的數(shù)據(jù)為x(6)h0;通道送入加法器4的數(shù)據(jù)為x(6)h4,在Clock6產(chǎn)生的fm3add_r經(jīng)過1個(gè)時(shí)鐘延時(shí)成為此時(shí)刻加法器4的另外一個(gè)輸入值,于是此時(shí)加法器4的輸出值為x(0)h0+x(2)h2+x(4)h4+x(5)h5+x(6)h4。

第八個(gè)時(shí)鐘Clock8、第九個(gè)時(shí)鐘Clock9、第十個(gè)時(shí)鐘Clock10 可以按此方法類推, 具體時(shí)序參見表1。

第十一個(gè)時(shí)鐘Clock11:同步控制信號(hào)contr_rw的值為0,通道送入加法器1 的數(shù)據(jù)為x(10)h0,加法器1 的另一個(gè)輸入值為0, 此時(shí)加法器1的輸出值為x(10)h0;通道送入加法器2的數(shù)據(jù)為x(10)h4,在Clock10 產(chǎn)生的fm0add_r經(jīng)過1個(gè)時(shí)鐘延時(shí)成為此時(shí)刻加法器2 的另外一個(gè)輸入值,于是此時(shí)加法器2的輸出值為x(6)h0+x(8)h2+x(10)h4;通道送入加法器4的數(shù)據(jù)為x(10)h4,在Clock10產(chǎn)生的fm3add_r經(jīng)過1個(gè)時(shí)鐘延時(shí)成為此時(shí)刻加法器4的另外一個(gè)輸入值,于是此時(shí)加法器4的輸出值為x(4)h0+x(6)h2+x(8)h4+x(9)h5+x(10)h4。通道送入加法器3的數(shù)據(jù)為x(10)h0,在Clock10產(chǎn)生的fm2add_r經(jīng)過1個(gè)時(shí)鐘延時(shí)成為此時(shí)刻加法器3的另外一個(gè)輸入值,于是此時(shí)加法器3的輸出值為x(0)h0+x(2)h2+x(4)h4+x(5)h5+x(6)h4+x(8)h2+x(10)h0。

以上是基于折疊結(jié)構(gòu)的11階半帶濾波器一個(gè)完整的濾波過程。具體的各個(gè)結(jié)點(diǎn)的時(shí)序如表1所示。

表1 時(shí)序表

3 仿真與實(shí)現(xiàn)

本設(shè)計(jì)采用Verilog語言編寫,所采用的芯片是Xilinx公司的xc4vsx35-10ff668,用ISE10.1 和Modelsim進(jìn)行仿真驗(yàn)證。仿真結(jié)果、綜合報(bào)告圖如圖3、圖4所示。從圖3我們可以看出采用折疊技術(shù)的半帶濾波器,其系數(shù)的產(chǎn)生以及最終濾波器的輸出完全正確,完全滿足我們的設(shè)計(jì)要求。傳統(tǒng)的直接型半帶濾波器的設(shè)計(jì)單單濾波過程,不包括系數(shù)的產(chǎn)生和抽取過程,需要10個(gè)D觸發(fā)器、7個(gè)乘法器、6個(gè)加法器,而轉(zhuǎn)置型半帶濾波器則需要10個(gè)D觸發(fā)器、4個(gè)乘法器、7 個(gè)加法器。然而從圖4我們可以看到整個(gè)半帶濾波器耗費(fèi)的資源相當(dāng)?shù)纳?,總共用?3 個(gè)加法器, 16個(gè)寄存器。而由此可見采用折疊結(jié)構(gòu)實(shí)現(xiàn)半帶濾波器的設(shè)計(jì)能夠大大減少資源的耗費(fèi), 而且整個(gè)過程沒有用到乘法器只是用到少量的加法器和寄存器,減少了大量的乘法帶來的額外的面積和功耗。同時(shí)本設(shè)計(jì)還經(jīng)過硬件電路的驗(yàn)證,工作正常穩(wěn)定,符合設(shè)計(jì)要求。

圖3 基于折疊結(jié)構(gòu)的11階半帶濾波器仿真圖

圖4 基于折疊結(jié)構(gòu)的11階半帶濾波器綜合報(bào)告圖

4 結(jié)論

本文以11階半帶濾波器的設(shè)計(jì)為例,介紹了折疊技術(shù)在半帶濾波器上的應(yīng)用。與傳統(tǒng)的設(shè)計(jì)相比其有很大的優(yōu)越性和突破,單一時(shí)鐘控制,并且設(shè)計(jì)過程當(dāng)中沒用到乘法器,大大減少了硬件資源,同時(shí)也使設(shè)計(jì)面積和功耗大為減少, 穩(wěn)定性高!

[ 1] 成建暉.未來移動(dòng)通信的軟件無線電實(shí)現(xiàn)的研究[ D] .杭州:浙江大學(xué), 2002.

[ 2] 趙國(guó)棟,郭德淳.基于FPGA的數(shù)宇中頻接收系統(tǒng)[ M] .北京:北京理工大學(xué)出版社, 2006.

[ 3] 胡廣書.數(shù)字信號(hào)處理理論、算法與實(shí)現(xiàn)[ M] .北京:清華大學(xué)出版社, 1997:281-296.

[ 4] 萬國(guó)龍.數(shù)字信號(hào)處理[ M] .北京:清華人學(xué)出版社, 2007.

[ 5] 程佩清.數(shù)字信號(hào)處理教程[ M] .2版.北京:清華大學(xué)出版社, 2006.

[ 6] UweMeyer-Baese.數(shù)字信號(hào)處理的FPGA實(shí)現(xiàn)[ M] .劉凌,譯.北京:清華大學(xué)出版社, 2006.

[ 7] 陳勇.基于FPGA實(shí)現(xiàn)高速專用數(shù)字下變頻[ D].成都:電子科技大學(xué)碩士論文, 2005.

[ 8] 劉海兵,劉雄飛,張德恒.基于FPGA的數(shù)字濾波器的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù), 2006, 29(15):70-70.

[ 9] 王金明.數(shù)字系統(tǒng)設(shè)計(jì)與Verilog HDL[ M] .2版.北京:電子工業(yè)出版社, 2005.

[ 10] Michael D.Ciletti.Verilog HDL高級(jí)數(shù)字設(shè)計(jì)[ M] .張雅綺,李鏘,譯.北京:電子下業(yè)出版社, 2005.

[ 11] 郭曉宇.基于FPGA實(shí)現(xiàn)FIR數(shù)字濾波器的研究[D] .武漢:武漢大學(xué), 2004.

[ 12] 瑪立,姚遠(yuǎn)程,張胡平.軟件無線電接收機(jī)的多速率處理技術(shù)研究[J] .微計(jì)算機(jī)信息, 2008, (8):283-284.

猜你喜歡
加法器同步控制結(jié)點(diǎn)
分段式高性能近似加法器設(shè)計(jì)
基于八數(shù)碼問題的搜索算法的研究
淺析基于verilog 的加法器設(shè)計(jì)
Ladyzhenskaya流體力學(xué)方程組的確定模與確定結(jié)點(diǎn)個(gè)數(shù)估計(jì)
基于EtherCAT網(wǎng)絡(luò)的金剛線多線切割機(jī)雙主軸同步控制
三旋光結(jié)構(gòu)一步無進(jìn)位加法器的設(shè)計(jì)
條件推測(cè)性十進(jìn)制加法器的優(yōu)化設(shè)計(jì)
基于云模型的舵機(jī)同步控制
基于廣義預(yù)測(cè)的雙轉(zhuǎn)動(dòng)掃描系統(tǒng)同步控制
基于Raspberry PI為結(jié)點(diǎn)的天氣云測(cè)量網(wǎng)絡(luò)實(shí)現(xiàn)