我以前没有使用过外部存储器或 ARM 内核微控制器;我用过的所有微控制器都有内部闪存和单独的数据/程序地址空间。如果这些问题非常基本,请原谅我,但我可以使用“健全性检查”来确保我没有遗漏一些重要的东西:
我有一个现有程序,当为一个微编译时,它具有以下内存表(Cortex M3 的 IAR): 40 620 字节的只读代码存储器 1 215 字节的只读数据存储器 126 900 字节的读写数据存储器
我正在迁移到没有内部闪存和 128kB 内部 SRAM 的微型计算机,因为它具有我需要的非常高的处理器速度。我的计划是使用外部 NOR FLASH(假设为 512kB)和至少一个 DDR2 外部 RAM(再次,假设为 512kB+)。
我想在启动时将外部 FLASH 的内容复制到内部 SRAM 中(在单独的内部 FLASH 空间中提供引导加载程序),并从 SRAM 中执行代码。我仍然不清楚的是 128kB 的内部 SRAM 是否足以实现这一点。我可以简单地使用 DDR2 外部 RAM 来存放所有“数据”,并从 SRAM 中执行程序代码吗?这种方式有速度妥协吗?在这个应用程序中,速度是我的第一要务。有没有办法可以加快执行速度?
谢谢