英特尔® Arria® 10收发器PHY用户指南

ID 683617
日期 3/28/2022
Public
文档目录

2.6.5.4.2. 配置寄存器

您可以通过Avalon存储器映射接口访问16 -/ 32-bit配置寄存器。16-bit配置寄存器仅适用于2.5G、1G/2.5G和1G/2.5G/10G (MGBASE-T)操作模式,而32-bit配置寄存器仅适用于10M/100M/1G/2.5G/5G/10G (USXGMII)操作模式。

当访问这些寄存器时要注意以下两点:

  • 不要写入保留或未定义的寄存器。
  • 当写入寄存器时,执行read-modify-write以确保保留或未定义的寄存器比特不会被覆盖。
表 158.  寄存器访问的类型
访问 定义
RO 只读
RW 读和写
RWC 读,写和清除。用户应用程序将1写入到寄存器比特以调用一个已定义的指令。在执行此指令后,IP core将清除此比特。
表 159.  PHY寄存器定义
地址 名称 说明 访问 HW复位值

0x00

control
  • Bit [15]: RESET。此比特设为1,触发软复位。

    复位完成后PHY清除此比特。复位期间存储器值保持不变。

RWC

0
  • Bit[14]: LOOPBACK。此比特设为1,使能串行接口上的环回。
RW 0
  • Bit [12]: AUTO_NEGOTIATION_ENABLE。将此比特设为1以使能自动协商。

    仅在1GbE中支持自动协商。因此,当切换到一个非1GbE的速度时需要将此比特设为0。

RW 0
  • Bit [9]: RESTART_AUTO_NEGOTIATION。将此比特设为1以重启自动协商。

    自动协商一重启,PHY就清除此比特。

RWC 0
  • 剩余的比特被保留。

0x01

status
  • Bit [5]: AUTO_NEGOTIATION_COMPLETE。值"1"表明自动协商完成。

RO

0
  • Bit [3]: AUTO_NEGOTIATION_ABILITY。值"1"表明PCS功能支持自动协商。
RO 1
  • Bit [2]: LINK_STATUS。值"0"表明链路丢失。值"1"表明链路重建。
RO 0
  • 剩余的比特被保留。

0x02:0x03

phy_identifier

PHY_IDENTIFIER参数中设置的值。

RO

PHY_IDENTIFIER参数的值

0x04

dev_ability 使用此寄存器来显示自动协商期间的器件性能。
  • Bits [13:12]: RF。指定远程故障。
    • 00: 无错误。
    • 01: 链路失败。
    • 10: 离线。
    • 11: 自动协商错误。
RW 00
  • Bits [8:7]: PS。指定PAUSE支持。
    • 00: 无PAUSE。
    • 01: 对称PAUSE.
    • 10: 对于链路搭档的非对称PAUSE。
    • 11: 对于链路器件的非对称和对称PAUSE。
RW 11
  • Bit [5]: FD。确保此比特始终设为1。
RW 1
  • 剩余的比特被保留。
0x05 partner_ability 自动协商期间的链路搭档的器件性能。
  • Bit [14]: ACK。值"1"表明链路搭档已经从器件接收到三个连续的匹配能力值(matching ability value)。
RO 0
  • Bits [13:12]: RF。远程故障。
    • 00: 无错误。
    • 01: 链路失败。
    • 10: 离线。
    • 11: 自动协商错误。
RO 0
  • Bits [8:7]: PS。PAUSE支持。
    • 00: 无PAUSE。
    • 01: 对称PAUSE.
    • 10: 对于链路搭档的非对称PAUSE。
    • 11: 对于链路器件的非对称和对称PAUSE。
RO 0
  • Bit [6]: HD。值"1"表明支持半双工。
RO 0
  • Bit [5]: FD。值"1"表明支持全双工。
RO 0
  • 剩余的比特被保留。
0x06 an_expansion PCS性能和自动协商状态。
Bit [1]: PAGE_RECEIVE。值"1"表明已经更新了partner_ability寄存器。一旦读取此比特,它将自动清除。 RO 0
Bit [0]: LINK_PARTNER_AUTO_NEGOTIATION_ABLE。值"1"表明链路搭档支持自动协商。 RO 0
0x07 device_next_page PHY不支持后续页(next page)功能。这些寄存器始终设为0。 RO 0
0x08 partner_next_page RO 0

0x09:0x0F

保留

0x10

scratch

提供一个测试读写操作的存储器位置。

RW

0

0x11

rev

当前版本的PHY IP core。

RO

当前版本的PHY
0x12:0x13 link_timer 21-bit自动协商链路计时器。
  • Offset 0x12: link_timer[15:0]。Bits [8:0]始终设为0。
  • Offset 0x13: link_timer[20:16]占用较低的5个比特。剩下的11个比特保留,并且必须始终设为0。
RW 0

0x14:0x1F

保留

0x400 usxgmii_control 控制寄存器
Bit [0]: USXGMII_ENA:
  • 0: 10GBASE-R模式
  • 1: USXGMII模式
RW 0x0
Bit [1]: 当USXGMII_ENA设为1时,使用USXGMII_AN_ENA:
  • 0: 禁止USXGMII Auto-Negotiation,并通过USXGMII_SPEED寄存器手动配置操作速度。
  • 1: 使能USXGMII Auto-Negotiation,并通过在USXGMII Auto-Negotiation期间显现的链路训练能力来自动配置操作速度。
RW 0x1
Bit [4:2]: USXGMII_SPEED是USXGMII模式下的PHY的操作速度,USE_USXGMII_AN被设为0。
  • 3’b000: 10M
  • 3’b001: 100M
  • 3’b010: 1G
  • 3’b011: 10G
  • 3’b100: 2.5G
  • 3’b101: 5G
  • 3’b110: 保留
  • 3’b111: 保留
RW 0x0
Bit [8:5]: 保留
Bit [9]: RESTART_AUTO_NEGOTIATION

写入1以重开始Auto-Negotiation序列。当重开始Auto-Negotiation时此比特被硬件清零。

RWC (硬件自清零) 0x0
Bit [15:10]: 保留
Bit [30:16]: 保留
0x401 usxgmii_status 状态寄存器
Bit [1:0]: 保留
Bit [2]: LINK_STATUS表明全部速度下的USXGMII的链路状态
  • 1: 链路被建立
  • 0: 链路同步丢失,锁存一个0
RO 0x0
Bit [3]: 保留
Bit [4]: 保留
Bit [5]: AUTO_NEGOTIATION_COMPLETE

值1表明Auto-Negotiation完成。

RO 0x0
Bit [15:6]: 保留
Bit [31:16]: 保留
0x402:0x404 保留
0x405 usxgmii_partner_ability Auto-Negotiation期间对链路搭档显现的器件能力
Bit [0]: 保留
Bit [6:1]: 保留
Bit [7]: EEE_CLOCK_STOP_CAPABILITY
表明是否支持节能以太网(EEE)时钟停止。
  • 0: 不支持
  • 1: 支持
RO 0x0
Bit [8]: EEE_CAPABILITY
表明是否支持EEE。
  • 0: 不支持
  • 1: 支持
RO 0x0
Bit [11:9]: SPEED
  • 3'b000: 10M
  • 3'b001: 100M
  • 3'b010: 1G
  • 3'b011: 10G
  • 3'b100: 2.5G
  • 3'b101: 5G
  • 3'b110: 保留
  • 3'b111: 保留
RO 0x0
Bit [12]: DUPLEX
表明双工模式。
  • 0: 半双工
  • 1: 全双工
RO 0x0
Bit [13]: 保留
Bit [14]: ACKNOWLEDGE

值1表明器件已经从其链路搭档接收到三个连续的匹配能力值。

RO 0x0
Bit [15]: LINK
表明链路状态。
  • 0: 链路关闭(link down)
  • 1: 链路启动(link up)
RO 0x0
Bit [31:16]: 保留
0x406:0x411 保留
0x412 usxgmii_link_timer

Auto-Negotiation链路计时器。 将bit [19:14]中的链路计时器值以近似0.05 ms步长从0 ms设置为2 ms。您必须对链路计时器编程以确保它与外部NBASE-T PHY IP Core的链路计时器值相匹配。

复位值将链路计时器设置成近似1.6 ms。

Bits [13:0]被保留,并总是设为0。

[19:14]: RW

[13:0]: RO

[19:14]: 0x1F

[13:0]: 0x0

0x413:0x41F 保留
0x461 phy_serial_loopback 将PMA中的收发器串行环回从TX配置为RX。
Bit [0]
  • 0: 禁止PHY串行环回
  • 1: 使能PHY串行环回
RW 0x0
Bit [15:1]: 保留
Bit [31:16]: 保留