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.

[FAQ] [参考译文] [常见问题解答] TDA4VH-Q1:通过引导模式实现功能安全

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1375450/faq-tda4vh-q1-achieving-functional-safety-with-boot

器件型号:TDA4VH-Q1

工具与软件:

提供了将 SDL 功能安全模块(例如 BIST、POK、VTM 和 TOG)与 PDK 引导应用程序集成的步骤。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    PDK BootApp 是由 SBL 引导的三级引导加载程序、用于引导所有内核和高级操作系统(Linux/QNX)。 SDL 软件包提供安全机制和功能的接口、用于开发涉及功能安全的软件应用。 在器件启动期间、应用必须使用 SDL 的一些功能、例如自检诊断、用于验证器件是否正常运行。

    内置自检(BIST) 、是一个允许对 IC 中的内存区域和逻辑电路进行自检的功能。 SoC 中连接到 CPU 内核的逻辑电路通过进行测试 逻辑 BIST (LBIST) 和中的内存区域使用进行测试 可编程内存 BIST (PBIST) 、可实现永久性故障检测。

    电压和热管理(VTM) 控制芯片中的温度监控器。 VTM 模块为应用提供以下功能-初始化 VTM、根据警报温度检查温度传感器状态的能力、以及清除和控制 VTM 事件中断的能力。

    此器件具有多个称为的内部电压监控器 电源正常(POK) . 这些监控器可配置为检测欠压(UV)或过压(OV)情况并通过 ESM 报告错误。 POK 模块负责监控和准确检测电压电平。 POK 模块能够监控一系列电源并在被监控的电源的可编程上限和下限阈值内指示故障。 POK 用于通过可编程阈值电平来监测电压电源电平。

    互连隔离垫片/超时垫片(TOG) 是 TI 专有的 IP、用于防止由从设备引起的挂起、从设备可暂停互连并安全地终止此类事务。 它跟踪事务、如果未处理时间过长、则超时、并通过可监控的中断报告错误。 ToG 模块提供了一个安全示例、说明如何使用具有错误注入和错误响应测试功能的 TOG、以及 ESM 应用回调的使用。

    请按顺序应用以下补丁、通过以下提到的步骤将上述模块与 PDK BootApp 集成-
    cd $RTOS_SDK/pdk/
    Git 初始化
    Git 添加。
    Git commit -m"init commit"
    Git am $path_to_BIST_patch_shared_below
    Git am $path_to_VTM_patch_shared_below
    Git am $path_to_Pok_patch_shared_below
    Git am $path_to_TO_TOG_patch_shared_below

    1. BIST 与 PDK BootApp 的集成:

    当引导应用程序在 DDR 下运行时、它表示它在主域内运行。 请务必注意、可能影响主域整体功能的任何 BIST 评估都无法从引导应用程序执行 此预防措施对于防止启动应用程序本身的潜在损坏是必要的。

    因此、必须从引导应用程序中排除以下 PBIST 测试、因为在启动引导应用程序之前、应首先重置主域

    1. PBIST 主红外0
    2. PBIST 主红外1.
    3. PBIST MSMC
    4. PBIST NAVSS

    如果电路板在 SD 或 eMMC 引导模式下引导、则在运行以下测试时应小心谨慎、因为这些测试会影响 SD/eMMC 驱动器:

    1. PBIST HC
    2. PBIST DSS
    3. PBIST 编解码器0
    4. PBIST 编解码器1
    5. PBIST A72 -影响 Linux 引导

    e2e.ti.com/.../0001_2D00_BIST_2D00_Integration_2D00_with_2D00_SBL_2D00_BootApp.txt

    注意:要从 SDL 排除上述测试、请按以下方式应用下面共享的补丁:

    CD $RTOS_SDK/SDL/
    Git 初始化
    Git 添加。
    Git commit -m"init commit"
    Git am $path_to_patch_shared_below

    e2e.ti.com/.../6215.j784s4_5F00_sdk91_5F00_bist_5F00_integration_5F00_sdl.txt


    2. VTM 与 PDK BootApp 的集成:

    e2e.ti.com/.../0001_2D00_VTM_2D00_Integration_2D00_with_2D00_PDK_2D00_BootApp.txt


    3. POK 与 PDK BootApp 的集成:

    e2e.ti.com/.../0002_2D00_POK_2D00_Integration_2D00_with_2D00_PDK_2D00_BootApp.txt


    4.与 PDK BootApp 集成:

    e2e.ti.com/.../0003_2D00_TOG_2D00_Integration_2D00_with_2D00_PDK_2D00_BootApp.txt

    **注:这些修补程序按顺序在 J784s4 SDK 9.1上验证、以启用所有四个模块。 如果要启用任何特定模块、请手动应用更改。 如果正在使用任何其他 SOC 或不同版本的 SDK、请以类似方式移植更改。 **


    应用上述补丁后、请执行以下提到的步骤、通过 PDK BootApp 引导至 Linux。

    1. 使用以下命令生成 LateApps

      • 转至 / /packages/ti/boot/sbl/example/boot_app/scripts

      • 运行./ generate_lateapps.sh j784s4_evm

      • 中将生成多核图像(lateapps) /packages/ti/boot/sbl/example/boot_app/multicore_images/j784s4_evm/.

      • multicore_MCU2_0_MCU2_1_stage1.appimage 对应于 lateapp1、multicore_dsps_MCU3_0_MCU3_1_MCU4_0_MCU4_1_stage2.appimage 对应于 lateapp2、而 multiore_MPU1_0_stage3.appimage 对应于 lateapp3。

    2. 复制中存在的 sbl_mmcsd_img_mcu1_0_release.tiimage  /packages/ti/boot/sbl/binary/j784s4_evm/mmcsd/bin 作为 tiboot3.bin 加载到 SD 卡的引导分区中

    3. 复制中的 tifs.bin  /packages/ti/drv/sciclient /SD/V6至 soc 卡的引导分区。

    4. 转至 / /packages/ti/build 并使用以下命令构建 boot_app_mmcsd_linux:

      • 使 Board=j784s4_evm core=mcu1_0 boot_app_mmcsd_linux -sj

    5. 复制中存在的 sbl_boot_app_mmcsd_linux_j784s4_evm_mcu1_0_freertos_TestApp_release.appimage /packages/ti/boot/sbl/example/boot_app/binary/j784s4_evm/mmcsd 作为应用到 SD 卡的引导分区。

    6. 将 stage1映像作为 lateapp1、stage2映像作为 lateapp2和 stage3映像作为 lateapp3复制到 SD 卡的引导分区。

    7. 复制中存在的 atf_optee.appimage、tidtb_linux.appimage、tikernelimage_linux.appimage /packages/ti/boot/sbl/tools/BootApp_binaries/linux/j784s4_evm 加载到 SD 卡的引导分区。

    " BIST 与 PDK Bootapp 的集成现已作为 J784s4的 SDK 10.0及后续版本的一部分提供"

    此致、

    Josiitaa.