简述:CORDIC的基本原理与应用
CORDIC算法简介
在信号处理领域,CORDIC(Coordinate Rotation Digital Computer,坐标旋转数字计算机)算法具有重大工程意义。CORDIC算法由Vloder于1959年在设计美国航空导航扩展系统时提出,主要用于解决导航系统中三角函数、反三角函数和开方等运算的实时计算问题。
1971年,Walther将圆周系统、线性系统和双曲线系统统一到一个CORDIC迭代方程里,从而额提出了一种统一的CORDIC算法形式。
CORDIC算法的核心是利用加法和移位的迭代操作去替代复杂的运算,从而非常有利于硬件实现。CORDIC算法应用广泛,如离散傅里叶变换(DFT)、离散余弦变换(DCT)、离散Hartley变换、Chirp-Z变换、各种滤波以及矩阵中的奇异值分解。
在工程领域,可采用CORDIC算法实现直接数字频率合成器(DDS)、计算I/Q信号的幅度和相位。
01
CORDIC基本原理
我们假设在笛卡尔坐标系(也就是我们常见的XY直角坐标系)中,将点(x1,y1)旋转θ角度到点(x2,y2)的标准方法如下所示:
根据上图,我们利用高中学习的三角函数、圆方程和极坐标等中学知识,可以得到:
这被称为是平面旋转、向量旋转或者线性 ( 矩阵) 代数中的 Givens 旋转。
上面的式子,我们将大学二年级学习的线性代数知识拿出来,用矩阵的形式来表示,于是得到:
例如,我们做一个90°的相移,即θ=90:
这里注意cos和sin函数在直角坐标系下的物理意义,于是我们得到下面的图示。
上面的第一个式子,我们假设提出一个公因子cosθ,那么我们可以得到:
如果去除项,我们得到 伪旋转 方程式 :
即旋转的角度是正确的,但是x 与 y 的值增加cos-1θ 倍 ( 由于cos-1θ> 1),所以模值变大。
注意我们并不能通过适当的数学方法去除cosθ 项 , 然而随后我们发现去除项可以简化坐标平面旋转的计算操作。
怎么说呢?
在XY坐标系中,结合上面的伪旋转公式,我们可以用下图表示:
于是,我们得出以下结论:
经过伪旋转之后,向量 R 的模值将增加1/cosθ 倍。
向量旋转了正确的角度 , 但模值出现错误。
经过伪旋转后, 输出进行适当的幅度伸缩(1/cosθ),是不是就可以得到旋转后的坐标了。

图片新闻
最新活动更多
-
7月22-29日立即报名>> 【线下论坛】第三届安富利汽车生态圈峰会
-
7.30-8.1火热报名中>> 全数会2025(第六届)机器人及智能工厂展
-
7月30-31日报名参会>>> 全数会2025中国激光产业高质量发展峰会
-
即日-2025.8.1立即下载>> 《2024智能制造产业高端化、智能化、绿色化发展蓝皮书》
-
即日-8.30免费下载>>> 福禄克在线温度监测应用案例手册
-
精彩回顾立即查看>> 【在线会议】英飞凌新一代智能照明方案赋能绿色建筑与工业互联
推荐专题
- 1 进击的汇川技术 | 东南亚篇
- 2 中控技术工业AI再获亿元订单,打造全球最大煤炭清洁转化智能工厂
- 3 宝信软件2025 年度行动方案,推进PLC核心技术和AI融合
- 4 重磅!科远智慧希望引入 “战投” 发力工业 AI,抢占千亿市场
- 5 数亿元 C + 轮融资落地!埃克斯加码半导体智能制造
- 6 现场直击 | 维科网WOD制造业数字化博览会(上海)巡展直播,领略全球制造业数字化转型的巅峰盛会!
- 7 安川电机 1.8 亿美元美国扩张计划,欲破局全球竞争?
- 8 硬核登场!凌科LP-12系列 90°工业级连接器上市,打造行业高可靠连接解决方案
- 9 一眼洞穿零部件内部缺陷,海康发布加持大模型的工业探伤系列产品
- 10 突发!工业自动化巨头西门子高管变动
发表评论
登录
手机
验证码
手机/邮箱/用户名
密码
立即登录即可访问所有OFweek服务
还不是会员?免费注册
忘记密码其他方式
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论