本帖最后由 dql2016 于 2020-12-20 19:09 编辑
CoreMark是用来衡量嵌入式系统中中心处理单元(CPU,或叫做微控制器MCU)性能的标准。该标准于2009年由EEMBC组织的Shay Gla-On提出,并且试图将其发展成为工业标准,从而代替陈旧的Dhrystone标准。代码使用C语言写成,包含如下的运算法则:列举(寻找并排序),数学矩阵操作(普通矩阵运算)和状态机(用来确定输入流中是否包含有效数字),最后还包括CRC(循环冗余校验)。目前CoreMark已迅速成为测量与比较处理器性能的业界标准基准测试。
CoreMark的得分越高,意味着性能更高。
在CoreMark的官网上可以看到STM32L552的CoreMark得分:
ST官方测试结果如下:
也可以从CoreMark的官网上下载测试代码移植到自己的MCU上,亲自测试性能。
我这里下载的为coremark_v1.0.1zip。
移植步骤不再赘述,这里使用板卡的PG7、PG8低功耗串口1,全速110MHz。
KEIL优化配置见下图:
将CoreMark相关文件添加到工程目录:
移植需要注意的是中断配置:
结果如下:
关ICAHE
开ICHAE 1-way模式
开ICHAE 2-way模式
结果和官方相差有点大,比性能,keil ac6交叉编译工具链依然不如iar。。。
测试工程:
stm32l552zet6qu_test.7z
(5.84 MB, 下载次数: 6)