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.

[参考译文] TMS320F28374D:CSM &放大器;安全初始化..

Guru**** 2434500 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/823007/tms320f28374d-csm-security-initialization

器件型号:TMS320F28374D

您好、团队 C2000、

我对 F2837xD 上的 WRT 安全性和 CSM 有一些疑问。

此器件(脱离卷带)似乎完全开路/不安全。 但根据 TRM (spruhm8h)。

"3.13.2 CSM 对该器件上其他片上资源的影响、M0/M1和 GSx 存储器不安全。 为避免在器件处于默认状态(POST 重置)时发生任何潜在的黑客攻击、在完成正确的安全初始化之前、将禁用对所有存储器(安全和非安全、引导 ROM 和 OTP 除外)的访问(所有类型)。"

这让我相信、在执行安全初始化程序(如下所示)之前、器件(从卷带外)应该在加电时是安全的。

复位(任何类型的复位)后需要执行以下步骤来初始化每个 CPU 子系统的安全性。 •SECDC 地址位置的虚拟读取(0x703F0、TI 保留寄存器) 在 TI OTP•虚拟读取至 Z1 OTP 中 Z1_LINKPOINTER1的地址位置•虚拟读取至 Z1 OTP 中 Z1_LINKPOINTER2的地址位置•虚拟读取至 Z1 OTP 中 Z1_LINKPOINTER3的地址位置•虚拟读取至 OTP 中 Z1_PSWDLOCK 的地址位置•虚拟读取至 Z1_CRCLOCK 的地址位置 在 Z1 OTP•虚拟读取到 Z1 OTP 中的地址位置0x78018•虚拟读取到 Z1 OTP 中 Z1_BOOTCTRL 的地址位置•读取到 DCSM 模块中 Z1_LINKPOINTER 的存储器映射寄存器以计算 Z1•虚拟读取到中 Z1_EXEONLYRAM 的地址位置的区域选择块的地址 Z1 OTP•虚拟读取到 Z1 OTP 中 Z1_EXEONLYSECT 的地址位置•虚拟读取到 Z1 OTP 中 Z1_GRABRAM 的地址位置•虚拟读取到 Z1 OTP 中 Z1_GRABSECT•的地址位置虚拟读取到 Z2 OTP 中 Z2_LINKPO1的地址位置•虚拟读取到 Z2_LINININTERPO2中的地址位置 Z2 OTP•虚拟读取到 Z2中 Z2_LINKPOINTER3的地址位置 OTP•虚拟读取到 Z2 OTP 中 Z2_PSWDLOCK 的地址位置•虚拟读取到 Z2 OTP 中 Z2_CRCLOCK 的地址位置•虚拟读取到 Z2 OTP 中的地址位置0x78218•虚拟读取到 Z2_BOOTCRL 中的地址位置 OTP•读取 DCSM 模块中 Z2_LINKPOINTER 的存储器映射寄存器以计算 Z2•虚拟读取到 Z2中 Z2_EXEONLYRAM 的地址 OTP•虚拟读取到 Z2中 Z2_EXEONSECLYT 的地址位置 OTP•虚拟读取到 Z2_GRABRAM 中的地址位置 OTP•虚拟读取、以寻址 Z2 OTP 中 Z2_GRABSECT 的位置

器件是否安全或不安全?

如果这些虚拟读取的顺序错误,或者丢失了任何虚拟读取,这是否意味着我们将永久锁定芯片?

是否有演示上述步骤的示例应用/代码块?  

谢谢、Merril

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

    Newman、您好!

    是的、器件在复位后是安全的(也就是说、到所有存储器的访问被禁用)、直到完成正确的安全初始化。 但是、该初始化序列是引导 ROM 执行的一部分、在复位时始终运行。

    虚拟读取应按照 TRM 中提到的顺序完成。 如果不这样做、就不会完成安全初始化过程、这会导致禁用对存储器的访问。 但是,这不会永久锁定设备。 发出上电复位(POR)后、器件 BootROM 将以正确的方式执行并完成安全初始化、之后您可以访问所有存储器。

    然而、当调试器被连接时、引导 ROM 的执行可被绕过。 在这种情况下、GEL 文件用于完成安全初始化以及 BootROM 的其他关键任务(这只是一个调试选项)。

    安全初始化代码是器件 GEL 文件的一部分。

    如果此回复解答了您的疑问,请单击“验证答案”按钮。 希望这对您有所帮助。

    谢谢、此致

    Pramod

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

    您好 Pramod、

    纽曼代表自己发表了这个论坛帖子、因此我认为最好就答案向您作出回复。

    你的回答确实回答了我关于这一事实的问题、谢谢。

    技术参考手册提到了所需的一系列步骤( http://www.ti.com/lit/ug/spruhm8h/spruhm8h.pdf ),但并未明确说明此行为是由引导 ROM 处理的。 第3.13.2节指出、这些步骤"复位后需要"、这使我相信它们非常重要、但从未明确声明引导 ROM 处理这些步骤。

    但是、在同一参考手册的第3.13.3.3节中、有一条注释提到引导 ROM 会读取密码位置以方便使用。 我认为这一点可以更好地加以说明、因为这里专门提到了引导 ROM 的功能、而它所做的其他读取完全没有提到。

    再次感谢您的回答、因为它为我清除了这个问题。

    迪伦

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

    您好!Dylan、

     

    感谢您的反馈、我一定会在我们的系统中提供反馈、以解决您的困惑。 谢谢。

    但是、同一 TRM 中的 BootROM 章节(第4章:ROM 代码和外设引导)提到了器件引导流程图、其中安全(DCSM)初始化是其中的一部分。

    了解用户将安全初始化作为 BootROM 的一部分进行并不直观,您的混淆是有效的。

    请单击“验证答案”按钮,以将此主题自其清除您的问题后标记为“已解决”。

    希望这对您有所帮助。

    谢谢、此致

    Pramod

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

    尊敬的迪伦/纽曼:

    您能否通过单击此帖子底部的"验证答案"按钮将此主题标记为"已解决"、因为我的回答已澄清您的问题?  

    谢谢、此致

    Pramod  

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

    尊敬的迪伦/纽曼:

    我现在正在关闭此主题、正如您在上一个帖子中指出的、您的查询已被解决。 如果您有机会、请单击"验证答案"按钮。 一旦该主题帖被锁定、您将无法回复。 如果您有任何疑问、请创建新主题并发布您的查询。

    谢谢、此致

    Pramod