0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

标签 > PHY

PHY

+关注 0人关注

PHY指物理层,OSI的最底层。 一般指与外部信号接口的芯片。 以太网PHY芯片 。小小的不起眼但又无处不在的网卡。

文章: 218
浏览: 51732
帖子: 258

PHY简介

  PHY指物理层,OSI的最底层。 一般指与外部信号接口的芯片。 以太网PHY芯片 。小小的不起眼但又无处不在的网卡。如果在5年前,或许网卡与您无关,但在如今这网络的时代,无论是上网冲浪还是联网玩游戏,都离不开网卡,更何况,就算您不食人间烟火,多数主板上也会为您集成一块板载网卡。所以,对于想迈入网络之门的读者而言,先认识网卡,会让您在进行各种网络应用时更得心应手。

  网卡工作在osi的第一层和第二层,物理层(phy)和数据链路层(llc)。

  物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。物理层的芯片称之为PHY。

  数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。以太网卡中数据链路层的芯片称之为MAC控制器。

PHY百科

  PHY指物理层,OSI的最底层。 一般指与外部信号接口的芯片。 以太网PHY芯片 。小小的不起眼但又无处不在的网卡。如果在5年前,或许网卡与您无关,但在如今这网络的时代,无论是上网冲浪还是联网玩游戏,都离不开网卡,更何况,就算您不食人间烟火,多数主板上也会为您集成一块板载网卡。所以,对于想迈入网络之门的读者而言,先认识网卡,会让您在进行各种网络应用时更得心应手。

  网卡工作在osi的第一层和第二层,物理层(phy)和数据链路层(llc)。

  物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。物理层的芯片称之为PHY。

  数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。以太网卡中数据链路层的芯片称之为MAC控制器。

  应用

  很多网卡的这两个部分是做到一起的。

  他们之间的关系是pci总线接mac总线,mac接phy,phy接网线

  网口扫盲三:以太网芯片MAC和PHY的关系

  问:如何实现单片以太网微控制器?

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

  问:以太网MAC是什么?

  答:MAC即Media Access Control,即媒体访问控制子层协议。该协议位于OSI七层协议中数据链路层的下半部分,主要负责控制与连接物理层的物理介质。在发送数据的时候,MAC协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,MAC协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC层。该层协议是以太网MAC由IEEE-802.3以太网标准定义。最新的MAC同时支持10Mbps和100Mbps两种速率。

  以太网数据链路层其实包含MAC(介质访问控制)子层和LLC(逻辑链路控制)子层。一块以太网卡MAC芯片的作用不但要实现MAC子层和LLC子层的功能,还要提供符合规范的PCI界面以实现和主机的数据交换。

  MAC从PCI总线收到IP数据包(或者其他网络层协议的数据包)后,将之拆分并重新打包成最大1518Byte,最小64Byte的帧。这个帧里面包括了目标MAC地址、自己的源MAC地址和数据包里面的协议类型(比如IP数据包的类型用80表示)。最后还有一个DWORD(4Byte)的CRC码。

  可是目标的MAC地址是哪里来的呢?这牵扯到一个ARP协议(介乎于网络层和数据链路层的一个协议)。第一次传送某个目的IP地址的数据的时候,先会发出一个ARP包,其MAC的目标地址是广播地址,里面说到:”谁是xxx.xxx.xxx.xxx这个IP地址的主人?”因为是广播包,所有这个局域网的主机都收到了这个ARP请求。收到请求的主机将这个IP地址和自己的相比较,如果不相同就不予理会,如果相同就发出ARP响应包。这个IP地址的主机收到这个ARP请求包后回复的ARP响应里说到:”我是这个IP地址的主人”。这个包里面就包括了他的MAC地址。以后的给这个IP地址的帧的目标MAC地址就被确定了。(其它的协议如IPX/SPX也有相应的协议完成这些操作。)

  IP地址和MAC地址之间的关联关系保存在主机系统里面,叫做ARP表,由驱动程序和操作系统完成。在Microsoft的系统里面可以用arp-a的命令查看ARP表。收到数据帧的时候也是一样,做完CRC以后,如果没有CRC效验错误,就把帧头去掉,把数据包拿出来通过标准的借口传递给驱动和上层的协议客栈,最终正确的达到我们的应用程序。

  还有一些控制帧,例如流控帧也需要MAC直接识别并执行相应的行为。

  以太网MAC芯片的一端接计算机PCI总线,另外一端就接到PHY芯片上,它们之间是通过MII接口链接的。

  问:什么是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接口。

  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表示数据的优先级!

  问:以太网PHY是什么?

  答:PHY是物理接口收发器,它实现物理层.IEEE-802.3标准定义了以太网PHY.包括MII/GMII(介质独立接口)子层,PCS(物理编码子层),PMA(物理介质附加)子层,PMD(物理介质相关)子层,MDI子层。它符合IEEE-802.3k中用于10BaseT(第14条)和100BaseTX(第24条和第25条)的规范。

  PHY在发送数据的时候,收到MAC过来的数据(对PHY来说,没有帧的概念,对它来说,都是数据而不管什么地址,数据还是CRC.对于100BaseTX因为使用4B/5B编码,每4bit就增加1bit的检错码),然后把并行数据转化为串行流数据,再按照物理层的编码规则把数据编码,再变为模拟信号把数据送出去。收数据时的流程反之.PHY还有个重要的功能就是实现CSMA/CD的部分功能。它可以检测到网络上是否有数据在传送,如果有数据在传送中就等待,一旦检测到网络空闲,再等待一个随机时间后将送数据出去。如果两个碰巧同时送出了数据,那样必将造成冲突,这时候,冲突检测机构可以检测到冲突,然后各等待一个随机的时间重新发送数据。这个随机时间很有讲究的,并不是一个常数,在不同的时刻计算出来的随机时间都是不同的,而且有多重算法来应付出现概率很低的同两台主机之间的第二次冲突。

  许多网友在接入Internt宽带时,喜欢使用”抢线”强的网卡,就是因为不同的PHY碰撞后计算随机时间的方法设计上不同,使得有些网卡比较”占便宜”。不过,抢线只对广播域的网络而言的,对于交换网络和ADSL这样点到点连接到局端设备的接入方式没什么意义。而且”抢线”也只是相对而言的,不会有质的变化。

  现在交换机的普及使得交换网络的普及,使得冲突域网络少了很多,极大地提高了网络的带宽。但是如果用HUB,或者共享带宽接入Internet的时候还是属于冲突域网络,有冲突碰撞的。交换机和HUB最大的区别就是:一个是构建点到点网络的局域网交换设备,一个是构建冲突域网络的局域网互连设备。

  除此之外PHY还提供了和对端设备连接的重要功能并通过LED灯显示出自己目前的连接的状态和工作状态让我们知道。当我们给网卡接入网线的时候,PHY不断发出的脉冲信号检测到对端有设备,它们通过标准的”语言”交流,互相协商并却定连接速度、双工模式、是否采用流控等。通常情况下,协商的结果是两个设备中能同时支持的最大速度和最好的双工模式。这个技术被称为AutoNegotiation或者NWAY,它们是一个意思–自动协商。

  具体传输过程为,发送数据时,网卡首先侦听介质上是否有载波(载波由电压指示),如果有,则认为其他站点正在传送信息,继续侦听介质。一旦通信介质在一定时间段内(称为帧间缝隙IFG=9.6微秒)是安静的,即没有被其他站点占用,则开始进行帧数据发送,同时继续侦听通信介质,以检测冲突。在发送数据期间,如果检测到冲突,则立即停止该次发送,并向介质发送一个“阻塞”信号,告知其他站点已经发生冲突,从而丢弃那些可能一直在接收的受到损坏的帧数据,并等待一段随机时间(CSMA/CD确定等待时间的算法是二进制指数退避算法)。在等待一段随机时间后,再进行新的发送。如果重传多次后(大于16次)仍发生冲突,就放弃发送。接收时,网卡浏览介质上传输的每个帧,如果其长度小于64字节,则认为是冲突碎片。如果接收到的帧不是冲突碎片且目的地址是本地地址,则对帧进行完整性校验,如果帧长度大于1518字节(称为超长帧,可能由错误的LAN驱动程序或干扰造成)或未能通过CRC校验,则认为该帧发生了畸变。通过校验的帧被认为是有效的,网卡将它接收下来进行本地处理。

  

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

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

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

  答:PHY和MAC是网卡的主要组成部分,网卡一般用RJ-45插口,10M网卡的RJ-45插口也只用了1,2,3,6四根针,而100M或1000M网卡的则是八根针都是全的。除此以外,还需要其它元件,因为虽然PHY提供绝大多数模拟支持,但在一个典型实现中,仍需外接6,7只分立元件及一个局域网绝缘模块。绝缘模块一般采用一个1:1的变压器。这些部件的主要功能是为了保护PHY免遭由于电气失误而引起的损坏。

  另外,一颗CMOS制程的芯片工作的时候产生的信号电平总是大于0V的(这取决于芯片的制程和设计需求),但是这样的信号送到100米甚至更长的地方会有很大的直流分量的损失。而且如果外部网线直接和芯片相连的话,电磁感应(打雷)和静电,很容易造成芯片的损坏。再就是设备接地方法不同,电网环境不同会导致双方的0V电平不一致,这样信号从A传到B,由于A设备的0V电平和B点的0V电平不一样,这样会导致很大的电流从电势高的设备流向电势低的设备。

  为了解决以上问题Transformer(隔离变压器)这个器件就应运而生。它把PHY送出来的差分信号用差模耦合的线圈耦合滤波以增强信号,并且通过电磁场的转换耦合到连接网线的另外一端。这样不但使网线和PHY之间没有物理上的连接而换传递了信号,隔断了信号中的直流分量,还可以在不同0V电平的设备中传送数据。

  隔离变压器本身就是设计为耐2KV~3KV的电压的。也起到了防雷感应(我个人认为这里用防雷击不合适)保护的作用。有些朋友的网络设备在雷雨天气时容易被烧坏,大都是PCB设计不合理造成的,而且大都烧毁了设备的接口,很少有芯片被烧毁的,就是隔离变压器起到了保护作用。

  隔离变压器本身是个被动元件,只是把PHY的信号耦合了到网线上,并没有起到功率放大的作用。那么一张网卡信号的传输的最长距离是谁决定的呢?

  一张网卡的传输最大距离和与对端设备连接的兼容性主要是PHY决定的。但是可以将信号送的超过100米的PHY其输出的功率也比较大,更容易产生EMI的问题。这时候就需要合适的Transformer与之配合。作PHY的老大公司Marvell的PHY,常常可以传送180~200米的距离,远远超过IEEE的100米的标准。

  RJ-45的接头实现了网卡和网线的连接。它里面有8个铜片可以和网线中的4对双绞(8根)线对应连接。其中100M的网络中1,2是传送数据的,3,6是接收数据的.1,2之间是一对差分信号,也就是说它们的波形一样,但是相位相差180度,同一时刻的电压幅度互为正负。这样的信号可以传递的更远,抗干扰能力强。同样的,3,6也一样是差分信号。

  网线中的8根线,每两根扭在一起成为一对。我们制作网线的时候,一定要注意要让1,2在其中的一对,3,6在一对。否则长距离情况下使用这根网线的时候会导致无法连接或连接很不稳定。

  现在新的PHY支持AUTO MDI-X功能(也需要Transformer支持)。它可以实现RJ-45接口的1,2上的传送信号线和3,6上的接收信号线的功能自动互相交换。有的PHY甚至支持一对线中的正信号和负信号的功能自动交换。这样我们就不必为了到底连接某个设备需要使用直通网线还是交叉网线而费心了。这项技术已经被广泛的应用在交换机和SOHO路由器上。

  在1000Basd-T网络中,其中最普遍的一种传输方式是使用网线中所有的4对双绞线,其中增加了4,5和7,8来共同传送接收数据。由于1000Based-T网络的规范包含了AUTOMDI-X功能,因此不能严格确定它们的传出或接收的关系,要看双方的具体的协商结果。

  一片网卡主要功能的实现就基本上是上面这些器件了。

  其他的,还有一颗EEPROM芯片,通常是一颗93C46.里面记录了网卡芯片的供应商ID,子系统供应商ID,网卡的MAC地址,网卡的一些配置,如SMI总线上PHY的地址,BOOTROM的容量,是否启用BOOTROM引导系统等东西。

  很多网卡上还有BOOTROM这个东西。它是用于无盘工作站引导操作系统的。既然无盘,一些引导用必需用到的程序和协议栈就放到里面了,例如RPL,PXE等。实际上它就是一个标准的PCI ROM.所以才会有一些硬盘写保护卡可以通过烧写网卡的BootRom来实现。其实PCI设备的ROM是可以放到主板BIOS里面的。启动电脑的时候一样可以检测到这个ROM并且正确识别它是什么设备的.AGP在配置上和PCI很多地方一样,所以很多显卡的BIOS也可以放到主板BIOS里面。这就是为什么板载的网卡我们从来没有看到过BOOTROM的原因。

  最后就是电源部分了。大多数网卡现在都使用3.3V或更低的电压。有的是双电压的。因此需要电源转换电路。

  而且网卡为了实现Wake on line功能,必须保证全部的PHY和MAC的极少一部分始终处于有电的状态,这需要把主板上的5V Standby电压转换为PHY工作电压的电路。在主机开机后,PHY的工作电压应该被从5V转出来的电压替代以节省5V Standby的消耗。(许多劣质网卡没有这么做)。

  有Wake on line功能的网卡一般还有一个WOL的接口。那是因为PCI2.1以前没有PCI设备唤醒主机的功能,所以需要着一根线通过主板上的WOL的接口连到南桥里面以实现WOL的功能。新的主板合网卡一般支持PCI2.2/2.3,扩展了PME#信号功能,不需要那个接口而通过PCI总线就可以实现唤醒功能。

  我们现在来看两个图

  

  MAC和PHY分开的以太网卡

  

  MAC和PHY集成在一颗芯片的以太网卡

  上图中各部件为:

  ①RJ-45接口

  ②Transformer(隔离变压器)

  ③PHY芯片

  ④MAC芯片

  ⑤EEPROM

  ⑥BOOTROM插槽

  ⑦WOL接头

  ⑧晶振

  ⑨电压转换芯片

  ⑩LED指示灯

  网卡的功能主要有两个:一是将电脑的数据封装为帧,并通过网线(对无线网络来说就是电磁波)将数据发送到网络上去;二是接收网络上其它设备传过来的帧,并将帧重新组合成数据,发送到所在的电脑中。网卡能接收所有在网络上传输的信号,但正常情况下只接受发送到该电脑的帧和广播帧,将其余的帧丢弃。然后,传送到系统CPU做进一步处理。当电脑发送数据时,网卡等待合适的时间将分组插入到数据流中。接收系统通知电脑消息是否完整地到达,如果出现问题,将要求对方重新发送。

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

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

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

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

  

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

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

  问:网卡的MAC和PHY间的关系?

  答:网卡工作在osi的最后两层,物理层和数据链路层,物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。物理层的芯片称之为PHY.数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。以太网卡中数据链路层的芯片称之为MAC控制器。很多网卡的这两个部分是做到一起的。他们之间的关系是pci总线接mac总线,mac接phy,phy接网线(当然也不是直接接上的,还有一个变压装置)。

  PHY和MAC之间是如何传送数据和相互沟通的。通过IEEE定义的标准的MII/GigaMII(Media Independed Interfade,介质独立界面)界面连接MAC和PHY.这个界面是IEEE定义的.MII界面传递了网络的所有数据和数据的控制.ETHERNET的接口实质是MAC通过MII总线控制PHY的过程。

  问:网线上传输的是模拟信号还是数字信号?

  答:是模拟信号。因为它传出和接收是采用的模拟的技术。虽然它传送的信息是数字的(并不是传送的信息是数字的信号就可以叫做数字信号)。

  简单的例子:我们知道电话是模拟信号,但是当我们拨号上网的时候,电话线里传送的是数字信息,但信号本身依旧是模拟的。然而ADSL同样是通过电话线传送的,却是数字信号。这取决于它传出和接受采用的技术。

  问:若操作系统没有加载网卡驱动,网卡虽然在系统设备树上,但网卡接口创建不了,那网卡实际能不能接收到数据?

  答:这里面有很多细节, 我根据Intel网卡的Spec大概写了写, 想尽量写的通俗一些,所以没有刻意用Spec里的术语,另外本文虽然讲的是MAC/PHY,但光口卡的(SERDES)也是类似的。

  PCI设备做reset以后进入D0uninitialized(非初始化的D0状态, 参考PCI电源管理规范),此时网卡的MAC和DMA都不工作,PHY是工作在一个特殊的低电源状态的;

  操作系统创建设备树时,初始化这个设备,PCI命令寄存器的 Memory Access Enable or the I/O Access Enable bit会被enable, 这就是D0active.此时PHY/MAC就使能了;

  PHY被使能应该就可以接收物理链路上的数据了,否则不能收到FLP/NLP, PHY就不能建立物理连接。但这类包一般是流量间歇发送的;

  驱动程序一般要通过寄存器来控制PHY, 比如自动协商speed/duplex, 查询物理链路的状态Link up/down;

  MAC被使能后, 如果没有驱动设置控制寄存器的一个位(CTRL.SLU )的话, MAC和PHY是不能通讯的, 就是说MAC不知道PHY的link已经ready, 所以收不到任何数据的。这位设置以后, PHY完成自协商, 网卡才会有个Link change的中断,知道物理连接已经Link UP了;

  即使Link已经UP, MAC还需要enable接收器的一个位(RCTL.RXEN ),包才可以被接收进来,如果网卡被reset,这位是0,意味着所有的包都会被直接drop掉,不会存入网卡的 FIFO.老网卡在驱动退出前利用这位关掉接收.Intel的最新千兆网卡发送接收队列的动态配置就是依靠这个位的,重新配置的过程一定要关掉流量;

  无论驱动加载与否, 发生reset后,网卡EEPOM里的mac地址会写入网卡的MAC地址过滤寄存器, 驱动可以去修改这个寄存器,现代网卡通常支持很多MAC地址,也就是说,MAC地址是可以被软件设置的。例如,Intel的千兆网卡就支持16个单播 MAC地址,但只有1个是存在EEPROM里的,其它是软件声称和设置的;

  但如果驱动没有加载,网卡已经在设备树上,操作系统完成了步骤1-2的初始化,此时网卡的PHY应该是工作的,但因为没有人设置控制位(CTRL.SLU)来让MAC和PHY建立联系,所以MAC是不收包的。这个控制位在reset时会再设置成0;

  PHY可以被软件设置加电和断电, 断电状态除了接收管理命令以外,不会接收数据。另外,PHY还能工作在Smart Power Down模式下,link down就进入省电状态;

  有些多口网卡,多个网口共享一个PHY, 所以BIOS里设置disbale了某个网口, 也未必会把PHY的电源关掉,反过来,也要小心地关掉PHY的电源;

  要详细了解PHY,最终还是要熟悉IEEE以太网的相关协议。

  phy,mac,switch芯片有什么区别

  什么是MAC?  首先我们来说说以太网卡的MAC芯片的功能。以太网数据链路层其实包含MAC(介质访问控制)子层和LLC(逻辑链路控制)子层。一块以太网卡MAC芯片的作用不但要实现MAC子层和LLC子层的功能,还要提供符合规范的PCI界面以实现和主机的数据交换。  MAC从PCI总线收到IP数据包(或者其他网络层协议的数据包)后,将之拆分并重新打包成最大1518Byte,最小64Byte的帧。这个帧里面包括了目标MAC地址、自己的源MAC地址和数据包里面的协议类型(比如IP数据包的类型用80表示)。最后还有一个DWORD(4Byte)的CRC码。  可是目标的MAC地址是哪里来的呢?这牵扯到一个ARP协议(介乎于网络层和数据链路层的一个协议)。第一次传送某个目的IP地址的数据的时候,先会发出一个ARP包,其MAC的目标地址是广播地址,里面说到:”谁是xxx.xxx.xxx.xxx这个IP地址的主人?”因为是广播包,所有这个局域网的主机都收到了这个ARP请求。收到请求的主机将这个IP地址和自己的相比较,如果不相同就不予理会,如果相同就发出ARP响应包。这个IP地址的主机收到这个ARP请求包后回复的ARP响应里说到:”我是这个IP地址的主人”。这个包里面就包括了他的MAC地址。以后的给这个IP地址的帧的目标MAC地址就被确定了。(其它的协议如IPX/SPX也有相应的协议完成这些操作。)  IP地址和MAC地址之间的关联关系保存在主机系统里面,叫做ARP表,由驱动程序和操作系统完成。在Microsoft的系统里面可以用 arp -a 的命令查看ARP表。收到数据帧的时候也是一样,做完CRC以后,如果没有CRC效验错误,就把帧头去掉,把数据包拿出来通过标准的借口传递给驱动和上层的协议客栈,最终正确的达到我们的应用程序。  还有一些控制帧,例如流控帧也需要MAC直接识别并执行相应的行为。  以太网MAC芯片的一端接计算机PCI总线,另外一端就接到PHY芯片上。以太网的物理层又包括MII/GMII(介质独立接口)子层、PCS(物理编码子层)、PMA(物理介质附加)子层、PMD(物理介质相关)子层、MDI子层。而PHY芯片是实现物理层的重要功能器件之一,实现了前面物理层的所有的子层的功能。  3.网络传输的流程  PHY在发送数据的时候,收到MAC过来的数据(对PHY来说,没有帧的概念,对它来说,都是数据而不管什么地址,数据还是CRC),每4bit就增加1bit的检错码,然后把并行数据转化为串行流数据,再按照物理层的编码规则(10Based-T的NRZ编码或100based-T的曼彻斯特编码)把数据编码,再变为模拟信号把数据送出去。(注:关于网线上数据是数字的还是模拟的比较不容易理解清楚。最后我再说)  收数据时的流程反之。  PHY还有个重要的功能就是实现CSMA/CD的部分功能。它可以检测到网络上是否有数据在传送,如果有数据在传送中就等待,一旦检测到网络空闲,再等待一个随机时间后将送数据出去。如果两块网卡碰巧同时送出了数据,那样必将造成冲突,这时候,冲突检测机构可以检测到冲突,然后各等待一个随机的时间重新发送数据。  这个随机时间很有讲究的,并不是一个常数,在不同的时刻计算出来的随机时间都是不同的,而且有多重算法来应付出现概率很低的同两台主机之间的第二次冲突。  许多网友在接入Internt宽带时,喜欢使用”抢线”强的网卡,就是因为不同的PHY碰撞后计算随机时间的方法设计上不同,使得有些网卡比较”占便宜”。不过,抢线只对广播域的网络而言的,对于交换网络和ADSL这样点到点连接到局端设备的接入方式没什么意义。而且”抢线”也只是相对而言的,不会有质的变化。  4.关于网络间的冲突 现在交换机的普及使得交换网络的普及,使得冲突域网络少了很多,极大地提高了网络的带宽。但是如果用HUB,或者共享带宽接入Internet的时候还是属于冲突域网络,有冲突碰撞的。交换机和HUB最大的区别就是:一个是构建点到点网络的局域网交换设备,一个是构建冲突域网络的局域网互连设备。  我们的PHY还提供了和对端设备连接的重要功能并通过LED灯显示出自己目前的连接的状态和工作状态让我们知道。当我们给网卡接入网线的时候,PHY不断发出的脉冲信号检测到对端有设备,它们通过标准的”语言”交流,互相协商并却定连接速度、双工模式、是否采用流控等。  通常情况下,协商的结果是两个设备中能同时支持的最大速度和最好的双工模式。这个技术被称为Auto Negotiation或者NWAY,它们是一个意思–自动协商。  5.PHY的输出部分 现在来了解PHY的输出后面部分。一颗CMOS制程的芯片工作的时候产生的信号电平总是大于0V的(这取决于芯片的制程和设计需求),但是这样的信号送到100米甚至更长的地方会有很大的直流分量的损失。而且如果外部网现直接和芯片相连的话,电磁感应(打雷)和静电,很容易造成芯片的损坏。  再就是设备接地方法不同,电网环境不同会导致双方的0V电平不一致,这样信号从A传到B,由于A设备的0V电平和B点的0V电平不一样,这样会导致很大的电流从电势高的设备流向电势低的设备。我们如何解决这个问题呢?  这时就出现了Transformer(隔离变压器)这个器件。它把PHY送出来的差分信号用差模耦合的线圈耦合滤波以增强信号,并且通过电磁场的转换耦合到连接网线的另外一端。这样不但使网线和PHY之间没有物理上的连接而换传递了信号,隔断了信号中的直流分量,还可以在不同0V电平的设备中传送数据。  隔离变压器本身就是设计为耐2KV~3KV的电压的。也起到了防雷感应(我个人认为这里用防雷击不合适)保护的作用。有些朋友的网络设备在雷雨天气时容易被烧坏,大都是PCB设计不合理造成的,而且大都烧毁了设备的接口,很少有芯片被烧毁的,就是隔离变压器起到了保护作用。

查看详情

phy知识

展开查看更多

phy技术

USB4 v2是如何工作的?USB4 v2可以用在哪里?

在当今的数字世界,小屏幕里景象和声音也能够栩栩如生。这背后涉及到一系列硬件和软件技术,通用串行总线(USB)标准也在其中发挥着不容忽视的作用。特别是US...

2024-08-02 标签:新思科技PHYUSB4 839 0

瑞萨多接口PHY IIoT网关解决方案

瑞萨多接口PHY IIoT网关解决方案

随着工业4.0的发展,工业应用领域正经历着一场革命性变革。智能制造、自动化生产以及智能物流系统的不断进步,使得现代工业对于通信技术的需求变得尤为重要。行...

2024-07-19 标签:网关瑞萨PHY 319 0

以太网模块简介 以太网模块案例分享

以太网模块简介 以太网模块案例分享

随着智能化设备的普及应用,智能主板也应用的越来越广泛,比如在信息发布、自助终端、智慧收银等方面应用越来越广。

2024-05-07 标签:滤波电容PHY共模滤波器 993 0

如何使用Vitis自带的LWIP模板进行PS端千兆以太网TCP通信?

如何使用Vitis自带的LWIP模板进行PS端千兆以太网TCP通信?

开发板有两路千兆以太网,通过RGMII接口连接,本实验演示如何使用Vitis自带的LWIP模板进行PS端千兆以太网TCP通信。

2024-04-28 标签:以太网PHY串口调试 3383 0

浅谈高可靠性PHY车载芯片的知识

浅谈高可靠性PHY车载芯片的知识

当从外部设备接收数据时:物理层芯片将模拟信号转换为数字信号,通过解码得到数据,经过接口传输到介质访问层(MAC)。

2024-04-23 标签:模拟信号数字信号PHY 1594 0

如何将流传感器与MIPI连接来平衡性能与功耗呢?

如何将流传感器与MIPI连接来平衡性能与功耗呢?

高速传感器的数据流给设计人员带来了吞吐量和延迟的挑战。如果不仔细构思和执行,针对这些标准优化设计可能会增加功耗。

2024-04-22 标签:物联网虚拟现实PHY 575 0

DPHY在high-speed模式下有双向传输的功能吗?

DPHY在high-speed模式下有双向传输的功能吗?

DPHY在high-speed模式下有双向传输的功能吗?我看dphy的协议里有这么两段描述,不太理解什么意思?

2024-04-03 标签:数据通信信号线PHY 695 0

如何利用蓝牙低功耗长距离编码PHY层技术实现超过2300米的连接距离呢

如何利用蓝牙低功耗长距离编码PHY层技术实现超过2300米的连接距离呢

如今,蓝牙设备和应用的数量正在不断增长。如仓库资产跟踪、智能家居设备、禽畜跟踪和远程控制设备等应用,在功能需求和用户体验上都需要长距离连接功能。

2024-03-29 标签:接收器信噪比智能家居 918 0

交换芯片和phy芯片的区别

交换芯片和PHY芯片是网络设备中两种关键的组件,它们在网络通信过程中扮演着不同的角色。了解它们之间的区别对于理解网络硬件的设计和功能至关重要。

2024-03-21 标签:以太网PHY交换芯片 4345 0

以太网自协商机制—双绞线自协商案例(四)

以太网自协商机制—双绞线自协商案例(四)

10M/100M/1000M自协商,主要协商的内容为“速度双工”、“流控”和“主从”三大类,下面先介绍10M/100M/1000M自协商的BasePag...

2024-03-20 标签:以太网集线器双绞线 3005 0

查看更多>>

phy资讯

出货超百万片,车载以太网PHY芯片的国产替代方案

电子发烧友网报道(文/梁浩斌)汽车智能化的趋势下,车载高速通信在近年来受到了产业重点关注。智能汽车上,摄像头、毫米波雷达、激光雷达等传感器数量不断增多,...

2024-10-23 标签:PHY车载以太网 4720 0

RISC-V Summit China 2024  青稞RISC-V+接口PHY,赋能RISC-V高效落地

RISC-V Summit China 2024 青稞RISC-V+接口PHY,赋能RISC-V高效落地

沁恒在历届峰会上分享RISC-V在MCU领域的创新成果,和大家共同见证了本土RISC-V产业的成长。早在第一届RISC-V中国峰会上,沁恒就公开了青稞R...

2024-08-30 标签:接口PHYRISC-V 1480 0

微芯科技隆重推出LAN887x系列以太网PHY收发器

随着汽车与工业领域对降低成本、减轻重量及简化电缆系统的迫切需求,单对以太网(SPE)技术正迅速成为这些行业中网络连接的首选方案。凭借其在汽车应用中展现出...

2024-08-21 标签:收发器以太网PHY 491 0

微芯科技携手Acacia打造太比特级数据中心互联系统

面对数据中心架构的不断演进与数据流量的激增,对数据中心间带宽的需求达到了前所未有的高度。为了有效应对这一挑战,系统开发者正致力于加速新一代1.2 Tbp...

2024-08-15 标签:以太网数据中心PHY 518 0

是德科技推出PCIe和UCIe仿真解决方案

是德科技推出PCIe和UCIe仿真解决方案

是德科技(Keysight Technologies,Inc.)宣布推出System Designer for PCIe,这是其先进设计系统 (ADS)...

2024-07-30 标签:仿真PCIePHY 870 0

HPM USB系列:HPM6700双USB功能介绍

HPM USB系列:HPM6700双USB功能介绍

HPM6700系列MCU提供了2个USB外设端口。这些端口内置高速PHY,支持OTG模式,主机模式支持高速、全速和低速模式,设备模式支持高速和全速模式,...

2024-05-30 标签:数据存储PHYUSB协议 641 0

LitePoint与三星电子合作支持FiRa 2.0物理层安全测距测试用例

先进无线测试解决方案提供商LitePoint与三星电子宣布紧密合作,支持FiRa 2.0物理层(PHY)一致性测试规范内定义的新安全测试用例。

2024-05-16 标签:三星电子PHYLitePoint 564 0

益昂半导体成功推出超低功耗10G以太网车载芯片!

2024年5月8日,美国硅谷和中国南京——益昂半导体今天宣布进军汽车市场,并推出用于车载网络(IVN)的Nemo系列芯片。

2024-05-11 标签:半导体以太网PHY 1024 0

LitePoint宣布其IQgig-UWB和IQgig-UWB+测试平台通过FiRa联盟验证

IQgig 测试仪系列可为超宽带无线设备实现互操作性和加速批量制造

2024-05-06 标签:UWBPHYLitePoint 628 0

DM9162IEP相对于DM9161AEP区别

dm9162iep对比dm9161aep的优势在于那些地方

2024-04-26 标签:PHY以太网接口 1256 1

查看更多>>

phy数据手册

相关标签

相关话题

换一批
  • IOT
    IOT
    +关注
    IoT是Internet of Things的缩写,字面翻译是“物体组成的因特网”,准确的翻译应该为“物联网”。物联网(Internet of Things)又称传感网,简要讲就是互联网从人向物的延伸。
  • 海思
    海思
    +关注
  • STM32F103C8T6
    STM32F103C8T6
    +关注
    STM32F103C8T6是一款集成电路,芯体尺寸为32位,程序存储器容量是64KB,需要电压2V~3.6V,工作温度为-40°C ~ 85°C。
  • 数字隔离
    数字隔离
    +关注
    数字隔离技术常用于工业网络环境的现场总线、军用电子系统和航空航天电子设备中,尤其是一些应用环境比较恶劣的场合。数字隔离电路主要用于数字信号和开关量信号的传输。另一个重要原因是保护器件(或人)免受高电压的危害。本文详细介绍了数字隔离器工作原理及特点,选型及应用,各类数字隔离器件性能比较等内容。
  • 硬件工程师
    硬件工程师
    +关注
    硬件工程师Hardware Engineer职位 要求熟悉计算机市场行情;制定计算机组装计划;能够选购组装需要的硬件设备,并能合理配置、安装计算机和外围设备;安装和配置计算机软件系统;保养硬件和外围设备;清晰描述出现的计算机软硬件故障。
  • wifi模块
    wifi模块
    +关注
    Wi-Fi模块又名串口Wi-Fi模块,属于物联网传输层,功能是将串口或TTL电平转为符合Wi-Fi无线网络通信标准的嵌入式模块,内置无线网络协议IEEE802.11b.g.n协议栈以及TCP/IP协议栈。传统的硬件设备嵌入Wi-Fi模块可以直接利用Wi-Fi联入互联网,是实现无线智能家居、M2M等物联网应用的重要组成部分。
  • 74ls74
    74ls74
    +关注
    74LS74是双D触发器。功能多,可作双稳态、寄存器、移位寄存器、振荡器、单稳态、分频计数器等功能。本章详细介绍了74ls112的功能及原理,74ls74引脚图及功能表,74ls112的应用等内容。
  • MPU6050
    MPU6050
    +关注
    MPU-6000(6050)为全球首例整合性6轴运动处理组件,相较于多组件方案,免除了组合陀螺仪与加速器时间轴之差的问题,减少了大量的封装空间。
  • Protues
    Protues
    +关注
    Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
  • UHD
    UHD
    +关注
    UHD是”超高清“的意思UHD的应用在电视机技术上最为普遍,目前已有不少厂商推出了UHD超高清电视。
  • STC12C5A60S2
    STC12C5A60S2
    +关注
    在众多的51系列单片机中,要算国内STC 公司的1T增强系列更具有竞争力,因他不但和8051指令、管脚完全兼容,而且其片内的具有大容量程序存储器且是FLASH工艺的,如STC12C5A60S2单片机内部就自带高达60K FLASHROM,这种工艺的存储器用户可以用电的方式瞬间擦除、改写。
  • 循迹小车
    循迹小车
    +关注
    做单片机的工程师相比都堆循迹小车有所认识,它是自动引导机器人系统的基本应用,那么今天小编就给大家介绍下自动自动循迹小车的原理,智能循迹小车的应用,智能循迹小车程序,循迹小车用途等知识吧!
  • 光立方
    光立方
    +关注
    光立方是由四千多棵光艺高科技“发光树”组成的,在2009年10月1日天安门广场举行的国庆联欢晚会上面世。这是新中国成立六十周年国庆晚会最具创意的三大法宝之首。
  • K60
    K60
    +关注
  • LM2596
    LM2596
    +关注
    LM2596是降压型电源管理单片集成电路的开关电压调节器,能够输出3A的驱动电流,同时具有很好的线性和负载调节特性。固定输出版本有3.3V、5V、12V,可调版本可以输出小于37V的各种电压。
  • 光模块
    光模块
    +关注
    光模块(optical module)由光电子器件、功能电路和光接口等组成,光电子器件包括发射和接收两部分。简单的说,光模块的作用就是光电转换,发送端把电信号转换成光信号,通过光纤传送后,接收端再把光信号转换成电信号。
  • STM32单片机
    STM32单片机
    +关注
    STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核
  • 步进驱动器
    步进驱动器
    +关注
    步进驱动器是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速和定位的目的。
  • Nexperia
    Nexperia
    +关注
    Nexperia是大批量生产基本半导体的领先专家,这些半导体是世界上每个电子设计都需要的组件。该公司广泛的产品组合包括二极管、双极晶体管、ESD 保护器件、MOSFET、GaN FET 以及模拟和逻辑IC。
  • CD4046
    CD4046
    +关注
    cD4046是通用的CMOS锁相环集成电路,其特点是电源电压范围宽(为3V-18V),输入阻抗高(约100MΩ),动态功耗小,在中心频率f0为10kHz下功耗仅为600μW,属微功耗器件。本章主要介绍内容有,CD4046的功能 cd4046锁相环电路,CD4046无线发射,cd4046运用,cd4046锁相环电路图。
  • COMSOL
    COMSOL
    +关注
    COMSOL集团是全球多物理场建模解决方案的提倡者与领导者。凭借创新的团队、协作的文化、前沿的技术、出色的产品,这家高科技工程软件公司正飞速发展,并有望成为行业领袖。其旗舰产品COMSOL Multiphysics 使工程师和科学家们可以通过模拟,赋予设计理念以生命。
  • 加速度传感器
    加速度传感器
    +关注
    加速度传感器是一种能够测量加速度的传感器。通常由质量块、阻尼器、弹性元件、敏感元件和适调电路等部分组成。
  • 联网技术
    联网技术
    +关注
  • 服务机器人
    服务机器人
    +关注
    服务机器人是机器人家族中的一个年轻成员,到目前为止尚没有一个严格的定义。不同国家对服务机器人的认识不同。
  • 四轴飞行器
    四轴飞行器
    +关注
    四轴飞行器,又称四旋翼飞行器、四旋翼直升机,简称四轴、四旋翼。这四轴飞行器(Quadrotor)是一种多旋翼飞行器。四轴飞行器的四个螺旋桨都是电机直连的简单机构,十字形的布局允许飞行器通过改变电机转速获得旋转机身的力,从而调整自身姿态。具体的技术细节在“基本运动原理”中讲述。
  • 基站测试
    基站测试
    +关注
    802.11ac与11基站测试(base station tests) 在基站设备安装完毕后,对基站设备电气性能所进行的测量。n的区别,802.11n无线网卡驱动,802.11n怎么安装。
  • TMS320F28335
    TMS320F28335
    +关注
    TMS320F28335是一款TI高性能TMS320C28x系列32位浮点DSP处理器
  • 静电防护
    静电防护
    +关注
    为防止静电积累所引起的人身电击、火灾和爆炸、电子器件失效和损坏,以及对生产的不良影响而采取的防范措施。其防范原则主要是抑制静电的产生,加速静电泄漏,进行静电中和等。
  • OBD
    OBD
    +关注
    OBD是英文On-Board Diagnostic的缩写,中文翻译为“车载诊断系统”。这个系统随时监控发动机的运行状况和尾气后处理系统的工作状态,一旦发现有可能引起排放超标的情况,会马上发出警示。
  • SDK
    SDK
    +关注
      SDK一般指软件开发工具包,软件开发工具包一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。软件开发工具广义上指辅助开发某一类软件的相关文档、范例和工具的集合。

关注此标签的用户(2人)

淡蓝的晴_eb0 jf_94044656

编辑推荐厂商产品技术软件/工具OS/语言教程专题