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.

[参考译文] AM620-Q1:用于定制板测试的 DDR 裕度固件

Guru**** 2415430 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1520606/am620-q1-ddr-margin-firmware-for-customized-boad-testing

器件型号:AM620-Q1

工具/软件:

尊敬的专家

由于定制电路板的 LPDDR4 会出现热问题、因此我们考虑使用“DDR 裕度固件“来比较高温和低温之间的眼图 (T eye)。

以下是一些问题

(1) 我们是否需要在更改 LPDDR4 大小时重新编译测试应用 (AM62X_TEYE_A53_write/read.out)。

(2) 这是一项仔细检查、如果我们使用 UART 引导模式并运行  TEYE 测试程序、那么不需要将此测试应用刷写到任何存储(例如:OSPI)中、不是吗?

这种 UART 引导测试模式显示了一个将应用程序下载到 LPDDR 并直接运行的用例、不是吗?

非常感谢

Gibbs

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

    问候 Gibbs、

    1) 您可以使用为任何 DDR 大小提供的相同映像。

    2) 正确、无需将其刷写到任何外部存储中。 固件使用器件上的 RAM 来测试 DRAM。

    此致、

    Lucas

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

    嗨、Lucas

    按照自述文件操作、我使用 JTAG 加载并执行  DDR TEye 应用程序是可以的

    但在执行带有 UART 引导的 DDR TEye 应用时、我遇到了一些问题。

    错误消息、

    [status] error: application load failed !!!error:</s>! !

    请帮忙检查一下。 我有什么遗漏吗?

    谢谢您、

    Gibbs

    (1).out ->.rprc

    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot$ node out2rprc/elf2rprc.js out2rprc/AM62X_TEye_A53_read.out 11 out2rprc/AM62X_TEye_A53_read.rprc
    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot$ node out2rprc/elf2rprc.js out2rprc/AM62X_TEye_A53_write.out 11 out2rprc/AM62X_TEye_A53_write.rprc

    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot/out2rprc$ ll
    total 1148
    drwxr-xr-x  3 gibbs gibbs   4096  六   2 16:30 ./
    drwxr-xr-x 11 gibbs gibbs   4096  六   2 16:22 ../
    -rw-rw-r--  1 gibbs gibbs 347192  五  15 11:41 AM62X_TEye_A53_read.out
    -rw-rw-r--  1 gibbs gibbs 218016  六   2 16:30 AM62X_TEye_A53_read.rprc
    -rw-rw-r--  1 gibbs gibbs 347192  五  15 11:41 AM62X_TEye_A53_write.out
    -rw-rw-r--  1 gibbs gibbs 218016  六   2 16:30 AM62X_TEye_A53_write.rprc
    -rw-r--r--  1 gibbs gibbs   4800 十二 19 12:51 elf2rprc.js
    drwxr-xr-x  4 gibbs gibbs   4096  二  18 10:31 node_modules/
    -rw-r--r--  1 gibbs gibbs    244 十二 19 12:51 package.json
    -rw-r--r--  1 gibbs gibbs   1408 十二 19 12:51 package-lock.json
    -rw-r--r--  1 gibbs gibbs   5128 十二 19 12:51 patch_exidx_for_out2rprc.pl

    (2).rprc ->.appimage

    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot$ node multicoreImageGen/multicoreImageGen.js --devID 55 --out multicoreImageGen/AM62X_TEye_A53_read_unsigned.appimage multicoreImageGen//AM62X_TEye_A53_read.rprc@0
    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot$ node multicoreImageGen/multicoreImageGen.js --devID 55 --out multicoreImageGen/AM62X_TEye_A53_write_unsigned.appimage multicoreImageGen//AM62X_TEye_A53_write.rprc@0

    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot/multicoreImageGen$ ll
    total 1148
    drwxr-xr-x  3 gibbs gibbs   4096  六   2 16:39 ./
    drwxr-xr-x 11 gibbs gibbs   4096  六   2 16:22 ../
    -rw-rw-r--  1 gibbs gibbs 218016  六   2 16:30 AM62X_TEye_A53_read.rprc
    -rw-rw-r--  1 gibbs gibbs 218048  六   2 16:38 AM62X_TEye_A53_read_unsigned.appimage
    -rw-rw-r--  1 gibbs gibbs 218016  六   2 16:30 AM62X_TEye_A53_write.rprc
    -rw-rw-r--  1 gibbs gibbs 218048  六   2 16:39 AM62X_TEye_A53_write_unsigned.appimage
    -rwxrwxrwx  1 gibbs gibbs  13047 十二 19 12:51 MulticoreImageGen*
    -rwxrwxrwx  1 gibbs gibbs  19165 十二 19 12:51 MulticoreImageGen.exe*
    -rwxrwxrwx  1 gibbs gibbs 241047 十二 19 12:51 multicoreImageGen.js*
    drwxrwxrwx  2 gibbs gibbs   4096  二  18 10:31 src/
    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot/multicoreImageGen$ 

    (3) UART 引导。 (执行 DDR T Eye 时出错)

    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot$ python3 ./uart_bootloader.py -p /dev/ttyUSB0 --bootloader=sbl_prebuilt/am62x-sk-lp/sbl_uart.release.hs_fs.tiimage --file=sbl_prebuilt/am62x-sk-lp/sbl_null.release.hs_fs.tiimage --file=multicoreImageGen/AM62X_TEye_A53_read_unsigned.appimage clear
    Sending the UART bootloader sbl_prebuilt/am62x-sk-lp/sbl_uart.release.hs_fs.tiimage ...
    Sent bootloader sbl_prebuilt/am62x-sk-lp/sbl_uart.release.hs_fs.tiimage of size 248120 bytes in 23.73s.                                                                            
    
    Sending the application multicoreImageGen/AM62X_TEye_A53_read_unsigned.appimage ...
    Sent application multicoreImageGen/AM62X_TEye_A53_read_unsigned.appimage of size 218048 bytes in 21.96s.                                                                           
    [STATUS] ERROR: Application load FAILED !!!

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

    问候 Gibbs、

    电路板看起来像 FS 器件、这需要为应用程序映像签名。 这并不是该工具所独有的、任何 HS-SDK 器件应用都需要签名(并注意 FS 中的映像是签名的“hs_fs"版本“版本)版本)。 您可以 通过 tools 目录中的类似命令执行此操作:

    python ./signing/appimage_x509_cert_gen.py --bin AM62X_TEye_A53_read_unsigned.appimage --authtype 0 --loadaddr 84000000 --key signing/app_degenerateKey.pem --keyversion 1.5 --output AM62X_TEye_A53_read_signed_authtype0.appimage

    在客户电路板上、如果他们启用了部件安全功能、则必须使用客户的密钥对其签名。  有关这些详细信息、请参阅文档: https://software-dl.ti.com/mcu-plus-sdk/esd/AM62X/10_00_00_14/exports/docs/api_guide_am62x/TOOLS_BOOT.html#TOOLS_BOOT_SIGNING

    此致、

    Lucas

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

    你好、Lucas

    按照您的评论、我已经使用 TI 虚拟密钥签名了应用映像。

    它可以通过 UART 下载 TEYE 程序,但我们仍然面临一些错误。

    gibbs@gibbs-HP-ZBook-15-G5:~/work/am62_lp/mcu_plus_sdk_am62x_10_01_00_33/tools/boot$ python3 ./uart_bootloader.py -p /dev/ttyUSB0 --bootloader=sbl_prebuilt/am62x-sk-lp/sbl_uart.release.hs_fs.tiimage --file=sbl_prebuilt/am62x-sk-lp/sbl_null.release.hs_fs.tiimage --file=multicoreImageGen/AM62X_TEye_A53_write_signed_authtype0.appimage
    Sending the UART bootloader sbl_prebuilt/am62x-sk-lp/sbl_uart.release.hs_fs.tiimage ...
    Sending sbl_prebuilt/am62x-sk-lp/sbl_uart.release.hs_fs.tiimage:   0%|                                                                            | 0/248120 [00:00<?, ?bytes/s]send error: expected NAK, CRC, EOT or CAN; got b'\x00'
    Sent bootloader sbl_prebuilt/am62x-sk-lp/sbl_uart.release.hs_fs.tiimage of size 248120 bytes in 23.35s.                                                                         
    
    Sending the application multicoreImageGen/AM62X_TEye_A53_write_signed_authtype0.appimage ...
    Sending multicoreImageGen/AM62X_TEye_A53_write_signed_authtype0.appimage: 221252bytes [00:22, 10716.91bytes/s]error_count reached 16, aborting.                                 
    Sending multicoreImageGen/AM62X_TEye_A53_write_signed_authtype0.appimage: 221254bytes [00:22, 10716.91bytes/s]
    [ERROR] XMODEM recv failed, no response OR incorrect response from EVM OR cancelled by user,
            Power cycle EVM and run this script again !!!

    错误:  

    发送 multicoreImageGen/AM62X_TEye_a53_write_signed _authtype0.appimage:221252 字节[00:22,10716.91 字节/s]ERROR_COUNT 达到 16、中止。
    发送 multicoreImageGen/AM62X_TEye_a53_write_signed _authtype0.appimage:221254 字节[00:22,10716.91 字节/s]
    【错误】XMODEM Recv 失败、EVM 无响应或错误响应或用户取消、

    问题:

    (1) 我认为我们是否需要使用“sbl_uart.release.hs_fs.tiimage"和“和“sbl_null.release.hs_fs.tiimage"签名“签名虚拟密钥、不是吗?

    (2) 导致“ERROR_COUNT 达到 16“的原因是什么? 这似乎是失败的原因

    非常感谢

    Gibbs

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

    问候 Gibbs、

    这是 UART 脚本存在的问题、从我看到的内容来看、这不是 Eye 工具本身。 我建议再次尝试、或提交一个票证供 SDK 人员查看。

    此致、

    Lucas

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

    这是来自客户的反馈

    在这里录制要录制,它似乎是有效的

    我不是很确定原因。

    3、	AM62X_TEye_A53_read.appimage.hs_fs/ AM62X_TEye_A53_write.appimage.hs_fs 用下面的命令生成的:
    ~/ti/sysconfig_1.23.0/nodejs/node out2rprc/elf2rprc.js out2rprc/AM62X_TEye_A53_read.out 0x0B000010
    ~/ti/sysconfig_1.23.0/nodejs/node out2rprc/elf2rprc.js out2rprc/AM62X_TEye_A53_write.out 0x0B000010
    
    /home/xx/ti/sysconfig_1.23.0/nodejs/node /home/xw/ti/mcu_plus_sdk_am62x_11_00_00_16/tools/boot/multicoreImageGen/multicoreImageGen.js --devID 55 --out AM62X_TEye_A53_write.appimage AM62X_TEye_A53_write.rprc@0
    /home/xx/ti/sysconfig_1.23.0/nodejs/node /home/xw/ti/mcu_plus_sdk_am62x_11_00_00_16/tools/boot/multicoreImageGen/multicoreImageGen.js --devID 55 --out AM62X_TEye_A53_read.appimage AM62X_TEye_A53_read.rprc@0
    
    python3 /home/xx/ti/mcu_plus_sdk_am62x_11_00_00_16/tools/boot/signing/appimage_x509_cert_gen.py --bin AM62X_TEye_A53_read.appimage --authtype 0  --loadaddr 84000000 --key /home/xw/ti/mcu_plus_sdk_am62x_11_00_00_16/tools/boot/signing/app_degenerateKey.pem --output AM62X_TEye_A53_read.appimage.hs_fs --keyversion       1.5
    python3 /home/xx/ti/mcu_plus_sdk_am62x_11_00_00_16/tools/boot/signing/appimage_x509_cert_gen.py --bin AM62X_TEye_A53_write.appimage --authtype 0  --loadaddr 84000000 --key /home/xw/ti/mcu_plus_sdk_am62x_11_00_00_16/tools/boot/signing/app_degenerateKey.pem --output AM62X_TEye_A53_write.appimage.hs_fs --keyversion       1.5