CN105794168B - 确定用于高速网络初始化的反向通道通信的高数据速率 - Google Patents
确定用于高速网络初始化的反向通道通信的高数据速率 Download PDFInfo
- Publication number
- CN105794168B CN105794168B CN201480065634.3A CN201480065634A CN105794168B CN 105794168 B CN105794168 B CN 105794168B CN 201480065634 A CN201480065634 A CN 201480065634A CN 105794168 B CN105794168 B CN 105794168B
- Authority
- CN
- China
- Prior art keywords
- link
- rate
- circuit
- speed
- equalization
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0002—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0015—Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0033—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
- H04L1/0034—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter where the transmitter decides based on inferences, e.g. use of implicit signalling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L25/03343—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03987—Equalisation for sparse channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4906—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/01—Equalisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0079—Receiver details
- H04L7/0087—Preprocessing of received signal for synchronisation, e.g. by code conversion, pulse generation or edge detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/003—Arrangements for allocating sub-channels of the transmission path
- H04L5/0044—Arrangements for allocating sub-channels of the transmission path allocation of payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Communication Control (AREA)
- Dc Digital Transmission (AREA)
Abstract
一个实施例提供网络控制器。网络控制器包括物理接口(PHY)电路,物理接口电路包括配置成向通过信道链路与发送电路通信的链路伙伴发送数据帧的发射器电路。网络控制器也包括配置成在PHY电路初始化之后导致发射器电路使用至少一个高速率链路速度向链路伙伴发送数据帧的链路速度循环模块。网络控制器也包括配置成在发射器电路向链路伙伴发送数据帧的同时将至少应该均衡化预设设置应用于发射器电路的均衡化预设模块。链路速度模块还被配置成导致发射器电路对于处于至少一个高速率链路速度的至少一个均衡化预设设置停留发射器停留时间段。发射器停留时间段足够允许链路伙伴锁定到经发送的数据帧。
Description
相关申请的交叉引用
本申请是2013年7月9号提交的美国专利申请61/884,230号的部分继续申请,并通过引用整体结合于此。
技术领域
本公开涉及确定反向通道通信的高数据速率。
背景技术
在建立高速有线网络通信的链路初始化阶段期间,链路的两端通信是必要的,以便建立链路速率、交换链路性能和调整均衡器设置。此通信通常称为“反向通道”通信。为了简化和节省成本,期望反向通道是与最终用于数据模式通信的相同的通道。当反向通道通信发起时,链路速率可能未经建立且链路性能可能未知。而且,在调整均衡器设置之前,与链路特性(例如,频率响应)有关的位错误可以是普遍的。均衡器调整一般在链路操作速率(链路速率)执行。在链路速率,位错误可使通信降级从而使得在均衡器调整之前和/或期间在链路速率的可靠反向通道通信很困难,如果不是不可能的话。
一个解决方案是在相对较低的位速率提供反向通道通信模式和在较高位速率即在链路速率提供均衡器调整模式。此解决方案要求在反向通道模式和均衡器调整模式之间的模式切换(mode shifting)。这样的模式切换是不期望的,因为它增加初始化过程的时间并要求链路两端之间的同步。这样的模式切换也要求接收器均衡器在模式切换之后重新训练(无限带宽(Infiniband)方法),或者接收器均衡器在反向通道通信期间冻结(以太网方法)。随着链路速度增加,均衡器重新训练或者冻结相关于可重复性和非期望的自适应行为呈现增加的风险级别。
附图说明
所要求保护的主题的特征和优点将从以下相一致的实施例的详细描述而显而易见,该描述应参考附图考虑,附图中:
图1示出了根据本公开的各种实施例的网络***;
图2A示出了根据本公开的各种实施例的调制模块的示例;
图2B示出了根据本公开的各种实施例的解调制模块的示例;
图3A示出了根据本公开的一个实施例的被配置用于串行操作的调制模块的示例;
图3B示出了根据本公开的一个实施例的被配置用于串行操作的解调制模块的示例;
图4A示出了根据本公开的一个实施例的被配置用于并行操作的调制模块的示例;
图4B示出了根据本公开的一个实施例的被配置用于并行操作的解调制模块的示例;
图5示出了根据本公开的一个实施例的反向通道位序列和帧结构的示例;
图6是根据本发明的各种实施例的调制操作的流程图;
图7是根据本发明的各种实施例的解调制操作的流程图;
图8是根据本发明的各种实施例的解调制操作的另一个流程图;
图9是根据本发明的各种实施例的反向通道操作的流程图;
图10A示出了根据本公开的各种实施例的描绘发射器停留时间以确定在发射器与接收器之间的链路初始化时的高数据速率和均衡化设置的简化的发射器/接收器***;
图10B示出了根据本公开的各种实施例的描绘接收器停留时间以确定在发射器与接收器之间的链路初始化时的高数据速率和均衡化设置的另一简化的发射器/接收器***;
图10C示出了根据本公开的一个实施例的描绘数据速率和均衡化预设设置循环以确定在发射器与接收器之间的链路初始化时的高数据速率和均衡化设置的另一简化的发射器/接收器***;
图11A示出了根据本公开的各种实施例的发射器的高速率数据流;
图11B示出了根据本公开的一个实施例的通告帧结构;
图11C示出了根据本公开的一个实施例的优选预设帧结构;以及
图12是根据本发明的各种实施例的链路初始化操作的流程图。
尽管下面的具体实施方式将结合说明性实施例展开,其众多替代方案、修改和变化对于本领域内的普通技术人员应是显而易见的。
具体实施方式
一般而言,本公开涉及被配置成在节点元素和链路伙伴之间提供连续的且至少部分同时的反向通道通信和均衡器设置通信的网络***(和方法)。在各种实施例中,可将与反向通道通信相关联的低速率数据和命令(即,低速率位流)编码并调制到与均衡器设置通信相关联的高速率位流上,因此避免或减少反向通道通信期间的“模式切换”。方法和***被配置成当提供反向通道通信时容忍所接收的高速率位流中的错误(例如,在均衡器调整之前和/或期间)。如本文所使用的,“高速率”对应于操作性(即数据模式)链路速率且“低速率”对应于反向通道通信速率。
在初始化时,链路伙伴通常不知道彼此的性能。因此,本公开也涉及用于确定初始化时链路伙伴之间的高数据速率以使例如反向通道通信能够以高数据速率继续进行的网络***(和方法)。在各种实施例中,发射器被配置成在所选择的高数据速率速度并以所选择的均衡化设置开始传输。发射器被配置成在多个均衡化设置和/或数据速率(链路速度)速度之间循环。至少部分同时地,经链接的接收器被配置成试图将来自经链接的发射器的数据流“锁”住在给定的链路速度和/或均衡化设置。一旦建立了锁之后,反向通道通信可使用所建立的链路速度和均衡化设置继续进行。在一些实施例中,链路伙伴可以能够以几个公共链路速度和/或均衡化设置通信。在这样的情况中,本公开也提供选择通信的“最佳”链路速度和/或均衡化设置的选择方案。为了使接收器能够“锁”住到给定链路速度和均衡化设置,本公开也提供保证在每一个周期给予接收器足够的时间来做出通道能力的判断的重叠机制。
***和方法被配置成容纳从印刷电路板中真和补信号的交叉布线而产生的极性反转。如本文所使用的,“真”意味非补,且“补”在指位的时候意味经反转的。在一些实施例中,如本文所述的,***和方法被配置成由例如帧同步在链路两端处检测时钟速率中的不匹配。
图1示出了根据本公开的各种实施例的网络***100。网络***100一般包括至少一个网络节点元素102和至少一个链路伙伴120,其各自被配置成经由通信链路126互相通信。网络节点元素102和链路伙伴120可使用交换光纤通信协议经由链路126互相通信,例如以太网通信协议、无限带宽通信协议等。以太网通信协议可以能够提供使用传输控制协议/因特网协议(TCP/P)的通信。以太网协议可遵循由电气和电子工程师协会(IEEE)发布的题为“IEEE 802.3标准”(2002年3月发布)的以太网标准和/或此标准的较后版本(例如,2012年发布的以太网IEEE 802.3标准)或与其兼容。无限带宽协议可遵循由无限带宽贸易协会(IBTA)发布的题为“InfinibandTM架构规范”(2001年6月发布的版本1.2.1卷1)的无限带宽规范和/或此规范的较后版本(例如,2008年1月发布的InfinibandTM架构版本1.2.1卷1(通用规范)和2012年11月发布的版本1.3卷2(物理规范))或与其兼容。当然,在其他实施例中,交换光纤通信协议可包括定制和/或专用交换光纤通信协议。
链路伙伴120和/或节点元素102可表示计算机节点元素(例如主机服务器***)、交换机、路由器、集线器、网络存储设备、底盘、服务器、数据中心、网络附连设备、非易失性存储器(NVM)存储设备、基于云的服务器和/或存储***等。节点102包括网络控制器104(例如,网络接口卡等)、***处理器128(例如,多个通用处理器,诸如由Intel公司提供的那些等)和***存储器130。链路伙伴120被以与节点102相似的方式配置和操作并因此包括与网络控制器104相似的网络控制器134。
网络控制器104、134一般被配置成在节点102和链路伙伴120之间首次建立链路时(例如,在***初始化之后建立与链路伙伴的新链路等)在链路初始化阶段期间执行各种操作。这样的“反向通道”操作可包括例如建立链路速率、交换链路性能、调整均衡器设置和确定均衡化质量。链路性能可包括例如PHY技术能力、最大链路速度、下一页、远程故障、确认、前向纠错(FEC)和/或FEC模式性能、暂停能力等可由一个或多个前述交换分组通信协议定义的。调整均衡器设置一般在操作性链路速率(即操作性链路速度)执行。例如,操作性链路速度可以是相对高的速度,例如大约为每秒几十到几百个千兆比特。在调整均衡器设置之前和在其早期阶段期间,位错误可以是普遍的。调整均衡器设置被配置成补偿对位错误有贡献的链路特性(例如,频率响应)并因此降低链路的位错误率。
网络控制器104包括一般配置成经由通信链路126将节点102与链路伙伴120接口的PHY电路106。PHY电路106可遵循前述交换光纤通信协议或与其兼容,该前述交换光纤通信协议可包括,例如,10GBASE-KR、40GBASE-KR4、40GBASE-CR4、100GBASE-CR10、100GBASE-CR4、100GBASE-KR4、和/或100GBASE-KP4、和/或符合前述无限带宽通信协议和/或符合另一个和/或后来开发的通信协议的其他PHY电路。PHY电路106包括配置成经由链路126将数据分组和/或帧发送至链路伙伴120的发送电路(Tx)116,和配置成经由链路126从链路伙伴120接收数据分组和/或帧的接收电路(Rx)118。当然,PHY电路106也可包括配置成执行模数和数模转换、对数据编码和解码、模拟寄生消除(例如,串扰消除)和恢复接收的数据的编码/解码电路(未示出)。Rx电路118可包括配置成协调从链路伙伴120接收数据的计时的锁相环电路(PLL,未示出)。例如通信链路126可包括例如依赖媒体的接口,其可包括例如铜双轴线、印刷电路板上的背板走线等。在一些实施例中,通信链路126可包括多个逻辑和/或物理通道(例如,差分对通道),该通道提供例如节点102的Tx和Rx116/118和链路伙伴120的PHY电路136的Rx 146和Tx 148(分别)之间的单独连接。
网络控制器104也包括反向通道模块108、均衡器设置模块110、调制模块112、解调制模块114、低速率时钟(LRC)122和高速率时钟(HRC)124。高速率时钟HRC 124被配置成提供与链路速率有关的时钟信号,例如,对应于网络控制器104的最大链路速率性能的时钟速率。例如,链路速率可以大约为每秒几十、几百或更多千兆比特。
反向通道模块108被配置成执行节点102和链路伙伴120之间的反向通道操作。一般而言,反向通道模块108被配置成与链路伙伴120通信以如本文所述建立链路速率、交换链路性能和/或促进均衡器调整。反向通道模块108被配置成如本文所述在均衡器设置调整之前和/或期间,即当链路操作在链路速率时,以低于链路初始化期间的链路速率的速率与链路伙伴120通信反向通道信息。
低速率时钟LRC 122被配置成提供用于反向通道通信的时钟信号(即,包括反向通道信息的低速率位流)。LRC 122的时钟速率低于HRC 124的时钟速率。LRC 122的时钟速率可与HRC 124的时钟速率有关,例如可对应于HRC 124除以因子。一般而言该因子可以大约为1000。在一些实施例中,可选择因子使得LRC 122的时钟速率符合前述通信协议中的一种或多种。例如,因子可以是1280,从而LRC 122时钟速率是HRC 124时钟速率的1/1280。因子可被配置得足够大以便经由操作在数据模式链路速度(即,操作在高速率)的链路(例如链路126)提供健壮的反向通道通信。
反向通道通信可包括由网络控制器104和链路伙伴120用于建立链路速率、交换链路性能、调整均衡器设置和/或确定均衡化质量的命令和/或数据(“反向通道信息”)。反向通道信息可包括低速率位(LRB)序列,即位速率对应于LRC 122时钟速率。低速率位可安排在帧中以供传输至链路伙伴120。将所传输的反向通道信息安排到帧中被配置成促进建立链路速率。例如,帧同步或缺乏帧同步可由节点元素102和链路伙伴120利用来调整他们各自的位速率以达到目标链路速率。反向通道信息可在节点102和链路伙伴120之间建立的链路上携带。在均衡器调整之前和/或期间,反向通道通信(LRB)可与用于均衡器调整的高速率(HR)位序列(即,位速率对应于HRC 124时钟速率)同时被发送和/或接收。HR位序列可由表示反向通道信息的LRB调制。LRB可在调制到HR位序列上之前如本文所述编码。将反向通道信息编码和调制到HR位序列上被配置成在所接收的HRB中存在错误的情况下在链路均衡化之前和/或期间提供健壮的反向通道通信。可随后将经调制的HR位序列提供给PHY电路106以用于经由链路126发送至链路伙伴120。
一旦操作位速率已经调整使得节点102和链路伙伴120操作在同一链路速率,反向通道通信就可用来促进节点102和链路伙伴120二者处的均衡器调整。均衡器设置模块110被配置成与链路伙伴120通信以调整链路126的均衡器设置。
均衡器设置通常在以链路速率(即数据模式链路速率)发送(和接收)时调整。经调制到链路速率位序列上的低速率反向通道信息可促进链路均衡化和/或当均衡器设置在被调整时确定均衡化质量。例如,反向通道通信可在均衡器调整期间继续并可因此由节点102和链路伙伴120用于均衡器调整期间的通信。
与节点102相似,链路伙伴120包括网络控制器134。网络控制器134包括PHY电路136、反向通道模块138、均衡器设置模块140、调制模块142、解调制模块144、低速率时钟152和高速率时钟154。元素134、136、138、140、142、144、146、148、152和154的功能性与节点102类似命名的元素的功能性相似。例如,在链路初始化时段期间,链路伙伴调制模块142可被配置成用第二低速率位流调制第二高速率位流用于传输至节点102。第二低速率位流包括反向通道信息。节点102解调制模块114可随后被配置成如本文所述解调制对应于所发送的高速率位流的所接收的第二高速率位流。
与所发送的经调制HR位序列有关的所接收的HR位序列可由链路伙伴120的PHY电路136接收。Rx146被配置成确定每一个接收的位是对应于逻辑零还是逻辑一。Rx146可随后对每一个恢复的位提供与所发送的HRB有关的接收器位判决(RBD)给解调制模块144。因为链路特性例如有限链路频率响应,特别是在均衡器调整之前,RBD可包括错误。这样的错误通常更可能处于相对较高的位速率。解调制模块144被配置成从Rx146接收RBD并如本文所述在RBD中存在位错误的情况下恢复对应于反向通道信息的LRB。
因此,节点元素102和链路伙伴120被配置成经由链路126通信以执行链路初始化功能,包括设置链路速率、均衡器设置调整和/或确定均衡化质量。节点元素102和链路伙伴120被配置成在用于例如调整均衡器设置的高速率位序列(即位流)上调制低速率反向通道信息。因此,低速率位流中包括的反向通道信息可在均衡器调整之前或期间以数据模式链路速度操作时通信,从而避免在反向通道模式和操作模式之间的模式切换。
图2A示出了根据本公开的各种实施例的调制模块212的示例。调制模块212是图1中的调制模块112、142的示例。调制模块212被配置成生成高速率位序列并用低位速率编码的反向通道信息(即命令和/或数据)调制高速率位序列。在一些实施例中,高速率位序列可以是高速率伪随机位序列(PRBS)。调制模块212可如本文所述针对并行操作或串行操作而配置。
在一些实施例中,调制模块212可包括除以M电路201。除以M电路201被配置成从高速率时钟(例如HRC 124)接收时钟信号,并将时钟速率除以M,从而产生时钟信号HRCM。例如,如本文所述,可将除过的时钟提供给经并行的高速率位速率生成器。
调制模块212包括被配置成生成高速率位序列输出205的高速率位序列生成器200。高速率位序列生成器200被配置成接收时钟信号CLK。时钟信号CLK可至少部分地基于高速率位序列生成器200的配置而对应于来自HRC的高速率时钟信号或除过的时钟信号HRCM。例如,高速率位序列生成器200可被配置成串行地生成HR位序列。在此示例中,高速率位序列生成器200可被配置成从HRC 124接收高速率时钟信号并针对每一个HRC时钟周期生成一个输出位(即一个HRB)。因此,在此示例中,输出205对应于每HRC时钟周期一个位。在另一示例中,高速率位序列生成器200可被配置成以经并行的方式生成HR位序列。在此示例中,高速率位序列生成器200可被配置成接收除过的高速率时钟信号HRCM并针对每一个HRCM时钟周期并行地生成M个输出位。在此示例中,输出205对应于每HRC时钟周期M位(并行的)。因此,经并行的高速率位序列生成器可使用相对较低速率的时钟信号在高速率产生位序列。
调制模块212也包括非归零空间(NRZ-S)编码器电路208、反转器210和调制器206。在一些实施例中,调制模块212可包括串行化器215。在这些实施例中,高速率位序列生成器200可被配置成在HRCM时钟周期间隔中并行地产生M位的高速率位序列。这样的并行M位序列可随后由调制器206调制,并可将经调制的并行M位序列提供给串行化器215用于串行化以产生经调制的高速率位序列输出213。在其他实施例中,例如高速率位序列生成器200被串行配置时,可不包括串行化器215且调制器206的输出可随后对应于经调制的高速率位序列输出213。
NRZ-S编码器电路208被配置成接收低速率反向通道命令和/或数据(即,低速率位(LRB)序列)和低速率时钟(例如LRC122)并针对每一个LRC时钟周期(及因此每个LRB)提供NRZ-S输出209。因此,每一个LRC的持续时间对应于一个LRC时钟周期。NRZ-S编码器电路208被配置成至少部分地基于LRB转换NRZ-S输出209。例如,NRZ-S编码器电路208可被配置成如果LRB输入是逻辑零则转换NRZ-S输出209和如果LRB输入对应于逻辑一则维持其之前的输出状态。因此,NRZ-S输出209依赖于当前LRB输入和NRZ-S编码器电路208之前的输出209。将NRZ-S输出209提供给反转器210,从而产生经反转(即,补)NRZ-S输出211。
例如,如果当前LRB输入对应于逻辑零,那么如果之前的NRZ-S输出209是零,则NRZ-S编码器电路208将响应于LRC 122时钟脉冲(即,响应于LRC 122时钟脉冲的上升边)将新的NRZ-S输出209转换成逻辑一,和如果之前的NRZ-S输出209是一,则NRZ-S编码器电路208将响应于LRC 122时钟脉冲将新的NRZ-S输出209转换成逻辑零。在另一个示例中,如果当前LRB输入对应于逻辑一,那么如果先前的NRZ-S输出209是零,则新的NRZ-S输出209将保持逻辑零且不响应于LRC 122时钟脉冲而改变,且如果先前的NRZ-S输出209是一,则新的NRZ-S输出209将保持逻辑一且不响应于LRC 122时钟脉冲而改变。因此,如果当前LRB输入对应于逻辑零则经反转的NRZ-S输出211将转换,且如果当前LRB输入对应于逻辑一则经反转的NRZ-S输出211将维持其之前的状态。
NRZ-S编码(及解码,如本文所述的)被配置成容纳从印刷电路板中真和补信号的交叉布线而产生的极性反转。当位恢复是基于与该位相关联的值(例如,电压)时极性反转可产生错误。根据转换的存在或缺席来编码LRB提供了独立于极性反转的经编码输出,因为解码准确性依赖于检测转换的能力而不是恢复值。
经反转的NRZ-S输出211对应于经编码的LRB并表示低速率时钟LRC的每一个时钟周期的LRB输入。因此,多个经编码的LRB对应于包括反向通道信息的低速率位流。表示反向通道命令和/或数据的LRB序列可用帧安排,如本文所述。帧结构被配置成促进链路126的两端(即,节点元素102和链路伙伴120)的同步。
调制器206被配置成用经编码的LRB 211调制HR位序列生成器输出205(即,高速率位(HRB))。例如,如果经编码的LRB 211对应于逻辑零,那么经调制的输出可对应于输出205即真HRB。如果经编码的LRB 211对应于逻辑一,那么经调制的输出可对应于补输出205即补HRB。如本文所使用的,“真HRB”意味对应于高速率序列生成器输出205的位(即,非补位)的经调制HR位,且“补HRB”意味对应于经反转的高速率序列生成器输出205位的经调制HR位。
因此,调制模块212被配置成从HRC 124接收高速率时钟信号、从LRC 122接收低速率时钟信号和对应于反向通道命令和/或数据的低速率位流。调制模块212还被配置成用对应于HRC 124时钟速率的串行位速率生成HR位序列(串行地或并行地)并用具有对应于LRC122时钟速率的位速率的经编码LRB调制HR位序列以产生经调制的HR位流输出213。因此,经调制的HR位流输出213对应于用低速率位流调制的高速率位流。由于HRC时钟速率比LRC时钟速率高,一个LRB可调制多个HRB。可随后将经调制的HR位流输出213提供给PHY电路106的Tx116以用于经由链路126发送至链路伙伴106。
图2B示出了根据本公开的各种实施例的解调制模块的示例214。解调制模块214是图1中的解调制模块114、144的示例。解调制模块214被配置成从例如PHY电路136中的接收器146接收一个或多个接收器位判决RBD 220和至少部分地基于所接收的RBD恢复(即,确定)反向通道命令和/或数据位(LRB)。每一个RBD都与由网络控制器104经由链路126从节点102发送并由链路伙伴120的网络控制器134接收的经调制的HRB(在HR位流中)有关。RBD220可对应于经调制的HRB(即,真HRB或补HRB)或者可能已经在沿链路126行进期间出错并因此可能是位错误。解调制模块214被配置成至少部分地基于可包括一个或多个错误位的多个RBD 220而恢复反向通道命令和/或数据位LRB。解调制模块214被配置成从HRC(例如,图1的链路伙伴HR时钟154)接收高速率时钟信号。解调制模块214可如本文所述针对并行操作或串行操作而配置。
类似于调制模块212,在一些实施例中,解调制模块214可包括除以M电路217。除以M电路217被配置成从高速率时钟(例如HRC 124)接收时钟信号,并将时钟速率除以M,从而产生时钟信号HRCM。例如,如本文所述,可将除过的时钟信号HRCM提供给被配置成并行地处理M个RBD的并行化的真HRB检测器和/或并行化的补HRB检测器。
解调制模块214包括真HRB检测器221、补HRB检测器223和反转器230。真HRB检测器221和补HRB检测器223被配置成接收时钟信号CLK。在一些实施例中,解调制模块214可包括去串行化器219。去串行化器219被配置成接收串行RBD位流并将每一个M串行HRB并行化。在这些实施例中,CLK可对应于HRCM时钟信号。在这些实施例中,如本文所述,真HRB检测器221和补HRB检测器223可被配置成接收HRCM时钟信号和并行地处理M个位。在这些实施例中,反转器230可被配置成反转M个位。在其他实施例中,解调制模块214可被配置成串行地处理RBD。在这些实施例中,CLK可对应于HRC时钟信号。在这些实施例中,如本文所述,真HRB检测器221、补HRB检测器223和反转器230可被配置成以HRC时钟速率处理个别RBD。
真HRB检测器221被配置成检测对应于传输的真HRB的RBD。真HRB检测器221被配置成至少部分地基于多个RBD确定每一个RBD是否对应于真HRB。补HRB检测器223被配置成检测对应于传输的补HRB的RBD。补HRB检测器223被配置成至少部分地基于多个经反转的RBD225确定每一个RBD 225是否对应于补HRB。真HRB检测器221和补HRB检测器223被配置成输出与在时间间隔中接收的数个经检测的真HRB和数个经检测的补HRB有关的相应计数(例如,Compt(M)和Compc(M))。
例如,对于被配置成并行地处理RBD的真HRB检测器221和补HRB检测器223,真HRB检测器221可被配置成输出对应于在M个经预测的真HRB和对应的M个RBD之间的数个差的计数ComptM。类似地,补HRB检测器223可被配置成输出对应于在M个经预测的补HRB和对应的M个RBD之间的数个差的计数CompcM。
在另一个示例中,对于被配置成串行地处理RBD的真HRB检测器221和补HRB检测器223,真HRB检测器221可被配置成输出被配置成针对每一个RBD 220指示RBD是否对应于真HRB的逻辑值Compt。类似地,补HRB检测器223可被配置成输出被配置成针对每一个RBD 220指示RBD是否对应于补HRB的逻辑值Compc。
解调制模块214还包括转换检测电路252和NRZ-S解码器电路254。转换检测电路252被配置成检测真HRB和补HRB之间的切换(例如,真到补或补到真)。转换的存在被配置成指示逻辑零LRB被传输且在与LRC时钟周期有关的时间间隔中转换的缺席被配置成指示逻辑一LRB被传输。转换检测电路252被配置成接收时钟信号CLK、来自真HRB检测器221的比较真输出(Compt(M))和来自补HRB检测器223的比较补输出(Compc(M))。例如,转换检测电路252被配置成接收并行配置的时钟HRCM、ComptM和CompcM。在另一个示例中,转换检测电路252被配置成接收串行配置的时钟HRC、Compt和Compc。如本文所述,转换检测电路252还被配置成至少部分地基于与并行配置的ComptM和ComptcM有关的计数的比较和与串行配置的Compt和Compc有关的计数的比较检测转换。转换检测电路252被配置成提供与计数和/或比较有关的输出。
NRZ-S解码器电路254被配置成接收LRC时钟信号和转换检测电路252的输出。NRZ-S解码器电路254被配置成至少部分地基于转换检测电路252的输出来输出适当的(即,经恢复的)低速率位(LRB)。例如,如果输出指示转换,那么NRZ-S解码器电路254可被配置成提供逻辑零输出,且如果输出指示与LRC时钟周期有关时间段的转换的缺席,那么NRZ-S解码器电路254可被配置成提供逻辑一输出。
因此,调制模块212被配置成生成高速率位流和将对应于反向通道信息的低速率位调制到高速率位流上。在一些实施例中,如本文所述,生成和/或调制可被并行化,从而利用经减速的时钟。解调制模块214被配置成接收多个接收器位判决(RBD)和至少部分地基于对对应于真和/或补HRB的RBD的检测确定(即,检测)是否传输了对应于逻辑一的LRB或对应于逻辑零的LRB。如本文所述,对对应于真和/或补HRB的RBD的检测被配置成检测真和补HRB之间的转换的存在或缺席。
图3A示出了根据本公开的一个实施例的调制模块312的示例。调制模块312是图2A的调制模块212的一个示例并被配置用于串行操作。调制模块312被配置成生成高速率位序列并用低位速率编码的反向通道信息(即命令和/或数据)调制高速率位序列。
调制模块312包括被配置成生成高速率伪随机位序列(PRBS)的高速率(HR)位序列生成器300。当然,被配置成用于串行操作的其他高速率位序列生成器可用来生成可以是或可以不是随机的HR位序列。一般而言,PRBS生成器被配置成产生在一个间隔上随机但在多个间隔上重复的位序列。间隔中的持续时间(即,位的数目)与PRBS生成器的配置有关。对于诸如HR位序列生成器300的配置,持续时间与移位寄存器中的数个位(M)、数个丝锥(tap)和丝锥的位置有关。M-位PRBS生成器可被配置成产生以每间隔最高K=2M-1个位重复的随机位序列。例如,当M=31且一个丝锥位于位M-3(即位28)和位M-2(即位29)之间时,HR位序列生成器300可具有相关联的最大随机位间隔。当然,取决于可用的存储器、可用的处理器带宽等,其他PRBS生成器可使用不同的位长度、更多或更少的丝锥和一个或多个不同的位置。
HR位序列生成器300包括移位寄存器302和异或模块304。移位寄存器302包括M位并被配置成从高速率时钟(例如,HRC 124)接收时钟信号(例如,时钟脉冲)。移位寄存器302被配置成响应于来自HRC 124的输入的状态的变化(例如,HR时钟脉冲的上升边)来“移位”每一个位。例如,移位寄存器302可包括M个D型触发器,其中每一个触发器的输出耦合至相邻触发器的输入。到移位寄存器302的输入对应于到位1的输入且位M的输出305对应于移位寄存器302的输出。在操作中,响应于来自HRC 124的时钟脉冲,将位1的输出移位到位2中、位2的输出移位到位3中、并对移位寄存器302中的每一个位以此类推。由于移位寄存器的特性(例如,传播延迟和设置时间),对于2<=m<=M,新的存储的位m的值对应于先前的存储的位m-1的值。HR位序列生成器300包括丝锥,该丝锥被配置成将位M-3和M各自的输出(即,输出305)耦合至相应XOR 304的输入,且XOR 304的输出307耦合至移位寄存器302的位1的输入。此配置导致有对应于HRC 124的时钟速率的位速率的HR位序列生成器和每K(=2M-1)个位(即,最大随机位间隔)重复的随机位序列。在操作中,移位寄存器302是用至少一个非零位初始化的。用全零初始化移位寄存器302导致全零的位序列,即不随机。HR位序列生成器输出305(例如,伪随机高速率位(HRB)序列)可随后由经编码的反向通道信息调制。
调制模块312也包括非归零空间(NRZ-S)编码器电路308、反转器310和调制器XOR306。NRZ-S编码器电路308被配置成接收低速率反向通道命令和/或数据(即,低速率位(LRB)序列)和低速率时钟(例如LRC122)并针对每一个LRC时钟周期(及因此每个LRB)提供NRZ-S输出309。因此,每一个LRC的持续时间对应于一个LRC时钟周期。NRZ-S编码器电路308被配置成至少部分地基于LRB转换NRZ-S输出309。例如,NRZ-S编码器电路308被配置成如果LRB输入是逻辑零则转换NRZ-S输出309和如果LRB输入对应于逻辑一则维持其之前的输出状态。因此,NRZ-S输出309依赖于当前LRB输入和NRZ-S编码器电路308之前的输出309。将NRZ-S输出309提供给反转器310,从而产生经反转(即,补)NRZ-S输出311.
调制器XOR 306被配置成用经编码的LRB 311调制HR位序列生成器输出HRB 305以产生经调制的HR位序列输出313。如果经编码的LRB 311对应于逻辑零,那么经调制的HR位序列输出313对应于输出305。如果经编码的LRB 311对应于逻辑一,那么经调制的HR位序列输出313对应于补输出305。当然,XOR模块仅是可用来用相对较低速率的数据调制相对较高速率的位流的一个示例实现,并且在其他实施例中,其他调制器实现可用来用相对较低速率的经编码反向通道信息调制相对较高速率的位流。
因此,调制模块312被配置成从HRC 124接收高速率时钟信号、从LRC 122接收低速率时钟信号和对应于反向通道命令和/或数据的低速率位流。调制模块312还被配置成用对应于HRC 124时钟速率的位速率串行地生成HR位序列并用具有对应于LRC 122时钟速率的位速率的经编码LRB调制HR位序列以产生经调制的HR位流输出313。因此,经调制的HR位序列(即,流)输出313对应于用低速率位流调制的高速率位流。可随后将经调制的HR位流输出313提供给PHY电路106的Tx116以用于经由链路126发送至链路伙伴106。
图3B示出了根据本公开的一个实施例的解调制模块的示例314。解调制模块314是图2B的解调制模块214的一个示例并被配置用于串行操作。解调制模块314被配置成从例如PHY电路136中的接收器146接收接收器位判决RBD 320和至少部分地基于RBD恢复(即,确定)反向通道命令和/或数据位(LRB)。每一个RBD都与由网络控制器104经由链路126从节点102发送并由链路伙伴120的网络控制器134接收的经调制的HRB(在HR位流中)有关。RBD320可对应于经调制的HRB(即,真HRB或补HRB)或者可能已经在沿链路126行进期间出错并因此可能是位错误。解调制模块314被配置成至少部分地基于可包括一个或多个错误位的多个RBD而恢复反向通道命令和/或数据位LRB。解调制模块314被配置成从HRC(例如,图1的链路伙伴HR时钟154)接收高速率时钟信号。
解调制模块314包括真位检测器321、补位检测器323和反转器330。真位检测器321被配置成检测对应于传输的真HRB的RBD。真位检测器321被配置成至少部分地基于多个RBD确定每一个RBD是否对应于真HRB。真位检测器321包括第一M-位移位寄存器322、第一异或模块XOR 328和第一比较器XOR 326。第一移位寄存器322的配置可对应于移位寄存器302的配置以支持由真位检测器321恢复真HRB。例如,第一移位寄存器322在大小(M位)、丝锥的数目(2)和丝锥位置(位M-3和位M的输出)上与移位寄存器302相似。真位检测器321被配置成接收RBD 320并响应于HRC时钟脉冲(例如,在HRC时钟脉冲的上升边)将RBD 320移位到第一移位寄存器322的位一,将位一的输出移位到第一移位寄存器322的位二等等。第一移位寄存器322和第一XOR模块328被配置成在第一XOR模块328的输出产生经预测的真HRB 329。经预测的真HRB 329被配置成对应于图3A的XOR模块304的输出307,该输出307也是到HR位序列生成器300的移位寄存器302的位一的输入。当没有位错误时,经预测的真HRB 329被配置成当RBD序列对应于真HRB序列时对应于HR位序列生成器300的移位寄存器302的位一的输入。到第一移位寄存器322的位一的输入是当前RBD。比较器326被配置成比较经预测的真HRB 329和RBD 320。在RBD中没有位错误的情况下,如果经预测的真HRB 329与RBD 320相同(即,RBD 320对应于真HRB),则比较器326的输出Compt对应于逻辑零,否则对应于逻辑一。因此,真位检测器321被配置成通过将经预测的真HRB 329与RBD 320比较来检测对应于经发送的真HRB的RBD。
补位检测器323被配置成检测对应于传输的补HRB的RBD。补位检测器323被配置成至少部分地基于多个经反转的RBD确定每一个RBD是否对应于补HRB。补位检测器323包括第二M-位移位寄存器324、第二异或模块XOR 334和第二比较器XOR 332。第二移位寄存器324的配置可对应于移位寄存器302的配置以支持由补位检测器323恢复补HRB。例如,第二移位寄存器324在大小(M位)、丝锥的数目(2)和丝锥位置(位M-3和位M的输出)上与移位寄存器302相似。补位检测器323被配置成从反转器330接收经反转的RBD 325并响应于HRC时钟脉冲而将经转换的RBD 325移位到第二移位寄存器324的位一,将位一的输出移位到第二移位寄存器324的位二等等。与真位检测器321相似但有对应于补HRB的经调制的HR位流位,第二移位寄存器324和第二XOR模块334被配置成在XOR 334的输出产生经预测的HRB 335。经预测的HRB 335被配置成对应于图3A的XOR模块304的输出307,该输出307也是到HR位序列生成器300的移位寄存器302的位一的输入。当没有位错误时,经预测的HRB 335被配置成当RBD序列对应于补HRB序列时对应于HR位序列生成器300的移位寄存器302的一的输入。换言之,经预测的HRB335被配置成对应于经反转的补HRB。到第二移位寄存器324的位一的输入是经反转的当前RBD 325。如果当前RBD 325对应于补HRB,那么经反转的当前RBD对应于HRB(即,经反转的补HRB)。比较器332被配置成比较经预测的HRB 335和经反转的RBD 325。在没有错误的情况下,如果经预测的HRB 335与经反转的RBD 325相同(即,RBD对应于补HRB),则比较器332的输出Compc对应于逻辑零,否则对应于逻辑一。因此,补位检测器323被配置成通过将经预测的HRB 335与经反转的RBD 325比较来检测经发送的补HRB。
初始时,移位寄存器322和324可不提供有用的输出,因为检测对应于经发送的真或补HRB的RBD依赖于存储M个RBD的序列的移位寄存器。当已经接收了M个RBD之后,每一个移位寄存器322、324都可用相应的真或补RBD(及有可能用错误位)填充并可开始提供有用的输出。
一般而言,如果两个输入都相同(即,都是逻辑零或都是逻辑一)则双输入异或模块的输出是逻辑零,且如果输入不同(即,一个输入时逻辑零且另一个输入时逻辑一)则输出是逻辑一。如果到异或模块的两个输入都是补的,则异或模块的输出与当异或模块的两个输入都是非补的(即,未经反转)时相同。例如,在链路引发的错误不存在的情况下,如果当前RBD 320和之前的M个RBD对应于真HRB,那么第一移位寄存器322将用真HRB填充,经预测的真HRB 329将对应于当前RBD 320(即,真HRB)且比较器326的输出Compt将是逻辑零。经预测的真HRB 329对应于图3A的XOR 304的输出307。继续此示例,第二移位寄存器324将用补HRB(即,经反转的HRB)填充,输出335将对应于当前RBD 320而不是经反转的当前RBD 325且比较器332的输出Compc将是逻辑一。在另一个示例中,在链路引发的错误不存在的情况下,如果当前RBD 320和之前的M个RBD对应于补HRB,那么第一移位寄存器322将用补HRB填充,输出329将对应于真HRB而不是当前RBD(补HRB)且比较器326的输出Compt将是逻辑一。继续此示例,第二移位寄存器324将用真HRB(经反转的RBD)填充,经预测的HRB 335将对应于经反转的当前RBD且比较器332的输出Compc将是逻辑零,因为当前RBD对应于补HRB且因此经反转的当前RBD 325对应于经反转的补HRB,即真HRB。因此,真位检测器321被配置成检测经发送的真HRB并针对每一个经检测的真HRB输出(Compt)逻辑零,且补位检测器323被配置成检测经发送的补HRB并针对每一个经检测的补HRB输出(Compc)逻辑零。真位检测器321和补位检测器323的输出可随后用来检测真和补HRB之间的转换并因此促进每一个LRB和反向通道信息的恢复。
解调制模块314也包括第一上/下计数器电路356、第二上/下计数器电路358、比较电路360和NRZ-S解码器电路354。第一比较器326的输出Compt耦合至第一计数器电路356的输入且第二比较器332的输出Compc耦合至第二计数器电路358的输入。第一和第二计数器电路356、358二者都被配置成接收HRC时钟信号和响应于HRC时钟信号(即,响应于HRC时钟脉冲的上升边)根据Compt或Compc各自的值而递增(即,向上计数)或递减(即,向下计数)他们各自的计数(即,第一计数和第二计数)。如果Compt是逻辑一(即,RBD不是真HRB)则第一计数器电路356被配置成向上计数,且如果Compt是逻辑零(即,RBD对应于真HRB)则第一计数器电路356被配置成向下计数。类似地,如果Compc是逻辑一则第二计数器电路358被配置成向上计数(即,RBD不是补HRB),且如果Compt是逻辑零(即,RBD对应于补HRB)则第二计数器电路358被配置成向下计数。因此,如果RBD序列对应于真HRB序列则第一计数器356被配置成向下计数且第二计数器358被配置成针对序列中不是位错误的每一个RBD向上计数。类似地,如果RBD序列对应于补HRB序列则第一计数器356被配置成向上计数且第二计数器358被配置成针对序列中不是位错误的每一个补RBD向下计数。因此,第一计数和第二计数与在对应于低位速率的时间间隔中接收的数个经检测的真HRB和数个经检测的补HRB有关。
用最小和最大可允许计数器值(即,计数)配置了第一和第二计数器356和358。在一些实施例中,最小可允许计数器值可以是零且最大可允许计数器值可以是N。利用计数器356和358和对计数器值的限制被配置成在没有位错误的情况下(例如,在均衡器设置调整之前和/或期间)提供对补和真经调制的HRB序列之间的转换的健壮的检测。不是仅基于两个相邻的RBD且其中一个可以是位错误来识别转换,而是用多个RBD的序列来改善检测转换中的准确性。限制最大和最小计数器值被配置成通过瞄准转换来促进检测时间间隔中的转换或转换缺席。最大可允许计数器值N可以与移位寄存器302、322和324中位的数目M有关。例如,最大可允许计数器值可以大概是位的数目M的三倍,例如对于M等于31时是100。因此,计数器(例如计数器356和358)可能不向上计数超过最大计数器值且可能不向下计数低于最小计数器值。
如本文所述,LRC的时钟速率可以是HRC的时钟速率的分数,因此每一个LRB都可调制HRB序列。例如,LRC的时钟速率可被配置成HRC的时钟速率的1/1280。在此示例中,每一个LRB可调制1280个HRB。限制最大和最小可允许计数器值被配置成促进检测补和真HRB之间的转换。
比较电路360被配置成比较第一和第二计数器356和358各自的第一计数B和第二计数A。比较电路360还被配置成将比较的结果361提供给NRZ-S解码器电路354。如果第二计数A小于第一计数B(即,A<B),那么比较结果361对应于逻辑一,且如果第二计数A大于或等于第一计数B(即,A≧B),那么比较结果361对应于逻辑零。比较结果361的状态改变被配置成对应于对应于真HRB的RBD序列和对应于补HRB的RBD序列之间的转换,即从真HRB到补HRB的转换或从补HRB到真HRB的转换。因此,第一和第二计数器356和358以及比较电路360被配置成在RBD中存在位错误的情况下检测对应于真HRB的RBD序列和对应于补HRB的RBD序列之间的转换。
NRZ-S解码器电路354被配置成从比较电路360接收比较结果361和LRC时钟信号。NRZ-S解码器电路354被配置成响应于LRC时钟脉冲(例如,LRC时钟脉冲的上升边)而至少部分地基于比较结果361提供接收的LRB输出。在操作中,NRZ-S解码器电路354被配置成监视从比较电路360输出的比较结果361。如果NRZ-S解码器电路354在对应于时钟周期的时间间隔(即,LRC时钟时段)期间检测到比较结果361的状态改变(即,转换),则NRZ-S解码器电路354被配置成将对应的经发送LRB标识为逻辑零并响应于LRC时钟脉冲而输出逻辑零。如果NRZ-S解码器电路354未在时钟时段期间检测到比较结果361的状态改变,那么NRZ-S解码器电路354可将对应的经发送LRC标识为逻辑一并响应于LRC时钟脉冲而将逻辑一作为检测到的LRB输出。因此,解码器电路354被配置成至少部分地基于第一计数和第二计数的比较来恢复每一个LRB。
例如,如果RBD 320对应于真HRB(并假定RBD中没有位错误),那么Compt是逻辑零且Compc是逻辑一。以HRC速率,第一计数器356将向下计数,递减B且第二计数器358将向上计数,递增A。如果接收到对应于真HRB的RBD序列,那么第一计数器356可继续向下计数从而递减B且第二计数器358可继续向上计数从而递增A。如果初始时A>=B(比较电路输出361对应于逻辑零),那么只要RBD对应于真HRB,第一计数器356可继续以HRC速率向下计数直到B达到计数最小值(例如,零),且第二计数器358可继续以HRC速率向上计数直到A达到计数最大值N(例如,100)。在此场景中,比较电路输出361将不进行转换且NRZ-S解码器电路354可响应于LRC脉冲而输出逻辑一以对应于LRB。另一方面,如果初始时A<B(比较电路输出361对应于逻辑一),则第一计数器356可向下计数且第二计数器358可向上计数直到A=B,在这点时比较电路361将从逻辑一转换到逻辑零。NRZ-S解码器电路354可随后响应于LRB时钟而输出逻辑零以对应于LRB。
继续此示例,如果真HRB正被传输但RBD包括一些位错误,则第一计数器356将对于对应于真HRB的RBD向下计数而递减B但对于对应于位错误的RBD将向上计数。类似地,第二计数器358将对于对应于真HRB的RBD向上计数而递增A但对于对应于位错误的RBD向下计数。位错误的影响将改变比较电路输出361将从逻辑一转换到逻辑零处的点(对于初始时A<B的情况)。由于计数器356、358在HRC速率计数且HRC速率以例如1280的因子高于LRC速率,转换点中几个HRC间隔的变化可能不会显著地影响基于比较电路输出361的转换而识别经发送的LRB(即,反向通道信息位)是零。
转换的存在被配置成指示逻辑零LRB的传输且在大概一个LRB间隔(即,一个LRC周期)中转换的缺席被配置成指示逻辑一的传输。初始时,在多于一个间隔(例如,两个间隔)中转换的缺席可指示对应于逻辑一的经发送的LRB。取决于计数器的初始值,NRZ-S解码器电路354可能不会针对大于一个LRC时钟时段的时间间隔准确地标识逻辑一(无转换)。换言之,初始时对于大于一个LRC时钟时段的时间间隔转换的缺席可指示经发送的LRB是逻辑一。
因此,解调制模块314被配置成接收与可包括位错误的经调制的HR位序列(即,可包括至少一个真HRB和至少一个补HRB的经调制的HRB序列)有关的RBD序列。解调制模块314还被配置成解调制经调制的HR位序列以至少部分地基于数个真HRB和数个补HRB而恢复低速率位流(包括反向通道信息)。解调制模块314被配置成至少部分地基于在补和真(或真和补)经发送的经调制HRB之间的经接收RBD中转换的存在或缺席而检测经发送的LRB是逻辑零还是逻辑一。检测转换被配置成容纳和/或补偿可从例如印刷电路板中真和补信号的交叉布线而产生的极性反转。利用多个经接收的RBD以便检测转换被配置成在与经接收的经调制HRB相关联的位错误存在的情况下(即,在均衡器调整之前和/或期间)提供健壮性。因此,利用本公开的教示,反向通道信息可在以链路速率在均衡器调整之前和/或期间操作的链路上可靠地通信。
图4A示出了根据本公开的一个实施例的被配置用于并行操作的调制模块412的示例。调制模块412包括除以M电路401、并行高速率位序列生成器400、NRZ-S编码器电路408、反转器410、调制器406和M到1串行化器415。调制模块412被配置成生成高速率位序列、用经编码的反向通道信息调制HR位序列和将经调制的HR位序列提供给例如发射器116用于通过链路126发送。
除以M电路401被配置成从高速率时钟(例如,HRC 124)接收时钟信号以将HRC时钟信号除以M并将经除过的时钟信号(HRCM)提供给高速率位序列生成器400。例如,M可以是40。当然,可至少部分地基于时钟速率的期望降低和包括例如寄存器、反转器、XOR模块等的可用的资源而使用M的其他值。HR位序列生成器400被配置成针对每一个HRCM时钟周期并行地生成HR位序列的M位。这样的并行化被配置成促进以比HRC时钟速率相对较小(例如,小M的因子倍)的时钟速率生成HR位序列。HR位速率是通过每一个HRCM时钟周期并行地生成M位来维护的。
HR位序列生成器400包括多个(例如,M个)寄存器402和包括M个下一状态功能的下一状态功能电路404。寄存器402被配置成存储M个HRB,其中每一个HRB与相应的经发送HRB有关,并每一个HRCM时钟周期输出M个HRB 405。从寄存器402输出的M位对应于当前状态且到寄存器402的M位输入对应于高速率位序列的M位的下一状态。与图3A的移位寄存器302相似,寄存器402的输出405在他们的输入407改变时不立即改变。下一状态功能电路404可被配置成接收M个当前状态HRB 405和至少部分地基于M个当前状态HRB 405而并行地生成M个下一状态HRB 407。下一状态功能电路404可以是异步的并可因此在与寄存器402相关联的设置时间之后输出M个下一状态HRB 407,该设置时间小于HRCM的时钟周期。下一状态功能电路404可被配置成针对每一个HRCM的时钟周期并行地生成高速率位序列的M个HRB(即,下一状态HRB 407)。例如,下一状态功能404可被配置成生成M个伪随机下一状态HRB。当然,其他HR位序列可根据可用的资源和/或M个下一状态功能404的配置而生成。HR位序列生成器400被配置成每一个HRCM时钟周期输出M个当前状态HRB 405至调制器406。
NRZ-S编码器电路408被配置成接收反向通道信息(即,低速率数据)和低速率时钟信号。如本文所述,NRZ-S编码器电路408还被配置成编码LRB,随后将经编码的LRB反转并将经反转的经编码LRB输出411提供给调制器406。例如,调制器406包括M个XOR模块,每一个XOR模块配置成接收经反转的经编码LRB输出411及来自HR序列生成器400的相应的当前状态HRB和将经反转的经编码LRB输出411及相应的当前状态HRB异或。M个当前状态HRB 405的每一个当前状态HRB都是HR位序列的HRB。因此,调制器406被配置成用经反转的经编码LRB输出411并行地调制M个HRB。调制器406被配置成并行地输出M个经调制的HRB。串行化器415被配置成接收并行的M个经调制的HRB和用对应于HRC时钟频率的时钟频率将并行HRB转换成串行HRB 413。可随后将经串行化的HRB 413提供给发射器用于经由链路126发送。
因此,调制模块412被配置成M位并行地生成高速率位序列和用低速率反向通道信息调制HR位序列。并行地生成HR位序列的M位被配置成针对HR位序列生成器400允许慢M的因子倍的时钟速率。
图4B示出了根据本公开的一个实施例的被配置用于并行操作的解调制模块414的示例。解调制模块414是图2B的解调制模块214的一个示例并被配置用于并行操作。解调制模块414被配置成从例如PHY电路136中的接收器146接收多个接收器位判决RBD 420和至少部分地基于可包括一个或多个位错误的RBD恢复(即,确定)反向通道命令和/或数据位(LRB)。解调制模块414包括除以M电路417、去串行化器419、真HRB检测器421、反转器430、补HRB检测器423、转换检测电路452和NRZ-S解码器电路454。
除以M电路417被配置成从高速率时钟(例如,HRC 124)接收时钟信号以将HRC时钟信号除以M并将经除过的时钟信号(HRCM)提供给真HRB检测器421、补HRB检测器423和转换检测电路452。去串行化器419被配置成接收多个(例如,M个)串行RBD 420和并行地输出M个RBD。可将M个并行化的RBD 420'并行地提供给真HRB检测器421(即,对应于M个下一状态RBD420')和并行地提供给反转器430。反转器430被配置成并行地反转M个RBD的每一个,和因此将对应于M个经反转的下一状态RBD 425的M个经反转的RBD作为输出提供。
真HRB检测器421包括M个配置成存储M个RBD(即,对应于当前状态HRB 427的M个RBD)的寄存器422、配置成确定M个经预测的真下一状态HRB 429的下一状态功能电路428和配置成将M个经预测的真下一状态HRB 429与M个经接收的下一状态RBD 420'比较和提供对该差的计数的计数位差电路426。寄存器422和下一状态功能电路428被配置成与图4A的寄存器402和下一状态功能电路404类似地促进由真HRB检测器421检测真HRB。从寄存器422输出的M位对应于当前状态且到寄存器422的M位输入对应于高速率位序列的M位的下一状态。
例如,初始时去串行化器419可响应于对应于来自除以M电路417的HRCM的第一时钟脉冲而将可存储在寄存器422中的第一M个RBD 420'作为输出提供。这些第一M个RBD可随后对应于当前状态HRB 427并可对于下一状态功能电路428可用(例如,在设置时间之后)。下一状态功能电路428被配置成至少部分地基于M个当前状态HRB 427而确定经预测的下一状态HRB 429。在第二HRCM时钟脉冲上,第二M个RBD可从去串行化器419获得。这些第二M个RBD可随后对应于下一状态RBD 420'。至少部分地基于第一M个RBD而确定的经预测下一状态HRB 429可由下一状态功能电路428提供给计数位差模块426。响应于第二HRCM时钟脉冲,计数位差模块426可被配置成将M个经预测的下一状态HRB 429与第二M个RBD(即,实际下一状态RBD)逐位地进行比较并对于每一个差递增计数,从而生成比较结果ComptM。ComptM对应于M个下一状态RBD 420'和M个经预测的下一状态HRB 429之间的数个差。
计数位差模块426被配置成将对应于HRCM时钟间隔的下一状态RBD 420'和经预测的下一状态HRB 429之间的位差的计数的二进制表示的ComptM作为输出提供。ComptM可包括多个位(例如,x个位),其中位的数目x是至少部分地基于所处理的并行RBD的数目M。ComptM的大小调整为容纳最大数目的位差,即被配置成表示M。例如,对于M=40,ComptM可包括6个位(即,x=6),因为6个位可表示大至63(无符号整数)。可随后将ComptM提供给转换检测电路452。
类似地,补HRB检测器423包括M个配置成存储M个经反转的RBD的寄存器424、配置成确定M个经预测的下一状态HRB 435的下一状态功能电路434和配置成将M个经预测的下一状态HRB 435与M个经反转的经接收的下一状态RBD 425'比较和提供对该差的计数的计数位差电路432。与图3B的补HRB检测器323相似,补HRB检测器423被配置成在相关联的RBD对应于补HRB时使用可对应于经反转的补HRB(即,真HRB)的经反转RBD来检测补HRB。寄存器424和下一状态功能电路434被配置成与图4A的寄存器402和下一状态功能电路404类似地促进由补HRB检测器423检测补HRB。从寄存器424输出的M位对应于当前状态且到寄存器424的M位输入对应于高速率位序列的M位的下一状态。补HRB检测器423被配置成与真HRB检测器421相似地操作,除了有M个经反转的RBD 425作为输入之外,并因此被配置成检测补HRB。计数位差模块432被配置成将对应于经反转的下一状态RBD 425和经预测的补下一状态HRB435之间的位差的计数的二进制表示(即,x个位)的CompcM作为输出提供。可随后将CompcM提供给转换检测电路452。
转换检测电路452包括比较电路460和上/下计数器电路457。比较电路460被配置成分别从真HRB检测器421和补HRB检测器423接收ComptM和CompcM。比较电路460被配置成如果ComptM大于或等于CompcM则将逻辑零作为输出提供和如果ComptM小于CompcM则将逻辑一作为输出。
上/下计数器电路457被配置成如果ComptM大于或等于CompcM则响应于来自HRCM的时钟脉冲向下计数和如果ComptM小于CompcM则向上计数。上/下计数器电路457可包括最大计数值N和最小计数值负N(即,-N)。因此,上/下计数器电路457的计数可在-N到+N的包含性范围中。这样的计数值限制被配置成促进检测真和补HRB之间的转换。上/下计数器电路457被配置成如果计数值小于零则将逻辑一作为输出461提供和否则(即,计数值大于或等于零)将逻辑零作为输出461提供。上/下计数器电路457的输出461可响应于时钟脉冲HRCM(即,当上/下计数器电路457被配置成更新其计数值)而改变状态。因此,当上/下计数器电路457的计数器从大于或等于零减少到小于零或从小于零增大到零时,上/下计数器电路457的输出461可响应于时钟脉冲HRCM而改变状态。
例如,如果在没有位错误的情况下,M个下一状态RBD 420'对应于经发送的真HRB,那么M个经预测的真下一状态HRB 429可对应于M个下一状态RBD 420'且计数位差模块426可输出为零的ComptM。继续此示例,M个经反转的下一状态RBD 425可随后不对应于补HRB检测器423的M个经预测的下一状态HRB 435且计数位差模块432可输出表示值M的CompcM。由于ComptM=0小于CompcM=M,比较电路460可随后将逻辑一作为输出提供给上/下计数器电路457。上/下计数器457可随后响应于HRCM时钟脉冲而计数加一。如果初始时上/下计数器电路457计数大于或等于零,那么上/下计数器电路457的输出可保持为零。
继续此示例,如果接收了一组或多组对应于经发送的补HRB的M个RBD,那么每一个M个下一状态RBD 420'可不再对应于相应的M个经预测的真下一状态HRB 429且计数位差模块426可输出大于零且小于或等于M的ComptM。每一个M个经反转的下一状态HRB 425可随后对应于补HRB检测器423的相应M个经预测的下一状态HRB 435且计数位差模块432可输出为零(或近零,取决于位错误和/或经发送的HRB是否在相应的M个RBD内从真转换到补)的相应CompcM。比较电路460可随后针对其中相应的ComptM大于或等于相应的CompcM的每一个M个RBD输出相应的逻辑零。上/下计数器电路457可随后针对其中相应的ComptM大于或等于相应的CompcM(只要计数值大于-N)的每一个比较响应于HRCM而向下计数。如果初始时上/下计数器电路457计数大于或等于零,那么当计数值达到负一时上/下计数器电路457的输出可转换。此转换被配置成指示RBD中真和补HRB之间的转换。与图3B的真HRB检测器321的XOR328和补HRB检测器323的XOR 334相似,下一状态功能电路428可等同于下一状态功能电路434。
NRZ-S解码器电路454被配置成从上/下计数器电路457接收输出461和LRC时钟信号。NRZ-S解码器电路454还被配置成至少部分地基于来自上/下计数器电路457的输出461响应于LRC时钟信号而提供LRB输出。例如,当输出461从零转换到一或从一转换到零时,NRZ-S解码器电路454被配置成响应于LRC时钟脉冲而输出对应于逻辑零的LRB。继续此示例,如果输出在与LRC的时钟周期有关的时间间隔中没有转换,那么NRZ-S解码器454可被配置成输出对应于逻辑一的LRB。
因此,解调制模块414被配置成接收与可包括位错误的经调制的HR位序列(即,可包括至少一个真HRB和至少一个补HRB的经调制的HRB序列)有关的RBD序列。解调制模块414还被配置成并行地解调制多个(例如,M个)RBD以至少部分地基于数个真HRB和数个补HRB而恢复低速率位流(包括反向通道信息)。解调制模块414被配置成至少部分地基于多个经接收的RBD中在补和真(或真和补)经传输的经调制HRB之间转换的存在或不存在而检测经传输的LRB是逻辑零还是逻辑一。并行地处理M个RBD被配置成促进以对应于HRC除以M的时钟速率操作解调制模块414。利用多个经接收的RBD以便检测转换被配置成在与经接收的经调制HRB相关联的位错误存在的情况下(即,在均衡器调整之前和/或期间)提供健壮性。因此,利用本公开的教示,反向通道信息可在均衡器调整之前和/或期间在以链路速率操作的链路上可靠地通信。
图5示出了根据本公开的一个实施例的反向通道位序列和帧结构的示例500。应注意,图5中时间轴是从右向左朝向的(即,沿着时间轴向左移时时间增加)。图5还示出了根据本公开的各种实施例的帧结构。每一个帧502包括84个位并包括多个字段。字段包括开始位504(有对应于逻辑零的值)、帧类型字段506(在此示例中8个位)、在此示例中包括四个字节的数据字段508、奇偶位510、零位512和包括41个逻辑一位的停止位字段514。帧类型字段506和数据字段508被配置成携带反向通道信息。
帧502中的每一个位都对应于一个LRB。在此示例500中,LRB序列520包括对应于帧502的LRB、之前帧522的一部分和后续帧524的一部分。NRZ-S波形530示出了由例如NRZ-S编码器电路208如本文所述编码的LRB序列520。时间间隔532示出了逻辑零LRB序列的NRZ-S输出(即,每一个位的NRZ-S输出中的转换)且时间间隔534示出了逻辑一LRB序列的NRZ-S输出(位的NRZ-S中没有转换)。
帧结构被配置成促进获得帧同步。未能获得帧同步可指示图1的节点102和链路伙伴120以不同的位速率操作。例如,节点元素102和链路伙伴120可被配置成以他们各自的最大链路操作速率开始链路初始化时段。如果他们各自的最大链路操作速率不同,则试图获得帧同步可能失败。操作速率可基于帧同步失败信息而调整从而节点102和链路伙伴120以同一位速率操作且可随后达到帧同步。例如,如果在链路两端的位速率不同,则节点元素102和链路伙伴120可能不能达到位同步且反向通道模块108、138可因此不能达到帧同步。因此,此帧同步的失败可用来指示不兼容的位速率。
一旦操作位速率已经调整使得节点102和链路伙伴120以同一链路速率操作,反向通道通信就可用来促进节点102和链路伙伴120二者处的均衡器调整。由于反向通道信息被配置成调制HR位序列,HR位序列可用于在均衡器设置至少部分地基于反向通道通信而被调整时确定均衡化的质量。
前述示例实施例被配置成在节点元素和链路伙伴之间提供连续的且至少部分同时的反向通道通信和链路初始化通信。低位速率反向通道通信可因此使用以高位速率(链路速率)操作的链路通过用对应于反向通道信息的LRB调制HRB而容纳。因此,可避免模式切换同时在链路初始化期间提供健壮的反向通道通信。
图6是根据本发明的各种实施例的调制操作600的流程图。具体而言,流程图600示出了链路初始化时段期间调制模块的调制操作。此实施例的操作包括生成高速率位序列602。操作604包括将包括反向通道信息的低速率位流编码。低速率可对应于高速率的分数。操作606包括用经编码的低速率位流调制HR位序列。操作608包括将经调制的HR位序列提供给PHY Tx电路用于传输至链路伙伴。
流程图600的操作被配置成生成HR位序列和用包括反向通道信息的经编码低位速率流调制HR位序列,因此促进以对应于高位速率的链路速率传输反向通道信息。
图7是根据本发明的各种实施例的解调制操作700的流程图。具体而言,流程图700示出了链路初始化时段期间解调制模块的操作的一个示例实施例。此实施例的操作包括接收与包括至少一个真HRB和至少一个补HRB的所接收的经调制HR位序列有关的接收器位判决(RBD)序列,702。每一个HRB都对应于或者有关于流程图600的经传输的经调制HR位流位。此实施例的操作包括解调制HR位序列以至少部分地基于检测到真HRB和补HRB之间的转换的存在或不存在而恢复低速率位流,704。低速率位流包括反向通道信息。
流程图700的操作被配置成通过检测真HRB序列和补HRB序列之间的转换而恢复对应于反向通道信息的经传输的LRB。在均衡器设置调整之前和/或期间,可在接收器位判决中存在位错误的情况下恢复反向通道信息。
图8是根据本发明的各种实施例的解调制操作800的另一流程图。具体而言,流程图800示出了图7的操作704的一个示例。此实施例的操作包括至少部分地基于多个RBD而确定每一个RBD是否对应于真HRB,802。操作804包括反转每一个RBD。操作806包括至少部分地基于多个经反转的RBD而确定每一个经反转的RBD是否对应于补HRB。此实施例的操作包括提供与在对应于低速率的时间间隔中接收的数个经检测的真HRB和数个经检测的补HRB有关的第一计数和第二计数,808。操作810包括至少部分地基于第一计数和第二计数的比较而恢复低速率位流中的每一个低速率位(LRB)。有关的计数值之间的转换(例如,第一计数大于等于第二计数转换成第一计数小于第二计数)被配置成指示对应于逻辑零的LRB,且对应于LRB间隔的时间段中切换的不存在可指示对应于逻辑一的LRB,如本文所述。
流程图800的操作被配置成在由低速率位流调制的HR位流中存在位错误的情况下恢复包括反向通道信息的低速率位流的LRB。
图9是根据本发明的各种实施例的反向通道操作900的流程图。具体而言,流程图900示出了链路初始化时段期间节点元素和/或链路伙伴的操作的一个示例实施例。此实施例的操作从开始链路初始化开始,902。此实施例的操作包括发起反向通道通信,904。例如,反向通道模块可被配置成向调制器模块发信号以生成HR位序列(以HRC时钟速率)并可将反向通道命令和/或数据(LRB)提供给调制器模块用于调制到HR位序列上。
操作906包括建立链路速率。链路速率对应于数据模式中链路的位速率,即,被配置成高速率。在一些实施例中,节点元素和链路伙伴可被配置成以他们各自的最大链路操作速率开始链路初始化时段。节点元素和链路伙伴可被配置成利用与反向通道通信相关联的帧结构来同步帧并因而确定正确的操作速率。节点元素和链路伙伴处的时钟速率的不匹配通常可导致节点元素和链路伙伴之间的位同步的失败,这可随后导致反向通道帧同步的失败。这样的帧同步失败可随后由例如反向通道模块利用来指示不兼容的位速率。
操作908包括调整均衡器设置。节点元素和/或链路伙伴可被配置成一旦已经建立了链路操作速率就调整他们各自的均衡器设置。当均衡器设置正被调整时可进行反向通道通信,从而促进均衡化。操作910包括确定均衡化的质量。例如由反向通道信息调制的高速率位流可用来确定均衡化的质量。HR位流的位速率对应于以链路的速率操作的数据模式,因此均衡器调整和均衡化质量的确定可在反向通道信息正被通信的同一时间使用HR位流来执行。流程图的操作可随后返回,912。
流程图900的操作被配置成使用经调制到HR位序列上的低位速率反向通道命令和/或数据来执行链路初始化功能。链路初始化功能可用以其数据模式链路速度或接近的速度操作的链路来执行。根据本公开的教示将低位速率反向通道信息调制到HR位序列上被配置成在链路初始化时段期间提供健壮的反向通道信息的通信。
在链路初始化确定高位速率
如上所述,高数据速率位流被用来编码低数据速率位流用于反向通道通信。通常节点102和链路伙伴支持多种高数据速率(链路速度)和多种均衡化设置,并且通常节点102和链路伙伴120有至少一个公共的支持高位速率通信的链路速度。然而,在链路初始化时,节点102和链路伙伴120通常不察觉彼此的链路速度性能或对于给定链路速度的最优均衡化设置。为了使节点102和链路伙伴120能锁定在公共链路速度上,节点的102被配置成循环通过多个链路速度和多个发射器均衡化预设。链路伙伴120被类似地配置成循环通过链路速度和均衡化预设。节点102和/或链路伙伴120被配置成确定是否支持给定链路速度和均衡化预设值。如本文所述,链路初始化可在发起了链路轮询状态且完成了链路反跳状态之后发生,从而链路准备好以高位速率发送和接收数据流。
因此,并再次参考图1,网络控制器104也可包括链路速度循环模块156和均衡化预设循环模块158。在初始化之后,Tx电路116被配置成以节点102的最大可用链路速度(高位速率)开始将帧发送至链路伙伴120的Rx电路146。均衡化预设循环模块158被配置成循环通过至少一个处于最大链路速度的均衡化预设设置。链路速度循环模块156被配置成使Rx电路118能在链路126的初始化之后从链路伙伴120的Tx电路148接收帧的时候循环通过可用的链路速度。链路伙伴120可包括配置成以与模块156相似的方式操作的链路速度循环模块160和配置成以与模块158相似的方式操作的均衡化预设循环模块162。
在***100的初始化之后,链路速度循环模块156被配置成发起发射器(Tx电路116)以例如与节点102相关联的最高数据速率发送数据帧(例如,下面描述的通告帧)。链路速度循环模块156也被配置成发起接收器(Rx电路118)进入监听状态以“监听”来自链路伙伴120的发射器148的接收帧(例如,下面描述的通告帧和优选预设帧)。可启用监听状态以由接收器118支持的最大数据速率接收经传输的数据帧。当链路速度由链路速度循环模块156选择时,均衡化预设循环模块158被配置成循环通过至少一个均衡器预设并将该至少一个均衡器预设应用于发射器118。链路速度循环模块156还被配置成在所选择的链路速度上停留发射器停留时间段。发射器停留时间段可以是基于,例如,链路伙伴120识别给定链路速度所花费的时间量、循环通过与模块158相关联的均衡器预设数量所需的时间量、链路伙伴120的接收器146“锁定”到处于所选择的链路速度和所选择的均衡器设置的数据流所花费的时间量等等。链路伙伴120的接收器146“锁定”到经传输的数据流所需要的时间量可以是基于,例如,与链路伙伴120相关联的时钟数据恢复(CDR)时间段、与链路伙伴相关联的PLL电路校准计时需求等等。链路速度循环模块156通常被配置成在所选择的数据速率上停留足够长以允许均衡化预设模块158循环通过经定义的均衡器设置预设数至少一次,及通常数次,从而提供足够的时间和重叠以使接收器146“锁定”到数据流。
在接收器侧,在初始化之后,链路伙伴120被配置成将接收器电路146放置在监听状态以使接收器能够从节点102的传输电路116接收经传输的数据帧。可启用监听状态以由接收器146支持的最大数据速率接收经传输的数据帧。接收器146被配置成以最大数据速率停留接收器停留时间段,该接收器停留时间段至少部分地基于(发射器116)的发射器停留时间段、允许重叠的缓冲区时间段等。一般而言,接收器146的接收器停留时间段大于发射器116的发射器停留时间,例如如下给出:
Rx停留时间=(均衡器预设值的数目+1)×Tx停留时间+PLL电路校准时间;
其中+1值提供均衡化设置值的重叠以保证接收器在给定高位速率窗口中评估所有的发射器均衡化预设。
如果接收器146不能锁定到来自节点102的经传输数据流,则链路伙伴120被配置成将Rx电路146的监听速度移位到例如链路伙伴120所支持的下一最快链路速度。如果接收器电路146能够“锁定”到所接收的数据流,则链路伙伴120的发射器148被配置成发送确认数据帧到节点102,指示接收器146在经传输的数据速率和经选择的均衡化设置可操作。由节点102和链路伙伴120发送和接收的帧可使用以上参考图1-9所述的调制方案(例如,PRBS调制解调制)而编码/解码和调制/解调制。
在一些实施例中,链路126是双向的,因此,当链路伙伴120的接收器146“锁定”到给定数据速率和均衡化设置时,所发送的确认帧可不由节点102“锁定”,意味着Tx电路148和Rx电路118之间的链路在所选择的速度和均衡化设置不可操作(即使Tx电路116和Rx电路146之间的链路在所选择的速度和均衡化设置可操作)。在此情况中,链路速度循环模块160和均衡器预设模块162可在发送来自发射器148的通知帧到接收器118以试图建立发射器148和接收器118之间的可操作链路的同时开始循环通过链路速度和均衡化设置。因此,在一些实施例中节点102和链路伙伴120之间的链路速度和/或均衡化设置可以不对称。
在一些实施例中,一旦建立了启用节点102和链路伙伴120之间的高速度通信的可接受链路速度和均衡化设置,初始化过程可终止且***可被放置在另一可操作状态,例如如上所述的反向通道通信状态。在其他实施例中,节点102和链路伙伴120可循环通过所有可用的链路速度和均衡化预设,并且如果确定了多个可接受参数,则节点102和/或链路伙伴120可从参数群之间选择以基于例如所接收的信号脉冲的位错误率(BER)幅度评估(例如,SERDES)等而确定“最优”链路速度和均衡化设置。一般而言,如果没有确定可接受的链路速度/均衡化预设,则***可终止初始化状态并移到下一可操作状态。
由均衡化预设模块158和/或模块162选择的均衡化预设可包括,例如,一组均衡化设置或参数,该组均衡化设置或参数的数目和类型可在节点102和链路伙伴120之间先验地建立。在一些实施例中,均衡化预设可从“低度”均衡化到“中度”均衡化到“高度”均衡化变化,因为链路126上的损失在初始化时可能是未知的。在此上下文中,“低度”、“中度”和“高度”一般指为了降低链路的位错误率的对有助于位错误的链路特性(例如,频率响应、噪音等等)的补偿量。在一个示例实施例中,均衡化预设可包括“低度”均衡化设置、“中度”均衡化设置、“高度”均衡化设置和预定义的均衡化设置。预定义的均衡化设置可包括,例如,基于信道质量特性的先验知识的均衡化设置。在一些实施例中,均衡化预设可用来提供对最优均衡器设置的估计从而均衡器设置可在其他可操作状态(例如,如上所述的反向通道通信期间的均衡器设置)期间调整。
图10A示出了根据本公开的各种实施例的描绘发射器停留时间以确定在发射器与接收器之间的链路初始化时的高数据速率和均衡化设置的简化的发射器/接收器***1000。在此示例中,发射器1002被配置成在以发射器1002支持的最高数据速率(链路速度)向接收器1004发送的同时循环均衡化预设(预设x、预设x+1、……)。接收器1004被配置成“监听”处于接收器1004支持的最高数据速率(链路速度)(例如,位速率n)的经接收的数据流。发射器1002被配置成在给定均衡化设置预设(例如,预设x)停留足以使接收器能“锁定”到使用预设x发送的数据流(如果接收器1004有此能力)的时间段1006。发射器停留时间段1006可包括用于允许发射器1004初始化通告状态的发射器设置时间段1008、用于允许接收器1004“锁定”到处于所选择的位速率(链路速度)和均衡化设置(预设x)的数据流的信道锁定时间段1010、和用于允许接收器1004验证所接收的数据流的验证时间段1012。在一个示例实施例中,设置时间段1008可大约为0.1ms,信道锁定时间段1010可大约为16ms(假定四个CDR与信道相关联),且验证时间段1012可大约为3.9ms。如果接收器1004未在此时间段1006期间锁定,则发射器1002被配置成循环到下一均衡化设置预设x+1,同时接收器1004继续以链路速度(位速率n)停留。
图10B示出了根据本公开的各种实施例的描绘接收器停留时间以确定在发射器与接收器之间的链路初始化时的高数据速率和均衡化设置的另一简化的发射器/接收器***1030。在此示例中,发射器1002被配置成在以发射器1002支持的最高数据速率(链路速度)向接收器1004发送的同时循环通过四个均衡化预设(预设0、预设1、预设2和预设3)。接收器1004被配置成“监听”处于由接收器1004支持的最高数据速率(链路速度)(例如,位速率n)的经接收的数据流。接收器1004也被配置成停留至少部分地基于发射器1002的每一个均衡器预设值(1006)的停留时间的时间段1014从而存在重叠。接收器停留时间段1014包括校准时间段1016和重叠时间段1018。重叠保证在发射器1002在以由发射器1002所支持的最高数据速率(链路速度)发送的同时接收器1004将有足够的机会去在每一个均衡器预设设置“锁定”到所接收的数据流。在一个示例实施例中,校准时间段1016可大约为20ms,重叠时间段1018可大约为100ms。如果接收器未在此时间段1014期间锁定,则接收器1004被配置成移到由接收器1004支持的下一最高数据速率(例如,位速率n-1)。
图10C示出了根据本公开的一个实施例的描绘数据速率和均衡化预设设置循环以确定在发射器1002与接收器1004之间的链路初始化时的高数据速率和均衡化设置的另一简化的发射器/接收器***1060。在此示例中,将发射器1002和接收器1004描绘为循环通过多个链路速度(位速率n、……、位速率n-2)并且对于每一个链路速度循环通过多个均衡化设置预设(示出为多个与发射器1002循环时段相关联的水平线)。
图11A示出了根据本公开的各种实施例的发射器的低速率数据流1100。图11A的数据流1102示出了使用按本文所述的技术所确定的高数据速率(链路速度)位速度调制的(使用上述PRBS调制技术)发射器(Tx电路)的数据流。数据流1102表示帧结构,该帧结构一般包括开始位1104、帧类型字段1106(例如,一个字节)、数据字段1108(例如,4个字节)、奇偶位1110、和标记帧边界的帧结束字段1112(例如,设置成逻辑1的41个位和设置成逻辑零的一个强制位)。帧结构之前和之后分别是帧结构1014和1016。开始位1105和帧结束字段1112可由接收器电路用来启用帧同步等。帧类型字段1106和数据字段1108可包括与发射器通告帧和/或接收器优选预设帧相关联的信息,如下面将描述的。
图11B示出了根据本公开的一个实施例的通告帧结构1130。通告帧1130由发射器在初始化期间发送,并一般包括当前链路速度和均衡器预设设置和/或发射器节点性能的信息。通告帧包括帧类型字段1132和数据字段1134。帧类型字段1132可用来标识数据字段中存在的数据的类型,从而接收器可正确地解释数据字段。在此示例中,帧类型字段1132和数据字段1134每一个都分别包括一字节字段和四字节字段。数据字段1134包括可设置成指示当前活动的发射器均衡化预设设置的PR字段1136(例如,3个位)。数据字段1134也包括可设置成指示与发射器相关联的端口的线号的LN字段1138(例如,4个位)。数据字段1134也包括可设置成指示与发射器端口相关联的逻辑端口号的PT字段1140(例如,8个位)。数据字段1134也包括可设置成指示可由发射器支持的多个链路速度的HRBC字段1142(例如,7个位)。数据字段1134也包括可设置成指向HRBC字段1142以指示当前所选择的高速率链路速度的HRB字段1144(例如,3个位)。数据字段1134也包括可设置成指示发射器端口宽度(线数目)的ATW字段1146(例如,4个位)。数据字段1134也包括可设置成指示发射器节点的的附加性能的保留字段1148(例如,3个位)。可使用以上参考图1-9所描述的调制方案(例如,PRBS调制/解调制)将由节点102发送的通告帧1130调制成图11A的数据流帧1100。例如,帧类型字段1132和数据字段1134可表示使用所选择的高数据速率调制到图11A的数据流1100上的低速率信息。当然,在接收端,可使用以上参考图1-9所描述的解调制方案(例如,PRBS调制/解调制)而解调制数据流以恢复帧类型字段1132和数据字段1134。
图11C示出了根据本公开的一个实施例的优选预设帧结构1160。优选预设帧1130由接收节点响应于由接收器锁定经发送的通告帧而发送,并一般包括。优选预设帧1160包括帧类型字段1162和数据字段1164。在此示例中,帧类型字段1162和数据字段1164每一个都分别包括一字节字段和四字节字段。数据字段1164包括多个端口字段1166,例如,PP0、PP1、……、PP7。可使用以上参考图1-9所描述的调制方案(例如,PRBS调制/解调制)将由接收节点发送的优选预设帧1160调制成图11A的数据流帧1100。例如,帧类型字段1162和数据字段1164可表示使用所选择的高数据速率调制到图11A的数据流1100上的低速率信息。当然,在接收端,可使用以上参考图1-9所描述的解调制方案(例如,PRBS调制/解调制)而解调制数据流以恢复帧类型字段1162和数据字段1164。
图12是根据本发明的各种实施例的链路初始化操作1200的流程图。操作包括将发射器设置成以最大高位速率(链路速度)发送数据流,1208。链路速度对应于数据模式中链路的位速率,即,被配置成高速率。操作也可包括将发射器均衡化设置设置成第一预设值,1210。操作也可包括由发射器停留在所选择的均衡化预设值以使接收器能锁定到经发送的数据流,1212。操作也可包括确定与发射器通信中的接收器是否已经锁定到经发送的数据流,1214。如果接收器未锁定到当前位速率和均衡化预设设置,则操作也可包括确定是否已经循环通过所有可用的均衡化预设1216,并且如果不是,则操作也可包括选择下一均衡化预设1220和停留在下一均衡化预设1212。如果已经循环通过所有的可用均衡化预设1216,则操作可包括确定是否已经循环通过所有的可用高位速率1218。如果不是,则操作可包括将发射器设置成以下一最高(最快)位速率发送和选择均衡化预设1222,在所选择的均衡化预设停留1212。如果已经循环通过所有可用的高位速率(1218)且接收器未在任何高位速率或均衡化设置获得锁定,则操作可包括初始化操作定时失效1230和在一些实施例中包括移到不同的操作状态。
如果接收器锁定到数据流(1214),操作可包括存储启用锁的位速率和均衡化预设值1124。在其他实施例中,发射器和接收器可循环通过所有可用的链路速度和均衡化预设,并且如果确定了多个可接受的参数,则操作也可包括从参数组中选择“最优”位速率和均衡化设置1126。一旦已经确定启用发射器和接收器之间的通信的高位速率和均衡化预设,则操作也可包括使用可用的高位速率和均衡化预设移位到不同的操作状态1128,例如反向通道通信。
尽管图6、7、8、9和12的流程图示出了根据各种实施例的操作,但应理解,不是图6、7、8、9和/或12中所有所描绘的操作对于其他实施例都是必要的。此外,本文完全构想了在本公开的其他实施例中,图6、7、8、9和/或12中描绘的操作和本文所述的其他操作可用未在任何图中具体示出的方式组合,且这样的实施例可包括比图6、7、8、9和/或12中所示出的较少或较多操作。由此,涉及未在一个图中准确示出的特征和/或操作的权利要求被认为是在本公开的范围和内容之内。
前述提供了示例***架构和方法,然而,对本公开的修改是可能的。例如,节点102和/或链路伙伴120也可包括主处理器、芯片组电路和***存储器。主处理器可包括一个或多个处理器核且可被配置成执行***软件。***软件可包括,例如操作***代码(例如,OS内核代码)和局域网(LAN)驱动器代码。LAN驱动器代码可被配置成至少部分地控制网络控制器104、134的操作。***存储器可包括配置成存储将由网络控制器104、134发送或接收的一个或多个数据分组的I/O存储器缓冲区。芯片组电路一般可包括控制处理器、网络控制器104、134和***存储器之间的通信的“北桥”电路(未示出)。
节点102和/或链路伙伴120还可包括操作***(OS,未示出)以管理***资源和控制在例如节点102上运行的任务。例如,OS可使用微软Windows、HP-UX、Linux或Unix实现,尽管也可使用其他操作***。在一些实施例中,OS可由可向一个或多个处理单元上运行的各种操作***(虚拟机)提供底层硬件的抽象层的虚拟机监视器(或***管理器)代替。操作***和/或虚拟机可实现一个或多个协议栈。协议栈可执行一个或多个程序以处理分组。协议栈的一个示例是包括一个或多个用于应对(例如,处理或生成)分组以通过网络发送和/或接收的程序的TCP/IP(传输控制协议/因特网协议)协议栈。协议栈可替换性地包括专用子***,诸如例如TCP卸载引擎和/或网络控制器104。TCP卸载引擎电路可被配置成不需要主CPU和/或软件的涉及而提供例如分组传输、分组分隔、分组重新装配、错误检查、发送确认、发送重试等。
***存储器可包括一个或多个以下类型的存储器:半导体固件存储器、可编程存储器、非易失性存储器、只读存储器、电子可编程存储器、随机存取存储器、闪速存储器、磁盘存储器、和/或光盘存储器。附加地或可替换地,***存储器可包括其他和/或后来发展的类型的计算机可读存储器。
本文所述的操作的实施例可在包括一个或多个存储设备的***中实现,该一个或多个存储设备具有独自地或组合地存储于其上、当由一个或多个处理器执行时执行方法的指令。处理器可包括,例如网络控制器104、134中的处理单元和/或可编程电路和/或其他处理单元或可编程电路。因此,根据本文所述方法的操作旨在可跨多个物理设备而分布,多个物理设备诸如在几个不同物理位置处的处理结构。存储设备可包括任何类型的有形非瞬态存储设备,例如,包括软盘、光盘、紧致盘只读存储器(CD-ROM)、可重写紧致盘(CD-RW)和磁光盘的任何类型的盘、诸如只读存储器(ROM)、诸如动态和静态RAM的随机访问存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、磁或光卡的半导体设备、或适于存储电子指令的任何类型的存储设备。
在一些实施例中,硬件描述语言可用来规定本文所述的各种模块和/或电路的电路和/或逻辑实现。例如,在一个实施例中,硬件描述语言可符合或兼容可启用本文所述的一个或多个电路和/或模块的半导体制造的超高速集成电路(VHSIC)硬件描述语言(VHDL)。VHDL可符合或兼容IEEE标准1076-1987、IEEE标准1076.2、IEEE 1076.1、IEEE VHDL草案3.0-2006、IEEE VHDL草案4.0-2008和/或其他版本的IEEE VHDL标准和/或其他硬件描述语言标准。
如本文任何实施例中所用的,“电路图”或“电路”可包括例如独立或以任何组合的硬连线电路、可编程电路、状态机电路、和/或存储由可编程电路执行的指令的固件。如本文所使用的,“模块”可包括独立或以任何组合的电路和/或代码和/或指令集(例如,软件、固件等)。
符合本公开的教示的网络***(和方法)被配置成在链路初始化期间提供节点元素与链路伙伴之间的持续反向通道通信。在各种实施例中,与反向通道通信相关联的低速率数据和命令可经调制到用于例如调整均衡器设置的高速率位流上。反向通道信息的低位速率被配置成,在均衡器设置调整之前或期间,在链路初始化期间,以链路速率提供健壮的反向通道信息通信。可因此在例如均衡化之前在所接收的经调制HR位序列中存在错误的情况下提供健壮的反向通道信息通信,且可避免反向通道通信期间的模式偏移。
***和方法可被配置成容纳从印刷电路板中真和补信号的交叉布线而产生的极性反转。在一些实施例中,***和方法可被配置成容纳在链路两端处时钟速率中的不匹配。在一些实施例中,确定均衡化的质量可通过用高速率位流同时传输反向通道信息来促进。
因此,本公开提供示例网络控制器。示例网络控制器包括物理接口(PHY)电路,其包括配置成向通过信道链路与发送电路通信的链路伙伴发送数据帧的发射器电路。网络控制器也包括配置成在PHY电路的初始化之后导致发射器电路使用至少一个高速率链路速度向链路伙伴发送数据帧的链路速度循环模块。网络控制器也包括配置成在发射器电路向链路伙伴发送数据帧的同时将至少一个均衡化预设设置应用于发射器电路的均衡化预设循环模块。链路速度模块还被配置成导致发射器电路对于处于该至少一个高速率链路速度的至少一个均衡化预设设置停留发射器停留时间段,其中发射器停留时间段足够允许链路伙伴锁定到所发送的数据帧。
本公开也提供示例方法。示例方法包括在发射器电路的初始化之后设置发射器电路使用至少一个高速率链路速度向链路伙伴发送数据帧。方法也包括在发射器电路向链路伙伴发送数据帧的同时将至少一个均衡化预设设置应用于发射器电路。方法也包括对于足够允许链路伙伴锁定到所发送的数据帧的时间段,由发射器电路对于处于该至少一个高速率链路速度的至少一个均衡化预设设置停留发射器停留时间段。
本公开也提供示例***,该示例***包括有指令独立或组合地存储于其上的一个或多个存储设备,该指令在由一个或多个处理器执行时导致以下操作,包括:在发射器电路的初始化之后设置发射器电路使用至少一个高速率链路速度向链路伙伴发送数据帧;在发射器电路向链路伙伴发送数据帧的同时将至少一个均衡化预设设置应用于发射器电路;和对于足够允许链路伙伴锁定到所发送的数据帧的时间段,由发射器电路对于处于该至少一个高速率链路速度的至少一个均衡化预设设置停留发射器停留时间段。
本公开也提供示例节点。示例节点包括处理器、存储器和网络控制器。网络控制器包括物理接口(PHY)电路,该PHY电路包括被配置成向通过信道链路与发送电路通信的链路伙伴发送数据帧的发射器电路的;配置成在PHY电路的初始化之后导致发射器电路使用至少一个高速率链路速度向链路伙伴发送数据帧的链路速度循环模块;和配置成在发射器电路向链路伙伴发送数据帧的同时将至少一个均衡化预设设置应用于发射器电路的均衡化预设模块。链路速度模块还被配置成导致发射器电路对于处于该至少一个高速率链路速度的至少一个均衡化预设设置停留发射器停留时间段,其中发射器停留时间段足够允许链路伙伴锁定到所发送的数据帧。
本文采用的术语和表达用作描述而不是限制的术语,并且在使用这样的术语和表达中不存在排除所示和描述的特征(或其部分)的任何等价方案的意图,并且认可在权利要求书的范围之内各种修改是可能的。因此,权利要求书旨在覆盖所有这样的等价方案。
本文描述了各种特征、方面和实施例。特征、方面和实施例可遭受彼此组合以及变体和修改,如本领域技术人员将理解的。因而应认为本公开涵盖任何组合、变体和修改。
Claims (24)
1.一种网络控制器,所述网络控制器包括:
物理接口PHY电路,所述PHY电路包括发射器电路,所述发射器电路被配置成向通过信道链路与所述发射器电路通信的链路伙伴发送数据帧;
链路速度循环模块,所述链路速度循环模块被配置成在所述PHY电路的初始化之后导致所述发射器电路使用至少一个高速率链路速度向所述链路伙伴发送数据帧,所述数据帧包括用第一低速率LR位流调制的至少一个第一高速率HR位序列;以及
均衡化预设循环模块,所述均衡化预设循环模块被配置成:在所述发射器电路向所述链路伙伴发送所述数据帧的同时,至少部分地基于经调制的所述至少一个第一高速率HR位序列将至少一个均衡化预设设置应用于所述发射器电路;
其中所述链路速度循环模块还被配置成导致所述发射器电路对于处于所述至少一个高速率链路速度的至少一个均衡化预设设置停留发射器停留时间段,其中所述发射器停留时间段足够允许所述链路伙伴锁定到所发送的数据帧。
2.如权利要求1所述的网络控制器,其特征在于,所述链路速度循环模块还被配置成循环通过多个高速率链路速度,且对于每一个高速率链路速度,所述均衡化预设模块被配置成循环通过多个均衡化预设并在向所述链路伙伴发送数据帧的同时将每一个预设应用到所述发射器电路。
3.如权利要求2所述的网络控制器,其特征在于,还被配置成从多个高速率链路速度和/或均衡化预设中选择所述链路伙伴用来锁定到所述所发送的数据帧的高速率链路速度和均衡化预设。
4.如权利要求1所述的网络控制器,其特征在于所述所发送的帧包括指示所述至少一个高速率链路速度和所述至少一个均衡器预设的通告帧。
5.如权利要求1所述的网络控制器,其特征在于,所述PHY电路还包括被配置成从所述链路伙伴接收数据帧的接收器电路,其中来自所述链路伙伴的所述数据帧包括指示启用所述PHY电路与所述链路伙伴之间的锁定的高速率链路速度和均衡器预设的优选预设帧。
6.如权利要求1所述的网络控制器,其特征在于,还包括:
调制模块,包括:
配置成生成第一高速率HR位序列的高速率位序列生成器;
配置成编码所述第一低速率LR位流的编码器电路,所述第一LR位流包括反向通道信息,以及
配置成将所述经编码的第一低速率位流调制到所述第一高速率位序列上的调制电路;以及
配置成在链路初始化时段期间将所述经调制的第一高速率位序列发送到链路伙伴的发送电路。
7.如权利要求1所述的网络控制器,其特征在于,所述PHY电路还包括配置成从所述链路伙伴接收数据帧的接收器电路,其中所述均衡化预设循环模块还被配置成对于足够获得与来自所述链路伙伴的经发送的帧相关联的给定均衡化预设上的锁定的时间段,导致所述接收器电路停留接收器停留时间段。
8.一种用于数据通信的方法,所述方法包括:
在发射器电路的初始化之后将所述发射器电路设置成使用至少一个高速率链路速度向链路伙伴发送数据帧,所述数据帧包括用第一低速率位流调制的至少一个第一高速率HR位序列;
在所述发射器电路向所述链路伙伴发送所述数据帧的同时,至少部分地基于经调制的所述至少一个第一高速率HR位序列将至少一个均衡化预设设置应用于所述发射器电路;以及
对于足够允许所述链路伙伴锁定到所发送的数据帧的时间段,由所述发射器电路对于处于所述至少一个高速率链路速度的所述至少一个均衡化预设设置停留发射器停留时间段。
9.如权利要求8所述的方法,其特征在于,还包括循环通过多个高速率链路速度,且对于每一个高速率链路速度,循环通过多个均衡化预设并在向所述链路伙伴发送数据帧的同时将每一个预设应用到所述发射器电路。
10.如权利要求9所述的方法,其特征在于,还包括从多个高速率链路速度和/或均衡化预设中选择所述链路伙伴用来锁定到所述所发送的数据帧的高速率链路速度和均衡化预设。
11.如权利要求8所述的方法,其特征在于,从所述链路伙伴接收数据帧,其中来自所述链路伙伴的所述数据帧指示启用所述发射器电路与所述链路伙伴之间的锁定的高速率链路速度和均衡器预设。
12.如权利要求8所述的方法,其特征在于,还包括:
由高速率HR位序列生成器生成第一HR位序列;
由编码器电路对所述第一低速率位流编码,所述第一低速率位流包括反向通道信息;
由调制电路将所述经编码的第一低速率位流调制到所述第一HR位序列上;以及
由发送电路在链路初始化时段期间将所述经调制的第一HR位序列发送到链路伙伴。
13.如权利要求8所述的方法,其特征在于,还包括由接收器电路停留足够获得与来自所述链路伙伴的经发送帧相关联的给定均衡化预设上的锁定的接收器停留时间段。
14.一种用于数据通信的***,所述***包括有指令独立或组合地存储于其上的一个或多个存储设备,所述指令在由一个或多个处理器执行时导致以下操作,包括:
在发射器电路的初始化之后将所述发射器电路设置为使用至少一个高速率链路速度向链路伙伴发送数据帧,所述数据帧包括用第一低速率位流调制的至少一个第一高速率HR位序列;
在所述发射器电路向所述链路伙伴发送所述数据帧的同时,至少部分地基于经调制的所述至少一个第一高速率HR位序列将至少一个均衡化预设设置应用于所述发射器电路;以及
对于足够允许所述链路伙伴锁定到所发送的数据帧的时间段,由所述发射器电路对于处于所述至少一个高速率链路速度的所述至少一个均衡化预设设置停留发射器停留时间段。
15.如权利要求14所述的***,其特征在于,所述指令在由一个或多个处理器执行时导致以下附加操作,包括:
循环通过多个高速率链路速度,且对于每一个高速率链路速度,循环通过多个均衡化预设并在向所述链路伙伴发送数据帧的同时将每一个预设应用到所述发射器电路。
16.如权利要求15所述的***,其特征在于,所述指令在由一个或多个处理器执行时导致以下附加操作,包括:从多个高速率链路速度和/或均衡化预设中选择所述链路伙伴用来锁定到所述所发送的数据帧的高速率链路速度和均衡化预设。
17.如权利要求14所述的***,其特征在于,所述指令在由一个或多个处理器执行时导致以下附加操作,包括:从所述链路伙伴接收数据帧,其中来自所述链路伙伴的所述数据帧指示启用所述发射器电路与所述链路伙伴之间的锁定的高速率链路速度和均衡器预设。
18.如权利要求14所述的***,其特征在于,所述指令在由一个或多个处理器执行时导致以下附加操作,包括:
生成第一高速率HR位序列;
对所述第一低速率位流编码,所述第一低速率位流包括反向通道信息;
将所述经编码的第一低速率位流调制到所述第一HR位序列上;以及
由所述发射器在链路初始化时段期间将所述经调制的第一HR位序列发送到所述链路伙伴。
19.如权利要求14所述的***,其特征在于,所述指令在由一个或多个处理器执行时导致以下附加操作,包括:
由接收器电路停留足够获得与来自所述链路伙伴的经发送帧相关联的给定均衡化预设上的锁定的接收器停留时间段。
20.一个用于数据通信的节点,所述节点包括:
处理器;
存储器;以及
网络控制器,所述网络控制器包括:
物理接口PHY电路,所述PHY电路包括发射器电路,所述发射器电路被配置成向通过信道链路与所述发射器电路通信的链路伙伴发送数据帧;
链路速度循环模块,所述链路速度循环模块被配置成在所述PHY电路的初始化之后导致所述发射器电路使用至少一个高速率链路速度向所述链路伙伴发送数据帧,所述数据帧包括用第一低速率位流调制的至少一个第一高速率HR位序列;以及
均衡化预设模块,所述均衡化预设模块被配置成:在所述发射器电路向所述链路伙伴发送所述数据帧的同时,至少部分地基于经调制的所述至少一个第一高速率HR位序列将至少一个均衡化预设设置应用所述发射器电路;
其中所述链路速度循环模块还被配置成导致所述发射器电路对于处于所述至少一个高速率链路速度的至少一个均衡化预设设置停留发射器停留时间段,其中所述发射器停留时间段足够允许所述链路伙伴锁定到所发送的数据帧。
21.如权利要求20所述的节点,其特征在于,所述链路速度循环模块还被配置成循环通过多个高速率链路速度,且对于每一个高速率链路速度,所述均衡化预设模块被配置成循环通过多个均衡化预设并在向所述链路伙伴发送数据帧的同时将每一个预设应用到所述发射器电路。
22.如权利要求21所述的节点,其特征在于,还被配置成从多个高速率链路速度和/或均衡化预设中选择所述链路伙伴用来锁定到所述所发送的数据帧的高速率链路速度和均衡化预设。
23.如权利要求20所述的节点,其特征在于,所述PHY电路还包括被配置成从所述链路伙伴接收数据帧的接收器电路,其中来自所述链路伙伴的所述数据帧包括指示启用所述PHY电路与所述链路伙伴之间的锁定的高速率链路速度和均衡器预设的优选预设帧。
24.如权利要求20所述的节点,其特征在于,所述PHY电路还包括配置成从所述链路伙伴接收数据帧的接收器电路,其中所述均衡化预设循环模块还被配置成对于足够获得与来自所述链路伙伴的经发送的帧相关联的给定均衡化预设上的锁定的时间段,导致所述接收器电路停留接收器停留时间段。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361884230P | 2013-09-30 | 2013-09-30 | |
US14/142,139 | 2013-12-27 | ||
US14/142,139 US9509438B2 (en) | 2013-09-30 | 2013-12-27 | Determining a high data rate for backchannel communications for initialization of high-speed networks |
PCT/US2014/067528 WO2015099945A1 (en) | 2013-09-30 | 2014-11-26 | Determining a high data rate for backchannel communications for initialization of high-speed networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105794168A CN105794168A (zh) | 2016-07-20 |
CN105794168B true CN105794168B (zh) | 2019-05-14 |
Family
ID=52740141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480065634.3A Active CN105794168B (zh) | 2013-09-30 | 2014-11-26 | 确定用于高速网络初始化的反向通道通信的高数据速率 |
Country Status (4)
Country | Link |
---|---|
US (3) | US9509438B2 (zh) |
EP (1) | EP3087713B1 (zh) |
CN (1) | CN105794168B (zh) |
WO (1) | WO2015099945A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11943289B2 (en) | 2014-10-14 | 2024-03-26 | Comcast Cable Communications, Llc | Manipulation of content transmissions |
US11917002B2 (en) | 2014-10-14 | 2024-02-27 | Comcast Cable Communications, Llc | Manipulation and recording of content transmissions |
US9866323B2 (en) * | 2015-12-29 | 2018-01-09 | Intel Corporation | Techniques for optical wireless communication |
US9985724B2 (en) * | 2016-09-09 | 2018-05-29 | Ciena Corporation | Horizontal synchronization extensions for service resizing in optical networks |
US9923638B1 (en) | 2016-12-22 | 2018-03-20 | Intel Corporation | Clock tracking algorithm for twinkle VPPM in optical camera communication systems |
US10461884B2 (en) * | 2017-10-05 | 2019-10-29 | Comcast Cable Communications, Llc | Server selected variable bitrate streaming |
US10906483B2 (en) | 2018-06-21 | 2021-02-02 | Robert Bosch Gmbh | Reduced-complexity vehicle instrument control utilizing backchannel transmission |
US11516106B2 (en) * | 2018-06-27 | 2022-11-29 | Intel Corporation | Protocol analyzer for monitoring and debugging high-speed communications links |
US11467999B2 (en) * | 2018-06-29 | 2022-10-11 | Intel Corporation | Negotiating asymmetric link widths dynamically in a multi-lane link |
US10735231B2 (en) * | 2018-12-19 | 2020-08-04 | International Business Machines Corporation | Demodulating modulated signals with artificial neural networks |
US10846247B2 (en) | 2019-03-05 | 2020-11-24 | Intel Corporation | Controlling partial link width states for multilane links |
US11836101B2 (en) | 2019-11-27 | 2023-12-05 | Intel Corporation | Partial link width states for bidirectional multilane links |
CN114465688B (zh) * | 2021-10-27 | 2023-05-16 | 国芯科技(广州)有限公司 | 一种缩短校准与同步总时长的帧同步*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1941649A (zh) * | 2005-09-30 | 2007-04-04 | 美国博通公司 | 设定通信设备的方法及*** |
CN101960804A (zh) * | 2008-02-29 | 2011-01-26 | 艾格瑞***有限公司 | 用于自适应传输均衡的方法和设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100281576B1 (ko) * | 1998-12-12 | 2001-02-15 | 이계철 | 이중링크 불연속 다중톤을 이용한 비동기 디지털 가입자회선 송수신 장치 |
US8234399B2 (en) | 2003-05-29 | 2012-07-31 | Seagate Technology Llc | Method and apparatus for automatic phy calibration based on negotiated link speed |
US8571070B2 (en) * | 2005-12-02 | 2013-10-29 | Broadcom Corporation | Method and system for speed negotiation for twisted pair links in fibre channel sytems |
US8395992B2 (en) | 2007-12-17 | 2013-03-12 | Broadcom Corporation | Method and system for negotiating multiple data rate transitions on an ethernet link |
US20090245120A1 (en) | 2008-04-01 | 2009-10-01 | Micrel, Inc., | Ethernet Physical Layer Transceiver with Auto-Ranging Function |
US8793541B2 (en) * | 2008-10-10 | 2014-07-29 | Teledyne Lecroy, Inc. | Link equalization tester |
US8599913B1 (en) * | 2011-08-01 | 2013-12-03 | Pmc-Sierra Us, Inc. | Data regeneration apparatus and method for PCI express |
US9106467B2 (en) | 2013-11-08 | 2015-08-11 | Intel Corporation | Backchannel communications for initialization of high-speed networks |
-
2013
- 2013-12-27 US US14/142,139 patent/US9509438B2/en active Active
-
2014
- 2014-11-26 EP EP14875009.4A patent/EP3087713B1/en active Active
- 2014-11-26 WO PCT/US2014/067528 patent/WO2015099945A1/en active Application Filing
- 2014-11-26 CN CN201480065634.3A patent/CN105794168B/zh active Active
-
2016
- 2016-11-29 US US15/363,861 patent/US9742523B2/en active Active
-
2017
- 2017-08-22 US US15/683,478 patent/US10116413B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1941649A (zh) * | 2005-09-30 | 2007-04-04 | 美国博通公司 | 设定通信设备的方法及*** |
CN101960804A (zh) * | 2008-02-29 | 2011-01-26 | 艾格瑞***有限公司 | 用于自适应传输均衡的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2015099945A1 (en) | 2015-07-02 |
US9742523B2 (en) | 2017-08-22 |
US20170085337A1 (en) | 2017-03-23 |
EP3087713B1 (en) | 2019-10-02 |
EP3087713A4 (en) | 2017-08-23 |
EP3087713A1 (en) | 2016-11-02 |
US10116413B2 (en) | 2018-10-30 |
CN105794168A (zh) | 2016-07-20 |
US20150092791A1 (en) | 2015-04-02 |
US9509438B2 (en) | 2016-11-29 |
US20170353266A1 (en) | 2017-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105794168B (zh) | 确定用于高速网络初始化的反向通道通信的高数据速率 | |
CN104639477B (zh) | 用于高速网络初始化的反向通道通信 | |
CN104081797B (zh) | 被配置为用于在数据模式期间对前向纠错进行解析的网络*** | |
US7836199B2 (en) | System and method for multilane link rate negotiation | |
US20170155458A1 (en) | Multi-lane synchronization method, synchronization apparatus and system, and computer storage medium | |
US9479277B2 (en) | Mechanism for channel synchronization | |
GB2520269A (en) | Ethernet link incorporating forward error correction | |
CN1518846B (zh) | 通信方法和设备 | |
KR101769686B1 (ko) | 수신기, 전송기, 신호로부터 추가 데이터를 검색하기 위한 방법 및 신호 내의 데이터 및 추가 데이터를 송신하기 위한 방법 | |
CN103297370A (zh) | 以太网phy至具有桥接抽头线的信道的扩展 | |
CN114846762B (zh) | 通信链路初始化方法及装置 | |
US7116739B1 (en) | Auto baud system and method and single pin communication interface | |
US9798694B2 (en) | Interface circuit for high speed communication, and semiconductor apparatus and system including the same | |
KR101539438B1 (ko) | 싱크의 송신 클럭 생성 장치 및 생성된 송신 클럭을 이용한 송신 방법 | |
US20240097936A1 (en) | Communication interface and method for seamless asymmetric communication over multilane communication link | |
US6879638B1 (en) | Method and apparatus for providing communication between electronic devices | |
KR20150045886A (ko) | 싱크의 송신 클럭 생성 장치 및 생성된 송신 클럭을 이용한 송신 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |