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.

[参考译文] SK-TDA4VM:与 TDA4VM EVM 配合使用的 SDK

Guru**** 2539500 points
Other Parts Discussed in Thread: TDA4VM

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1158631/sk-tda4vm-which-sdk-to-use-with-tda4vm-evm

器件型号:SK-TDA4VM
主题中讨论的其他器件:TDA4VM

尊敬的支持:

在阅读有关 TDA4VM EVM 的文档时有点困惑。  在用户指南中、我看到以下部分:
 

获取 PSDK RTOS

您可以从以下链接下载适用于 TDA4VM 的最新处理器 SDK RTOS、

Processor SDK RTOS 源包:

https://dr-download.ti.com/software-development/software-development-kit-sdk/MD-bA0wfI4X2g/08.04.00.06/ti-processor-sdk-rtos-j721e-evm-08_04_00_06.tar.gz

还需要处理器 SDK Linux 文件系统和引导分区文件:

https://dr-download.ti.com/software-development/software-development-kit-sdk/MD-U6uMjOroyO/08.04.00.11/tisdk-default-image-j7-evm.tar.xz https://dr-download.ti.com/software-development/software-development-kit-sdk/MD-U6uMjOroyO/08.04.00.11/boot-j7-evm.tar.gz

接下来、我将看到以下部分:

 

获取 PSDK Linux

注释

如果您不打算更改 Linux 内核、u-boot 或文件系统上的任何内容、则可以跳过此步骤。

您可以从以下链接下载适用于 TDA4VM 的最新处理器 SDK Linux、

https://dr-download.ti.com/software-development/software-development-kit-sdk/MD-U6uMjOroyO/08.04.00.11/ti-processor-sdk-linux-j7-evm-08_04_00_11-Linux-x86-Install.bin

有关  安装步骤、请参阅 Processor SDK Linux 文档。


这些步骤似乎是/或。  最后一个部分更像我们以前的单 ARM 内核器件上使用的 GSG。   我执行第一节“获取 PSDK RTOS”中描述的操作,或者执行“获取 PSDK Linux”中描述的操作,对吗?  这些安装步骤中是否有一个比另一个更好?  为什么采用这两种不同的方法?

谢谢、
Tim

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

    您好 Tim:

    "EDGE_ai_sd_card.img"的目的是为客户提供一种快速启动板并直接在板上开始应用开发的方法,类似于 Raspberry PI 提供可刷写到 SD 卡中的图像以快速启动板进行开发的方法。  

    当需要修改 SD 卡映像上预编译的内容时、例如错误补丁、更改某些 RTOS 库、 或对新驱动程序的支持、客户可以通过 https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-sk-tda4vm/08_04_00/exports/docs/development_flow.html 下载 Linux (如果客户希望修改 Linux 组件)或 RTOS (如果客户希望修改 RTOS 组件)的源代码。

     对于 PSDK RTOS、它依赖于 PSDK Linux、因为 PSDK RTOS 仅包含在远程处理器上运行的代码、因此 PSDK RTOS 依赖于预构建的 Linux 文件系统和引导分区、为用户提供一个与之交互的 Linux 终端。 PSDK Linux 提供了预编译 Linux 文件系统和引导二进制文件的源代码、与 PSDK RTOS 没有依赖关系。

     我想这一点在链接的 SDK 开发流程页面的开头进行了介绍。  

    此致、
    TK

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

    你好 TK:

    感谢您的回答。 看起来我可能需要一些其他培训来更好地了解 TDA4VM 的工作原理。  我不清楚 PSDK RTOS 和 PSDK Linux 的含义以及使用它们之间的关系。  我曾通读了 SDK 开发流程和以下措辞:

     

    “如果您要修改任何 RTOS 组件,如 vision_apps、tiovx、tidl、tiadalg 等,则需要重建 RTOS 二进制文件并使用最新的更新 SD 卡文件系统。 这需要处理器 SDK RTOS 源代码包和处理器 SDK Linux 文件系统包。

    如果要修改任何 Linux DT、更新 u-boot、更新系统固件(sysfw)、设备驱动程序等,则需要使用 Processor SDK Linux 源代码包。”

    但我不清楚其中哪一项适用于我要做的事。

    因此、对于 TDA4VM、我需要使用我的 Linux SDK、以便能够构建和运行基于 C 的应用(网络和 H.264解码线程)。  将使用 Ubuntu 18.04在 Linux PC 上构建此功能、并希望使用 NFS 进行我的开发–就像我以前使用 过的旧版单 ARM 内核器件和 EVM 一样。  它们只有 Linux SDK。  您能不能建议这与您在下面提到的 PSDK RTOS 和 PSDK Linux 有何不同?   并告知我需要在 Linux PC 上安装和使用这些 SDK 中的哪一个?

    谢谢、
    Tim

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

    你好 TK:

    我的部分会更加混乱-从阅读适用于边缘 AI 的 Processor SDK Linux 文档中可以看到以下部分:

     

    EdgeAI SDK 与处理器 SDK

    了解 EdgeAI SDK 和 Processor SDK 之间的差异以及 TDA4VM-SK 和 J721E EVM 在类似行上的差异非常重要。

    虽然 SoC 在 TDA4VM-SK 和 J721E EVM 之间很常见、但电路板设计和外设却非常不同。 例如、eDP 和 HDMI 端口直接在 TDA4VM-SK 上提供、而 J721E EVM 上仅提供 eDP 端口、因此需要用于 HDMI 的附加信息娱乐卡。 同样、从电源开始、其他可用外设和电路板属性也存在差异。 请参阅相应的电路板用户指南、以更好地了解差异。

    SDK 也不兼容。 EdgeAI SDK 仅在 TDA4VM SK 上工作、处理器 SDK 仅在 J721E EVM 上工作。 这两个 SDK 在软件驱动程序可用性方面存在差异。 尽管 EdgeAI SDK 构建于处理器 SDK 之上、但构建配置不同。 例如、使用 EdgeAI SDK 上的 Linux 可启用 GPIO 等外设访问、而处理器 SDK 中的 RTOS 内核可提供此类访问。

    这表示处理器 SDK 无法与我的 TDA4VM EVM 配合使用。  在本文档中,有一节“SDK 开发流程”,其中引用了以下内容:

     

    获取 PSDK Linux

    注释

    如果您不打算更改 Linux 内核、u-boot 或文件系统上的任何内容、则可以跳过此步骤。

    您可以从以下链接下载适用于 TDA4VM 的最新处理器 SDK Linux、

    https://dr-download.ti.com/software-development/software-development-kit-sdk/MD-U6uMjOroyO/08.04.00.11/ti-processor-sdk-linux-j7-evm-08_04_00_11-Linux-x86-Install.bin

    有关  安装步骤、请参阅 Processor SDK Linux 文档。

    它是指在文件名中专门引用 J7 EVM 的.bin 文件,根据上述部分,我无论如何都不能使用 Processor SDK。  所以我现在真的很困惑。  适用于边缘 AI 的 Processor SDK Linux 文档引用了一个无法与此 TDA4VM 配合使用的部分和文件?  我在这里缺少什么吗?

    谢谢、
    Tim

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

    您好 Tim:

    PSDK-Linux 是核心 SDK Linux、具有一些可满足汽车/工业市场需求的附加 Yocto 配方。 当您想开发用户空间应用或编写一些 Linux 驱动程序等时、应使用此工具

    PSDK-RTOS 主要涉及在远程内核上运行的内容。 此处的存储器映射、远程内核固件等都不同。 它需要在主机 CPU 上运行 PSDK-Linux 并在其基础上构建主机应用程序。

    EdgeAI SDK (8.4)在驱动程序可用性(捕获、编解码器、显示、HWA 驱动程序)方面对 PSDK-RTOS 和 Linux 进行了一些自定义、并提供了一些用于运行 edgeeai 应用程序的用户空间库。

     

    因此、EdgeAI SDK (8.4)= PSDK-Linux (具有 edgeai-apps.dtbo 覆盖)+ PSDK-RTOS (在 make SDK 期间具有 build_EDGEAi=yes 选项)。

    EdgeAI 的这种配置是在 TDA4VM-SK 电路板上运行所需的 PSDK-Linux/PSDK-RTOS 的特殊配置。

     

    对于您尝试执行的操作、

     

    “我正在进行一个演示,我需要移植涉及2个线程的工作代码: 一个网络线程,用于接收 UDP 数据包并汇编 H.264基本流帧,然后将其传递给 H.264视频解码线程,该线程从网络线程接收 H.264编码帧(即 H.264基线,因此仅限 IP 帧),并解码和显示它们”

     

    这似乎是一个用户空间应用、如下面所述、下载-安装-构建 PSDK-Linux/PSDK-RTOS、以便在 TDA4VM-SK 上运行。 使用 NFS 引导或 SD 卡引导、并启动应用程序以在主机内核上运行。 您可以查看 GStreamer 的“udpsrc”元素来抓取数据包,编写应用程序(在 appsrc-appsink 之间),使用视频编解码器加速器之一(v4l2h264enc、v4l2h264dec、v4l2h265dec)并在屏幕上显示(kmssink)。

    此致、
    TK

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

    你好 TK:

    感谢您明确说明这一点。  我现在明白了–非常感谢。  从阅读现有的文档中看这一点并不十分清楚、因此、感谢您整理文档并让我指明正确的方向。

    谢谢、
    Tim