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.

[参考译文] 编译器/AM5728:用于 IPU 的 SIMD

Guru**** 2589275 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/636674/compiler-am5728-simd-for-ipu

器件型号:AM5728

工具/软件:TI C/C++编译器

你好。

阅读适用于 Sitara AM572x 系列的 TRM、 我在关于双核 Cortex-M4 IPU 子系统的第7.1.2段中发现每个 IPU 都集成了 ARMv6 SIMD 和数字信号处理器(DSP)扩展、但当我尝试在 Properties->Build->ARM Compiler->Advanced Options->Runtime Model Options 中启用 SIMD 选项时、我首先会收到一条错误消息、如下图所示:

稍后,如果启动编译,我将获得:

错误#24018-D:选项--neon 在没有-mv7A8时无效
gmake:***[main.obj]错误1.
gmake:目标"全部"不会由于错误而重新生成。

那么问题是:这是编译器问题/错误还是数据表报告了错误?

让我补充一句、该问题存在于 TI 的编译器 v17.9.0 STS 和 v16.9.4 LTS 中。

谢谢、此致、

Scianni Vincenzo

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

    数据表中指定的"ARMv6 SIMD "与 IPU 编译器中列出的"SIMD 指令瞄准 NEon"选项不同、请参阅 ARM 社区中的 NEon-Advanced SIMD 与 SIMD 讨论。 为了启用针对 NEON 的 SIMD 指令、处理器必须采用 armv7/armv8架构。

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

    Garret 先生、您好!

    感谢您的澄清,但如何使用/生成 SIMD 指令? 内在函数在哪里?

    让我来解释一下 CRC 单元:阅读一些 ARM 论坛 Cortex M4或至少一些版本的 CRC 单元。 这是 IPU 的情况,还是我需要在 SW 中实现它?

    再次感谢大家、致以诚挚的问候。

    Scianni Vincenzo  

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

    GCC 不提供 armv6 SIMD 内在函数指令。 您可能希望使用内联汇编实现此类函数。

    TRM www.ti.com/.../spruhz6中未列出 CRC 单元。 您需要在软件中实现它。

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

    您好 Garret 先生。

    感谢您的回答、但我不使用 GCC:目前我使用的是 TI 编译器 v17.9.0.STS。

    无论如何,我想这两个编译器的情况不会有所不同,所以,如果你没有任何答复,我会听从你的指示,我会考虑结束这一讨论。

    再次感谢您的支持。

    此致、

    Scianni Vincenzo