ZHCUBQ6C June 2018 – January 2024 DLPC3434
表 3-157 介绍了写入参数。
参数字节 | 说明 |
---|---|
字节 1 | 闪存数据类型(见下文) |
字节 2 | 可选:部分数据标识符(见下面的“字节 1”) |
字节 3 | 可选:部分数据标识符(见下面的“字节 1”) |
字节 4 | 可选:部分数据标识符(见下面的“字节 1”) |
MSB | 字节 1 | LSB | |||||
---|---|---|---|---|---|---|---|
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 |
位 | 类型 | 说明 |
---|---|---|
7-0 | W |
整个闪存 整个闪存 00h = 整个闪存 01h = 保留 02h = 除用户校准数据和用户暂存区数据之外的整个闪存 03h - 0Fh = 保留 TI 软件 10h = 主软件应用程序 11h - 1Fh = 保留 TI 应用数据 20h = TI 应用数据集 (AOM) 21h - 2Fh = 保留 用户批处理文件 30h = 用户批处理文件 31h - 3Fh = 保留 外观数据 40h = 外观数据集 41h - 4Fh = 保留 序列数据 50h = 整个序列数据集 51h = 整个序列数据集(只读) 52h - 5Fh = 保留 去伽玛校正/CMT 数据 60h = 整个去伽玛校正/CMT 数据集 61h = 部分去伽玛校正/CMT 数据集(只读) 62h - 6Fh = 保留 CCA 数据 70h = CCA 数据集 71h - 7Fh = 保留 通用 LUT 数据 80h = CCA 数据集 |
每次需要新的闪存写入或读取操作时,必须提供闪存数据类型命令,以确保提供适当的数据类型参数。无论是否需要全部四个字节,系统都需要四个参数字节。任何未使用的字节都应设置为零。
必须提供闪存数据长度来指示将为每个写入或读取事务提供的闪存数据量。
指定的闪存数据将使用写入闪存开始 (E1h)、写入闪存继续 (E2h)、读取闪存开始 (E3h) 和读取闪存继续 (E4h) 命令写入闪存或从闪存读取。
虽然所示的所有闪存数据集都可以整体写入/替换,但一些闪存数据集也支持部分写入/更新。部分更新命令参数将使用“奇数”命令编号(例如 91h、B1h),这表示必须提供一到三个额外命令参数信息字节,以指定要更新的数据子集。下面介绍了所需的附加命令参数数据。
数据类型 (仅写入) | 第 2 个 CMD 参数(字节 2) | 第 3 个 CMD 参数(字节 2) | 第 4 个 CMD 参数(字节 2) | 说明 |
---|---|---|---|---|
部分用户启动界面集 | 启动界面编号 | 不适用 | 不适用 | 启动界面将由其启动界面编号指定 |
部分用户暂存区数据集 | 扇区编号 | 不适用 | 不适用 | 如果此数据集被分配了多个扇区,则可以指定每个扇区(0 = 第一个扇区,1 = 第二个扇区等等) |
部分序列数据集 | 外观编号 | 序列索引号 | 序列数据集将由其序列索引号指定。 | |
部分 CMT 数据集 | 外观编号 | 序列索引号 | CMT 数据集将由其 CMT 索引号指定。 | |
部分用户启动界面集 | 启动界面编号 | 不适用 | 不适用 | 启动界面将由其启动界面编号指定。 |
部分用户暂存区数据集 | 启动界面编号 | 子扇区地址 (LSB) | 子扇区地址 (MSB) | 如果此数据集被分配了多个扇区,则可以指定每个扇区(0 = 第一个扇区,1 = 第二个扇区等等)。主机还可以在字节 2 中指定的扇区内指定起始地址。该地址需要是指定扇区内的相对地址(即该值的范围为 0 到 4096),并且必须是 32 位对齐字节地址。 |
虽然所示的所有闪存数据集都可以从数据集的开头开始读取,但一些闪存数据集还支持从数据子集的开头开始读取。使用“奇数”命令编号的部分更新命令参数(例如 41h、43h、75h)将指示必须提供一到三个附加的命令参数字节来指定这些读取的起始位置。上表介绍了所需的附加命令参数数据。
所有 TI 格式的工厂校准数据,包括黄金比率、上电 RGB 电流和用户热敏电阻 LUT 修整数据,应该都将存储在闪存的用户校准块中。用户将负责管理此块的更新,这可能要求用户在块内进行更新时读取整个块,并在修改后重写整个块。
虽然闪存处理要求以正确的顺序执行闪存命令(例如,在写入闪存之前必须先擦除闪存),但是由于闪存更新的灵活性,因此不提供命令顺序检查。
建议用户在更新现有闪存构建之前使用读取闪存更新预检验 (DDh) 命令。
该系统允许用户分配最多四个可分离的闪存空间块供自己使用(用户暂存区数据)。用户还可以指定这些块每个的大小,其中每个块可以是一个或多个扇区(一个扇区 = 4KB)。所有这些都通过 GUI 定义。用户负责管理这些数据集,包括更新,这可能要求用户在扇区内进行更新时读取整个扇区,并在修改后重写整个扇区。引用不可用的数据集将导致通信状态中出现无效的命令参数值错误。