ZHCUCX0 March   2025 DS320PR810 , DS320PR822

 

  1.   1
  2.   摘要
  3.   商标
  4. 1访问方法
    1. 1.1 通过 SMBus 对寄存器进行编程
    2. 1.2 通过外部 EEPROM 进行器件配置
  5. 2寄存器映射概述
    1. 2.1 共享寄存器
    2. 2.2 通道寄存器
  6. 3均衡控制设置
  7. 4CTLE 指数和平坦增益选择矩阵
  8. 5编程序列示例
    1. 5.1 设置 CTLE 增益电平
    2. 5.2 设置 CTLE 平坦增益电平
    3. 5.3 设置 PD 控制
    4. 5.4 设置 SEL 输入 (DS320PR822)
  9. 6参考资料

设置 CTLE 增益电平

DS320PR810 需要手动 CTLE 调优。可通过修改每个 CTLE 级(CTLE 升压 1 级和 2 级)的值或绕过 EQ1 级来更改 CTLE 增益电平。CTLE 电平可针对每个通道单独设定或者广播至所有通道。表 5-1 显示了一个示例序列,通过对每个通道单独执行写入操作,将组 0 通道上的 CTLE 增益电平设置为 CTLE 指数 2、平坦增益(直流增益)设置为 0dB,以及将组 1 通道上的 CTLE 增益电平设置为 CTLE 指数 6、平坦增益(直流增益)设置为 0dB。使用 表 4-1 中提供的寄存器值将 CTLE 增益电平设置为任何其他可用指数。

表 5-1 用于分别在每个通道上设置 CTLE 电平的序列
步骤 寄存器组 运行 寄存器地址
[十六进制]
寄存器值
[十六进制]
写入掩码
[十六进制]
注释
1 组 0:通道 0 写入 0x01 0x98 0x7F 将通道 0 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 2。
2 组 0:通道 0 写入 0x03 0x05 0x78 将通道 0 上的 CTLE 1 级二阶升压控制设置为指数 2。
3 组 0:通道 1 写入 0x21 0x98 0x7F 将通道 1 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 2。
4 组 0:通道 1 写入 0x23 0x05 0x78 将通道 1 上的 CTLE 1 级二阶升压控制设置为指数 2。
5 组 0:通道 2 写入 0x41 0x98 0x7F 将通道 2 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 2。
6 组 0:通道 2 写入 0x43 0x05 0x78 将通道 2 上的 CTLE 1 级二阶升压控制设置为指数 2。
7 组 0:通道 3 写入 0x61 0x98 0x7F 将通道 3 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 2。
8 组 0:通道 3 写入 0x63 0x05 0x78 将通道 3 上的 CTLE 1 级二阶升压控制设置为指数 2。
9 组 1:通道 4 写入 0x01 0x08 0x7F 将通道 4 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 6。
10 组 1:通道 4 写入 0x03 0x0D 0x78 将通道 4 上的 CTLE 1 级二阶升压控制设置为指数 6。
11 组 1:通道 5 写入 0x21 0x08 0x7F 将通道 5 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 6。
12 组 1:通道 5 写入 0x23 0x0D 0x78 将通道 5 上的 CTLE 1 级二阶升压控制设置为指数 6。
13 组 1:通道 6 写入 0x41 0x08 0x7F 将通道 6 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 6。
14 组 1:通道 6 写入 0x43 0x0D 0x78 将通道 6 上的 CTLE 1 级二阶升压控制设置为指数 6。
15 组 1:通道 7 写入 0x61 0x08 0x7F 将通道 7 上的 CTLE 1 级和 2 级一阶升压控制设置为指数 6。
16 组 1:通道 7 写入 0x63 0x0D 0x78 将通道 7 上的 CTLE 1 级二阶升压控制设置为指数 6。

假设 0x18 和 0x19 分别是通道组 0 和 1 的 SMBus 地址,以下是 表 5-1 中序列的 XML 批处理脚本:

<i2c_write addr="0x18" count="0" radix"16">01 98</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">03 05</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">21 98</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">23 05</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">41 98</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">43 05</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">61 98</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">63 05</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">01 08</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">03 0D</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">21 08</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">23 0D</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">41 08</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">43 0D</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">61 08</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">63 0D</i2c_write>

表 5-2 显示了一个示例序列,通过对每个通道组执行广播写入操作,将组 0 通道上的 CTLE 增益电平设置为 CTLE 指数 2、0dB 平坦增益(直流增益),以及将组 1 通道上的 CTLE 增益电平设置为 CTLE 指数 6、0dB 平坦增益(直流增益)。

表 5-2 用于向所有通道广播 CTLE 电平的序列
步骤 寄存器组 运行 寄存器地址
[十六进制]
寄存器值
[十六进制]
写入掩码
[十六进制]
注释
1 组 0:通道 0-3 写入 0x81 0x98 0x7F 将通道 0-3 上的 EQ 设为指数 2。
2 组 0:通道 0-3 写入 0x83 0x05 0x78 将通道 0-3 上的 EQ 设为指数 2。
3 组 1:通道 4-7 写入 0x81 0x08 0x7F 将通道 4-7 上的 EQ 设为指数 6。
4 组 1:通道 4-7 写入 0x83 0x0D 0x78 将通道 4-7 上的 EQ 设为指数 6。

假设 0x18 和 0x19 分别是通道组 0 和 1 的 SMBus 地址,以下是 表 5-2 中序列的 XML 批处理脚本:

<i2c_write addr="0x18" count="0" radix"16">81 98</i2c_write>
<i2c_write addr="0x18" count="0" radix"16">83 05</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">81 08</i2c_write>
<i2c_write addr="0x19" count="0" radix"16">83 0D</i2c_write>