新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 数字下变频(DDC)中坐标变换模块的ASIC实现

数字下变频(DDC)中坐标变换模块的ASIC实现

作者:时间:2011-06-04来源:网络收藏

器中

本文引用地址:http://www.eepw.com.cn/article/150652.htm

1.引言

()技术是软件无线电接收机的核心技术。其基本功能是从输人的宽带高速信号中提取所需的窄带信号,将其下为数字基带信号,并转换成较低的数据率,以供后续的DSP作进一步的处理。目前许多型号的芯片事实上其功能己远远不只是下变频,还包括了成形滤波器、定时同步内插滤波器、重采样NCO、、数字ACC等功能,其结构如图1所示。

CORDIC(Coordinate Rotation Digital Computer)是一种迭代算法,它提供了计算三角函数和欠量求模的方法。该算法仅利用加法和移位两种运算通过迭代方式进行矢量旋转,因此,它非常适合于硬件A-SIC。本文所要阐述的就是基于CORDIC算法的数字下变频器中结构,该的主要功能是实现直角坐标系到极坐标系的变换,从而求得由I路信号和Q路信号构成的向量的幅度值和相位值,将得到的幅度信息返回给前级的数字AGC进行增益控制,还可以实现对FM信号的解调。

2.CORDIC算法与实现

2.1 CORDIC算法原理

CORDIC是一种迭代算法,它可以用来计算sin,cos等三角函数,计算幅值和相位等到所需的精度,CORDIC算法计算幅值和相位的原理如下:

假设直角坐标系内有向量A(Xn,Yn),向量A顺时针旋转θn后得到向量B(Xn,Yn),如图2所示。


向量A和向量B之间存在以下关系,用矩阵表示为

将cosθn提出以后得到

在这里我们取0i=arctan(1/2i),所有迭代的总和为,其中Si={-1,+1},则tanθi=Si2-i,可得

上式Si中的符号决定了向量的旋转方向,当时Yi≥0,Si=1,顺时针旋转;当Yi0时,Si=-1,逆时针旋转,式中的cosθi=cos(arctan(1/2i),随着迭代次数的增加它收敛于一个常数,我们暂不考虑这个常数增益,这样式(2-3)就变为

设总共旋转的角度为,初值为0,则,给定向量 一组初值如下

从上面的式子可以看出,当向量A旋转到X轴时,可以得到迭代的结果为 ,即可求得向量A的幅值和相位。由式(2-4)可知每次旋转的角度的正切值都是2的负幂次,在硬件实现时只需要执行右移和相加运算就可以实现每次迭代,易于硬件的实现。

2.2 用CORDIC算法的流水结构实现坐标变换

CORDIC迭代结构如图3所示,采用流水结构每次迭代完成一次旋转,每级迭代都用寄存器寄存,这样每个时钟周期都可以计算出一次幅度和相位。迭代的次数越多,精度越高,当然耗费的资源也就越多。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭