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.

[参考译文] CCS/TMS320F28377S:周期计数差异

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/750703/ccs-tms320f28377s-cycle-count-difference

器件型号:TMS320F28377S

工具/软件:Code Composer Studio

你好

我正在 使用 CCSv8中的配置文件时钟来测量循环所需的周期数。 我能够得到一个数字(例如、大约10000个周期)。 然而、当单步执行一个完整环路时、我得到的数字要小得多(每个环路小于2000个周期)。 我在第一种方法中使用了硬件断点。

我测量它的方式是否有问题? 什么可能导致如此大的差异? 在此循环期间、我正在从闪存读取一些数据、是否可能是由闪存等待状态导致的?  

感谢你的帮助

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

    您好 Lucas、

    有几个潜在因素、在没有测试案例的情况下很难确定哪一个可能是原因。 需要记住的一点是、如果在循环中运行时为中断提供服务。 ISR 中的时间将是10K 计数的一部分。  

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    可能有我不知道关闭的中断? 我当然没有在代码中添加任何中断、因为它是一个简单的处理循环。 此时代码中没有计时器或通信接口。 是否有一个地方列出了此类行为的最常见因素? 感谢你的帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    没有列出所有潜在原因的全面文档。 最好的方法是提供一个小的可重现测试用例。 测试用例应尽可能简单(依赖项最少)、但能够重现问题。