在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 跳转至页
回复
打赏帖 | |
---|---|
宏定义和const关键字定义被打赏5分 | |
【功率监测与控制系统DIY活动成果贴】DIY功率计与LabVIEW数据采集被打赏100分 | |
【Freertos】任务管理被打赏10分 | |
分享博世的两种不同的喷射系统模式被打赏5分 | |
汽车+开路实验与短路实验被打赏10分 | |
多点式电子控制汽油喷射系统知识分享被打赏10分 | |
分享机械控制式汽油喷射系统被打赏5分 | |
【分享开发笔记,赚取电动螺丝刀】解决基于CH341制作无线模块时芯片发热问题被打赏31分 | |
【分享开发笔记,赚取电动螺丝刀】使用STM32F103ZE主控调试RS485通讯的避坑经验被打赏36分 | |
【分享开发笔记,赚取电动螺丝刀】移植xprintf模块被打赏27分 |