您好,欢迎访问一九零五行业门户网

以太网mach3(以太网mac全称)

本文主要介绍ethernet mach3(以太网mac的全称),下面一起看看ethernet mach3(以太网mac的全称)相关资讯。
从硬件结构上看,以太网接口电路主要由mac(媒体访问控制)控制器和phy(物理层)组成。如下图所示:然而在实际设计中,以上三个部分并不一定是独立的。因为phy集成了很多模拟硬件,而mac是典型的全数字设备。考虑到芯片面积和混合模拟/数字架构,mac通常集成到微控制器中,phy则留在片外。更灵活、更密集的芯片技术可以实现mac和phy的单芯片集成。一般来说,可以分为以下几种:
目前cpu很少集成mac和phy。cpu集成mac和phy使用独立芯片是很常见的。cpu不集成mac和phy,mac和phy采用集成芯片(形成独立网卡),也很常见。mac和phy分别工作在osi七层模型的数据链路层和物理层。具体来说,ieee802.3标准文档的下载地址如下: explore . ieee . org/browse/standards/get-program/page/。它被分成许多部分。我还没有 不要阅读所有的标准文件。大概,第一部分是10mb/s以太网(包括关于mac的规范),第二部分是100 mb/s基带网络介绍,第三部分是1000 mb/s基带网络介绍,第四部分是10 gb/s基带网络介绍。但是,并不意味着每个部分都是独立的。
什么是mac mac(媒体访问控制)?这部分有两个概念:mac可以指硬件控制器,也可以指mac通信协议。该协议位于osi七层协议数据链路层的下半部分,主要负责控制和连接物理层的物理介质。mac硬件看起来是这样的:在发送数据的时候,mac协议可以预先判断数据是否可以发送,如果可以发送,就会在数据中加入一些控制信息,最后将数据和控制信息以指定的格式发送到物理层;在接收数据时,mac协议首先判断输入信息是否有传输错误。如果没有错误,它将删除控制信息,并将其发送到llc(逻辑链路控制)层。这一层的协议是以太网mac,它是由ieee-802。3以太网标准定义。最新的mac同时支持10mbps和100mbps。
以太网数据链路层实际上包括mac(媒体访问控制)子层和llc(逻辑链路控制)子层。一块以太网卡mac芯片的作用不仅仅是实现mac子层和llc子层的功能,还要提供一个符合规范的pci接口来实现与主机的数据交换。
mac从pci总线接收到ip包或其他网络层协议的包后,将其拆分并重新打包成最大1518字节、最小64字节的帧。这个帧包括目的mac地址,它自己的源mac地址和包中的协议类型(例如ip包的类型是80),最后还有一个dword(4byte) crc码。
但是目标的mac地址是从哪里来的呢?这涉及到arp协议(网络层和数据链路层之间的协议)。当一个目的ip地址的数据第一次传输时,会发出一个arp包,它的mac的目的地址是广播地址,上面写着 谁是ip地址xxx的所有者。xxx。xxx? 因为它是一个广播数据包,所以这个局域网中的所有主机都收到了这个arp请求。接收请求的主机将此ip地址与自己的ip地址进行比较,如果不同则忽略,如果相同则发出arp响应包。该ip地址的主机在收到该arp请求包后的arp响应中表示 我是这个ip地址的所有者。 这个包里有他的mac地址。具有该ip地址的未来帧的目的地mac地址被确定。(其他协议如ipx/spx也有相应的协议来完成这些操作。)
ip地址和mac地址的关系存储在主机系统中,称为arp表。由驱动程序和操作系统执行。在windows和linux中,可以使用arp -a命令查看arp表。当接收到数据帧时也是如此。crc校验后,如果没有crc验证错误,则去掉帧头,取出数据包,通过标准接口传递给驱动程序和上层协议栈。最后,我们可以正确地到达我们的应用程序。
什么是mii mii(媒体独立接口)?mii接口是mac和phy之间的标准接口。它是由ieee-802.3定义的以太网行业标准。mii接口提供sta(mac和phy、phy和sta之间的stati接口。管理上),接口支持10mb/s和100mb/s的数据传输速率,数据传输的位宽为4位。 媒体独立性和意味着任何类型的phy设备都可以正常工作,无需重新设计或更换mac硬件。802.3协议最多支持32个phys,但有一些限制:它必须满足协议要求的连接器特性。mii界面如下图所示:涉及到mii,可能会涉及到rs、pls、sta等名词。让 让我们来谈谈它们之间的对应关系。
所谓rs就是调和子层,主要作用是提供mii和mac/pls之间的信号映射机制。他们(rs和mii)之间的关系如下:mii ;的管理接口与sta(站管理)相连。
关于这一部分,请参考ieee以太网标准802.3的22.3信号时序特性部分,其中包含更多细节,如时钟信号。
mii界面主要包括四个部分。一个是从mac层发送数据到phy层的接口,一个是从phy层接收数据到mac层的接口,第三个是从phy层到mac层的状态指示信号,第四个是在mac层和phy层之间传输控制和状态信息的mdio接口。mii包括mac和phy之间的数据接口和管理接口:
数据接口:包括两个独立的通道,分别用于发送器和接收器。每个通道都有自己的数据、时钟和控制信号。mii数据接口总共需要16路信号,包括tx_er(发射编码错误):tx _ er与tx_clk同步。在数据传输过程中,如果tx _ :0(发送数据):txd由rs驱动,与tx_clk同步,在tx_clk的时钟周期内,tx_en有效,txd上的数据由phy接收,否则。txd的数据对phy没有影响。tx_en:发射使能。tx_en由协调子层根据tx_clk的上升沿同步转换。tx_clk(发射时钟):tx_clk(发射时钟)是一个连续的时钟信号(即系统启动时信号一直存在),是tx_en、txd、tx_er的参考时钟(信号方向是从rs到phy)。phy驱动的tx _ clk时钟频率为数据传输速率的25%,有偏差。比如在100mb/s模式下,tx_clk的时钟频率为25mhz,占空比在35%-65%之间。col(检测到):col不需要与参考时钟同步。当控制寄存器中的双工模式位0.8设置为逻辑1(禁止自动协商,手动设置为全双工模式)时,或者当自动协商过程选择全双工工作模式时,col信号的行为未指定。也就是说,半双工模式信号有效,全双工模式信号无效。rxd 3 : 0(received data):rxd由rs驱动,与rx_clk同步,在rx_clk的时钟周期内,rx_dv有效,rxd上的数据由rs接收,否则rxd上的数据对rs没有影响。当rx_dv被去断言时,phy可能通过断言rx_:0上.rx _ er(接收错误):rx _ er与rx_clk同步,在rx通道中的作用与tx通道中tx_er对数据传输的作用类似。rx_clk:除了是rx_dv、rxd、rx_er的参考时钟(信号方向是从phy到rs)之外,和tx_clk的要求一样。。rx_clk也由phy驱动,其可以从接收的数据中提取时钟rx_clk,或者从标称参考时钟(例如,tx_clk参考)驱动rx_clk。crs(载波侦听):crs不需要与参考时钟同步,只要信道中有发送或接收过程,它就需要有效。当控制寄存器中的双工模式位为0.8并设置为逻辑1(禁止自动协商,手动设置为全双工模式)时,或者当自动协商过程选择全双工工作模式时,即半双工模式信号有效而全双工模式信号无效时,crs信号的行为未指定。rx _ dv(接收数据有效):rxd_dv与rx_clk同步,由phy驱动。其功能与传输通道中的tx_en类似,只是时序略有不同:为了让rs成功接收数据,要求rxd _ dv的有效时间必须覆盖整个帧过程。也就是说,不晚于开始帧定界符(sfd)开始,并且不包括任何帧结束定界符。mii以4位半字节模式传输数据,时钟速率为25mhz。它的工作速度可以达到100 mb/s。mii管理接口:它是一个双信号接口。通过管理界面,mac可以监视和控制phy。它的管理是通过使用smi(串行管理接口)总线读写phy的寄存器来完成的。一个是时钟信号(***mdc(管理数据时钟)***)。另一个是数据信号(* * * mdio(管理数据输入/输出)* * *)。mdc:由车站管理实体提供给phy,作为传输mdio信号信息的时间基准。mdc是非周期信号,没有最大或最小时间。不考虑tx_clk和rx_clk的标称周期,mdc的最小高度时间应为160 ns,mdc的最小周期应为400 ns .mdio:这是phy和sta之间的双向信号。它用于在phy和sta之间传输控制信息和状态。sta为mdc同步驱动控制信息,phy同步采样控制信息。mdc的状态信息由phy同步驱动,sta同步采样。phy的一些寄存器是ieee定义的,这样phy就把自己的当前状态反映到寄存器中,mac不断通过smi总线读取phy的状态寄存器,了解phy的当前状态。例如连接速度、双工能力等。当然,你也可以通过smi设置phy的寄存器来达到控制的目的。例如,打开或关闭流量控制、自协商模式或强制模式。无论是物理连接的mii总线和smi总线,还是phy的状态寄存器和控制寄存器,都是由ieee规定的。因此,不同公司的互委会可以像phy一样协调工作。当然,为了配合不同公司的phy的一些独特功能,需要对驱动程序进行相应的修改。
mii支持10mbps和100mbps的操作,一个接口由14根线组成,因此其支持是灵活的。然而,有一个缺点,因为它对一个端口使用了太多的信号线。如果8端换机需要112根线,则224根线将用于端口16,448根线将用于端口32。根据这个接口进行切换是不实际的。因此,现代交换机的生产将使用从mii简化而来的其他标准,如rmii、smii、gmii等。
rmii(简化媒体独立接口)简化媒体独立接口是标准的以太网接口之一,其i/o传输量比mii少。rmii港使用双线传输数据,mii港使用四线传输数据,gmii使用八线传输数据。mii/rmii只是一个接口。对于10mbps的线路速度,mii的时钟速率是2.5mhz,而rmii的是5mhz。对于100mbps的线路速度,mii需要25mhz的时钟频率,而rmi需要50mhz。mii/rmii用于传输以太网数据包。mii/rmii接口是4/2位的。在以太网phy中,需要进行串并转换、编码和解码,才能在双绞线和光纤上传输。其帧格式遵循ieee 802.3(10m)/ieee 802.3 u(100m)/ieee 802.1 q(vlan)。。以太网帧的格式为:前导码的目的mac地址,源mac地址类型/长度数据填充(可选)32位crc。如果有vlan,在类型/长度后添加一个2字节的vlan标记,其中12位代表vlan id,4位代表数据优先级!
gmii(千兆mii) gmii是千兆网络的mii接口,这个也有对应的rgmii接口,也就是简化的gmii接口。gmii使用8位接口数据,工作在125mhz,因此传输速率可以达到1000mbps。同时,它兼容mii规定的10/100 mbps工作模式。gmii接口的数据结构符合ieee以太网标准,该接口的定义见ieee 802.3-2000。
发射机:以千兆速率,向phy提供gtxclk信号、txd、txen、txer信号,与此时钟信号同步。否则,以10/100mbps的速率,phy提供txclk时钟信号,其他信号与该信号同步。其工作频率为25mhz(100m网络)或2.5mhz(10m网络)。gtxclk——千兆tx…信号时钟信号(125 mhz)txclk—— 10/100 mbps信号时钟txd[7…0]——被发送数据tx——发送器使能信号tx——发送器错误(用于破坏一个数据包)接收方:rxclk——接收时钟信号(提取自接收数据,因此,与gtxclk无关)rxd [7...0]——接收数据rxdv——接收数据有效指示rx——接收数据错误指示col——检测(仅用于半双工状态)管理配置:管理配置界面控制phy的特性。该接口有32个寄存器地址,每个地址16位。前16个已经在 ieee 802.3,2000-22.2.4管理功能 ,其余由每个设备指定。mdc——配置接口时钟mdio——配置接口i/o什么是phy phy(物理层)是ieee802.3中定义的标准模块,sta(站管理实体管理实体(通常是mac或cpu)通过smi(串行管理接口)管理和控制phy的行为和状态,具体的管理和控制动作通过读写phy的内部寄存器来实现。phy的基本结构如下:phy是一个物理接口收发器,它实现osi模型的物理层。ieee-802.3标准定义了以太网phy。包括mii/gmii(媒体独立接口)子层、pcs(物理编码子层)、pma(物理媒体附件)子层、pmd(物理媒体依赖)子层和mdi子层。它符合10baset(第14条)和100basetx(第24条和第25条)的ieee-802.3k规范。
ieee802.3标准的22.2.4节管理功能中介绍了phy寄存器,但并未涉及所有寄存器。个别寄存器需要在其他章节中阅读。当然,文件中也提到了在哪里可以找到哪个寄存器。
phy寄存器phy寄存器的地址空间为5位,从0到31最多可以定义32个寄存器(随着芯片功能的不断增加,很多phy芯片采用分页技术扩展地址空间来定义更多的寄存器)。ieee802.3用地址0-15定义了这16个寄存器的功能,地址16-31的寄存器留给芯片厂商自由定义,如下表所示。
(1)官方介绍请参考ieee802.3标准的22.2.4节管理功能。(2)上图中的b和e表示寄存器在特定接口下是基本的还是扩展的。比如在mii接口下,只有0和1寄存器是基本的,其他都是扩展的。注意:扩展是指为ieee保留的扩展功能,不是为phy制造商保留的。phy制造商只能定制寄存器16~31。(3)在ieee标准文件和一些phy手册中,寄存器的位用x.y .表示,例如0.15表示第0个寄存器的第15位。
控制寄存器(寄存器0)寄存器0是phy的控制寄存器,通过控制寄存器可以设置phy的主要工作状态。应该保证控制寄存器每个位的默认值,以便phy在上电或复位时的初始状态是正常操作,无需管理干预。由控制寄存器的每一位完成的功能。再见。
复位:通过将位0.15设置为逻辑1来复位phy。此操作应将状态和控制寄存器设置为默认状态。因此,该操作可能会改变phy的内部状态以及与phy相关联的物理链路的状态。在复位过程中,位15保持为1,复位完成后该位应自动清0。在复位过程完成之前,phy不需要接受对控制寄存器的写操作,并且在复位过程完成之前写除0.15之外的控制寄存器位可能没有效果。复位过程应在0.15位设置的0.5 s内完成。
(1)当改变端口的工作模式(如速度、双工、流量控制或协商信息等)时。),在相应位置设置寄存器后,需要通过复位位复位phy,使配置生效。(2)该位的默认值为0。
环回:当位0.14设置为逻辑1时,phy应进入环回操作模式。当位0.14置1时,phy接收电路应与网络介质隔离,mii或gmii的tx_en置位不应导致网络介质上的数据传输。当位0.14被置位时,phy应接受来自mii或gmii传输数据路径的数据,并将其返回到mii或gmii接收数据路径,以响应tx_en的置位。当位0.14置1时,从置位tx_en到置位rx_dv的延迟应小于512 bt。当位0.14被置位时,除非位0.7被置位,否则col信号应始终保持无效。将位0.14清0允许正常工作。环回是调试和故障诊断中常用的功能。bit14置1后,phy与外部mdi的连接将逻辑断开,mac通过mii/gmii(也可能是其他mac/phy接口)发送的数据不会发送到mdi。相反,在mii/gmii接收通道上环回到phy内部的端口(一般在pcs中),环回功能可用于检查mii/gmii和phy接口部分是否正常工作,如果端口不可用,则可用于故障定位。
(1)需要注意的是,在很多情况下,phy设置环回后,端口可能链路断开,mac无法向端口发送帧。此时,需要设置端口强制链接以使用环回功能。(2)该位的默认值为0。
速度选择:位13和位6这两位共同实现端口的速率控制功能。可以通过自动协商过程或手动速度选择来选择链路速度。当通过清0.12位禁用自协商时,允许手动选择速度。
当自协商禁用且位0.6清0至逻辑0时,将位0.13设置为逻辑1可将phy配置为100 mb/s操作,将位0.13清0可将phy配置为10 mb/s操作。当自协商禁用且位0.6设为逻辑1时,将位0.13清0将选择1000 mb/s操作。将位0.6和0.13设置为逻辑1的组合是为将来的标准化保留的。使能自协商时,可以读取或写入位0.6和0.13,但位0.6和0.13的状态对链路配置没有影响,读取时位0.6和0.13不需要反映链路。如果phy通过位1.15: 9和15.15: 12报告它不能以所有速度运行,则位0.6和0.13的值应该与phy可以运行的速度相对应。并且将该位设置为无效的任何尝试都将被忽略。
(1)要修改速度选择的设置,通常需要重置端口,配置才能生效。因此,在设置该位置时,需要检查自动协商的设置,并通过bit15重置端口。(2)比特0.6和0.13的默认值是比特1.15: 9和15.15: 12所指示的phy可以操作的最高数据速率* *的编码组合。
自协商使能:自协商过程应通过将位0.12设为逻辑1来使能。如果位0.12设置为逻辑1,则位0.13、0.8和0.6不应影响链路配置和站操作,除非自动协商协议另有规定。如果位0.12清0为逻辑0,则无论链路配置和自协商过程的先前状态如何,位0.13、0.8和0.6都将决定链路配置。如果phy通过位1.3报告其缺乏执行自动协商的能力,则phy应在位0.12返回零值。如果phy通过位1.3报告其缺乏执行自动协商的能力,位0.12应始终写入0,任何将1写入位0.12的尝试都应被忽略。
必须注意,对于1000base-t接口,必须打开自动协商。
关断:通过将位0.11设置为逻辑1,phy可以进入低功耗状态。将位0.11清0允许正常工作。phy在断电状态下的特定行为是特定的。在断电状态下,phy应响应管理事务。在转换到断电状态期间以及在断电状态期间,phy不应在mii或gmii。寄生信号在上产生。当位0.11或位0.10设为逻辑1时,phy不需要满足rx_clk和tx_clk信号的功能要求。清除0.11和0.10位后,phy应在0.5 s内满足22.2.2中定义的rx_clk和tx_clk信号的功能要求..
(1)掉电模式一般在软件关闭端口时使用。需要注意的是,端口需要复位,以保证端口的可靠连接。(2)该位的默认值为0。
隔离:通过将位0.10设置为逻辑1,phy可以将其数据路径与mii或gmii电隔离。将位0.10清零允许正常操作。当phy与mii或gmii隔离时,它将不会响应txd数据包以及tx_en、tx_er和gtx_clk的输入。其tx_clk、rx_clk、rx_dv、rx_er、rxd包、col和crs输出应为高阻态。当phy与mii或gmii隔离时,它将响应管理事务(mdc/mdio接口的信号)。
(1)ieee802.3不支持。;隔离时不能调节mdi接口的状态,此时mdi终端可能还在正常运行。实际应用中不使用隔离。(2)目前很多百兆phy芯片的主流mac接口是smii/s3mii,8个端口的接口是相互关联的。设置隔离端口可能会影响其他端口的正常使用,所以在使用过程中注意不要随意改变bit10的状态。
重新启动自动协商:如果phy通过位1.3报告它缺乏执行自动协商的能力,或者如果自动协商被禁用,则phy应该在位0.9返回零值。如果phy通过位1.3报告其缺乏执行自协商的能力,或者如果自协商被禁用,则位0.9应始终被写入0,任何将1写入位0.9的尝试都应被忽略。如果启用了自动协商使能,将位9设置为1将重启端口的自动协商过程。
一般在修改端口的自协商能力信息后,通过将bit9置1来重新启动自协商,使得端口可以按照新的配置建立链路。
双工模式:双工模式可以通过自动协商过程或手动双面选择来选择。当通过清0.12位禁用自协商时,允许手动双面选择。
自动协商禁用时,将位0.8设为逻辑1可将phy配置为全双工工作模式,将位0.8清零可将逻辑0配置为半双工工作模式的phy。启用自动协商后,您可以读取或写入位0.8,但位0.8的状态对链路配置没有影响。如果phy通过位1.15: 9和15.15: 12报告它只能在双工模式下工作,位0.8的值应该对应于phy可以工作的模式,并且任何将位0.8改变为无效指针的尝试应该被忽略。
双工模式的修改配置也需要重置端口才能生效。
碰撞测试:信号(col)测试开关。当col信号需要为测试时,可以通过bit7设置,测试的col脉冲将由phy输出。在实际的测试操作中,端口也可以配置成半双工状态,测试col信号可以通过帧碰撞发送,所以这种配置实用价值不大。单向启用:如果phy通过位1.7报告它没有能力编码和传输来自媒体独立接口的数据,不管phy是否确定已经建立了有效链路,phy都应该在位0.5中返回零值,并且应该忽略任何写入位0.5的尝试。状态寄存器1是phy的状态寄存器,主要包含phy的状态信息。大多数位值由芯片制造商决定,每个位的功能如表3所示。寄存器中每个位的详细信息如下:
100base-t4能力:当读取为逻辑1时,位1.15表示phy有能力使用100base-t4信令规范执行链路传输和接收。当读取为逻辑0时,位1.15表示phy缺乏使用100base-t4信令规范执行链路传输和接收的能力。100base-x全双工:当读取为逻辑1时,位1.14表示phy有能力使用100base-x信令规范执行全双工链路传输和接收。当读取为逻辑0时,位1.14表示phy缺乏使用100base-x信令规范执行全双工链路传输和接收的能力。100base-x半双工:当读取为逻辑1时,位1.13表示phy有能力使用100base-x信令规范执行半双工链路传输和接收。当读取为逻辑0时,位1.13表示phy缺乏使用100base-x信令规范执行半双工链路传输和接收的能力。同类型的其他值与上述基本含义相同:表示phy的工作模式能力,不一一说明。单向性:阅读时当它为逻辑1时,位1.7表示phy有能力编码和传输来自媒体独立接口的数据,而不管phy是否确定有效链路已经建立。当读取为逻辑0时,位1.7表示只有当phy确定已建立有效链路时,phy才能从介质独立接口传输数据。mf前导抑制:当读取为逻辑1时,位1.6表示phy可以接受管理帧,不管它们是否在22.2.4.5.2中描述的前导码模式之前。当读取为逻辑0时,位1.6表示phy不能接受管理帧,除非它们前面有22.2.4.5.2中描述的前同步码模式。自协商完成:当读取为逻辑1时,位1.5表示自协商过程已经完成,并且由自协商协议(条款28或条款37)实现的扩展寄存器的内容有效。当读取为逻辑0时,位1.5表示自协商过程尚未完成,扩展寄存器的内容由自协商协议的当前状态定义,或者写入以进行手动配置。如果通过清零位0.12来禁用自协商,phy应在位1.5返回零值。如果phy缺乏执行自动协商的能力,它也应该在比特1.5处返回值0。在调试和异常故障处理时,可以通过该位寄存器的状态来判断an是否成功,从而进一步检查an相关的设置是否正确,或者芯片的an功能是否正常。
远程故障:当读取为逻辑1时,位1.4表示已检测到远程故障条件。故障的类型以及故障检测的标准和方法是phy特有的。远程故障位必须通过使用锁存功能来实现,因此远程故障的发生将导致远程故障位被置位,并保持置位状态,直到其被清除。每当通过管理接口读取寄存器1时,应清除远程故障位,也应通过phy复位将其清除。远程错误指示位。bit4=1表示链接伙伴中有错误。至于具体的错误类型和错误检测机制,在规范中没有定义,phy的厂商可以自由发挥。一般来说,制造商会在其他寄存器中指明更详细的错误类型(寄存器16-31由制造商自己定义)。远程故障是端口相关故障验证中的重要指示信息,通过互联双方的远程故障信息(可添加其他特定错误指示),有助于定位故障原因。自协商能力:当读取为逻辑1时,位1.3表示phy有能力执行自协商。当读取为逻辑0时,位1.3表示phy缺乏执行自协商的能力。链接状态:当读取为逻辑1时,位1。. 2表示phy已经确定有效链路已经建立。当读取为逻辑0时,位1.2表示链路无效。确定链接有效性的标准是phy特有的。链路状态位应使用锁存功能实现,以便链路故障条件将导致链路状态位被清除,并保持清除状态,直到通过管理接口读取为止。此状态指示旨在支持30.5.1.1.4中定义的管理属性。在实际应用中,端口的状态一般由bit2来判断。而且一般mac芯片也是通过轮询phy的这个寄存器值来判断端口的链路状态(这个过程可能有不同的名字,比如bcm叫链路扫描,marvell叫phy轮询。)如上所述,在使能的情况下,只有当自协商完成指示它已经完成时,链路状态的信息才是正确和可靠的,否则可能。jabber检测:当读取为逻辑1时,位1.1表示已经检测到音爆条件。该状态指示旨在支持30.5.1.1.6中定义的管理属性,30.5.1.3.1 njabber中定义的ajabber和mau通知。检测jabber条件的标准是特定于phy的。jabber检测位应使用锁存功能来实现,以便jabber条件的发生会导致jabber检测位保持置位,直到被清零。每次通过管理接口读取寄存器1时,jabber检测位都应清零,也应通过phy复位清零。ieee802.3将jabber解释为 一种状态,在这种状态下,一个站的传输时间长于最大允许的数据包长度,这通常是由故障状态引起的。这表示链接伙伴的发送时间超过了指定的最大长度。值得注意的是,jabber detect只有在10base-t模式下才有意义,100和1000m模式下没有定义jabber。phy标识符寄存器2和3存储phy芯片的型号代码,高16位存储在寄存器2中(phy id1),低16位存储在寄存器3中(phy id2)。由芯片制造商定义,在实际应用中,软件可以通过读取这两个寄存器的内容来识别phy的类型。编号和版本。phy标识符应由ieee分配给phy制造商的组织唯一标识符(oui)组成(只有3到24位,总共22位),加上6个制造商的型号和4个制造商的修订号。phy标识符旨在提供足够的信息来支持30.1.2中要求的oresourcetypeid对象。oui的第三位分配给第2.15位,第四位分配给第2.14位,依此类推。位2.0包含oui的第18位。位3.15包含oui的第19位,位3.10包含oui的第24位。第3.9位包含制造商的msb车型。第3.4位包含制造商的lsb车型。3.3位包含制造商的msb。;的版本号,第3.0位包含制造商的lsb。;的版本号。具体如下图所示:
自动协商广告寄存器(寄存器4) (r/w)寄存器4是自动协商能力通知寄存器。在annenable(见寄存器0)的前提下,端口会根据该寄存器的相关配置,通过flp通知mdi上的自协商信息。当配置为禁用状态时,寄存器4的配置将不起作用,端口的工作模式由控制寄存器中的配置决定。该寄存器包含phy的通知能力,该通知能力将在自动协商期间被传送到其链路伙伴。基本页面的位定义在ieee标准的28.2.1.2中定义。上电时,自协商开始前,该寄存器应具有以下默认配置:
选择器字段(4.4: 0):设置为适当的代码,如ieee标准附录28a中所规定。保留(4.14):设置为逻辑0。技术性字段(4.11: 5):根据mii状态寄存器(寄存器1) (1.15: 11)中设置的值或等值进行设置。另见28.2.1.2.3和附件28d。链路码字编码在flp突发中传输的基本链路码字(基本页面)应该传达如图28-7所示的编码。自动协商功能可以使用下一页功能来支持其他页面。在下一页交换中使用的链接码字的编码在28.2.3.4定义。在flp突发中,d0应该是第一个发送的位。
下一页功能使用标准的自动协商仲裁机制来允许交换任意数据。该数据由可选的下一页信息携带,其遵循基本链路码字的传输和确认过程。定义了四种类型。信息页、无格式页、扩展信息页和扩展无格式页的下页编码。对于这部分,请参考ieee标准的28.2.3.4下一页功能。在ieee标准中,自动协商广告寄存器的所有部分都在单独的章节中介绍。详情如下:
选择器字段:选择器字段(s [4: 0])是一个5位宽的字段,对32个可能的消息进行编码。链路码字中的选择器字段s [4: 0]用于标识由自动协商发送的消息的类型。下表列出了可能发送的消息类型。随着新信息的发展,该表将相应更新。未指定的组合保留供将来使用。选择器字段的保留组合不会被传输。* * *我们接触的以太网phy符合ieee802.3规范,选择器字段=0001,这个区域不能随意更改(很多phys把这个区域设计成只读寄存器,以免被修改)* * *。技术性字段:技术性能力字段(a [6: 0])是7位宽的字段,其包含指示选择器字段值的具体支持技术的信息。这些位被映射到各种技术,以便可以为单个选择器字段值并行地通告能力。附录28b.2和28d描述了ieee 802.3选择器的技术能力字段代码。各种技术可以在链接码字中公布。设备应支持其所推广技术的数据服务能力。扩展的下一页:扩展的下一页(xnp)被编码在基本链路码字的位d12中。当扩展下一页位设置为逻辑1时,表示本地设备支持扩展下一页的传输,当设置为逻辑0时,表示本地设备不支持扩展下一页。扩展下一页的使用与协商的数据速率、媒体或链路技术无关。根据28.2.3.4的扩展下一页功能规范使用扩展下一页位。下一页:下一页(np)在d15中编码,与选择器字段值或链接码字编码无关。支持附加链路码字的发送和接收是可选的。如果不支持下一页功能,np位应始终设为逻辑0。如果器件实现了下一页功能并希望交换下一页,np位应设为逻辑1。通过将np位设置为逻辑0,器件可以实现下一页功能,并选择不参与下一页交换。下一页功能是在28.2.3.4定义的。远程故障:远程故障(rf)编码在基本链路码字的位d13中。默认值是逻辑零。遥远过程故障位为传输简单的故障信息提供了标准的传输机制。当自协商通告寄存器(寄存器4)中的rf位设为逻辑1时,发送的基本链路码字中的rf位设为逻辑1。当接收到的基本链路码字中的rf位被设置为逻辑1时,如果有mii管理功能,mii状态寄存器(寄存器1)中的远程故障位将被设置为逻辑1。自协商链路伙伴关系寄存器(register 5) (ro)寄存器5存储本地phy接收到的对端phy通告的端口能力,寄存器5的结构与寄存器4基本相同。
自动协商扩展寄存器(寄存器6) (ro)寄存器6存储phy自动协商过程中的异常信息。从这个寄存器中,我们可以得到链接伙伴是否支持自动协商以及下一页是否被自动接收的信息。
自动协商下一页发送寄存器(寄存器7) (r/w)在支持下一页功能时,自动协商下一页发送寄存器包含要发送的下一页链路码字。(见表28-6)内容在28.2.3.4定义。上电时,该寄存器应包含默认值2001h,表示消息代码设置为空的消息的消息页。该值可以由设备希望发送的任何有效的下一页消息代码来代替。写入该寄存器应设置mr_next_page_loaded为真。
自动协商链接伙伴收到下一页寄存器(寄存器8) (ro)待续。。。
不带参考文件的附件以太网标签的ieee标准:
寄存器接口
了解更多ethernet mach3(以太网mac的全称)相关内容请关注本站点。
其它类似信息

推荐信息