ZHCUBG3 October   2023 DS320PR410

 

  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编程示例
  9. 6参考资料
  10. 7修订历史记录

编程示例

在下面的示例中,假设 SMBus 从地址 0x18 用于器件 0(通道 0-3),SMBus 从地址 0x1A 用于器件 1(通道 0-3)。使用 TotalPhase Aardvark I2C 控制器的示例代码。

  • 通过寄存器编程进行 PD 控制
    • 向通道寄存器 0x85(通道基址寄存器 0x80 + PD 覆盖寄存器偏移 0x05)处的器件 0 和器件 1 组 0 寄存器进行广播写入,值为 0x80,以便将所有通道断电
      • <i2c_write addr="0x18" count="0" radix"16">85 80</i2c_write>
      • <i2c_write addr="0x1A" count="0" radix"16">85 80</i2c_write>
    • 向通道寄存器 0x85(通道基址寄存器 0x80 + PD 覆盖寄存器偏移 0x05)处的器件 0 和器件 1 组 0 寄存器进行广播写入,值为 0x7F,以便为所有通道供电
      • <i2c_write addr="0x18" count="0" radix"16">85 7F</i2c_write>
      • <i2c_write addr="0x1A" count="0" radix"16">85 7F</i2c_write>
  • 通过寄存器编程进行广播通道 CTLE 指数/平坦增益选择(CTLE 指数 2,FlatGain 0dB)

    要在所有通道上选择平坦增益为 0dB 的 CTLE 指数 2:

    • 向通道寄存器 0x81(通道基址寄存器 0x80 + EQ 控制寄存器偏移 0x01)处的器件 0 和器件 1 组 0 寄存器进行广播写入,值为 0x98。
    • 向通道寄存器 0x83(通道基址寄存器 0x80 + EQ/增益控制寄存器偏移 0x03)处的器件 0 和器件 1 组 0 寄存器进行广播写入,值为 0x05
      • <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="0x1A" count="0" radix"16">81 98</i2c_write>
      • <i2c_write addr="0x1A" count="0" radix"16">83 05</i2c_write>
  • 通过寄存器编程进行单独通道 CTLE 指数/平坦增益选择(CTLE 指数 2,FlatGain 0dB)

    要在单个通道(通道 0)上选择具有 0dB 平坦增益的 CTLE 指数 2:

    • 在通道寄存器 0x01(通道 0 基址寄存器 0x00 + EQ 控制寄存器偏移 0x01)处的器件 0 组 0 和器件 1 组 0 寄存器上写入通道 0 寄存器,值为 0x98。
    • 在通道寄存器 0x03(通道 0 基址寄存器 0x00 + EQ/增益控制寄存器偏移 0x03)处的器件 0 组 0 和器件 1 组 0 寄存器上写入通道 0 寄存器,值为 0x05
      • <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="0x1A" count="0" radix"16">01 98</i2c_write>
      • <i2c_write addr="0x1A" count="0" radix"16">03 05</i2c_write>