ZHCUC78A August   2024  – September 2024 AWRL1432 , AWRL6432 , IWRL1432 , IWRL6432 , IWRL6432AOP

 

  1.   1
  2.   商标
  3. 1引言
  4. 2基本引导加载程序流程
    1. 2.1 通过 UART 编程串行数据闪存(引导加载程序服务)
    2. 2.2 二进制文件格式
    3. 2.3 闪存编程序列
    4. 2.4 支持的 UART 命令/响应及其格式
    5. 2.5 刷写序列
    6. 2.6 ROM 辅助映像下载序列
    7. 2.7 引导应用程序映像
      1. 2.7.1 从串行闪存引导
      2. 2.7.2 引导模式 – SPI
      3. 2.7.3 引导模式 - UART
  5. 3辅助引导加载程序
    1. 3.1 SBL 执行流程
      1. 3.1.1 用于 SBL 执行的闪存存储器分区
      2. 3.1.2 SBL 特性修改
      3. 3.1.3 SBL 开发注意事项
  6. 4热复位
    1. 4.1 完整性验证
    2. 4.2 LSTC/PBIST
    3. 4.3 看门狗计时器
    4. 4.4 复位触发的应用程序闪存重新加载
      1. 4.4.1 硬件解决方案
        1. 4.4.1.1 PMIC I2C 消息传递
        2. 4.4.1.2 外部看门狗计时器
        3. 4.4.1.3 外部电压监控或电压监控器
      2. 4.4.2 软件解决方案
        1. 4.4.2.1 将引导向量设置为 0x0
  7. 5相关寄存器
    1. 5.1 复位寄存器
    2. 5.2 PC 寄存器
      1. 5.2.1 地址
  8. 6修订历史记录

SBL 开发注意事项

共享存储器注意事项

  • SBL 示例从共享存储器运行,以避免与 M4 RAM 中的任何应用程序代码发生冲突。
  • 使用 SBL 加载应用程序时,应用程序无法将任何文本、数据或只读信息存储在共享存储器中。有关详细信息,请参阅勘误表中的 DIG#14。但是,在共享存储器中使用 L3 存储器的示例仍然可以使用共享存储器。

一般开发注意事项

  • 由于 IWR 和 AWR 器件之间存在 EFUSE 差异,IWR 器件需要显式初始化 RAM1 存储器组
    • IWR 器件默认禁用 ECC,因此需要显式存储器初始化
    • 建议初始化所有存储器组,不过,这样会导致引导时间延迟
      • 也可以通过禁用 SYSTICK 计时器来解决该问题,该计时器会导致在执行 ISR 时对存储器组进行不必要的访问
  • 如果对由 SBL 加载的应用程序执行热复位,请确保 SBL 执行热复位注意事项,并且 SBL 触发热复位
    • 特别是在应用程序中触发热复位的看门狗复位,需要特别注意,因为这是一个不可控的复位,可能无法执行确保程序退出后成功热复位所需的所有步骤