ZHCAG18 December   2025 AM625 , AM62A7 , AM62D-Q1 , AM62P , AM6442

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
  5. 2术语
  6. 3了解引导模式和闪存兼容性
  7. 4闪存集成和 SysConfig 设置
    1. 4.1 FLASH 参数
      1. 4.1.1 建议的方法
    2. 4.2 OSPI 参数
  8. 5常见启动问题和调试
    1. 5.1 引导失败
    2. 5.2 已知勘误表
    3. 5.3 闪存初始化失败
      1. 5.3.1 FLASH 和 OSPI SysConfig 值
      2. 5.3.2 闪存器件和制造 ID 读取失败
      3. 5.3.3 PHY 故障
    4. 5.4 闪存读取失败
    5. 5.5 闪存编程故障
  9. 6请求 OSPI 和 FLASH 支持的检查清单
  10. 7摘要
  11. 8参考资料

FLASH 参数

对于每个参数,单击 ? 可了解相关说明。

有关图 4-2 的说明:

  1. 闪存器件:如果闪存不是 TI EVM 上的默认闪存之一,请选择定制闪存。
  2. 闪存名称:写入正在使用的闪存的名称,例如 W25Q512JV
  3. 协议:从列出的协议中选择闪存也支持的协议之一。这将分别配置要用于命令、地址和数据的行数。它还指定数据速率,即 DDR(双倍数据速率)或 SDR(单倍数据速率)。例如,4S-4D-4D 表示 4 行分别用于命令、地址和数据。对于命令,数据在上升沿/下降沿锁存,但对于地址和数据,数据在上升沿和下降沿均锁存。
 基本闪存配置图 4-2 基本闪存配置

有关图 4-3 的说明:

  1. 闪存 JEDEC 制造 ID:特定制造商的此值相同。
  2. 闪存 JEDEC 器件 ID:该值因同一制造商的闪存型号而异。例如,Winbond 闪存对于分别在 1.8V 和 3.6V 电压下运行的闪存,具有不同的器件 ID。还有其他一些参数具有不同的闪存器件,这些参数可在闪存数据表中找到。
  3. 虚拟时钟 (CMD)虚拟时钟(读取):虚拟时钟用于同步闪存读取。也可以从闪存数据表中获取这些值。注意指定为虚拟周期/虚拟时钟的部分。请注意,该字段指定在 OSPI 控制器端设置的值。要在闪存结束时设置虚拟周期/时钟值,需要对闪存配置寄存器进行写入。请参阅虚拟周期配置字段。
  4. 四路使能类型:一些 QSPI 闪存具有 QE(四路使能)位。对于 1S-1S-4S、4S-4S-4S 和 4S-4D-4D 等协议,需要启用该位。
  5. QPI 序列OPI 序列:要分别启用 4-4-4 模式和 8-8-8 模式,请使用这些字段。
  6. 有关闪存的块大小和扇区大小,请参阅闪存数据表。可从诊断日志中获取相同的命令,但最好从数据表中进行验证。
  7. SysConfig 允许用户设置扇区大小和块大小,如果闪存支持不同的扇区/块大小,用户可以根据应用指定特定的扇区/块大小。
  8. (3B) 和 (4B) 是指闪存的 3 字节和 4 字节寻址模式。这基本上指定了必须发送多少个地址字节。对于小于 16MB 的闪存,只需 3 个字节寻址即可满足整个闪存区域的需求。
 基本闪存擦除和协议配置图 4-3 基本闪存擦除和协议配置

有关图 4-4 的说明:

  1. 协议配置:协议通常指定用于命令、地址和数据的行数。为了使闪存以特定协议运行,该部分需要被填满。
  2. 虚拟周期配置:为了使闪存以特定协议运行,闪存配置寄存器需要配置虚拟周期。这是闪存侧设置,OSPI 控制器的设置在虚拟时钟(读取)字段下定义。
  3. STR/DTR 配置:可以设置此位以使闪存在 SDR/DDR 模式下运行。
 协议、虚拟周期和 STR/DTR 配置图 4-4 协议、虚拟周期和 STR/DTR 配置

有关图 4-5 的说明:

让我们仔细了解这一点。假设配置寄存器的值为 10111101b。如果位[5:2] 需要更新为 1001b,则数据移位位、数据二进制掩码和要写入的数据中的值将分别为 2、0x3C 和 9。使用逻辑 (value & ~(Data Binary Mask)) 对原始值 10111101b 执行掩码操作。这样会得到值 10000001b。现在,将按 (value | (Data To Be Written << Data Shift Bits)) 执行移位操作。最终值变为 10100101b,因此会写入配置寄存器。
 寄存器数据字段配置图 4-5 寄存器数据字段配置

有关图 4-6 的说明:

字段一目了然。可以参考闪存数据表来设置正确的值。

 高级闪存配置图 4-6 高级闪存配置

有关图 4-7 的说明:

可以在闪存数据表中找到所有这些值。请参阅“闪存数据表”中的“读取器件 ID/读取制造 ID 事务表”。
 JEDEC ID 读取配置图 4-7 JEDEC ID 读取配置

有关图 4-8 的说明:

  1. WIP 位WEL 位:这些位指的是闪存状态寄存器中的“正在写入”和“写入使能锁存”位。
  2. 四字节寻址:如前所述,如果闪存大小大于 16MB,则需要执行此操作,并且闪存支持用于 (4B) 寻址的特定命令。
  3. 命令扩展类型:假设要发送的命令为 0x9F。因此,在以下情况下:
    1. NONE:发送 0x9F。
    2. REPEAT:发送 0x9F, 0x9F。
    3. INVERSE:发送 0x9F, 0x60(0x9F 的反码)。
  4. Quirks 函数用于定义自定义 API,该 API 会对闪存的配置寄存器进行其他更改。目前,它定义为 Flash_quirkSpansionUNHYSADisable。此函数基本上会在 TI EVM 上禁用 flash(S28HS512T) 的混合模式。
 高级闪存配置(续)图 4-8 高级闪存配置(续)