CN1653437A - 总线转换装置、系统和方法 - Google Patents

总线转换装置、系统和方法 Download PDF

Info

Publication number
CN1653437A
CN1653437A CNA03810900XA CN03810900A CN1653437A CN 1653437 A CN1653437 A CN 1653437A CN A03810900X A CNA03810900X A CN A03810900XA CN 03810900 A CN03810900 A CN 03810900A CN 1653437 A CN1653437 A CN 1653437A
Authority
CN
China
Prior art keywords
frame
byte
mii
received
xgmii
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA03810900XA
Other languages
English (en)
Other versions
CN100476779C (zh
Inventor
H·贝弗利
P·王
B·布思
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN1653437A publication Critical patent/CN1653437A/zh
Application granted granted Critical
Publication of CN100476779C publication Critical patent/CN100476779C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone

Abstract

公开了一种在总线转换装置中的与介质无关的接口(MII)之间传送数据的系统和方法。可以依照第一数据传输协议格式化在第一MII接收的数据帧。总线转换装置格式化所述数据帧以将其转发到第二MII。所述总线转换装置可以在具有不同的相关联数据速率和数据帧格式的MII之间传送数据帧。

Description

总线转换装置、系统和方法
背景技术
领域:
这里公开的主题涉及依照数据传输格式发送数据。这里公开的主题尤其涉及在不同的数据传输格式之间传送数据。
信息:
数据传输协议典型地定义了怎样在数据链路中发送数据。例如,数据传输协议可以定义要发送的数据帧的格式以及在数据链路中发送数据帧的数据速率。随着数据链路通信协议演进,从源向目的地的数据通信可以包括在数据链路上发送数据帧,所述数据链路依照不同的数据传输协议发送数据。在所述源和目的地之间传送数据的通信路径典型地包括多数据链路,其中在通信中的不同数据链路依照不同的数据传输协议发送数据帧。
附图说明
参考下列图来描述本发明的非限制性的和非穷举性的实施例,其中除非另作说明,否则遍及各个图,相同附图标记表示相同部件。
图1依照本发明实施例示出了在两个与介质无关的接口(mediaindependent interface)(MII)之间的接口。
图2依照如图1示出的所述接口的实施例示出了用于向万兆位MII(XGMII)转发在千兆位MII(GMII)接收的数据帧的接口。
图3依照图1示出的接口的实施例示出了用于向GMII转发在XGMII接收的数据帧的接口。
图4示出了包括耦合来与多个GMII通信的XGMII的本发明的实施例,其还包括如图1所示的GMII到XGMII接口。
图5示出了包括耦合来与多个GMII通信的XGMII的本发明的可供选择的实施例,其还包括如图1所示的GMII到XGMII接口。
图6依照图4和5示出的可供选择的任何一个实施例示出了从多个GMII向单个XGMII转发数据帧的接口。
图7依照图4和5示出的可供选择的任何一个实施例示出了从单个XGMII向多个GMII转发数据帧的接口。
详细说明
贯穿整个说明书对“一个实施例”或“实施例”的参考意思是指:结合所述实施例所描述的特定特征、结构或特性包含在本发明至少一个实施例中。因此,遍及说明书在不同位置出现的短语“在一个实施例中”或“实施例”未必都指的是相同的实施例。此外,所述特定的特征、结构或特性可以在一个或多个实施例中加以组合。
这里所提到的“逻辑”指的是用于执行一个或多个逻辑操作的结构。例如,逻辑可以包括根据一个或多个输入信号提供一个或多个输出信号的电路。这种电路可以包括接收数字输入并提供数字输出的有限态机(finite state machine),或是响应一个或多个模拟输入信号提供一个或多个模拟输出信号的电路。这种电路可以提供于专用集成电路(ASIC)或现场可编程门阵列(FPGA)中。逻辑还可以包括存储在存储器中的机器可执行指令,所述存储器与执行这种计算机可读指令的处理电路相组合。然而,这些仅仅是可以提供逻辑的结构的例子,并且本发明的实施例并不局限于这个方面。
这里提到的“与介质无关的接口”(MII)指的是一种以某一格式从源接收数据或向目的地发送数据的接口,其独立于发送所述数据的特定传输介质。例如,数据收发器可以响应在MII接收的数据而以数据传输格式向传输介质发送数据。数据收发器还可以响应以数据传输格式从传输介质接收数据而向MII提供数据。这里提到的“千兆位MII”(GMII)指的是一种能以大约每秒一千兆位的数据速率从源接收数据或向目的地发送数据的MII。这里提到的“万兆位MII”(XGMII)指的是一种能以大约每秒万千兆位的数据速率从源接收数据或向目的地发送数据的MII。然而,这些仅仅是MII的例子,并且本发明实施例不局限于这些方面。
这里提到的“扩展连接单元接口(Extended Attachment UnitInterface)”是指一种能在MII和数据收发器之间传送数据的数据链路。这里提到的“万兆位扩展连接单元接口”是指一种能在XGMII和数据收发器之间传送数据的数据链路。可以定义其它扩展连接单元接口以用于更高的数据速率,诸如每秒40或100千兆位。
这里提到的“数据字节”指的是定量的数据,诸如八比特。这里提到的“数据字”指的是包括相关数据字节整数的数据量。然而,这些仅仅是数据字节和数据字的例子,并且本发明实施例不局限于这些方面。
这里提到的“数据帧”指的是可以依照数据传输协议从源向目的地发送的数据的量。例如,数据帧可以包括依照数据链路层协议在数据链路中将要从源向目的地发送的数据。数据帧可以与如下大小相关联,所述大小基于诸如在所述数据帧中的数据字节的数目之类的数据量。然而,这些仅仅是数据帧的例子,并且本发明实施例不局限于这个方面。
可以按照数据字节的序列来发送数据帧,该数据字节要在目的地按照所述序列来加以处理。在这种字节序列的一个或多个首字节(leading byte)中,数据帧可以包括作为表明数据帧开始的符号的“起始码(start code)”。在这种数据字节序列中的一个或多个末尾(trailing)数据字节还可以包括作为表明数据分组结束的符号的“终止码(terminate code)”。然而,这些仅仅是起始码和终止码的例子,并且本发明实施例不局限于这些方面。
还可以格式化数据帧以便依照在IEEE标准802.3版本中所提供的以太网(Ethernet)协议来从源向目的地进行传输。这种以太网数据帧包括如下字段:包含为每个目的地和源提供“以太网地址”的地址字段。这个以太网地址还可以被称为物理地址、硬件地址或MAC地址。在接收到以太网帧时,设备可以将所述帧的目的地址和与该设备相关联的物理地址相比较。如果所述目的地址与所述接收设备的地址相匹配,那么所述设备可以读取并递送整个数据帧。
这里提到的“介质访问控制”(MAC)设备是指一种能够实现访问传输介质以发送或接收数据的设备。MAC设备可以被耦合到MII以使客户端进程能经由传输介质发送或接收数据帧。MAC设备还可以与以太网地址相关联以便接收并转发具有相关联的以太网地址的数据帧。然而,这些仅仅是MAC设备的例子,并且本发明实施例不局限于这些方面。
这里提到的“光传输介质(optical transmission medium)”是指一种能在光信号中发送光能的传输介质,由数据信号调制所述光信号,并且可以通过解调所述光信号解调所述数据信号。例如,光传输介质可以包括耦合在发送点和接收点之间的光纤电缆。然而,这仅仅是光传输介质的例子,并且本发明实施例不局限于这一方面。
这里提到的“背板(backplane)”是指一种能够与一个或多个子系统级电路板相耦合的系统级电路板。例如,背板可以包括一个或多个插槽,如用于结合子系统电路板或扩展卡的“背板接口”。背板接口还可以将背板与外部传输介质相耦合。然而,这些仅仅是背板和背板接口的例子,并且本发明实施例不局限于这些方面。
简而言之,本发明实施例涉及一种方法和设备,用于在第一MII和第二MII之间传送数据帧。所述第一MII可以确定所接收的数据帧的大小以便使所述第二MII能向目的地提供所接收的数据帧。然而,这仅仅是实施例的一个例子,并且本发明的其他实施例不局限于这些方面。
图1示出了在两个MII之间的接口12。千兆位MII(GMII)包括发送接口18和接收接口20,而万兆位MII(XGMII)包括发送接口14和接收接口16。依照IEEE标准802.3z或802.3-2000,款项35可以形成发送和接收接口18和20,而依照IEEE P802.3ae,款项46可以形成发送和接收接口14和16。所述接口12可以包括专用集成电路(ASIC)或现场可编程门阵列(FPGA)电路。然而,这些仅仅是在逻辑中怎样实现总线转换装置的例子,并且本发明实施例并不局限于这些方面。
在一个实施例中,所述接口18和20可以与MAC设备(未示出)相耦合,所述MAC设备适合于依照IEEE标准802.3-2000向所述接口12发送数据或从所述接口12接收数据。做为选择,所述接口可以与包括物理编码子层(PCS)(未示出)的设备相耦合,该设备用于依照IEEE标准802.3-2000,款项40向5类电缆发送数据或从5类电缆接收数据。然而,这些仅仅是可以耦合来与GMII相通信的设备的例子,并且本发明实施例并不局限于这一方面。
所述发送和接收接口14和16可以与几个设备中的任何一个相耦合以便向目的地发送数据或从源接收数据。在一个实施例中,所述接口14和16可以与包括物理介质附件(PMA)和物理介质相关(PMD)部分和物理编码子层(PCS)部分的物理层设备相耦合,以便依照IEEEP802.3ae,款项48到51与光传输介质通信。在另一实施例中,所述接口14和16可以与MAC(未示出)相耦合以便在所述XGMII和I/O系统之间传送数据,所述I/O系统诸如开关结构或多路复用数据总线。做为选择,所述接口可以与XGMII扩展子层(XGXS)电路(未示出)相耦合,以便依照IEEE P802.3ae,款项47提供万兆位连接单元接口(XAUI)。然而,这些仅仅是XGMII怎样与设备通信的例子,并且本发明实施例并不局限于这些方面。
图2依照图1示出的接口12的实施例示出了向XGMII转发在GMII接收的数据帧的接口50。GMII发送状态机52响应使能信号GMII_TXEN,接收一个所接收的数据帧的顺序定时的字节宽数据78。寄存器56和58均包括六十四个比特以接收八个所接收的数据字节。复用器(multiplexer)54轮流加载具有所接收的数据字节的寄存器56和58,以便能将数据从一个寄存器中写入先进先出(FIFO)缓冲器72而同时将所接收的数据字节加载到另一个寄存器。
所述GMII发送状态机52还可以通过对按照字节宽数据78加以接收的字节的数目进行计数,来确定所接收的数据帧的大小。所述GMII发送状态机52可以通过例如检测在信号GMII_TX_EN从“0”到“1”的转变来确定数据帧的开始。然后对所有按照字节宽数据78加以接收的数据字节进行计数,直到检测到在所述信号GMII_TX_BN从“1”到“0”的转变,这表明所述帧的结束。然后,可以把作为结果的字节计数存储在缓冲62中,其与存储在缓冲器72中的数据帧相关联。做为选择,所述GMII发送状态机52可以在所述缓冲器72中存储与所存储的数据帧相关联的字节计数。然而,这些仅仅是怎样确定并记录所接收的数据帧大小的例子,并且本发明实施例不局限于这些方面。
缓冲器72响应来自XGMII发送状态机66的请求提供所存储的数据帧,作为均具有八个字节的多字节字。所述XGMII发送状态机66还响应数据帧开始(从所述缓冲器72中读出)和数据帧的结束的检测来控制复用器64和70。所述XGMII发送状态机66可以通过例如检测写入到所述缓冲器62的大小信息(例如,字节计数)或检测所述缓冲器72的大小信息(例如,字节计数)的变化来检测数据帧的开始。在数据帧开始时,所述XGMII发送状态机66可以把信号idle_en置为无效,以使所述复用器64开始发送从所述缓冲器72读出的多字节字74,以及使所述复用器70发送在字节XGMII_TXC_[7:0]上的控制代码8’b00000001。XGMII解码器68响应从所述复用器64发送的首或末尾的多字节字XGMII_TXD_d[63:0],经由所述复用器70在信号txc_delayed[7:0]上提供控制代码。在一个实施例中,起始码“FB”可以作为所述数据帧的首字节插入,其被存储在所述缓冲器72中以致所述起始码是在XGMII_TXD_d[63:0]上输出的所述帧的首字节。
依照实施例,所述GMII发送状态机52可以将起始或终止码插入到寄存器56或58中以表明数据帧的开始或结束。当所述GMII发送状态机52确定将要被载入到所述缓冲器72的数据帧的其余字节比完全的多字节字要少时(例如,在目前举例说明的实施例中少于八字节)时,在读出到XGMII_TXD_d[63:0]的最后的多字节字中插入结束码“FD”,其后跟随着在多字节字的每个其余字节中空闲码“07”。下面的表1根据在最后多字节字的其余数据帧字节的数目示出了包括终止码的最后多字节字的格式。
当从所述缓冲器72中读出每个多字节字时(例如,在目前举例说明的六十四位字的实施例中按照八个来读出),所述XGMII发送状态机66可以通过递减字节计数来确定数据帧(按照64位字读出)的结束。所述XGMII发送状态机66还可以响应数据帧开始和结束的检测来确定将要被插入到XGMII_TXC_[7:0]中的控制代码。当在所述缓冲器72中没有要经由所述XGMII发送的数据帧时,所述复用器70可以输出空闲控制代码8′b11111111,并且所述复用器64响应被置为有效的idle_en信号,可以输出值64′h0707070707070707。如上所述,当检测到在所述XGMII发送状态机66的数据帧的开始和所述idle_en信号的置为无效,所述复用器70可以输出控制代码8′b00000001。在起始和终止条件之间,所述复用器70可以输出8′00000000以表明数据是存在的。当所述XGMII发送状态机66确定在所述缓冲器72的数据帧中的其余字节比完全的多字节字少时(例如,在目前举例说明的实施例中少于八个字节),所述复用器70根据如表1所示的其余字节输出控制代码XGMII_TXC_[7:0]。
  在最后8字节字中数据帧的末尾的字节  XGMII_TXD[63:0] XGMII_TXC[7:0]
  7  07070707070707FD 8′b11111111
  6  070707070707FDxx 8′b11111110
  5  0707070707FDxxxx 8′b11111100
  4  07070707FDxxxxxx 8′b11111000
  3  070707FDxxxxxxxx 8′b11110000
  2  0707FDxxxxxxxxxx 8′b11100000
  1  07FDxxxxxxxxxxxx 8′b11000000
  0  FDxxxxxxxxxxxxxx 8′b10000000
                         表1
在目前举例说明的实施例中,所述复用器64按照顺序定时的六十四位字来提供输出74,而复用器70按照顺序定时的八位字节来提供输出76。在此实施例中,可以用锁存电路(未示出)来将所述六十四位输出74分割成三十二位字,并且将所述八位输出76分割成四位大小以便提供XGMII适应的输出。做为选择,GMII发送状态机52和缓冲器72可以按照三十二位字来存储所接收的数据帧部分。然后所述复用器64可以采用大约是在前述实施例中读出六十四位字的两倍速度来按照三十二位字读出所述输出74。类似地,所述复用器70和XGMII发送状态机66可以在与三十二位输出同步的输出76中提供四位控制代码。
图3依照图1示出的接口12的实施例示出了向GMII转发在XGMII接收的数据帧的接口。在XGMII接收数据帧,作为顺序定时的六十四位输入字106,所述数据帧存储在FIFO缓冲器124中。然后复用器104可以读出所存储的数据帧到GMII,作为顺序定时的八位输出116-GMII_RXD[7:0]。XGMII解码部分108还接收所述输入字106以便检测在所接收的数据帧的第一字节中的起始码(例如,“FB”)以及在所接收的数据帧最后字节中的终止码(例如,“FD”)。所述XGMII解码部分108可以响应检测所述起始和终止码向XGMII接收状态机110提供起始和终止信号。所述起始和终止信号使所述XGMII接收状态机110能够通过对在所接收的数据帧中八位字节的数目进行计数来确定所接收的数据帧的大小(例如,八位字节的数目)。所述XGMII接收状态机110可以通过例如确定在收到所述起始信号和终止信号之间的时差来完成这些。然而,这仅仅是怎样确定在XGMII接收的数据帧大小的例子,并且本发明实施例并不局限于这个方面。
在确定所接收的数据帧的大小时,所述XGMII接收状态机110可以在缓冲器112中写入与存储在所述缓冲器124中所接收的数据帧相关联的大小信息,作为所接收的字节的数目。做为选择,XGMII接收状态机110可以在所述缓冲器124中把所接收的数据字节与所接收的数据帧的大小存储在一起。然而,这些仅仅是怎样存储与数据帧相关联的数据帧大小的例子,并且本发明实施例不局限于这些方面。
依照实施例,复用器104响应来自GMII接收状态机102的byte_en[2:0]信号,输出存储在所述缓冲器124中所述数据帧的字节部分。所述复用器104可以以多字节宽的量(例如,六十四位字)来接收所存储的数据帧并且输出所述数据帧,作为顺序定时的八位字节GMII_RXD[7:0]。在所举例说明的实施例中,当从所述缓冲器124直接向所述复用器104给出数据时,到所述复用器104的输入数据可以按所述GMII的每八个时钟周期来重新填充。与输出所存储的数据帧,作为八位字节GMII_RXD[7:0]同时发生的是,所述GMII接收状态机102(例如,响应在XGMII_RXC[7:0]接收的错误控制码)可以把信号GMII_RXDV置为有效以表明检测到在XGMII接收的数据中的错误。这种错误条件可以由所述XGMII接收状态机110来检测,并且通过在所述缓冲器112或缓冲器124中设置与存储在所述缓冲器124的所接收的数据帧相关联的位来指示这种错误条件。响应所述错误条件的指示,GMII接收状态机102可以通过略过在缓冲器124中所存储的数据帧的字节来禁止经由所述复用器104转发所存储的数据帧。
依照实施例,当在XGMII_RXD[63:0]中的相应的字节不是起始(START)、终止(TERMINATE)或空闲(IDLE)码时,所述XGMII接收状态机110可以通过读出在帧传输期间(用起始到终止成帧)所设置的XGMII_RXC[7:0]的位来检测关于所接收的数据帧的错误条件。在这一条件下,所述XGMII接收状态机110可以通过XGMII解码部分108在缓冲器112或缓冲器124中设置上述的错误位来发信号。当相应的XGMII_RXD[63:0]字节不是起始、终止或空闲码时,所述XGMII解码部分108还可以通过在空闲时间期间(用终止到和始码成帧)XGMII_RXC[7:0]所设置的位来检测分组间的(interpacket)错误。可以忽略该条件。另外,如果XGMII_RXC[7:0]表明数据(在任何位上都是0),那么因为这往往在检测所述起始码之前从而可以忽略所述数据。
依照实施例,所述三位信号byte_en[2:0]选择将由所述复用器104输出的特定字节(在目前举例说明的实施例中可能来自八个字节)。所述GMII接收状态机102还可以根据上述由XGMII接收状态机110存储的大小信息来确定将要发送的所存储的数据帧的最后字节。例如,所述GMII接收状态机102可以递减字节计数,所述字节计数存储在所述缓冲器112或124中,与所存储的数据帧相关联。当确定在所述数据帧中的最后字节时,所述GMII接收状态机102可以提供信号byte_en[2:0]的值以便略过在所存储的数据帧中的终止码(例如,“PD”),并且在最后字节的传输之后且在在终止码之前把所述信号GMII_RXER位置无效。
图4和5示出了依照如图1所示的接口12的包括GMII到XGMII接口的系统。在图4中,XGMII到GMII接口126被耦合来在万兆位连接单元接口(XAUT)数据链路130(在XGMII与接口126相耦合)和多个GMII 128之间传送数据。在所举例说明的实施例中,所述XAUI数据链路130可以扩展通过印刷电路板或背板来在与GMII 128相耦合和GMII兼容设备和外部连接之间提供串行链路。
所述XAUI数据链路130包括与在接口126上的XGMII相耦合的第一XGMII扩展子层(XGXS)设备134,和与数据收发器132相耦合的第二XGXS设备135,在IEEE标准802.3ae,款项47中加以提供。然而应当理解,其它扩展子层设备也可以用来支持对应提高的数据速率的物理传输协议,包括例如40或100千兆位以太网格式。第一和第二XGXS设备134和135可以通过扩展到大约50cm的迹线(trace)耦合在印刷电路板上。所述数据收发器132可以包括物理编码子层(PCS)部分,物理介质附件(PMA)部分和物理介质相关(PMD)部分以便通过在IEEE标准803.3ae,款项49到52中所提供的与介质相关的接口(MDI),来从光传输介质发送或接收数据。
在此实施例中,GMII 128可以与任何一个能够经由GMII通信的设备相耦合,所述设备包括例如MAC设备或包括通过传输介质通信的PCS和PMA部分的数据收发器。然而,这些仅仅是可以是与GMII耦合的设备的例子,并且本发明实施例并不局限于这些方面。
在图5中,XGMII到GMII接口136被耦合来在数据收发器142和多个MAC设备140(与GMII 138相耦合)之间发送数据,所述MAC设备能使多个独立设备通过通用的XGMII发送和接收数据。在一个应用中,所述MAC设备140能使在局域网(LAN)中的多个网络客户端使用所述通用的XGMII。然而,这些仅仅是怎样使用多个MAC在通用的XGMII中用于通信,并且本发明实施例并不局限于这些方面。
图6和7依照图4和5中示出的本发明的可供选择的实施例示出了用于在XGMII和多个GMII之间转发数据帧的接口。图6依照图4和5示出的接口126或136的实施例示出了从多个GMII 178向单个XGMII转发数据帧的接口。每个所述GMII 178都包括缓冲器172,用于存储在参考图2如上所述的GMII发送状态机152按照顺序定时的八位字节加以接收的数据帧。参考图2所述,当还信号GMII_TX_BN也被置为有效时,所述GMII发送状态机152还可以通过对所接收的数据字节进行计数来确定所接收的数据帧的大小。
所述XGMII可以经由复用器180从缓冲器172中按照顺序定时的六十四位字来读出数据帧。尽管每一GMII 178可以独立地接收将存储在相关联的缓冲器172中的数据帧时,但是XGMII发送状态机166却可以控制GMII接口178的选择以提供所存储的数据帧。在所举例说明的实施例中,所述XGMII发送状态机选择从GMII 178接收整个数据帧,然后选择从随后的GMII 178接收一个数据帧的任何部分。所述XGMII发送状态机166可以选择GMII 178以便开始从仅仅具有存储在相关联的缓冲器172中的完全数据帧的那些GMII 178中转发(来自相关联的缓冲器172的)数据帧。因此,在从GMII 178完成读出数据帧时,所述XGMII发送状态机166可以选择随后的GMII 178(在其相关联的缓冲器172中存储有完全数据帧)以便开始通过把在总线182上的信号fifo_read置为有效来向所述复用器180提供数据帧。
参考图2如上所述,所述GMII 178可以在缓冲器162中保持字节计数,所述字节计数可以由XGMII发送状态机166在读出数据帧时加以访问。当从缓冲器172中读出每个多字节字时,所述XGMII发送状态机166可以通过递减所述字节计数来确定数据帧的结束(按照64位字读出)。当所述XGMII发送状态机166确定在所述缓冲器72中的数据帧中其余字节比完全多字节字少时,将终止码“FD”插入到读出到XGMII_TXD_d[63:0]的最后多字节字,其后在所述多字节字的每个其余字节中跟随着空闲码“07”。上述表1示出了用于根据在最后多字节字中其余数据帧字节的数目而插入到六十四位字的末尾字节的格式。
所述XGMI发送状态机166还可以响应检测数据帧的起始和结束来确定将被插入到(如上参考图2所述的)XGMII_TXC_[7:0]中的错误码。当所述XGMII发送状态机166确定在所述缓冲器72的数据帧中其余字节比完全的多字节字少时(例如,在目前举例说明的实施例中少于八字节),所述复用器70根据如表1所示的其余字节输出错误码XGMII_TXC_[7:0]。
图7依照图4和5示出的接口126或136的实施例示出了从单个XGMII向多个GMII 278转发数据帧的接口。在目前举例说明的实施例中,XGMII 280包括用于向选择的GMII 278转发所接收的数据帧的XGMII接收状态机210。所述XGMII接收状态机210可以使用任何一种路由模式-例如循环模式,TCP/IP路由模式来向给定的接口或以太网地址路由具体的IP数据报,从而向所述GMII 278转发所接收的数据帧,在所述以太网地址中,所述XGMII 280与多个地址相关联(每个地址相当于一个GMII 278)。然而,这些仅仅是XGMII怎样在多个GMII之间路由所接收的数据帧的例子,并且本发明实施例并不局限于这些方面。
在一个实施例中,每个GMII 278与唯一的以太网地址相关联,以致所述XGMII接收状态机210可以根据在所述数据帧的目的地以太网地址来向相应的目的地GMII 278路由所接收的数据帧。所述XGMII接收状态机210可以维护将每个GMII 278与其以太网地址相关联的记录或表。对于每个GMII 278,所述XGMII 280可以通过例如从所述GMII 278接收最初的出口数据帧并将最初数据帧的源以太网地址与所述GMII 278相关联,来建立这个表或记录。然后所述XGMII接收状态机210可以根据入口数据帧的目的地以太网地址和与GMII 278相关联的以太网地址的关联,向所述GMII 278路由随后的所述入口数据帧。
如上参考图3所述,在XGMII 280接收数据帧,作为顺序定时的六十四位输入字,其被存储在选择的目的地GMII 278的FIFO缓冲器224中。然后所选择的GMII 278的复用器204可以读出所存储的数据帧,作为顺序定时的八位输出GMII_RXD[7:0]。XGMII解码部分208还接收所述输入字以便检测在所接收的数据帧中的第一字节中的起始码(例如,“FB”)以及在所接收的数据帧中的最后字节中的终止码(例如,“FD”)。所述XGMII解码部分208可以响应检测所述起始和终止代码而向XGMII接收状态机210提供起始和终止信号。所述起始和终止信号使所述XGMII接收状态机210能够通过对在所接收的数据帧中八位字节的数目进行计数来确定所接收的数据帧的大小(例如,八位字节的数目)。
在确定所接收的数据帧的大小时,所述XGMII接收状态机210可以在所选择的GMII 278的缓冲器212中写入大小信息,作为所接收的字节的数目,其与所接收的数据帧相关联。做为选择,XGMII接收状态机210可以在所选择的目的地GMII 278的缓冲器224中把所接收的数据帧的大小与所接收的数据帧字节存储在一起。
当把信号GMII_RXDV置为有效时,所选择目的地GMII 278的复用器204响应来自GMII接收状态机202的byte_en[2:0]信号,输出存储在所述缓冲器124中的数据帧的字节部分。所述GMII接收状态机可以根据由上述的XGMII接收状态机210存储的大小信息来确定将要发送的所存储的数据帧的最后字节。在确定在所述数据帧中的最后字节时,所述GMII接收状态机202可以提供信号byte_en[2:0]的值,以便略过在所存储的数据帧中的终止码(例如,“FD”)并且在终止码之前在最后字节的传输之后来把所述信号GMII_RXDV置为无效。
虽然已经举例说明并描述了本发明目前的实施例,但是应当理解那些本领域内技术人员在不脱离本发明实际范围内可以进行各种其它修改及等价替换。另外,在不脱离这里所描述的中心发明构思的情况下,可以作出许多修改以使特定情况适合本发明的教导。因此,这意味着本发明并不局限于所公开的特定的实施例,本发明包含了落入所附权利要求保护范围内的所有实施例。

Claims (35)

1.一种设备,包括:
第一MII,用于接收包括多个字节的数据帧;和
第二MII,用于向目的地发送所接收的数据帧,并且在向目的地发送之前,在发送所接收的数据帧的尾部的多字节字中插入一个或多个末尾字节,其中,所述末尾字节包括终止码,并且末尾的数目是基于所接收的数据帧的大小。
2.如权利要求1所述的设备,其中第一MII包括用于以顺序定时的字节来接收数据帧的字节宽输入,其中所述设备还包括缓冲器,用于存储在第一MII接收的数据帧并且以顺序定时的字向第二MII提供所存储的数据帧,所述顺序定时的字包括四个或更多的字节。
3.如权利要求1所述的设备,其中第一MII包括千兆位MII,并且第二MII包括万兆位MII。
4.如权利要求1所述的设备,其中第一MII包括字节计数器,用于根据在所接收的数据帧中字节数目的计数来确定所接收的数据帧的大小。
5.一种方法,包括:
在第一MII接收包括多个数据字节的数据帧;
将所接收的数据帧存储为一个或多个多字节字;
经由第二MII向目的地发送所述多字节数据字;并且
在向目的地发送之前,在包括所接收的数据帧的尾部的多字节字中插入一个或多个末尾字节,其中所述末尾字节包括终止码,并且末尾的数目是基于所接收的数据帧的大小。
6.如权利要求5所述的方法,所述方法还包括:
在第一MII的字节宽输入按照顺序定时的数据字节接收所述数据帧;
在缓冲器中存储所述顺序定时的数据字节;并且
以顺序定时的字向第二MII提供所存储的数据帧,所述顺序定时的字包括四个或更多的字节。
7.如权利要求5所述的方法,其中第一MII包括千兆位MII,并且第二MII包括万兆位MII。
8.如权利要求5所述的方法,所述方法还包括对在所接收的数据帧中的数据字节进行计数,以便确定所述数据帧的大小。
9.一种设备,包括:
第一MII,用于接收包括多个字节的数据帧,所述数据帧包括在一个或多个末尾字节中的终止码;和
第二MII,用于把所接收的数据帧从缓冲器发送到目的地,并且根据所接收的数据帧的大小禁止从所述缓冲器传送终止码。
10.如权利要求9所述的设备,其中第一MII包括输入,用于按照包括四个或更多字节的顺序定时的字来接收所述数据帧,并且其中所述设备还包括用于存储在第一MII接收的所述数据帧的缓冲器。
11.如权利要求9所述的设备,其中第一MII包括万兆位MII,并且第二MII包括千兆位MII。
12.如权利要求9所述的设备,其中第一MII包括字节计数器,用于响应在所接收的数据帧中的起始码和终止码来确定所接收的数据帧大小。
13.一种方法,包括:
在第一MII接收包括多个字节的数据帧,所述数据帧包括在一个或多个末尾字节中的终止码;
把所接收的数据帧存储在缓冲器中;
把所存储的数据帧从第二MII发送到目的地;并且
根据所接收的数据帧的大小禁止从所述缓冲器传送终止码。
14.如权利要求13所述的方法,所述方法还包括在第一MII按照包括四个或更多字节的顺序定时的字来接收所述数据帧。
15.如权利要求13所述的方法,其中第一MII包括万兆位MII,并且第二MII包括千兆位MII。
16.如权利要求13所述的方法,所述方法还包括对在第一MII所接收的数据帧中的字节进行计数,以便响应在所接收的数据帧中的起始码和终止码来确定所接收的数据帧的大小。
17.一种系统,包括:
XGMII,用于发送和接收数据帧;
多个MAC设备,每个MAC设备与以太网地址相关联,每个MAC设备与相关联的GMII相耦合,以便向XGMII发送数据帧和从XGMII接收数据帧;和
总线转换装置,用于选择MAC设备以便依照在所述数据帧中目的地的以太网地址和所选择的MAC设备的以太网地址的关联,来从所述XGMII接收数据帧。
18.如权利要求17所述的系统,其中所述系统还包括用于在所述XGMII和光传输介质之间传送数据帧的数据收发器。
19.如权利要求18所述的系统,其中所述数据收发器还包括物理介质附件(PMA)部分,并且所述系统还包括与所述PMA相耦合的光收发器。
20.如权利要求17所述的系统,其中所述总线转换装置还包括:
用于以顺序定时的多字节数据字把从GMII所接收的数据帧转发到所述XGMII的逻辑;
用于在多字节字中插入一个或多个末尾字节的逻辑,所述多字节字向所述XGMII发送所接收的数据帧的尾部,其中所述末尾字节包括终止码并且末尾的数目是基于所接收的数据帧的大小。
21.如权利要求20所述的系统,其中每个GMII包括字节宽输入,用于以顺序定时的数据字节接收数据帧,其中所述总线转换装置还包括缓冲器,用于存储在GMII接收的所述数据帧并且以顺序定时的字向所述XGMII提供所存储的数据帧,所述顺序定时的字包括四个或更多的数据字节。
22.如权利要求20所述的系统,其中总线转换装置还包括字节计数器,用于根据在所接收的数据帧中字节数目的计数来确定所接收的数据帧的大小。
23.如权利要求17所述的系统,其中所述总线转换装置还包括:
用于按照顺序定时的数据字节把在所述XGMII接收的数据帧转发到GMII的逻辑,所述数据帧包括在一个或多个末尾字节中的终止码;和
用于根据所接收的数据帧的大小禁止从所述GMII传送终止码的的逻辑。
24.如权利要求23所述的系统,其中所述XGMII包括输入,用于按照包括四个或更多字节的顺序定时的字来接收所述数据帧,并且其中所述总线转换装置还包括用于存储在第一XGMII接收的数据帧的缓冲器。
25.如权利要求23所述的系统,其中所述总线转换装置还包括用于响应在所接收的数据帧中的起始码和终止码来确定所接收的数据帧大小的字节计数器。
26.一种系统,包括:
用于向XGMII发送数据帧和从XGMII接收数据帧的XAUI数据链路;
用于向所述XGMII发送数据帧和从所述XGMII接收数据帧的多个GMII,每个GMII与以太网地址相关联;和
总线转换装置,用于选择GMII以便依照在所述数据帧中目的地的以太网地址和所选择的GMII的以太网地址的关联,来从所述XGMII接收数据帧。
27.如权利要求26所述的系统,其中所述XAUI数据链路还包括与所述XGMII相耦合的第一XGXS和与背板接口相耦合的第二XGXS。
28.如权利要求26所述的系统,其中所述系统包括与一个GMII相耦合的至少一个MAC设备。
29.如权利要求26所述的系统,其中所述系统还包括与一个GMII相耦合的至少一个数据收发器,所述数据收发器包括物理编码子层部分和物理介质附件部分。
30.如权利要求26所述的系统,其中所述总线转换装置还包括:
用于以顺序定时的多字节数据字把从GMII所接收的数据帧转发到所述XGMII的逻辑;
用于在多字节字中插入一个或多个末尾字节的逻辑,所述多字节字向所述XGMII发送所接收的数据帧的尾部,其中所述末尾字节包括终止码并且末尾的数目是基于所接收的数据帧的大小。
31.如权利要求30所述的系统,其中每个GMII包括用于以顺序定时的数据字节接收数据帧的字节宽输入,其中所述总线转换装置还包括缓冲器,用于存储在每个GMII所接收的所述数据帧并且以包括四个或更多的数据字节的顺序定时的字向所述XGMII提供所存储的数据帧。
32.如权利要求30所述的系统,其中总线转换装置还包括字节计数器,用于根据在所接收的数据帧中字节数目的计数来确定所接收的数据帧的大小。
33.如权利要求26所述的系统,其中所述总线转换装置还包括:
用于按照顺序定时的数据字节向GMII转发在所述XGMII接收的数据帧的逻辑,所述数据帧包括在一个或多个末尾字节中的终止码;和
用于根据所接收的数据帧的大小禁止从所述GMII传送终止码的的逻辑。
34.如权利要求23所述的系统,其中所述XGMII包括输入,用于按照包括四个或更多字节的顺序定时的字来接收所述数据帧,并且其中所述总线转换装置还包括用于存储在XGMII所接收的所述数据帧的缓冲器。
35.如权利要求23所述的系统,其中所述总线转换装置还包括用于响应在所接收的数据帧中的起始码和终止码来确定所接收的数据帧大小的字节计数器。
CNB03810900XA 2002-05-16 2003-04-24 总线转换装置、系统和方法 Expired - Fee Related CN100476779C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/150,366 US7376146B2 (en) 2002-05-16 2002-05-16 Bus conversion device, system and method
US10/150,366 2002-05-16

Publications (2)

Publication Number Publication Date
CN1653437A true CN1653437A (zh) 2005-08-10
CN100476779C CN100476779C (zh) 2009-04-08

Family

ID=29419236

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB03810900XA Expired - Fee Related CN100476779C (zh) 2002-05-16 2003-04-24 总线转换装置、系统和方法

Country Status (8)

Country Link
US (1) US7376146B2 (zh)
EP (1) EP1506489B1 (zh)
CN (1) CN100476779C (zh)
AT (1) ATE374972T1 (zh)
AU (1) AU2003269390A1 (zh)
DE (1) DE60316680T2 (zh)
TW (1) TWI242136B (zh)
WO (1) WO2003098454A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104935475A (zh) * 2014-03-17 2015-09-23 Ls产电株式会社 网络系统中双通道总线数据的监测方法和设备
CN107562661A (zh) * 2017-08-07 2018-01-09 郑州云海信息技术有限公司 一种mii接口到rmii接口的转换装置
CN110875911A (zh) * 2018-09-03 2020-03-10 厦门奇力微电子有限公司 支持自动识别单个数据包数据位数的通信协议及通信方法

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7619975B1 (en) 2001-11-21 2009-11-17 Marvell International Ltd. Generalized auto media selector
KR100429911B1 (ko) * 2002-05-18 2004-05-03 한국전자통신연구원 가변길이 패킷 다중화 및 역다중화 장치와 방법
US7373561B2 (en) * 2002-10-29 2008-05-13 Broadcom Corporation Integrated packet bit error rate tester for 10G SERDES
US8005055B2 (en) * 2003-07-23 2011-08-23 Interdigital Technology Corporation Method and apparatus for determining and managing congestion in a wireless communications system
US20050128977A1 (en) * 2003-07-23 2005-06-16 Interdigital Technology Corporation Method and apparatus for determining and managing congestion in a wireless communications system
US7664134B2 (en) * 2003-09-23 2010-02-16 Broadcom Corporation Programmable Q-ordered sets for in-band link signaling
US7668086B2 (en) * 2003-09-23 2010-02-23 Broadcom Corporation Verification and correction of 10GBASE-X lane routing between nodes
US7296129B2 (en) 2004-07-30 2007-11-13 International Business Machines Corporation System, method and storage medium for providing a serialized memory interface with a bus repeater
US7305574B2 (en) * 2004-10-29 2007-12-04 International Business Machines Corporation System, method and storage medium for bus calibration in a memory subsystem
US7512762B2 (en) 2004-10-29 2009-03-31 International Business Machines Corporation System, method and storage medium for a memory subsystem with positional read data latency
US7331010B2 (en) 2004-10-29 2008-02-12 International Business Machines Corporation System, method and storage medium for providing fault detection and correction in a memory subsystem
US7593416B1 (en) 2004-12-30 2009-09-22 Marvell International Ltd. Media and speed independent interface
US7599391B1 (en) 2004-12-30 2009-10-06 Marvell International Ltd. Media and speed independent interface
US7478259B2 (en) 2005-10-31 2009-01-13 International Business Machines Corporation System, method and storage medium for deriving clocks in a memory system
US7685392B2 (en) 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
US7669086B2 (en) 2006-08-02 2010-02-23 International Business Machines Corporation Systems and methods for providing collision detection in a memory system
US7539842B2 (en) * 2006-08-15 2009-05-26 International Business Machines Corporation Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables
US7720068B2 (en) 2006-08-23 2010-05-18 Solarflare Communications, Inc. Method and system for a multi-rate gigabit media independent interface
US7870459B2 (en) 2006-10-23 2011-01-11 International Business Machines Corporation High density high reliability memory module with power gating and a fault tolerant address and command bus
US7721140B2 (en) 2007-01-02 2010-05-18 International Business Machines Corporation Systems and methods for improving serviceability of a memory system
US8699514B2 (en) 2007-01-12 2014-04-15 Broadcom Corporation Multi-rate MAC to PHY interface

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0300350B1 (en) 1987-07-20 1996-09-25 Matsushita Electric Industrial Co., Ltd. Communication system
US5651002A (en) * 1995-07-12 1997-07-22 3Com Corporation Internetworking device with enhanced packet header translation and memory
US6064674A (en) * 1997-10-22 2000-05-16 International Business Machines Corporation Method and apparatus for hardware forwarding of LAN frames over ATM networks
US6081523A (en) * 1997-12-05 2000-06-27 Advanced Micro Devices, Inc. Arrangement for transmitting packet data segments from a media access controller across multiple physical links
US6556589B2 (en) * 1998-04-17 2003-04-29 Advanced Micro Devices, Inc. Network transceiver for steering network data to selected paths based on determined link speeds
US7031324B1 (en) * 1999-03-22 2006-04-18 Cisco Technology, Inc. Local area network/wide area network switch
US6873630B1 (en) * 1999-05-19 2005-03-29 Sun Microsystems, Inc. Method and apparatus for a multi-gigabit ethernet architecture
US6944163B2 (en) * 2000-02-09 2005-09-13 Nortel Networks Limited 10 Gigabit ethernet mappings for a common LAN/WAN PMD interface with a simple universal physical medium dependent interface
CN100527697C (zh) * 2001-11-09 2009-08-12 维特赛半导体公司 用于交换数据分组或帧的装置和方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104935475A (zh) * 2014-03-17 2015-09-23 Ls产电株式会社 网络系统中双通道总线数据的监测方法和设备
CN104935475B (zh) * 2014-03-17 2019-03-05 Ls产电株式会社 网络系统中双通道总线数据的监测方法和设备
CN107562661A (zh) * 2017-08-07 2018-01-09 郑州云海信息技术有限公司 一种mii接口到rmii接口的转换装置
CN110875911A (zh) * 2018-09-03 2020-03-10 厦门奇力微电子有限公司 支持自动识别单个数据包数据位数的通信协议及通信方法
CN110875911B (zh) * 2018-09-03 2022-03-04 厦门奇力微电子有限公司 支持自动识别单个数据包数据位数的通信协议及通信方法

Also Published As

Publication number Publication date
US20030214974A1 (en) 2003-11-20
US7376146B2 (en) 2008-05-20
CN100476779C (zh) 2009-04-08
TW200404216A (en) 2004-03-16
ATE374972T1 (de) 2007-10-15
TWI242136B (en) 2005-10-21
WO2003098454A2 (en) 2003-11-27
AU2003269390A1 (en) 2003-12-02
WO2003098454A3 (en) 2004-04-08
EP1506489B1 (en) 2007-10-03
DE60316680T2 (de) 2008-07-24
EP1506489A2 (en) 2005-02-16
AU2003269390A8 (en) 2003-12-02
DE60316680D1 (de) 2007-11-15

Similar Documents

Publication Publication Date Title
CN1653437A (zh) 总线转换装置、系统和方法
US9313140B2 (en) Packet preemption for low latency
JP3412825B2 (ja) データネットワーク上でデータパケットをスイッチングする方法および装置
US6625157B2 (en) Apparatus and method in a network switch port for transferring data between buffer memory and transmit and receive state machines according to a prescribed interface protocol
US8964754B2 (en) Backplane interface adapter with error control and redundant fabric
US8787406B2 (en) Method and apparatus for distributing and receiving high-speed ethernet media independent interface blocks
US6081523A (en) Arrangement for transmitting packet data segments from a media access controller across multiple physical links
US9323311B2 (en) Method and system for packet based signaling between A Mac and A PHY to manage energy efficient network devices and/or protocols
US8665902B2 (en) Method and system for reducing transceiver power via a variable symbol rate
US6091707A (en) Methods and apparatus for preventing under-flow conditions in a multiple-port switching device
US8649398B2 (en) Packet network interface apparatus and method
US9564991B2 (en) Ethernet point to point link incorporating forward error correction
US20090154492A1 (en) Method And System For A Distinct Physical Pattern On An Active Channel To Indicate A Data Rate Transition For Energy Efficient Ethernet
US6788680B1 (en) Defferrable processing option for fast path forwarding
US7480282B2 (en) Methods and apparatus for controlling ethernet packet transfers between clock domains
US20110019685A1 (en) Method and system for packet preemption for low latency
US6483840B1 (en) High speed TCP/IP stack in silicon
CN1160908C (zh) 网络控制器
US7321596B2 (en) Packet control system and communication method
CN110995507A (zh) 一种网络加速控制器及方法
CN109547157B (zh) 一种支持时间触发以太网的万兆网络控制器及控制方法
CN115694733B (zh) 通信方法、系统及桥接器
US7706409B2 (en) System and method for parsing, filtering, and computing the checksum in a host Ethernet adapter (HEA)
US20140269689A1 (en) Systems and methods to explicitly realign packets
JPH09506219A (ja) ネットワーク・インタフェース・コントローラ

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090408

Termination date: 20180424