了解PHY,MAC芯片

物理层芯片叫做PHY、数据链路层芯片叫做MAC。

1、MCU内置MAC芯片+外部PHY芯片

1.1、PHY

PHY在发送数据的时候,收到MAC过来的数据(对PHY来说,没有帧的概念,对它来说,都是数据而不管什么地址,数据还是CRC),每4bit就增加1bit的检错码,然后把并行数据转化为串行流数据,再按照物理层的编码规则把数据编码,再变为模拟信号把数据送出去。收数据时的流程反之。

发送数据时,PHY芯片将MAC芯片传输过来的数据转换为差分信号输出给RJ45座,差分信号是模拟信号。接收数据时,PHY芯片将RJ45座传输过来的差分信号转换成数字信号输出给MAC芯片。

1.2、MAC

在发送数据的时候,MAC协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,MAC协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC层.

1.2.1、MAC和PHY的接口类型有4种,MII、GMII、RMII、RGMII。

MII(Medium Independent Interface, 媒体独立接口): MII 支持 10Mbps 和 100Mbps 的操作,数据位宽为 4 位
在 100Mbps 传输速率下,时钟频率为 25Mhz
在 10Mbps 传输速率下,时钟频率为 2.5Mhz

RMII(Reduced MII): RMII 是 MII 的简化版, 数据位宽为 2 位
在 100Mbps 传输速率下,时钟频率为 50Mhz
在 10Mbps 传输速率下,时钟频率为 5Mhz

GMII(Gigabit MII): GMII 接口向下兼容 MII 接口, 支持 10Mbps、 100Mbps 和 1000Mbps 的操作,数据位宽为 8 位
在 1000Mbps 传输速率下,时钟频率为 125Mhz
在 100Mbps 传输速率下,时钟频率为 25Mhz
在 10Mbps 传输速率下,时钟频率为 2.5Mhz

RGMII(Reduced GMII): RGMII 是 GMII 的简化版,数据位宽为 4 位
在 1000Mbps 传输速率下,时钟频率为 125Mhz,在时钟的上下沿同时采样数据
在 100Mbps传输速率下,时钟频率为25MHz,为单个时钟沿采样
在 10Mbps传输速率下,时钟频率为2.5MHz,为单个时钟沿采样
在千兆以太网中,常用的接口为 RGMII 和 GMII 接口。 RGMII 接口的优势是同时适用于10M/100M/1000Mbps 通信速率,同时占用的引脚数较少。但 RGMII 接口也有其缺点,就是在 PCB 布线时需要尽可能对时钟、控制和数据线进行等长处理,且时序约束相对也更为严格。

1.2.2、MDIO接口

MDIO接口(也叫作SMI接口),全称是Management Data Input/Output。由2根线组成,MDIO数据线和MDC时钟线。MAC通过MDIO读写PHY芯片的寄存器,从而设置PHY的工作模式,通信速率,获取状态等。

相关推荐

  1. 存储芯片了解

    2024-07-18 22:40:02       28 阅读
  2. SSL<span style='color:red;'>了解</span>

    SSL了解

    2024-07-18 22:40:02      56 阅读
  3. IP <span style='color:red;'>了解</span>

    IP 了解

    2024-07-18 22:40:02      44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-18 22:40:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-18 22:40:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-18 22:40:02       45 阅读
  4. Python语言-面向对象

    2024-07-18 22:40:02       55 阅读

热门阅读

  1. C# Linq用法

    2024-07-18 22:40:02       17 阅读
  2. Windows桌面应用开发框架

    2024-07-18 22:40:02       19 阅读
  3. 生成 HTTPS 证书并配置到 Nginx 的完整步骤

    2024-07-18 22:40:02       20 阅读
  4. tensorflow1基础函数学习

    2024-07-18 22:40:02       19 阅读
  5. cookies,sessionStorage和localStorage都有什么区别

    2024-07-18 22:40:02       16 阅读
  6. 力扣 541反转链表2

    2024-07-18 22:40:02       19 阅读
  7. Vue3+TypeScript项目目录结构及文件作用

    2024-07-18 22:40:02       21 阅读
  8. Scala之OOP讲解

    2024-07-18 22:40:02       18 阅读
  9. 自动驾驶目标检测常见Metrics

    2024-07-18 22:40:02       18 阅读