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.

[参考译文] TMS320C5517:CPU 以200MHz 运行时产生双倍 USB TX 中断

Guru**** 2595770 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/632970/tms320c5517-double-usb-tx-interrupt-when-cpu-run-at-200mhz

器件型号:TMS320C5517

尊敬的 TI 专家:

请允许我确认以下问题。

现在、我的客户使用 C55x 器件的音频连接框架开发 C5517。 如您所知、此框架专为 C5515或 C5535器件而设计、TI 未为 C5517提供该框架。 因此、他们已经将其移植到 C5517、但已解决以下问题。

[问题]
当 C5517以200MHz 运行时、EP1TX 中断在非常短的时间内发生两次。
通常情况下、EP1TX 中断每1ms 发生一次。 但是、当 C5517以200MHz 运行时、EP1TX 中断在40us 后发生、这会导致 FIFO 数据出现问题。


注:
-如果 C5517以100MHz 运行,则不会出现此问题。
-插入 USB AC 任务上的延迟周期时,未发生此问题。
-如果使用16kHz 以下的低采样率,则不会发生这种情况。

您是否愿意提供建议以解决此问题? 您是否知道避免"短时间中断"的方法?
您是否曾遇到过此问题?

如果您有任何问题、请告诉我。
此致。
Kaka

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

    我已将您的问题转发给 C55x 专家。 他们的反馈应发布在此处。

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

    感谢您的支持。 我正在等待您的团队反馈。

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

    Kaka-San、

    在 app_usb.c 中,请尝试将  void USBisr()更改为以下内容。 实际上、在处理 SOF 处理之前锁存和清除中断。

    void USBisr()
    {
    pUsbContext pContext;
    uint16 dmaSampcnt;
    
    /*锁存和清除中断*/
    pContext =&gUsbContext;
    pContext->dwIntSourceL = usbRegisters->INTMASKEDR1;
    pContext->dwIntSourceH = usbRegisters->INTMASKEDR2;
    usbRegisters->INTCLRR1 = pContext->dwIntSourceL;
    usbRegisters->INTCLRR2 = pContext->dwIntSourceH;
    
    
    /*处理 SOF 处理*/
    if (pContext->dwIntSourceH & CSL_USB_GBL_INT_SOF)
    {
    //HWI_disable();
    latchDmaXferState();
    //HWI_ENABLE();
    
    #if 1.
    /*计算自上一 SOF 以来的 DMA 传输计数*/
    dmaSampCnt =计算 DmaXferCnt();
    
    /*计算播放和录制音频间距*/
    calcPitch (dmaSampCnt);
    #endif
    }
    
    
    USB_MUSB_ISR();
    } 

    请记住、C5515和 C5517之间的寄存器偏移是不同的。 USB 映射通常也不同。 因此、请确保您使用的是最新版本的 CSLR、因为 CAF 可能使用的是较早版本的 CSL。

    希望这对您有所帮助。

    Lali

     

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

    感谢您的支持。
    我会将此信息告知我们的客户。 如果我得到他们的反馈、我会发布他们的反馈。

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

    你好、Lali、

    我的客户无法解决此问题、即使他们尝试使用测试他们的应用程序代码以用于您的代码。  如果它们将 CPU 设置为150MHz、则不会发生这种现象。 您是否有任何想法可以解决此问题?

    顺便说一下、您是否检查过从 C5515移植到 C5517的 CAF 行为? 您是否愿意提供建议、将最新的 CSL 移植到 CAF?


    此致。
    Kaka

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

    请您回答我们的问题吗?

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

    我正在等待您的反馈... 请提供您的意见吗?

    此致。
    Kaka
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Kaka-San、
    遗憾的是、我对 C5515至 C5517的 CAF 端口没有更多详细信息。
    我唯一可以建议的是查看2个 CSL 版本之间的差异以及2个平台之间的任何特定于 API 的差异。
    很抱歉、我没有更多详细信息。

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

    你好、Lali、

    感谢您的评论。
    我可以理解您的情况。 请提供其他建议以解决此问题吗?

    如果客户提供了此现象所观察到的示例代码、您是否可以检查它? 另外、您认为 CAF 可以在200MHz 上运行吗?

    如果您有任何问题、请告诉我。
    此致。
    Kaka

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

    请您对我们的请求提供意见吗?

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

    抱歉回复很慢。 我们没有在配置为200MHz 的 C5517上运行的现成可共享示例、以确保该示例在该频率下能够按预期工作。

    让我再深入探讨一下这个问题、然后返回给您。 请在几天内 ping 这个主题、看看我是否有什么东西。
    感谢您的耐心等待。

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

    你好、Lali、

    感谢您的回答。
    我正在等待您的反馈。

    我们从我的客户那里获得了其他数据。 如果您有任何意见、请查看。 请告诉我。

     e2e.ti.com/.../7457.USB.pdf

    我还收到了我的客户的请求。 您能否使用 CAF 和最新的 CSL 在您的身边重现此问题?

    此致。
    Kaka

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我关闭了这个线程。 感谢您的支持。

    此致。
    Kaka