RMII模式以太网PHY芯片DP83848C的应用

合集下载

以太网PHY寄存器分析

以太网PHY寄存器分析

以太网PHY寄存器分析
以太网是一种广泛应用于局域网(LAN)的通信技术。

它定义了一系
列的协议和标准,用于在局域网中传输数据。

以太网的物理层是指负责在
物理媒介上传输数据的部分。

而以太网PHY则是在以太网控制器芯片中实
现的物理层功能。

控制寄存器用于控制以太网PHY的各种参数和功能。

例如,设置传输
速率、设定全双工或半双工模式、设置自动协商功能等。

这些控制寄存器
可以通过对特定位进行设置或复位来实现对以太网PHY的控制。

状态寄存器用于监测以太网PHY的工作状态和性能。

例如,监测链路
的连接状态、监测传输速率、监测误码率等。

通过读取这些状态寄存器的值,可以了解以太网PHY的当前状态和性能。

以太网PHY寄存器的地址是按照规定的格式编排的。

地址的编排遵循
以太网PHY寄存器的标准规范。

不同厂商的以太网PHY芯片可能具有不同
的寄存器地址映射方式,因此在进行以太网PHY寄存器分析时需要参考具
体设备的技术文档。

对于以太网PHY寄存器的分析,需要根据具体的需求和应用场景进行。

可以通过读取和解析这些寄存器的值,来了解以太网PHY的配置和状态。

根据需要,还可以对这些寄存器进行配置,以调整以太网PHY的参数和功能。

总结起来,以太网PHY寄存器是用于控制和监测以太网物理层功能的
寄存器。

通过对这些寄存器的读写操作,可以实现对以太网物理层的配置
和监测。

以太网PHY寄存器的分析是了解和优化以太网性能的重要手段。

以太网芯片MAC和PHY知识详解

以太网芯片MAC和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)也是类似的.1.PCI设备做reset以后进入D0uninitialized(非初始化的D0状态, 参考PCI电源管理规范),此时网卡的MAC和DMA都不工作,PHY是工作在一个特殊的低电源状态的;2.操作系统创建设备树时,初始化这个设备,PCI命令寄存器的Memory Access Enable orthe I/O Access Enable bit会被enable, 这就是D0active.此时PHY/MAC就使能了;3.PHY被使能应该就可以接收物理链路上的数据了,否则不能收到FLP/NLP, PHY就不能建立物理连接.但这类包一般是流量间歇发送的;4.驱动程序一般要通过寄存器来控制PHY, 比如自动协商speed/duplex, 查询物理链路的状态Link up/down;5.MAC被使能后, 如果没有驱动设置控制寄存器的一个位(CTRL.SLU )的话, MAC和PHY是不能通讯的, 就是说MAC不知道PHY的link已经ready, 所以收不到任何数据的.这位设置以后, PHY完成自协商, 网卡才会有个Link change的中断,知道物理连接已经Link UP了;6.即使Link已经UP, MAC还需要enable接收器的一个位(RCTL.RXEN ),包才可以被接收进来,如果网卡被reset,这位是0,意味着所有的包都会被直接drop掉,不会存入网卡的FIFO.老网卡在驱动退出前利用这位关掉接收.Intel的最新千兆网卡发送接收队列的动态配置就是依靠这个位的,重新配置的过程一定要关掉流量;7.无论驱动加载与否, 发生reset后,网卡EEPOM里的mac地址会写入网卡的MAC地址过滤寄存器, 驱动可以去修改这个寄存器,现代网卡通常支持很多MAC地址,也就是说,MAC地址是可以被软件设置的.例如,Intel的千兆网卡就支持16个单播MAC地址,但只有1个是存在EEPROM里的,其它是软件声称和设置的;8.但如果驱动没有加载,网卡已经在设备树上,操作系统完成了步骤1-2的初始化,此时网卡的PHY应该是工作的,但因为没有人设置控制位(CTRL.SLU)来让MAC和PHY建立联系,所以MAC是不收包的.这个控制位在reset时会再设置成0;9.PHY可以被软件设置加电和断电, 断电状态除了接收管理命令以外,不会接收数据.另外,PHY还能工作在Smart Power Down模式下,link down就进入省电状态;10.有些多口网卡,多个网口共享一个PHY, 所以BIOS里设置disbale了某个网口, 也未必会把PHY的电源关掉,反过来,也要小心地关掉PHY的电源;11.要详细了解PHY,最终还是要熟悉IEEE以太网的相关协议.。

多口phy芯片原理

多口phy芯片原理

多口phy芯片原理多口PHY芯片是一种适用于以太网通信的集成电路,用于将数据从高速串行信号转换为并行信号,并将其传输到网络设备的不同接口上。

它是网络设备中必不可少的一部分,对于提供高速、高效的数据通信至关重要。

在本篇文章中,我们将详细介绍多口PHY芯片的原理和工作方式。

一、多口PHY芯片的基本原理多口PHY芯片是一个基于千兆以太网标准的通信接口,它的主要作用是将高速数据从一组传输介质的串行信号转换为一组并行信号,以便数据可以通过多个物理接口同时传输。

它采用了一种称为多口串行自适应技术的方法来实现这一功能。

多口PHY芯片通常采用一种双工模式的工作方式,即同时支持发送和接收功能。

在发送端,数据被分成多个并行信号,并通过多个物理接口发送到网络中。

在接收端,物理接口接收到并行信号,并将其转换为串行信号,然后通过解调器将其恢复为原始数据。

为了实现这一转换,多口PHY芯片通常包括以下主要组件和功能:1.串行-并行转换器:它负责将输入的高速串行信号转换为一组并行信号。

这通常通过一组并行寄存器来实现,每个寄存器存储并传输一个数据位。

2.并行-串行转换器:它负责将一组并行信号转换回高速串行信号。

这通常通过一组并行寄存器来实现,每个寄存器存储并传输一个数据位。

3.自适应均衡器:它负责对接收到的串行信号进行均衡处理,以消除传输过程中的衰减和失真。

均衡器通常由一组滤波器和增益控制器组成,可以自动调整增益和滤波参数以适应不同的信道条件。

4.时钟和数据恢复单元:它在接收端负责从接收到的串行信号中恢复时钟和数据。

它通常采用一种称为相锁环技术的方法来实现时钟恢复,并采用一种称为决策反馈等化器的方法来实现数据恢复。

5.发送和接收控制器:它负责管理发送和接收过程中的控制信号和状态信息。

它通常包括发送和接收状态机、FIFO缓冲区、错误检测和纠正机制等。

二、多口PHY芯片的工作方式多口PHY芯片的工作方式可以分为两个主要阶段:发送阶段和接收阶段。

以太网phy芯片

以太网phy芯片

以太网phy芯片以太网PHY芯片是一种广泛应用于以太网接口的集成电路芯片,用于在计算机和网络设备之间传输数据。

以太网PHY芯片通常由物理层接口、传输媒介接口、时钟管理和自适应均衡和等化器等模块组成。

以太网PHY芯片可以支持不同速度的以太网接口,如10 Mbps、100 Mbps和1000 Mbps(即千兆以太网)。

它通过采用不同的调制解调器和编码技术来实现不同的速度,以满足不同类型的网络需求。

以太网PHY芯片的物理层接口负责将数据从高层协议传输到物理媒介上。

它通过生成和解析电压和电流信号,实现数据的传输和接收。

物理层接口还负责检测和纠正传输中的错误,以保证数据的准确性和完整性。

传输媒介接口是以太网PHY芯片连接到物理媒介(如双绞线、光纤等)的接口。

它根据不同的媒介类型提供不同的连接方式和电气特性,以适应不同环境下的网络需求。

时钟管理模块是以太网PHY芯片中的一个重要组成部分,用于生成和同步数据传输的时钟信号。

时钟信号是保证数据传输的同步和准确性的关键因素。

时钟管理模块可以提供内部时钟源或接收外部时钟源,并通过锁相环(PLL)技术调整时钟频率和相位来保证数据传输的稳定性。

自适应均衡和等化器模块是以太网PHY芯片中的另一个重要组成部分,用于对传输中的信号进行均衡和补偿,以减小信号损失和抖动,提高数据传输的可靠性。

自适应均衡和等化器模块根据接收到的信号特性自动调整均衡和补偿参数,以适应不同长度和质量的传输线路。

除了上述基本模块,以太网PHY芯片还可以包含一些其他功能,如电源管理、噪声抑制、故障检测和诊断等。

这些功能可以提供更高级的性能和功能,以满足不同网络设备的需求。

总的来说,以太网PHY芯片是一种集成电路芯片,用于实现不同速度和不同介质的以太网接口。

它通过物理层接口、传输媒介接口、时钟管理和自适应均衡和等化器等模块实现数据的传输和接收,以及网络的连接和管理。

随着以太网技术的发展和应用范围的扩大,以太网PHY芯片的功能和性能将会进一步提升,以满足不断变化的网络需求。

STM32F407_DP83848_Lwip移植方法

STM32F407_DP83848_Lwip移植方法

前段时间做项目用到百兆网通信,用到了LWIP,一开始是参照原子的例程做移植,因为原子的例程中使用的是LAN8720,为了改成DP83848,改寄存器地址,改位定义,改速度计算公式,折腾了好多天也没成功,最后只好听从网友的建议,修改ST 官方的一个例程,几天下来,竟然成功了,现在将步骤分享给大家,感觉实际工程中用DP83848的还是大多数..其实本文并不是移植LWIP,只是将ST官方的例程改成我们项目所需要的,然后我们再在这个基础上完成自己的项目即可,这对新接触LWIP又急着做项目的人比较适合,没必要去了解LWIP的具体实现,会用就行了..本文作者:武汉普创科技--易宇--转载请注明出处本人的项目配置:STM32F407VET6 + DP83848C1、从官方网站/document/list/index/category-523下面向STM32F4x7微控制器的LwIP TCP/IP协议栈的演示代码的英文STM32F4x7微控制器的LwIP TCP/IP协议栈的基于官方EVAL开发板的演示代码,显然,我们直接修改这个演示代码要比我们去移植LWIP简单得多。

DM00036052.pdf是演示代码的说明文档。

2、将stsw-stm32070.zip解压得到STM32F4x7_ETH_LwIP_V1.1.0文件夹,下面是STM32F4x7_ETH_LwIP_V1.1.0文件夹架构3、删除_htmresc文件夹,这个文件夹是ST及CMSIS公司logo,没什么用。

4、打开project文件夹,这个文件夹包括两个文件夹:FreeRTOS和Standalone。

FreeRTOS文件夹里的程序示例是基于FreeRTOS系统的LWIP移植示例,这里我们不需要,直接删除。

Standalone文件夹里是一些无操作系统LWIP移植示例程序,在这里我们工程需要的是普通的数据传输,所以只使用到UDP,所以我们只保留udp_echo_client文件夹,其他的都删除掉。

DP83848C中文资料

DP83848C中文资料
The DP83848C features integrated sublayers to support both 10BASE-T and 100BASE-TX Ethernet protocols, which ensures compatibility and interoperability with all other standards based Ethernet solutions.
The DP83848C easily interfaces to twisted pair media via an external transformer. Both MII and RMII are supported ensuring ease and flexibility of design.
The DP83848C includes a 25MHz clock out. This means that the application can be designed with a
• Energy Detection Mode • 25 MHz clock out • SNI Interface (configurable) • RMII Rev. 1.2 Interface (configurable)
2.0 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.1 Auto-Negotiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16 2.1.1 Auto-Negotiation Pin Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.1.2 Auto-Negotiation Register Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.1.3 Auto-Negotiation Parallel Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1.4 Auto-Negotiation Restart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1.5 Enabling Auto-Negotiation via Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.1.6 Auto-Negotiation Complete Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

以太网PHY控制器DP83848中文资料

以太网PHY控制器DP83848中文资料

DP83848-单路10/100Mb/s 以太网收发器能量检测模式美国国家半导体公司应用注释1401Bra d Kennedy 2005年9月DP83848-单路10/100Mb/s 以太网收发器能量检测模式AN-1401©2005Na tiona l Semiconductor Corpora tion AN201675www .na tiona 1.0 介绍 美国国家半导体公司的DP83848 10/100 M b/s 单路物理层器件提供了低功耗性能,其包含一个智能电源关闭状态-能量检测模式。

本应用注释详细解释了DP83848能量检测模式的原理和工作过程。

2.0 能量检测模式的原理 能量检测模式提供了当器件未连接到激活的链接对象时节约能量的机理。

当没有电缆存在或者电缆连接到电源处于关闭状态的对象的时候,能够设置DP83848自动进入低功耗状态。

一旦插上电缆器件既可继续工作,或者尝试与远端对象建立活动链接的时候,DP83848能够自动上电进入全功能工作状态。

当进入到低功耗能源检测状态时,DP83848通过禁止除能量检测电路以外的所有接收电路来减少其功率消耗。

此外,DP83848将会在连线上周期性地发送信号,如下文中的详细描述。

3.0 能量检测模式的工作过程 能量检测模式的工作有两个状态组成,一个正常工作状态和一个能量检测状态。

3.1 正常工作状态 在正常工作状态,能量检测逻辑依靠标准的介质关联接口(MDI )活动(加扰空闲,链接脉冲,数据包)来保持电源上电状态。

当能量检测模式使能之后,如果能量检测逻辑检测到没有MDI 活动,DP83848将会转换到一个能量检测状态。

3.2 能量检测工作 当使能并进入到能量检测状态之后,能量检测模式通过专用低功耗电路进行连续监控。

在此期间内,能够通过串行管理接口(MDC/MDIO )访问寄存器。

为了保存能量,大部分的芯片功能仍旧保持关电状态。

在能量检测状态,DP83848在两个功能之间交替切换:监控信号线以探测网络活动和在线上发送脉冲信号。

RMII,SMII接口分析

RMII,SMII接口分析

2.RMII接口分析2.1 RMII接口信号定义RMII接口(Reduced MII接口)是简化的MII接口。

它也分为MAC 模式和PHY模式。

RMII接口接收、发送和控制的同步参考时钟REF_CLK是由外部时钟源提供的50MHz信号。

这与原来的MII接口不同,MII接口中发送和接收的时钟是分开的,且都是由物理层芯片提供给MAC层芯片。

这里需要注意的是由于数据接收时钟是由外部晶振提供而不是由载波信号提取的,所以在物理层芯片内的数据接收部分要设计一个FIFO,用来协调两个不同的时钟,在发送接收的数据时提供缓冲。

物理层芯片的发送部分则不需要一个FIFO,它直接将接收到的数据发送出去就可以了。

CRS_DV是MII中的RXDV和CRS(Carrier_Sense)两个信号合并而成,当介质不空闲时CRS_DV以和REF_CLK相异步的方式给出。

当CRS比RX_DV早结束时(即载波消失而队列中还有数据要传输时),就会出现CRS_ DV在半位元组的边界以25MHz(在100MHz模式下)或2.5MHz(在10MHz模式下)的频率在0、1之间来回切换。

因此,MAC能够从CRS_ DV中精确的恢复出RX_DV和CRS,见图14。

RMII接口的MAC模式定义:RMII接口PHY模式定义:2.2 RMII接口时序特性RMII接口的发送部分包括TX_EN(发送使能)和TXD[1:0](发送数据)两类信号线,它们与时钟CLK_REF同步。

当MAC层有数据要发送时,TX_EN变为有效,数据便出现在TXD[1:0]上。

对于100M速率时,物理层芯片在每个时钟周期都要采样TXD[1:0]上的数据,而在10M速率时,物理层芯片要每隔10个时钟周期采样TXD[1:0]上的数据,而MAC层发送的每个数据会在TXD[1:0]上保留10个周期。

发送部分的波形图如下图13 RMII发送部分的时序关系图RMII接口的接收部分包括CRS_DV(载波和数据有效)、RXD[1:0](接收数据)、RX_ER(接收出错)三类信号线,其中RXD[1:0]和RX_ER与时钟CLK_REF同步,而CRS_DV信号与时钟是异步的。

phy芯片

phy芯片

phy芯片PHY芯片是一种物理层芯片,主要用于网络通信中传输数据的物理层处理。

PHY芯片通常作为网络接口卡和网络交换机等设备中的一个组成部分,负责将上层数据转换成电信号进行传输,同时也负责将接收到的电信号转换成数据。

PHY芯片的一项主要功能是信号的编解码。

编码是将数字数据转换成模拟信号的过程,而解码则是将模拟信号转换成数字数据的过程。

编解码对于数据的传输非常重要,它可以提高传输的速率和可靠性。

同时,PHY芯片还具有调制解调、时钟恢复、数据整形等功能,用于帮助数据在物理层进行传输。

PHY芯片还具有自适应均衡、自适应时钟和自适应增益控制等功能。

自适应均衡是通过对传输信号补偿来消除信道中的失真,提高传输的质量。

自适应时钟能够根据传输信号的频率变化自动调整时钟的频率,以保证数据的正确传输。

自适应增益控制可以根据接收到的信号强度调整接收机的增益,以确保信号的稳定和可靠性。

此外,PHY芯片还包括电器兼容性测试和诊断功能。

电器兼容性测试是指通过测试和分析不同设备之间的电信号是否互相干扰,以评估设备之间的兼容性。

诊断功能可以帮助检测和定位网络通信中的故障,并提供相关的解决方案。

在现代网络通信中,PHY芯片的应用非常广泛。

它可以用于各种类型的网络,如以太网、无线局域网和光纤通信等。

不同的网络设备和协议可能需要不同种类的PHY芯片,以适应不同的传输需求和数据速率。

总结起来,PHY芯片是一种关键的网络通信芯片,它负责物理层的数据传输和处理。

它具有信号的编解码、自适应均衡、自适应时钟和自适应增益控制等功能,能够提高网络传输的质量和可靠性。

在网络通信中,PHY芯片被广泛应用于各种设备和协议中,是实现高速、稳定和可靠数据传输的关键技术之一。

RMII模式以太网PHY芯片DP83848C的应用

RMII模式以太网PHY芯片DP83848C的应用

引言DP83848C是美国国家半导体公司生产的一款鲁棒性好、功能全、功耗低的10/100 Mbps单路物理层(PHY)器件。

它支持MII(介质无关接口)和RMII(精简的介质无关接口),使设计更简单灵活;同时,支持10BASE~T和100BASE-TX以太网外设,对其他标准以太网解决方案有良好的兼容性和通用性。

MII(Medium Independent Interface)是IEEE802.3u规定的一种介质无关接口,主要作用是连接介质访问控制层(MAC)子层与物理层(PH-Y)之间的标准以太网接口,负责MAC 和PHY之间的通信。

由于MII需要多达16根信号线,由此产生的I/O口需求及功耗较大,有必要对MII引脚数进行简化,因此提出了RMII(Reduced Medium Independent Interface,精简的介质无关接口),即简化了的MII。

1 硬件设计1.1 电路设计DP83848C的收发线路各是一对差分线,经过变比为1:1的以太网变压器后与网线相连。

以太网变压器的主要作用是阻抗匹配、信号整形、网络隔离,以及滤除网络和设备双方面的噪音。

典型应用如图1所示。

图2是DP83848C与MAC的连接电路。

其中,Xl为50 MHz的有源振荡器。

1.2 PCB布局布线布局方面,精度为1%的49.9 Ω电阻和100 nF的去耦电容应靠近PHY器件放置,并通过最短的路径到电源。

如图3所示,两对差分信号(TD和RD)应平行走线,避免短截,且尽量保证长度匹配,这样可以避免共模噪声和EMI辐射。

理想情况下,信号线上不应有交叉或者通孔,通孔会造成阻抗的非连续性,所以应将其数目降到最低;同时,差分线应尽可能走在一面,且不应将信号线跨越分割的平面,如图4所示。

信号跨越一个分割的平面会造成无法预测的回路电流,极可能导致信号质量恶化并产生EMI问题。

注意,图3和图4中,阴影部分为错误方法。

2 RMll模式描述RMII模式在保持物理层器件现有特性的前提下减少了PHY的连接引脚。

一种自适应无线传感器网络监控系统网关设计

一种自适应无线传感器网络监控系统网关设计

一种自适应无线传感器网络监控系统网关设计孔英会;李佩玉;陈智雄;全涛琼【摘要】针对无线传感器网络网关通信方式单一、灵活性差的问题,设计并实现了一种自适应WSN监控系统网关,网关能够根据工作环境选择以太网、WiFi、GPRS 通信方式中的一种来转发无线传感器网络的数据;基于STM32F107微处理器完成了网关的硬件开发和软件设计,实现了数据汇集、通信方式的选择、远程通信等功能;基于VC++完成了监控中心软件的开发,实现了数据接收、图形化显示、存储、查询等功能;搭建校园温湿度监控系统对网关性能进行测试,测试结果表明,该网关有扩展灵活、可靠性高、使用方便等特点.【期刊名称】《计算机测量与控制》【年(卷),期】2015(023)009【总页数】4页(P3178-3181)【关键词】自适应网关;无线传感器网络;STM32F107【作者】孔英会;李佩玉;陈智雄;全涛琼【作者单位】华北电力大学电气与电子工程学院,河北保定071000;华北电力大学电气与电子工程学院,河北保定071000;华北电力大学电气与电子工程学院,河北保定071000;西南电子电信技术研究所,成都610041【正文语种】中文【中图分类】TP393无线传感器网络(WSN)已经被广泛的应用到多种监控系统[1-2],由于监测区域环境复杂多变,很多情况下需要通过网关完成无线传感器网络与监控中心的通信。

国内外关于WSN信息远距离通信研究主要包括基于有线的串口或以太网传输[3]、基于无线的GPRS[4]和WiFi传输[5]等方式,这些研究各有局限[6]。

文献[7]中设计了兼容多通信方式的智能网关,网关稳定可靠,但需要人为选择远程通信模块,不能根据实际网络和环境自动调整,缺乏灵活性。

文献[8]设计了基于ARM的多通信方式的监护仪,提出了自动选择远程通信方式的思想,但是没有给出具体的实现方法。

因此,本文基于STM32F107处理器,设计了一种具有多种通信方式的自适应网关,能够根据监控系统的实际环境、监控对象自适应确定通信方式,有效传输数据给后台服务器。

以太网PHY芯片

以太网PHY芯片

以太网PHY芯片网络中最基础的部件是什么?不是交换机也不是路由器,而是小小的不起眼但又无处不在的网卡。

如果在5年前,或许网卡与您无关,但在如今这网络的时代,无论是上网冲浪还是联网玩游戏,都离不开网卡,更何况,就算您不食人间烟火,多数主板上也会为您集成一块板载网卡。

所以,对于想迈入网络之门的读者而言,先认识网卡,会让您在进行各种网络应用时更得心应手。

一、网卡的主要特点网卡(Network Interface Card,简称NIC),也称网络适配器,是电脑与局域网相互连接的设备。

无论是普通电脑还是高端服务器,只要连接到局域网,就都需要安装一块网卡。

如果有必要,一台电脑也可以同时安装两块或多块网卡。

电脑之间在进行相互通讯时,数据不是以流而是以帧的方式进行传输的。

我们可以把帧看做是一种数据包,在数据包中不仅包含有数据信息,而且还包含有数据的发送地、接收地信息和数据的校验信息。

一块网卡包括OSI模型的两个层——物理层和数据链路层。

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

数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。

网卡的功能主要有两个:一是将电脑的数据封装为帧,并通过网线(对无线网络来说就是电磁波)将数据发送到网络上去;二是接收网络上其它设备传过来的帧,并将帧重新组合成数据,发送到所在的电脑中。

网卡能接收所有在网络上传输的信号,但正常情况下只接受发送到该电脑的帧和广播帧,将其余的帧丢弃。

然后,传送到系统CPU做进一步处理。

当电脑发送数据时,网卡等待合适的时间将分组插入到数据流中。

接收系统通知电脑消息是否完整地到达,如果出现问题,将要求对方重新发送。

二、图解网卡以最常见的PCI接口的网卡为例,一块网卡主要由PCB线路板、主芯片、数据汞、金手指(总线插槽接口)、BOOTROM、EEPROM、晶振、RJ45接口、指示灯、固定片等等,以及一些二极管、电阻电容等组成。

以太网PHY控制器DP83848中文资料

以太网PHY控制器DP83848中文资料

DP83848-单路10/100Mb/s 以太网收发器能量检测模式美国国家半导体公司应用注释1401Bra d Kennedy 2005年9月DP83848-单路10/100Mb/s 以太网收发器能量检测模式AN-1401©2005Na tiona l Semiconductor Corpora tion AN201675www .na tiona 1.0 介绍 美国国家半导体公司的DP83848 10/100 M b/s 单路物理层器件提供了低功耗性能,其包含一个智能电源关闭状态-能量检测模式。

本应用注释详细解释了DP83848能量检测模式的原理和工作过程。

2.0 能量检测模式的原理 能量检测模式提供了当器件未连接到激活的链接对象时节约能量的机理。

当没有电缆存在或者电缆连接到电源处于关闭状态的对象的时候,能够设置DP83848自动进入低功耗状态。

一旦插上电缆器件既可继续工作,或者尝试与远端对象建立活动链接的时候,DP83848能够自动上电进入全功能工作状态。

当进入到低功耗能源检测状态时,DP83848通过禁止除能量检测电路以外的所有接收电路来减少其功率消耗。

此外,DP83848将会在连线上周期性地发送信号,如下文中的详细描述。

3.0 能量检测模式的工作过程 能量检测模式的工作有两个状态组成,一个正常工作状态和一个能量检测状态。

3.1 正常工作状态 在正常工作状态,能量检测逻辑依靠标准的介质关联接口(MDI )活动(加扰空闲,链接脉冲,数据包)来保持电源上电状态。

当能量检测模式使能之后,如果能量检测逻辑检测到没有MDI 活动,DP83848将会转换到一个能量检测状态。

3.2 能量检测工作 当使能并进入到能量检测状态之后,能量检测模式通过专用低功耗电路进行连续监控。

在此期间内,能够通过串行管理接口(MDC/MDIO )访问寄存器。

为了保存能量,大部分的芯片功能仍旧保持关电状态。

在能量检测状态,DP83848在两个功能之间交替切换:监控信号线以探测网络活动和在线上发送脉冲信号。

PHY以太网寄存器解析

PHY以太网寄存器解析

以太网PHY寄存器分析以太网PHY寄存器分析 (1)1、以太网PHY标准寄存器分析 (2)1.1 Control Register (2)1.2 Status register (5)1.3 PHY Identifier Register (8)1.4 Auto-Negotiation Advertisement Register (8)1.5 Auto-Negotiation Link Partner Base Page Ability Register (9)1.6 Auto-Negotiation Expansion Register (10)1.7 AN next page Register/AN Link Partner Received Next Page (10)1.8 MASTER-SLAVE Control Register (10)1.9 MASTER-SLAVE Status Register (12)1.10 Extended Status Register (13)2、PHY扩展寄存器分析 (13)2.1 工作模式控制器 (14)2.2端口驱动模式 (15)2.3 预加重配置 (15)2.4自动协商降格 (16)2.5 Auto-Crossover配置 (17)2.6 MDI信号边沿速率调整 (18)2.7 错误指示寄存器 (18)1、以太网PHY标准寄存器分析PHY是IEEE802.3中定义的一个标准模块,STA(station management entity,管理实体,一般为MAC或CPU)通过SMI(Serial Manage Interface)对PHY 的行为、状态进行管理和控制,而具体管理和控制动作是通过读写PHY内部的寄存器实现的。

PHY寄存器的地址空间为5位,从0到31最多可以定义32个寄存器(随着芯片功能不断增加,很多PHY芯片采用分页技术来扩展地址空间以定义更多的寄存器,在此不作讨论),IEEE802.3定义了地址为0-15这16个寄存器的功能,地址16-31的寄存器留给芯片制造商自由定义,如表1所示。

phy芯片的作用

phy芯片的作用

phy芯片的作用PHY芯片(Physical Layer Transceiver)是网络通信中的一种芯片,它在网络传输中负责实现物理层功能。

PHY芯片的作用主要包括以下几个方面:1. 信号编解码:PHY芯片负责对数字信号和模拟信号之间的转换。

它可以将数字信号转换为模拟信号进行传输,也可以将输入的模拟信号转换为数字信号进行处理。

2. 信道传输:PHY芯片通过调节传输介质的物理特性,如信号频率、幅度和时钟同步等,来实现信号在信道中的传输。

它能够根据网络需求选择合适的传输介质,如以太网、光纤或无线等。

3. 数据调制与解调:PHY芯片负责将数字信号调制为模拟信号进行传输,同时也能将接收到的模拟信号解调为数字信号进行处理。

调制与解调的过程中需要考虑信号失真、抗干扰能力等因素,以确保信号的可靠传输。

4. 链路管理:PHY芯片能够管理和监控链路状态,包括连接的建立、维护和断开等操作。

它可以根据链路质量和实际网络环境进行适应性调整,以提高链路的性能和稳定性。

5. 错误检测与纠正:PHY芯片可以根据特定的协议和算法进行错误检测和纠正,以确保数据传输的可靠性和完整性。

它能够识别和修复传输中可能出现的位错和帧错,并向上层报告错误信息,以便进行相应的处理。

6. 节能功能:PHY芯片能够根据网络使用情况和需求进行动态调整,以实现节能的目的。

它可以根据数据流量的变化调整功耗和工作状态,以减少能源消耗和热量产生。

7. 接口和协议转换:由于不同设备之间的接口和协议可能存在差异,PHY芯片能够将接收到的数据信号转换为适合目标设备的接口和协议,以实现设备之间的兼容性和互操作性。

综上所述,PHY芯片在网络通信中扮演着至关重要的角色。

它通过实现物理层功能,完成了从数字信号到模拟信号的编码和解码,信号的调制与解调,信道的传输和链路的管理等任务,确保了网络数据的快速、稳定和可靠传输。

同时,它还具备节能功能和接口协议转换等特性,为网络通信提供了更多灵活性和可靠性。

phy 芯片

phy 芯片

phy 芯片PHY芯片是指物理层芯片(Physical Layer chip)的简称,是用于数据通信系统中物理层的模拟电路部分的芯片。

它负责将数字信号转换为模拟信号以进行传输,并将接收到的模拟信号转换为数字信号进行处理。

PHY芯片是实现数据通信系统中物理层的关键部件,它对通信系统的性能和稳定性起着重要作用。

PHY芯片通常包括收发器(Transceiver)、时钟电路和滤波电路等功能模块。

其中,收发器是PHY芯片的核心部分,负责将数字信号转换为模拟信号进行发送,同时将接收到的模拟信号转换为数字信号进行处理。

时钟电路用于提供时钟信号以同步发送和接收的数据,确保数据的准确传输。

滤波电路用于抑制干扰信号,提高数据的传输质量。

PHY芯片的工作原理是将数字信号转换为模拟信号进行发送。

在发送端,PHY芯片接收到数字信号后,通过数字到模拟转换器将其转换为模拟信号。

模拟信号经过滤波电路进行滤波处理,去除不必要的高频噪声和干扰信号。

然后,模拟信号经过调制电路进行调制,将其变为适合传输的信号形式。

调制后的信号通过发送器进行放大和驱动,最终发送到传输介质上进行传输。

在接收端,PHY芯片接收到传输介质上的模拟信号后,先经过接收器进行放大和处理,然后通过解调电路进行解调,将模拟信号转换为数字信号。

解调后的数字信号经过滤波电路进行滤波处理,去除噪声和干扰信号,然后传输到数据链路层进行进一步处理。

PHY芯片在数据通信系统中的作用非常重要。

它的设计和性能直接影响到数据的传输速率、抗干扰能力和信号质量等方面。

因此,对于数据通信系统而言,选择和使用合适的PHY芯片是非常关键的。

目前,PHY芯片已经应用于各种数据通信系统中,包括以太网、USB、HDMI等。

随着数据通信技术的不断发展,PHY芯片的性能和功能也在不断提升。

例如,现代的PHY芯片支持更高速率的数据传输,同时具备更好的抗干扰能力和稳定性。

此外,PHY芯片也逐渐向集成化和低功耗方向发展,以满足不同应用场景的需求。

以太网控制芯片讲解及应用

以太网控制芯片讲解及应用

以太网控制芯片讲解及应用通常采用的计算机网络体系结构是一个5层结构的模型,分别是物理层(PHY)、数据链路层(MAC)、网络层(IP)、传输层(Transport)以及应用层(Application)。

传统的以太网控制器将PHY和MAC整合到同一个芯片中,然后通过软件方式实现IP层及以上协议。

例如,ENC28J60就是一款内置物理层(PHY)及数据链路层(MAC)的以太网控制芯片,要实现单片机与网络的互联必须使用软件实现TCP/IP协议栈。

对于芯片厂商来说,必须提供基本的通信协议,如TCP、UDP等的软件代码;对于用户来说,则必须掌握一定的以太网技术及各种协议的知识,需要花费较多的学习时间才能掌握。

一个完整系统的实现一般需要耗费很多时间。

尤其对于低端的8位单片机来说,TCP/IP协议栈的软件实现方法会给MCU带来过重的负载,有可能无法完成数据通信功能。

韩国WIZnet公司生产的以太网控制芯片W5200整合了5层结构中的前4层,即物理层、数据链路层、网络层和传输层,并在内部利用硬件实现了TCP/IP协议栈。

开发者无需专业的网络知识,使用W5200如同控制外部存储器一样简单,为用户提供了最简单的网络接入方法。

全硬件TCP/IP 协议栈完全独立于主控芯片,可以降低主芯片负载且无需移植繁琐的TCP/IP协议栈,便于产品实现网络化更新。

W5200特点以太网控制芯片W5200具有以下特点:⑴W5200支持硬件TCP/IP协议,包括TCP、UDP、ICMP、IPv4、ARP、IGMP、PPPoE和以太网的PHY和MAC层,TCP/IP协议的硬件实现,使得应用协议的实现更简单容易。

⑵支持8个独立的SOCKET同时工作,可同时工作在不同的工作模式。

⑶支持低功耗模式,并支持网络唤醒,最大程度地减少功率消耗和发热。

⑷支持高速SPI接口(SPI MODE 0,3),SPI的时钟最高可达到80MHz,极大地提高了网络通信的护具传输速率。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

引言DP83848C是美国国家半导体公司生产的一款鲁棒性好、功能全、功耗低的10/100 Mbps单路物理层(PHY)器件。

它支持MII(介质无关接口)和RMII(精简的介质无关接口),使设计更简单灵活;同时,支持10BASE~T和100BASE-TX以太网外设,对其他标准以太网解决方案有良好的兼容性和通用性。

MII(Medium Independent Interface)是IEEE802.3u规定的一种介质无关接口,主要作用是连接介质访问控制层(MAC)子层与物理层(PH-Y)之间的标准以太网接口,负责MAC 和PHY之间的通信。

由于MII需要多达16根信号线,由此产生的I/O口需求及功耗较大,有必要对MII引脚数进行简化,因此提出了RMII(Reduced Medium Independent Interface,精简的介质无关接口),即简化了的MII。

1 硬件设计1.1 电路设计DP83848C的收发线路各是一对差分线,经过变比为1:1的以太网变压器后与网线相连。

以太网变压器的主要作用是阻抗匹配、信号整形、网络隔离,以及滤除网络和设备双方面的噪音。

典型应用如图1所示。

图2是DP83848C与MAC的连接电路。

其中,Xl为50 MHz的有源振荡器。

1.2 PCB布局布线布局方面,精度为1%的49.9 Ω电阻和100 nF的去耦电容应靠近PHY器件放置,并通过最短的路径到电源。

如图3所示,两对差分信号(TD和RD)应平行走线,避免短截,且尽量保证长度匹配,这样可以避免共模噪声和EMI辐射。

理想情况下,信号线上不应有交叉或者通孔,通孔会造成阻抗的非连续性,所以应将其数目降到最低;同时,差分线应尽可能走在一面,且不应将信号线跨越分割的平面,如图4所示。

信号跨越一个分割的平面会造成无法预测的回路电流,极可能导致信号质量恶化并产生EMI问题。

注意,图3和图4中,阴影部分为错误方法。

2 RMll模式描述RMII模式在保持物理层器件现有特性的前提下减少了PHY的连接引脚。

RMII由参考时钟REF_CLK、发送使能TX_EN、发送数据TXD[1:0]、接收数据RXD[1:0]、载波侦听/接收数据有效CRS_DV和接收错误RX_ER(可选信号)组成。

在此基础上,DP83848C还增加了RX_DV接收数据有效信号。

2. 1 REF_CLK——参考时钟REF_CLK是一个连续时钟,可以为CRS_DV、RXD[1:O]、TX_EN、TXD[1:O]、RX_DV和RX_ER提供时序参考。

REF_CLK由MAC层或外部时钟源源提供。

REF_CLK 频率应为50 MHz±50×10-6,占空比介于35%和65%之间。

在RMII模式下,数据以50 MHz 的时钟频率一次传送2位。

因此,RMII模式需要一个50 MHz有源振荡器(而不是晶振)连接到器件的X1脚。

2.2 TX_EN——发送使能TX_EN表示MAC层正在将要传输的双位数据放到TXD[1:O]上。

TX_EN应被前导符的首个半字节同步确认,且在所有待传双位信号载入过程中都保持确认。

跟随一帧数据的末2位之后的首个REF_CLK上升沿之前,MAC需对TX_EN取反。

TX_EN的变化相对于REF_CLK是同步的。

2.3 TXD[1:0]——发送数据TXD[1:O]的变换相对于REF_CLK是同步的。

TX_EN有效后,PHY以TXD[1:0]作为发送端。

在10 Mbps模式下,由于REF_CLK的频率是在10Mbps模式中数据速率的10倍。

因此TXD[1:0]上的值必须在10个脉冲期间保持稳定,确保DP83848C能够每隔10个周期进行采样。

发送时序如图5所示,发送延时情况如表l所列。

其中,PMD为物理介质关联层(physical media depen-dent)接口。

2.4 RXD[1:0]——接收数据RXD[1:0]转换是与REF_CLK同步的。

在CRS_DV有效后的每个时钟周期里,RXD[1:O]接收DP83848C的两位恢复数据。

在某些情况下(如数据恢复前或发生错误),则接收到的是RXD[1:O]的预确定值而不是恢复数据。

CRS_DV解除确认后,RXD[1:O]为“00”,表示进入空闲状态。

CRS_DV确认后,在产生正确的接收解码之前,DP83848C将保证RXD[1:0]=“00”。

DP83848C提供的恢复数据总是半字节或成对双位信号的形式,这对于由前导符开始的所有数据值都成立。

因为CRS_DV是异步确认的,不能假设先于前导符的“00”数据会是双位信号形式。

100 Mbps模式下,在CRS_DV确认之后的正常接收过程中,RXD[1:O]将会保持“00”,直到接收器检测到正确的起始串分界符(STart St-ream Delimiter,SSD)。

一旦检测到SSD,DP83848C将会驱动前导符(“01”),后面紧跟着起始帧分界符(Start of Frame. Delimiter,SFD)(“01”“01”“01”“11”)。

MAC应该开始SFD之后的数据。

如果检测到接收错误,在载波活动结束前,RXD[1:0]将会替换为接收字符串“01”。

而由于帧中剩余数据被替换,MAC的奇偶校验将会拒绝错误的信息包。

如果检测到错误的载波(坏的SSD),RXD[1:O]将会替换为“10”,直到接收事件结束。

这种情况下,RXD[1:O]将会从“00”变为“10”,而无需标明前导符(“01”)。

10 Mbps模式下,CRS_DV确认后,RXD[1:O]将会一直保持“00”,直到DP83848C 有恢复脉冲并能对接收数据进行解码为止。

当存在有效接收数据时,RXD[1:O]以“01”为前导符接收恢复的数据值。

因为REF_CLK频率是10 Mbps模式下数据速率的10倍,MAC 对RXD[1:0]上的值每隔10个周期采样一次。

接收时序如图6所示,接收延时情况如表2所列。

2.5 RX_DV——接收数据有效尽管RMII并不要求,DP83848C还是提供了一个RX_DV信号。

RX-DV是没有结合CRS的接收数据有效信号(Receive Data Valid)。

第一个正确的恢复数据(前导符)或伪载波检测到来时,RX_DV被确认,在恢复数据的末两位传送之后解除确认。

通过使用该信号,全双工MAC不必再从CRS _DV信号中恢复RX_DV信号。

2.6 CRS_DV——载波侦听/接收数据有效当接收介质处于非空闲状态时,由PHY来确认CRS_DV。

在载波检测中,CRS_DV依据与工作模式相关的标准异步确认。

10BASE_T模式下,静噪通过时发生该事件。

在100BASE-TX模式,当10位中检测到2个非相邻的零值时,发生该事件。

在RMII规范(1.2版)中提到,载波丢失将导致与REF_CLK周期同步的CRS_DV解除确认,这在RXD[1:O]半字节的首两位出现(即CRS_DV仅在半字节边界解除确认)。

在CRS_DV首次解除确认后,如果DP83848C还有数据位要加在RXD[1:O]上,则在REF_CLK周期中,DP83848C应在每半个字节的第2个双位上确认CRS_DV,并在一个半字节的第1个双位解除确认。

这样,从半字节边界开始,到CRS(载波侦听/接收信号)在RX_DV前结束时,CRS_DV以25 MHz(100 Mbps模式)或2.5MHz(10 Mbps模式)的频率翻转(假设当载波事件结束时DP83848C还有待传送的数据位)。

通过编程DP83848C能够与RMII规范(1.0版)很好地兼容。

在该模式下,CRS_DV 将会异步地与CRS进行确认,但是要等传送完最后的数据时才会解除确认,CRS_DV 在数据包的末端不会被翻转。

该模式虽然不能对来自CRS_DV的CRS信号进行精确的恢复,但是却可以使MAC层的设计更简单。

在出错的载波活动时间中,CRS_DV保持确认。

一旦确认CRS_DV,则可以认为在RXD[1:O]上的数据是有效的。

然而,由于CRS_DV的确认相对于REF_CLK是异步的,因而在正确解码接收信号之前,RXD[1:0]上的数据应为“00”。

2.7 RX_ER——接收错误遵照IEEE802.3标准的规定,DP83848C提供一个RX_ER输出端。

RX_ER可以维持一个或更多的REFCLK周期,来标识一个在当前PHY到帧的传输过程中曾出现的错误(MAC子层不一定能检测到,但PHY可以检测到的编码错误或其他错误)。

RX_ER的变化相对于REF_CLK是同步的。

由于DP83848C是通过以固定数据代替原来数据的方式干扰到RXD[1:O],所以MAC 不需要RX_ER,而只需CRC校验(即奇偶校验)就可以检测到错误。

2.8 冲突检测RMII不向MAC提供冲突标志。

对于半双工操作,MAC必须从CRS_DV和TX_EN信号中产生它自己的冲突检测。

为了实现这一点MAC必须从CRS-DV信号中恢复CRS信号,并和TX_EN进行逻辑与。

注意,不能直接使用CRS_DV,因为CRS_DV可能在帧的末端触发以标志CRS解除确认。

3 RMII模式配置DP83848C的RMII模式配置包括硬件和软件两个方面。

3.1 硬件配置如图2所示,DP83848C的X1(34)脚上提供50 MHzCMOS电平的振荡信号。

在上电和复位时,强制DP83848C进入RMII模式。

方法是通过在RX_DV/MII_MODE(39脚)接入一个上拉电阻。

3.2 软件配置PHY的软件初始化流程如图7所示。

结语DP83848C配合RMII标准接口提供了一种连接方案,可以减少MAC至PHY接口所需要的引脚数目。

该方案使得设计工程师在保持IEEE802.3规范中所有特性的同时,降低系统设计成本。

正因为如此,DP83848C能够更好地适应工业控制和工厂自动化,以及通用嵌入式系统等应用场合。

相关文档
最新文档