《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 無線局域網中CORDIC算法的應用與FPGA實現
無線局域網中CORDIC算法的應用與FPGA實現
2015年微型機與應用第21期
王水魚,丁 洋
(西安理工大學 自動化與信息工程學院,陜西 西安 710001)
摘要: 隨著無線技術的發展,人們對無線網絡的需求越來越大。特別是近幾年來,在局域網通信中,WiFi技術的引入以及其地位的不斷提高,引起人們對無線局域網通信中傳輸速度的研究不斷深入。而在對其探索與設計中,對于信號的偏移角度值的計算(CORDIC)也一直進行著調整與優化。因此,本文以無線局域網中利用CORDIC算法實現數字控制振蕩器(NCO)作為研究重點,并利用FPGA對其進行實現與分析。
Abstract:
Key words :

  摘  要: 隨著無線技術的發展,人們對無線網絡的需求越來越大。特別是近幾年來,在局域網通信中,WiFi技術的引入以及其地位的不斷提高,引起人們對無線局域網通信中傳輸速度的研究不斷深入。而在對其探索與設計中,對于信號的偏移角度值的計算(CORDIC)也一直進行著調整與優化。因此,本文以無線局域網中利用CORDIC算法實現數字控制振蕩器(NCO)作為研究重點,并利用FPGA對其進行實現與分析。

  關鍵詞: 無線局域網;CORDIC算法;NCO;FPGA

0 引言

  1957年J.Volder引入了坐標旋轉數字計算機(Coordinate Rotation Digital Computer)算法,從而開始利用CORDIC算法[1]計算角度的偏移。在上個世紀,由于技術上的限制與落后,利用普通方法去計算角度比較困難,所以使用CORDIC變得非常必要,從而使CORDIC算法得到了推廣與應用。

  現如今,WiFi技術已成為人們生活中不可或缺的一部分,人們對它的依賴使得更多的人開始不斷地對其進行研究與創新。在WiFi通信中,所需信息由于一些噪音干擾會丟失理想的同步特性,角度偏移是其中最大的問題,因此如何能夠快速準確地得到需要的角度偏移信息,進一步消除偏移帶來的負面影響是這項技術的關鍵,從而將CORDIC算法引入NCO[2]中變得非常必要。

  1 CORDIC算法的原理

  設一個矢量(Xi,Yi)旋轉一個角度?茲可以得到一個新的矢量(Xj,Yj)。那么這種旋轉關系可以用如下式(1)表示:

  1.png

001.jpg

  旋轉示意圖如圖1所示。通過迭代的方式,可以用式(2)表示迭代過程:

  2.png

  取每個累加步進值為:I_N8AZ%V1HF}N`U([A8]TTR.jpg,那么總的選擇角度為:51~7)}IVF~~W09AKH_F3F2A.jpg,其中Sn={-1,+1},這里假設Sn為每次迭代所產生的小角度旋轉的方向。通過這個步驟,上面的式(2)可以表示為下式(3):

 JDEGM~Y{})C(7)R({~E9(6H.jpg

2 CORDIC算法在無線局域網中的應用

  在無線局域網通信中,接收信息的準確無誤是無線技術的前提,但是在傳輸過程中,信息會受到白噪聲等一些因素的干擾,變得延遲與失真,因此解決這些不利影響得到通信需要的正確信息便成了無線技術的核心。

  在信息進行無線傳輸時,時頻同步有效地解決了信息失真延遲帶來的影響,特別是在所需信息發生角度偏移時,能有效地去除偏移角度的影響,從而達到同步效果。而同步的關鍵就在于是否能夠正確求得偏移的角度,因此CORDIC算法的使用無疑是無線通信中必不可少的一部分。在此基礎上,既要實現占用資源的減少,又要達到精度與速度的要求,偽旋轉方法從而得到廣泛應用。

  利用CORDIC算法[3]求得的偏移角度值,可以用來實現數字下變頻中的數字控制振蕩器(NCO)[4]的設計,通過逐次逼近的方法實現三角函數的計算,從而便可以在后續設計中去除掉偏移載波帶來的影響,達到時頻同步的要求。用此方法實現NCO的最大優勢在于僅做加減和移位運算,結合流水線,便可以在每一個時鐘周期輸出一個經過n次迭代的結果,而對于旋轉的精度要求,一般情況下,旋轉10次便可以滿足無線局域網傳輸的精度要求,旋轉次數越高,精度越高,得到的結果更加趨近于真實值。

3 算法在FPGA上的實現

  利用上述CORDIC方法[5],可以將乘以的正切項變成移位操作,通過一次次的移位與疊加逐漸逼近最終需要達到的旋轉角度。該算法僅利用加法和移位兩種運算通過迭代方式進行矢量旋轉[6],因此很適合在FPGA中實現,它可以用來實現數字下變頻中的NCO、混頻器和坐標變換等功能[7]。

  通過對式(5)的算法實現,采用流水線的設計方式,在FPGA中進行設計,利用FPGA自身內部的BRAM資源進行存儲,最后利用Verilog語言進行實現,從而達到NCO設計的目的。

  其主要硬件資源占用如圖2所示。

002.jpg

  從圖2可以看到,使用CORDIC算法,基本不占用FPGA內部的BRAM資源,大大節約了硬件資源。

  4 驗證

  RTL電路的仿真結果如圖3所示。

003.jpg

  在MATLAB上進行仿真,并與RTL電路仿真結果進行比對。MATLAB仿真結果如圖4所示。

004.jpg

  如圖3,在輸入周期性三角波后,通過CORDIC方法可以得到兩個周期性波形,分別是所需要的sin與cos周期函數,通過此NCO的產生,可以在后續設計中去除掉頻偏帶來的影響;在圖4中,通過MATLAB的仿真可以產生對應的sin和cos波形,與圖3相比,仿真結果一致,可以證明利用FPGA設計的方案是正確可行的。

5 結論

  NCO的設計是基于查找表的NCO,這種方式的固有特點決定了不僅需要大量的FPGA資源,而且混頻器在實現過程中需要占用一定的乘法器資源,這對乘法器資源有限的FPGA而言很不利。

  基于CORDIC算法的NCO,通過一系列固定的與運算基數相關的角度不斷偏擺來逼近所需的旋轉角度,其硬件結構簡單,易于并行化處理。所以,在無線局域網通信中,利用CORDIC算法實現NCO是非常高效的,并且通過這種算法,可以有效快速地達到預期目的,從而證明本方案是正確可行的。

參考文獻

  [1] 楊宏,李國輝,劉立新.基于FPGA的CORDIC算法的實現[J].西安郵電學院學報,2008,13(1):75-77.

  [2] 陸鵬威,梅杓春.基于CORDIC算法實現三角函數的運算[J].國外電子測量技術,2008,27(1):10-11.

  [3] 姚亞峰,付東兵,楊曉非.高速CORDIC算法的電路設計與實現[J].半導體技術,2008,33(4):346-348.

  [4] 曹劍英.基于擴展CORDIC算法的正切余切函數的設計[J].赤峰學院學報,2013(22):5-6.

  [5] 耿丹.CORDIC算法研究與實現[J].遙測遙控,2007,28(Z1):39-42.

  [6] TIEMEY J, RADER C M, GOLD B. A digital frequency synthesizer[C]. IEEE Transactions on Audio Electroacoustics, 1971:48-57.

  [7] 鄭辛星,余紅英,楊杰.基于FPGA的CORDIC算法研究[J].蕪湖職業技術學院學報,2013,15(3):38-39.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 日韩欧美一区二区不卡 | 网站黄免费| 亚洲最大福利网 | 最近中文字幕完整视频高清1 | 欧美特黄aaaaaa| 日本免费一区视频 | 女黄人东京手机福利视频 | 欧美第一夜 | 欧美一级特黄aa大片视频 | 成年黄页网站大全免费动漫 | 久久精品99视频 | 亚洲精品午夜aaa级久久久久 | 国产 欧美 在线 | 三级全黄的全黄三级三级播放 | 成人在色线视频在线观看免费大全 | 国产成人精品久久亚洲高清不卡 | 亚洲国产精品一区 | 久久成人激情视频 | 免费无遮h在线网站大全 | 日日拍夜夜嗷嗷叫视频 | 日韩精品成人免费观看 | 欧美一级α片 | 久久精选视频 | 色片在线免费观看 | 欧美激情成人网 | 久操视频在线观看免费 | 涩婷婷 | a级在线观看 | 日本1区2区3区电 | 久久性视频| a黄色片| 欧美性导航| 快播怡红院 | 夜夜天天 | 国产成人精品一区二三区2022 | 天堂网在线观看 | 国产精彩视频 | 国产小视频在线高清播放 | 国产精品欧美一区二区 | 欧美成人家庭影院 | 久久www视频|