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.

[参考译文] TMS320F28388D:C2000Ware 安全闪存启动示例用法

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1313541/tms320f28388d-c2000ware-secure-flash-boot-example-usage

器件型号:TMS320F28388D
主题中讨论的其他器件:C2000WAREUNIFLASH

大家好!

我尝试实现安全闪存启动一段时间。

我阅读了 TRM 中的"C2000器件安全启动"应用报告"TMS320C28x 汇编语言工具"用户指南和 DCSM 部分。

我对该主题有理论知识。

现在是时候动手操作示例了。

-

我检查了位于 C2000Ware_4_03_00_00\driverlib\f2838x\examples\C28x\boot 的示例。
我将在 controlCARD 上运行该代码。

我阅读了"如何运行"部分(在"boot_ex1_cpu1_cpu2_cm_secure_flash_cpu1.c"的开头)、然后我执行了所说的操作。

-已加载应用程序(boot_ex1_cpu1_cpu2_cm_secure_flash_CPU1) 传递给 CPU1。   


-断开 速率。

-连接 CPU1 (在此步骤中、发生错误:解析前一帧 FP 失败。 请参阅下面的 SSS。 我想我现在可以忽略该错误。)


-将 仿真启动设置为安全闪存启动。 (我之前设法更改了仿真启动模式。 所以  我确信我确实做到了)


-最后,重置 CPU1并恢复

复位后、我点击了"Resume"按钮。 (恢复按钮在短时间内变暗、然后再次显示。)  

我观察到了 LED。
CPU1 - LED1已关闭。 这意味着安全启动失败。
我至少期望 LED1导通。 (主安全启动成功。)


除了"如何运行"部分(在"boot_ex1_cpu1_cpu2_cm_secure_flash_cpu1.c"的开头)外,
要使此示例正常工作、是否需要做任何事情?

例如 、将 CMAC 密钥写入 OTP 区域?
(我认为没有必要这样做、因为我使用了默认的 CMAC 密钥0xFFFFFFFFFFFFFFFFFFFF)

感谢您的答复、

此致

穆罕默德

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

    关于这个问题、您能帮助我吗?

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

    大家好、e2e 社区、

    我解决了问题。

    "boot_ex1_cpu1_cpu2_cm_secure_flash_cpu1"
    示例应用程序有先决条件。

    请查看:应用报告- C2000设备的安全启动



    在运行本示例之前、 必须将扇区0和扇区1声明为 EXEONLY 。 (不仅是扇区0、而且是 sector1。)
    (可以使用"dcsm_security_tool"示例生成 Zone1值。 您可以使用片上闪存工具写入这些值。)



    声明 EXEONLY 扇区后、我加载 "boot_ex1_cpu1_cpu2_cm_secure_flash_cpu1"示例。
    将引导模式切换为"安全闪存启动"模式。
    然后、我观察到了 LED1状态。  
    LED 闪烁。
    它的平均值 安全启动通过、完整闪存 CMAC 通过。

    ----------------

    谢谢。
    穆罕默德

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

    您必须使用 UNIFLASH 工具加载该示例。
    如果使用 CCS 加载该示例、则不会写入 CMAC 标签。 因此、安全启动失败。

    加载*。hex 文件、而不是*。out 文件