基于进位节省加法器的低延时CORDIC三角函数实现的方法及装置制造方法及图纸

技术编号:9865373 阅读:298 留言:0更新日期:2014-04-02 22:31
本发明专利技术公开一种基于进位节省加法器的低延时CORDIC三角函数实现的方法及装置,方法步骤为:1)对X、Y、Z数据通路进行初始化;2)对Z数据通路进行旋转方向预测,输出给X、Y数据通路;将X、Y数据通路的前N/2次迭代压缩为N/8级,每级采用进位节省加法器在一拍内完成迭代;3)对X、Y数据通路的后N/2次采用进位节省加法器进行并行迭代;装置包括初始化模块、旋转方向预测模块、迭代压缩模块和并行迭代模块,迭代压缩单元和并行迭代单元均采用进位节省加法器。本发明专利技术具有硬件开销小、周期短、延时短、吞吐率大、精度高的优点。

【技术实现步骤摘要】
基于进位节省加法器的低延时CORDIC三角函数实现的方法及装置
本专利技术涉及三角函数实现领域,尤其涉及一种于进位节省加法器的低延时CORDIC三角函数实现的方法及装置。
技术介绍
在音频通信、视频通信、信号处理、雷达图像处理等的实时信号处理系统中,需要进行快速高精度的三角函数数值计算,尤其是三角正弦/余弦函数。在硬件电路的实现中,三角正弦/余弦函数的计算方法可以分为:多项式近似方法和数字迭代方法。传统的正余弦的计算方法是采用查找表、多项式展开或近似的方法。查表法适用于精度要求低的情况,查找表的硬件开销将以计算精度的指数方式增长,当精度要求较高时,查找表的硬件消耗大;多项式近似在自变量较小时,收敛较快,当变量增大时,收敛速度迅速减小,运算所需的乘和加运算的次数增多,执行时间增长;因此,多项式近似通常采用查表法与Taylor展开或切比雪夫多项式相结合,通过查找表压缩自变量到一个较小的区域,然后通过多项式快速计算出结果。然而这种实现方法需要多个乘法器和加法器,硬件资源需求太高。CORDIC (Coordinate Rotation Digital Computer,坐标旋转数字计算机)算法是一种实现多种超越函数的数字迭代方法,在旋转模式圆周坐标下能够实现三角正弦/余弦函数的计算。对比而言,CORDIC算法从运算本身入手,采用迭代的思想,用一系列与运算基数相关的角度的不断偏摆从而逼近所需旋转的角度。这是一个数值逼近的算法,通过简单的移位运算和加减运算就可完成三角正弦/余弦函数的计算。因此,CORDIC算法非常适合硬件实现。选择旋转模式圆周坐标下的CORDIC迭代方程为:

【技术保护点】
一种基于进位节省加法器的低延时CORDIC三角函数实现的方法,其特征在于,步骤为:(1)输入角度值并对X、Y和Z数据通路进行初始化,输出各数据通路的初始化数据,三角函数的数据精度为N位;(2)Z数据通路接收输出的Z数据通路初始化数据,预测N次CORDIC迭代的旋转方向,输出给X、Y数据通路;X、Y数据通路接收X、Y数据通路的初始化数据及Z数据通路输出的前N/2次CORDIC迭代的旋转方向,将前N/2次CORDIC迭代压缩为N/8级,每级迭代压缩过程采用进位节省加法器在一拍内完成4次迭代,得到前N/2次CORDIC迭代结果;(3)X、Y数据通路根据前N/2次CORDIC迭代结果及Z数据通路输出的后N/2次CORDIC迭代的旋转方向,将X、Y数据通路的后N/2次CORDIC迭代展开,采用进位节省加法器进行并行迭代,输出最终的CORDIC迭代结果作为三角函数值。

【技术特征摘要】
1.一种基于进位节省加法器的低延时CORDIC三角函数实现的方法,其特征在于,步骤为: (1)输入角度值并对X、Y和Z数据通路进行初始化,输出各数据通路的初始化数据,三角函数的数据精度为N位; (2)Z数据通路接收输出的Z数据通路初始化数据,预测N次CORDIC迭代的旋转方向,输出给X、Y数据通路;X、Y数据通路接收X、Y数据通路的初始化数据及Z数据通路输出的前N/2次CORDIC迭代的旋转方向,将前N/2次CORDIC迭代压缩为N/8级,每级迭代压缩过程采用进位节省加法器在一拍内完成4次迭代,得到前N/2次CORDIC迭代结果; (3)X、Y数据通路根据前N/2次CORDIC迭代结果及Z数据通路输出的后N/2次CORDIC迭代的旋转方向,将X、Y数据通路的后N/2次CORDIC迭代展开,采用进位节省加法器进行并行迭代,输出最终的CORDIC迭代结果作为三角函数值。2.根据权利要求1所述的基于进位节省加法器的低延时CORDIC三角函数实现的方法,其特征在于,所述步骤(2)中旋转方向预测具体实施步骤为: (2.1)迭代索引i〈(N-log23)/3时,增加第k次校正迭代,计算第k次迭代的剩余角度,其中k为增加的校正迭代的次数且k〈3i+l ;执行校正迭代之前,提前计算出校正迭代时Z数据通路中的加减运算,并制表保存; (2.2)将Z数据通路的前(N-log23)/3次迭代按校正迭代位置划分成多个小段,从输入的初始角度开始依次预测,由本段的校正迭代计算得到的剩余角度预测下一小段的旋转方向,直到得到前(N_log23)/3次迭代的旋转方向; (2.3)根据第(N-log23)/3次迭代的结果直接预测得到后续2N/3次迭代的旋转方向。3.根据权利要求1或2所述的基于进位节省加法器的低延时CORDIC三角函数实现的方法,其特征在于,步骤(2)中所述进位节省加法器为N位的CSA4-2加法器。4.根据权利要求1所述的基于CORDIC算法的三角函数计算的方法,其特征在于,所述步骤(3)具体实施步骤为: (3.1)采用由进位节省加法器构成的N/2*N/2乘法器计算下式中的两次乘法运算,产生N/2个部分积后对产生的部分积进行压缩得到中间结果,将中间结果相加得到最后的乘法运算结果; 5.根据权利要求4所述的基于CORDIC算法的三角函数计算的方法,其特征在于:所述步骤(3.1)中N/2*N/2乘法运算采用无符号乘法; 所述无符号乘法对部分积的求补计算方法为:将部分积求反再加1,将+1用I代替放在下一个部分积的尾部;下一个部分积相对左移一位,将求补+1与当前部分积的最低位对齐; 所述无符号乘法符号扩展的方法为:首先假设所有的部分积都是负的,在部分积前面补I;再假设其中的部分积为非负,高位的I重新转换为O,通过在高位为I中的最后一位I上再加I实现全部位的转换。6.根据权利要求4所述的基于CORDIC算法的三角函数计算的方法,其特征在于:所述步骤(3.1)中部分积压缩米用CSA4-2压缩树结...

【专利技术属性】
技术研发人员:陈书明邓子椰雷元武彭元喜万江华刘宗林陈海燕陈胜刚刘胜马胜吴虎成罗恒陈小文孙书为田甜彭浩陈际阳
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1