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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 數(shù)頻率校正的FPGA實(shí)現(xiàn)

          數(shù)頻率校正的FPGA實(shí)現(xiàn)

          作者: 時(shí)間:2010-11-15 來源:網(wǎng)絡(luò) 收藏

          O 引言
          在無線電接收機(jī)系統(tǒng)中,由于會受到發(fā)射機(jī)運(yùn)動(dòng)、接收機(jī)運(yùn)動(dòng)和標(biāo)準(zhǔn)隨時(shí)間動(dòng)態(tài)變化等因素的影響,其接收機(jī)接收信號往往會發(fā)生偏移,因而需要進(jìn)行頻偏。在擴(kuò)頻通信系統(tǒng)中,頻偏電路能消除中頻偏移對接收機(jī)擴(kuò)頻碼的捕獲以及數(shù)據(jù)解調(diào)性能的影響,從而提高接收機(jī)的性能。
          頻偏電路中通常需要根據(jù)給定相位產(chǎn)生余弦信號和正弦信號,其中最重要的實(shí)現(xiàn)技術(shù)是CORDIC (Coordinate Rotation Digital Computer,坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算機(jī))算法。本文將詳細(xì)分析CORDIC算法的原理及其實(shí)現(xiàn)方法。

          1 CORDIC算法的基本原理
          在直角坐標(biāo)系統(tǒng)中,假設(shè)有一向量(x,y),按逆時(shí)針方向旋轉(zhuǎn)φ度得到向量(x1,y1),則兩向量的代數(shù)關(guān)系為:

          在式(1)中,如果讓旋轉(zhuǎn)的角度φ滿足條件:tanφ=±2-i,則式(1)中的乘法操作就可以轉(zhuǎn)換為移位操作,從而很容易在中實(shí)現(xiàn)。圖l所示是直角坐標(biāo)下的向量旋轉(zhuǎn)示意圖。若需要旋轉(zhuǎn)的角度為θ,那么就可以通過n次旋轉(zhuǎn)一系列預(yù)定角度αi來完成。

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



          (2)式中,di表示每次旋轉(zhuǎn)的方向?yàn)?alpha;i。由于每次旋轉(zhuǎn)都為預(yù)定角度值,所以cosαi為常數(shù),而n次旋轉(zhuǎn)中每次迭代的處理可表示為:


          一般情況下,當(dāng)旋轉(zhuǎn)的次數(shù)足夠大時(shí),Ki一般為常數(shù)。由于在實(shí)現(xiàn)時(shí),可在最終的計(jì)算結(jié)果中再乘以這一常數(shù),所以,可以去掉式(3)中的Ki,這樣,迭代方程就僅含移位和加法運(yùn)算,從而大大的簡化了的實(shí)現(xiàn)復(fù)雜性。由于還需要一個(gè)方程決定di的符號,引入變量zi表示每次旋轉(zhuǎn)預(yù)定角度的累加值:

          這樣,CORDIC算法的迭代方程可表示為:

          其最終結(jié)果為:

          在頻偏校正電路中,通常需要根據(jù)給定相位θ產(chǎn)生余弦信號cosθ和正弦信號sinθ。為了產(chǎn)生標(biāo)準(zhǔn)且無放大的正弦和余弦信號,可令輸入向量的y分量(即yo)為0,x分量(即xo)為1/An,這樣,式(6)就可簡化為:

          可見,經(jīng)過上述處理就可將輸入相位zo轉(zhuǎn)換為標(biāo)準(zhǔn)的正弦和余弦信號。


          上一頁 1 2 下一頁

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