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.

[参考译文] RTOS:将库添加到算法插件链接

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/669355/rtos-adding-library-to-algorithm-plugin-link

工具/软件:TI-RTOS

您好!

我已经为 DSP 创建了执行边沿检测的库。

现在,我想在算法插件链接中从库调用函数。

我参考了/vision_sdk/apps/src/rtos/alg_plugins/edgedetection 插件、如所示

1.在/vision_sdk/apps/src/rtos/ALG_plugins/samplplePlugin 下创建了"lib"文件夹。

2.库放置在同一路径。

3、创建了"include"文件夹 并放置了库的./h 文件。

但在构建时低于误差时、

#链接到/vision_sdk/binaries/apps/tda2xx_evm_BIOS_all/vision_sdk/bin/tda2xx-evm/vision_sdk_c66xdsp_1_release.xe66...

 未定义         的首次引用                                                                                                                                  
 符号                                                                                                                                                      
 ------          --------                                                                                                                                  
 egdeDetection /home/kajalk/TDA/sdk_installed/vision_sdk/binaries/apps/tda2xx_evm_bios_all/lib/tda2xx-evm/66/release/app_alg_plugins.ae66

错误:未解析的符号仍然存在
错误:链接过程中遇到错误;
  "/vision_sdk/binaries/apps/tda2xx_evm_BIOS_all
  /vision_sdk/bin/tda2xx-evm/vision_sdk_c66xdsp_1_release.xe66"未编译
make[7]:***/vision_sdk/binaries/apps/tda2xx_evm_BIOS_all/vision_sdk/bin/tda2xx-evm/vision_sdk_c66xdsp_1_release.xe66]错误1
make[6]:***[c66xdsp_1]错误2.
maked[5]:***[APPS_dsp1]错误2.
maked[4]:***[APPS]错误2.
maked[3]:***[APPS]错误2.
make[2]:***[APPS_exe]错误2.
maked[1]:***[APPS]错误2.
Gmake:***[VISION_SDK]错误2.

还需要做些什么才能使其正常工作?

Vision SDK 配置、

SYS BIOS

PROCESSOR_SDK_VISION_03_00_00_00

此致、

Kajal

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

    您需要在 vision_sdk/apps/Makefile.mk makefile 中添加您的库、以便以最终二进制文件链接该库。

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

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

    您好、Brijesh、

    对于 EVE、将库添加到算法插件的过程是否相同??

    此致、

    Kajal

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

    是的、即使对于 EVE 库也是如此。 您可以在此文件中看到、也为 EVE 添加了多个库。

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

    您好、Brijesh、

    我们通过使用 CCS 获取这些文件、为 EVE 创建了库、

    egdeDetection.k

    egdeDetection.h

    并从算法插件函数调用,但屏幕上没有任何输出。

    那么、它是为 EVE 创建库的正确方法吗? (因为对于 DSP、没有问题)

    我们还通过在调用前和调用后添加 printf 来跟踪流程、以下是控制台上的日志

    [IPU1-0]    13.141401 s:  
    [IPU1-0]    13.145580 s: 捕获:正在创建!!!
    [IPU1-0]    13.145824 s: 捕获:VIP1 Slice0 Porta 捕获模式为[16位]!!!
    [IPU1-0]    13.331879 s: 捕获:创建完成!!!
    [IPU1-0]    13.332275 s: IPC_OUT_0  :正在创建!!!
    [IPU1-0]    13.332611 s: IPC_OUT_0  :创建完成!!!
    [EVE1 ]    13.332977 s: IPC_IN_0  :正在创建!!!
    [EVE1 ]    13.334075 s: IPC_IN_0  :创建完成!!!
    [EVE1 ]    13.334655 s: 算法:正在创建(algId = 22)!!!
    [IPU1-0]    13.465290 s: IPC_IN_0  :正在创建!!!
    [IPU1-0]    13.466662 s: IPC_IN_0  :创建完成!!!
    [IPU1-0]    13.466998: 显示:正在创建!!!
    [IPU1-0]    13.4667577 s: 显示:创建完成!!!
    [IPU1-0]    13.467730: 系统:SW 消息框消息池、可用消息计数= 1023
    [IPU1-0]    13.467821 s: 系统:堆= LOCAL_DDR           @ 0x00000000、总大小= 262144 B (256KB)、可用大小= 250800 B (244KB)
    [IPU1-0]    13.467974 s: 系统:堆= SR_OCMC             @ 0x00000000、总大小= 0B (0KB)、可用大小= 0B (0KB)
    [IPU1-0]    13.468126 s: 系统:堆= SR_DDR_cached       @ 0x89d03000、总大小= 368037888 B (350MB)、可用大小= 314124288 B (299MB)
    [IPU1-0]    13.468370 s: 系统:堆= SR_DDR_NON_cached   bbbb @ fc00000、总大小= 129152 B (0 MB)、可用大小= 117632 B (0 MB)
    [IPU1-0]    13.471603 s: 链:传感器正在创建!!!
    [IPU1-1]    13.468706 s: 系统:SW 消息框消息池、可用消息计数= 1023
    [IPU1-1]    13.468858 s: 系统:堆= LOCAL_DDR           @ 0x00000000、总大小= 655360 B (640KB)、可用大小= 624024 B (609KB)
    [主机 ]    13.469163 s: 系统:SW 消息框消息池,可用消息计数= 1023
    [主机 ]    13.469194 s: 系统:堆= LOCAL_DDR           @ 0x00000000、总大小= 6291456 B (6144 KB)、可用大小= 6279992 B (6132 KB)
    [DSP1]     13.469346 s: 系统:SW 消息框消息池,可用消息计数= 1023
    [DSP1 ]    13.469377 s: 系统:堆= LOCAL_L2            @ 0x00800000、总大小= 227264 B (221KB)、可用大小= 227264 B (221KB)
    [DSP1 ]    13.469438 s: 系统:堆= LOCAL_DDR           @ 0x00000000、总大小= 524288 B (512KB)、可用大小= 518328 B (506KB)
    [DSP2]     13.469621 s: 系统:SW Message Box Msg Pool,Free Msg Count = 1023
    [DSP2 ]    13.469651 s: 系统:堆= LOCAL            @ 0x00800000、总大小= 227264 B (221 KB)、可用大小= 227264 B (221 KB)
    [DS2 ]    13.469712 s: 系统:堆= LOCAL_DDR           @ 0x00000000、总大小= 524288 B (512KB)、可用大小= 518328 B (506KB)
    [EVE1 ]    13.463643 s: 算法:创建完成(algId = 22)!!!
    [EVE1 ]    13.46436s: IPC_OUT_0  :正在创建!!!
    [EVE1 ]    13.464893 s: IPC_OUT_0  :创建完成!!!
    [EVE1]     13.470017 s: 系统:SW 消息框消息池,可用消息计数= 1023
    [EVE1 ]    13.470322 s: 系统:堆= LOCAL_L2            @ 0x40020000、总大小= 22528B (22KB)、可用大小= 22528B (22KB)
    [EVE1 ]    13.470871 s: 系统:堆= LOCAL_DDR           @ 0x00000000、总大小= 262144 B (256KB)、可用大小= 242160 B (236KB)
    [EVE1 ]    13.580400 s:调用 vcop_vec_梯 度
    [EVE1]     13.580949 s:调用 vcop_vec_梯 度完成
    [EVE1 ]    13.594156 s:调用 vcop_vec_梯 度
    [IPU1-0]    13.561611 s: 链:传感器创建... 完成了!!!
    [IPU1-0]    13.561733 s: 显示:正在启动!!!
    [IPU1-0]    13.561794 s: 显示:开始完成!!!
    [IPU1-0]    13.563167 s: 捕获:正在启动!!!
    [IPU1-0]    13.565576 s: 捕获:开始完成!!!
    [IPU1-0]    13.567162 s:
    [IPU1-0]  
    [IPU1-0] ================================
    [IPU1-0] 链运行时菜单
    [IPU1-0] ================================
    [IPU1-0]  
    [IPU1-0] 0:停止链
    [IPU1-0]  
    [IPU1-0] 2:暂停捕捉
    [IPU1-0] 3:恢复捕获
    [IPU1-0]  
    [IPU1-0] p:打印性能统计信息
    [IPU1-0]  
    [IPU1-0] 输入选项:
    [IPU1-0]  
    [IPU1-0]    13.567498 s:
    [IPU1-0]不支持的选项'
    [IPU1-0]'。 请重试
    [IPU1-0]    13.56659 s:
    [IPU1-0]  
    [IPU1-0] ================================
    [IPU1-0] 链运行时菜单
    [IPU1-0] ================================
    [IPU1-0]  
    [IPU1-0] 0:停止链
    [IPU1-0]  
    [IPU1-0] 2:暂停捕捉
    [IPU1-0] 3:恢复捕获
    [IPU1-0]  
    [IPU1-0] p:打印性能统计信息
    [IPU1-0]  
    [IPU1-0] 输入选项:

    此致、

    Kajal Karande。

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

    这意味着它确实会调用您的算法函数。 现在、我不确定它内部会发生什么? 请检查算法的输出是否符合预期。 首先在独立环境中检查它。

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

    在我们测试过此库的独立环境中、它工作正常。

    我想内存可能有问题。
    为供您参考、我当前的内核/库正在使用88x72大小的映像、由于我的内核限制、我目前无法处理巨大的映像大小。 那么、您认为大小限制是一个问题吗? 或者如何检查我的链接是否未从库中处理输出

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

    您使用的是哪种算法链接? 您是否新增了此算法链接或更新了现有链接?

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

    您好、Brijesh、

    新添加了算法链接、并从框架复制链接获取引用。

    此致、

    Kajal

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

    您好 Kajal、

    好的、在这种情况下、缓冲区应由链路本身分配、您能否在链路中检查您分配的缓冲区的帧大小是否正确? 在创建时、您将接收到之前的链路信息、根据该信息、您需要为输出侧分配缓冲区。 现在、输出缓冲区的分配量取决于您的算法。  

    您能否将 CCS 连接到 EVE 并检查调用是否进入算法的处理函数并成功执行? 检查它是否在提供给算法的输出缓冲器中正确输出。

    Rgds、

    Brijesh

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

    "好的、在这种情况下、缓冲区应由链路本身分配、您能否在链路中检查您分配的缓冲区的帧大小是否正确? 在创建时、您将接收到之前的链路信息、根据该信息、您需要为输出侧分配缓冲区。 现在、输出缓冲区的分配量取决于您的算法。 "

    >>在创建时分配输出缓冲区。 缓冲器的大小可以接受、这意味着从 PRV 通道开始、即捕获链路的高度和宽度符合预期、为1080p。

    "您能否将 CCS 连接到 EVE 并检查调用是否进入算法的处理函数并成功执行? 检查它是否在提供给算法的输出缓冲器中正确输出。 "

    >>这将需要一些时间,并会让您知道。

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

    是否有此问题的更新? 是否能够立即使其正常工作?

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

    还没有、我们在调试中遇到问题、当我们将硬件与 JTAG 连接并尝试在不同的内核上加载二进制文件时、大部分时间 H/W 断开连接。
    我们无法获得将所有内核连接到执行/调试程序的任何机会。
    我们已经为同样的问题开了一个 TT。

    e2e.ti.com/.../2469601

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

    已有 Prasad 对此主题的回复。 您是否能够检查内存配置是否有任何变化?

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

    请告诉我们是否可以关闭此主题。

    Rgds、
    Brijesh