【技术实现步骤摘要】
改进的跳跃迭代CORDIC系统及方法
[0001]本专利技术属于数字信号处理和集成电路设计
,具体涉及一种改进的跳跃迭代CORDIC(坐标旋转数字计算机,coordinate rotation digital computer)系统及方法。
技术介绍
[0002]CORDIC方法是用于计算三角、反三角、指数、对数等超越函数的简捷方法。将该方法应用在以单片机为核心的三轴电子罗盘中,用于实现罗盘的倾斜补偿并计算俯仰角、横滚角和航向角;此外,该方法可应用于电机驱动中位置反馈解算和三角函数计算;还可应用于无人驾驶或自主导航系统中3D点云图构建时的位置点解算。实验表明,该方法可有效地在单片机、FPGA上运行,能够较好地兼顾计算精度与效率,有实用价值。相比传统查表法、级数展开和多项式函数逼近等方法,经典的CORDIC方法充分结合硬件计算特点,可以将包括三角函数在内的一些复杂超越函数非线性运算简化为一系列简单的加减和移位操作的线性逼近,是硬件与算法相结合的一种优化方案,具有资源占用较少,精度可控等优点。在通信系统、自适应信号处理、图像处理、三维图形构建、和机器人等领域应用广泛。
[0003]上述领域的快速发展对于三角函数的计算提出了高速度高精度计算的要求,增大数据吞吐量的同时控制硬件逻辑资源的占用。因此,许多学者对CORDIC方法提出改进方案。例如,有研究人员提出一种低延迟的免缩放CORDIC方法,通过在不同阶段中多个角度的适当组合来缩短延迟。还有研究人员设计了一个高效可重构结构,该结构可以通过配置完成不同的功能。另 ...
【技术保护点】
【技术特征摘要】
1.一种改进的跳跃迭代CORDIC系统,其特征在于包括:角度区间折叠模块,其用于依据三角函数的对称性进行区间转换,将幅角在[0,2π]内的向量映射到[0,π/4]内,从而实现对任意输入角度θ进行迭代运算;查找表模块,其用于依据公式tanθ
i
=2
‑
i
随着i自增生成由一系列角度θ
i
组成的角度列表,i为迭代次数,i≥0,并按需求精度进行归一化放大且以二进制形式存放,其中二进制数表依序右移;残差匹配模块,其用于在进行迭代前,基于前次迭代计算的残差角度z
i
与预选角度列表进行大小匹配查找,从而获得匹配的预选角度θ
i+n
,n≥0;跳跃迭代模块,其用于依据所述预选角度θ
i+n
,跳过冗余顺序迭代,直接与残差角度z
i
进行迭代计算;结果映射还原模块,其用于依据角度区间折叠模块的映射折叠规则,对所述跳跃迭代模块中的计算结果进行还原。2.根据权利要求1所述的一种改进的跳跃迭代CORDIC系统,其特征在于,所述查找表模块能够根据需求计算精度设置表格的位宽量级,并将生成的一系列角度θ
i
作为列表元素按降序排列且近似逐级减半,再将形成的角度列表进行定点数转换后,使各角度对应的二进制数的最高位随i自增依序右移一位。3.根据权利要求1所述的一种改进的跳跃迭代CORDIC系统,其特征在于,所述残差匹配模块的功能具体包括:设θ0对应的二进制数除符号位外的最高有效位位数为j
mb
,则在每次迭代结束时进行判断,若z
i
为正数则判断其第j
mb
‑
n位是否为1,z
i
为负数则判断其第j
mb
‑
n位是否为0,是则输出θ
i+n
到所述跳跃迭代模块进行迭代,否则n自增并重复上一步骤,如此循环,当计算后剩余残差值绝对值z
i
小于固定角的最小角度θ
m
,则停止迭代输出计算结果。4.根据权利要求3所述的一种改进的跳跃迭代CORDIC系统,其特征在于,所述跳跃迭代模块利用所述残差匹配模块中所确定的残差最高位位值大小进行移位操作,并将当前残差角度值与相匹配的预选角度θ
i+n
进行加减操作,循环运行所述残差匹配模块和跳跃迭代模块,直到残差达到设计精度范围之内,则停止迭代。5.根据权利要求1所述的一种改进的跳跃迭代CORDIC系统,其特征在于,所述结果映射还原模块所执行的操作为角度区间折叠模块的逆操作。6.一种改进的跳跃迭代CORDIC方法,其特征在于包括:执行角度区间折叠操作,包括:依据三角函数的对称性进行区间转换,将幅角在[0,2π]内的向量映射到[0,π/4]内,从而实现对任意输入角度θ进行迭代...
【专利技术属性】
技术研发人员:胡雄龙,陈新民,邱国廷,邸庆龙,熊俊辉,王继强,徐茂,
申请(专利权)人:中国科学院宁波材料技术与工程研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。