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.

[参考译文] AM4378:双精度浮点问题

Guru**** 2914610 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/653758/am4378-double-precision-floating-point-questions

器件型号:AM4378

大家好,  

在 AM437x 上,我们有 Neon (单精度)和 VFPv3 (双精度)  ( 在 AM57xx 上,我们有 VFPv4)。

请回答以下问题:

1-您需要调用 VFPvx 以获得   A8-A9-A15 ( 32位架构)中的硬件双精度支持,对吗?   

2-    您是否有任何基准/数字显示处理 双精度的 VFP 功能?  我对滤波非常感兴趣  

3-  VFPv3 与 VFPv4之间是否有任何比较?

非常感谢  

此致

卡洛

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    工厂团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    卡洛、

    正确的做法是、AM335x 和 AM437x 器件实现了采用 VFPv3-D16 FPU 的 ARMv7-A 架构。 AM57xx 器件实现了 VFPv4-D16 FPU。 它们都支持双精度浮点运算。

    VFPv4与 VFPv3的主要增强功能是半精度支持和融合乘法加法指令。 请参阅:
    developer.arm.com/.../floating-point
    以了解更多详细信息。

    关于性能基准测试、下面列出了一些来自独立来源的常规基准测试:
    www.youtube.com/watch
    www.anandtech.com/.../exploring-the-floating-point-performance-of-modern-arm-processors

    另请注意、必须为给定的 VFP 配置指定编译器选项。 例如、gcc 编译器需要指定-mfpu 以进行指定。 有关详细信息、请参阅:
    gcc.gnu.org/.../ARM-Options.html
    mfpu=name 指定目标上可用的浮点硬件(或硬件仿真)。 ‘的‘为:‘VFP’、‘vfpv3’、‘vfpv3-fp16’、vfpv3-D16’、vfpv3-D16-fp16’、 ‘vfpv3xd’、‘vfpv3xd-fp16’、‘neon’、‘neon -fp16’、‘vfpv4’、 ‘vfpv4-D16’、‘fpv4-sp-D16’、‘neon vfpv4’、‘FP-ARMv8’、‘neon v4-ARMv8’、 和‘crypto-non-fp-armv8’。
    如果指定了-Msoft-float、则指定浮点值的格式。

    如果您需要进一步说明、请告知我们。
    Jian
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请原谅我、但我想问一个问题、以进一步了解 FPU 的用途。  如果我想构建用户空间应用、我需要哪些设置、以便该应用将在 AM335x、AM437x 和 AM57xx 上使用 FPU。  也就是说、如果我将工具链设置为使用--with-arch=armv7-a --with-tune = generic-armv7-a --with-fpu = vfpv3-D16-with-float=hard 来构建应用程序、该应用程序是否可以在所有设备上运行而不会出现任何问题?  vfpv4-D16是否向后兼容 vfpv3-D16?  

    感谢您的帮助、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Ben 让我与我们的团队核实 TI 工具所需的具体选项。
    很抱歉、我被侧边了、因为我的回复延迟。
    Jian
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Ben、

    TI Linux SDK 指向使用具有内置选项的 gcc。 您可以在编译时打开"-v"以报告所有选项。 请参阅我们 SDK 团队的以下内容:

    >我对 GCC v7.2执行了此操作、得到了以下结果:
    >$ arm-linux-gnueabihf-gcc -v -c -o hello.o hello.c
    >[大量内容]
    > collect_gcc_options='-v''-c''-o''hello.o''-March =armv7-a'
    >'-mtune = cortex-A9''-mfloat-abi=hard''-mfpu=vfpv3-D16''-mthum'
    >'-MTLS-dialect=GNU'

    对于第二个问题、是的、如果您构建的是-with - FPU=vfpv3-D16、应该在 VFPv4器件上运行。

    此致
    Jian
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    排印错误:

    TI Linux SDK 指向使用 Linero 工具。

    Jian

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    根据我们的内部跟踪、我将关闭 TT。 如果您有其他问题、请重新打开。
    Jian