打印
[技术相关]

华芯微特SWM341 系列MCU旋转坐标计算(CORDIC)功能

[复制链接]
582|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
中国龙芯CDX|  楼主 | 2023-4-26 13:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1概述
SWM341 系列部分型号可能不包括该模块。
使用前需使能 CORDIC 模块时钟。
2特性
⚫ 经过 14 轮迭代得到结果
⚫ 计算 sin 和 cos 时,输入弧度范围建议在 0.01 ~1.56
⚫ 计算 arctan 数值范围建议在 0.05 ~ 10000
⚫ 输出结果支持查询和中断方式

3功能描述
使用 CORDIC 计算 COS/SIN/ARCTAN 流程如下:
⚫ 配置中断使能寄存器 IE
⚫ 配置参数寄存器 INPUT
⚫ 配置控制寄存器 CMD
⚫ 结果查询
如果采用查询方式,根据需要,反复查询 COS、SIN 或者 ARCTAN,当相应输出寄存器 DONE 位为 1 时,得到有效的返回值;如果采用中断方式,当中断来临,查询到 IF 寄存器 DONE 位状态为 1 时,根据需要,读 COS、SIN 或者 ARCTAN 寄存器即可。注意:计算得到的结果会一直保持,直到下一次启动 CMD. START。START 启动后,就可以开始配置下一次计算所需要的 INPUT 和 CMD,但 START 只有等到这次计算结束后才能再次启动。
中断配置与清除
可通过配置中断使能寄存器 IE 中相应位使能中断。当中断触发后,中断标志寄存器 IF 中对应位置 1。如需清除此标志,需在对应标志位中写 1 清零(R/W1C),否则中断在开启状态下会一直进入。

使用特权

评论回复

相关帖子

沙发
chenqianqian| | 2023-5-2 08:21 | 只看该作者
这个相当于是硬件计算模块?

使用特权

评论回复
板凳
华芯微特FAE| | 2023-5-4 10:16 | 只看该作者
chenqianqian 发表于 2023-5-2 08:21
这个相当于是硬件计算模块?

你好!CORDIC是属于硬件模块!基础库中相应的例程可以参考应用!

使用特权

评论回复
地板
tpgf| | 2023-5-17 15:34 | 只看该作者
CORDIC(Coordinate Rotation Digital Computer)算法即坐标旋转数字计算方法,是J.D.Volder于1959年首次提出,主要用于三角函数、双曲线、指数、对数的计算

使用特权

评论回复
5
wakayi| | 2023-5-17 15:45 | 只看该作者
它通过移位和加减运算,能递归计算常用函数值,如Sin,Cos,Sinh,Cosh等函数

使用特权

评论回复
6
xiaoqizi| | 2023-5-17 15:58 | 只看该作者
看了一下这种算法还是比较复杂的 单片机可以承受这种复杂的算法吗

使用特权

评论回复
7
paotangsan| | 2023-5-17 16:53 | 只看该作者
我们常用的普通单片机可以直接做三角函数的计算吗

使用特权

评论回复
8
华芯微特FAE| | 2023-5-18 15:33 | 只看该作者
paotangsan 发表于 2023-5-17 16:53
我们常用的普通单片机可以直接做三角函数的计算吗

要看MCU内部的配置,比如211和341旋转坐标计算(CORDIC)算法,配置寄存器才能使用。

使用特权

评论回复
9
ufbycd| | 2023-5-23 10:07 | 只看该作者
cchyyy 发表于 2023-5-21 00:08
其实IQ 方法通过查表和一下算法优化就可以了啊。也不见的不这个CORDIC 慢。只是耗CPU时间而已。 ...

查表法的精度没有直接计算的高,硬件加速器不是摆设。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

261

主题

1952

帖子

4

粉丝