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.

[参考译文] TMS320C6455:C64+中是否有"MAX"指令?

Guru**** 2551110 points
Other Parts Discussed in Thread: TMS320C6455

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/603724/tms320c6455-is-there-a-max-instruction-in-c64

器件型号:TMS320C6455

您好!

我正在尝试对 TMS320C6455上的代码进行优化、我感到非常奇怪的是、没有"MAX"汇编指令来获得更大数量的两个32位编码器。 只需为16位短整数提供"Max2"。

我是对的吗? 以及如何以简单的方式将 MAX 设置为32位整数?

谢谢、

Weslly。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    顺便说一下、我在 C 代码中使用的是内部指令。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    我已通知软件团队。 他们的反馈将在此处发布。

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

    Weslly、

    使用 C 函数 max()并查看生成的汇编代码以查看其完成方式。 这通常是在您的手动汇编/内在函数版本中实现它的最佳方法。

    除此之外、答案在很大程度上取决于您尝试实现的确切算法。 单个独立最大值(32、32)需要2个周期来进行比较并有条件地移动。 多个 max (32、32)运算可通过管道传递、并可组合成一组更小的执行数据包。 但我认为、使用内在函数无法显式实现单个或多个。 但是、如果您使用 C 函数/宏编写代码并使用最佳优化功能、编译器应为您生成良好的代码。

    此致、
    RandyP