您的位置:首页 > 其它

关于PHY、MAC、MII

2012-10-31 10:56 323 查看
问:如何实现单片以太网微控制器? 

答:诀窍是将微控制器、以太网媒体接入控制器(MAC)和物理接口收发器(PHY)整合进同一芯片,这样能去掉许多外接元器件。这种方案可使MAC和PHY实现很好的匹配,同时还可减小引脚数、缩小芯片面积。单片以太网微控制器还降低了功耗,特别是在采用掉电模式的情况下。

问:以太网MAC是什么?

答:MAC就是媒体接入控制器。以太网MAC由IEEE-802.3以太网标准定义。它实现了一个数据链路层。最新的MAC同时支持10Mbps和100Mbps两种速率。通常情况下,它实现MII接口。

问:什么是MII?

答:MII即媒体独立接口,它是IEEE-802.3定义的以太网行业标准。它包括一个数据接口,以及一个MAC和PHY之间的管理接口(图1)。数据接口包括分别用于发送器和接收器的两条独立信道。每条信道都有自己的数据、时钟和控制信号。MII数据接口总共需要16个信号。管理接口是个双信号接口:一个是时钟信号,另一个是数据信号。通过管理接口,上层能监视和控制PHY。



问:以太网PHY是什么?

答:PHY是物理接口收发器,它实现物理层。IEEE-802.3标准定义了以太网PHY。它符合IEEE-802.3k中用于10BaseT(第14条)和100BaseTX(第24条和第25条)的规范。

问:造成以太网MAC和PHY单片整合难度高的原因是什么?

答:PHY整合了大量模拟硬件,而MAC是典型的全数字器件。芯片面积及模拟/数字混合架构是为什么先将MAC集成进微控制器而将PHY留在片外的原因。更灵活、密度更高的芯片技术已经可以实现MAC和PHY的单芯片整合。

问: 除RJ-45接口外,还需要其它元件吗?

答:需要其它元件。虽然PHY提供绝大多数模拟支持,但在一个典型实现中,仍需外接6、7只分立元件及一个局域网绝缘模块。绝缘模块一般采用一个1:1的变压器。这些部件的主要功能是为了保护PHY免遭由于电气失误而引起的损坏。

问:10BaseT和100BaseTX PHY实现方式不同的原因何在?

答:两种实现的分组描述本质上是一样的,但两者的信令机制完全不同。其目的是阻止一种硬件实现容易地处理两种速度。10BaseT采用曼彻斯特编码,100BaseTX采用4B/5B编码。

问:什么是曼彻斯特编码?

答:曼彻斯特编码又称曼彻斯特相位编码,它通过相位变化来实现每个位(图2)。通常,用一个时钟周期中部的上升沿表示“1”,下降沿表示“0”。周期末端的相位变化可忽略不计,但有时又可能需要将这种相位变化计算在内,这取决于前一位的值。



问:什么是4B/5B编码?

答:4B/5B编码是一种块编码方式。它将一个4位的块编码成一个5位的块。这就使5位块内永远至少包含2个“1”转换,所以在一个5位块内总能进行时钟同步。该方法需要25%的额外开销。

PHY:物理接口收发器,它实现物理层。IEEE-802.3标准定义了以太网PHY。除了我们平时见到通过RJ-45接口连接的双绞线外,还有比较少见的通过BNC接头连接的同轴电缆,甚至还有光纤作为介质。但是这些物理上的传输介质对于上层提供的都是统一的MII接口。

MAC:媒体接入控制器。以太网MAC由IEEE-802.3以太网标准定义。它实现了一个数据链路层。这个控制器通过MII接口与PHY通信。

所以对于这两层来说,中间的MII作为一个统一的接口起到了隔离所用。也就是说对于一个集成了MAC的CPU来说,可通过更换不同的PHY来实现在不同的物理介质上传输相同的数据。

                                                                                             
MII总线 

MII (Media Independent Interface(介质无关接口,或称为媒体独立接口),它是IEEE-802.3定义的以太网行业标准, 描述以太网收发器与网络控制器之间的接口, 很多市场上的产品遵守这个接口.。介质无关表明在不对MAC硬件重新设计或替换的情况下,任何类型的PHY设备都可以正常工作。在IEEE802.3中规定的MII总线是一种用于将不同类型的PHY与相同网络控制器(MAC)相连接的通用总线。网络控制器可以用同样的硬件接口与任何PHY进行连接。

它包括一个数据接口,以及一个MAC和PHY之间的管理接口

数据接口包括分别用于发送器和接收器的两条独立信道。每条信道都有自己的数据、时钟和控制信号。MII数据接口总共需要16个信号。

管理接口是个双信号接口:一个是时钟信号,另一个是数据信号。通过管理接口,上层能监视和控制PHY。MII (Management interface)只有两条信号线。

管理配置接口控制PHY的特性。该接口有32个寄存器地址,每个地址16位。其中前16个已经在“IEEE 802.3,2000-22.2.4 Management Functions”中规定了用途,其余的则由各器件自己指定。

信号名称
数量
Direction
Description
Belong To
TX_CLK
1
Input
Transmit  Clock
10/100M信号时钟
TXD[0:3]
4
  Output 
Transmit Data
被发送数据
TX_ER
1
  Output 
Transmit Coding Error
发送器错误
TX_EN
1
  Output 
Transmit  Enable
发送器使能信号
RX_CLK
1
Input
Receive Clock
接收时钟信号
RXD[0:3]
4
Input
Receive Data
接收数据
RXER
1
Input
Receive Error
接收数据出错指示
RXDV
1
Input
Receive Data Valid
接收数据有效指示
COL
1
Input
Collision Detected
冲突检测
CRS
1
Input
Carner Sense
载波检测
Total bus Width
16
------------
------------------
------------------------
MDC
1
Input
Management Clock
管理配置接口时钟
MDIO
1
I/O
Management Data l/0 
管理配置接口数据I/O
MII标准接口用于连快Fast Ethernet MAC-block与PHY。在其他速率下工作的与 MII等效的接口有:AUI(10M 以太网)、GMII(Gigabit 以太网)和XAUI(10-Gigabit 以太网)。

                                                                                        
GMII (Gigabit MII)

GMII采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps。同时兼容MII所规定的10/100 Mbps工作方式。GMII接口数据结构符合IEEE以太网标准。
发送器:

 GTXCLK——吉比特TX..信号的时钟信号(125MHz) 
◇ TXCLK——10/100M信号时钟 

◇ TXD[7..0] ——被发送数据 

◇ TXEN——发送器使能信号 

◇ TXER——发送器错误(用于破坏一个数据包)

注:在千兆速率下,向PHY提供GTXCLK信号,TXD、TXEN、TXER信号与此时钟信号同步。

在10/100M速率下,PHY提供TXCLK时钟信号,其它信号与此信号同步。其工作频率为25MHz(100M网络)或2.5MHz(10M网络)。 

接收器:

◇ RXCLK——接收时钟信号(从收到的数据中提取,因此与GTXCLK无关联) 

◇ RXD[7..0] ——接收数据 

◇ RXDV——接收数据有效指示 

◇ RXER——接收数据出错指示 

◇ COL——冲突检测(仅用于半双工状态)

◇ CRS——载波检测 

管理配置

◇ MDC——配置接口时钟 

◇ MDIO——配置接口I/O 

                                                                                        
RMII(Reduced Media Independant Interface)

        RMII是简化的MII接口,是标准的以太网接口之一。RMII的目的是减少芯片间的信号线数量,一般用在多端口的交换机。在数据的收发上它的信号线是MII接口的一半,所以它的总线时钟一般是MII的两倍。RMII不是每个端口都安排收、发两个时钟,而是所有的数据端口公用一个时钟来同步数据的收发,这里就节省了不少信号线的数目。RMII的一个端口要求7个数据线,是MII的一半,所以同样数量的信号线,交换机就能够接入多一倍的端口。和MII一样,RMII支持10兆和100兆的总线接口速度。 

                                                                                          
SMII

SMII是由思科提出的一种媒体接口,它有比RMII更少的信号线数目,S表示串行的意思。因为它只用一根信号线传送发送数据,一根信号线传输接受数据,所以在时钟上为了满足100Mbps的需求,它的时钟频率很高, 达到了125MHz,为什么用125MHz,是因为数据线里面会传送一些控制信息。SMII一个端口仅用4根信号线完成100Mbps信号的传输,比起RMII差不多又少了一倍的信号线。SMII在工业界的支持力度是很高的。同理,所有端口的数据收发都公用同一个外部的125M时钟。

                                                                                             

 对比RMII、MII和GMII

RMII口是用两根线来传输数据的; 

MII口是用4根线来传输数据的; 

GMII是用8根线来传输数据的。

MII/RMII只是一种接口,对于10M线速,MII的速率是2.5MHz,RMII则是5MHz;对于100M线速,MII的速率是25MHz,RMII则是50MHz。  

                                                                                           

以太网帧的格式:前导符+开始位+目的mac地址+源mac地址+类型/长度+数据+padding(optional)+32bitCRC 

如果有vlan,则要在类型/长度后面加上2个字节的vlan tag,其中12bit来表示vlan id,另外4bit表示数据的优先级!

from:http://blog.csdn.net/haomcu/article/details/7264606
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: