以太网驱动详解之 MAC、MII、PHY 详解

        由于芯片缺货原因,公司原先使用的ksz9031 phy芯片价格暴涨,故决定换用LAN8720 PHY芯片。KSZ9031提供的是RGMII接口,支持10/100/1000Mbps,作为千兆网使用时,硬件需要RGMII接口应用,提供125MHZ参考时钟信号,使用4个差分对;作为百兆网,使用MII接口,25MHZ参考时钟信号,只使用差分对A和B。而LAN8720A具有RMII接口的10/100Base-T/TX以太网收发器。以下我将从硬件角度对网络通信的物理层由MAC—>PHY—>变压器—>RJ45等方面进行说明。

MAC和PHY结构

从硬件角度来看以太网是由CPU,MAC,PHY三部分组成的,如下图示意:

        在实际的设计中,以上三部分并不一定是独立分开的,由于PHY包含大量模拟器件,而MAC是典型的数字电路,考虑到芯片面积及模拟/数字混合架构的原因,将MAC集成进CPU而将PHY留在片外,这种结构是最常见的。

        下图是网络接口内部结构图,虚框表示CPU,MAC集成在CPU中,PHY芯片通过MII接口与CPU上的MAC连接:

网络传输原理

        以太网采用带冲突检测的载波帧听多路访问(CSMA/CD)机制。当以太网中要传输数据时,它将按如下步骤进行:
1、帧听信道上收否有信号在传输。如果有的话,表明信道处于忙状态,就继续帧听,直到信道空闲为止。
2、若没有帧听到任何信号,就传输数据
3、传输的时候继续帧听,如发现冲突则执行退避算法,随机等待一段时间后,重新执行步骤1(当冲突发生时,涉及冲突的计算机会发送会返回到帧听信道状态)。每台计算机一次只允许发送一个包,一个拥塞序列,以警告所有的节点。
4、若未发现冲突则发送成功,计算机所有计算机在试图再一次发送数据之前,必须在最近一次发送后等待一段时间。

一、MAC

        MAC(Media Access Control) 即媒体访问控制层协议。MAC由硬件控制器及MAC通信协议构成。该协议位于OSI七层协议中数据链路层的下半部分,主要负责控制与连接物理层的物理介质。MAC硬件框图如下图所示:

        发送数据的时候,MAC协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,MAC协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC(逻辑链路控制)层。该层协议是以太网MAC由IEEE-802. 3以太网标准定义。一般以太网MAC芯片的一端连接PCI总线,另一端连接PHY芯片上通过MII接口连接。

二、MII

        MII(Media Independent

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值