<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 數字匹配濾波器的優(yōu)化設計與FPGA實(shí)現

數字匹配濾波器的優(yōu)化設計與FPGA實(shí)現

作者: 時(shí)間:2007-12-25 來(lái)源:網(wǎng)絡(luò ) 收藏
摘要:介紹在直接序列擴頻通信中應用匹配實(shí)現m序列同步,分析其具體結構,詳細討論了其基于(現場(chǎng)可編程門(mén)陣列)的性能優(yōu)化。結果表明,匹配實(shí)現時(shí),能夠大大減少資源占用,并提高工作效率。
關(guān)鍵詞:;匹配;直接序列擴頻


1 引言
在通信系統中,匹配濾波器的應用十分廣泛,尤其在擴頻通信如在CDMA系統中,用于偽隨機序列(通常是m序列)的同步捕獲。
匹配濾波器是擴頻通信中的關(guān)鍵部件,它的性能直接影響到通信的質(zhì)量。本文從數字匹配濾波器的理論及結構出發(fā),討論了它在數字通信直擴系統中的應用,并對其基于FPGA的具體實(shí)現進(jìn)行了優(yōu)化。

2 數字匹配濾波捕獲技術(shù)
在直接序列擴頻解擴系統中,數字匹配濾波器的捕獲是以接收端擴頻碼序列作為數字FIR濾波器的抽頭系數,對接收到的信號進(jìn)行相關(guān)濾波,濾波輸出結果進(jìn)入門(mén)限判決器進(jìn)行門(mén)限判決,如果超過(guò)設定門(mén)限,表明此刻本地序列碼的相位與接收擴頻序列碼的相位達到同步。如果并未超過(guò)設定門(mén)限,則表明此刻本地序列碼的相位與接收到的擴頻序列碼的相位不同步,需要再次重復相關(guān)運算,直到同步為止,如圖l所示。

數字匹配濾波器由移位寄存器、乘法器和累加器組成,這只是FIR濾波器的結構形式,只不過(guò)偽碼寄存器中的系數為-1或+1,實(shí)際并不是真正意義上的乘法。偽碼寄存器中的數據可以由一種偽隨機序列發(fā)生器產(chǎn)生。
數字匹配濾波器的表達式為:


其中,x(n)為輸入信號;h(-i)為濾波系數,由接收端擴頻碼決定,取值-1或+1,m序列碼元為1,取值為+l,m序列碼元為O,取值為-1。匹配濾波器的長(cháng)度N等于擴頻比,也就是對于每一信息符號的擴頻碼元數,即Tb/Tc。當輸入信號{x(n)}與本地擴頻碼{h(-i)}匹配時(shí),時(shí)輸出Z達到最大,超出預先設定的門(mén)限,表示捕獲成功。
很顯然,數字匹配濾波器中的關(guān)鍵部件是乘法器和累加器,而移位寄存器可以由信號的相互移位來(lái)實(shí)現,例如要實(shí)現8 bit串行數據的移位。假設輸入數據序列為din,移位寄存器中的信號為dO,d1,d2,d3,d4,d5,d6,d7,用VHDL語(yǔ)言中的進(jìn)程語(yǔ)句實(shí)現程序為:


每來(lái)一個(gè)時(shí)鐘信號,信號同時(shí)改變1次,這就實(shí)現了和移位寄存器相同的功能。這樣的進(jìn)程實(shí)現并不需要太多的邏輯單元。
所以影響資源占用和工作效率的主要是乘法器和累加器。下面討論就乘法器和累加器分別加以討論,研究其對資源和效率的影響。


3 乘法器
由于此處采用的是0,1的二進(jìn)制系統,所以將邏輯0映射為實(shí)際電平-l,邏輯l映射為實(shí)際電平+1.也就是偽碼寄存器中的系數。
移位寄存器抽頭輸出為有符號二進(jìn)制補碼,采用乘法器實(shí)現相乘運算時(shí),如果偽碼較長(cháng),則需要耗費太多的邏輯單元且運行速度過(guò)慢。
已經(jīng)知道,一個(gè)數乘以l不改變原值,而乘以-l則改變符號,因為移位寄存器抽頭系數只能是1和-1,可以考慮用二進(jìn)制的補碼運算來(lái)代替相乘1和-1運算,這就避免了相乘運算對資源的大量耗費,并能提高運算速度。
可以看到,偽碼寄存器中的系數為+1或-l,如對移位抽頭輸出進(jìn)行乘1運算,相當于不改變原補碼值,而對移位抽頭輸出進(jìn)行乘-1運算,則相當于對原補碼數值改變符號,并對低位二進(jìn)制碼元求其補碼值。下面證明上述結論。
假設二進(jìn)制補碼數為


最高位xn-1為符號位,其取值為0或1,0代表正數,1代表負數。
不失一般性,設xn-2,xn-3,x1,x0均為l,x2到xn-4均設為0,則二進(jìn)制補碼數x的后n-1位代表的真值為

2n-2+2n-3+21+20
當最高位xn-1=O時(shí),若移位抽頭輸出系數為1,則x代表的正數乘1后仍然是xn-2+2n-3+21+20,正數的補碼表示還是x。
若移位抽頭輸出系數為-1.x代表的正數和-1相乘后變?yōu)樨摂?,取x的后n-1位的樸碼值,可以表示為2n-4+2n-3+…+23+20,改變x最高位的符號位為1.取2n-4+2n-3+…+23+20的二進(jìn)制表示作為x的后(n-1)位,即為x與-l相乘的補碼表示;
當最高位xn-1=1時(shí),若移位抽頭輸出系數為1,則x代表的負數乘l后的真值仍然是x的后n-l位的補碼值2n-4+2n-3+…+23+20,負數的補碼表示還是x。
若移位抽頭輸出系數為-1,x代表的負數和-l相乘后變?yōu)檎龜?,取x的后n-l位的補碼值,可以表示為2n-4+2n-3+…+23+20,改變x最高位的符號位為0,取2n-4+2n-3+…+23+20的二進(jìn)制表示作為x的后(n-1)位,即為x與-1相乘的補碼表示。
結論成立,二進(jìn)制求補運算代替乘法器的處理框圖為如圖2所示。

綜上所述,在數字匹配濾波器中,因為濾波系數即移位抽頭系數取值只能為1或-1,所以將有符號數的二進(jìn)制補碼的乘法運算變?yōu)榍笱a碼運算是完全可行的,這就避免了乘法運算對于資源的大量需求,運算速度也可大大提高。
在補碼運算中,對每個(gè)移位抽頭輸出同時(shí)并行運算,并在后兩個(gè)時(shí)鐘得到并行求補碼運算輸出數據。
傳統設計乘法器時(shí),輸入n1,n2位的2路有符號補碼,結果輸出為nl+n2位二進(jìn)制補碼數據。
隨著(zhù)移位寄存器輸入有符號二進(jìn)制補碼矢量數據,時(shí)鐘改變一次,移位寄存器每個(gè)抽頭輸出均和相應的抽頭系數做一次相乘運算。
求補碼運算代替乘法器時(shí),不同于傳統的乘法器設計,寄存器中每一數據只需求其補碼即可,省略了相乘運算。從根本上說(shuō).用求補代替相乘運算只是功能相同,但可以大大減少資源浪費并提高運算速度,所以有很大的應用優(yōu)勢。

4 累加器
數字匹配濾波器的移位寄存器每一級抽頭進(jìn)行1次乘法運算,結果輸出到累加器進(jìn)行累加,當運算到最后一級時(shí),輸出累加結果,送入門(mén)限判決器進(jìn)行判決。
當對2個(gè)二進(jìn)制補碼相加時(shí),若2個(gè)加數都為B bit,考慮到數據可能溢出,則加法器的輸出只需要(B+1)bit;而當3個(gè)bit二進(jìn)制補碼相加時(shí),輸出則需要(B+2)bit。通過(guò)觀(guān)察可以發(fā)現:2N個(gè)B bit二進(jìn)制補碼的值可以用(B+N)bit二進(jìn)制表示。
4.1 傳統的累加器設計
考慮到傳統累加器數據可能溢出,故將數據位展寬,比如在本仿真中,63個(gè)4位有符號補碼求和,最后結果最多為4+6位,其中4為每一加數的位數,因為2664,故擴展位為6位。所以計算,如果數據位不足10位,正數在數據前加O,負數在數據前加1,這樣每一數據都是10位(包括符號位),不用考慮溢出問(wèn)題,完全用62個(gè)10位加法器可以實(shí)現。
4.2 較優(yōu)的累加器設計
隨著(zhù)移位級數的增加,加法器的位數當然也要相應增加,第1級加法器用(B+1)位,第2、3級用(B+2)位,第4級到第7級用(B+3)位,后面依次類(lèi)推。這樣設計,每一級并沒(méi)有用考慮溢出結果的最多位的加法器,而是遞推增加,可以減少資源浪費。
4.3 優(yōu)化的累加器設計
將匹配濾波器的乘法器輸出數據進(jìn)行分組,并執行加法運算,第一級的加法器用(B+1)位,第二級用位,第三級用(B+3)位,后面依次類(lèi)推。每一級的加法器數量是前面的大約一半,依幾何級數遞減,這樣的設計在低位相加時(shí)用了較多的加法器并以幾何級數遞減,也就避免了高位相加的資源浪費。
以63位m序列為例,設有符號補碼數為B位:
將前62位輸入分為2組,每一組輸入和另一組中相應輸入作相加運算,總共用到31個(gè)(B+1)位加法器;
余l位輸入和31個(gè)(B+1)位加法器輸出再次分組,用到16個(gè)(B+2)位加法器;
16個(gè)(B+2)位加法器輸出再次分組,用到8個(gè)(B+3)位加法器;
16個(gè)(B+2)位加法器輸出再次分組,用到8個(gè)(B+3)位加法器;
8個(gè)(B+2)位加法器輸出再次分組,用到4個(gè)(B+4)位加法器;
4個(gè)(B+4)位加法器輸出再次分組,用到2個(gè)(B+5)位加法器;
2個(gè)(B+5)位加法器輸出再次分組,用到1個(gè)(B+6)位加法器。
63位累加器占用加法器的比較如表1所示。

較優(yōu)累加器的運算形式是串行,而優(yōu)化累加器的運算形式是并行。
可以很明顯看出,優(yōu)化的累加器比較優(yōu)的累加器更能減少資源占用,運行效率也可大大提高。
4.4 Quatus模塊化設計法
Quatus仿真軟件的MegaWizard Plug-In Manag-er中提供了parallel_add模塊,用戶(hù)可以自由設計輸入數據位寬,累加數據個(gè)數,定義累加輸入數據類(lèi)型,模塊最終自動(dòng)生成適當位寬的數據輸出(考慮了所有的數據溢出)。
與上面的累加器設計比較,這樣的設計很方便,可讀性強,程序簡(jiǎn)練。實(shí)際中邏輯單元占用也不是很多,只比上面多出10%左右。所以,如果不是特別關(guān)注資源占用問(wèn)題,這樣的設計也不失為一種好方法。

5 仿真實(shí)驗
筆者通過(guò)Quatus仿真實(shí)驗驗證了優(yōu)化數字匹配濾波器的性能。
仿真中采用Altera公司的FPGA,利用6級線(xiàn)性移位反饋寄存器生成長(cháng)度為63的m序列。
圖3是數字匹配濾波器的2個(gè)周期的相關(guān)同步過(guò)程,圖4是放大后的相關(guān)同步。

在本次仿真中,clk為時(shí)鐘信號,address為地址信號,輸入信號為din,數字匹配濾波器抽頭信號為m。為了方便起見(jiàn),做了2個(gè)只讀存儲器din_rom和m_rom。din_rom中存儲了63 bit的m序列的二進(jìn)制補碼表示作為輸入,其中0表示11,l表示Ol,16進(jìn)制表示分別為3和l。m_rom中存儲了63 bit m序列的二進(jìn)制碼元,作為數字匹配濾波器的抽頭同步模塊的輸入。result為計算出的相關(guān)值,tongbu為同步信號。
每來(lái)一個(gè)時(shí)鐘脈沖,地址加1,依次讀取din_rom中的數據,圖4中的地址為10進(jìn)制表示。m_rom地址始終置“0”,圖3和圖4中是m_rom中二進(jìn)制數據的16進(jìn)制表示。
63級移位濾波器同時(shí)做補碼運算,當m_rom輸出的二進(jìn)制矢量位為1時(shí),不改變相應位原補碼值,矢量位為0時(shí),求其相反數(-1的相反數為1,1的相反數為-1)的補碼值。將相關(guān)門(mén)限設為63,當同步未完成時(shí),相關(guān)值信號result的16進(jìn)制表示為FF,二進(jìn)制即為1111lll(1表示正數);當同步完成時(shí),相關(guān)值信號result的16進(jìn)制表示為3F,二進(jìn)制即為0111111(0表示正數)。
每個(gè)時(shí)鐘脈沖,計算1次相關(guān)系數,并和判決門(mén)限比較,高于門(mén)限表示完成同步捕獲,否則表示沒(méi)有同步,繼續運算,直到達到同步為止。


6 結束語(yǔ)
本文從理論和實(shí)踐方面分別討論了數字匹配濾波器在設計中遇到的問(wèn)題,仿真實(shí)驗證明該設計在節省硬件資源和提高工作效率方面都有其突出的優(yōu)點(diǎn)。

數字通信相關(guān)文章:數字通信原理


電源濾波器相關(guān)文章:電源濾波器原理


數字濾波器相關(guān)文章:數字濾波器原理


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>