您的位置 首页 硬件

根据流水线CORDIC算法的正交起伏调制解调在FPGA上的规划完成

正交幅度调制技术(QAM)是一种功率和带宽相对高效的信道调制技术,因此在信道调制技术中得到了广泛的应用。它的载波信号的FPGA实现一般采用查找表的方法,为了达到高精度要求,需要耗费大量的ROM资源。提

0 导言

正交起伏调制是频率运用率很高的一种调制技能。与其他调制技能比较,具有能充分运用带宽、抗噪声能力强等长处,在移动通讯、有线电视传输和ADSL中均有广泛应用。它的载波信号的FPGA完结一般选用DDS(直接数字频率组成)技能,即在两块ROM查找表中别离放置一对正交信号。经过这种办法尽管能够输出一组彻底正交的载波信号,但它首要用于精度要求不是很高的场合,假如精度要求高,查找表就很大,相应的存储器容量也要很大,使体系的运转速度受到限制,不适合现代通讯体系的开展。本文根据CORDIC(Coordinate Rotation Digital Computer)算法,研讨正交起伏调制解调器的FPGA完结办法。该办法不只能够节约很多的FPGA逻辑资源,并且能很好地统筹速度、精度、简略及高效等各个方面。

1 正交起伏调制解调器作业原理

正交起伏调制解调器体系框图如图1所示。其间,a(t)和b(t)为两路彼此独立的待传送基带信号,正交信号发生器输出两路互为正交的正弦载波信号,经过两个乘法器能够取得互为正交的平衡调幅波,即不带载频的双方带调幅波。假定乘法器的乘法系数为1,则经过加法器发生的调制信号为:

对调制信号X(t)进行解调,选用了正交同步解调办法。已调正交调幅信号X(t)别离与正交信号发生器发生的余弦信号和正弦信号相乘后发生两路输出信号:

2 正交信号发生器的规划

2.1 CORDIC算法原理
CORDIC算法是由J.Volder于1959年提出的。该算法适用于处理一些三角学的问题,如平面坐标的旋转和直角坐标到极坐标的转化等。 CORDIC算法的根本思想是经过一系列固定的、与运算基数有关的视点的不断偏摆,以迫临所需的旋转视点。从广义上讲,CORDIC办法便是一种数值核算的迫临办法。该算法完结三角函数的根本原理如下:

设初始向量(x0,y0)逆时针旋转视点口后得到向量(xn,yn),则:

式中:θi表明第i次旋转的视点,并且tanθi=2-i;zi表明第i次旋转后与方针视点的差;δi表明向量的旋转方向由zi的符号位来决议,即δi=sign(zi);为每一级的校对因子,也便是每一级旋转时向量模长发生的改变,关于字长必定的运算,总的校对因子是一个常数。迭代n次(n→∞)后能够得到如下成果:

当给定的初始输入数据为x0=1/k,y0=0时,z0=θ,则输出为:

由上可知,xn,yn别离为输入角θ的余弦和正弦值,故根据CORDIC算法可发生正交信号。

2.2 CORDIC算法流水线结构

由式(5)能够看出,CORDIC算法的完结只需要根本的加减法和移位操作,因而很容易用硬件完结。该硬件的完结能够经过图2所示的根本单元级联成流水线结构完结。在经过n(迭代次数)个时钟的树立时刻之后,每隔一个时钟便能输出一个运算成果。输出精度由CORDIC算法中的迭代次数决议。如需进步精度,只需简略地添加流水单元即可,扩展性很好,并且这并不会很多添加FPGA的资源消耗。

3 FIR低通滤波器规划

FIR低通滤波器规划能够选用分布式算法,运用FPGA查找表替代乘法器来完结。为便于了解分布式算法的原理,考虑“乘积和”内积如下:

式(10)的方法被称为分布式算法,分布式算法是一种以完结乘累加运算为意图的运算办法。假如树立一个查找表,表中数据由一切固定系数的一切加的组合构成,那么用N位输人数据构成的N位地址去寻址查找表。假如N位都为1,则查找表的输出为N位系数之和;假如N位中有0,则其对应的系数将从和中去掉。这样乘法运算就成了查找操作,整数乘法能够经过左移b位完结。滤波器的系数h(n)能够运用Matlab的FDATool规划东西来取得。

4 调制解调器的FPGA规划

DSP Builder是美国Altera公司推出的一个面向DSP开发的体系级东西,作为Matlab的一个Simulink东西箱,能够协助规划者完结根据FPGA的DSP体系规划的整个流程。更为重要的是根据Simulink渠道运用DSP Builder库进行FPGA规划时,能运用DSP Builder库的HDL Import模块将HDL文本规划改变成为DSP Builder元件,在体系的模型规划中运用,为体系的FPGA规划供给很大的便利。因而,调制解调器的规划选用VHDL文本与Simulink模型图规划相结合的办法。

4.1 子模块的VHDL规划

CORDIC算法和FIR低通滤波器两个子模块能够在QuartusⅡ环境中选用VHDL代码进行规划,也能够根据Simulink渠道运用DSP Builder库进行模型图规划。可是用模型图规划时,规划图会显得非常复杂、巨大,不利于阅览和排错,而VHDL代码直接描绘会比Simulink模型图描绘更为简洁。故以上两个模块均在QuartusⅡ环境中,选用VHDL代码进行规划描绘及编译。

4.2 体系模型树立

图3为根据Simulink渠道树立的调制解调器体系模型图。首要运用Altera DSP Builder库的HDL Import模块将规划的CORDIC算法及低通滤波器子模块对应的文本文件导入,将文本规划改变成为DSP Builder元件模块,然后按图3调用DSP Builder和Simulink库中的其他图形模块树立体系模型图,并设置相应模块参数。

4.3 体系仿真验证与完结

完结模型规划之后,能够根据Simulink渠道对模型进行体系仿真,即经过Simulink中的示波器Scope检查仿真成果(见图4)。仿真成果表明,规划电路完结了调制解调功用。然后双击SignalCompiler模块,将模型规划转化成可归纳的RTL级VHDL代码,并对其进行归纳、装备下载。

5 结语

本文选用了一种根据流水线CORD%&&&&&%算法规划正交起伏调制解调器的办法,能有用节约硬件资源,进步运算精度和速度。因为选用了FPGA来规划,可习惯软件无线电的要求,规划稍作修正即可习惯更多的调制方法。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/yingjian/195594.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部