嵌入式学习小组
直播中

康选谦

7年用户 228经验值
私信 关注

以太网MAC芯片与PHY芯片的关系是什么

如何实现单片以太网微控制器?
以太网MAC是什么?
什么是MII?
以太网PHY是什么?
网卡上除RJ-45接口外,还需要其它元件吗?
造成以太网MAC和PHY单片整合难度高的原因是什么?
10BaseT和100BaseTX PHY实现方式不同的原因何在?
什么是曼彻斯特编码?
什么是4B/5B编码?

回帖(13)

王一凡

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

陈勇

2020-12-28 14:28:52
受到警告
提示: 作者被禁止或删除 内容自动屏蔽
举报

李淑华

2020-12-28 14:29:03
  什么是MII?
  答:MII即媒体独立接口,它是IEEE-802.3定义的以太网行业标准。“媒体独立”表明在不对MAC硬件重新设计或替换的情况下,任何类型的PHY设备都可以正常工作。它包括一个数据接口,以及一个MAC和PHY之间的管理接口。
  数据接口包括分别用于发送器和接收器的两条独立信道。每条信道都有自己的数据,时钟和控制信号.MII数据接口总共需要16个信号,包括TX_ER,TXD《3:0》,TX_EN,TX_CLK, COL,RXD《3:0》,RX_EX,RX_CLK,CRS,RX_DV等.MII以4位半字节方式传送数据双向传输,时钟速率25MHz.其工作速率可达100Mb/s;
  MII管理接口是个双信号接口,一个是时钟信号,另一个是数据信号。通过管理接口,上层能监视和控制PHY.其管理是使用SMI(Serial Management Interface)总线通过读写PHY的寄存器来完成的.PHY里面的部分寄存器是IEEE定义的,这样PHY把自己的目前的状态反映到寄存器里面,MAC通过SMI总线不断的读取PHY的状态寄存器以得知目前PHY的状态,例如连接速度,双工的能力等。当然也可以通过SMI设置PHY的寄存器达到控制的目的,例如流控的打开关闭,自协商模式还是强制模式等。不论是物理连接的MII总线和SMI总线还是PHY的状态寄存器和控制寄存器都是有IEEE的规范的,因此不同公司的MAC和PHY一样可以协调工作。当然为了配合不同公司的PHY的自己特有的一些功能,驱动需要做相应的修改。
  MII支持10Mbps和100Mbps的操作,一个接口由14根线组成,它的支持还是比较灵活的,但是有一个缺点是因为它一个端口用的信号线太多,如果一个8端口的交换机要用到112根线,16端口就要用到224根线,到32端口的话就要用到448根线,一般按照这个接口做交换机,是不太现实的,所以现代的交换机的制作都会用到其它的一些从MII简化出来的标准,比如RMII,SMII,GMII等。
  RMII是简化的MII接口,在数据的收发上它比MII接口少了一倍的信号线,所以它一般要求是50MHz的总线时钟.RMII一般用在多端口的交换机,它不是每个端口安排收,发两个时钟,而是所有的数据端口公用一个时钟用于所有端口的收发,这里就节省了不少的端口数目.RMII的一个端口要求7个数据线,比MII少了一倍,所以交换机能够接入多一倍数据的端口。和MII一样,RMII支持10Mbps和100Mbps的总线接口速度。
  SMII是由思科提出的一种媒体接口,它有比RMII更少的信号线数目,S表示串行的意思。因为它只用一根信号线传送发送数据,一根信号线传输接受数据,所以为了满足100Mbps的总线接口速度的需求,它的时钟频率就达到了125MHz,为什么用125MHz,是因为数据线里面会传送一些控制信息.SMII一个端口仅用4根信号线完成100Mbps的传输,比起RMII差不多又少了一倍的信号线.SMII在工业界的支持力度是很高的。同理,所有端口的数据收发都公用同一个外部的125MHz时钟。
  GMII是千兆网的MII接口,这个也有相应的RGMII接口,表示简化了的GMII接口.
举报

严岩

2020-12-28 14:29:22
  MII总线
  在IEEE802.3中规定的MII总线是一种用于将不同类型的PHY与相同网络控制器(MAC)相连接的通用总线。网络控制器可以用同样的硬件接口与任何PHY 。
  GMII(Gigabit MII)
  GMII采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps.同时兼容MII所规定的10/100 Mbps工作方式。
  GMII接口数据结构符合IEEE以太网标准。该接口定义见IEEE 802.3-2000.
  发送器:
  GTXCLK——吉比特TX.。信号的时钟信号(125MHz)
  TXCLK——10/100Mbps信号时钟
  TXD[7..0]——被发送数据
  TXEN——发送器使能信号
  TXER——发送器错误(用于破坏一个数据包)
  注:在千兆速率下,向PHY提供GTXCLK信号,TXD,TXEN,TXER信号与此时钟信号同步。否则,在10/100Mbps速率下,PHY提供TXCLK时钟信号,其它信号与此信号同步。其工作频率为25MHz(100M网络)或2.5MHz(10M网络)。
  接收器:
  RXCLK——接收时钟信号(从收到的数据中提取,因此与GTXCLK无关联)
  RXD[7..0]——接收数据
  RXDV——接收数据有效指示
  RXER——接收数据出错指示
  COL——冲突检测(仅用于半双工状态)
  管理配置
  MDC——配置接口时钟
  MDIO——配置接口I/O
  管理配置接口控制PHY的特性。该接口有32个寄存器地址,每个地址16位。其中前16个已经在“IEEE 802.3,2000-22.2.4 Management Functions”中规定了用途,其余的则由各器件自己指定。
  RMII(Reduced Media Independant Interface)
  简化媒体独立接口
  是标准的以太网接口之一,比MII有更少的I/O传输。
  RMII口是用两根线来传输数据的,MII口是用4根线来传输数据的,GMII是用8根线来传输数据的.MII/RMII只是一种接口,对于10Mbps线速,MII的时钟速率是2.5MHz就可以了,RMII则需要5MHz;对于100Mbps线速,MII需要的时钟速率是25MHz,RMII则是50MHz.
  MII/RMII用于传输以太网包,在MII/RMII接口是4/2bit的,在以太网的PHY里需要做串并转换,编解码等才能在双绞线和光纤上进行传 输,其帧格式遵循IEEE 802.3(10M)/IEEE 802.3u(100M)/IEEE 802.1q(VLAN)。以太网帧的格式为:前导符+开始位+目的mac地址+源mac地址+类型/长度+数据+padding(optional)+32bitCRC
  如果有vlan,则要在类型/长度后面加上2个字节的vlan tag,其中12bit来表示vlan id,另外4bit表示数据的优先级!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分