针对精密电机数控领域中16位位宽的坐标旋转数字计算机(coordinate rotation digital computer,CORDTC)算法存在输出时延长、运算精度低、稳定性差等问题,提出高精度双向同步旋转CORDIC算法,通过角度预处理和区间折叠扩大收敛区间,迭代...针对精密电机数控领域中16位位宽的坐标旋转数字计算机(coordinate rotation digital computer,CORDTC)算法存在输出时延长、运算精度低、稳定性差等问题,提出高精度双向同步旋转CORDIC算法,通过角度预处理和区间折叠扩大收敛区间,迭代过程中采用双向同步旋转与误差均衡来提升算法的精度以及健壮性,最后根据区间结果进行还原输出.结果表明:在硬件实现上,相比传统算法,本算法的运算精度分别提高了76.3%,最大输出时延降低了71.4%,具有高精度、低延时以及稳定等优点.展开更多
为减少传统流水线型CORDIC(Coordinate Rotation Digital Computer)算法的硬件资源消耗和输出时延,在包含查找表的三阶段CORDIC算法实现基础上,提出一种免去查找表环节的CORDIC算法实现方法.提出的改进算法直接使用四次移位相加的迭代...为减少传统流水线型CORDIC(Coordinate Rotation Digital Computer)算法的硬件资源消耗和输出时延,在包含查找表的三阶段CORDIC算法实现基础上,提出一种免去查找表环节的CORDIC算法实现方法.提出的改进算法直接使用四次移位相加的迭代运算替换查找表结构从而显著降低寄存器消耗,同时通过合并迭代降低迭代次数进而有效减少最大输出时延,并综合运用角度二极化重编码(Binary To Bipolar Recoding,BBR)方法和角度区间折叠技术保证了输出精度.使用Verilog HDL语言在ISE14.2软件平台上对三种算法进行具体实现,利用XST工具对其进行综合,并通过MATLAB建模计算得到算法的正余弦值输出误差.仿真实验结果表明:在输出位宽均设置为16位的情况下,免查找表CORDIC算法能够有效地输出正余弦值;与传统流水线型算法相比,免查找表算法的寄存器资源消耗减少大约74.42%,计算所需的时钟周期降低68.75%,其输出精度也有明显改善;与三阶段算法相比,免查找表算法的寄存器消耗减少大约43.3%.本文提出的免查找表CORDIC算法具有实时性强、输出精度高、硬件资源消耗少等优势,更适用于高速实时的现代数字通信系统应用.展开更多
针对流水线型坐标旋转数字计算机(coordinate rotation digital computer,CORDIC)算法的输出精度低、输出时延长、硬件资源消耗大的问题,提出一种双向预判免缩放因子CORDIC算法.该算法首先将[0,π/4)内的输入角度通过角度二进制编码后...针对流水线型坐标旋转数字计算机(coordinate rotation digital computer,CORDIC)算法的输出精度低、输出时延长、硬件资源消耗大的问题,提出一种双向预判免缩放因子CORDIC算法.该算法首先将[0,π/4)内的输入角度通过角度二进制编码后按位值i分解为2-i的较小角度,然后使用设立的查找表在初始角度的基础上进行双向免缩放因子旋转,无需根据中间迭代结果判断下次的旋转方向,避免了迭代方向的不确定性,减少了迭代单元级数和迭代次数,同时提高了运算精度;最后将[π/4,2π)内的输入角度通过角度区间折叠技术变换到[0,π/4),使计算区间扩展到整个圆周[0,2π),保证了运算范围,且只需要使用移位和加减运算即可实现,避免了进行乘法运算.在MATLAB和Vivado软件平台上进行算法仿真与验证,结果表明:在输出位宽均为14位时,与流水线型和单向免缩放因子型CORDIC算法相比,输出精度分别提高了47.5%、18.8%,最大输出时延分别降低了53.8%、40.0%,硬件资源消耗也有一定的改善.本文提出的CORDIC算法具有输出精度高、输出时延短等特点,其综合性能具有较大的提升.展开更多
文摘提出基于三步旋转机制的高精度低时延坐标旋转数字计算机(CORDIC)算法.该算法通过对输入角度进行二极化重编码来免除剩余旋转角度的运算,利用三步旋转机制对迭代次数进行压缩,结合合并迭代技术进一步减少迭代次数,降低输出时延.以16位输出位宽为例,对三步旋转CORDIC算法和流水线迭代式算法进行实现,仿真结果表明:三步旋转CORDIC算法与流水线迭代式算法相比,改善了输出精度,输入到输出的时延降低了75%,硬件开销下降了29.2%.基于三步旋转CORDIC算法,实现了相位累加器位宽为24的直接数字频率综合器(DDFS);使用加法树结构对多输入加法器进行优化,以提高电路工作频率.仿真结果表明,该算法的最大幅度误差为8.24×10^-6,输出时延为38.5 ns.
文摘针对精密电机数控领域中16位位宽的坐标旋转数字计算机(coordinate rotation digital computer,CORDTC)算法存在输出时延长、运算精度低、稳定性差等问题,提出高精度双向同步旋转CORDIC算法,通过角度预处理和区间折叠扩大收敛区间,迭代过程中采用双向同步旋转与误差均衡来提升算法的精度以及健壮性,最后根据区间结果进行还原输出.结果表明:在硬件实现上,相比传统算法,本算法的运算精度分别提高了76.3%,最大输出时延降低了71.4%,具有高精度、低延时以及稳定等优点.
文摘为减少传统流水线型CORDIC(Coordinate Rotation Digital Computer)算法的硬件资源消耗和输出时延,在包含查找表的三阶段CORDIC算法实现基础上,提出一种免去查找表环节的CORDIC算法实现方法.提出的改进算法直接使用四次移位相加的迭代运算替换查找表结构从而显著降低寄存器消耗,同时通过合并迭代降低迭代次数进而有效减少最大输出时延,并综合运用角度二极化重编码(Binary To Bipolar Recoding,BBR)方法和角度区间折叠技术保证了输出精度.使用Verilog HDL语言在ISE14.2软件平台上对三种算法进行具体实现,利用XST工具对其进行综合,并通过MATLAB建模计算得到算法的正余弦值输出误差.仿真实验结果表明:在输出位宽均设置为16位的情况下,免查找表CORDIC算法能够有效地输出正余弦值;与传统流水线型算法相比,免查找表算法的寄存器资源消耗减少大约74.42%,计算所需的时钟周期降低68.75%,其输出精度也有明显改善;与三阶段算法相比,免查找表算法的寄存器消耗减少大约43.3%.本文提出的免查找表CORDIC算法具有实时性强、输出精度高、硬件资源消耗少等优势,更适用于高速实时的现代数字通信系统应用.
文摘针对流水线型坐标旋转数字计算机(coordinate rotation digital computer,CORDIC)算法的输出精度低、输出时延长、硬件资源消耗大的问题,提出一种双向预判免缩放因子CORDIC算法.该算法首先将[0,π/4)内的输入角度通过角度二进制编码后按位值i分解为2-i的较小角度,然后使用设立的查找表在初始角度的基础上进行双向免缩放因子旋转,无需根据中间迭代结果判断下次的旋转方向,避免了迭代方向的不确定性,减少了迭代单元级数和迭代次数,同时提高了运算精度;最后将[π/4,2π)内的输入角度通过角度区间折叠技术变换到[0,π/4),使计算区间扩展到整个圆周[0,2π),保证了运算范围,且只需要使用移位和加减运算即可实现,避免了进行乘法运算.在MATLAB和Vivado软件平台上进行算法仿真与验证,结果表明:在输出位宽均为14位时,与流水线型和单向免缩放因子型CORDIC算法相比,输出精度分别提高了47.5%、18.8%,最大输出时延分别降低了53.8%、40.0%,硬件资源消耗也有一定的改善.本文提出的CORDIC算法具有输出精度高、输出时延短等特点,其综合性能具有较大的提升.