[ZLG-MCU] 看了很多,还没明白 CM3 的 1.25MDIPS 是怎么实现的

[复制链接]
2599|3
 楼主| airwill 发表于 2008-12-30 22:39 | 显示全部楼层 |阅读模式
zlgmcu 发表于 2008-12-31 09:19 | 显示全部楼层

关于DMIPS

  DMIPS是“Dhrystone&nbsp;MIPS”的缩写,并非字面上每秒百万条指令的意思,它是CPU运行一个叫做Dhrystone的测试程序时表现出来的相对性能高低的一个单位。(很多场合人们也习惯用MIPS作为这个性能指标的单位)。ARM一直采用比较保守的值作为CPU的DMIPS标称值,如ARM926EJ是1.1DMPS/MHz。<br /><br />  因为基于程序的测试容易受到恶意优化的干扰,并且DMIPS指标值的发布不受任何机构的监督,所以使用DMIPS进行评估时要慎重。例如对Dhrystone测试程序进行不同的编译处理,在同一个处理器上运行也可以得出差别很大的结果。<br /><br />  通常,如果某款CPU性能达到1MIPS/MHz以上,就可以被称为“超标量运行”。而DMIPS指标则不同,它是运行一个Dhrystone测试程序的表现结果。所以,Cortex-M3内核按DMIPS/MHz评价得分会超过1,达到1.25,但并不是说在1MHz主频下,每秒就可以执行125万条指令。Cortex-M3内核采用“三级流水线+分支预测”结构,比ARM7要快,但因为没有采用“超标量技术”(该技术代价高昂),所以按MIPS/MHz评价是不可能超过1.0的。<br />
 楼主| airwill 发表于 2009-1-1 09:51 | 显示全部楼层

谢谢, 我还以为真的超标量了!

&nbsp;&nbsp;&nbsp;&nbsp;我按照超标量要求的降低寄存器相关性的汇编代码测试,&nbsp;没有发现寄存器相关性对运行速度的影响.<br />&nbsp;&nbsp;&nbsp;&nbsp;这&nbsp;MDIPS&nbsp;的概念好抽象哪
群星2008 发表于 2009-1-4 08:47 | 显示全部楼层

楼主问题的是MDIPS,不是DMIPS哦

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

本版积分规则

556

主题

17729

帖子

885

粉丝
快速回复 在线客服 返回列表 返回顶部