DP协议训练DisplayPort-Link training过程(简化版,后续更新具体参数配置)

2023-12-14 10:56:31

总体简介:

检测到热插拔后,DisplayPort 源会通过链路训练来配置链路。

DisplayPort 源设备通过 AUX 通道访问接收器的 DPCD 寄存器块,以确定接收器的功能和状态并启动链路训练命令。

1、HPD 热插拔信号检测到后的链路训练流程:

  1. Source设备读取 DPCD 功能字段地址0x00000h—0x000FFh以确定接收设备的功能。
  2. Source设备写入链路配置字段地址 0x00100h—0x00101h,以根据接收设备的要求配置链路带宽和通道数。

2、链路配置后,源端启动链路训练模式序列 1(用于锁定 DPRX 的时钟恢复电路)

  1. Source写入地址 0x00102h 以选择训练模式 1 和禁用加扰。源同时通过主链路发送训练模式 1。
  2. Source写入地址 0x00103h—0x00106h 来配置每个通道的链路训练控制。
  3. Source从地址 0x0000Eh 读取TRAINING_AUX_RD_INTERVAL价值读取主链路训练期间的链路状态/调整请求读取间隔。
  4. Source等待一段指定的时间TRAINING_AUX_RD_INTERVAL在从接收器设备读取链接状态(0x00202h—0x00207h)之前。
  5. 如果时钟恢复核心(CR_完成) 在一条或多条车道上失败:
    • 源检查链接驱动程序设置调整请求 (0x00206h—0x00207h) 并做出相应响应。
    • 在相同的链路驱动程序设置中,如果源已重复训练模式序列 15次,则源将在偏移 0x00100h 处降低链路带宽(从 HBR2 到 HBR 到 RBR),并从步骤 1 开始返回。
    • 如果链路带宽已处于最低速率 (RBR),则链路训练失败。

3、对于链路训练模式序列 2:(用于设置均衡、确定符号边界以及实现通道间对齐)

  1. Source写入偏移 0x00102h 以选择训练模式 2 和禁用加扰。源同时通过主链路发送训练模式2。
  2. Source写入偏移量 0x00103h – 0x00106h 来配置每个通道的链路训练控制。
  3. Source从偏移量 0x0000Eh 读取TRAINING_AUX_RD_INTERVAL价值。
  4. Source等待一段指定的时间TRAINING_AUX_RD_INTERVAL在从接收器设备读取链接状态(0x00202—0x00207)之前。
  5. 如果时钟恢复(CR)完成(0x00202h) 在一个或多个通道中失败,中止训练模式序列 2,并重新启动训练模式序列 1。
  6. 如果时钟恢复(CR)完成通过所有车道,检查以下操作是否失败或通过:
    • CHANNEL_EQ_DONE
    • 符号_锁定
    • INTERLANE_ALIGN_DONE
  7. 如果CHANNEL_EQ_DONE,符号_锁定或者INTERLANE_ALIGN_DONE在一条或多条车道上发生故障:
    • 源检查链接驱动程序设置调整请求 (0x00206 – 0x00207) 并做出相应响应。
    • 在相同的链路驱动程序设置中,如果源已重复训练模式序列25次,则源将降低偏移 0x00100 处的链路带宽(从 HBR2 到 HBR 到 RBR),中止训练模式序列 2,并重新启动链路训练模式序列 1。
    • 如果链路带宽已处于最低速率 (RBR),则链路训练失败。
  8. 如果训练模式序列 2 通过,则链接训练完成。
  9. 源写入偏移量 0x00102 以禁用链路训练。
    注意:如果 DisplayPort 源和接收器都支持 HBR2,请将训练模式序列 2 替换为训练模式序列 3。

文章来源:https://blog.csdn.net/m0_37755481/article/details/134987044
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。