1
我有一个问题STM32F407的uC或更多在约了Cortex-M4一般。的ARM Cortex架构代码执行
那么代码如何在手臂上执行?每一条指令是从Flash加载并执行还是存储在RAM中。抑或是缓冲的,什么是对自我修改代码在那里为RAM和CODE(闪存)2个独立的空间ADRESS
希望有人可以给我一个解释这是如何处理的默认。
我有一个问题STM32F407的uC或更多在约了Cortex-M4一般。的ARM Cortex架构代码执行
那么代码如何在手臂上执行?每一条指令是从Flash加载并执行还是存储在RAM中。抑或是缓冲的,什么是对自我修改代码在那里为RAM和CODE(闪存)2个独立的空间ADRESS
希望有人可以给我一个解释这是如何处理的默认。
...这些MCU利用意法半导体的90纳米NVM技术和ST的ART加速器™达到了业界最高的基准测试得分的Cortex-M基于微控制器,具有高达225 MHz DMIPS/606 CoreMark以180 MHz工作频率从闪存执行。
因此,从闪存执行(应该是地址空间的一部分),在默认情况下,但我敢肯定,你可以将某些代码复制到ram
和运行从那里也不过您MCU的flash
大小是多少与其sram
相比更多。
你的问题的第二部分可以通过说ARM架构使用相同的地址空间来获得指令和数据来解答,但是他们有不同的总线/高速缓存(由于性能原因) - 让自己修改代码解决方案变得更加困难。
为核心显示频率为180MHz到计时,而它看起来虽然闪光灯是尽可能快地对这些部分的嵌入式SRAM,所以从代码复制到SRAM上涨不是很大。此外,也不是很多。 – marko 2013-04-21 17:50:14
从闪存中运行,而你控制一个除数,以保持对闪存的超频(闪光灯运行速度比处理器速度较慢,因此,有时处理器必须等待)。尽管陈述了哈佛架构,但您可以以sram速度运行。 – 2013-04-22 13:58:23