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.

[参考译文] TDA2EVM5777:[Vision SDK][Linux] A15 IPC OUT 链接被无限期阻止

Guru**** 2539500 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/851035/tda2evm5777-vision-sdk-linux-a15-ipc-out-link-blocked-indefinitely

器件型号:TDA2EVM5777

您好!

我们正在使用采用 tda2x_evm_linux_all 配置的 Vision SDK 应用、该配置使用多个 ALG 插件链接。 链的相关部分如所示

NullSrc (A15)-> 解码、VPE、DUP 等...  -> AlgPlugin_PreProc (A15)[一个队列中的4通道数据]-> IPCOut (A15)-> IPCIn (IPU)-> Select (IPU)[具有4个输出队列]

我们看到、在处理4-5帧后、整个链被阻止、而 gdb 回扫显示、IPUOut 链接在 IpcOutLink_drvProcessBuffers()中的 OSA_queGet ()中被阻止、其中 OSA_TIMEOUT_FOREVER。

注:ALG 插件在 Q_NOTINPLACE 模式下运行、为每个通道分配8个系统缓冲器。

我们尝试了以下方法来解决这个问题:

  1. 尝试增加 system_ipc_out_link_ipc_que_MAX_Elements、这会导致编译错误
  2. 将等待超时更改为 OSA_TIMEOUT_NONE、这会导致帧丢失。 [仅5~6 FPS 4通道数据从10 FPS 到达后续链路]。

您能建议任何适当的方法来解决这个问题吗?

提前感谢。

此致、

Ranjith Bhide。

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

    Ranjith

    首先、我将回顾 AlgPlugin_PreProc 的实现。 将您的实现与 vision_sdk\docs\FeatureSpecifUserGuide\VisionSDK_DevelopmentGuide.pdf 第4节算法链接开发中提到的详细信息进行比较

    谢谢、此致

    Piyali

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

    您好、Piyali、

    感谢您的回答。 我们使用上述文档中提供的指南交叉检查了 ALG_Plugin 实施情况、并遵循了所有给定的指南。

    此外、在输出为~10 FPS 的其他用例中也使用了相同的插件、但在问题用例中、我们需要~40 FPS 流速、而这种流速不会发生。

    任何进一步调查的建议都是最受欢迎的

    此致、

    Ranjith Bhide。

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

    你好,Ranjith

    要消除此问题、您能否在 IPU 上放置一个空链接并在 IPC_OUT 之后结束用例链、并检查是否能够接收到所需的帧速率?

    如果是、则我们可以开始探索 Select link 逻辑以查看是否存在任何兼容性问题。

    如果不是、则下一步是在 A15中放置一个 Null 链接(无 IPC 链接)、并检查是否实现了帧速率。 如果是、则需要调试 IPC。

    如果不是、则需要查看算法链接以了解问题。

    谢谢、此致

    Piyali