qemu-system-arm 和 lm3s6965evb / Cortex M3 ... 需要更多内存

qemu-system-arm and lm3s6965evb / Cortex M3 ... need more ram

我正在使用 arm-eabi-none-gcc 和 运行 机器 lm3s6965evb 中的 qemu-system-arm 成功编译我的单元测试....但是对于一些我需要的单元测试超过 lm3s6965evb mcu/machine 拥有的 64k RAM。

IAR 模拟器显然在 'machine' 中没有硬性限制,所以我只是制作了一个允许单元测试程序使用的虚假链接文件,例如512k 内存。这工作(令人惊讶地)很好,但 qemu 不会那样玩(当我更改链接器文件中的 RAM 部分时挂起)。所以我需要另一台机器...

但考虑一下:我想我只需要执行 ARMv7 thumb(2?) 代码的东西,比如 CortexM3。它也可能是 Cortex-M33,它是一个 ARMv8 ... 我不关心硬件寄存器或中断等。但是,我确实需要 printf() 通过半主机或其他方式(uart 等)工作,以打印单元测试状态 (success/failures)

我的最佳人选是什么,

?

谢谢

/T

(事实证明,我误读了“mps2-an385”文档和教程,-一点都不复杂。)

如果我只使用“mps2-an385”机器并修改链接器文件以使用更多闪存和内存,它就可以工作。目前,我将其增强到 4x ram 和 flash,目前已经足够了。 (还没有找到确切的限制是什么。)

还是想听听有没有其他的解决方法

QEMU 的 lm3s6965evb 模型遵循真实的硬件,它没有太多 RAM。如果您想要更多 RAM 并且您不特别想要那些 Stellaris 板的模型,请选择具有更多 RAM 的板模型类型。如果您需要使用 M 型内核,请尝试使用 MPS2 板之一。如果您对 A-profile 核心感到满意,那么带有 Cortex-A15 的“virt”板可能是一个不错的选择。