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.

[参考译文] TMS320F28376D:OTP Z1-BOOTCTRL

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/814639/tms320f28376d-otp-z1-bootctrl

器件型号:TMS320F28376D
主题中讨论的其他器件:TMS320F28376S

尊敬的先生:

  1. 我们的产品中有一些问题,包括 TMS320F28376D (在某些 TMS320F28376S 上),一些引导引脚用于附加存储器接口(EMIF 至 FPGA)
  2. 为了避免 DSP 挂起并进入某种引导模式的状态,我们希望刷写 Z1-BOOTCTRL ,以便始终从闪存引导
  3. 在本例中,Z1-BOOTCTRL 将为0x00000B5A (例如,key=5A ,BMOD=0B (闪存启动) ),这是正确的吗?
  4. 为了刷写 OTP,我 添加了仅包含以下内容的汇编器文件(例如)  

       .sect "Dcsm_otp_z1_bootctrl"
       长整型0xFFFFFFFF           ;保留
       long 0x00000b5a           ;Z1-BOOTCTRL 键=5A,引导0x0B

    5.in 我添加的链接器文件:

存储器


  DCSM_OTP_Z1_BOOTCTRL:origin = 0x7801C,length = 0x000004

部分

DCSM_OTP_Z1_BOOTctrl:>DCSM_OTP_Z1_BOOTCTRL PAGE = 0,ALIGN (4)

(笑声)

(笑声)

 如果我要将其刷写到 DSP 中,它会强制始终引导至闪存,而不管 引导引脚的状态如何?

我是否遗漏了什么?

 

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

    您的配置看起来是正确的、是的、如果您闪存到 DSP、它将始终引导到闪存。

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

    您好,Baskaran,

    感谢您的快速回复  

    1.我用 Z1-BOOTCTRL 刷写 DSP ,可以看到 OTP 确实发生了闪存,如下所示

    2.在下电上电后、电路板仍然无法启动 DSP  

    3.in 订单要验证问题是否确实存在  ,请执行以下操作

      A.与 JTAG 连接到目标

      b.仅加载符号时进行调试   

      c.in CCS ->脚本-> EMU 引导选择模式-> EMU_BOOT_FLASH

      d.in CCS -> CPU 复位  

      e.CCS ->继续

    当我执行以下步骤时,例如强制 DSP 从闪存启动时,DSP 正常运行,而独立运行时(闪存 Z1-BOOTCTRL 之后的事件)

    它无法正常启动会导致此类行为的原因是什么?

    我缺少什么?

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

    在第2步中、当您对电路板进行下电上电时、连接了物理 JTAG 连接器。 如果不是、您可以从板上卸下连接器并尝试。

    如果您尚未删除引导代码、则可能会认为它仍处于仿真引导模式。

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

    您好,Baskaran,

    是的、在对电路板执行下电上电之前移除了 JTAG

    我在电路板上电时已将 JTAG 连接到电路板

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

    好的、因为您说它与 enu boot 有关、我假设闪存存储器具有正确的内容。

    让我们尝试一下、

    • 打开目标配置文件、删除 GEL 文件路径并保存配置文件。 GEL 文件可能会将目标置于目标连接事件上、我尝试避免这种情况以帮助进行调试。
    • 现在在步骤3.a 中、通过 CCS 物理方式连接 JTAG。 现在查看程序计数器的位置。 这应能让您了解在独立情况下正在发生的情况。

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

    您好,

    我不太了解在何处禁用 GEL 路径文件,但我在调试 模式下未选中所有连接选项 ,如下所示

    重复相同的步骤,直到步骤3a 为止,我看到 PC 如下所示  

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

    它位于 CCXML 文件的高级选项卡下

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

    我在目标配置中禁用了 GEL 文件路径,并重复了步骤  

    我不太了解在哪里禁用 GEL 路径文件,并重复步骤1-3a (无电压->重启->在电源下连接 JTAG)

    PC 指向0x3FEAC2

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

    您好 Saban、

    当 您尝试在独立模式下引导时、GPIO72/GPIO84是引导模式引脚(因为您在 BOOTCTRL 位置为 BOOTPIN 字段编程了0)上驱动的值是多少? 请注意、您仍然必须在这些引脚上驱动1/1才能将 Get 模式选择为引导模式、否则它将不起作用。  请参阅引导流程(图4-6)。 器件 TRM 中的 CPU1独立和休眠引导流程)以了解更多详细信息。

    此致、

    Vivek Singh

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

    您好,Vivek,

    感谢您指出,由于引导流程仍在检查引导模式之前检查引导引脚的电平,因此仍然存在问题

    1.是否有任何方法使引导流程忽略引导引脚?

    2.是否可以使 BOOT 引脚0和 BOOT 引脚1指向同一引脚 ,因此只能有00、11?

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

    您好!

    [引用] 2.是否可以使 boot pin0和 boot pin1指向同一个引脚 ,从而只能实现00、11? [/报价]

    是的、这应该是可能的。 请注意、由于您已经对 BOOTCTRL 进行了一次编程、因此无法在同一器件上再次对其进行编程。 您需要使用新器件对 OTP 中 BOOTCTRL 位置的不同值进行编程。

    此致、

    Vivek Singh

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

    您好、Vivek、  

    感谢您的回答,我知道我无法重新编程我的目标(因为它的 OTP),我问  

    一般而言、对于我们拥有的其他目标、

    重新分级问题#1,是否可以在引导流程中绕过引导引脚?

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

    引导流程中不能绕过引导引脚。