ZHCSXC1A November 2024 – February 2025 TUSB5461-Q1
PRODUCTION DATA
表 7-1 列出了 TUSB5461-Q1 寄存器。表 7-1中未列出的所有寄存器偏移地址都应视为保留的存储单元,并且不应修改寄存器内容。
| 偏移 | 首字母缩写词 | 寄存器名称 | 部分 |
|---|---|---|---|
| 0xA | General_1 | 通用寄存器 | 转到 |
| 0xB | TXEQ_CTRL | TX EQ 控制 | 转到 |
| 0x10 | DP01EQ_SEL | DisplayPort 通道 0 和 1 EQ 控制 | 转到 |
| 0x11 | DP23EQ_SEL | DisplayPort 通道 2 和 3 EQ 控制 | 转到 |
| 0x12 | DisplayPort_1 | AUX 监测状态 | 转到 |
| 0x13 | DisplayPort_2 | DP 通道启用/禁用控制 | 转到 |
| 0x1C | AEQ_CONTROL1 | AEQ 控制 | 转到 |
| 0x1D | AEQ_CONTROL2 | AEQ 控制 | 转到 |
| 0x1E | AEQ_LONG | 长通道的 AEQ 设置 | 转到 |
| 0x20 | USBC_EQ | RX1 和 RX2 接收器的 EQ 控制 | 转到 |
| 0x21 | SS_EQ | SSTX 接收器的 EQ 控制 | 转到 |
| 0x22 | USB3_MISC | 其他 USB3 控制 | 转到 |
| 0x24 | USB_STATUS | USB 状态机状态 | 转到 |
| 0x32 | VOD_CTRL | VOD 线性度和 AEQ 控制 | 转到 |
| 0x3B | AEQ_STATUS | 完整和快速 AEQ 状态 | 转到 |
复杂的位访问类型经过编码可适应小型表单元。表 7-2 展示了适用于此部分中访问类型的代码。
| 访问类型 | 代码 | 说明 |
|---|---|---|
| 读取类型 | ||
| R | R | 读取 |
| RH | R H | 读取 由硬件置位或清零 |
| 写入类型 | ||
| W | W | 写入 |
| W1S | W 1S | 写入 1 以进行设置 |
| WS | W | 写入 |
| 复位或默认值 | ||
| -n | 复位后的值或默认值 | |
General_1 如 表 7-3 所示。
返回到汇总表。
该寄存器用于在 USB 模式和 DisplayPort 模式之间做出选择,也用于选择多路复用器的方向。软件可以设置 EQ_OVERRIDE,以使用 EQ 寄存器,不使用引脚。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7 | SSRX_LIMIT_ENABLE | R/W | 0x0 | 为 SSRX 变送器启用限幅转接驱动器模式。 0x0 = 线性转接驱动器 0x1 = 限幅转接驱动器 |
| 6 | RESERVED | R | 0x0 | 保留 |
| 5 | SWAP_HPDIN | R/W | 0x0 | 控制从哪个引脚 HPDIN 中获取。 0x0 = HPDIN 处于默认位置 0x1 = 交换 HPDIN 位置(引脚 15 连接到引脚 24,或引脚 24 连接到引脚 15)。 |
| 4 | EQ_OVERRIDE | R/W | 0x0 | 此字段使软件可以使用寄存器中的 EQ 设置,而不是从引脚采样的值。 0x0 = 基于 EQ 引脚的采样状态的 EQ 设置。 0x1 = 基于每个 EQ 寄存器的编程值的 EQ 设置。 |
| 3 | HPDIN_OVERRIDE | R/W | 0x0 | 覆盖 HPDIN 引脚状态。 0x0 = 基于 HPD_IN 引脚的 HPD_IN。 0x1 = HPD_IN 高电平。 |
| 2 | FLIP_SEL | R/W | 0x0 | 该字段控制方向。 0x0 = 正常方向 0x1 = 翻转方向。 |
| 1-0 | CTLSEL | R/W | 0x1 | 控制 DP 模式和 USB 模式。 0x0 = 禁用。USB3 和 DisplayPort 的所有 RX 和 TX 都被禁用。 0x1 = 启用仅限 USB3。 0x2 = 启用四个 DisplayPort 通道。 0x3 = USB3 和两个 DisplayPort 通道。 |
TXEQ_CTRL 如 表 7-4 所示。
返回到汇总表。
当启用限幅转接驱动器模式时,该寄存器控制 SSRX 的预加重和去加重电平。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-6 | TX_PRESHOOT | R/W | 0x1 | SSRX TX 预冲电平(前游标)。 0x0 = 1.5dB 0x1 = 2dB 0x2 = 2.3dB 0x3 = 2.8dB |
| 5 | TX_PRESHOOT_EN | R/W | 0x1 | 启用 SSRX TX 预冲(前游标)。仅当 SSRX_LIMIT_ENABLE = 1 时有效。 0x0 = 禁用 (0dB) 0x1 = 启用 |
| 4-3 | TX_DEEPHASIS | R/W | 0x1 | SSRX 发送器的去加重电平(后置游标) 0x0 = -1.5dB 0x1 = -2.1dB 0x2 = -3.2dB 0x3 = -3.8dB |
| 2 | TX_DEEPHASIS_EN | R/W | 0x1 | 启用 SSRX 发送器的去加重功能(后置游标)。仅当 SSRX_LIMIT_ENABLE = 1 时有效。 0x0 = 禁用 (0dB) 0x1 = 启用 |
| 1-0 | RESERVED | R | 0x0 | 保留 |
DP01EQ_SEL 如 表 7-5 所示。
返回到汇总表。
该寄存器控制 DisplayPort 接收器 0 和 1 的接收器均衡设置。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-4 | DP1EQ_SEL | RH/W | 0x0 | 此字段选择 DP 通道 1 引脚的 EQ。当 EQ_OVERRIDE = 0b 时,此字段反映 DPEQ[1:0] 引脚的采样状态。当 EQ_OVERRIDE = 1b 时,软件可以基于写入此字段的值来更改 DP 通道 1 的 EQ 设置。 |
| 3-0 | DP0EQ_SEL | RH/W | 0x0 | 此字段选择 DP 通道 0 引脚的 EQ。当 EQ_OVERRIDE = 0b 时,此字段反映 DPEQ[1:0] 引脚的采样状态。当 EQ_OVERRIDE = 1b 时,软件可以基于写入此字段的值来更改 DP 通道 0 的 EQ 设置。 |
DP23EQ_SEL 如 表 7-6 所示。
返回到汇总表。
该寄存器控制 DisplayPort 接收器 2 和 3 的接收器均衡设置。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-4 | DP3EQ_SEL | RH/W | 0x0 | 此字段选择 DP 通道 3 引脚的 EQ。当 EQ_OVERRIDE = 0b 时,此字段反映 DPEQ[1:0] 引脚的采样状态。当 EQ_OVERRIDE = 1b 时,软件可以基于写入此字段的值来更改 DP 通道 3 的 EQ 设置。 |
| 3-0 | DP2EQ_SEL | RH/W | 0x0 | 此字段选择 DP 通道 2 引脚的 EQ。当 EQ_OVERRIDE = 0b 时,此字段反映 DPEQ[1:0] 引脚的采样状态。当 EQ_OVERRIDE = 1b 时,软件可以基于写入此字段的值来更改 DP 通道 2 的 EQ 设置。 |
DisplayPort_1 如 表 7-7 所示。
返回到汇总表。
启用 AUX 监测时,该寄存器提供 AUX 监测的状态。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7 | RESERVED | R | 0x0 | 保留 |
| 6-5 | SET_POWER_STATE | RH | 0x0 | 此字段表示 AUX 写入 DPCD 地址 0x00600 的监测值。当 AUX_SNOOP_DISABLE = 0b 时,会根据监测值启用或禁用 DP 通道。当 AUX_SNOOP_DISABLE = 1b 时,DP 通道启用/禁用由 DPx_DISABLE 寄存器的状态决定,其中 x = 0、1、2 或 3。当 CTLSEL1 从 1b 变为 0b 时,通过硬件复位将此字段复位为 0h。 |
| 4-0 | LANE_COUNT_SET | RH | 0x0 | 此字段代表 AUX 写入 DPCD 地址 0x00101 寄存器的监测值。当 AUX_SNOOP_DISABLE = 0b 时,会启用由监测值指定的 DP 通道。禁用未使用的 DP 通道以降低功耗。当 AUX_SNOOP_DISABLE = 1b 时,DP 通道启用/禁用由 DPx_DISABLE 寄存器决定,其中 x = 0、1、2 或 3。当 CTLSEL1 从 1b 变为 0b 时,通过硬件复位将此字段复位为 0h。 |
DisplayPort_2 如 表 7-8 所示。
返回到汇总表。
该寄存器提供对启用和禁用 AUX 监测和单个 DP 通道的控制。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7 | AUX_SNOOP_DISABLE | R/W | 0x0 | 根据 AUX 监测值或寄存器控制是否启用 DP 通道。 0x0 = AUX 监测已启用。 0x1 = AUX 监测已禁用。DP 通道由寄存器控制。 |
| 6 | RESERVED | R | 0x0 | 保留 |
| 5-4 | AUX_SBU_OVR | R/W | 0x0 | 此字段会根据 CTL1 和 FLIP 覆盖 AUXP/N 至 SBU1/2 的连接和断开。通过将此字段更改为 01b 或 10b,无论 CTLSEL1 和 FLIPSEL 寄存器的状态如何,都会使流量通过 AUX 传输到 SBU。 0x0 = AUX 至 SBU 连接由 CTLSEL1 和 FLIPSEL 决定 0x1 = AUXP -> SBU1 和 AUXN -> SBU2 0x2 = AUXP -> SBU2 和 AUXN -> SBU1 0x3 = AUX 至 SBU 断开。 |
| 3 | DP3_DISABLE | R/W | 0x0 | 当 AUX_SNOOP_DISABLE = 1b 时,此字段可用于启用或禁用 DP 通道 3。当 AUX_SNOOP_DISABLE = 0b 时,对此字段的更改对通道 3 功能没有影响。 0x0 = DP 通道 3 已启用。 0x1 = DP 通道 3 已禁用。 |
| 2 | DP2_DISABLE | R/W | 0x0 | 当 AUX_SNOOP_DISABLE = 1b 时,此字段可用于启用或禁用 DP 通道 2。当 AUX_SNOOP_DISABLE = 0b 时,对此字段的更改对通道 2 功能没有影响。 0x0 = DP 通道 2 已启用。 0x1 = DP 通道 2 已禁用。 |
| 1 | DP1_DISABLE | R/W | 0x0 | 当 AUX_SNOOP_DISABLE = 1b 时,此字段可用于启用或禁用 DP 通道 1。当 AUX_SNOOP_DISABLE = 0b 时,对此字段的更改对通道 1 功能没有影响。 0x0 = DP 通道 1 已启用。 0x1 = DP 通道 1 已禁用。 |
| 0 | DP0_DISABLE | R/W | 0x0 | 当 AUX_SNOOP_DISABLE = 1b 时,此字段可用于启用或禁用 DP 通道 0。当 AUX_SNOOP_DISABLE = 0b 时,对此字段的更改对通道 0 功能没有影响。 0x0 = DP 通道 0 已启用。 0x1 = DP 通道 0 已禁用。 |
AEQ_CONTROL1 如 表 7-9 所示。
返回到汇总表。
该寄存器用于启用自适应 EQ,并选择快速自适应模式还是完整自适应模式。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-4 | FULLAEQ_UPPER_EQ | R/W | 0x8 | 用于检查完全 AEQ 模式的最大 EQ 值 |
| 3 | USB3_U1_DISABLE | R/W | 0x0 | 当设置该字段时,如果检测到电气空闲状态,将会导致进入 U3 而不是 U1。 0x0 = 检测到电气空闲后进入 U1。 0x1 = 检测到电气空闲后进入 U3。 |
| 2-1 | AEQ_MODE | R/W | 0x0 | 在“快速”和两种完整自适应模式之间进行选择 0x0 = 快速 AEQ。 0x1 = 完整 AEQ,记录每次 EQ 中点的命中次数。 0x2 = 快速 AEQ。 0x3 = 完整 AEQ,仅当 EQ 值为 0 时记录中点命中次数。 |
| 0 | AEQ_EN | R/W | 0x0 | 控制是否为 USB 下行端口启用自适应 EQ。 0x0 = 禁用 AEQ 0x1 = 启用 AEQ |
AEQ_CONTROL2 如 表 7-10 所示。
返回到汇总表。
此寄存器支持控制快速 AEQ 的上下限,并可增加或减少完整 AEQ 功能使用的最终 EQ 值。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7 | OVER_EQ_SIGN | R/W | 0x0 | 选择 OVER_EQ_CTRL 字段的符号。 0x0 = 正值 0x1 = 负值 |
| 6 | RESERVED | R | 0x0 | 保留 |
| 5-3 | FASTAEQ_LIMITS | R/W | 0x2 | 选择 DAC 的上限/下限以确定短通道与长通道。 0x0 = +/- 0mV 0x1 = +/- 40mV 0x2 = +/- 80mV 0x3 = +/- 120mV 0x4 = +/- 160mV 0x5 = +/- 200mV 0x6 = +/- 240mV 0x7 = +/- 280mV |
| 2-0 | OVER_EQ_CTRL | R/W | 0x0 | 此字段可根据所编程的值增加或减少 AEQ 值。例如,若完整 AEQ 值为 6,且此字段编程为 2 且 OVER_EQ_SIGN = 0,则使用的 EQ 值为 8。此字段仅在完整 AEQ 模式下使用。 0x0 = 0 或 -8 0x1 = 1 或 -7 0x2 = 2 或 -6 0x3 = 3 或 -5 0x4 = 4 或 -4 0x5 = 5 或 -3 0x6 = 6 或 -2 0x7 = 7 或 -1 |
AEQ_LONG 如 表 7-11 所示。
返回到汇总表。
此寄存器用于在启用快速 AEQ 时为长通道设置编程 EQ 值。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-4 | LONG_EQ2 | R/W | 0x7 | 当 AEQ_EN = 1 且 AEQ_MODE = x0 时,当检测到长通道时,选择 USB 下行端口 1 (RX2) 的 EQ 设置。编程到该字段中的值可以为长沟道配置提供理想的 Rx JTOL 结果。 |
| 3-0 | LONG_EQ1 | R/W | 0x7 | 当 AEQ_EN = 1 且 AEQ_MODE = x0 时,当检测到长通道时,选择 USB 下行端口 2 (RX1) 的 EQ 设置。编程到该字段中的值可以为长沟道配置提供理想的 Rx JTOL 结果。 |
USBC_EQ 如 表 7-12 所示。
返回到汇总表。
该寄存器控制 DFP(RX1 和 RX2)的接收端均衡设置。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-4 | EQ2_SEL | RH/W | 0x0 | 如果 AEQ_EN = 0,此字段选择面向 USB-C 接口的 USB3.1 RX2 接收端的 EQ 设置。当 EQ_OVERRIDE = 0b 时,此字段反映 EQ[1:0] 引脚的采样状态。当 EQ_OVERRIDE = 1b 时,软件可以基于写入此字段的值来更改 RX2p/n 引脚的 EQ 设置。当 AEQ_EN = 1 且 AEQ_MODE = x0 时,当检测到短通道时,此字段选择 USB 下行端口 1 (RX2) 的 EQ 设置。编程到该字段中的值可以为短沟道配置提供理想的 Rx JTOL 结果。 |
| 3-0 | EQ1_SEL | RH/W | 0x0 | 如果 AEQ_EN = 0,此字段选择面向 USB-C 接口的 USB3.1 RX1 接收端的 EQ 设置。当 EQ_OVERRIDE = 0b 时,此字段反映 EQ[1:0] 引脚的采样状态。当 EQ_OVERRIDE = 1b 时,软件可以基于写入此字段的值来更改 RX1p/n 引脚的 EQ 设置。当 AEQ_EN = 1 且 AEQ_MODE = x0 时,当检测到短通道时,此字段选择 USB 下行端口 1 (RX1) 的 EQ 设置。编程到该字段中的值可以为短沟道配置提供理想的 Rx JTOL 结果。 |
SS_EQ 如 表 7-13 所示。
返回到汇总表。
该寄存器控制 UFP (SSTX) 的接收端均衡设置。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-4 | RESERVED | R | 0x0 | 保留 |
| 3-0 | SSEQ_SEL | RH/W | 0x0 | 此字段为面向 USB 主机的 USB3.1 SSTX 接收端选择 EQ。当 EQ_OVERRIDE = 0b 时,此字段反映 SSEQ[1:0] 引脚的采样状态。当 EQ_OVERRIDE = 1b 时,软件可以根据写入此字段的值更改 SSTXp/n 引脚的 EQ 设置。 |
USB3_MISC 如 表 7-14 所示。
返回到汇总表。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7 | RXD_START_TERM | R/W | 0x0 | 热复位之后 RX 检测开始时和进入 SS.Inactive 时的终止设置。 0x0 = 保持端接。与 tusb1046 相同 0x1 = 关闭终端。在断开连接的情况下,避免本地和远程 RxD 之间发生竞争而导致合规性失败。如果连接保持下一个状态,则无论如何都是轮询状态。 |
| 6 | LFPS_EQ | R/W | 0x1 | 控制基于 EQ1_SEL、EQ2_SEL 和 SSEQ_SEL 的 EQ 设置是否应用于接收到的 LFPS 信号。 0x0 = 接收到 LFPS 时,EQ 设置为零 0x1 = 接收到 LFPS 时,EQ 由相关寄存器设置。 |
| 5 | U2U3_LFPS_DEBOUNCE | R/W | 0x0 | 控制传入 LFPS 是否去抖。 0x0 = 在 U2/U3 退出前 LFPS 无去抖。 0x1 = 在 U2/U3 退出之前,LFPS 为 200µs 去抖。 |
| 4 | DISABLE_U2U3_RXDET | R/W | 0x0 | 控制是否在 U2/U3 状态下执行 Rx.Detect。 0x0 = 在 U2/U3 中启用 Rx.Detect。 0x1 = 在 U2/U3 中禁用 Rx.Detect。 |
| 3-2 | DFP_RXDET_INTERVAL | R/W | 0x1 | 此字段控制下行端口(TX1P/N 和 TX2P/N)的 Rx.Detect 间隔。 0x0 = 保留 0x1 = 6ms 0x2 = 36ms 0x3 = 84ms |
| 1 | DIS_WARM_RESET_RXD | R/W | 0x0 | 如果器件在热复位期间开始轮询,则在热复位后禁用接收器检测。 0x0 = 是否在热复位后执行接收端检测取决于其他设置。 0x1 = 如果 USB FSM 检测到器件在热复位期间开始轮询,则不执行接收器检测。 |
| 0 | USB_COMPLIANCE_CTRL | R/W | 0x0 | 控制合规模式检测是由 FSM 确定还是禁用 0x0 = 合规模式由 FSM 确定。 0x1 = 禁用合规模式。 |
USB_STATUS 如 表 7-15 所示。
返回到汇总表。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7 | USB_FASTAEQ_STAT | RH | 0x0 | 当 AEQ_EN = 1 且 AEQ_MODE = x0 时,此状态字段指示使用的是短 EQ 设置还是长 EQ 设置。当 AEQ_EN = 0 时,此字段默认为 0h。 0x0 = 使用短通道 EQ。 0x1 = 使用长通道 EQ。 |
| 6 | USB_AEQDONE_STAT | RH | 0x1 | 此字段在 AEQ 运行期间为低电平,在 AEQ 完成后为高电平。当 U0_STAT 和 AEQ_EN = 1 或 FORCE_AEQ_EN = 1 且硬件将 FORCE_AEQ 复位回 0 时,此位有效。 0x0 = AEQ 正在运行 0x1 = AEQ 已完成 |
| 5 | AEQ_HC_OVERFLOW | RH | 0x0 | 13 位 AEQ 命中计数器溢出状态 |
| 4 | RESERVED | R | 0x0 | 保留 |
| 3 | CM_ACTIVE | RH | 0x0 | 合规模式状态。 0x0 = 未处于 USB3 合规模式。 0x1 = 处于 USB3 合规模式。 |
| 2 | U0_STAT | RH | 0x0 | U0 状态。设置器件是否进入 U0 状态。 |
| 1 | U2U3_STAT | RH | 0x0 | U2/U3 状态。设置器件是否进入 U2/U3 状态。 |
| 0 | DISC_STAT | RH | 0x1 | 断开状态。设置器件是否进入断开状态。 |
VOD_CTRL 如 表 7-16 所示。
返回到汇总表。
此寄存器控制 UFP 和 DFP 二者的变送器输出线性范围。当器件配置为有限转接驱动器(设置 SSRX_LIMIT_ENABLE 字段)时,USB_SSRX_VOD 会控制 SSRX 限幅驱动器的 VOD 电平。
| 位 | 字段 | 类型 | 复位 | 说明 |
|---|---|---|---|---|
| 7-6 | LFPS_TX12_VOD | R/W | 0x1 | 发送 LFPS 时 TX1 或 TX2 的 VOD 线性控制。 0x0 = LINR_L3(最高) 0x1 = LINR_L2 0x2 = LINR_L1 0x3 = LINR_L0(最低) |
| 5-4 | DP_VOD | R/W | 0x0 | DP 路径的 VOD 线性控制。 0x0 = LINR_L3(最高) 0x1 = LINR_L2 0x2 = LINR_L1 0x3 = LINR_L0(最低) |
| 3-2 | USB_TX12_VOD | R/W | 0x0 | USB 下行端口(TX1 和 TX2)的 VOD 线性控制。 0x0 = LINR_L3(最高) 0x1 = LINR_L2 0x2 = LINR_L1 0x3 = LINR_L0(最低) |
| 1-0 | USB_SSRX_VOD | R/W | 0x0 | USB 上行端口 (SSRX) 的 VOD 线性控制。当 SSRX_LIMIT_ENABLE = 1 时,该字段控制 SSRX 的限幅 VOD。 0x0 = LINR_L3(最高) 0x1 = LINR_L2 0x2 = LINR_L1 0x3 = LINR_L0(最低) |