Other Parts Discussed in Thread: AM6442
器件型号: AM6442
TI 团队大家好、
我正在使用在 A53 内核上运行 FreeRTOS 的 AM6442、并且需要使用浮点单元 (FPU) 来执行某些任务。
我已经设置了编译器选项来启用 FPU、但浮点运算似乎无法按预期工作。
您能否澄清以下几点?
-
编译器和构建设置
- 使用 FreeRTOS 时、建议在 A53 (ARMv8-A) 上启用 FPU 和 NEON 的编译器标志是什么?
- 例如、我们应该使用
-mfpu=neon-fp-armv8和-mfloat-abi=hard吗?
-
FreeRTOS 配置
- 应如何配置 FreeRTOS 以支持 A53 上的 FPU 上下文切换?
- 是否
portTASK_USES_FLOATING_POINT()configUSE_TASK_FPU_SUPPORT需要启用特定的宏或设置(例如,或)?
-
中断服务例程 (ISR) 中的用途
- 在 ISR 中使用 FPU 指令是否安全?
- 如果不建议使用、那么处理由中断触发的浮点计算的最佳实践是什么?
-
其他注意事项
- 我们是否需要修改上下文切换汇编代码 (
portASM.S) 以保存/恢复 FPU 寄存器? - 是否有关于 ARMv8-A 的栈大小调整或延迟 FPU 上下文切换的指导?
- 我们是否需要修改上下文切换汇编代码 (
如果有任何 TI Processor SDK 示例或文档可通过 FreeRTOS 在 A53 上启用 FPU、请共享链接。
感谢您的支持!
此致、
Jack Cha