侧边栏壁纸
博主头像
thinkTV博主等级

喜爱动漫的二刺螈一枚,摩托车云爱好者(快要有车了)。 懂一点技术的在读生物医学工程研究生( •̀ ω •́ )✧,多多指教。

  • 累计撰写 127 篇文章
  • 累计创建 17 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

lwIP-PHY芯片简介

thinkTV
2023-08-20 / 0 评论 / 0 点赞 / 566 阅读 / 1,181 字 / 正在检测是否收录...

1. PHY芯片简介

PHY芯片为模数混合电路,负责接收电、光这类模拟信号,经过解调和A/D转换后通过MII/RMII接口将信号交给MAC内核处理。

图片-1692541010890

2. LAN8720A与YT8512C简介

  • 它们都是低功耗的10/100M以太网PHY层芯片,支持MII以及RMII接口与以太网MAC层通信。
  • 支持Auto MDIX自动翻转功能,无需更换网线即可将连接更改为直连或交叉连接

主要特性:

  1. 自动翻转:支持Auto MDIX自动翻转功能,例如:对等线与交叉线连接。
  2. 多种接口:支持MII和RMII介质访问接口。
  3. 传输速率:支持10/100Mbit/s的传输速率。
  4. 低功耗:支持低功耗运行。

补充:Auto MDIX(Automatic Medium-Dependent Interface Crossover)是一种以太网技术,用于自动检测和纠正直连电缆的交叉(crossover)或直通(straight-through)连接类型。在传统以太网中,连接两个设备通常需要使用直连电缆(straight-through cable)或交叉电缆(crossover cable),具体取决于设备之间的连接类型。然而,Auto MDIX技术可以在两个设备之间自动检测电缆类型,并根据需要进行翻转。这意味着无需手动更换电缆,设备之间的连接将始终正常工作。

3. PHY地址的设置

SMI站管理接口通过PHY地址访问指定的PHY芯片,简称:PHY芯片的标识。

LAN8720A的PHY地址设置

图片-1692541883406

图片-1692541891157

YT8512C的PHY地址设置

图片-1692542123194

4. RMII模式选择

LAN8720A和YT8512C在RMII介质接口下延伸出两个连接方式。

LAN8720A

  • REF CLK In模式:外部提供50MHz时钟连接到PHY芯片5号引脚以及RIMII REF _CLK
  • REF_ CLK Out模式:外部提供25MHz时钟给PHY芯片, REF _CLK引脚输出50MHz

YT8512C

  • RMII1模式:PHY外接25MHz情况下,外部提供50MHz时钟连接到RMII REF CLK引脚上
  • RMII2模式:PHY外接25MHz情况下,PHY芯片的15号引脚 (TXC)输出50MHz时钟

5. PHY寄存器简介

LAN8720A和YT8512C都具有32个寄存器,每一个寄存器都是16位

  • 根据IEEE802.3标准定义了0~15寄存器(重点BCR和BSR寄存器)
  • 16~31寄存器是由芯片制造商自由定义(制造商定义的)
  • 前16个寄存器用于配置PHY,而后16个寄存器是使用判断网络参数的(双工、网速),用户只负责设置双工和网速参数即可

5.1 特殊功能寄存器

通过确认网速及双工模式来设置BCR寄存器的bit8和bit13
PHY的特殊功能寄存器可以用于执行各种任务,包括:

  1. 配置和管理链路速度和双工模式:PHY支持不同的链路速度和双工模式(如10 Mbps、100 Mbps、1 Gbps等),通过特殊功能寄存器可以设置和管理PHY的工作模式。
  2. 自动协商和流控制:PHY可以自动协商最佳链路速度和双工模式,以及支持流控制功能。特殊功能寄存器用于配置和控制这些功能。
  3. 错误检测和纠正:PHY可以检测和纠正传输过程中的错误,如位错误、帧错误等。特殊功能寄存器用于读取和清除错误计数器,并配置错误检测和纠正功能。
  4. 能量管理和节能模式:PHY通常支持能量管理和节能模式,以减少功耗和延长电池寿命。特殊功能寄存器用于配置和控制这些功能。
  5. 自动MDI/MDIX功能:一些PHY支持Auto MDI/MDIX功能,它可以自动检测和纠正直连电缆和交叉电缆的连接类型。特殊功能寄存器用于启用和配置Auto MDI/MDIX功能。

每一个PHY的特殊功能寄存器都不一样,需要根据相关的手册来确定。

5.2 LNA8720A特殊功能寄存器

配置项 数值
PHY_SR 0x1F
PHY_SPEED_STATUS 0x0004
PHY_DUPLEX_STATUS 0x0010

5.3 怎么计算PHY_SPEED_STATUS和PHY_DUPLEX_STATUS配置项?

图片-1692950207563

红色框框的0代表半双工、1代表全双工,而棕色框框的01代表10M网速,10代表100M网速,就可以计算得出PHY_SPEED_STATUS和PHY_DUPLEX_STATUS配置项

0

评论区