主题中讨论的其他器件: HALCOGEN
我正在尝试执行可能的最快数学运算(当然)。 数据表指出提供了 FPU、但 arm_math.h (来自示例代码)依赖于定义的"FPU_Pres存在"。 它是否像定义 FPU_Present 一样简单,或者我是否必须在“属性”->“处理器”选项中更改浮点支持? 注意我尝试从 VFPv3D16更改为 FPv4SPD16、但它指出我的目标处理器(7R4)不正确。
谢谢、
Jim
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我正在尝试执行可能的最快数学运算(当然)。 数据表指出提供了 FPU、但 arm_math.h (来自示例代码)依赖于定义的"FPU_Pres存在"。 它是否像定义 FPU_Present 一样简单,或者我是否必须在“属性”->“处理器”选项中更改浮点支持? 注意我尝试从 VFPv3D16更改为 FPv4SPD16、但它指出我的目标处理器(7R4)不正确。
谢谢、
Jim
我了解 了使用 HALCoGen 04.07.01和 TI ARM 编译器 v20.2.5并使用硬件浮点指令创建的 TMS570LC4357项目。
在 HALCoGen 中、选择了"启用矢量浮点单元":
在上述情况下、HALCoGen 在 HL_SYS_CORE.asm 中创建的启动函数_coreInitRegisters_通过在协处理器访问控制寄存器(CPACR)中授予特权和用户模式访问权限并设置浮点异常寄存器(FPEXC)中的 EN 位来启用 FPU:
mrc p15, #0x00, r2, c1, c0, #0x02
orr r2, r2, #0xF00000
mcr p15, #0x00, r2, c1, c0, #0x02
mov r2, #0x40000000
fmxr fpexc, r2
CCS 项目中的处理器选项为:

编辑:将处理器选项的屏幕截图更正为适用于 TI ARM、而不是 TI Clang 编译器
切斯特、
很抱歉、我花了一段时间才回到这个问题。 我还在使用 HalCoGen 4.07.01、ARM 编译器20.2.5LTS 和 CCS 10.2.0、但"处理器选项"对话框看起来与您的对话框不同。 我无法完全读取您的选项、因为屏幕截图的分辨率太低而无法放大、但我可以看到您的对话框中有6个选项–我的对话框中只有3个。
您的第一个选择似乎是“选择 ARM 架构变体”–我没有该选择。 以下是我的3个处理器选项和设置:
目标处理器版本:7R4
指定代码状态:32
指定浮点值:VFPvD16
我注意到您的编译器版本中没有包含“LTS”。 是否有 LTS 和非 LTS 版本? 除此之外、您知道我为什么会有不同的选择吗?
谢谢、
Jim