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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于802.16d的定時同步算法 改進(jìn)及FPGA實(shí)現(xiàn)

          基于802.16d的定時同步算法 改進(jìn)及FPGA實(shí)現(xiàn)

          作者: 時間:2009-12-08 來源:網(wǎng)絡(luò) 收藏

          2.2 互相關(guān)法
          由于IEEE 協(xié)議中的前導(dǎo)字具有良好的互相關(guān)特性,故可用已知的訓(xùn)練序列和接收序列做滑動互相關(guān)。當(dāng)已知的訓(xùn)練序列和接收的訓(xùn)練序列恰好對齊時,便會產(chǎn)生一個峰值,峰值對準(zhǔn)的位置正是訓(xùn)練符號的起始點(diǎn)。因此,可以通過尋找互相關(guān)的峰值位置來做精確的定時同步。算法公式如下:

          式中,c(n)為短訓(xùn)練符號在本地的復(fù)制樣本,N為短訓(xùn)練符號的樣值點(diǎn)數(shù)。當(dāng)已知的訓(xùn)練序列和接收訓(xùn)練序列恰好對齊時,也會產(chǎn)生一個峰值,其仿真曲線如圖1中的實(shí)曲線所示。該算法的缺點(diǎn)是易受頻偏的影響。
          根據(jù)以上分析,并從算法性能上考慮,若采用延遲自相關(guān)法,幀到達(dá)時會出現(xiàn)一個峰值平臺,該方法并不能確定幀到達(dá)的準(zhǔn)確時刻;而采用與本地序列互相關(guān)算法又容易受到頻偏的影響而導(dǎo)致定時偏差。

          本文引用地址:http://www.ex-cimer.com/article/191862.htm


          3 算法改進(jìn)
          針對上述算法的不足,可對其加以改進(jìn),以保證同時具有良好的性能和硬件實(shí)現(xiàn)的可行性。改進(jìn)算法是將兩種算法結(jié)合起來進(jìn)行聯(lián)合估計,首先確定一個幀到達(dá)的大致平臺,再在這個平臺內(nèi)找到互相關(guān)峰值,如果各個峰值間隔相等,那么可根據(jù)最后一個峰值來判斷下一個符號的開始。這種聯(lián)合估計的辦法在軟件仿真時具有良好的性能,但若要在硬件上實(shí)現(xiàn)則比較困難。因?yàn)樵谘訒r自相關(guān)算法中,計算M(n)的值雖然可采用迭代算法,每次計算只需1次復(fù)數(shù)運(yùn)算和若干加法運(yùn)算;但在自相關(guān)計算中,假設(shè)接收信號被定點(diǎn)化為16位整數(shù),那么計算一次自相關(guān)的值需要16位數(shù)據(jù)的64次復(fù)數(shù)乘法,顯然,所需要的硬件資源開銷非常大,而且會影響系統(tǒng)的運(yùn)行速度。這在硬件上,因資源消耗太大而無法實(shí)現(xiàn)。為了兼顧算法的估計精度和實(shí)現(xiàn)的復(fù)雜性,有必要將算法做進(jìn)一步改進(jìn)。即對接收數(shù)據(jù)進(jìn)行二階量化以得到d[n]=Q[r(n)],其中Q表示復(fù)數(shù)量化器,見下式:

          利用這種改進(jìn)的自相關(guān)算法和延時自相關(guān)算法進(jìn)行聯(lián)合估計的仿真曲線如圖2所示。

          將圖1和圖2進(jìn)行對比可知,這種對接收數(shù)據(jù)二階量化的方法會損耗算法的性能,但是,由于幀的大致位置已被限制在一定范圍之內(nèi),因此,只需根據(jù)峰值就可以確定下一個OFDM符號的準(zhǔn)確位置。這種方法既能保證估計精度,又能滿足硬件資源利用率的要求。



          關(guān)鍵詞: FPGA 802 16d 定時同步算法

          評論


          相關(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); })();