新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 數(shù)字下變頻(DDC)中坐標(biāo)變換模塊的ASIC實(shí)現(xiàn)

數(shù)字下變頻(DDC)中坐標(biāo)變換模塊的ASIC實(shí)現(xiàn)

作者: 時(shí)間:2011-06-04 來源:網(wǎng)絡(luò) 收藏

器中

本文引用地址:http://butianyuan.cn/article/150652.htm

1.引言

()技術(shù)是軟件無線電接收機(jī)的核心技術(shù)。其基本功能是從輸人的寬帶高速信號中提取所需的窄帶信號,將其下為數(shù)字基帶信號,并轉(zhuǎn)換成較低的數(shù)據(jù)率,以供后續(xù)的DSP作進(jìn)一步的處理。目前許多型號的芯片事實(shí)上其功能己遠(yuǎn)遠(yuǎn)不只是下變頻,還包括了成形濾波器、定時(shí)同步內(nèi)插濾波器、重采樣NCO、、數(shù)字ACC等功能,其結(jié)構(gòu)如圖1所示。

CORDIC(Coordinate Rotation Digital Computer)是一種迭代算法,它提供了計(jì)算三角函數(shù)和欠量求模的方法。該算法僅利用加法和移位兩種運(yùn)算通過迭代方式進(jìn)行矢量旋轉(zhuǎn),因此,它非常適合于硬件A-SIC。本文所要闡述的就是基于CORDIC算法的數(shù)字下變頻器中結(jié)構(gòu),該的主要功能是實(shí)現(xiàn)直角坐標(biāo)系到極坐標(biāo)系的變換,從而求得由I路信號和Q路信號構(gòu)成的向量的幅度值和相位值,將得到的幅度信息返回給前級的數(shù)字AGC進(jìn)行增益控制,還可以實(shí)現(xiàn)對FM信號的解調(diào)。

2.CORDIC算法與實(shí)現(xiàn)

2.1 CORDIC算法原理

CORDIC是一種迭代算法,它可以用來計(jì)算sin,cos等三角函數(shù),計(jì)算幅值和相位等到所需的精度,CORDIC算法計(jì)算幅值和相位的原理如下:

假設(shè)直角坐標(biāo)系內(nèi)有向量A(Xn,Yn),向量A順時(shí)針旋轉(zhuǎn)θn后得到向量B(Xn,Yn),如圖2所示。


向量A和向量B之間存在以下關(guān)系,用矩陣表示為

將cosθn提出以后得到

在這里我們?nèi)?i=arctan(1/2i),所有迭代的總和為,其中Si={-1,+1},則tanθi=Si2-i,可得

上式Si中的符號決定了向量的旋轉(zhuǎn)方向,當(dāng)時(shí)Yi≥0,Si=1,順時(shí)針旋轉(zhuǎn);當(dāng)Yi0時(shí),Si=-1,逆時(shí)針旋轉(zhuǎn),式中的cosθi=cos(arctan(1/2i),隨著迭代次數(shù)的增加它收斂于一個(gè)常數(shù),我們暫不考慮這個(gè)常數(shù)增益,這樣式(2-3)就變?yōu)?br />

設(shè)總共旋轉(zhuǎn)的角度為,初值為0,則,給定向量 一組初值如下

從上面的式子可以看出,當(dāng)向量A旋轉(zhuǎn)到X軸時(shí),可以得到迭代的結(jié)果為 ,即可求得向量A的幅值和相位。由式(2-4)可知每次旋轉(zhuǎn)的角度的正切值都是2的負(fù)冪次,在硬件實(shí)現(xiàn)時(shí)只需要執(zhí)行右移和相加運(yùn)算就可以實(shí)現(xiàn)每次迭代,易于硬件的實(shí)現(xiàn)。

2.2 用CORDIC算法的流水結(jié)構(gòu)實(shí)現(xiàn)坐標(biāo)變換

CORDIC迭代結(jié)構(gòu)如圖3所示,采用流水結(jié)構(gòu)每次迭代完成一次旋轉(zhuǎn),每級迭代都用寄存器寄存,這樣每個(gè)時(shí)鐘周期都可以計(jì)算出一次幅度和相位。迭代的次數(shù)越多,精度越高,當(dāng)然耗費(fèi)的資源也就越多。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉