以太网基础理论—MAC+PHY

这篇具有很好参考价值的文章主要介绍了以太网基础理论—MAC+PHY。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

MAC (Medium Access Control),简称媒体访问控制。MAC层在OSI模型中是属于数据链路层,其主要任务是解决数据包发给谁。数据链路层包含MAC(介质访问控制)子层和LLC(逻辑链路控制)子层。

 文章来源地址https://www.toymoban.com/news/detail-623051.html

PHY(physical),简称物理层,是一个对OSI模型物理层的简称。PHY包括两个接口三个子层:

两个接口:
1、MII接口:媒体独立接口。PHY与MAC之间的通信方式,其中包括数据接口、管理接口。在MII的基础上,又发展了RMII(Reduced Media Independant Interface,简化了MII,比MII用的信号线更少)、GMII(Gigabit Media Independent Interface,即先兆的MII接口)、RGMII(Reduced Gigabit Media Independent Interface,及简化先兆的MII接口);
2、MDI接口:媒体相关接口;

三个子层:

1、PCS子层:物理编码子层,负责编码;
2、PMA子层:物理介质连接子层,进一步将PCS编码向各种媒介进行传送。完成串并、并串转化;
3、PMD子层:物理介质相关子层,完成物理连接;

mac phy,macos,网络,服务器

MAC的功能

1)封装网络层的数据,将数据封装为帧,实现帧同步对目标MAC地址和源MAC地址进行处理,对PHY传输错误时进行校准。MAC帧的数据部分只有一个字段,其长度;
2)控制PHY芯片;

PHY的功能

1)通过MII接受MAC的数据,并对数据进行进一步编码;
2)数字信号转化为模拟信号;

MAC和PHY的结构简图

mac phy,macos,网络,服务器

一般的链路层和物理层实现方式有以下几种:
1)CPU集成MAC和PHY
2)CPU集成MAC,PHY采用外部芯片实现
3)CPU不集成MAC和PHY,MAC和PHY都通过外部芯片实现
一般采用的是第二种方法。 

PHY芯片

PHY芯片的主要功能就是将数据再次编码,然后数字信号转化为电信号。PHY一般有32个寄存器,其中的前16个寄存器是根据802.3协议定义的,后面的16个寄存器是芯片制造商定义的功能寄存器。下图是RTL8211FD芯片的系统框图:mac phy,macos,网络,服务器

 **驱动PHY芯片的驱动其实就是调用MAC控制器,通过SMI接口控制PHY芯片。在做协议适配的时候,主要就是通过MAC控制器与PHY芯片通信,来完成数据的控制。**详细的适配过程,可以参考和学习LWIP适配的详细讲解。

具体举例说明

下图是采用方案二的网口结构图.虚框表示CPU,MAC集成在CPU中.PHY芯片通过MII接口与CPU上的Mac连接.mac phy,macos,网络,服务器

 

在软件上对网口的操作通常分为下面几步:

  1. 为数据收发分配内存;
  2. 初始化MAC寄存器;
  3. 初始化PHY寄存器(通过MIIM);
  4. 启动收发;

 

1.MII

MII接口是MAC与PHY连接的标准接口.因为各厂家采用了同样的接口,用户可以根据所需的性能、价格,采用不同型号,甚至不同公司的phy芯片.

需要发送的数据通过MII接口中的收发两组总线实现.而对PHY芯片寄存器的配置信息,则通过MII总的一组串口总线实现,即MIIM(MII Management).

下表列出了MII总线中主要的一些引脚

PIN Name

Direction

Description

TXD[0:3]

Mac to Phy

Transmit Data

TXEN

Mac to Phy

Transmit Enable

TXCLK

Mac to Phy

Transmit Clock

RXD[0:3]

Phy to Mac

Receive Data

RXEN

Phy to Mac

Receive Enable

RXCLK

Phy to Mac

Receive Clock

MDC

Mac to Phy

Management Data Clock

MDIO

Bidirection

Management Data I/O

 MIIM只有两个线, 时钟信号MDC与数据线MDIO.读写命令均由Mac发起, PHY不能通过MIIM主动向Mac发送信息.由于MIIM只能有Mac发起, 我们可以操作的也就只有MAC上的寄存器.

2. DMA

收发数据总是间费时费力的事,尤其对于网络设备来说更是如此.CPU做这些事情显然不合适.既然是数据搬移, 最简单的办法当然是让DMA来做.毕竟专业的才是最好的.

这样CPU要做的事情就简单了.只需要告诉DMA起始地址与长度, 剩下的事情就会自动完成.

通常在MAC中会有一组寄存器专门用户记录数据地址, tbase与rbase, cpu按MAC要的格式把数据放好后, 启动MAC的数据发送就可以了.启动过程常会用到寄存器tstate.

3. MAC

mac phy,macos,网络,服务器CPU上有两组寄存器用与MAC.一组用户数据的收发,对应上面的DMA;一组用户MIIM,用户对PHY进行配置.两组寄存器由于都在CPU上,配置方式与其他CPU上寄存器一样,直接读写即可.数据的转发通过DMA完成.  

4. PHY

mac phy,macos,网络,服务器

 

该芯片是一个10M/100M Ethernet网口芯片

PHY芯片有一组寄存器用户保存配置,并更新状态.CPU不能直接访问这组寄存器,只能通过MAC上的MIIM寄存器组实现间接访问.同时PHY芯片负责完成MII总线的数据与Media Interface上数据的转发.该转发根据寄存器配置自动完成,不需要外接干预.

 

 

到了这里,关于以太网基础理论—MAC+PHY的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • wireshark以太网 MAC 帧分析

    注 1 : 正文区的目录结构。一级标题用阿拉伯数字大写,二级以下 ( 含 ) 用点分式阿拉伯数字。 注 2 :实验介绍及回答部分,均可图文并用;如用图,建议居中显示,并附上图标题 ( 编好图号 ) 一、 实验 目的 1.理解以太网 MAC 地址 2.学习并分析以太网 MAC 帧格式的结构、含

    2024年02月04日
    浏览(53)
  • 【MAC+IP】以太网帧格式

    图片出自:https://info.support.huawei.com/info-finder/encyclopedia/zh/MTU.html

    2024年02月05日
    浏览(47)
  • 以太网MAC与PHY(二)

    目录 一、概述 二、MAC控制器 三、PHY 四、SMI协议         以太网硬件主要包括OSI的最下面两层,物理层和数据链路层 物理层:定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层提供标准接口。物理层的芯片为PHY 数据

    2024年02月09日
    浏览(52)
  • 以太网(一)MAC、MII、PHY 介绍

    以太网(二)PHY、网卡、SWITCH介绍 [link] 以太网是由CPU,MAC,PHY三部分组成的,如下图示意: 但是,在实际的设计中,CPU、MAC和PHY三部分并不一定是独立分开的,存在以下三种方式: MAC 与 PHY集成在CPU中,目前来说并不多见。 MAC集成在CPU中,而PHY 采用独立芯片,这种比较常

    2024年01月18日
    浏览(55)
  • WOL唤醒配置(以太网、PHY、MAC)

    目录 wol  以太网 MAC PHY RMII 通信配置 总结 Wake-on-LAN简称WOL,WOL(网络唤醒) 是一种标准网络协议,它的功效在于让已经进入休眠状态或关机状态的计算机,透过局域网(多半为以太网)的另一端对其发令,使其从休眠状态唤醒、恢复成运作状态,或从关机状态转成引导状态

    2024年02月03日
    浏览(69)
  • 华为数通 以太网交换机——常见MAC操作

    目录 Ⅰ  查看所有MAC地址 Ⅱ  查看某个接口学习到的MAC地址 Ⅲ  查看某个VLAN学习到的MAC地址 Ⅳ  查看系统的MAC地址 Ⅴ  查看接口的MAC地址 Ⅵ  查看VLANIF接口的MAC地址 Ⅶ  根据IP获取对应设备的MAC地址 Ⅷ  配置静态MAC地址 Ⅸ  配置黑洞MAC地址 Ⅹ  查看和配置MAC地址的老化

    2024年04月16日
    浏览(51)
  • 4.2.2 以太网技术(二) MAC地址和MAC帧的格式

    4.2.2 以太网技术(二) MAC地址和MAC帧的格式 前面我们提出了两个问题中第一个是在总线式的广播信道中我们如何实现计算机之间一对一的通信?为了在总线上实现一对一的通信我们可以使每一台计算机都拥有一个和其他的计算机不同的地址,也就是说每一台计算机的地址是

    2024年02月05日
    浏览(55)
  • FPGA平台以太网学习:MAC与PHY间通信

    1、PHY(物理层):   MII/GMI/RMII/RGMII/SGMIII(介质独立接口子层),PLS/PCS(物理编码子层),PMA(物理介质连接子层),PMD(物理介质相关子层),AN(自动协商),MDI(媒介相关接口)。 2、PLS/PCS(物理编码子层):   (PLS)对 MAC 给的信息进行传递,只在IMb/s、10Mb/s 的应

    2024年02月04日
    浏览(55)
  • 以太网交换安全(二)----MAC地址表安全&MAC地址漂移防止与检测

    目录 一、MAC地址表安全 MAC地址表项类型包括: MAC地址表安全功能:​ 实验部分: 黑洞MAC地址表: 更改动态MAC地址老化时间:​ 交换机MAC学习功能切换: 静态MAC地址: 限制接口的MAC地址学习数量: 二、MAC地址漂移 什么是MAC地址漂移? 解决方法:(实验部分:) 1、优先级部

    2024年02月04日
    浏览(44)
  • 万兆以太网MAC设计(5)MAC_TX模块设计以及上板带宽测试

    MAC_RX的设计暂时告一段落,本节将开始进行MAC_TX的设计。 接收上层用户的AXIS数据,将其转换为XGMII进接口的数据发送给IP核。 可接受AXIS数据流,可支持数据包之间的间隔最小为一个时钟周期 目的MAC以及源MAC等参数可动态配置 流控,万兆以太网帧间隔为9.6ns,用户时钟频率为

    2024年04月17日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包