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.

[参考译文] TMS570LS1227:带有 AIM 的 DMA 硬件请求行为

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1192244/tms570ls1227-dma-hardware-request-behavior-with-aim

器件型号:TMS570LS1227

您好!

参考手册 SPNU515C 不清楚 DMA AIM 的功能。  在第16.2.8节中、该段写入:

当通道控制寄存器(第16.3.2.4节)的自动启动模式(AIM)位被使能且通道由软件请求进行块传输时、 完成一个块传输后、使用存储在相应控制数据包中的相同通道信息、通道将再次重新启动。 在硬件请求的情况下、即使启用了自动启动、每次块完成后都需要重新触发通道。

但是 、在第16.3.1.4节中、它写入:

在下列情况下、相应的硬件使能位被自动清零:

•在一个块传输结束时、如果自动启动位 AIM (请见 CHCTRL)未激活。

•如果检测到有源通道的 AHB 总线错误。

第二个部分似乎是说 AIM = 1会阻止硬件使能位被清除、但第一个部分是说 AIM = 1不会阻止硬件使能位被清除。  哪个部分是正确的?

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

    Mark、您好!

    我会说描述不同信息的两个部分、我只是为您重新准备信息。

    16.3.1.4
    如果 AIM 未激活、 那么在块传输结束时 HWCHENA 位被清零。
    如果 AIM 被激活、 那么在块 传输结束时 HWCHENA 位将不会被清除。

    16.2.8
    如果 AIM 已启用且通道由软件触发、 则在块传输完成后、将使用相同的通道信息重新启动通道。
    如果启用 AIM 且通道由硬件触发、 则在块传输后通道不会再次重新启动、 因此需要重新触发。

    第16.3.1.4节介绍了 HWCHENA 位、 第16.2.8节介绍了触发器行为。

     为了实现适当的硬件触发操作、首先我们必须启用 HWCHENA 位、并且我们可以选择启用或禁用 AIM。

    例如、

    HWCHENA=1和 AIM=1:

        在本例中、 如果硬件触发照常发生、第一个数据块将作为 HWCHENA=1进行传输、并且 AIM 也在此处处于激活状态、因此 HWCHENA 位将不会被清除、这意味着下一个硬件触发器也可以启动另一个传输块、并且这在每个硬件上保持连续 触发。

    HWCHENA=1和 AIM=0:

       在这种情况下、如果 硬件触发照常产生、第一个数据块将作为 HWCHENA=1进行传输、并且由于 AIM 在这里不处于活动  状态、HWCHENA 位将被清零、这意味着下一个硬件触发器无法启动另一个传输块。 在这种情况下、为了启动针对硬件触发器的块传输、我们必须重新启用 HWCHENA。

    HWCHENA=0

    在这种情况下、无论 Aim 位如何、都不会触发启动块传输。

    --

    谢谢、此致<
    Jagadish。

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

    您好 Jagadish、

    我认为这是有道理的。  因此、如果通道的 AIM = 1且启用了软件触发、DMA 传输将自动重复而不触发、直到被禁用?   

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

    Mark、您好!

    [引用 userid="538201" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1192244/tms570ls1227-dma-hardware-request-behavior-with-aim/4494450 #4494450">因此、如果通道启用了 AIM = 1并启用了软件触发器、DMA 事务将自动重复而不触发、直至被禁用?   [/报价]

    是的、您回答正确。

    --

    谢谢、

    Jagadish。