OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2736|回复: 8

F429的浮点运算能力测试,请大家帮忙看看

[复制链接]

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1111
金钱
1111
注册时间
2019-5-6
在线时间
128 小时
发表于 2019-9-29 12:06:28 | 显示全部楼层 |阅读模式
1金钱
for(i=0;i<4;i++)
{
  for(j=0;j<SampleRate;j=j+16)                 
  {
        if(data[7+i*16384*3+j*3+2]<=0x7f)
        {
                g_databuffer1[i][ii]=(data[7+i*SampleRate*3+j*3]+(data[7+i*SampleRate*3+j*3+1]*256)+(data[7+i*SampleRate*3+j*3+2])*256*256)*1.0f/8388608*5*10;              
                                                                                                          
        }
        else
        {
                g_databuffer1[i][ii]=-(0xffffff-(data[7+i*SampleRate*3+j*3]+(data[7+i*SampleRate*3+j*3+1]*256)+(data[7+i*SampleRate*3+j*3+2])*256*256))*1.0f/8388608*5*10;  
        }

        ii++;
  }
                                                                                       
}

请教下大家这个算法的运行时间,如果用F429的FPU来搞的话大约多少?什么级别超过1S了么??


最佳答案

查看完整内容[请看2#楼]

自己测试下就知道了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2019-9-29 12:06:29 | 显示全部楼层
回复

使用道具 举报

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1111
金钱
1111
注册时间
2019-5-6
在线时间
128 小时
 楼主| 发表于 2019-9-29 14:13:41 | 显示全部楼层
@原子哥  老大帮忙看看
回复

使用道具 举报

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1111
金钱
1111
注册时间
2019-5-6
在线时间
128 小时
 楼主| 发表于 2019-9-29 14:14:38 | 显示全部楼层
SampleRate:忘了说明这个参数也是16384
回复

使用道具 举报

4

主题

48

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
205
金钱
205
注册时间
2019-6-15
在线时间
36 小时
发表于 2019-9-29 16:32:02 | 显示全部楼层
我也很好奇,STM32会编译会自动调用FPU吗?楼主自己试试吧,我这边没这个条件
回复

使用道具 举报

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1111
金钱
1111
注册时间
2019-5-6
在线时间
128 小时
 楼主| 发表于 2019-9-30 07:56:42 | 显示全部楼层
按照论坛上的帖子:在工程MDK配置项选择:开启硬件浮点运算单元,MDK配置使用单精度浮点,然后你的运算公式中含有浮点数的后面加f。
回复

使用道具 举报

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1111
金钱
1111
注册时间
2019-5-6
在线时间
128 小时
 楼主| 发表于 2019-9-30 07:57:45 | 显示全部楼层
mvvm 发表于 2019-9-29 16:32
我也很好奇,STM32会编译会自动调用FPU吗?楼主自己试试吧,我这边没这个条件

需要配置,另外浮点数外加f
回复

使用道具 举报

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1111
金钱
1111
注册时间
2019-5-6
在线时间
128 小时
 楼主| 发表于 2019-9-30 09:34:10 | 显示全部楼层
效果很不理想,7秒左右。。。,是FPU没启动,还是算法有待改进???
回复

使用道具 举报

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1111
金钱
1111
注册时间
2019-5-6
在线时间
128 小时
 楼主| 发表于 2019-9-30 09:37:00 | 显示全部楼层
实验例程为原子的UCOSIII+LWIP,
void SystemInit(void)
{
/* FPU settings ------------------------------------------------------------*/
#if (__FPU_PRESENT == 1) && (__FPU_USED == 1)
SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2)); /* set CP10 and CP11 Full Access */
#endif
……//省略部分代码
}

MDK也配置了使用:设置 Floating Point Hardware 为 Use Single Precision,

MDK宏定义:__FPU_PRESENT == 1
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-23 09:57

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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