是否有专门针对ARM Cortex M4架构进行了优化的内置gcc
内存复制功能?
答案 0 :(得分:6)
是-memcpy
。编译器和标准库通常为每个目标平台提供经过优化的memcpy
版本。这并不是说您无法在特定情况下凭借对数据本质及其对齐方式的了解而战胜memcpy
的速度,但总的来说,您应该相信标准库的作者做得很好工作。请参阅this question及其答案。
答案 1 :(得分:1)
对于大块*,值得一看的是DMA选项,广泛用于Cortex-M4微控制器系列。 在此过程中,CPU将保持空闲状态是很有效的。
不幸的是,Arm Embedded GCC编译器没有对DMA的本机支持,它将依赖于半导体供应商的代码。
*由于设置DMA控制器需要花费一些时间,因此对于小块而言可能无效。