<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的DS/CDMA解擴(kuò)解調(diào)模塊設(shè)計(jì)與實(shí)現(xiàn)

          基于FPGA的DS/CDMA解擴(kuò)解調(diào)模塊設(shè)計(jì)與實(shí)現(xiàn)

          ——
          作者:葉又元 鄭世寶 時(shí)間:2007-08-14 來源:微計(jì)算機(jī)信息 收藏
              在CDMA系統(tǒng)中,用于基站信號(hào)轉(zhuǎn)發(fā)的接收機(jī)是一個(gè)核心模塊,一臺(tái)接收機(jī)只是處理一路用戶的解擴(kuò)解調(diào)顯然是不合理的,為了提高接收機(jī)的效率和降低成本,有必要設(shè)計(jì)一種多路CDMA信號(hào)通用解擴(kuò)解調(diào)平臺(tái)。而具有功能強(qiáng)大,開發(fā)工程投資小,周期短,可反復(fù)編程修改,保密性能好,開發(fā)工具智能化等優(yōu)點(diǎn),本項(xiàng)目決定采用作為設(shè)計(jì)平臺(tái);本文首先建立了CDMA信號(hào)的擴(kuò)頻調(diào)制與解擴(kuò)解調(diào)系統(tǒng)模型,然后提出設(shè)計(jì)這樣一個(gè)多路CDMA信號(hào)通用解擴(kuò)解調(diào)平臺(tái)。該平臺(tái)將保證處理CDMA解擴(kuò)解調(diào)的通用性,既可以將此平臺(tái)用在CDMA信號(hào)蜂窩基站的建設(shè)上,也可以用在CDMA衛(wèi)星地面的基站建設(shè)上。

          DS/CDMA解擴(kuò)解調(diào)系統(tǒng)原理框圖

            圖1 解擴(kuò)解調(diào)系統(tǒng)原理框圖

            1  信號(hào)解擴(kuò)解調(diào)的系統(tǒng)模型

            根據(jù)國(guó)際上信號(hào)發(fā)展的現(xiàn)狀,我們希望設(shè)計(jì)一個(gè)可以對(duì)DS/CDMA信號(hào)進(jìn)行解擴(kuò)解調(diào)的通用平臺(tái),該平臺(tái)的系統(tǒng)模型如圖1所示:

            分析該系統(tǒng)模型在不考慮噪聲與干擾的情況下,該系統(tǒng)的輸入信號(hào)=,經(jīng)正交下變頻到基帶:

          正交下變頻到基帶

            將上式中各相關(guān)運(yùn)算項(xiàng)分別記作:
          運(yùn)算項(xiàng)分別記作

            差分
                   2  基于來設(shè)計(jì)CDMA解擴(kuò)解調(diào)的過程SOC開發(fā)

          平臺(tái)499元 S3C4

            設(shè)備實(shí)現(xiàn)基于第三代移動(dòng)系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)基礎(chǔ),采用大規(guī)模FPGA作為設(shè)備實(shí)現(xiàn)的硬件平臺(tái),可作為直接序列擴(kuò)頻/碼分多址信號(hào)接收的通用處理平臺(tái)。擬定CDMA解擴(kuò)解調(diào)模塊的總體方案框圖如圖2.1所示。

            中頻AGC單元控制70MHz中頻輸入信號(hào)的輸入能量,經(jīng)器件AD6640采樣后送入FPGA信號(hào)處理模塊進(jìn)行數(shù)字下變頻到I/Q路基帶,再將I/Q路基帶信號(hào)送入并行檢測(cè)模塊進(jìn)行用戶檢測(cè);并行檢測(cè)模塊采用大規(guī)??删幊踢壿嬈骷嗀LTERA公司的EP2C70F672來實(shí)現(xiàn),主要是通過并行匹配濾波器來完成搜索范圍之內(nèi)的PN碼,被檢測(cè)出來的PN碼再反饋送入FPGA信號(hào)處理模塊進(jìn)行解擴(kuò)解調(diào)處理。FPGA信號(hào)處理模塊采用ALTERA公司的EP2S60F672來實(shí)現(xiàn),該部分由16個(gè)模塊組成,每一個(gè)模塊都可以完成地址碼捕獲與跟蹤、相關(guān)解擴(kuò)、相位估計(jì)、基帶解調(diào)等功能,輸出維特比軟判決數(shù)據(jù)信號(hào);主控單元也在EP2S60F672中設(shè)計(jì)實(shí)現(xiàn),該單元完成DDS控制、ADC采樣頻率配置、載頻初始化配置、地址碼配置、工作狀態(tài)檢測(cè)等功能,各種配置與檢測(cè)信息通過接口用計(jì)算機(jī)控制輸入。SOC開發(fā)平臺(tái)499元 S3C44B0 ARM7開發(fā)板378元 S3C2410 ARM9開發(fā)板780元 AT91SAM7S64 ARM7

          CDMA信號(hào)接收設(shè)備總體方案框圖

            圖2 CDMA信號(hào)接收設(shè)備總體方案框圖

            3  幾個(gè)關(guān)鍵模塊的實(shí)現(xiàn)過程

            中頻處理與ADC單元主要由中頻自動(dòng)增益控制、帶通/低通濾波、DDS采樣時(shí)鐘發(fā)生器、中頻ADC采樣這幾個(gè)模塊組成,采用速率是碼片時(shí)鐘N倍的時(shí)鐘作為采樣時(shí)鐘,然后將采樣后的數(shù)據(jù)送入FPGA中。

            基帶接收處理單元由數(shù)字正交下變頻、時(shí)鐘基準(zhǔn)DDS、可控地址碼產(chǎn)生、多路并行地址碼搜索捕獲、數(shù)字內(nèi)插碼片跟蹤、碼分信道估計(jì)(幅度、相位估計(jì)、SIR估計(jì))、多路數(shù)據(jù)相關(guān)解擴(kuò)、差分相干解調(diào)數(shù)據(jù)接口(不含數(shù)據(jù)幀恢復(fù))這些部分組成,主要完成信號(hào)的接收解擴(kuò)解調(diào)功能。

            主控單元主要由初始化配置(載頻配置、地址碼配置、工作狀態(tài)配置)、工作狀態(tài)檢測(cè)(捕獲指示、同步指示、接收狀態(tài)等)、控制接口處理(接口)、RS-232接口等模塊組成。MCU總線與基帶處理單元相連,用于參數(shù)配置控制、工作狀態(tài)信息采集與顯示、外部等功能;接口主要完成硬件和計(jì)算機(jī)的數(shù)據(jù)交換;RS-232接口主要控制液晶的顯示以及鍵盤輸入。

              結(jié)束語:基于DS/CDMA信號(hào)解擴(kuò)解調(diào)的基本原理,結(jié)合大規(guī)模邏輯器件FPGA的優(yōu)點(diǎn),本文作者創(chuàng)新的提出設(shè)計(jì)一個(gè)通用的解擴(kuò)解調(diào)平臺(tái),該平臺(tái)既可以用于CDMA信號(hào)蜂窩基站接收機(jī)的核心模塊,也可以用于衛(wèi)星CDMA信號(hào)的解擴(kuò)解調(diào);該平臺(tái)已經(jīng)在基站接收機(jī)上得到了應(yīng)用和驗(yàn)證,實(shí)踐證明該模塊搜索速度快,同時(shí)解擴(kuò)解調(diào)的用戶數(shù)達(dá)到了16個(gè),解擴(kuò)解調(diào)的效率極高。由于該模塊采用ALTERA公司的大規(guī)模FPGA器件,所以很容易轉(zhuǎn)換成用于ASIC電路,有很廣闊的應(yīng)用價(jià)值。

          cdma相關(guān)文章:cdma原理




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();