硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3424|回复: 20
收起左侧

[DSP视频教程] DSP视频教程第12期:TI开源分享IQmath DSP源码,适用于所有Cortex-M内核,本期教程做个手把手移植 (2023-05-22)

  [复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
发表于 2023-5-22 02:31:49 | 显示全部楼层 |阅读模式
今年TI推出MSPM0系列产品配套的SDK软件包里面将此库开源了,之前的时候也移植过IQmatb,不过只有库版本,这次竟然开源了,确实是不可多得的好资源。

这个是定点库,非常适合用于M0,  M0+,  M3和不带硬件FPU的M4内核上,当然,用在M4F,M7,M33等器件上也是没问题的。本次视频配套的例子将ARM DSP库和IQmath移植到了一起。


视频:
https://www.bilibili.com/video/BV1Hs4y1q7sS




参考资料:
1、早期IQmath库,只有库移植
https://www.armbbs.cn/forum.php?mod=viewthread&tid=94660

2、IQmath源码SDK,含文档
https://www.ti.com/tool/MSPM0-SDK

mspm0_sdk_1_00_01_03.exe (90.55MB)

3、视频中移植完成的例子,供参考
IQmath源码移植.7z (3.20MB)


评分

参与人数 2金币 +14 收起 理由
USUS + 4 赞一个!
missfox + 10 很给力!

查看全部评分

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
 楼主| 发表于 2023-5-22 02:32:00 | 显示全部楼层
更新完毕。
回复

使用道具 举报

23

主题

1403

回帖

1472

积分

至尊会员

积分
1472
发表于 2023-5-22 09:49:54 | 显示全部楼层
厉害了我的哥,竟然开源了
代码不规范,亲人两行泪!
回复

使用道具 举报

0

主题

29

回帖

29

积分

新手上路

积分
29
发表于 2023-5-22 10:12:37 | 显示全部楼层
里面还有个 iqmath.a 文件,应该是核心的函数库。  所以,不是开源的吧。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
 楼主| 发表于 2023-5-22 10:14:59 | 显示全部楼层
imliyucai 发表于 2023-5-22 10:12
里面还有个 iqmath.a 文件,应该是核心的函数库。  所以,不是开源的吧。

一样的,我在视频里面介绍了。那个库我在IAR上也做了移植。
回复

使用道具 举报

5

主题

100

回帖

115

积分

初级会员

积分
115
发表于 2023-5-22 10:57:15 | 显示全部楼层
移植例子提示病毒
回复

使用道具 举报

36

主题

2039

回帖

2147

积分

至尊会员

积分
2147
发表于 2023-5-22 10:59:32 | 显示全部楼层
两个库说明:
RTS: C implementation using compiler Runtime System (RTS) libraries
MathACL: leverages the MSPM0 hardware math accelerator (MathACL) ​
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

3

主题

31

回帖

40

积分

新手上路

积分
40
发表于 2023-5-23 09:31:49 | 显示全部楼层
calvinxxw 发表于 2023-5-22 10:57
移植例子提示病毒

我下载也提示病毒.
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
 楼主| 发表于 2023-5-23 09:34:06 | 显示全部楼层
calvinxxw 发表于 2023-5-22 10:57
移植例子提示病毒

里面有个bat批处理文件,用于删除临时文件用的,不放心就弄个沙盒打开使用。或者看视频自己移植即可。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
 楼主| 发表于 2023-5-23 09:34:14 | 显示全部楼层
平哥 发表于 2023-5-23 09:31
我下载也提示病毒.

里面有个bat批处理文件,用于删除临时文件用的,不放心就弄个沙盒打开使用。或者看视频自己移植即可。
回复

使用道具 举报

3

主题

31

回帖

40

积分

新手上路

积分
40
发表于 2023-5-23 12:34:01 | 显示全部楼层
eric2013 发表于 2023-5-23 09:34
里面有个bat批处理文件,用于删除临时文件用的,不放心就弄个沙盒打开使用。或者看视频自己移植即可。

回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2023-5-23 15:43:16 | 显示全部楼层
我以前用这个库写过电机控制的代码
回复

使用道具 举报

1

主题

14

回帖

17

积分

新手上路

积分
17
发表于 2023-5-24 09:09:28 | 显示全部楼层
标题应该是2023年吧
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
 楼主| 发表于 2023-5-24 09:22:36 | 显示全部楼层
dream9520 发表于 2023-5-24 09:09
标题应该是2023年吧

已经修改。
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2023-5-25 15:34:43 | 显示全部楼层
库里面为什么没有 add,sub
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
 楼主| 发表于 2023-5-25 15:49:14 | 显示全部楼层
xiao_yp 发表于 2023-5-25 15:34
库里面为什么没有 add,sub

math库是三角函数库。
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2023-5-25 16:09:43 | 显示全部楼层
eric2013 发表于 2023-5-25 15:49
math库是三角函数库。

看到了,加法或减法不需要特殊函数;使用底层 C 加法和减法运算符可以简单地对 IQ 数进行加法和减法。乘法和除法需要特殊处理以保持结果的 IQ 数。
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2023-5-25 19:00:59 | 显示全部楼层
xiao_yp 发表于 2023-5-25 16:09
看到了,加法或减法不需要特殊函数;使用底层 C 加法和减法运算符可以简单地对 IQ 数进行加法和减法。乘 ...

对于常规的综合运算,速度上优化不大,甚至比直接操作浮点运算时间更长。单个运算操作优势明显。三角函数没试了

下面是单个运算操作,综合运算没统计。
屏幕截图 2023-05-25 185700.png
回复

使用道具 举报

2

主题

33

回帖

39

积分

新手上路

积分
39
发表于 2023-7-29 10:55:07 | 显示全部楼层
M4F,开启硬件FPU会有问题吗
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106622
QQ
 楼主| 发表于 2023-7-29 11:25:03 | 显示全部楼层
木偶 发表于 2023-7-29 10:55
M4F,开启硬件FPU会有问题吗

没问题,不影响。
回复

使用道具 举报

0

主题

2

回帖

2

积分

新手上路

积分
2
发表于 2023-11-25 08:50:57 | 显示全部楼层
大佬,我这边用这个开源的iq math库,发现atan2和atan2pu 这两个函数有点bug,比如
[C] 纯文本查看 复制代码
 RESULT=_IQ24toF(_IQ24atan2PU(_IQ24(0.1),_IQ24(0.1)));
这个RESULT本应该是0.125,但是计算出来是0.7。如果改成  
[C] 纯文本查看 复制代码
RESULT=_IQ24toF(_IQ24atan2PU(_IQ24(0.1+0.0001),_IQ24(0.1)))
结果就是对的,感觉就是只要是一样的小数结果就不对,但是如果两个一样整数结果就是对的。
1.PNG
2.PNG
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-26 21:48 , Processed in 0.387981 second(s), 32 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表