以太网媒体独立接口管理控制导致 "link down"

Ethernet Media-Independent Interface Management Control results in "link down"

我正在为 Digilent Nexys4 开发板 (Artix7 FPGA) 开发以太网驱动程序。我已经编写了一个 VHDL 组件来以 MDIO 协议与 LAN8720A PHY 进行通信。它运行良好,当我发送一个要求写入寄存器的帧时,我可以读取我写入的值。但是当我要求读取基本状态寄存器时,它 returns 一个 link 关闭状态。

这意味着以太网 link 已关闭,我无法发送以太网帧。我完全不知道为什么我的状态是 link。即使我启用了自动协商,当我尝试发送帧时自动协商结束后,我的状态仍然是 link。

有没有人知道为什么会发生这种情况以及我该如何解决这个问题?

谢谢。

编辑:似乎是因为 LAN8720A 的 DATA_VALID 信号。有谁知道如何将信号设置为“1”?

EDIT2:为了更精确,DATA_VALID 是 LAN8720A 的内部信号。用于上拉或下拉状态寄存器的link状态位

我找到了解决问题的方法:我不遵守帧间时间。现在我尊重帧间时间,link 状态不会下降,它会保持上升状态。虽然还是没有发帧,但已经是向前迈进了一大步