新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于CORDIC 2FSK调制器的FPGA设计

基于CORDIC 2FSK调制器的FPGA设计

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

摘要:频移键控(FSK)是用不同频率的载波来传递数字信号,并用数字基带信号控制载波信号的频率。提出一种基于流水线算法的实现方案,可有效地节省的硬件资源,提高运算速度。最后,给出该方案的硬件测试结果,验证了设计的正确性。

0 引言

频移键控(FSK)是用不同频率的载波来传送数字信号,并用数字基带信号控制载波信号的频率。具有抗噪声性能好、传输距离远、误码率低等优点。在中低速数据传输中,特别是在衰落信道中传输数据时,有着广泛的应用。传统上以硬件实现载波的方法都是采用直接频率合成器(DDS)实现。但是DDS传统的实现方式是基于查找表思想,即通过查找预先存储的正余弦表来产生需要的正余弦值。当频率、精度要求越高,需要存储的值也就越多,考虑的RAM资源有限,传统的DDS实现方式就有了应用瓶颈。因此导致开发成本过高,甚至无法实现,不适合现代通信系统的发展。

本文提出了应用(Coordinate Rotation Digital Computer)算法实时计算正弦值的方案,并基于算法在FPGA芯片上设计了。这不仅能够节省大量的FPGA逻辑资源,而且能很好地兼顾速度、精度、简单、高效等方面。

1 CORDIC算法原理及结构

1.1 CORDIC算法原理

CORDIC算法是由J.Volder于1959年提出的。该算法适用于解决一些三角学的问题,如平面坐标的旋转和直角坐标到极坐标的转换等。C-ORDIC算法的基本思想是通过一系列固定的、与运算基数有关的角度的不断偏摆以逼近所需的旋转角度。从广义上讲,CORDIC方法就是一种数值计算的逼近方法。该算法实现三角函数的基本原理如图1所示。

基于CORDIC算法2FSK调制器的FPGA设计

设初始向量(x0,y0)逆时针旋转角度θ后得到向量(xn,yn),如图1所示。则:

基于CORDIC算法2FSK调制器的FPGA设计

为了避免复杂的乘法运算,用一系列微旋转来处理,第i次旋转可表示为:

基于CORDIC算法2FSK调制器的FPGA设计

式中:θi表示第i次旋转的角度,并且满足tanθi=2-i;zi表示第i次旋转后与目标角度的差;δi表示 向量的旋转方向,由zi的符号位来决定,即δi=sign zi。基于CORDIC算法2FSK调制器的FPGA设计基于CORDIC算法2FSK调制器的FPGA设计为每一级的校正因子,也就是每一级旋转时向量模长发生的变化,对于字长一定的运算,总的校正因子是一个常数。若总的旋转次数为n,则总校正因子用k表示为:

基于CORDIC算法2FSK调制器的FPGA设计

由式(7)可知:xn,yn分别为输入角θ的余弦和正弦值,故基于CORDIC算法可产生正弦载波信号,而且由式(5)可以看出所有运算简化成加减法和移位操作,因此很容易用硬件实现。

fpga相关文章:fpga是什么



上一页 1 2 下一页

关键词: CORDIC FPGA 2FSK调制器

评论


相关推荐

技术专区

关闭