文章目录
- 以太网的 MAC 与 PHY
- 简介
- 硬件拓扑
- CPU集成MAC与PHY
- CPU集成MAC,PHY采用独立芯片
- CPU不集成MAC与PHY,MAC与PHY采用集成芯片
- 在 OSI 分层中的位置
- MAC
- PHY
- MAC 与 PHY 数据交互
- 参考
本文为笔者学习以太网对网上资料归纳整理所做的笔记,文末均附有参考链接,如侵权,请联系删除。
以太网的 MAC 与 PHY
简介
本文主要介绍以太网的MAC(Media Access Control,即媒体访问控制子层协议)和PHY(物理层)。
硬件拓扑
从硬件拓扑来看,以太网接口电路主要由 MAC(Media Access Control)控制器和物理层接口PHY(Physical Layer,PHY)两大部分构成。如下图所示:
DMA控制器通常属于CPU的一部分,用虚线放在这里是为了表示DMA控制器会参与到网口数据传输中。
但是,在实际的设计中,以上三部分并不一定独立分开的。由于,PHY整合了大量模拟硬件,而MAC是典型的全数字器件。考虑到芯片面积及模拟/数字混合架构的原因,通常,将MAC集成进微控制器而将PHY留在片外。更灵活、密度更高的芯片技术已经可以实现MAC和PHY的单芯片整合。可分为下列几种类型:
CPU集成MAC与PHY
CPU集成MAC,PHY采用独立芯片
CPU不集成MAC与PHY,MAC与PHY采用集成芯片
在 OSI 分层中的位置
MAC 及 PHY 工作在 OSI 七层模型的数据链路层和物理层。具体如下:
MAC
MAC(Media Access Control)即媒体访问控制子层协议,
MAC 内部结构如下图
例如 STM32 的 MAC 框图如下
PHY
PHY((Physical Layer,PHY))是IEEE802.3中定义的一个标准模块,STA(station management entity,管理实体,一般为MAC或CPU)通过SMI(Serial Manage Interface)对PHY的行为、状态进行管理和控制,而具体管理和控制动作是通过读写PHY内部的寄存器实现的。一个PHY的基本结构如下图:
PHY是物理接口收发器,它实现OSI模型的物理层。
内部框图如下
PHY 的寄存器定义
寄存器可规划为三个组: Basic、 Extended 和 Vendor-specific。
- Basic 是IEEE802.3 要求的, R0 是基本控制寄存器,其位 15 为 Soft Reset 位,向该位写 1 启动软件复位,还包括速度、自适应、低功耗等等功能设置。 R1 是基本状态寄存器。
- Extended 是扩展寄存器,包括 ID 号、制造商、版本号等等信息。
- Vendorspecific 是供应商自定义寄存器, R31 是特殊控制/状态寄存器,指示速度类型和自适应功能。
MAC 与 PHY 数据交互
- 控制信息:SMI 串行管理接口(Serial Management Interface),通常直接被称为 MDIO 接口(Management Data Input/Output Interface)。
- 数据:MII, RMII, GMII 和 RGMII 等。
参考
- https://mp.weixin.qq.com/s/N3rpEI9kC6qLu0djjhevzA