描述
本文来源电子发烧友社区,作者:xiaopeng, 帖子地址:
https://bbs.elecfans.com/jishu_2289640_1_1.html提起MCU性能测试,最著名的就是CoreMark和Dhrystone。CoreMark以每秒迭代次数作为性能评价,而Dhrystone的DMIPS与Dhrystone标准相关。本文讨论CoreMark,先来看看MCU厂家如何宣传自家产品性能。
CoreMark是衡量嵌入式系统中微控制器性能的基准。通过包含列表处理(查找和排序)、矩阵处理(常见的矩阵操作)、状态机(确定输入流是否包含有效数字)和CRC(循环冗余校验)等算法的测试给出性能评价。
本文将演示如何将CoreMark移植到中科昊芯勇士DSP
开发板上。
移植之前想要准备好一个基础工程,包括功能:①串口打印; ②定时器功能
因为在上一篇中已经把串口调通了,本次就基于上一篇的工程进行移植。
**CoreMark源码下载
CoreMark源代码是免费开源的,可以自己在其官网上进行自由下载:
CoreMark官网**将源代码添加到准备好的串口工程
**添加头文件路径
因为我们新建了CoreMark文件夹,所以需要将其加入的头文件包含路径中。
**添加硬件初始化代码
CoreMark源代码里面portable_init函数实在main函数里进行调用的,portable_init是用来做一些初始化工作的,所以我们可以把硬件相关的初始代码直接添加到这行函数的开始。
**修改计时相关的代码
start_
time/ stop_time/ get_time这几个函数,是coremark程序运行时计算程序运行时间所用。这里使用cputimer0进行计时,cputimer0配置为1ms的中断间隔。cputimer0中断函数中更新Tick的值,每进一次中断加1。所以还需要修改cputimer0的中断处理函数。
修改后代码如下:
打开APP阅读更多精彩内容