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.

[参考译文] TMS320C6678:DSP SYSBIOS/NDK 延迟问题

Guru**** 2617035 points

Other Parts Discussed in Thread: TMS320C6678, SYSBIOS

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/660535/tms320c6678-dsp-sysbios-ndk-latency-issue

器件型号:TMS320C6678
Thread 中讨论的其他器件: SYSBIOS

尊敬的 TI:

我们使用 的 TMS320C6678   正在运行以下主要软件组件版本。
SYSBIOS #  BIOS_6_46_04_53
NDK #  NDK_2_25_01_11
PDK #  pdk_c667x_2_0_6
IPC #  IPC_3_44_01_01
CCS 版本 号 7.1.0.00016
 
DSP 时钟速度#  1200MHz 时钟。
 
以太网(SGMII0)链路速度# CSL_SGMII_1000_Mbps  
 

我们面临 NDK 性能问题。 我们的应用程序使用 TFTP 从外部 PC 流式传输文件。 我们每下载几个 tftp 块。 我们已修改 NDK 以添加此功能。 我们看到的问题是、我们的应用程序无法以足够快的速度下载块、从而与应用程序的其余部分保持同步。 根据我们的性能评测、下载一个1468字节的 tftp 块大约需要250-300K 个周期。 DSP 每1ms 获取一次中断、我们针对 tftp 流任务的处理预算大约为600K 个周期。 因此、我们只能在每个 ISR 中下载2个 tftp 块、我们无法跟上步伐。 这是我们可以预期的 NDK 性能水平吗?  
 
我们尝试了大部分可能性来实现更好的性能、但没有什么帮助。
 
  1. 外部 DDR 启用高速缓存、以在 L2 SRAM 上获取高速缓存并在上进行优化。
  2. 已将 NDK 库(.text)放入 L2SRAM。 这是为了确认高速缓存不是问题。
  3. 将在 Nimu 驱动程序中用于高速缓存验证的 CSL API 替换为 SYSBIOS API (e2e.ti.com/.../960470
  4. 注释掉了代码的 TCP/IP 服务器部分、仅启用 TFTP 下载逻辑、但没有任何作用。

在进行上述更改后、由于没有任何帮助、我们得出结论、认为存储器放置不是问题、它可能与 SYSBIOS 或 NDK 配置有关。  因此、请您帮助解决此问题。  

我们如何在 SYSBIOS/NDK 中优化 DSP 应用以实现低延迟?

我们是否未能配置任何设置?

谢谢、

-Pavan

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

    我已通知 NDK 团队。 他们将直接在此处发布反馈。

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

    请检查此主题: e2e.ti.com/.../753839

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

    感谢您的回复、

    我们也尝试过、但结果相同。