求MCU处理一个函数所用的时间

2019-08-18 18:30发布

在项目开发前遇到一个有关评估的问题,不知道该如何下手,求有知道的高手赐教!

背景是:需要开发一个项目,选定了MCU型号,知道要处理哪些任务,要估算出MCU处理完这些任务所花费的时间是否满足要求,这个估算过程我不知道该如何下手,有人知道吗?

就比如,我选择了Cortex-M3(F103,主频72MHz)为内核的MCU,要处理Func1、Func2、Func3这三个函数,三个函数中有很多子函数,子函数中又有许多语句。我的思路是,首先根据手册找到Cortex-M3一秒钟处理的指令数(1.25MIPS/Mhz,即一秒执行72*1.25*1000000条指令),计算出每条指令所需要的时间,然后把三个函数中所有的语句转化成对应的指令,最后把所有的指令相加计算出三个函数用到的总指令数,就能计算出MCU处理完这三个函数所用到的时间,思路正确吗??


如果思路正确的话,如何把函数转化成对应的指令??感觉这个是难题,希望前辈们多多指点啊!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
22条回答
Sun_Fly
1楼-- · 2019-08-19 15:46
qingyu111 发表于 2017-5-18 14:21
您说的是一种方式,我想问的是我所说的方法正确吗?

不太清楚,没太了解指令周期这块。
止天
2楼-- · 2019-08-19 19:52
Sun_Fly 发表于 2017-5-18 14:38
不太清楚,没太了解指令周期这块。

函数转化成对应的指令
在线调试的时候有那个窗口
Disassembly window  ,仿真的话就不知道了

不过执行速度真心没有那么快,很多东西都影响速度,比如说flash读取速度,
qingyu111
3楼-- · 2019-08-20 01:01
止天 发表于 2017-5-18 15:12
函数转化成对应的指令
在线调试的时候有那个窗口
Disassembly window  ,仿真的话就不知道了

那实际速度与计算出的速度相差有多大呢?
xyl210xyl
4楼-- · 2019-08-20 03:53
 精彩回答 2  元偷偷看……
qingyu111
5楼-- · 2019-08-20 05:38
止天 发表于 2017-5-19 09:43
其实不用考虑那么多,你为什么需要那么精确的时间啊

直接几倍十几倍的选不就行了,那样更稳定

嗯,是我考虑多了,的确应该像你说的这样,多谢啊
qingyu111
6楼-- · 2019-08-20 09:05
xyl210xyl 发表于 2017-5-19 11:21
定时器,去计时

是这种方式,多谢

一周热门 更多>