系统分组接口的制作方法

文档序号:7605940阅读:200来源:国知局
专利名称:系统分组接口的制作方法
技术领域
本发明涉及通信设备,具体而言,涉及将通信设备的至少两个集成电路进行接口。
背景技术
在通信网络中,网络设备在一组输入接口之一处接收数据,并且将数据转发到一组输出接口中的一个或多个。用户通常要求这种网络设备尽快进行操作,以便维护高数据速率。作为一类网络设备,交换机通常是数据链路层设备,其使得多个物理网络(例如局域网(LAN)或广域网(WAN)网段)被互连成单个更大的网络。在最一般的情形中,这些类型的网络以分组形式传输数据。分组是作为数据单元在传输介质上发送的信息的逻辑分群(grouping)。分组通常包括例如用于路由、同步和差错控制的头部和/或尾部信息。头部和/或尾部信息围绕分组中包含的有效载荷数据。术语单元、数据报、消息、帧和片段也用于描述开放式系统互连参考模型(OSI参考模型)的各种层处的逻辑信息分群。这里所使用的术语“分组”应该从其最宽的意义上来理解,并且可包括其他术语,包括单元、数据报、消息、帧和片段等等。
网络设备(例如交换机)的数据速率所依赖的一个因素是网络设备的板级系统互连接口。板级系统互连接口是板级设备用来彼此直接通信的接口,所述板级设备例如是专用集成电路(ASIC)、网络处理芯片(NPU)、分组处理引擎、队列设备、架构设备和其他板级设备。与板级系统互连接口耦合的设备可以在相同板上或不同板上。在设计拙劣的板级系统接口的情况下,网络设备可能无法高效地通过网络设备以高数据速率传送分组。这可能会不利地影响网络设备的总体数据速率。
一种常用的板级接口是SPI-4.2系统分组接口,它由光互连网论坛在“System Packet Interface Level 4(SPI-4)Phase 2OC-192 System Interfacefor Physical and Link Layer Devices,Optical Internetworking ForumImplementation Agreement,January 2001”(“SPI-4.2 interfacespecification”)中描述。SPI-4.2接口是用于OC192物理和链路层设备的系统分组接口,其被设计为在设备间提供约10Gbps的数据速率。但是,虽然SPI-4.2常被实现,但它也不是没有限制的。例如,SPI-4.2接口不向许多希望以明显高于10Gbps的数据速率进行操作的网络设备配置提供实用的解决方案。因此,希望具有与SPI-4.2接口类似的接口,然而还要提供高于当前用SPI-4.2接口可获得的数据速率。

发明内容
已发现,可操作以从网络发送数据和向网络发送数据的网络设备的集成电路可使用发送和接收接口来在网络设备的其他集成电路之间传输数据。接口能够以高数据速率在集成电路间传送数据并且缓冲状况,以使得接口不会显著减慢网络数据传送。
因此,本发明的一个方面提供了一种装置,其包括第一集成电路(IC)、第二IC以及将第一IC耦合到第二IC的接口。接口利用多个数据传输线在第一IC和第二IC传送有效载荷控制信息。在传送有效载荷控制信息之后的时钟周期转换之时,接口利用同样的数据传输线以至少约20Gbps的数据速率在第一IC和第二IC之间传送分组化数据。一比特控制信号被接口用于标识有效载荷控制信息何时出现在多个数据传输线的全部之上。
本发明的另一个实施例提供了一种装置,其包括发送数据总线、发送控制信号、接收数据总线和接收控制信号。发送数据总线被配置为发送有效载荷控制信息,并且在传送有效载荷控制信息之后的时钟周期转换之时,以至少约20Gbps的数据速率发送分组化数据。一比特控制信号被用于标识发送数据总线上的数据是有效载荷控制信息还是分组化数据。接收数据总线被配置为接收有效载荷控制信息,并且在接收有效载荷控制信息之后的时钟周期转换之时,以至少约20Gbps的数据速率接收分组化数据。接收数据总线独立于发送数据总线进行操作。一比特接收控制信号被用于标识接收数据总线上的数据是有效载荷控制信息还是分组化数据。
前述内容是概要,从而必然包含简化、概括和细节省略;因此,本领域的技术人员将会意识到概要只是示例性的而不希望以任何方式成为限制性。正如本领域的技术人员容易看出的,这里所公开的操作可以多种方式来实现,并且这种变化和修改可以不脱离本发明及其最宽的方面的情况下进行。仅由权利要求书所限定的本发明的其他方面、发明性特征和优点将从以下阐述的非限制性详细描述中显现出来。


通过参考以下描述和附图可获得对本发明及其优点的更完整的理解,附图中类似的标号表示类似的特征。
图1是采用本发明的系统的框图;图2A和2B是图示根据本发明的各种实施例的示例性接口的框图;图3图示了根据本发明的一个实施例的控制字;图4图示了示出本发明的数据总线的各种状态的状态图;图5图示了时序图,其中根据本发明利用静态对齐来对齐数据;图6A和6B图示了可由实现本发明的一个实施例的接收设备所利用的示例性字对齐电路;图7图示了时序图,其中根据本发明利用动态对齐来对齐数据;图8图示了根据本发明的一个实施例的带有动态对齐的接口时钟控制(clocking);图9是图示根据本发明的状况总线的状态的状态图;图10是根据本发明的状况总线的时序图;图11是图示根据本发明的接口的兼容性的框图。
具体实施例方式
以下阐明了至少对于用于实现这里所描述的一个或多个设备和/或过程的最佳预期模式的详细描述。描述希望是示例性的,而不应当被理解为限制性的。
绪论本发明提供了用于网络设备内数据传送的高带宽接口。许多网络以高带宽进行操作。因此,网络设备在内部必须以不比网络的数据速率慢的速率传送网络数据(例如分组、帧、单元等)。网络设备内的集成电路间的接口是一个关键数据路径,并且影响数据速率。这种接口应当能够以如果不大于网络带宽则至少能与网络带宽相比拟的速率处理带宽,以免对网络流量造成瓶颈。本发明提供了一种接口,它使得网络数据能够被以高带宽(例如20Gbs)在网络设备的集成电路间传送,并且还能被配置为与SPI-4.2接口相接口。
示例性网络设备图1是采用本发明的系统100的框图。在图1的示例中,系统100是路由器,虽然本发明也可用于网络中数据传送时所利用的任何网络设备中(例如交换机、网络存储处理设备等)。系统100包括多个(例如N个)线路卡102,每个线路卡都具有类似的电路并且都耦合到交换架构104。除非特别指定,否则这里线路卡102是指线路卡102(1)-102(N)中的任何一个。未示出与系统100相关联的各种硬件和软件组件,以帮助清晰阐述。
注意,变量标识符“N”被用于图1中(和本申请的其他部分中),以便更简单地表示一系列相关或类似的元件的最后一个元件(例如线路卡102(N))。这种变量标识符的重复使用不是想要暗示这种元件系列的大小之间的相关性,虽然可能存在这种相关性。使用这种变量标识符不要求每个元件系列与由相同变量标识符定界的另一系列具有相同数目的元件。更确切而言,在每个使用实例中,由“N”所标识的变量与相同变量标识符的其他实例相比可以有相同或不同的值。
在图1的示例中,线路卡102在通信线路106上向本地网络(未示出)的客户端(未示出)发送数据流,或从这些客户端接收数据流。在本发明的一个实施例中,通信线路106根据10吉比特以太网(GbE)协议运送分组。
通信线路106上提供的输入分组被线路卡102的端口108所接收。从端口108处,分组被经由接口112传送到链路聚集设备110。从链路聚集设备110处,分组分别经由接口118和120被传送到网络处理器114和架构接口116。一般而言,架构接口116将数据流从一个格式(例如分组)转换为另一个格式(例如公共交换接口单元)。从架构接口116处,分组被传送到交换架构104。通过类似的方式,分组沿着通过系统100的相反路径被从交换架构104传送到客户端设备。
为了不对网络流量形成瓶颈,关键是使分组尽可能快地通过系统100。从而,接口112、118和120应当为在各集成电路之间传送的分组提供高数据传送速率。因此,在本发明的一个实施例中,接口112、118和120使得分组能够被以约20Gbs(例如19Gbps到38Gbps之间)的数据速率在集成电路之间传送。此外,接口112、118和120与现有接口相兼容,例如系统分组接口第4层第2期(SPI-4.2)接口。被配置为根据本发明的接口进行操作的设备与用SPI-4.2接口以及与其类似的接口所配置的设备相兼容,并且可在用SPI-4.2接口以及与其类似的接口所配置的设备之间传送数据。注意,图1的系统和集成电路仅提供了描述本发明的示例性上下文。本发明不限于对图1的集成电路进行接口,而是可用于对网络数据的传送之中所利用的其他设备进行接口。
示例性接口图2A是图示根据本发明的一个实施例的接口的框图。在图2A所示的实施例中,接口200使得数据能够被以高数据速率(例如约等于20Gbps)在设备A 202和设备B 204之间传送。在本发明的一个实施例中,设备202和设备204在OSI参考模型的不同层中操作。例如,设备202可以是物理层设备(例如SONET成帧器、以太网MAC等),设备204可以是网络层设备(例如网络处理器,以及其他这种设备)。
接口200包括发送接口206和接收接口208。发送接口206包括发送数据总线210和发送状况总线212。接收接口208包括接收数据总线214和接收状况总线216。发送数据总线210和接收数据总线214是被配置为彼此以相反方向传送数据的单向数据总线。发送接口206和接收接口208包括各个设备202和204的带外状况信息,以便可更高效地利用每个接收设备的FIFO。这里所使用的接收设备(或接收器(sink))是用来指被配置为根据本发明在数据总线上接收数据的设备的,发送设备(或源)是用来指被配置为根据本发明在数据总线上发送数据的设备的。单个设备可以既是接收设备又是发送设备。例如,设备202对于发送接口206而言是接收设备,而对于接收接口208而言是发送设备。类似地,设备204对于接收接口208而言是接收设备,而对于发送接口206而言是发送设备。在本发明的一个实施例中,发送数据总线210、发送状况总线212、接收数据总线214和接收状况总线216使用IEEE 1596.3-1996中定义的低电压差动信令(LVDS)。但是也可使用其他可比拟的信令技术。
发送数据总线210包括两个发送数据时钟信号(TDCLK1和TDCLK2)、32个数据信号(TDAT[15:0]和TDAT[31:16]),以及单个发送控制信号(TCTL)。发送状况总线212包括一个发送状况时钟信号(TSCLK)和两个发送状况信号(TSTAT[1:0])。类似地,接收数据总线214包括两个发送数据时钟信号(RDCLK1和RDCLK2)、32个数据信号(RDAT[15:0]和RDAT[31:16])以及单个控制信号(RCTL)。接收状况总线216包括接收状况时钟信号(RSCLK)和两个接收状况信号(RSTAT[1:0])。发送接口206和接收接口208分别耦合到控制器218和220。控制器218和220包含用于每个接口的配置信息,并且还进行操作以控制每个接口。发送接口206和接收接口208彼此独立地进行操作。两个接口彼此都是等同的,只不过每个接口按相反方向传送数据和状况。因此,为了帮助清晰阐明同时保持简明扼要,将提及每个接口的信号,而不管其是发送接口206的一部分还是接收接口208的一部分。例如,SCLK将会用来指TSCLK和RSCLK,DAT[15:0]是指TDAT[15:0]和RDAT[15:0],以此类推。
在一个实施例中,接口200利用了时钟转发。通过利用时钟转发,在每个总线上提供了单独的时钟信号,而不是在其他信号中嵌入时钟信号。这为接收设备免除了必须恢复时钟信号的负担。在本发明的一个实施例中,DCLK1和DCLK2利用了速率为311 MHz的源同步双边沿时钟控制。速率为311 MHz的双边沿时钟控制等同于每个信号622 Mbps的数据速率。由于DAT[31:0]包含32个数据信号,因此根据本发明的接口提供了622 Mbps*32或约20 Gbs的数据速率。
正如下文更充分描述的,DAT[31:0]上的数据可被静态或动态地与时钟信号对齐。在静态对齐中,数据比特及其对应的时钟之间的相位关系必须被严格控制。在动态对齐中,接收器补偿时钟和个别的数据比特之间的相位差异。当信号路径长度和/或操作频率产生了时钟和数据之间的相当大的偏斜时,优选使用动态对齐。在静态对齐中,DCLK2被用于对DAT[31:16]采样,DCLK1被用于对DAT[15:0]和CTL采样。DCLK1和DCLK2彼此同相。在动态对齐中,DCLK1优选地被用于对DAT[31:0]和CTL采样。DCLK2可被三态。
数据字和带内控制字被在DAT[31:0]上设备202和204之间传送。这里所使用的“带内”信号描述了与另一个信号在相同的通信线路上传送的信号。这里所使用的字是32比特的。这里所使用的数据字是指32比特的分组数据(包括头部信息、有效载荷数据、尾部信息、填充等中的某些或全部)。以下图3中所描述的控制字是指32比特的控制信息、奇偶信息和其他信息。字(控制字或数据字)是在上部和下部两部分中在DAT[31:0]上传送的。DAT[15:0]用于传送字的较低的16比特,DAT[31:16]用于传送字的较高的16比特。以下给出数据传送过程和对于示例性控制信息的描述。
单个控制信号CTL被用于区分DAT[31:0]上的数据字和控制字。CTL伴随DAT[31:0]上的每个传送。例如,在当前描述的实施例中,CTL在CLK1的上升沿和下降沿被驱动,这是因为数据在CLK1的上升沿和下降沿都被传送。CTL转变为高(例如逻辑1),以通知控制字出现在DAT[31:0]上。否则CTL保持低(例如逻辑0)。使用单条控制x线提供了本发明的接口和其他接口之间的兼容性(例如在本发明上传输的控制字的数据速率可与SPI-4.2接口的兼容)。此外,使用单条控制线来标识DAT[31:0]上的控制字降低了接收设备的复杂度。例如,利用单条控制线,接收设备在一比特时间中只需要处理单个控制字。
除了提供接口以用于以约20Gbps的速率传送数据和控制字外,接口200还提供了独立于数据和控制字的传送的状况信息的传送。参见图2,发送状况总线212包括TSTAT[1:0]和TSCLK。类似地,接收状况总线216包括RSTAT[1:0]和RSCLK。STAT[1:0]提供了从接收设备到发送设备的下行队列信息。STAT[1:0]传送先进先出队列(FIFO)状况信息、差错检测和成帧信息,并且由SCLK进行时钟控制。在一个实施例中,状况的数据速率是数据总线的数据速率的1/8。对于状况信息的传送的详细描述在以下给出。
图2B图示了本发明的替换实施例。接口250与接口200类似,只不过为每个接口提供了单个时钟DCLK。图2A中所示的实施例比起图2B中所示的实施例而言所提供的一个优点是不要求比特解偏(bit-deskew)电路。因为图2A中所示的实施例一般要求数据信号踪迹被严密匹配,因此将较少的信号与时钟信号相关联会使得对齐信号较容易。例如,通过分别为DAT[15:0]和DAT[31:16]提供两个时钟信号DCLK1和DCLK2,DCLK1和DCLK2将会更少地受抖动、噪声和与电路设计相关联的其他影响因素的影响。从而可放松对于在与本发明接口的两个设备之间路由信号的约束。
数据传送过程在讨论数据和控制字如何在DAT[31:0]上被传送的细节之前,介绍和描述示例性控制字将会是有益的。
示例性控制信息图3图示了根据本发明的一个实施例的控制字300。控制字300为32比特宽,并且除了用于标识其他信息以外,还用于标识在DAT[31:0]上传送的分组的分组开始、分组结束和端口地址。在当前描述的实施例中,控制字300包括奇偶字段(DIP-4)302、端口地址字段(ADR)304、分组开始(SOP)字段306、分组结束(EOP)状况字段308、类型字段310、扩展奇偶字段312、反向字段314和扩展EPO状况字段316。要意识到,其他实施例可按不同方式(编码、结合多个字段等)来对字段302-316中提供的信息进行分群。此外,其他实施例可包括字段302-316中提供的信息的子集。
奇偶字段302和扩展奇偶字段312提供了控制字和之前紧邻的数据字上的奇偶性。奇偶字段302是在在DAT[15:0]上传送的控制字的下部以及之前紧邻的在最后的控制字之后在DAT[15:0]上传送的16比特数据字上计算的。扩展奇偶字段312是在在DAT[31:16]上传送的控制字的上部以及之前紧邻的在最后的控制字之后在DAT[31:16]上传送的16比特数据字上计算的。在一个实施例中,奇偶性是“System Packet Interface Level 4(SPI-4)Phase 2OC-192 System Interface for Physical and Link Layer Devices,OpticalInternetworking Forum Implementation Agreement,January 2001”中描述的4比特对角交错奇偶性(DIP-4)。
端口地址字段304是紧随控制字之后的数据字的8比特端口地址。虽然当前描述的实施例支持256个端口地址,但是其他实施例可例如通过增大端口地址字段304的大小和/或例如通过使用地址扩展来支持更多端口地址。
分组开始字段306标识紧随控制字之后的数据是否是分组的开始。在当前描述的实施例中,SOP字段306被设置为1以标识分组的开始。EOPS字段308和EOPS EX字段316标识紧邻控制字之前的数据的状况并且还用于定位分组的最后的字节。以下表1提供了EOP状况字段308和EOPS EX字段316的值,以及各自相对应的含义。

表1
类型字段310与端口地址字段304结合指示控制字是有效载荷控制字(比特15=1)、训练控制字(比特15=0)还是空闲控制字(比特15=0)。如果控制字是有效载荷控制字,则紧随有效载荷控制字之后的时钟周期上的数据是分组数据。如果控制字是训练控制字,则训练控制字之后传送的数据是用于训练的(如下所述),并且端口地址字段304的所有比特都被设置为1。如果控制字是空闲控制字,则接下来没有数据,并且端口地址字段304的所有比特都被设置为0。
在数据总线上传送控制字数据字、控制字和训练序列可在数据总线上传送。本发明利用了单条控制线CTL,来通知控制字何时出现在DAT[31:0]上。在一个实施例中,当控制线为高时,控制字出现在DAT[31:0]上。在本发明的一个实施例中,控制字的上部(即比特31-16)被在DAT[31:16]上传送,并且在同一周期中,控制字的下部(即比特15-0)被在DAT[15:0]上传送。
数据是以具有可编程最大长度的突发方式(称为MaxBurstl或MaxBurst2)在DAT[31:0]上传送的。优选地,突发长度为32字节的倍数,或者如果不是32字节的倍数,则用EOP控制字来终止。全部分组可在单个突发中传送,或者被分成多个突发,其间传送其他分组。一旦突发传送开始,则无中断地传送数据字,直到接收到EOP控制字或者到达32字节的倍数。
以43字节分组为例,表2标识了根据本发明的一个实施例在DAT[31:0]上传送数据字的顺序。

表2
最初43字节分组的前四个字节被在DAT[31:0]上传送,其中字节1被在比特31-24上传送,字节4被在比特7-0上传送。然后随后的4个字节即字节5-8被在DAT[31:0]上传送,其中字节5被在比特31-24上传送,字节8被在比特7-0上传送。此排序持续直到最后的数据字。由于传送未结束于32字节边界处,所以任何未使用的字节都被设置为0。在表2中的示例中,比特7-0被设置为0。要意识到,除了将未使用的字节设置为0的方法以下,还可使用其他方法来解决未结束于32字节边界处的传送(例如利用除零外的值等)数据传送过程现转到数据传送过程,图4图示了状态图400,该状态图示出了本发明的各种状态及其间的转换。图4是参考图2中所示的信号来描述的。
如图4所示,根据本发明的接口的数据总线包括五个状态空闲控制状态402、数据突发状态404、训练数据状态406、训练控制状态408和有效载荷控制状态410。根据状态,数据总线(例如DAT[31:0])被配置为传送空闲控制字、有效载荷控制字、数据字、训练控制字或训练数据字。为了帮助清晰阐述,将利用最初处于空闲控制状态402的数据总线来描述状态图400。
空闲状态处于空闲状态402的数据总线被配置为在当前周期中传送空闲控制字。数据总线可保持处于空闲控制状态402中(由转换436表示),并且持续传送空闲控制字。从空闲控制状态402中,数据总线可转换到有效载荷控制状态410(经由转换432),以开始数据突发,或者数据总线可转换到训练控制状态408(经由转换430),以发起训练序列。
传送有效载荷数据有效载荷控制状态410通知数据突发的开始。这里所使用的数据突发是指DAT[31:0]上的无中断数据字传送。在当前描述的实施例中,在满足MaxBurstl或MaxBurst2(以上参考图3描述)或接收到下一个控制字时,数据突发终止。在传输控制字之后,处于有效载荷控制状态410中的数据总线就经由转换412转换到数据突发状态404。在本发明的一个实施例中,转换发生在紧随SOP控制字传送之后的时钟周期上。
在数据突发状态404中,数据字被以突发方式(无中断传送)在DAT[31:0]上传送。正如上文所注意到的,数据突发发生在紧随控制字之后的下一个时钟周期上。一旦数据突发传送开始,则保持处于数据突发状态404中,并且数据字持续被在DAT[31:0]上发送(由转换416表示),直到发送EOP控制字或者达到允许数目的32字节块。优选地,所配置的最大有效载荷数据传送大小为32字节的倍数,或者由EOP控制字来终止。在完成数据突发时,数据总线可转换到空闲控制状态402(经由转换434),或者数据总线可返回有效载荷控制状态410(经由转换414),以发送新的SOP控制字来开始另一个数据突发,或者可发送任何其他控制字(例如另一信道的SOP)。
在一个实施例中,连续的SOP控制字应该以不少于8个时钟周期的间隔出现。这里所使用的周期是指一个控制或数据字(并且因为本发明的实施例利用DDR,所以这里使用的时钟周期可指DDR时钟周期和非DDR时钟周期)。因此,持续短于8个周期的数据突发应该被用足够的空闲控制字填充,以便从SOP控制字上一次被发送开始已经过了8个周期。例如,这可通过经由转换434从数据突发状态404转换到空闲控制状态402并且发送至少足够的空闲控制字以便达到上一个SOP控制字之后8个周期来实现。但是,短数据突发(例如EOP突发)后可跟随另一个短数据突发(例如EOP突发)。如果数据突发已持续了至少8个周期,并且还有更多有效载荷数据要传送,则数据路径可转换到有效载荷控制状态410,以发送新的SOP控制字来发起新数据突发。在这种情况下,分隔两个相邻突发传送的有效载荷控制字包含与前一传送和后一传送有关的状况信息。
训练序列根据本发明的一个实施例,训练序列可被接收设备用于对DAT[31:0]上的比特到达时间解偏,以及使CTL信号与DAT[31:0]解偏。训练序列希望允许接收设备校正最多达+/-1比特时间的相对偏斜差异。一般而言,训练序列包括1个空闲控制字,其后是20字训练模式的一次或多次重复。在当前描述的实施例中,训练模式包括10个重复的训练控制字,其后是10个重复的数据字。初始空闲控制字在初始训练控制字之前被发送,以便去除训练控制字中的奇偶性对先前的数据字的依赖。在本发明的一个实施例中,训练控制字与训练数据字正交。
在本发明的一个实施例中,优选地,训练序列在每DATA_MAX_T个周期中被提供,其中DATA_MAX_T周期是可编程值。此外,优选地,训练序列在每DATA_MAX_T周期中被重复alpha(α)次。表3图示了本发明的一个实施例所利用的训练模式。在周期1中,X、efgh、Y和abcd取决于之前最后一个控制字之后的间隔的内容。例如,X和Y反映了先前的数据突发是分组的结束还是下一分组的开始。值a、b、c、d、e、f、g、h取决于先前数据的奇偶性。

表3参见状态图400,通过发送训练控制字从空闲控制状态402进入训练控制状态408。在转换到训练控制状态408后,在DAT[31:0]上提供另外九个训练控制字,使得总共发送10个训练控制字。在传送10个训练控制字后,数据总线转换到训练数据状态406,以提供10个重复的训练数据字。训练控制状态408和训练数据状态406之间的转换被重复,直到传送到接收设备的比特已被充分解偏。当训练序列最初被发起时(例如在接收和发送设备启动时),训练序列应被重复,直到接收设备停止经由状况总线发送成帧模式。在一个实施例中,信号的同步可通过检测到连续的具有匹配奇偶性的序列(即连续的DIP-4)匹配来确定。当执行周期性训练时,alpha(α)确定重复次数。
当执行周期性训练时(与启动时的训练相对),发送设备应当在至少每DATA_MAX_T时钟周期中安排训练序列。此外,然后训练序列应该被重复alpha(α)次。DATA_MAX_T和α都是可配置的值,并且对于每个接口、接收和发送训练序列应该被独立安排。优选地,发送设备在开始训练序列的传输之前等待当前数据突发的完成,并且不以训练序列中断数据突发。
示例性时序5图示了时序图,其中数据可用静态对齐来对齐。由于静态对齐一般要求数据信号踪迹被严密匹配,因此将较少的信号与时钟信号相关联会使得对齐信号较容易。从而,通过为32比特数据使用两个时钟信号而不是一个时钟信号,匹配到每个时钟的数据信号数目被限于16个。在静态对齐中,数据和时钟被用DCLK1和DCLK2以固定的相位关系发送到接收器。控制和数据字的较低的16比特(比特15-0)被在DAT[15:0]上传送,而控制和数据字的较高的16比特(比特31:15)被在DAT[31:15]上传送。优选地,DAT[15:0]和CTL可被匹配到DAT[31:16]的+/-2比特时间内。就这里所用而言,当发送设备和接收设备之间以及DAT[15:0]和DAT[31:16]之间的传播时间变化小于2比特时间时,DAT[15:0]和DAT[31:16]“匹配”。DCLK1被用于对DAT[15:0]和CTL采样,而DCLK2被用于对DAT[31:16]采样。接收设备应当将DAT[31:16]和DAT[15:0]重新对齐到单个时钟。在本发明的一个实施例中,接收设备所进行的对齐是利用启动时的训练序列以及图6的字对齐电路来完成的(其中启动被定义为设备被加电并初始化的时刻)。
图6A图示了可用于解除多个通信线路相对于彼此的偏斜的示例性字对齐电路。如图所示,源600向接收器602提供CLK1和CLK2。接收器602包括前端电路604和606。前端电路604接收CTL、DAT[15:0]和CLK1,并且利用CLK1对CTL和DAT[15:0]采样。类似地,前端电路606接收CLK2和DAT[31:16],并且利用CLK2对DAT[31:16]采样。由于DAT[15:0]可能相对于DAT[31:16]有偏斜,因此有必要解除信号群组相对于彼此的偏斜。因此,本发明提供了字对齐电路608,其接收DAT[15:01、CTL和DAT[31:16],并且解除这些信号相对于彼此的偏斜。
图6B图示了字对齐电路608的一个实施例。字对齐电路608包括数据寄存器610、多路复用器612和614、控制电路616和数据寄存器618。数据寄存器610向多路复用器612和614提供DAT[31:0]和CTL的延迟后“版本”。例如,DAT[15:0]和CTL在无延迟的情况下在信号620(a)上被提供给多路复用器612。DAT[15:0]和CTL被数据寄存器610(a)延迟,并且被在信号620(b)上提供给多路复用器612。DAT[15:0]和CTL被数据寄存器610(a)和610(b)延迟,并且被在信号620(c)上提供给多路复用器612。从而DAT[15:0]和CTL的三个不同的相位被提供给多路复用器612,信号620(a)上的早期相位、信号620(b)上的中期相位和信号620(c)上的后期相位。类似地,DAT[31:16]的三个不同的相位被经由信号622(a)、622(b)和622(c)提供给多路复用器614。
控制616耦合到多路复用器612和614的选择线,并且被配置为匹配来自多路复用器614的DAT[31:16]的一个版本的来自多路复用器612的DAT[15:0]和CLT的一个版本。例如,如果DAT[15:0]和CTL的中期相位(在数据信号620(b)上提供)与DAT[31:16]的后期相位(在信号622(c)上提供)匹配,则控制616选择来自多路复用器612的信号620(b)和来自多路复用器614的信号622(c)。为了使得控制616在适当的时刻选择信号,以便将来自多路复用器612和614中每一个的输出彼此对齐,控制616被在启动时提供的训练序列期间设置。
图7图示了时序图,其中数据被用动态对齐来对齐。在图7中,假设比特DAT[31:0]和CTL未与DCLK1对齐。当信号路径长度和/或操作频率在时钟和数据间产生相当大的偏斜时,优选使用动态对齐。在一个实施例中,源设备将另外的时钟信号(例如DCLK2)三态。如图7所示,控制字和数据字在CLK1的每个上升和下降沿时被在DAT[31:0]上传送。在一个实施例中,数据字和控制字的上部(即比特31:16)是在DAT[31:16]上提供的,而下部(即比特15:0)是在DAT[15:0]上提供的。单条控制线被用于区分DAT[31:0]上的数据字和控制字。当控制字在DAT[31:0]时,CTL为高。
图8图示了根据本发明的一个实施例带有动态对齐的接口时钟控制。如图8所示,源802向接收器804提供CTL、DAT[31:0]和DCLK1信号。接收器804向源802提供STAT[1:0]和SCLK信号。接收器804包括比特解偏电路806和字对齐电路808。一般而言,比特解偏电路相对于时钟信号对DAT[31:0]和CLK采样,以定位其中发生信号的数据转换的窗口,然后确定位于窗口中心的采样点。字对齐电路808检测由源802提供的训练模式,并且利用训练模式的已知版本来调整数据的比特对齐,以便它们在字内对齐。
FIFO状况根据本发明的接口使得在队列(未示出)中存储数据字的接收设备向发送设备发送队列状况。fifo状况的传送除了有其他优点以外还允许了数据字在本发明的接口上高效传送。
图9是状态图900,其图示了根据本发明,状况如何在状况总线(例如发送状况总线212或接收状况总线216)上被从接收设备提供到发送设备。最初,状况总线处于禁用状态902中并且被配置为在STAT[1:0]上发送“11”(即,在STAT[1]上发送1,并在STAT
上发送1)。当fifo状况传输被启用时,状况总线经由转换908转换到同步状态906。例如,在一个实施例中,FIFO状况传输可通过初始化接收设备和发送设备的控制处理器(未示出)来启用。在同步状态906内,接收设备在STAT[1:0]上传送成帧模式。在一个实施例中,在STAT[1:0]上传送“11”作为成帧模式。成帧模式的传送经由转换912将状况总线从同步状态906转换到fifo状况状态910。
在fifo状况状态910中,接收设备向发送设备发送fifo状况。在本实施例中,fifo状况可以是三个值之一“SATISFIED”、“HUNGRY”和“STARVING”。“SATISFIED”状况由STAT[1:0]出现“10”来指示,“HUNGRY”由STAT[1:0]上出现“01”来指示,“STARVING”由STAT[1:0]上的“00”来指示。
“HUNGRY”状况向发送设备指示发送设备可向相应端口传送最多达MaxBurst2 32字节块,直到下一状况更新被提供。或者,如果相应的端口先前被准予尚未使用的大于32字节块的值(例如MaxBurstl),则更大值的32字节块可被传送到HUNGRY端口。“STARVING”状况通知发送设备可向相应端口传送最多达MaxBurstl 32字节块,直到下一个状况更新。“SATISFIED”状况通知发送设备只能向该端口传送先前准许的剩余数目的32字节块,直到下一个状况更新。部分32字节传送被视为完整的32字节传送。
本发明的一个实施例利用了可编程日历序列来指示状况总线上的哪个状况对应于哪个端口。作为对日历编程的示例,成帧模式后的第一状况对应于端口(1),第二状况对应于端口(2)等,最后的状况对应于端口(CALENDAR_LEN)。日历条目1至CALENDAR_LEN的状况的发送等于一次迭代。当传送了可编程数目的迭代时,fifo状况的发送完成。
在完成FIFO状况的发送之后,状况总线经由转换916转换到DIP-2状态914,以发送先前的fifo状况的奇偶性信息。在一个实施例中,奇偶性是“System Packet Interface Level 4(SPI-4)Phase 2OC-192 SystemInterface for Physical and Link Layer Devices,Optical Internetworking ForumImplementation Agreement,January 2001”中描述的2比特的对角交错奇偶性(DIP-2)。图10是示出SCLK、STAT[1]和STAT
信号的序列的时序图。
操作模式本接口与“System Packet Interface Level 4(SPI-4)Phase 2OC-192System Interface for Physical and Link Layer Devices,January 2001”中描述的接口(SPI-4.2接口)兼容。例如,采用本发明的设备可直接与采用SPI-4.2接口的设备接口,如下所述。
图11图示了耦合到设备1102的设备1100。设备1102被配置为只支持SPI-4.2接口,而设备1100被配置为支持根据本发明的接口(例如图2的接口200),并且还被配置为支持SPI-4.2接口。这样,1102可在SPI-4.2接口上与设备1100通信。在一个实施例中,设备1100和1102是用于在网络设备内传送分组的集成电路。
在本发明的一个实施例中,设备1102可经由控制器1118(a)和1120(b)被配置为在两种模式之一中进行操作,所述两种模式是正常模式和增强模式。例如,控制器1118(a)包含模式选择比特,该比特在被置位(即设置为“1”)时,将设备1102配置为在增强模式中进行操作,而在被清除(即清为“0”)时,将设备1102配置为在正常模式中进行操作。在正常操作模式中,设备1102根据SPI-4.2接口工作。在正常模式中,设备1102将TDAT[31:16]、RDAT[31:16]、TDCLK2和RDCLK2三态。通过将这些信号三态,这些信号不被发送到设备1100。此外,当处于正常模式时,设备1102不报告扩展4比特对角交错奇偶性的奇偶差错。设备1102还可经由控制器1118(a)和1120(b)被配置为在扩展模式中进行操作。如上参考图1-11所描述的增强操作模式使得设备1102能够以大得多的数据速率(例如20Gbps)来传送数据。
虽然已联系几个实施例描述了本发明,但是本发明不希望被限制在这里所阐述的特定形式。相反,希望覆盖可被合理包括在所附权利要求书所限定的本发明的范围内的所有这种替换、修改和等同物。
权利要求
1.一种方法包括利用多个数据传输线在第一集成电路(IC)和第二IC之间传送有效载荷控制信息;在所述传送所述有效载荷控制信息之后的时钟周期转换之时,利用所述多个数据传输线在所述第一IC和所述第二IC之间传送分组化数据,其中所述传送所述分组化数据是以至少约20Gbps的数据速率来执行的;并且传送一比特控制信号,以标识有效载荷控制信息何时出现在所述多个数据传输线的全部之上。
2.如权利要求1所述的方法,还包括将所述第一IC和所述第二IC中的至少一个配置为在增强模式中进行操作。
3.如权利要求1所述的方法,还包括将所述第一IC和所述第二IC中的至少一个配置为在正常模式和增强模式中的至少一个中进行操作,其中所述传送所述分组化数据在所述正常模式中是以约10Gbps的速率执行的,在所述增强模式中是以约20Gbps的速率执行的。
4.如权利要求1所述的方法,其中所述传送所述有效载荷控制信息包括传送所述分组化数据的奇偶性。
5.如权利要求1所述的方法,其中所述传送所述有效载荷控制信息包括传送所述分组化数据的端口地址。
6.如权利要求4所述的方法,还包括传送扩展分组结束状况。
7.如权利要求4所述的方法,还包括传送扩展奇偶性。
8.如权利要求1所述的方法,还包括在多个FIFO状况线上在所述第一IC和所述第二IC之间传送FIFO状况。
9.如权利要求8所述的方法,其中所述FIFO状况是与提供所述有效载荷控制信息和突发所述分组化数据中的至少一个同时传送的。
10.如权利要求8所述的方法,还包括从所述第一IC向所述第二IC提供数据时钟信号;并且从所述第一IC向所述第二IC提供FIFO状况时钟信号。
11.如权利要求1所述的方法,还包括在所述第一IC和所述第二IC之间提供数据时钟信号,以便对所述有效载荷控制信息和所述分组化数据进行时钟控制,其中所述数据时钟的最小频率为约311MHz;并且在所述数据时钟信号的上升沿和下降沿都对所述有效载荷控制信息和所述分组化数据进行时钟控制。
12.如权利要求1所述的方法,其中所述第一集成电路和所述第二集成电路被配置为在不同网络层中进行操作。
13.如权利要求12所述的方法,其中所述第一网络集成电路在物理层中进行操作。
14.如权利要求12所述的方法,其中所述第二集成电路在链路层中进行操作。
15.如权利要求1所述的方法,还包括动态对齐所述分组化数据。
16.如权利要求1所述的方法,还包括静态对齐所述分组化数据。
17.如权利要求1所述的方法,还包括训练所述第一集成电路,以解除在所述数据传输线上传送的所述分组化数据的偏斜。
18.如权利要求17所述的方法,还包括利用多个数据传输线在所述第一IC和所述第二IC之间传送训练控制信息;并且在所述传送所述训练控制信息之后的时钟周期转换之时,利用所述多个数据传输线在所述第一IC和所述第二IC之间传送所述训练数据。
19.如权利要求1所述的方法,其中当所述一比特控制信号是逻辑1时,有效载荷控制信息出现在所述多个数据传输线上。
20.一种系统包括第一集成电路(IC),其耦合到第二IC;用于在所述第一IC和所述第二IC之间传送有效载荷控制信息的装置;用于利用所述多个数据传输线在所述第一IC和所述第二IC之间传送分组化数据的装置;其中所述用于传送所述分组化数据的装置能够以至少约20Gbps的数据速率操作;以及用于传送一比特控制信号以标识有效载荷控制信息何时出现在所述多个数据传输线的全部之上的装置。
21.如权利要求20所述的系统,还包括用于将所述第一IC和所述第二IC中的至少一个配置为在正常模式和增强模式中的至少一个中进行操作的装置,其中所述用于传送所述分组化数据的装置在所述正常模式中是以约10Gbps的速率执行的,在所述增强模式中是以约20Gbps的速率执行的。
22.如权利要求20所述的系统,还包括用于在多个FIFO状况线上在所述第一IC和所述第二IC之间传送FIFO状况的装置。
23.如权利要求20所述的系统,其中所述第一集成电路和所述第二集成电路被配置为在不同网络层中进行操作。
24.如权利要求23所述的系统,其中所述第一网络集成电路在物理层中进行操作。
25.如权利要求23所述的系统,其中所述第二集成电路在链路层中进行操作。
26.如权利要求20所述的系统,还包括用于动态对齐所述分组化数据的装置。
27.如权利要求20所述的系统,还包括用于静态对齐所述分组化数据的装置。
28.如权利要求20所述的系统,还包括用于训练所述第一集成电路以解除在所述数据传输线上传送的所述分组化数据的偏斜的装置。
29.一种装置包括发送数据总线,其被配置为发送有效载荷控制信息,以及在传送所述有效载荷控制信息之后的时钟周期转换之时,发送分组化数据,其中所述分组化数据的所述发送是以至少约20Gbps的数据速率来执行的;一比特控制信号,用于标识所述发送数据总线上的数据是有效载荷控制信息还是分组化数据;接收数据总线,其被配置为;接收有效载荷控制信息,以及在接收所述有效载荷控制信息之后的时钟周期转换之时,接收分组化数据,其中所述分组化数据是以至少约20Gbps的数据速率来接收的,并且其中所述接收数据总线独立于所述发送数据总线进行操作;以及一比特接收控制信号,用于标识所述接收数据总线上的数据是有效载荷控制信息还是分组化数据。
30.如权利要求29所述的装置,其中所述接收数据总线包括第一和第二接收数据时钟信号;以及至少32个接收数据信号。
31.如权利要求29所述的装置,其中所述发送数据总线包括第一和第二发送数据时钟信号;以及至少32个发送数据信号。
32.如权利要求29所述的装置,还包括控制器,其包括模式选择比特,以便在增强模式和正常模式中操作所述发送数据总线和所述接收数据总线,其中增强模式中所述接口的数据速率约等于正常模式中所述接口的数据速率的两倍。
33.一种装置包括用于提供有效载荷控制信息的装置;在传送所述有效载荷控制信息之后的时钟周期转换之时,用于以至少约20Gbps的数据速率提供分组化数据的装置;用于标识数据是有效载荷控制信息还是分组化数据的装置;用于接收有效载荷控制信息的装置;以及在接收所述有效载荷控制信息之后的时钟周期转换之时,以至少约20Gbps的数据速率来接收分组化数据,并且其中所述用于接收分组化数据的装置独立于所述用于提供所述分组化数据的装置进行操作。
34.如权利要求33所述的装置,其中所述用于接收所述分组化数据的装置包括第一和第二接收数据时钟信号;以及至少32个接收数据信号。
35.如权利要求33所述的装置,其中所述用于提供所述分组化数据的装置包括第一和第二发送数据时钟信号;以及至少32个发送数据信号。
36.如权利要求33所述的装置,还包括用于在增强模式和正常模式中操作所述用于提供所述分组化数据的装置和所述用于接收所述分组化数据的装置,其中增强模式中所述接口的数据速率约等于正常模式中所述接口的数据速率的两倍。
37.一种系统包括第一集成电路(IC);第二IC;以及将所述第一IC耦合到所述第二IC的接口,所述接口被配置为利用多个数据传输线在所述第一IC和所述第二IC之间传送有效载荷控制信息;在所述传送所述有效载荷控制信息之后的时钟周期转换之时,利用所述多个数据传输线在所述第一IC和所述第二IC之间传送分组化数据,其中所述传送所述分组化数据是以至少约20Gbps的数据速率来执行的;并且传送一比特控制信号,以标识有效载荷控制信息何时出现在所述多个数据传输线的全部之上。
38.如权利要求37所述的系统,其中所述接口包括发送接口;以及接收接口。
39.如权利要求38所述的系统,其中所述发送接口包括发送状况总线;以及发送数据总线。
40.如权利要求38所述的系统,其中所述接收接口包括接收状况总线;以及接收数据总线。
全文摘要
一种装置包括第一集成电路(IC)(202)、第二IC(204)以及将第一IC耦合到第二IC的接口(200)。接口利用多个数据传输线在第一IC和第二IC之间传送有效载荷控制信息。在传送有效载荷控制信息之后的时钟周期转换之时,接口利用同样的传输线以至少约20Gbps的数据速率在第一IC和第二IC之间传送分组化数据。一比特控制信号被接口用于标识有效载荷控制信息何时出现在多个数据传输线的全部之上。
文档编号H04L12/56GK1781333SQ200480011100
公开日2006年5月31日 申请日期2004年6月10日 优先权日2003年6月10日
发明者阿德里恩·B·爱宛斯, 穆罕默德·I·踏塔, 卡的里克·K·贝吉恩 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1