ZHCUC57E August   2016  – July 2024

 

  1.   1
  2.   商标
  3. 引言
    1. 1.1 文档概览
    2. 1.2 软件概述
    3. 1.3 前照灯概述
  4. 电气接口
    1. 2.1 加电信号
      1. 2.1.1 STAY-IN-BOOT (TSTPT_0)
      2. 2.1.2 HOST_IF_SEL
      3. 2.1.3 CRCZ_CHKSUM_SEL
      4. 2.1.4 HOST_SPI_MODE
        1. 2.1.4.1 引导流程调试
      5. 2.1.5 SPREAD-SPECTRUM-DISABLE (TSTPT_5)
    2. 2.2 系统信号
      1. 2.2.1 HOST_IRQ
      2. 2.2.2 GPIO
      3. 2.2.3 PWM 控制
  5. 通信协议
    1. 3.1 命令协议
    2. 3.2 SPI 规格
    3. 3.3 I2C 规范
    4. 3.4 写入
      1. 3.4.1 短写入
        1. 3.4.1.1 SPI 短写入
        2. 3.4.1.2 I2C 短写入
      2. 3.4.2 批量写入
        1. 3.4.2.1 SPI 批量写入
        2. 3.4.2.2 I2C 批量写入
      3. 3.4.3 写入命令处理
    5. 3.5 读取
      1. 3.5.1 读取预取
        1. 3.5.1.1 SPI 读取预取
        2. 3.5.1.2 I2C 读取预取
      2. 3.5.2 读取激活
        1. 3.5.2.1 SPI 读取激活
        2. 3.5.2.2 I2C 读取激活
      3. 3.5.3 短状态读取
        1. 3.5.3.1 SPI 短状态读取
        2. 3.5.3.2 I2C 短状态读取
      4. 3.5.4 读取命令处理
    6. 3.6 CRC 和校验和
      1. 3.6.1 CRC 计算
        1. 3.6.1.1 CRC 示例实现
        2. 3.6.1.2 CRC 示例
      2. 3.6.2 校验和计算
    7. 3.7 命令标签
  6. 系统运行
    1. 4.1 工作模式
      1. 4.1.1 待机
      2. 4.1.2 显示
    2. 4.2 软件启动过程
  7. 应用和用例
    1. 5.1 显示和源
      1. 5.1.1 显示图像
      2. 5.1.2 支持的图像处理
      3. 5.1.3 外部视频
      4. 5.1.4 测试模式
      5. 5.1.5 启动界面图像
      6. 5.1.6 图像翻转
    2. 5.2 批处理命令集
    3. 5.3 闪存编程
      1. 5.3.1 闪存程序 - 主应用程序
      2. 5.3.2 闪存读取 - 主应用程序
      3. 5.3.3 闪存程序 - 引导应用程序
    4. 5.4 视频帧和照度分级延迟
    5. 5.5 平稳照明转换
    6. 5.6 温度管理
      1. 5.6.1 DMD 停止/解除停止温度管理
      2. 5.6.2 PWM 温度管理功能
    7. 5.7 ADC 测量
      1. 5.7.1 序列对齐的 ADC 测量
      2. 5.7.2 单个 ADC 测量
  8. 测试和诊断
    1. 6.1 概述
    2. 6.2 紧急关闭
      1. 6.2.1 紧急关闭原因
    3. 6.3 诊断存储器接口
    4. 6.4 测试说明
      1. 6.4.1 周期性测试
        1. 6.4.1.1  视频源损耗检测
          1. 6.4.1.1.1 配置
          2. 6.4.1.1.2 执行
          3. 6.4.1.1.3 失败操作
          4. 6.4.1.1.4 错误代码
        2. 6.4.1.2  视频信号灯校验和
          1. 6.4.1.2.1 配置
          2. 6.4.1.2.2 执行
          3. 6.4.1.2.3 失败操作
          4. 6.4.1.2.4 错误代码
        3. 6.4.1.3  视频帧计数器校验和
          1. 6.4.1.3.1 一像素帧计数器
          2. 6.4.1.3.2 七像素帧计数器
          3. 6.4.1.3.3 配置
          4. 6.4.1.3.4 执行
          5. 6.4.1.3.5 失败操作
          6. 6.4.1.3.6 错误代码
        4. 6.4.1.4  画面平均值
          1. 6.4.1.4.1 配置
          2. 6.4.1.4.2 执行
          3. 6.4.1.4.3 失败操作
          4. 6.4.1.4.4 错误代码
        5. 6.4.1.5  Ping 命令丢失
          1. 6.4.1.5.1 配置
          2. 6.4.1.5.2 执行
          3. 6.4.1.5.3 失败操作
          4. 6.4.1.5.4 错误代码
        6. 6.4.1.6  DLPC230-Q1 处理器存储器 ECC
          1. 6.4.1.6.1 配置
          2. 6.4.1.6.2 执行
          3. 6.4.1.6.3 失败操作
          4. 6.4.1.6.4 错误代码
        7. 6.4.1.7  闪存表传输 CRC
          1. 6.4.1.7.1 配置
          2. 6.4.1.7.2 执行
          3. 6.4.1.7.3 失败操作
          4. 6.4.1.7.4 错误代码
        8. 6.4.1.8  帧缓冲区交换看门狗
          1. 6.4.1.8.1 配置
          2. 6.4.1.8.2 执行
          3. 6.4.1.8.3 失败操作
          4. 6.4.1.8.4 错误代码
        9. 6.4.1.9  序列发生器指令读取看门狗
          1. 6.4.1.9.1 配置
          2. 6.4.1.9.2 执行
          3. 6.4.1.9.3 失败操作
          4. 6.4.1.9.4 错误代码
        10. 6.4.1.10 DMD 复位指令看门狗
          1. 6.4.1.10.1 配置
          2. 6.4.1.10.2 执行
          3. 6.4.1.10.3 失败操作
          4. 6.4.1.10.4 错误代码
        11. 6.4.1.11 DLPC230-Q1 系统电压监控器
          1. 6.4.1.11.1 配置
          2. 6.4.1.11.2 执行
          3. 6.4.1.11.3 失败操作
          4. 6.4.1.11.4 错误代码
        12. 6.4.1.12 DLPC230-Q1 DMD 电压监控器
          1. 6.4.1.12.1 配置
          2. 6.4.1.12.2 执行
          3. 6.4.1.12.3 失败操作
          4. 6.4.1.12.4 错误代码
        13. 6.4.1.13 DLPC230-Q1 TPS99000-Q1 带隙监视器
          1. 6.4.1.13.1 配置
          2. 6.4.1.13.2 执行
          3. 6.4.1.13.3 失败操作
          4. 6.4.1.13.4 错误代码
        14. 6.4.1.14 DMD 温度监测器
          1. 6.4.1.14.1 配置
          2. 6.4.1.14.2 执行
          3. 6.4.1.14.3 失败操作
          4. 6.4.1.14.4 错误代码
        15. 6.4.1.15 DMD 时钟监测器
          1. 6.4.1.15.1 配置
          2. 6.4.1.15.2 执行
          3. 6.4.1.15.3 失败操作
          4. 6.4.1.15.4 错误代码
        16. 6.4.1.16 DMD 高速接口训练
          1. 6.4.1.16.1 配置
          2. 6.4.1.16.2 执行
          3. 6.4.1.16.3 失败操作
          4. 6.4.1.16.4 错误代码
        17. 6.4.1.17 DMD 低速接口信号
          1. 6.4.1.17.1 配置
          2. 6.4.1.17.2 执行
          3. 6.4.1.17.3 失败操作
          4. 6.4.1.17.4 错误代码
        18. 6.4.1.18 TPS99000-Q1 DLPC230-Q1 处理器看门狗 (WD1)
          1. 6.4.1.18.1 配置
          2. 6.4.1.18.2 执行
          3. 6.4.1.18.3 失败操作
          4. 6.4.1.18.4 错误代码
        19. 6.4.1.19 TPS99000-Q1 DLPC230-Q1 序列发生器看门狗 (WD2)
          1. 6.4.1.19.1 配置
          2. 6.4.1.19.2 执行
          3. 6.4.1.19.3 失败操作
          4. 6.4.1.19.4 错误代码
        20. 6.4.1.20 TPS99000-Q1 温度警告/错误
          1. 6.4.1.20.1 配置
          2. 6.4.1.20.2 执行
          3. 6.4.1.20.3 失败操作
          4. 6.4.1.20.4 错误代码
        21. 6.4.1.21 TPS99000-Q1 时钟比率监视
          1. 6.4.1.21.1 配置
          2. 6.4.1.21.2 执行
          3. 6.4.1.21.3 失败操作
          4. 6.4.1.21.4 错误代码
        22. 6.4.1.22 TPS99000-Q1 寄存器密码锁定
          1. 6.4.1.22.1 配置
          2. 6.4.1.22.2 执行
          3. 6.4.1.22.3 失败操作
          4. 6.4.1.22.4 错误代码
        23. 6.4.1.23 TPS99000-Q1 寄存器校验和
          1. 6.4.1.23.1 配置
          2. 6.4.1.23.2 执行
          3. 6.4.1.23.3 失败操作
          4. 6.4.1.23.4 错误代码
        24. 6.4.1.24 软件监控器线程
          1. 6.4.1.24.1 配置
          2. 6.4.1.24.2 执行
          3. 6.4.1.24.3 失败操作
          4. 6.4.1.24.4 错误代码
      2. 6.4.2 非周期性测试
        1. 6.4.2.1  执行时间
        2. 6.4.2.2  DLPC230-Q1 前端功能 BIST(主)
          1. 6.4.2.2.1 配置
          2. 6.4.2.2.2 执行
          3. 6.4.2.2.3 失败操作
          4. 6.4.2.2.4 错误代码
        3. 6.4.2.3  DLPC230-Q1 后端功能 BIST(主)
          1. 6.4.2.3.1 配置
          2. 6.4.2.3.2 执行
          3. 6.4.2.3.3 失败操作
          4. 6.4.2.3.4 错误代码
        4. 6.4.2.4  DLPC230-Q1 存储器 BIST(主)
          1. 6.4.2.4.1 配置
          2. 6.4.2.4.2 执行
          3. 6.4.2.4.3 失败操作
          4. 6.4.2.4.4 错误代码
        5. 6.4.2.5  TPS99000-Q1 接口信号连接测试(主)
          1. 6.4.2.5.1 配置
          2. 6.4.2.5.2 执行
          3. 6.4.2.5.3 失败操作
          4. 6.4.2.5.4 错误代码
        6. 6.4.2.6  DMD 存储器测试(主)
          1. 6.4.2.6.1 配置
          2. 6.4.2.6.2 执行
          3. 6.4.2.6.3 失败操作
          4. 6.4.2.6.4 错误代码
        7. 6.4.2.7  闪存数据验证(引导/主)
          1. 6.4.2.7.1 配置
          2. 6.4.2.7.2 执行
          3. 6.4.2.7.3 失败操作
          4. 6.4.2.7.4 错误代码
        8. 6.4.2.8  DLPC230-Q1 引导 ROM CRC(引导)
          1. 6.4.2.8.1 配置
          2. 6.4.2.8.2 执行
          3. 6.4.2.8.3 失败操作
          4. 6.4.2.8.4 错误代码
        9. 6.4.2.9  DLPC230-Q1 闪存表 CRC(引导)
          1. 6.4.2.9.1 配置
          2. 6.4.2.9.2 执行
          3. 6.4.2.9.3 失败操作
          4. 6.4.2.9.4 错误代码
        10. 6.4.2.10 DLPC230-Q1 主应用程序 CRC(引导)
          1. 6.4.2.10.1 配置
          2. 6.4.2.10.2 执行
          3. 6.4.2.10.3 失败操作
          4. 6.4.2.10.4 错误代码
        11. 6.4.2.11 DLPC230-Q1 命令和闪存接口存储器测试(引导)
          1. 6.4.2.11.1 配置
          2. 6.4.2.11.2 执行
          3. 6.4.2.11.3 失败操作
          4. 6.4.2.11.4 错误代码
      3. 6.4.3 接口测试
        1. 6.4.3.1 温度传感器接口
          1. 6.4.3.1.1 失败操作
        2. 6.4.3.2 DLPC230-Q1 至 TPS99000-Q1 SPI 接口
          1. 6.4.3.2.1 失败操作
        3. 6.4.3.3 DLPC230-Q1 至 TPS99000-Q1 ADC 接口
          1. 6.4.3.3.1 失败操作
        4. 6.4.3.4 DMD 插座连通性测试
          1. 6.4.3.4.1 配置
          2. 6.4.3.4.2 执行
          3. 6.4.3.4.3 失败操作
          4. 6.4.3.4.4 错误代码
  9. 命令 - 引导应用程序
    1. 7.1 命令表
    2. 7.2 命令定义
      1. 7.2.1  系统复位 - 写入 (00h)
      2. 7.2.2  读取预取 - 写入 (01h)
      3. 7.2.3  读取激活 (02h)
      4. 7.2.4  系统软件版本 - 读取 (B0h)
      5. 7.2.5  闪存器件 ID - 读取 (B1h)
      6. 7.2.6  短状态 - 读取 (C0h)
      7. 7.2.7  错误历史 - 读取 (C1h)
      8. 7.2.8  清除短状态错误 - 写入 (C2h)
      9. 7.2.9  清除错误历史 - 写入 (C3h)
      10. 7.2.10 闪存完全擦除 - 写入 (E0h)
      11. 7.2.11 闪存数据写入 - 写入 (E1h)
      12. 7.2.12 闪存数据验证 - 写入 (E2h)
      13. 7.2.13 闪存接口速率 - 写入 (E3h)
      14. 7.2.14 闪存接口速率 - 读取 (E4h)
  10. 命令 - 主应用程序
    1. 8.1 模式可用性
    2. 8.2 命令定义
      1. 8.2.1  系统复位 - 写入 (00h)
      2. 8.2.2  读取预取 - 写入 (01h)
      3. 8.2.3  读取激活 (02h)
      4. 8.2.4  运行模式 - 写入 (03h)
      5. 8.2.5  运行模式 - 读取 (04h)
      6. 8.2.6  源选择 - 写入 (05h)
      7. 8.2.7  源选择 - 读取 (06h)
      8. 8.2.8  准备源切换 - 写入 (07h)
      9. 8.2.9  显示图像方向 - 写入 (18h)
      10. 8.2.10 显示图像方向 - 读取 (19h)
      11. 8.2.11 系统模式选择 - 写入 (1Ch)
      12. 8.2.12 系统模式选择 - 读取 (1Dh)
      13. 8.2.13 执行批处理命令集 - 写入 (21h)
      14. 8.2.14 执行延迟 - 写入 (22h)
      15. 8.2.15 GPIO 配置 - 写入 (23h)
      16. 8.2.16 GPIO 配置 - 读取 (24h)
      17. 8.2.17 GPIO 输出 - 写入 (25h)
      18. 8.2.18 GPIO 输出 - 读取 (26h)
      19. 8.2.19 GPIO 保留 - 读取 (27h)
      20. 8.2.20 执行非周期性 BIST - 写入 (28h)
      21. 8.2.21 外部视频校验和控制 - 写入 (29h)
      22. 8.2.22 外部视频校验和控制 - 读取 (2Ah)
      23. 8.2.23 外部视频校验和设置 - 写入 (2Bh)
      24. 8.2.24 外部视频校验和设置 - 读取 (2Ch)
      25. 8.2.25 DMD 插座连通性测试 - 写入 (2Dh)
      26. 8.2.26 DMD 插座连通性测试 - 读取 (2Eh)
      27. 8.2.27 画面平均值控制 - 写入 (2Fh)
      28. 8.2.28 画面平均值控制 - 读取 (30h)
      29. 8.2.29 Ping 控制丢失 - 写入 (33h)
      30. 8.2.30 Ping 控制丢失 - 读取 (34h)
      31. 8.2.31 PWM 温度管理使能 - 写入 (35h)
      32. 8.2.32 PWM 温度管理使能 - 读取 (36h)
      33. 8.2.33 PWM 温度管理源 - 写入 (37h)
      34. 8.2.34 PWM 温度管理源 - 读取 (38h)
      35. 8.2.35 PWM 温度管理占空比 - 读取 (39h)
      36. 8.2.36 前照灯 Ping - 写入 (46h)
      37. 8.2.37 PWM 控制 - 写入 (47h)
      38. 8.2.38 PWM 控制 - 读取 (48h)
      39. 8.2.39 照明转换速率 - 写入 (49h)
      40. 8.2.40 照明转换速率 - 读取 (4Ah)
      41. 8.2.41 去伽马选择 - 写入 (54h)
      42. 8.2.42 去伽马选择 - 读取 (55h)
      43. 8.2.43 ADC 测量 - 读取 (5Ch)
      44. 8.2.44 ADC 单次测量 - 读取 (63h)
      45. 8.2.45 照度分级选择 - 写入 (70h)
      46. 8.2.46 照度分级选择 - 读取 (71h)
      47. 8.2.47 TPS99000-Q1 TIA1 修整 - 写入 (86h)
      48. 8.2.48 TPS99000-Q1 TIA1 修整 - 读取 (87h)
      49. 8.2.49 TPS99000-Q1 TIA1 增益 - 写入 (88h)
      50. 8.2.50 TPS99000-Q1 TIA1 增益 - 读取 (89h)
      51. 8.2.51 TPS99000-Q1 TIA1 电容 - 写入 (8Ah)
      52. 8.2.52 TPS99000-Q1 TIA1 电容 - 读取 (8Bh)
      53. 8.2.53 TPS99000-Q1 TIA1 暗偏移 - 写入 (8Ch)
      54. 8.2.54 TPS99000-Q1 TIA1 暗偏移 - 读取 (8Dh)
      55. 8.2.55 TPS99000-Q1 TIA1 输入偏移 - 写入 (8Eh)
      56. 8.2.56 TPS99000-Q1 TIA1 输入偏移 - 读取 (8Fh)
      57. 8.2.57 TPS99000-Q1 驱动模式 - 读取 (93h)
      58. 8.2.58 TPS99000-Q1 ADC 配置 - 写入 (94h)
      59. 8.2.59 TPS99000-Q1 ADC 配置 - 读取 (95h)
      60. 8.2.60 TPS99000-Q1 照明同步控制 - 写入 (96h)
      61. 8.2.61 TPS99000-Q1 照明同步控制 - 读取 (97h)
      62. 8.2.62 TPS99000-Q1 TIA2 控制 - 写入 (98h)
      63. 8.2.63 TPS99000-Q1 TIA2 控制 - 读取 (99h)
      64. 8.2.64 LED 驱动错误 - 读取 (9Ah)
      65. 8.2.65 LED 驱动错误清除 - 写入 (9Bh)
      66. 8.2.66 TPS99000-Q1 测试多路复用选择 - 写入 (9Ch)
      67. 8.2.67 TPS99000-Q1 测试多路复用选择 - 读取 (9Dh)
      68. 8.2.68 闪存数据类型选择 - 写入 (A0h)
      69. 8.2.69 闪存数据擦除 - 写入 (A1h)
      70. 8.2.70 闪存数据写入 - 写入 (A2h)
      71. 8.2.71 闪存数据读取 - 读取 (A3h)
      72. 8.2.72 闪存数据验证 - 写入 (A4h)
      73. 8.2.73 闪存块计数 - 读取 (A5h)
      74. 8.2.74 闪存块 CRC - 读取 (A6h)
      75. 8.2.75 闪存结构版本 - 读取 (A7h)
      76. 8.2.76 闪存数据大小 - 读取 (A9h)
      77. 8.2.77 系统软件版本 - 读取 (B0h)
      78. 8.2.78 闪存器件 ID - 读取 (B1h)
      79. 8.2.79 DLPC230-Q1 器件 ID - 读取 (B2h)
      80. 8.2.80 DMD 器件 ID - 读取 (B3h)
      81. 8.2.81 TPS99000-Q1 器件 ID - 读取 (B4h)
      82. 8.2.82 系统温度 - 读取 (B5h)
      83. 8.2.83 当前源信息 - 读取 (B6h)
      84. 8.2.84 当前显示信息 - 读取 (B8h)
      85. 8.2.85 系统信息 - 读取 (BAh)
      86. 8.2.86 闪存接口速率 - 读取 (BBh)
      87. 8.2.87 短状态 - 读取 (C0h)
      88. 8.2.88 错误历史 - 读取 (C1h)
        1. 8.2.88.1 信息位 - 命令或通信
        2. 8.2.88.2 信息位 - 系统电压
        3. 8.2.88.3 信息位 - DMD 高速接口训练
        4. 8.2.88.4 信息位 - DMD 存储器测试
      89. 8.2.89 清除短状态错误 - 写入 (C2h)
      90. 8.2.90 清除错误历史 - 写入 (C3h)
  11. 命令 - 诊断接口
    1. 9.1 诊断命令读取过程
    2. 9.2 命令表
    3. 9.3 命令定义
      1. 9.3.1 读取预取 - 写入 (01h)
      2. 9.3.2 读取激活 (02h)
      3. 9.3.3 诊断接口状态 - 读取 (F0h)
      4. 9.3.4 诊断接口状态清除 - 写入 (F1h)
  12. 10闪存配置
    1. 10.1 概述
    2. 10.2 系统模式概述
    3. 10.3 暂存区数据
      1. 10.3.1 CRC
      2. 10.3.2 块编号
      3. 10.3.3 版本(主要、次要、补丁)
      4. 10.3.4 自定义数据
  13.   A 错误代码
    1.     A.1 引导应用程序
    2.     A.2 主应用程序
  14.   修订历史记录

系统模式概述

在指代照明和显示设置时,通常使用以下术语:

  • 系统模式 - 一种闪存结构,映射了多种类型的查询表,这些表旨在一起使用以实现所需的图像外观。系统模式中的表都是针对特定的:
    • 帧速率 - 序列旨在匹配特定输入视频帧速率
    • RGB 占空比 - 为红色、绿色和蓝色照明分配的序列时间百分比
  • 序列 - 一个表,用于在整个视频帧时间内控制 DMD 时序和照明使能信号的同步。系统模式中的每个序列都是针对相同的帧速率和 RGB 占空比设计的。每个序列都具有一个特定的 DMD 占空比。例如,一个序列可以使用 70% (70/30) DMD 占空比,另一个序列可以使用 50%、50% (50/50) DMD 占空比。此百分比与系统可以输出的最大光输出有关。
  • 照度分级 - 用于控制给定序列中照明驱动信号处于活动状态的时间量的表。这用于对调光用例中的光输出量提供粗略的步进控制。对于不使用调光的应用,照度分级旨在提供最大序列强度。
  • 去伽马表 - 一种去伽马曲线,用于控制输入像素电平到输出像素亮度电平的映射。它们通常用于补偿视频内容固有的伽马曲线或对像素电平的特定区域进行加重。每一个序列使用相同的去伽马曲线,这样每个系统亮度都可以使用相同的去伽马曲线。

可用序列、照度分级和去伽马表在随闪存二进制文件一同提供的闪存头文件中指定。

主机指定系统模式索引、照度分级索引和去伽马索引。主机永远不会直接指定序列索引。下例对此进行了说明。

图 10-1 使用索引示例显示这些表之间的关系。系统模式包含一组照度分级。主机通过在系统模式内选择所需的照度分级索引来指定系统亮度。每个照度分级专为特定序列而设计。当主机选择照度分级时,主应用程序将自动选择照度分级映射到的一个序列。主机绝不直接设置序列。不同的照度分级可以映射到同一序列。这表示使用不同的照明百分比和同一 DMD 占空比来实现不同的总亮度水平。每个序列都映射到一条或多条去伽马曲线。同一组去伽马曲线应用于所有序列。例如,去伽马曲线 0 可以是从输入像素到输出像素电平 (128 in = 128 out) 的简单线性映射。在该示例中,对于所有序列,去伽马 0 将是线性的。

DLPC230-Q1 系统模式示例图 10-1 系统模式示例