打印

疑惑——GD32F405的浮点数是摆设?

[复制链接]
1146|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Larm1|  楼主 | 2022-4-14 11:46 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
今天测试了GD32F405的浮点数,测试条件如下 168 MHZ @ 外部晶振: 1、__FPU_PRESENT == 1,且魔法棒选择  Single Precesion。
                 double 的乘法运算月 0.5 us 一个公式,加法运算 0.4 us, pow 幂运算 40 us。
2、__FPU_PRESENT == 0,且魔法棒选择  Not Used。
                 double 的乘法运算月 0.508 us 一个公式,加法运算 0.408 us, pow 幂运算 38 us。
未使用 浮点数时 浮点数的乘法和加法算是侧时间都有所增加,但是 POW 幂运算的时间确在下降,按理不应该是没有浮点数功能时耗时更大码,迷惑、迷惑、迷惑......

是没有设置对还是哪里搞错了,求高手指点?

谢谢大家!

使用特权

评论回复

相关帖子

沙发
Larm1|  楼主 | 2022-4-14 16:47 | 只看该作者
又做了个详细的测试,见 表格:

PS : FP64  定义为 double 类型
感觉:
   1. 对一般的浮点数乘、加运算,貌似不使用浮点数功能计算时间还短些;
   2. 一旦勾选了 Use MicroLib 计算时间马上翻倍的增减;
   3. 特殊的浮点数运算 如 pow 等,需要使用浮点数,但是不能包含  #include  "math.h" 和 #include  "arm_math.h" ,这样时间有一定的优势;

    迷惑 —— MicroLib 不能否选,感觉使用浮点数的优势不大, 不知道理解的对否?

使用特权

评论回复
板凳
天天在读书| | 2022-4-20 11:02 | 只看该作者
顶一个,看是否有大佬解答

使用特权

评论回复
地板
叶春勇| | 2022-4-21 08:12 | 只看该作者
编译时有硬件浮点和软件浮点选项,double型浮点m4核好像硬件不支持

使用特权

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

本版积分规则

53

主题

389

帖子

0

粉丝