ZHCSUP0A March   2024  – September 2024 DLPC964

PRODUCTION DATA  

  1.   1
  2. 特性
  3. 应用
  4. 说明
  5. 引脚配置和功能
  6. 规格
    1. 5.1 绝对最大额定值
    2. 5.2 ESD 等级
    3. 5.3 建议运行条件
    4. 5.4 热性能信息
    5. 5.5 电气特性
    6. 5.6 时序要求
  7. 详细说明
    1. 6.1 概述
    2. 6.2 功能方框图
    3. 6.3 特性说明
      1. 6.3.1 输入高速串行 (HSS) 接口
      2. 6.3.2 块接口
      3. 6.3.3 控制接口
        1. 6.3.3.1 看门狗
        2. 6.3.3.2 LOAD2
          1. 6.3.3.2.1 LOAD2 行寻址
          2. 6.3.3.2.2 LOAD2 块清除
        3. 6.3.3.3 接收器低功耗模式启用
        4. 6.3.3.4 DMD 高速串行接口 (HSSI) 复位
        5. 6.3.3.5 DMD 电源使能
      4. 6.3.4 用户 K-Data 接口
      5. 6.3.5 状态接口
        1. 6.3.5.1 INIT_DONE
        2. 6.3.5.2 MCP_ACTIVE
        3. 6.3.5.3 BLKLOADZ
        4. 6.3.5.4 高速串行接口 (HSSI) 总线错误
        5. 6.3.5.5 IRQZ
      6. 6.3.6 复位、系统时钟和电源正常
        1. 6.3.6.1 控制器复位
        2. 6.3.6.2 主振荡器时钟
        3. 6.3.6.3 DMD HSSI 总线振荡器时钟
        4. 6.3.6.4 POWERGOOD 和 DMDPOWERGOOD
      7. 6.3.7 I2C 接口
        1. 6.3.7.1 配置引脚
        2. 6.3.7.2 通信接口
          1. 6.3.7.2.1 命令格式
      8. 6.3.8 DMD (HSSI) 接口
        1. 6.3.8.1 Park 控制
        2. 6.3.8.2 可配置 HSSI 设置
      9. 6.3.9 闪存 PROM 接口
        1. 6.3.9.1 JTAG 接口
    4. 6.4 器件功能模式
      1. 6.4.1 DLPC964 Aurora 64B/66B 输入数据和命令写入周期
        1. 6.4.1.1 块模式运行(块以块控制字开始)
          1. 6.4.1.1.1 块清除和块置位
          2. 6.4.1.1.2 图像方向 - 块加载递增/递减
          3. 6.4.1.1.3 单通道模式
        2. 6.4.1.2 DMD 位平面数据输入(四路输入模式)
        3. 6.4.1.3 DMD 位平面数据输入(单路输入模式)
        4. 6.4.1.4 块完成(DMDLOAD_REQ 和 BLKLOADZ)
      2. 6.4.2 DMD 行操作
      3. 6.4.3 块载入地址选择
      4. 6.4.4 块模式选择
      5. 6.4.5 微镜时钟脉冲 (MCP)
    5. 6.5 寄存器映射
      1. 6.5.1 寄存器表概述
        1. 6.5.1.1  FPGA_INTERRUPT_STATUS 寄存器
        2. 6.5.1.2  FPGA_INTERRUPT_ENABLE_CONTROL 寄存器
        3. 6.5.1.3  FPGA_MAIN_STATUS 寄存器
        4. 6.5.1.4  FPGA_VERSION 寄存器
        5. 6.5.1.5  FPGA_MAIN_CTRL 寄存器
        6. 6.5.1.6  SELF_TEST_REG 寄存器
        7. 6.5.1.7  DMDIF_ERROR_STATUS_CLR 寄存器
        8. 6.5.1.8  DMDIF_ERROR_STATUS 寄存器
        9. 6.5.1.9  PRBS7_MACRO0_TEST_RESULT 寄存器
        10. 6.5.1.10 PRBS7_MACRO1_TEST_RESULT 寄存器
        11. 6.5.1.11 PRBS7_MACRO2_TEST_RESULT 寄存器
        12. 6.5.1.12 PRBS7_MACRO3_TEST_RESULT 寄存器
        13. 6.5.1.13 PRBS7_TEST_CONTROL 寄存器
        14. 6.5.1.14 PRBS7_TEST_RUNSTATUS 寄存器
        15. 6.5.1.15 LS_BUS_TEST_RESULT 寄存器
        16. 6.5.1.16 DMD_TYPE 寄存器
        17. 6.5.1.17 HSS_RESET 寄存器
        18. 6.5.1.18 HSS_CHANNEL_STATUS 寄存器
        19. 6.5.1.19 HSS_LANE_STATUS 寄存器
        20. 6.5.1.20 HSS_CH0_SOFTERROR_COUNT 寄存器
        21. 6.5.1.21 HSS_CH1_SOFTERROR_COUNT 寄存器
        22. 6.5.1.22 HSS_CH2_SOFTERROR_COUNT 寄存器
        23. 6.5.1.23 HSS_CH3_SOFTERROR_COUNT 寄存器
        24. 6.5.1.24 HSS_SOFTERROR_COUNT_RESET 寄存器
        25. 6.5.1.25 HSSI_Channel_0_DMD_Data_GT_Cell_Control 寄存器
        26. 6.5.1.26 HSSI_Channel_0_DMD_Clock_GT_Cell_Control 寄存器
        27. 6.5.1.27 HSSI_Channel_1_DMD_Data_GT_Cell_Control 寄存器
        28. 6.5.1.28 HSSI_Channel_1_DMD_Clock_GT_Cell_Control 寄存器
        29. 6.5.1.29 HSSI_Channel_2_DMD_Data_GT_Cell_Control 寄存器
        30. 6.5.1.30 HSSI_Channel_2_DMD_Clock_GT_Cell_Control 寄存器
        31. 6.5.1.31 HSSI_Channel_3_DMD_Data_GT_Cell_Control 寄存器
        32. 6.5.1.32 HSSI_Channel_3_DMD_Clock_GT_Cell_Control 寄存器
        33. 6.5.1.33 HSSI_DMD_Vcm_Value 寄存器
        34. 6.5.1.34 TEST_DMD_ID 寄存器
        35. 6.5.1.35 TEST_DMD_FUSE1 寄存器
        36. 6.5.1.36 TEST_DMD_FUSE2 寄存器
        37. 6.5.1.37 TEST_DMD_FUSE3 寄存器
        38. 6.5.1.38 TEST_DMD_FUSE4 寄存器
  8. 应用和实施
    1. 7.1 应用信息
    2. 7.2 典型应用
      1. 7.2.1 高速直接成像应用
      2. 7.2.2 设计要求
      3. 7.2.3 详细设计过程
      4. 7.2.4 DMD 微镜切换性能图
    3. 7.3 连接到 DLPC964 控制器高速串行 (HSS) Aurora 64B/66B 输入
      1. 7.3.1 工作原理
        1. 7.3.1.1 块以块控制字开始
        2. 7.3.1.2 块以 DMDLOAD_REQ 完成
        3. 7.3.1.3 DMDLOAD_REQ 建立时间要求
        4. 7.3.1.4 单通道传输模式
        5. 7.3.1.5 DMD 块阵列数据映射
    4. 7.4 电源相关建议
      1. 7.4.1 电源分配和要求
      2. 7.4.2 断电要求
    5. 7.5 布局
      1. 7.5.1 布局指南
        1. 7.5.1.1 PCB 设计标准
        2. 7.5.1.2 信号层
        3. 7.5.1.3 常规 PCB 布线
          1. 7.5.1.3.1 布线最小间距
          2. 7.5.1.3.2 布线长度匹配
            1. 7.5.1.3.2.1 HSSI 输出总线偏移
            2. 7.5.1.3.2.2 Aurora 64B/66B 输入总线偏移
              1. 7.5.1.3.2.2.1 其他时序关键型信号
          3. 7.5.1.3.3 布线阻抗和布线优先级
      2. 7.5.2 电源和接地平面
      3. 7.5.3 电源过孔
      4. 7.5.4 去耦
    6. 7.6 布局示例
  9. 器件和文档支持
    1. 8.1 文档支持
      1. 8.1.1 相关文档
    2. 8.2 接收文档更新通知
    3. 8.3 支持资源
    4. 8.4 商标
    5. 8.5 静电放电警告
    6. 8.6 术语表
  10. 修订历史记录
  11. 10机械、封装和可订购信息

块以块控制字开始

AMD Aurora 64B/66B 高速串行 (HSS) 接口是一种通用数据传输链路,没有任何关于如何排列 DMD 块数据结构的概念。要定义 DMD 块的开始,APPS FPGA 逻辑必须先通过 Aurora 64B/66B User-K 数据端口的通道 0 发送块控制字数据包,然后才能开始 DMD 数据传输。

下面的表 7-1 包含有关 Aurora User-K 接口端口的详细信息。User-K 接口端口用于实现应用特定控制功能,独立于数据接口,且优先级高于数据接口。

表 7-1 User-K 接口端口
名称 方向 时钟域 说明
USER_S_S_AXIS_TX
s_axi_user_k_tx_tdata[0:(64n-1)] 或 s_axi_user_k_tx_tdata[(64n-1):0](1) 输入 user_clk USER-K 块数据为 64 位对齐。每个信道的信号映射:
默认值:
s_axi_user_k_tx_tdata={{4'h0,user_k_blk_no[0:3],user_k_data[55:0]}*n}
小端字节序格式:
s_axi_user_k_tx_tdata={{user_k_data[55:0],4'h0,user_k_blk_no[3:0]}*n}
s_axi_user_k_tx_tvalid 输入 user_clk 指示 s_axi_userk_tx_tdata 端口上的有效 User-K 数据。
s_axi_user_k_tx_tready 输出 user_clk 指示 Aurora 64B/66B 内核已为接受 s_axi_user_k_tx_tdata 接口上的数据做好准备。
USER_K_M_AXIS_RX
m_axi_rx_user_k_tvalid 输出 user_clk 指示 m_axi_user_k_tx_tdata 端口上的有效 User-K 数据。
m_axi_rx_user_k_tdata 或 m_axi_rx_user_k_tdata[(64n-1):0](1) 输出 user_clk 从 Aurora 64B/66B 信道接收到的 USER-K 块为 64 位对齐。
每个信道的信号映射:
默认值:
m_axi_rx_user_k_tdata= {{4'h0,user_k_blk_no[0:3],user_k_data[55:0]}*n}
小端字节序格式:
m_axi_rx_user_k_tdata= {{user_k_data[55:0],4'h0,user_k_blk_no[3:0]}*n}
n 是信道数。

如下面的表 7-2 所示,DLPC964 的 HSS 接口有四个 User-K 端口接口通道向 APPS FPGA 用户逻辑公开。只有通道 0 用于发送块控制字。DLPC964 控制器不会使用通过通道 1、2 和 3 的 User-K 端口发送的任何控制字数据包,而是将这些数据包忽略。

表 7-2 Aurora 64B/66B 高速串行 User-K 端口使用情况
信号名称 信号方向 DLPC964 应用使用情况
gt0_s_axi_user_k_tx_tdata[191:0] Aurora 通道 0 的输入 要发送的 192 位块控制字数据包
gt0_s_axi_user_k_tx_tvalid Aurora 通道 0 的输入 用户逻辑将此信号置为高电平有效以向 Aurora 内核指示块控制字有效,因此可进行发送。Aurora 内核在 TVALID 未置为有效时会忽略字。
gt0_s_axi_user_k_tx_tready Aurora 通道 0 接收的输出 当接受块控制字时,Aurora 内核将此信号置为高电平有效。当忽略字时(例如内核未准备好接受输入字),该信号被置为无效。
gt1_s_axi_user_k_tx_tdata[191:0] Aurora 通道 1 的输入 未使用
gt1_s_axi_user_k_tx_tvalid Aurora 通道 1 的输入 未使用
gt1_s_axi_user_k_tx_tready Aurora 通道 1 接收的输出 未使用
gt2_s_axi_user_k_tx_tdata[191:0] Aurora 通道 2 的输入 未使用
gt2_s_axi_user_k_tx_tvalid Aurora 通道 2 的输入 未使用
gt2_s_axi_user_k_tx_tready Aurora 通道 2 接收的输出 未使用
gt3_s_axi_user_k_tx_tdata[191:0] Aurora 通道 3 的输入 未使用
gt3_s_axi_user_k_tx_tvalid Aurora 通道 3 的输入 未使用
gt3_s_axi_user_k_tx_tready Aurora 通道 3 接收的输出 未使用

表 7-3 介绍了 192 位块控制字中的各种字段。块控制字不仅定义了 DMD 块的开始,还包含指导 DLPC964 控制器处理从 APPS FPGA 接收的 DMD 块数据的指令和信息。

表 7-3 块控制字段定义
字段位置 字段类型 字段说明
gt0_s_axi_user_k_tx_tdata[7:0] USER_K_BLOCK_NUMBER 必须设置为零 (0x00)。非 0x00 的值均无效。如果该字段未设置为 0x00,则 DLPC964 控制器会忽略整个 192 位控制字。
gt0_s_axi_user_k_tx_tdata[11:8] BLOCK_ADDRESS 指示 DLPC964 将操作应用到的 DMD 块地址:0000:DMD 块 0,0001:DMD 块 1,0010:DMD 块 2,… 1110:DMD 块 14,1111:DMD 块 15
gt0_s_axi_user_k_tx_tdata[15:7] 保留,未使用
gt0_s_axi_user_k_tx_tdata[24:16] ROW_LENGTH DLPC964 要加载的 DMD 行数。DLP991U DMD 在每个块中有 136 行,因此有效范围为 1-136。包括 0 在内的所有其他值均无效。设置为 136 表示执行全块操作。设置为 1–135 表示执行非全块操作。
注意:仅在 LOAD_TYPE = 000 时使用此字段。
gt0_s_axi_user_k_tx_tdata[34:32] LOAD_TYPE 000:块加载。DLPC964 将用户数据加载到由 BLOCK_ADDRESS 和 ROW_LENGTH 定义的 DMD 阵列中。
001:块清除。DLPC964 将 DMD 阵列中由 BLOCK_ADDRESS 定义的整个块清零。
010:块置位。DLPC964 将 DMD 阵列中由 BLOCK_ADDRESS 定义的整个块设置为 1。
其他值:保留,请勿使用。
注意:在 001(块清除)或 010(块置位)操作中,ROW_LENGTH 和 NORTH_SOUTH_FLIP 字段被忽略。清除和置位操作会影响整个 DMD 块阵列。不支持对非全块执行清除和置位操作。
gt0_s_axi_user_k_tx_tdata[36] NORTH_SOUTH_FLIP 控制 DMD 块内的数据加载方向。
0:DLPC964 从第 1 行开始加载数据并向上计数。
1:DLPC964 从第 136 行开始加载数据并向下计数。
注意:仅在 LOAD_TYPE 为 000 时使用此字段。
gt0_s_axi_user_k_tx_tdata[29:28] DMD_SEGMENT 当 SINGLE_CHANNEL_MODE =“1”时,DMD_SEGMENT 用于选择要为操作选择的 DMD 段。
00:分段 0
01:分段 1
10:分段 2
11:分段 3
注意:如果 SINGLE_CHANNEL_MODE =“0”,则此字段被忽略。
gt0_s_axi_user_k_tx_tdata[30] SINGLE_CHANNEL_MODE 1:单通道运行。仅在 Aurora 通道 0 上接收 DMD 的 DLPC964 输入数据。
0:正常运行。在全部四个 Aurora 通道上接收 DMD 的 DLPC964 输入数据。
gt0_s_axi_user_k_tx_tdata[191:31] 保留,未使用

图 7-4 显示了 Aurora 64B/66B 数据块传输开始时通过通道 0 User-K 端口进行的 192 位块控制字传输。在该示例中,正在加载 DMD 块 1 的 136 行。

  1. 通过在 gt0_s_axi_user_k_tx_tdata[191:0] 总线上使用正确的块控制字,APPS FPGA 用户逻辑将 TVALID 标志 gt0_s_axi_user_k_tx_tvalid 置为有效,并等待 Aurora 内核的响应。
  2. Aurora 内核将 TREADY 标志 gt0_s_axi_user_k_tx_tready 置为有效,指示内核已接受 192 位 User-K 数据。
  3. 发送块控制字后,APPS FPGA 用户逻辑开始在全部四个 HSS 数据接口上进行 Aurora 数据块传输。
DLPC964 块以块控制字开始的波形图 7-4 块以块控制字开始的波形