Embedded STM32F4xx上的核心耦合内存可执行文件?

Embedded STM32F4xx上的核心耦合内存可执行文件?,embedded,stm32,Embedded,Stm32,试图从STM32F429s CCM运行代码,但我总是在点击CCM中的第一条指令时遇到IBUSERR标志设置的硬故障 该指令有效且一致。 STM32F4xx是否可能不允许从CCM执行?(数据访问工作正常) alios这些部件中的CCM仅连接到数据总线。无法从此内存中提取指令——代码只能使用闪存、SRAM1和外部内存 有关更多信息,请参阅的第2.1节(“系统架构”),这是上面图像的来源。Thnx!在STM32F3上,也可以从那里运行代码。但您可以从SRAM运行。将关键例程放在那里,并将数据和堆栈放

试图从STM32F429s CCM运行代码,但我总是在点击CCM中的第一条指令时遇到IBUSERR标志设置的硬故障

该指令有效且一致。 STM32F4xx是否可能不允许从CCM执行?(数据访问工作正常)


alios

这些部件中的CCM仅连接到数据总线。无法从此内存中提取指令——代码只能使用闪存、SRAM1和外部内存


有关更多信息,请参阅的第2.1节(“系统架构”),这是上面图像的来源。

Thnx!在STM32F3上,也可以从那里运行代码。但您可以从SRAM运行。将关键例程放在那里,并将数据和堆栈放在W CCM中-这是处理关键例程最有效的方法。@Clifford确定吗?I-bus和S-bus上的部分明确提到了获取指令;相比之下,D-bus上的部分没有。它说目标是“包含代码或数据的内存”,但这似乎是指D-bus用于文本数据加载。@Dashwuff:I stand correct-D-bus允许数据和调试访问代码空间,而不是执行。这一点在上有更清楚的解释,尽管有些无益,但我们使用了稍微不同的命名法。@PeterJ_01:我不确定你是否反对。这就是“我的立场得到纠正”的意思——变化被清楚地标记出来。我删除了原始注释,因为读取可能无法通过该注释并被误导。在这一部分中,CCM只有在用于通过避免总线争用同时访问数据和DMA访问其他片上内存时才具有性能优势。