gcc 高效字节拷贝 ARM Cortex M4

gcc efficient byte copy ARM Cortex M4

是否有针对 ARM Cortex M4 架构专门优化的内置 gcc memcopy 函数?

是 - memcpy。编译器和标准库通常为每个目标平台提供经过优化的 memcpy 版本。这并不是说在了解数据的性质及其对齐方式的情况下,您在特定情况下无法超越 memcpy 的速度,但总的来说,您应该相信标准库的编写者已经做得很好工作。请参阅 this question 及其答案。

对于大块*值得研究 DMA 选项,广泛用于 Cortex-M4 微控制器系列。 它在某种程度上是有效的,在这个过程中,CPU 将是免费的。

不幸的是,Arm Embedded GCC 编译器没有对 DMA 的原生支持,它将依赖于您的半导体供应商的代码。

*由于设置 DMA 控制器需要一些时间,因此对于小块可能效率不高。