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.

[参考译文] TMS570LC4357:MibSPI-DMA SPI 模式、SP2TX SP3RX DMA 状态和数据丢失

Guru**** 2466550 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1125152/tms570lc4357-mibspi-dma-spi-mode-sp2tx-sp3rx-dma-state-and-data-loss

器件型号:TMS570LC4357

了解有关数据传输后 DMA 引擎状态的问题。

具体情况如下:

在 SPI 模式下。

SPI2 TX 主时钟和 SIMO 连接到 SPI3 RX 从器件。

时钟为15Mbps: VClk /5

SP2 TX 使用通道3。

SP3 RX 使用通道2。

两个 FIFO 都被旁路。

没有其它 DMA 处于活动状态。

SPI 字符为16位、不使用 CS。

SPI3 RX 使 DMA 为接收数据做好准备。

SPI2 TX 被使能、它将请求发送到 DMA 控制器。

两个系统都使用 BTC 中断。

第一次完全传输有效:两个 BTC 中断都出现、并且存储器中没有数据丢失。

在这种情况下、为了验证目的、我在帧的末尾还有一个 CRC64。

Q1)第一个问题是、尽管 DMA 传输已完全完成、为什么挂起寄存器指示 TX 通道上的一个挂起请求?

Q2)为什么通道14和15显示待处理的请求、但尚未启用并参与此传输?

Q3)为什么 DMA 通道2 (SPI3 RX)有效控制数据包显示的是计数2而不是1?

这是以下第二个传输结果。

RX BTC 缺失。  传输完成。  RX 结果缓冲区显示缺少0x5656条目。

Q4)为什么第一个传输始终有效、而第二个类似的传输在传输中的同一个位置缺少字符?   

    -此处的示波器显示没有丢失的数据,并且发送了所有数据。  仅缺少一个字符、导致 RX BTC 中断丢失。

    -不会在线路上产生噪声、所有缺失字符之前和之后的数据都是可以的。

我准备回答其他设置问题、但请记住、尽管 DMA 状态很奇怪、它仍以7.5Mbps 运行。

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

    您好!

    您的代码是否可关闭? 如果是、您可以共享该代码吗?

    --

    谢谢、
    Jagadish。

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

    很抱歉、无法共享代码。  但是、根据提供的上下文描述和数据、回答我的前4个问题将会大有帮助。

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

    您好!

    我正在尝试在我的末尾创建您的要求、我想在我的末尾重复这个问题

    我将很快提供更新。

    --

    谢谢、
    Jagadish。

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

    你好,Jagadish。   

    我的上下文是无 ENA 和无 CS、只有一个时钟2Clock 和 SIMO2SIMO (两条线类型的半双工)、主-从。

    由于 DMA 的另一个问题、您认为我需要添加 T2CDELAY 和 C2TDELAY 非零值来使从器件准备好采集数据吗?

    该示例针对25Mbps、它们建议值6。  在15MHz 时、我应该使用3?

    为了让我了解 DMA 的行为、如果您能回答上面的问题1至问题3、我将不胜感激。

    谢谢、

    勒内

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

    尊敬的 Rene:

    谢谢、我了解了您的背景信息、并在我的最后尝试实施您的要求以查看您的问题。

    我很快会回来的。

    --

    谢谢、

    Jagadish。

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

    我使用 WDEL 并在格式上有一些延迟、从而解决了这个问题。 我尝试过的另一种解决方案 T2C/C2T-delay 在这种情况下无法正常工作。

    我怀疑我的设置中的链路质量较差。