




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 國(guó)外電子元器件 2006年第 5期 2006年 5月 主題論文1引言在通信系統(tǒng)中 , 匹配濾波器的應(yīng)用十分廣泛 , 尤其在擴(kuò)頻通信如在 CDMA 系統(tǒng)中 , 用于偽隨機(jī)序列 (通常是 m 序列 的同步捕獲 。 匹配濾波器是擴(kuò)頻通信中的關(guān)鍵部件 , 它的性 能直接影響到通信的質(zhì)量 。 本文從數(shù)字匹配濾波器 的理論及結(jié)構(gòu)出發(fā) , 討論了它在數(shù)字通信直擴(kuò)系統(tǒng) 中的應(yīng)用 , 并對(duì)其基于 FPGA 的具體實(shí)現(xiàn)進(jìn)行了優(yōu) 化 。2數(shù)字匹配濾波捕獲技術(shù)在直接序列擴(kuò)頻解擴(kuò)系統(tǒng)中 , 數(shù)字匹配濾波器的捕獲是以接收端擴(kuò)頻碼序列作為數(shù)字 FIR 濾波 器的抽頭系數(shù) , 對(duì)接收到的信號(hào)進(jìn)行相關(guān)濾波 , 濾波 輸出結(jié)果
2、進(jìn)入門(mén)限判決器進(jìn)行門(mén)限判決 , 如果超過(guò)設(shè)定門(mén)限 , 表明此刻本地序列碼的相位與接收擴(kuò)頻 序列碼的相位達(dá)到同步 。 如果并未超過(guò)設(shè)定門(mén)限 , 則 表明此刻本地序列碼的相位與接收到的擴(kuò)頻序列碼 的相位不同步 , 需要再次重復(fù)相關(guān)運(yùn)算 , 直到同步為 止 , 如圖 1所示 。數(shù)字匹配濾波器由移位寄存器 、 乘法器和累加 器組成 , 這只是 FIR 濾波器的結(jié)構(gòu)形式 , 只不過(guò)偽數(shù)字匹配濾波器的優(yōu)化設(shè)計(jì)與 FPGA 實(shí)現(xiàn)(王 光 1, 田 斌 1, 吳 勉 2,易克初 1, 田紅心 1(1. 西安電子科技大學(xué) 綜合業(yè)務(wù)網(wǎng)國(guó)家重點(diǎn)實(shí)驗(yàn)室 , 陜西 西安 710071;2. 深圳通創(chuàng)通信有限公司 , 廣
3、東 深圳 518001摘要 :介紹在直接序列擴(kuò)頻通信中應(yīng)用數(shù)字匹配濾波器實(shí)現(xiàn) m 序列同步 , 分析其具體結(jié)構(gòu) , 詳細(xì)討 論了其基于 FPGA (現(xiàn)場(chǎng)可編程門(mén)陣列 的性能優(yōu)化 。 結(jié)果表明 , 數(shù)字匹配濾波器用 FPGA 實(shí)現(xiàn)時(shí) , 能夠大大減少資源占用 , 并提高工作效率 。 關(guān)鍵詞 :FPGA ; 數(shù)字匹配濾波器 ; 直接序列擴(kuò)頻中圖分類號(hào) :TN713文獻(xiàn)標(biāo)識(shí)碼 :A文章編號(hào) :1006-6977(2006 05-0070-04Digital matching filter s optimization designingand FPGA implementationWANG Guan
4、g 1, TIAN Bin 1,WU Mian 2, YI Ke-chu 1, TIAN Hong-xin 1(1. National Key Laboratory of Integrated Services Networks, Xidian University, Xi an 710071, China;2. Shenzhen NewCom Telecommunications Co. , Ltd, Shenzhen 518001, ChinaAbstract:The m-sequence s synchronous capturing in direct sequence spread
5、spectrum system by us-ing digital matching filter is described, its realization structure is analyzed and its optimization imple-mentation is discussed in detail.The result shows that the optimization digital matching filter can de-crease the resource occupation greatly and increase working efficien
6、cy.Key words:FPGA ; digital matching filter; direct sequence spread spectrum圖 1數(shù)字匹配濾波器的結(jié)構(gòu)圖-70-碼寄存器中的系數(shù)為 -1或 +1, 實(shí)際并不是真正意義 上的乘法 。 偽碼寄存器中的數(shù)據(jù)可以由一種偽隨機(jī) 序列發(fā)生器產(chǎn)生 。數(shù)字匹配濾波器的表達(dá)式為 :其中 , x(n 為輸入信號(hào) ; h(-i 為濾波系數(shù) , 由接收 端擴(kuò)頻碼決定 , 取值 -1或 +1, m 序列碼元為 1, 取值 為 +1, m 序列碼元為 0, 取值為 -1。 匹配濾波器的長(zhǎng) 度 N 等于擴(kuò)頻比 , 也就是對(duì)于每一信息符號(hào)的擴(kuò)頻 碼元
7、數(shù) , 即 T b /T c 。 當(dāng)輸入信號(hào) x(n與本地?cái)U(kuò)頻碼 h(-i匹配時(shí) , 時(shí)輸出 Z 達(dá)到最大 , 超出預(yù)先設(shè)定的門(mén)限 , 表示捕獲成功 。很顯然 , 數(shù)字匹配濾波器中的關(guān)鍵部件是乘法 器和累加器 , 而移位寄存器可以由信號(hào)的相互移位 來(lái)實(shí)現(xiàn) , 例如要實(shí)現(xiàn) 8bit 串行數(shù)據(jù)的移位 , 假設(shè)輸 入數(shù)據(jù)序列為 din, 移位寄存器中的信號(hào)為 d0, d1,d2, d3, d4, d5, d6, d7, 用 VHDL 語(yǔ)言中的進(jìn)程語(yǔ)句實(shí)現(xiàn)程序?yàn)?1:process(clk beginif(clk event and clk= 1 thend7<=d6; d6<=d5; d
8、5<=d4; d4<=d3; d3<=d2; d2<=d1; d1<=d0; d0<=din; end if; end process;每來(lái)一個(gè)時(shí)鐘信號(hào) , 信號(hào)同時(shí)改變 1次 , 這就實(shí) 現(xiàn)了和移位寄存器相同的功能 。 這樣的進(jìn)程實(shí)現(xiàn)并 不需要太多的邏輯單元 。所以影響資源占用和工作效率的主要是乘法器 和累加器 。 下面討論就乘法器和累加器分別加以討 論 , 研究其對(duì)資源和效率的影響 。3乘法器由于此處采用的是 0, 1的二進(jìn)制系統(tǒng) , 所以將邏輯 0映射為實(shí)際電平 -1, 邏輯 1映射為實(shí)際電平 +1, 也就是偽碼寄存器中的系數(shù) 。移位寄存器抽頭輸出為有
9、符號(hào)二進(jìn)制補(bǔ)碼 , 采 用乘法器實(shí)現(xiàn)相乘運(yùn)算時(shí) , 如果偽碼較長(zhǎng) , 則需要耗 費(fèi)太多的邏輯單元且運(yùn)行速度過(guò)慢 。已經(jīng)知道 , 一個(gè)數(shù)乘以 1不改變?cè)?, 而乘以 -1則改變符號(hào) , 因?yàn)橐莆患拇嫫鞒轭^系數(shù)只能是 1和 -1, 可以考慮用二進(jìn)制的補(bǔ)碼運(yùn)算來(lái)代替相乘 1和 -1運(yùn)算 , 這就避免了相乘運(yùn)算對(duì)資源的大量耗 費(fèi) , 并能提高運(yùn)算速度 。可以看到 , 偽碼寄存器中的系數(shù)為 +1或 -1, 如 對(duì)移位抽頭輸出進(jìn)行乘 1運(yùn)算 , 相當(dāng)于不改變?cè)a(bǔ) 碼值 , 而對(duì)移位抽頭輸出進(jìn)行乘 -1運(yùn)算 , 則相當(dāng)于 對(duì)原補(bǔ)碼數(shù)值改變符號(hào) , 并對(duì)低位二進(jìn)制碼元求其 補(bǔ)碼值 。 下面證明上述結(jié)論 2。
10、假設(shè)二進(jìn)制補(bǔ)碼數(shù)為x=x n-1x n-2x n-3 x 2x 1x 0(2 最高位 x n-1為符號(hào)位 , 其取值為 0或 1, 0代表正數(shù) , 1代表負(fù)數(shù) 。不失一般性 , 設(shè) x n-2, x n-3, x 1, x 0均為 1, x 2到 x n-4均設(shè)為 0, 則二進(jìn)制補(bǔ)碼數(shù) x 的后 n-1位代表的真 值為2n-2+2n-3+21+20當(dāng)最高位 x n-1=0時(shí) , 若移位抽頭輸出系數(shù)為 1, 則 x 代表的正數(shù)乘 1后仍然是 x n-2+2n-3+21+20, 正數(shù)的補(bǔ)碼表示還是 x 。若移位抽頭輸出系數(shù)為 -1, x 代表 的 正 數(shù) 和 -1相乘后變?yōu)樨?fù)數(shù) , 取 x 的后
11、n-1位的補(bǔ)碼值 , 可以表 示為 2n-4+2n-3+ +23+20, 改變 x 最高位的符號(hào)位為1, 取 2n-4+2n-3+ +23+20的二進(jìn)制表示作為 x 的后 (n-1 位 , 即為 x 與 -1相乘的補(bǔ)碼表示 ;當(dāng)最高位 x n-1=1時(shí) , 若移位抽頭輸出系數(shù)為 1, 則 x 代表的負(fù)數(shù)乘 1后的真值仍然是 x 的后 n-1位 的補(bǔ)碼值 2n-4+2n-3+ +23+20, 負(fù)數(shù)的補(bǔ)碼表示還是 x 。若移位抽頭輸出系數(shù)為 -1, x 代表的負(fù)數(shù)和 -1相乘后變?yōu)檎龜?shù) , 取 x 的后 n-1位的補(bǔ)碼值 , 可以表 示為 2n-4+2n-3+ +23+20, 改變 x 最高位的符
12、號(hào)位為0, 取 2n-4+2n-3+ +23+20的二進(jìn)制表示作為 x 的后 (n-1 位 , 即為 x 與 -1相乘的補(bǔ)碼表示 。結(jié)論成立 , 二進(jìn)制求補(bǔ)運(yùn)算代替乘法器的處理 框圖為如圖 2所示 。綜上所述 , 在數(shù)字匹配濾波器中 , 因?yàn)闉V波系數(shù) 即移位抽頭系數(shù)取值只能為 1或 -1, 所以將有符號(hào)數(shù)字匹配濾波器的優(yōu)化設(shè)計(jì)與 FPGA 實(shí)現(xiàn) 國(guó)外電子元器件 2006年第 5期 2006年 5月 圖 2補(bǔ)碼器的結(jié)構(gòu)數(shù)的二進(jìn)制補(bǔ)碼的乘法運(yùn)算變?yōu)榍笱a(bǔ)碼運(yùn)算是完全 可行的 , 這就避免了乘法運(yùn)算對(duì)于資源的大量需求 , 運(yùn)算速度也可大大提高 。在補(bǔ)碼運(yùn)算中 , 對(duì)每個(gè)移位抽頭輸出同時(shí)并行 運(yùn)算 ,
13、并在后兩個(gè)時(shí)鐘得到并行求補(bǔ)碼運(yùn)算輸出數(shù) 據(jù) 。傳統(tǒng)設(shè)計(jì)乘法器時(shí) , 輸入 n1, n2位的 2路有符 號(hào)補(bǔ)碼 , 結(jié)果輸出為 n1+n2位二進(jìn)制補(bǔ)碼數(shù)據(jù) 。隨著移位寄存器輸入有符號(hào)二進(jìn)制補(bǔ)碼矢量數(shù) 據(jù) , 時(shí)鐘改變一次 , 移位寄存器每個(gè)抽頭輸出均和相 應(yīng)的抽頭系數(shù)做一次相乘運(yùn)算 。求補(bǔ)碼運(yùn)算代替乘法器時(shí) , 不同于傳統(tǒng)的乘法 器設(shè)計(jì) , 寄存器中每一數(shù)據(jù)只需求其補(bǔ)碼即可 , 省略 了相乘運(yùn)算 。 從根本上說(shuō) , 用求補(bǔ)代替相乘運(yùn)算只 是功能相同 , 但可以大大減少資源浪費(fèi)并提高運(yùn)算 速度 , 所以有很大的應(yīng)用優(yōu)勢(shì) 。4累加器數(shù)字匹配濾波器的移位寄存器每一級(jí)抽頭進(jìn)行1次乘法運(yùn)算 , 結(jié)果輸出到
14、累加器進(jìn)行累加 , 當(dāng)運(yùn)算到最后一級(jí)時(shí) , 輸出累加結(jié)果 , 送入門(mén)限判決器進(jìn)行 判決 。當(dāng)對(duì) 2個(gè)二進(jìn)制補(bǔ)碼相加時(shí) , 若 2個(gè)加數(shù)都為B bit , 考慮到數(shù)據(jù)可能溢出 , 則加法器的輸出只需要 (B+1 bit ; 而當(dāng) 3個(gè) bit 二進(jìn)制補(bǔ)碼相加時(shí) , 輸出則 需要 (B+2 bit 。 通過(guò)觀察可以發(fā)現(xiàn) :2N 個(gè) B bit 二進(jìn) 制補(bǔ)碼的值可以用 (B+N bit 二進(jìn)制表示 。 4.1傳統(tǒng)的累加器設(shè)計(jì) 考慮到傳統(tǒng)累加器數(shù)據(jù)可能溢出 , 故將數(shù)據(jù)位 展寬 , 比如在本仿真中 , 63個(gè) 4位有符號(hào)補(bǔ)碼求和 , 最后結(jié)果最多為 4+6位 , 其中 4為每一加數(shù)的位 數(shù) , 因?yàn)?
15、26<64, 故擴(kuò)展位為 6位 。 所以計(jì)算 , 如果數(shù) 據(jù)位不足 10位 , 正數(shù)在數(shù)據(jù)前加 0, 負(fù)數(shù)在數(shù)據(jù)前 加 1, 這樣每一數(shù)據(jù)都是 10位 (包括符號(hào)位 , 不用 考慮溢出問(wèn)題 , 完全用 62個(gè) 10位加法器可以實(shí) 現(xiàn) 。4.2較優(yōu)的累加器設(shè)計(jì)隨著移位級(jí)數(shù)的增加 , 加法器的位數(shù)當(dāng)然也要 相應(yīng)增加 , 第 1級(jí)加法器用 (B+1 位 , 第 2、 3級(jí)用 (B+2 位 , 第 4級(jí)到第 7級(jí)用 (B+3 位 , 后面依次類推 。 這樣設(shè)計(jì) , 每一級(jí)并沒(méi)有用考慮溢出結(jié)果的最多位的加法器 , 而是遞推增加 , 可以減少資源浪費(fèi) 。4.3優(yōu)化的累加器設(shè)計(jì)將匹配濾波器的乘法器輸出
16、數(shù)據(jù)進(jìn)行分組 , 并 執(zhí)行加法運(yùn)算 , 第一級(jí)的加法器用 (B+1 位 , 第二級(jí) 用位 , 第三級(jí)用 (B+3 位 , 后面依次類推 。 每一級(jí)的 加法器數(shù)量是前面的大約一半 , 依幾何級(jí)數(shù)遞減 , 這 樣的設(shè)計(jì)在低位相加時(shí)用了較多的加法器并以幾何 級(jí)數(shù)遞減 , 也就避免了高位相加的資源浪費(fèi) 。以 63位 m 序列為例 , 設(shè)有符號(hào)補(bǔ)碼數(shù)為 B 位 :將前 62位輸入分為 2組 , 每一組輸入和另一組 中相應(yīng)輸入作相加運(yùn)算 , 總共用到 31個(gè) (B+1 位加 法器 ;余 1位輸入和 31個(gè) (B+1 位加法器輸出再次 分組 , 用到 16個(gè) (B+2 位加法器 ;16個(gè) (B+2 位加法器
17、輸出再次分組 , 用到 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ùn)算形式是串行 , 而優(yōu)化累加器的運(yùn) 算形式是并行 ??梢院苊黠@看出 , 優(yōu)化的累加器比較優(yōu)的累加-72-器更能減少資源占用 , 運(yùn)行效率也可大大提高 。4.4Quatus 模塊化設(shè)計(jì)
18、法Quatus 仿真軟件的 MegaWizard Plug-In Manag-er 中提供了 parallel_add 模塊 , 用戶可以自由設(shè)計(jì)輸入數(shù)據(jù)位寬 , 累加數(shù)據(jù)個(gè)數(shù) , 定義累加輸入數(shù)據(jù)類 型 , 模塊最終自動(dòng)生成適當(dāng)位寬的數(shù)據(jù)輸出 (考慮了 所有的數(shù)據(jù)溢出 。與上面的累加器設(shè)計(jì)比較 , 這樣的設(shè)計(jì)很方便 , 可讀性強(qiáng) , 程序簡(jiǎn)練 。 實(shí)際中邏輯單元占用也不是 很多 , 只比上面多出 10%左右 。 所以 , 如果不是特別 關(guān)注資源占用問(wèn)題 , 這樣的設(shè)計(jì)也不失為一種好方 法 。5仿真實(shí)驗(yàn)筆者通過(guò) Quatus 仿真實(shí)驗(yàn)驗(yàn)證了優(yōu)化數(shù)字匹配濾波器的性能 。仿真中采用 Altera
19、公司的 FPGA , 利用 6級(jí)線 性移位反饋寄存器生成長(zhǎng)度為 63的 m 序列 。圖 3是數(shù)字匹配濾波器的 2個(gè)周期的相關(guān)同步 過(guò)程 , 圖 4是放大后的相關(guān)同步 。在本次仿真中 , clk 為時(shí)鐘信號(hào) , address 為地址 信號(hào) , 輸入信號(hào)為 din , 數(shù)字匹配濾波器抽頭信號(hào)為m 。 為了方便起見(jiàn) , 做了 2個(gè)只讀存儲(chǔ)器 din_rom 和m_rom 。 din_rom 中存儲(chǔ)了 63bit 的 m 序列的二進(jìn) 制補(bǔ)碼表示作為輸入 , 其中 0表示 11, 1表示 01, 16進(jìn)制表示分別為 3和 1。 m_rom 中存儲(chǔ)了 63bit m 序列的二進(jìn)制碼元 , 作為數(shù)字匹配濾波器的抽頭同 步模塊的輸入 。 result 為計(jì)算出的相關(guān)值 , tongbu 為 同步信號(hào) 。每 來(lái) 一 個(gè) 時(shí) 鐘 脈 沖 , 地 址 加 1, 依 次 讀 取din_rom 中的數(shù)據(jù) , 圖 4中的地址為 10進(jìn)制表示 。m_rom 地址始終置“ 0” , 圖 3和圖 4中是 m_rom 中 二進(jìn)制數(shù)據(jù)的 16進(jìn)制表示 。63級(jí)移位濾波器同時(shí)做補(bǔ)碼運(yùn)算 , 當(dāng) m_rom 輸 出的二進(jìn)制矢量位為 1時(shí) , 不改變相應(yīng)位原補(bǔ)碼值 ,矢量位為 0時(shí) , 求其相反數(shù) (-1的相反數(shù)為 1, 1的 相反數(shù)為 -1 的補(bǔ)碼值 。 將相關(guān)門(mén)限設(shè)為 63, 當(dāng)同步 未完成時(shí) ,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲企業(yè)廚師勞務(wù)派遣與勞動(dòng)權(quán)益合同
- 民航機(jī)場(chǎng)行李搬運(yùn)與安全監(jiān)管協(xié)議
- 寵物銷售服務(wù)合同模板
- 監(jiān)控室接線員培訓(xùn)
- 樂(lè)博樂(lè)博培訓(xùn)
- 簡(jiǎn)單急救知識(shí)培訓(xùn)
- AIDS合并結(jié)核的護(hù)理
- 幼兒園灶房食品安全培訓(xùn)
- 腫瘤免疫治療機(jī)制與應(yīng)用
- 撓骨中段骨折課件
- 《小學(xué)趣味語(yǔ)文》PPT課件(優(yōu)秀)
- 醫(yī)學(xué)免疫學(xué)和病原生物學(xué)理論知識(shí)考核試題及答案
- 勝保養(yǎng)操作手冊(cè)江鈴馭
- 疫苗及其制備技術(shù)課件
- 阿里巴巴公司價(jià)值觀實(shí)施細(xì)則
- 安全防范系統(tǒng)設(shè)計(jì)方案
- 人教版PEP初中八年級(jí)下冊(cè)英語(yǔ)全冊(cè)課件
- 《人衛(wèi)版第九版內(nèi)科學(xué)心力衰竭》課件PPT
- 中國(guó)監(jiān)察制度史
- 竣工驗(yàn)收證書(shū)(模板)
- 寧波大學(xué)抬頭紙
評(píng)論
0/150
提交評(píng)論