打印
[其他ST产品]

【NUCLEO试用】NUCLEO-L552ZE-Q CoreMark测试

[复制链接]
2473|33
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 goodbaiy 于 2020-3-22 23:04 编辑

本次我用NUCLEO-L552ZE-Q开发板跑一下CoreMark,看看MCU性能。
上一帖我有说过我使用的keil5.23版本,这个没有达到CubeMX要求的最小版本,所以存在一些问题,由于有办法编译和下载程序,我也就没有升级。
参考网上一些帖子的内容(都是用的IAR),我进行了CoreMark的在keil的移植。
新建CubeMx工程,配置时钟及串口资源,上一帖有写到,这里不再赘述。由于开发板的外部高速晶振没有焊接,时钟只能用内部高速振荡器倍频获得110MHz时钟。
整个移植过程就是从官网下载最新的CoreMark测试源码(我把用到的文件存入了coremark_source文件夹),将源码加入到工程中。
添加路径:
调整优化级别:cube生成的工程默认是-O3级别;针对L5还增加了-Ofast级别(V5.23下测试两个差不多)
然后调整代码:
注释掉main.c开头的函数声明,把main()函数全部注释掉,函数声明的原函数前缀static删除,把刚刚注释掉的函数声明移到mian.h中(用extern取代static修饰),这样可以在core_portme.c中通过头文件包含调用这些函数。同时由于外部需要用到串口,所以把串口的句柄声明也一起放到main.h中。
小技巧:用户增加的部分,放到cube生成文件的xxx begin xxxxx end xx对中,这样在cube重新生成的时候不会把我们自己增加的部分删除(cube偶尔有问题,会删除掉)
以上的修改,每次cube重新生成工程时都需要手动处理(部分内容找不到合适的注释对,所以每次生成都会被修改掉)。
Core_portme.c中加入头文件包含信息。
其他修改参见文档《如何将coremark程序移植到STM32上》,写的很详细(我把文件上传到了附件)。
工程移植、修改完成后,编译、下载测试。
第一次测试:由于L5没有打开icache,测试结果只有115分,如下:
这个分数异常的低;考虑时没有打开icache,所以重新配置工程,打开icache。重新调整代码,增加icache的部分,重复测试分数提高到了275分:
这个分数比上一次没开icache的高了好多,可见icache对于coremark有质的提升。但是看一下官方文档427,这个差了接近一倍呢?我当时就抓狂了,难道哪里没弄好?仔细检查,反复测试了几遍都是一样的结果,后来想会不会是IDE有问题呢,毕竟网上测试coremark的帖子都是用IAR的居多数,更何况我keil还是低于要求版本的5.23。那就找一个和谐版,测试一下吧。
我用的IAR 8.40符合cube的要求,安装后又简单学习了一下用法,开始测试IAR版本的coremark
可是我的IAR也有问题,没有L5系列芯片。这就有点无奈了,还好有个M33内核的选项,索性这么用吧。
编译通过,下载到开发板,速度飞快,评分高,但是最后有错误(时间小于10秒,需要增加迭代次数),修改、编译、下载,等待十几秒,终于看到了好结果。跑到了427分,与官方得分一致。
至此,coremark测试ok
可是我还不甘心,总觉得keiliar不能差这么多,所以下载了最新的KEIL MDK V5.29,这下更悲剧,编译、直接下载都没有问题,可是程序运行一段时间就挂了,根本看不到结果(keiliar使用用的相同的源文件,iar都可用、keil就是不行)。我把源文件也上传,有板子的小伙伴可以自己试一下,看看究竟是什么问题。
如何将coremark程序移植到STM32上.pdf (1.12 MB)

cm_2_iar_mdk.rar (791.92 KB)


使用特权

评论回复
评论
sangxiang1314 2020-5-5 21:50 回复TA
我用keil编译,下载,串口没有任何数据显示 
TinLee 2020-4-9 14:31 回复TA
可以 
沙发
21ic小喇叭| | 2020-3-23 14:23 | 只看该作者
感谢您的认真分享,奖励您1000家园币,这是论坛新上线的功能,可以兑换礼品或者抽奖

欢迎您体验看看~~~

使用特权

评论回复
板凳
zhangmangui| | 2020-3-23 21:54 | 只看该作者
21ic小喇叭 发表于 2020-3-23 14:23
感谢您的认真分享,奖励您1000家园币,这是论坛新上线的功能,可以兑换礼品或者抽奖

欢迎您体验看看~~~ ...

这个奖励很客观  赞
分享内容不错

使用特权

评论回复
地板
磨砂| | 2020-4-7 13:48 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
5
晓伍| | 2020-4-7 13:48 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
6
八层楼| | 2020-4-7 13:48 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
7
观海| | 2020-4-7 13:49 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
8
guanjiaer| | 2020-4-7 13:49 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
9
quickman| | 2020-4-9 20:26 | 只看该作者
         

使用特权

评论回复
10
jstgotodo| | 2020-4-9 20:26 | 只看该作者
这个的功耗怎么样呢     

使用特权

评论回复
11
iamaiqiyi| | 2020-4-9 20:27 | 只看该作者
如何编译coremark里的测试用例  

使用特权

评论回复
12
dzfansman| | 2020-4-9 20:27 | 只看该作者
如何将CoreMark程序移植到STM32  

使用特权

评论回复
13
sanxingnote7| | 2020-4-9 20:27 | 只看该作者
谢谢楼主分享的。

使用特权

评论回复
14
backlugin| | 2020-4-9 20:27 | 只看该作者
stm32f7的uart的缓存是多少  

使用特权

评论回复
15
sdCAD| | 2020-4-9 20:28 | 只看该作者
使用NUCLEO-F401RE

使用特权

评论回复
16
fengm| | 2020-4-9 20:28 | 只看该作者
在哪里申请的      

使用特权

评论回复
17
pl202| | 2020-4-9 20:28 | 只看该作者
CoreMark测试不错呢。

使用特权

评论回复
18
typeof| | 2020-4-9 20:29 | 只看该作者
            

使用特权

评论回复
19
dzfansman| | 2020-4-9 20:29 | 只看该作者
如何将CoreMark程序移植到STM32  

使用特权

评论回复
20
sanxingnote7| | 2020-4-9 20:29 | 只看该作者
学习一下了。      

使用特权

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

本版积分规则

13

主题

75

帖子

1

粉丝