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.

[参考译文] MSPM0G3507:如何确定导致数据/地址错误的 DMA 通道

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1459916/mspm0g3507-how-to-determine-dma-channel-causing-the-data-address-error

器件型号:MSPM0G3507

工具与软件:

您好!

在将器件移植到内部库时、我们遇到了问题、即我们无法确定哪个通道触发了数据/地址错误。 这将需要映射到我们的通用实现中、在该实现中、用户可以在传输完成/完成一半以及出现错误时订阅每个信道回调。

我们是否遗漏了数据表中的一些信息?

BR、感谢您的意见

Norbert

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

    诺伯特、您好!

    由于中断寄存器仅会告知您是否发生了错误、并且没有其他寄存器来指示哪个通道导致了错误、因此您需要对终端进行一些检查 在 DMA 地址错误中断处理程序中、您可以检查每个 DMASA[y]中的地址是否位于器件的有效范围(以及您的应用程序)内。 使用它、您可以找到触发中断的通道。

    对于数据错误、您可以检查 ECC 错误信息以查找哪个地址具有错误的 ECC、然后您可以查看哪个 DMASA 或 DMADA 匹配。 FLASHDEDADDR 寄存器将包含 ECC 错误的地址。

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

    您好、Dylan、

    感谢您的宝贵意见。 基本上、您是说我们没有错过产品说明书中的某些内容。 我们也在考虑您的建议、但我不相信、因为通常每个单位/渠道都有此类错误。 根据我的说法、这种驱动程序库非常适合使用、从而使用户的生活更加轻松。 你怎么看?

    BR

    Norbert

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

    我同意、这对于硬件本身而言将是一件方便的事情。 对于像我上面所描述的那样用来识别错误通道的东西、应该包含在 SDK 中、这一点我完全同意。 我将对我们的软件团队执行 ping 操作、看看我们是否可以在将来的版本中添加这些内容。