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.

[参考译文] F29H850TU:从 RTDMA 触发到实际完成数据传输的最大延迟是多少?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1620200/f29h850tu-what-is-the-maximum-latency-from-rtdma-trigger-to-actual-completion-of-data-transfer

器件型号: F29H850TU

尊敬的 TI 专家:

您能告诉我、从触发 RTDMA 到数据传输实际完成的最大延迟是多少?

在我的设置中、我将使用向上 DN 计数器生成一个 150kHz PWM、并每两个 PWM 周期(即在 75kHz 计数器周期)触发一次 DMA 以更新 CMPA/B 我观察到从 DMA 触发到 DMA 写入完成的时间变化、范围从大约 400ns 到超过 2.3µs。

我要通过在 DMA 传输完成中断中切换 GPIO 来测量这一点。 由于在 GPIO 切换之前 ePWM 占空比不会改变、因此我认为 DMA 写入完成和 GPIO 切换紧密对齐。

随附波形捕获图和 ePWM 计数器的说明性时序图:

  • Result1 显示从触发到完成所用时间约为 2.3µs 的情况。
  • Result2 显示了经过时间约为 400ns 的情况。

在这些捕获中、黄色迹线是 GPIO 输出、浅蓝色迹线是 ePWM 输出。 ePWM 行为为:

  • COUNTER = 0:输出变为高电平
  • 向上计数、在 CMPA 匹配时:输出变为低电平
  • DN 计数、CMPA 匹配时:输出变为高电平

EPWM 寄存器在 COUNTER = 0 时加载。

非常希望就预期的最大延迟和可能导致此类变化的因素提供任何指导。 非常感谢您的支持。

dma_.drawio 

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

    尊敬的 Kiyora:

    技术参考手册的第 12.5 节说明了延迟、 包括由于某些事件而导致的周期中断。 最终、延迟在很大程度上取决于系统、因此除了检查系统设置外、我目前无法提供进一步的明确答案。 我无法查看提供的图表。

    此致、

    Aishwarya

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

    尊敬的 Aishwarya:


    非常感谢您的详细答复和 TRM 参考、它非常有用!


    我的道歉。 经过进一步调查、我发现中断嵌套被禁用、从而导致 GPIO 更改时序与实际传输完成偏移。
    通过启用嵌套并将传输完成中断设置为最高优先级、我确认了从 DMA 触发事件到中断的持续时间变得一致。
    此外、根据您提供的 TRM 信息、我了解 DMA 可能会出现延迟、因此我将考虑采用更能应对此类问题的系统设计。


    再次感谢您的帮助!

    此致、

    Kiyora