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.

[参考译文] TMS320F28069M:运行 IQmpy()的时间更长

Guru**** 2547180 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/783852/tms320f28069m-longer-time-to-run-iqmpy

器件型号:TMS320F28069M

您好!

在闪存中执行代码。

根据文档、它需要4-6个周期来完成 乘法。

但在实际测试中、它需要在代码下最多18个周期。 我应该在哪里检查? 非常感谢。

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

    Q 的定义是什么? 以及如何测量周期数? 如果删除上面的_IQdiv 指令并在代码中仅存在_IQmpy()的配置文件,会发生什么情况?

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

    您好,Sira,

    1. q 定义为 Q24,通过定点计算 IQ_Math,将 CPU 设置为 fpu32
    #ifndef MATH_TYPE
    #define MATH_TYPE IQ_MATH

    #endif
    #ifndef global_Q
    #define GLOBAL_Q 24.

    #endif

    2.通过 CCS 中集成的事件计数来测量执行时间

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

    谢谢。

    你是否尝试过我上面的建议3?
    项目是否启用/禁用了任何优化?

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

    另一个重要的考虑因素是、如果您正在从闪存(可能具有与指令提取相关的等待状态)与 RAM (无等待状态)中运行。

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

    是否有更新?

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

    运行电机控制环路需要多长时间? 目前、我们需要45us、这是否合理? 谢谢。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Daniel、您好!

    您能否提供有关您如何修复先前问题的更新信息?

    我不熟悉电机控制环路要求。 这将帮助您提出另一个问题、以便他们将其发送给相应的专家。

    如果您将此问题标记为"已验证的答案"、您将不胜感激。

    谢谢、
    Sira