AT32是一个很优秀的国产MCU,最近刚刚入手,准备给其移植coremark,发现运行起来浮点数计算结果不正确,后来发现其官方提供的linker文件里的内存位置没有对齐,只需修改linker文件里下面一行即可:
_estack = 0x20018000; /* end of RAM */ //改位置需要4字节对齐
在尝试将Coremark移植到AT32微控制器时,遇到浮点数计算结果不准确的问题,根源在于官方提供的linker文件内存位置未按4字节对齐。通过修改_linker_文件中_estack_的地址为4字节对齐,解决了计算错误,确保了MCU的浮点运算正确性。
AT32是一个很优秀的国产MCU,最近刚刚入手,准备给其移植coremark,发现运行起来浮点数计算结果不正确,后来发现其官方提供的linker文件里的内存位置没有对齐,只需修改linker文件里下面一行即可:
_estack = 0x20018000; /* end of RAM */ //改位置需要4字节对齐
您可能感兴趣的与本文相关的镜像
Stable-Diffusion-3.5
Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率
1798
524

被折叠的 条评论
为什么被折叠?