999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CORDIC算法2FSK調制器的FPGA設計

2011-06-30 01:09:38雷能芳
現代電子技術 2011年9期

摘 要:頻移鍵控(FSK)是用不同頻率的載波來傳遞數字信號,并用數字基帶信號控制載波信號的頻率。提出一種基于流水線CORDIC 算法的2FSK 調制器的FPGA實現方案,可有效地節省FPGA 的硬件資源,提高運算速度。最后,給出該方案的硬件測試結果,驗證了設計的正確性。

關鍵詞:移頻鍵控; 調制器; CORDIC算法; FPGA

中圖分類號:TN911-34

文獻標識碼:A

文章編號:1004-373X(2011)09-0077-03

Design of 2FSK Modulator Based on CORDIC Algorithm and FPGA

LEI Neng-fang

(Department of Physics and Electronic Engineering, Weinan Teachers University, Weinan 714000, China)

Abstract: The frequency-shift keying (FSK) transmits the digital signal with different frequency carrier, and controls the frequency of carrier with the digital basedand signal. The implementation scheme of 2FSK modulator based on pipeline CORDIC algorithm and FPGA is porposed. It can save the hardware resources and improve the operating speed efficiently. The design was verified by the practical testing result.

Keywords: FSK; modulator; CORDIC algorithm; FPGA

0 引 言

頻移鍵控(FSK)是用不同頻率的載波來傳送數字信號,并用數字基帶信號控制載波信號的頻率。具有抗噪聲性能好、傳輸距離遠、誤碼率低等優點。在中低速數據傳輸中,特別是在衰落信道中傳輸數據時,有著廣泛的應用。傳統上以硬件實現載波的方法都是采用直接頻率合成器(DDS)實現。但是DDS傳統的實現方式是基于查找表思想,即通過查找預先存儲的正余弦表來產生需要的正余弦值。當頻率、精度要求越高,需要存儲的值也就越多,考慮FPGA的RAM資源有限,傳統的DDS實現方式就有了應用瓶頸[1]。因此導致開發成本過高,甚至無法實現,不適合現代通信系統的發展。

本文提出了應用CORDIC(Coordinate Rotation Digital Computer)算法實時計算正弦值的方案,并基于CORDIC算法在FPGA芯片上設計了2FSK調制器。這不僅能夠節省大量的FPGA邏輯資源,而且能很好地兼顧速度、精度、簡單、高效等方面。

1 CORDIC算法原理及結構

1.1 CORDIC算法原理

CORDIC算法[2]是由J.Volder于1959年提出的。該算法適用于解決一些三角學的問題,如平面坐標的旋轉和直角坐標到極坐標的轉換等。CORDIC算法的基本思想是通過一系列固定的、與運算基數有關的角度的不斷偏擺以逼近所需的旋轉角度。從廣義上講,CORDIC方法就是一種數值計算的逼近方法。該算法實現三角函數的基本原理如圖1所示。

圖1 CORDIC算法原理圖

設初始向量(x0,y0)逆時針旋轉角度θ后得到向量(xn,yn),如圖1所示。則:

xn=x0cos θ-y0sin θ

yn=y0cos θ+x0sin θ

(1)

經變換為:

xn=(x0-y0tan θ)cos θ

yn=(y0+x0tan θ)cos θ

(2)

為了避免復雜的乘法運算,用一系列微旋轉來處理,第i次旋轉可表示為:

xi+1=(xi-δiyi2-i)ki

yi+1=(yi+δixi2-i)ki

zi+1=zi-δitan-12-i

(3)

式中:θi表示第i次旋轉的角度,并且滿足tan θi=2-i;zi表示第i次旋轉后與目標角度的差;δi表示向量的旋轉方向,由zi的符號位來決定,即δi=sign zi。ki=11+2-2i為每一級的校正因子,也就是每一級旋轉時向量模長發生的變化,對于字長一定的運算,總的校正因子是一個常數。若總的旋轉次數為n,則總校正因子用k表示為:

k=∏n-1i=011+2-2i

(4)

令x′0

=kx0,y′0

=ky0,則:

x′i+1

=

x′i-δi

y′i2-i

y′i+1=

y′i+δi

x′i2-i

(5)

式(5)就是CORDIC算法的迭代式。迭代n次(n→∞)后可以得到如下結果:

xn=(x0cos θ-y0sin θ)k

yn=(y0cos θ+x0sin θ)k

zn=z0-θ

(6)

若給定的初始輸入數據為x0=1/k,y0=0時,z0=θ,則輸出為:

xn=cos θ

yn=sin θ

zn=0

(7)

由式(7)可知:xn,yn分別為輸入角θ的余弦和正弦值,故基于CORDIC算法可產生正弦載波信號,而且由式(5)可以看出所有運算簡化成加減法和移位操作,因此很容易用硬件實現。

1.2 CORDIC 流水線結構

CORDIC算法的實現方式有2種:簡單狀態機法和高速全流水線處理器法。如果計算時間的要求不嚴格,可以采用狀態機結構。這一結構中最復雜的就是兩個桶狀移位器,而桶狀移位器的面積大約和它所包含的傳輸門的數目成正比[3]。盡管可以通過改進CORDIC算法來減小CORDIC處理器的總面積,但桶狀移位器所占的面積并不能減小。另外,這種結構由于只在時間上復用資源,因此,數據吞吐率不高。

由于CORDIC算法的內部數據流規則,決定了在CORDIC處理器解決方案中非常適合采用流水線型微旋轉結構。采用流水線可將一個算術操作分解成一些小規模的加減法和移位操作,并在多個比較高速的時鐘內完成。另一方面,輸出信號的精度只與CORDIC算法的旋轉次數或流水單元數有關,即與級數有關。如需提高精度,只需簡單地增加流水單元即可,其擴展性很好,而且這并不會大量增加FPGA的資源耗費[4]。CORDIC流水線結構的每一級迭代旋轉的硬件實現基本單元如圖2所示。

圖2 CORDIC算法基本單元

2 基于CORDIC算法正弦載波發生器的總體結構

正弦載波發生器系統結構如圖3所示。

圖3 正弦載波發生器系統結構圖

在該系統結構圖中,CORDIC計算單元是核心。CORDIC計算單元的輸入由相位加法器提供。相位加法器不間斷地產生角度值,由CORDIC計算單元計算出相應的三角函數值,即可在其輸出端產生連續的數字正弦載波。

通過頻率控制字,改變相位累加器的步長,這樣即可改變正弦載波的頻率。具體的數學推導如下[5]:

設相位累加器的字長為N,頻率控制字即步長為step,則2琋就相當于2π rad,N位中的最低有效位相當于2π/2琋 rad,即最小的相位增量,step對應的相位為step×(2π/2琋) rad,完成一個周期的正弦載波輸出需要2琋/step個參考時鐘周期。所以輸出正弦載波的周期為:

Tsinout=2琋stepTclk

(8)

輸出正弦載波的頻率為:

fsinout=step2琋fclk

(9)

當step=1時,輸出頻率最低,即正弦載波的頻率分辨率為:

Δf=12琋fclk

(10)

可見改變相位累加器的步長step,可以改變正弦載波的頻率;改變相位累加器的字長N,可控制正弦載波的頻率分辨率。在相位累加器后加入相位加法器, 通過改變相位控制字P,可以控制輸出信號的相位;通過設置幅度控制字A,可控制最終輸出的正弦載波的幅度大小。因此,通過對相位控制字、頻率控制字或幅度控制字進行多路選擇, 可以形成不同進制的調制方式??梢钥闯? 使用該結構可以很容易實現頻率調制、相位調制和幅值調制。

3 2FSK調制器的FPGA設計

圖4為2FSK調制器頂層工程原理圖。該原理圖主要由三個模塊組成:2選1數據選擇器MUX21、相位累加器adder、正弦載波生成模塊cordic。其中,clk為系統時鐘信號,rst為系統清零信號,step1,step2為2個不同的頻率控制字,s為系統頻率控制字選通端。2選1數據選擇器的選通端s受基帶信號控制,當基帶信號為‘0時,選通控制字step1;當基帶信號為‘1時,選通控制字step2。通過對step1,step2的選擇,可以實現頻率的切換。

在QuartusⅡ環境中,三個子模塊均用VHDL語言進行設計,系統頂層工程采用原理圖進行設計,對系統頂層工程進行器件選擇、引腳鎖定、編譯、綜合后下載到Cyclone系列EP1C12Q240C8器件中,通過在頻率控制字的引腳選擇不同參數即可在FPGA器件中完成2FSK調制器的設計。

圖4 2FSK調制器頂層工程原理圖

4 系統硬件實時測試

調制器的輸出信號為數字信號,經D/A轉換后可以通過示波器進行測試,也可以直接采用QuartusⅡ軟件中的嵌入式邏輯分析儀SignalTapⅡ進行測試。

采用SignalTapⅡ進行芯片測試,用戶無需外接專用儀器,就可以對FPGA器件內部所有信號和節點進行捕獲分析,而又不影響原硬件系統的正常工作[6]。經測試得到的實時波形如圖5所示。

測試結果表明,基于FPGA和CORDIC算法的2FSK調制器設計方案是正確可行的,且波形流暢,在轉換處能快速進行切換。

圖5 2FSK調制器實時波形

5 結 語

用FPGA和CORDIC算法實現信號調制,既克服了傳統方法耗費資源、運行速度低等缺點,還具有靜態可重復編程和動態在系統重構的特性,極大地提高了電子系統設計的靈活性和通用性,大大縮短了系統的開發周期。

參考文獻

[1]鄭瑾,葛臨東.基于流水線CORDIC算法的數字下變頻實現[J].現代雷達,2006,28(10):62-64.

[2]VOLDER J E. The CORDIC trigonometric computing technique [J]. IRE Trans.on Electronic Computers, 1959, 8 (3): 330-334.

[3]MEYER-BAESE Uwe.數字信號處理的FPGA 實現[M].劉凌,譯.2版.北京:清華大學出版社,2006.

[4]盧貴主.基于CORDIC算法的DDFS實現研究[J].廈門大學學報:自然科學版,2004,43(5):636-639.

[5]雷能芳.基于DDS技術的數字移相正弦信號發生器的CPLD設計與仿真[J].科學技術與工程,2009,9(4):1009-1011.

[6]潘松,黃繼業.EDA技術與VHDL[M].北京:清華大學出版社,2005.

[7]王玉泰,李念強.基于DSP的直接數字頻率合成的算法研究及實現[J].儀器儀表學報,2004,25(4):66-68.

[8]姚亞峰,付東兵,楊曉非.基于CORDIC 改進算法的高速DDS電路設計[J].華中科技大學學報:自然科學版,2009,37(2):25-27.

[9]張曉彤,辛茹,王沁,等.基于改進混合式CORDIC算法的直接數字頻率合成器設計[J].電子學報,2008,36(6):1144-1147.

[10]姜宇柏,黃志強.通信收發機的Verilog實現與仿真[M].北京:機械工業出版社,2004.

[11]張健,楊萬麟.利用Virtex器件實現子空間法雷達目標一維像識別[J].現代電子技術,2007,30(19):77-79.

[12]關進輝,石春和,何遠輝.基于PC104總線的2FSK調制器的設計與實現[J].現代電子技術,2010,33(1):87-89.

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文

主站蜘蛛池模板: 国产精品视频导航| 久久免费看片| 中国黄色一级视频| 国产综合在线观看视频| 欧美另类视频一区二区三区| 色首页AV在线| 91外围女在线观看| 久久人人爽人人爽人人片aV东京热| 国产精品页| 女人毛片a级大学毛片免费| 无码AV日韩一二三区| 欧美激情第一欧美在线| 成年人国产网站| 国产xxxxx免费视频| 激情午夜婷婷| 国产资源免费观看| 日本影院一区| 久久亚洲天堂| 国产乱子精品一区二区在线观看| 亚洲一区二区三区在线视频| 精品亚洲欧美中文字幕在线看 | 亚洲欧州色色免费AV| 亚洲欧美一区在线| 五月天在线网站| 久久久久亚洲精品无码网站| 在线日韩一区二区| 中文无码影院| 无码精品福利一区二区三区| 欧美中文字幕第一页线路一| 欧美一级在线播放| 亚洲成人播放| 99久久人妻精品免费二区| 奇米影视狠狠精品7777| 黄色网站不卡无码| 久操中文在线| 伦精品一区二区三区视频| 国产香蕉在线| 亚洲中文字幕在线观看| 亚洲国产清纯| 伊人蕉久影院| 99精品免费欧美成人小视频| 综合网天天| 精品亚洲麻豆1区2区3区| 久久国产成人精品国产成人亚洲 | 第一区免费在线观看| 亚洲精品综合一二三区在线| 伊人久久久久久久| 77777亚洲午夜久久多人| 免费av一区二区三区在线| 美女被操黄色视频网站| 亚洲福利视频网址| 啪啪免费视频一区二区| 午夜欧美理论2019理论| 国产区免费| 欧美精品aⅴ在线视频| 亚洲无码高清免费视频亚洲| 日韩欧美国产三级| 99视频国产精品| 国产午夜精品一区二区三| 1级黄色毛片| 高h视频在线| 亚洲午夜片| 色综合中文综合网| 91福利片| 免费女人18毛片a级毛片视频| 亚洲Av激情网五月天| 国产乱子精品一区二区在线观看| 伊人激情久久综合中文字幕| 国产毛片网站| 黄色网页在线观看| 九九九久久国产精品| 亚洲国产精品不卡在线| 色老头综合网| 亚洲侵犯无码网址在线观看| 日韩毛片免费视频| 毛片网站观看| 国产精品一线天| 青青热久免费精品视频6| 国产中文一区a级毛片视频 | 日韩在线观看网站| 日本伊人色综合网| 秘书高跟黑色丝袜国产91在线 |