ZHCUCY3 April   2025 TMS320F2800132 , TMS320F2800133 , TMS320F2800135 , TMS320F2800137 , TMS320F2800152-Q1 , TMS320F2800153-Q1 , TMS320F2800154-Q1 , TMS320F2800155 , TMS320F2800155-Q1 , TMS320F2800156-Q1 , TMS320F2800157 , TMS320F2800157-Q1 , TMS320F280021 , TMS320F280023 , TMS320F280023C , TMS320F280025 , TMS320F280025C , TMS320F280034 , TMS320F280036-Q1 , TMS320F280036C-Q1 , TMS320F280037 , TMS320F280037C , TMS320F280038-Q1 , TMS320F280038C-Q1 , TMS320F280039 , TMS320F280039C , TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041C , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049C , TMS320F28076 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377S , TMS320F28378D , TMS320F28378S , TMS320F28379D , TMS320F28379S , TMS320F28384D , TMS320F28384S , TMS320F28386D , TMS320F28386S , TMS320F28388D , TMS320F28388S , TMS320F28P550SG , TMS320F28P550SJ , TMS320F28P559SG-Q1 , TMS320F28P559SJ-Q1 , TMS320F28P650DH , TMS320F28P650DK , TMS320F28P650SH , TMS320F28P650SK , TMS320F28P659DH-Q1 , TMS320F28P659DK-Q1 , TMS320F28P659SH-Q1

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2配置引导模式
    1. 2.1 独立引导
      1. 2.1.1 引导模式选择引脚 (BMSP)
      2. 2.1.2 引导定义表 (BOOTDEF)
      3. 2.1.3 引导 ROM OTP 配置寄存器
      4. 2.1.4 CPU2 启动流程
    2. 2.2 仿真引导
  6. 3对闪存编程
    1. 3.1 闪存 API
    2. 3.2 闪存内核
  7. 4将代码引导加载到闪存
    1. 4.1 C2000 Hex Utility
    2. 4.2 常见引导模式
      1. 4.2.1 引导至闪存
      2. 4.2.2 SCI 引导
      3. 4.2.3 CAN 引导
      4. 4.2.4 CAN-FD 引导
      5. 4.2.5 USB 引导
  8. 5常见问题解答
    1. 5.1 通过基于软件的实现施选择 BMSP GPIO
    2. 5.2 从闪存而非 RAM 运行闪存内核
    3. 5.3 在调试引导 ROM 时没有定义符号
    4. 5.4 使用片上闪存工具向 OTP 中写入值
    5. 5.5 使用闪存 API 插件向 OTP 中写入值
  9. 6总结
  10. 7参考资料

CPU2 启动流程

注: 本节基于 F28P65x 系列器件。器件特定信息可以在器件特定的技术参考手册 (TRM) 的引导 ROM 一章中找到。

尽管根据引导引脚配置,CPU1 可以在不同模式下引导,但 CPU2 必须由 CPU1 使用处理器间通信 (IPC) 模块引导 [9]。CPU1 应用程序通过 IPCBOOTMODE 寄存器为 CPU2 配置引导模式,并控制 CPU2 从复位状态释放到引导状态的时间。

无论复位源如何,CPU2 都要求 CPU1 在每次复位时设置 IPC 标志,以确认 IPCBOOTMODE 寄存器的内容有效并继续完成引导过程。CPU2 在引导期间确认并清除该标志。

概括而言,CPU2 引导序列如下所示:

  1. CPU2 引导并且:
    1. 保持在复位状态,或者
    2. 处于等待引导模式,等待 IPC 标志
  2. CPU1 应用程序配置 CPU1TOCPU2IPCBOOTMODE 寄存器
  3. CPU1 设置 CPU1TOCPU2IPCFLG0 以确认 CPU1TOCPU2IPCBOOTMODE 的内容有效
  4. 如果 CPU2 保持在复位状态,CPU1 应用程序会将释放 CPU2
  5. CPU2 在引导期间确认并清除 IPC 标志
  6. CPU2 引导 ROM 在 CPU1TOCPU2IPCBOOTMODE 中运行指定的引导模式

F28P65x TRM 的 IPCBOOTMODE 详细信息一节介绍了 IPCBOOTMODE 寄存器中用来引导 CPU2 的位域的配置和要求。表 2-8 详细说明了如何为 F28P65x 器件配置该寄存器。

与 CPU1 BOOTPIN-CONFIG 和 BOOTDEF 寄存器类似,CPU1TOCPU2IPCBOOTMODE 配置如下:

  1. 高 8 位包含指示有效性的密钥 (0x5A)
  2. 低 8 位设置 CPU2 的引导模式
  3. 第 16-19 位指定调用“从 IPC 消息 RAM 复制并引导至 M1RAM”引导模式时,要从 CPU1TOCPU2MSGRAM1 复制到 CPU2 M1RAM 的字数
表 2-8 CPU1TOCPU2IPCBOOTMODE 寄存器详细信息
名称 有效值 说明
31:24 密钥 0x5A 必须设置密钥,此寄存器才能视为有效。
23:20 保留 - 保留
19:16 IPC 消息 RAM 复制长度 0x0 = 0 个字(未使用引导模式)
0x1 = 100 个字
0x2 = 200 个字
...
0x9 = 900 个字
0xA = 1000 个字
为“从 IPC 消息 RAM 复制并引导至 M1RAM”引导模式设置数据长度(以字为单位)。这是要从 CPU1TOCPU2MSGRAM1 复制到 CPU2 M1RAM 的字数。
如果不使用该引导模式,请将值设置为 0x0。
15:8 保留 - 保留
7:0 CPU2 引导模式 0x00 = 无/等待引导
0x01 = IPC 消息 RAM 复制并引导至 M1RAM
0x03 = 闪存引导选项 0(扇区 0)
0x05 = 引导至 M0RAM
0x0A = 安全闪存引导选项 0(扇区 0)
0x0B = 引导至用户 OTP
0x23 = 闪存引导选项 1(扇区 4)
0x2A = 安全闪存引导选项 1(扇区 4)
0x43 = 闪存引导选项 2(扇区 8)
0x4A = 安全闪存引导选项 2(扇区 8)
0x63 = 闪存引导选项 3(扇区 13)
0x6A = 安全闪存引导选项 3(扇区 13)
设置 CPU2 的引导模式