在spiflash跑要比在内部flash要慢100倍。cache打开和不开速度都是一样。遇到的,指点一下
共2条
1/1 1 跳转至页
m480在spiflash跑程序要比在内部flash跑慢100倍是为什么?
2楼
在将程序运行在SPI闪存(spiflash)上时,相比于内部闪存,速度慢100倍的原因通常有几个可能的解释。
1. 存取速度:SPI闪存与内部闪存的存取速度不同。SPI闪存通过SPI接口进行访问,相比于内部闪存,它需要更多的时钟周期和额外的通信开销来完成读写操作,因此速度较慢。
2. SPI闪存与处理器之间的通信带宽:SPI闪存和处理器之间的通信带宽相对较低。不同于内部闪存与处理器之间直接的高速总线连接,SPI闪存的通信速率较低,可能成为程序运行慢的瓶颈。
3. 内存访问速度:SPI闪存中的程序代码需要加载到内存中,然后再被处理器执行。相比之下,内部闪存通常直接与处理器相连,无需复制代码,因此内部闪存的访问速度会更快。
4. 缓存失效:正如您提到的,无论是否开启缓存(cache),程序在SPI闪存上运行的速度都是相同的。这可能是因为处理器的缓存不适用于SPI闪存,因此无法提高其访问速度。
基于以上原因,将程序运行在SPI闪存上会导致较慢的执行速度。如果您希望加快程序的执行速度,可以考虑将程序代码迁移到内部闪存中,以提高存取速度和通信带宽。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |