本帖最后由 pluto55 于 2013-1-24 18:03 编辑
首先声明,我看过香主的解答贴:https://bbs.21ic.com/icview-269184-1-1.html,明白了这个东西的原理,具体的细节有一些不清楚,望高手解答。
1.stm32F4官方demo例子中 Prefetch Buffer是关闭的,Instruction cache、Data cache是开启的,原因是否是勘误手册2.1.1所写:
对应的代码为: FLASH->ACR = FLASH_ACR_ICEN |FLASH_ACR_DCEN |FLASH_ACR_LATENCY_5WS;
想问的是:1)FLASH预取和ART的指令预取、数据预取感觉是一个东西啊,有什么区别?
2)手上的芯片是Z版本的,是不是可以全开了,即代码为:
FLASH->ACR = FLASH_ACR_PRFTEN|FLASH_ACR_ICEN |FLASH_ACR_DCEN |FLASH_ACR_LATENCY_5WS;
会不会出问题?
3)用代码执行测试了一下,上述两种情况的代码执行速度是有差别的,大概是1:1.12,即开启FLASH预取后执行速度变快。
|