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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于PN序列幀的同步分析及FPGA實現(xiàn)

          基于PN序列幀的同步分析及FPGA實現(xiàn)

          作者: 時間:2012-04-13 來源:網(wǎng)絡(luò) 收藏

          由于PN和AWGN以及d(n)的相關(guān)性很小,所以上式中的最后兩項可以近似為0,從第一項可以看出,當PN和包含在每個符號中的PN求相關(guān)后在符號的邊界處會出現(xiàn)峰值,該峰值可用來實現(xiàn)符號或定時。為了實現(xiàn)頻偏估計還必須對相關(guān)值移位相乘,即:
          f.jpg
          式(4)中λ[n,0]表示符號起點的估計值,K表示PN序列的長度,一般而言PN序列的長度和符號的長度一致,但如果在一個符號內(nèi)疊加k=N/K個相同的PN序列就可以得到更大的頻偏估計范圍,頻偏估計范圍可表示為:g.jpg
          圖2顯示了該算法的系統(tǒng)實現(xiàn)框圖。接收信號與已知的PN序列求相關(guān),PN序列的長度假設(shè)為N,然后將求相關(guān)后的值存儲在長度為N+1的寄存器內(nèi),求其共軛值,并與后N位的值相乘。

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

          l.jpg


          在多徑信道下,用該算法也能較好地實現(xiàn)同步。這是由于用于同步的符號中沒有包括數(shù)據(jù)符號,不會對PN序列產(chǎn)生干擾;PN序列良好的自相關(guān)性使得用于幀起點判決的峰值非常尖銳,PN序列越長相關(guān)性越好,峰值的能量越大,抗AWGN的能力越強。

          2 算法實現(xiàn)
          實現(xiàn)框圖如圖3所示,數(shù)據(jù)序列通過讀寫寄存器與已知事先存儲的PN序列進行相關(guān)運算,讀寫寄存器是雙端的128×16位RAM,PN序列參考IEEE802.11a長訓(xùn)練符號同步序列(N=52),這里采用128個采樣點,即
          PN={1,1,-1,-1,1,1,-1,1,-1,1,1,1,1,1,1,-1,……1,1,1,1}
          這128位相關(guān)性極強的一系列數(shù)據(jù),按地址位編輯成后綴為*mif文件,一旦上電啟動就寫入ROM中,讀地址在讀取RAM的數(shù)據(jù)時同時也就能依次讀出ROM數(shù)據(jù),然后做兩者的相關(guān)運算,兩路信號經(jīng)過相關(guān)運算送到下一級求其共軛,共軛結(jié)果與后來的輸入延時128位的復(fù)數(shù)數(shù)據(jù)再一一相乘,然后進入求移位相關(guān)峰的最大值模塊。若連續(xù)出現(xiàn)若干個最大峰值,Controler的標志位置高,表明系統(tǒng)可以進行解調(diào)處理或者FFT。另外,系統(tǒng)的使能和清零信號也由Controler產(chǎn)生。

          h.jpg



          關(guān)鍵詞: FPGA 序列 分析

          評論


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