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.

[参考译文] TMS320F280025:IQ 数学可执行效率

Guru**** 2581345 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/965190/tms320f280025-iq-math-execuate-efficiency

器件型号:TMS320F280025

您好专家、

我的客户正在从 F28034移植到 F280025。

他们使用 IQmath 来编写代码、由于日程紧张、他们无法全部更改为 TMU。 如果他们使用[IQ to float–sin/cos using TMU–float to IQ]作为关键算法。 这种方法是否可以节省时间?

或者、您能告诉我们  [IQ to float]或[float to IQ]的速度吗?

BR

Emma

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

    尊敬的 Emma:

    有关基准测试、请参阅 IQ Math 用户和 FASTTS 指南中的表5.3。  

    _IQ24sin 需要42个周期。  (假设 N=24。 周期将因 N 的其他值而异)

    _IQN 是一个宏、需要0个周期。

    IQNtoF 需要22个周期

    使用 FASTRTTS 和 TMU 运行 sin 时、双精度运行需要63个周期、单精度运行需要38个周期。

    因此、使用 TMU 方法时、双精度方法的总周期数为85个周期单精度方法为60个周期

    因此、在任一种情况下(单精度或双精度)、使用_IQsin 会更快。

    希望这对您有所帮助。

    -Shantanu

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

    Shantanu,

    感谢您的快速响应。 这很有帮助。

    但是、我 在 我的代码中测试了__sin (test_a)函数、它只花费了我16个周期的时间。

    那么、您在哪里得到了38个周期的结果。

    在 启用 TMU 后、我发现没有"_"的 sin ()函数也可以更快。

    我对什么是真正的 TMU 指令有点困惑。

    • TMU0/TMU1是否受到影响?
    • 或_和 TMU0/TMU1受影响?

    BR

    Emma

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

    Emma、

    我在基准测试部分的 FASTTS 用户指南中获得了这些数字。 我将介绍 FASTRTS 使用 FPU 和 tmu0提供的 sin ()函数。 您能否验证我们是否正在讨论相同的 API? 我不确定使用"_"的 API。 它来自哪个库?

    -Shantanu