完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在启动CPU之后,M4内部浮点单元将被默认禁用。有任何CY系统调用来启用或禁用FPU吗?
鲍勃 以上来自于百度翻译 以下为原文 The M4 internal floating-point unit is disabled by default after startup of the CPU. Are ther any Cy-system calls to enable or disable the FPU? Bob |
|
相关推荐
5个回答
|
|
鲍勃,
如果启用浮点代码编译(编译器命令行输入),PSoC Creator将自动启用浮点单元。默认情况下,PSoC Creator允许浮点代码编译为M4编译参数。您可以在“Project & gt;Bug设置& gt;CM4& gt;编译器”中检查,然后查看在右下角窗格中的灰色框中生成的编译器参数。下面的行指示编译器用FPU(M4中可用的一个)编译设备的代码。SoFTFP参数使用浮点参数传递到函数的普通CPU寄存器(RX),其中HADFP使用浮点寄存器(SX)来进行浮点参数传递。SOFTFP通常与大多数浮点库(已经编译和链接的库——如SIM/COS库)进行编译。HADFP需要HFFP库来进行正确的编译。 “-M浮标ABI=SOFTFP MFPU=FPV4-SP-D16”-用于GCC 浮点启用代码可在“StimultPSOC63YCM4.C”文件CysStudioIfPuEnable()函数中使用。请注意,此函数将仅启用FPU,如果编译器被指令生成如上所述的浮点代码,并且将从CM4启动代码自动调用。可以在您的应用程序中引用启用/禁用FPU的函数实现。 让我知道这是否有帮助。 当做, Meenakshi Sundaram R 以上来自于百度翻译 以下为原文 Bob, PSoC Creator enables the floating point unit automatically, if you enable floating point code compilation (compiler command line input). And by default PSoC Creator enables the floating point code compilation to compiler parameters for M4. You can check that in "Project > Build settings > CM4 > Compiler" and then looking at the compiler parameters generated in grey box on the bottom right side pane. The below line instructs the compiler to compile the code for a device with FPU (the one available in M4). softfp parameter uses normal CPU registers(Rx) for floating point argument passing to a function, where as hardfp use floating point registers(Sx) for floating point argument passing. softfp typically compiles with most floating point libraries (already compiled and linked libraries - like sin/cos libraries). hardfp require hardfp libraries for proper compilation. "-mfloat-abi=softfp -mfpu=fpv4-sp-d16" - for GCC The floating point enable code is available in "system_psoc63_cm4.c" file - Cy_SystemInitFpuEnable() function. Note that this function will only enable FPU if compiler is instructed to generate floating point code as mentioned above and is automatically called from the CM4 startup code. You can refer to the function implementation for enabling /disabling the FPU in you application. Let me know if this helps. Regards, Meenakshi Sundaram R |
|
|
|
斯图尔特233 发表于 2018-12-24 10:54 先生, 长话短说, 你的意思是说,我们只需开始在MixiMCM4.C中进行浮点计算,例如,SqRT,SIN,COS等?它会自动分配给FPU吗? 以上来自于百度翻译 以下为原文 Sir, Long story short, You meant to say that, we just have to start doing floating point calculation in main_cm4.c e.g., sqrt, sin, cos etc? And It will automatically assign to FPU? |
|
|
|
iwuwjgj 发表于 2018-12-24 11:06 不完全是这样。 ARM M4有一个FPU(浮点单元),它使用一组特殊寄存器来加快任何浮点运算的加法、乘法和除法。默认情况下,此功能似乎是启用的。Sqrt、Sin、COS等是库函数,M4有一个特殊的库,可以自动增加性能。 鲍勃 以上来自于百度翻译 以下为原文 Not quite. The ARM M4 has got an FPU (Floating Point Unit) which speeds up any floating point operations as add, multiply and divide using a set of special registers. This feature seems to be enabled by default. Sqrt, sin, cos etc are library functions and there is a special library for M4 taken automatically to increase performance. Bob |
|
|
|
ncmza 发表于 2018-12-24 11:21 但是FPU将有助于进行内部乘法,即在SqRT或SUN/COS函数内? 以上来自于百度翻译 以下为原文 But FPU will help to do internal multiplications i.e., within sqrt or sin/cos functions? |
|
|
|
“但是FPU有助于做内部乘法,即在SqRT或SUN/COS函数内?” 是的,当然。 鲍勃 以上来自于百度翻译 以下为原文 "But FPU will help to do internal multiplications i.e., within sqrt or sin/cos functions?" Yes, of course. Bob |
|
|
|
只有小组成员才能发言,加入小组>>
754个成员聚集在这个小组
加入小组2103 浏览 1 评论
1849 浏览 1 评论
3667 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1784 浏览 6 评论
1534 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
566浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
420浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
435浏览 2评论
381浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
913浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 17:34 , Processed in 0.965001 second(s), Total 53, Slave 47 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号