CN114372015B - 具有低时延重定时器的高速数据链路 - Google Patents
具有低时延重定时器的高速数据链路 Download PDFInfo
- Publication number
- CN114372015B CN114372015B CN202111202701.XA CN202111202701A CN114372015B CN 114372015 B CN114372015 B CN 114372015B CN 202111202701 A CN202111202701 A CN 202111202701A CN 114372015 B CN114372015 B CN 114372015B
- Authority
- CN
- China
- Prior art keywords
- data
- path
- sequence
- retimer
- bit
- 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
- 230000004044 response Effects 0.000 claims abstract description 34
- 238000000034 method Methods 0.000 claims description 221
- 230000008569 process Effects 0.000 claims description 158
- 238000011144 upstream manufacturing Methods 0.000 claims description 106
- 238000004891 communication Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 description 51
- 238000012549 training Methods 0.000 description 40
- 238000012546 transfer Methods 0.000 description 37
- 238000011084 recovery Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 13
- 238000001514 detection method Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- 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/14—Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver
-
- 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/0264—Arrangements for coupling to transmission lines
- H04L25/0272—Arrangements for coupling to multiple lines, e.g. for differential transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- 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/03012—Arrangements for removing intersymbol interference operating in the time domain
- H04L25/03114—Arrangements for removing intersymbol interference operating in the time domain non-adaptive, i.e. not adjustable, manually adjustable, or adjustable only during the reception of special signals
-
- 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/03828—Arrangements for spectral shaping; Arrangements for providing signals with specified spectral properties
- H04L25/03866—Arrangements for spectral shaping; Arrangements for providing signals with specified spectral properties using scrambling
-
- 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/03878—Line equalisers; line build-out devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/30—Routing of multiclass traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Dc Digital Transmission (AREA)
- Information Transfer Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了具有低时延重定时器的高速数据链路。本申请涉及在耦合在两个电子设备之间的数据链路上传送数据。数据链路包括具有并联耦合的全数据路径和位级数据路径的重定时器。数据链路以全数据路径被发起,以及数据包的第一序列根据低数据速率设置经由全数据路径被传送。当传送数据包的第一序列时,在全数据路径中操纵数据包的第一序列以建立数据链路的连接,以及响应于建立数据链路的连接,数据链路从全数据路径切换到位级数据路径。
Description
相关申请
本中国专利申请要求2021年5月26日提交的标题为“High Speed Data Linkswith Low-Latency Retimer”的美国专利申请第17/331,521号的优先权,该美国专利申请第17/331,521号是2021年3月3日提交的标题为“Seamless Bit-Level Low-LatencyRetimer for Data Links”的美国专利申请第17/191,456号的部分延续并要求美国专利申请第17/191,456号的优先权,该美国专利申请第17/191,456号是2020年10月15日提交的标题为“Seamless Bit-Level Low-Latency Retimer for Data Links”的美国专利申请第17/071,655的部分延续并要求美国专利申请第17/071,655号的优先权,这些专利申请中的每个通过引用以其整体并入。
技术领域
本申请总体上涉及数据通信,包括但不限于用于使用高速串行扩展总线(例如外围部件互连Express(PCI Express)总线)来在两个电子设备或部件之间传送数据的方法和系统。
背景
许多电子设备在物理上彼此耦合,并使用符合高速串行计算机扩展总线标准(例如PCI Express)的数据链路和接口相互通信。这些总线标准允许重定时器(retimer)和重驱动器(redriver)的应用以在高数据速度下扩展信道所及范围(channel reach)。重驱动器是被设计为加强信号的部分以抵消由在相应数据链路的物理互连上的信号传播引起的衰减的模拟所及范围扩展设备。重定时器是标准感知的并具有完全恢复数据、提取嵌入式时钟并使用干净时钟(clean clock)重新传输数据的新副本的能力的混合信号设备。与重驱动器相比,重定时器主动参与应用总线标准以实现协商、超时、位操纵(bitmanipulation)、抖动重置、信号均衡、偏斜校正和许多其他功能。尽管改善了数据质量,但由重定时器实现的这些功能对通过相应数据链路传送的数据引起延长的时延。例如,对于使用重定时器的PCI Express 4.0链路,单向时延在16Gbps的数据速率处为几十纳秒。假定PCI Express 4.0链路是双向的,则往返时延在16Gbps的数据速率处可能需要多达100纳秒。一些电子设备对由数据链路引起的数据传输时延是敏感的,并且当数据传输时延增加时展示受损的性能。拥有比当前实践更有效的数据传输机制将是有益的。
概述
本申请针对一种将全数据路径(full data path)和位级数据路径(bit leveldata path)集成在重定时器中并激活位级数据路径用于低时延数据通信的数据链路。位级数据路径被启用来以第一时延时间传送数据,以及全数据路径被启用来以大于第一时延时间的第二时延时间传送数据。全数据路径由重定时器本身在数据链路的物理级上自动地并且在没有来自其他电子设备或部件(例如,耦合到数据链路的上游部件和下游部件)的干预的情况下无缝地选择和取消选择。通过这些手段,重定时器相关的数据时延在符合PCIExpress 3.0或以上的规范的单向数据链路中可以减少到两纳秒或更少,同时均衡过程仍然经由全数据路径来实现以提供均衡结果(例如,有限脉冲响应驱动器的滤波系数)来扩展信道所及范围。
在一个方面中,实现了一种使用耦合在第一电子设备和第二电子设备之间的数据链路(例如PCI Express链路)在第一电子设备和第二电子设备之间传送数据的方法。该数据链路包括具有并联耦合的全数据路径和位级数据路径的重定时器。数据链路经由位级数据路径将数据包的第一序列从第一电子设备传送到第二电子设备。当传送数据包的第一序列时,数据链路基于在数据包的第一序列中的起始数据包来检测均衡过程的开始。根据检测到均衡过程的开始,数据链路选择重定时器的全数据路径用于在数据链路上的数据传送。在均衡过程期间,数据链路经由全数据路径将紧跟在数据包的第一序列之后的数据包的第二序列从第一电子设备传送到第二电子设备。在一些实现中,数据链路基于在数据包的第二序列中的终止数据包来检测均衡过程的终止,并根据检测到均衡过程的终止来选择重定时器的位级数据路径用于在数据链路上的数据传送。
在另一方面中,电子系统包括耦合在第一电子设备和第二电子设备之间的数据链路。数据链路包括具有位级数据路径、全数据路径和路径控制器的重定时器。位级数据路径被配置成将数据包的第一序列从第一电子设备传送到第二电子设备。全数据路径与位级数据路径并联耦合,并且被配置为在均衡过程期间将紧跟在数据包的第一序列之后的数据包的第二序列从第一电子设备传送到第二电子设备。路径控制器耦合到位级数据路径和全数据路径。路径控制器被配置为(i)在数据包的第一序列被传送的同时基于在数据包的第一序列中的起始数据包来检测均衡过程的开始,以及(ii)根据检测到均衡过程的开始来选择全数据路径用于在数据链路上的数据传送。在一些实现中,重定时器包括第一重定时器,并且数据链路还包括在数据链路上与第一重定时器串联耦合的第二重定时器。
在一些实现中,位级数据路径还包括被配置为经由数据链路顺序地传送数据包的第一序列而不改变在数据包的第一序列中的任何数据位的串行先进先出(SFIFO)电路。全数据路径还包括下列项中的一个或更多个:串联至并联转换器、解扰器、解码器、数据操纵器、编码器、加扰器、去偏斜器(deskewer)和并联至串联转换器。全数据路径被配置为操纵在数据包的第二序列中的一个或更多个数据位,从而至少便于在均衡过程期间在第一电子设备和第二电子设备之间的均衡协商。
在另一方面中,使用数据链路(例如PCI Express链路)来实现数据通信方法。例如,数据链路可以耦合在第一电子设备和第二电子设备之间,并且数据链路可以被配置为在第一电子设备和第二电子设备之间传送数据。数据链路包括具有并联耦合的全数据路径和位级数据路径的至少一个重定时器。至少一个重定时器以全数据路径开始数据链路,并根据(例如依照)低数据速率设置经由全数据路径传送数据包的第一序列(例如,从第一电子设备到第二电子设备)。当传送数据包的第一序列时,至少一个重定时器在全数据路径中操纵数据包的第一序列以建立数据链路的连接。响应于建立数据链路的连接,至少一个重定时器从全数据路径切换到位级数据路径。在一些实现中,数据包的第一序列包括一个或更多个重定时器存在位。在这样的情况下,操纵数据包的第一序列还包括调整在至少一个重定时器的每一个的全数据路径中的一个或更多个重定时器存在位,以及基于一个或更多个重定时器存在位来确定在至少一个重定时器中重定时器的数量。在一些实现中,在从全数据路径切换到位级数据路径之后,数据链路的数据速率从低数据速率设置增加到高数据速率设置。该方法还包括根据高数据速率设置经由位级数据路径传送跟随数据包的第一序列的数据包的第二序列。
在另一方面中,数据链路包括具有位级数据路径、全数据路径和路径控制器的至少一个重定时器。位级数据路径并联地耦合到全数据路径。例如,数据链路可以耦合在第一电子设备和第二电子设备之间。路径控制器控制至少一个重定时器以全数据路径开始数据链路(例如,在第一电子设备和第二电子设备之间),并根据(例如依照)低数据速率设置经由全数据路径传输数据包的第一序列。当传送数据包的第一序列时,至少一个重定时器在全数据路径中操纵数据包的第一序列以建立数据链路的连接,并且响应于建立数据链路的连接,至少一个重定时器从全数据路径切换到位级数据路径。
在又一方面中,实现了一种数据通信方法。该方法包括使用在数据链路中的第一数据方向的位级数据路径在数据链路上传送数据包的序列。数据链路包括具有第一数据方向和与第一数据方向相反的第二数据方向的重定时器。第一和第二数据方向中的每一个包括相应的全数据路径、相应的位级数据路径以及耦合到相应的全数据和位级数据路径的相应的有限脉冲响应(FIR)滤波器。该方法还包括在使用第一数据方向的位级数据路径传送数据包的序列时,使用第一数据方向的全数据路径来处理数据包的序列,并基于处理后的数据包的序列来更新用于第二数据方向的FIR滤波器的多个滤波系数。
在又一方面中,数据链路包括具有第一数据方向和与第一数据方向相反的第二数据方向的重定时器。重定时器还包括位级数据路径、全数据路径和路径控制器。位级数据路径被配置为沿着在数据链路中的第一数据方向在数据链路上传送数据包的序列。全数据路径被配置为处理从第一数据方向接收的数据包的序列,同时数据包的序列使用第一数据方向的位级数据路径被传送。路径控制器被配置为基于处理后的数据包的序列来更新用于第二数据方向的FIR滤波器的多个滤波系数。
附图简述
为了对多个所描述实现的更好理解,应结合附图对下面的实现的描述进行参考,其中相似的参考数字在全部附图中指相对应的部分。
图1是根据一些实现的示例PCI Express电子系统,其中第一电子设备或部件经由数据链路电气地耦合到第二电子设备或部件。
图2A和图2B是两个示例电子系统。根据一些实现,在这些系统的每一个中,数据链路耦合在两个电子设备或部件之间并且包括至少一个重定时器。
图3是根据一些实现的数据链路的重定时器的简化框图,该重定时器具有全数据路径和位级数据路径用于在下行或上行数据方向上的数据传送。
图4是根据一些实现的重定时器的有限脉冲响应(FIR)驱动器的示意图。
图5是根据一些实现的在数据链路的重定时器中的全数据路径的框图。
图6是根据一些实现的数据链路的另一重定时器的框图,该重定时器具有全数据路径和位级数据路径用于沿着两个相反的数据方向中的任一个传送数据。
图7是根据一些实现的数据链路的链路训练和状态机(LTSSM)的状态图。
图8A和图8B分别示出了根据一些实现的示例切换过程,其中重定时器的下行数据方向和上行数据方向中的每一个从位级数据路径切换到全数据路径。
图9A和图9B分别示出了根据一些实现的示例切换过程,其中重定时器的下行数据方向和上行数据方向中的每一个从全数据路径切换到位级数据路径。
图10示出了根据一些实现的另一示例切换过程,其中重定时器的上行数据方向和下行数据方向中的每一个从全数据路径切换到位级数据路径。
图11是根据一些实现的在数据链路上传送数据的方法的流程图。
图12是根据一些实现的用于开始数据链路并便于在数据链路中的路径切换的数据包的示例序列。
图13是根据一些实现的更新滤波系数的均衡过程。
图14A-14C示出了根据一些实现的在数据链路上传送数据的方法的流程图。
图15A-15B示出了根据一些实现的在数据链路上传送数据的另一种方法的流程图。
贯穿附图中的几个视图,相似的参考数字指代相对应的部分。
实现的描述
电子设备或部件可以通过符合高速串行扩展总线标准(例如外围部件互连Express(PCI Express))的双向数据链路通信地耦合到一个或更多个其他电子设备或部件。位级重定时器处理方法被实现为以小于阈值时延(例如,每路3纳秒)的低时延传送数据,同时保持PCI Express 3.0或以上的数据传送速率(例如8Gbp或以上)。特别地,每个数据链路包括集成全数据路径和位级数据路径的至少一个重定时器。在均衡过程开始时,全数据路径被选择,且重定时器确定并应用均衡系数(例如有限脉冲响应驱动器的滤波系数)。随后,根据检测到均衡过程的终止,位级数据路径被选择,允许重定时器继续使用均衡系数,但是绕过一个或更多个高时延操作(例如位操纵、数据解码和编码、数据解扰和加扰、偏斜校正、串联至并联转换、并联至串联转换)。重定时器被配置为自动启用和禁用在数据链路的物理层上的全数据路径和位级数据路径中的每一个,其对于任何其他上游或下游电子设备或部件是透明的,并且不被任何其他上游或下游电子设备或部件干扰。
现在将详细参考实现,实现的示例在附图中被示出。在下面的详细描述中,阐述了许多具体细节,以便提供对各种所述实现的透彻理解。然而,对本领域的普通技术人员将明显的是,各种所述实现可以在没有这些具体细节的情况下被实践。在其它实例中,没有详细地描述公知的方法、过程、部件、电路和网络,以免不必要地使实现的各方面难理解。
图1是根据一些实现的示例PCI Express电子系统100,其中第一电子设备或部件102经由数据链路120电气地耦合到第二电子设备或部件104。在示例中,第一电子设备102包括个人计算机的中央处理单元(CPU),以及第二电子设备104是个人计算机的外围部件,例如图形卡、硬盘驱动器、固态驱动器、Wi-Fi通信模块或以太网卡。数据链路120包括用于从第二电子设备104接收的连接端口。连接端口可选地在个人计算机的母板上形成。数据链路120符合作为高速串行计算机扩展总线标准的PCI Express(即,PCIe),并且提供按照PCIExpress在第一电子设备102和第二电子设备104之间传递数据包的接口。数据链路120是包括一个或更多个数据传输通道130的串行数据总线。每个通道130包括用于传输和接收数据包的两个电线组,从而支持在第一电子设备102和第二电子设备104之间的全双工通信。在一些示例中,数据链路120具有耦合在数据链路120的单个数据端口中的1个、4个、8个或16个通道130。对于每个通道,两个电线组对应于关于第一电子设备102定义的下行数据方向140或上行数据方向150。可选地,每个电线组包括用于携带一对差分信号的两个电线。
在一些实现中,第一电子设备102包括或耦合到根联合体(root complex)设备106,根联合体设备106进一步耦合到数据链路120。根联合体设备106被配置为代表第一电子设备102生成对包括一系列一个或更多个包传输的事务的请求。事务的例子包括但不限于存储器读取、存储器读取锁定、IO读取、IO写入、配置读取、配置写入和消息。在一些实现中,第一电子设备102除了第二电子设备104之外还耦合到一个或更多个附加电子设备。数据链路120包括一个或更多个开关设备以将第一电子设备102的根联合体设备106耦合到包括第二电子设备104和在图1中未示出的附加电子设备的多个端点。
基于包括应用层108、事务层110、数据链路层112和物理层114的分层模型来建立PCI Express。作为顶层,应用层108在软件程序(例如,_Ethernet、NVMe、SOP、AHCI和SATA)中实现。在事务层110中,一系列包传输的每个事务被实现为按时间分隔的请求和响应。例如,存储器相关的事务被转换成向或从第二电子设备104(例如存储器设备)传送的设备配置和控制数据。与每个事务相关联的数据包由在数据链路层112上的数据流管理。PCIExpress的物理层114控制链路训练和电气(模拟)信令,并且包括逻辑块116和电气块118。逻辑块116定义在训练状态(例如TS1和TS2)中的有序数据集,且电气块118定义眼图特征和模拟波形。分层模型的每一层包括用于传输端的第一规范和用于接收端的第二规范,根联合体设备106被耦合在传输端处,以及外围部件(即,第二电子设备104)被耦合在接收端处。
当高频信号在数据链路120的通道130内被传输时,这些信号发生畸变且在连续符号上散布,并在第二电子设备104的接收端处导致符号间干扰(ISI)和位错误。这些ISI和位错误可以由有限脉冲响应(FIR)驱动器抑制,该FIR驱动器在数据链路120的路径上串行地耦合,并且使用均衡过程被配置有均衡设置。当高速数据传送速率需要被初始化时,当均衡请求从应用层108被发出时,或者当误比特率(BER)超过数据误差容限时,均衡过程被实现。全数据路径在均衡过程中用于初始化和更新FIR驱动器的均衡设置,以及位级数据路径在均衡过程之外(即,之前和之后)用于基于先前被初始化或更新的最新均衡设置来传送数据。在一些实现中,基于在数据链路120上传送的数据包在物理层114上检测均衡过程的开始和终止。控制信号在物理层114上生成(即,不经由更高的应用层或事务层来提供)以使在全数据路径和位级数据路径之间的切换成为可能。
图2A和图2B是根据一些实现的两个示例电子系统200和250,其中数据链路120耦合在两个电子设备或部件102和104之间,并且包括至少一个重定时器220。重定时器220是被配置为主动传输数据包(即,按照诸如PCI Express的总线标准提取嵌入式时钟并恢复数据包)的混合信号设备。在示例中,重定时器具有连续时间线性均衡器(CTLE)、宽带增益级以及下列项中的一个或更多个:时钟和数据恢复(CDR)电路(例如图3中的元件302)、判决反馈均衡器(DFE)和有限脉冲响应(FIR)驱动器。状态机和/或微控制器在重定时器220中用于管理CTLE、宽带增益级、DFE和FIR驱动器,并实现链路训练和状态机(LTSSM),如图7所示。
数据链路120实现在电子设备102和104之间的双向数据通信。第一电子设备102包括具有传输接口Tx(A)和接收接口Rx(A)的上游部件202,以及第二电子设备104包括具有接收接口Rx(F)和传输接口Tx(F)的下游部件204。数据链路120的每个定时器220耦合在电子设备102和104之间,并且对于下行数据方向140和上行数据方向150中的每一个具有接收接口Rx和传输接口Tx。参考图2A,数据链路120包括仅一个重定时器220A。在一些实现中,重定时器220A布置成靠近第一电子设备102的上游部件202或第二电子设备104的下游部件204。重定时器220A的接收接口Rx(B)和传输接口Tx(B)分别耦合到第一电子设备102的传输接口Tx(A)和接收接口Rx(A)。重定时器220A的另一传输接口Tx(C)和另一接收接口Rx(C)分别耦合到第二电子设备104的接收接口Rx(F)和传输接口Tx(F)。因此,或者顺序地通过在下行数据方向140上的接口Tx(A)、Rx(B)、Tx(C)和Rx(F)或者顺序地通过在上行数据方向150上的接口Tx(F)、Rx(C)、Tx(B)和Rx(A),数据包在电子设备102和104之间进行传输。
参考图2B,数据链路120包括电气地串联耦合在第一电子设备102和第二电子设备104之间的两个重定时器220B和220C。在示例中,重定时器220B布置成靠近第一电子设备102的上游部件202,以及重定时器220C布置成靠近第二电子设备104的下游部件204。重定时器220B的接收接口Rx(B)和传输接口Tx(B)分别耦合到第一电子设备102的传输接口Tx(A)和接收接口Rx(A)。重定时器220B的另一传输接口Tx(C)和另一接收接口Rx(C)分别耦合到重定时器220C的接收接口Rx(D)和传输接口Tx(D)。重定时器220C的另一传输接口Tx(E)和另一接收接口Rx(E)分别耦合到第二电子设备104的接收接口Rx(F)和传输接口Tx(F)。因此,或者顺序地通过在下行数据方向140上的接口Tx(A)、Rx(B)、Tx(C)、Rx(D)、Tx(E)和Rx(F)或者顺序地通过在上行数据方向150上的接口Tx(F)、Rx(E)、Tx(D)、Rx(C)、Tx(B)和Rx(A),数据包在电子设备102和104之间进行传输。
图3是根据一些实现的数据链路120的重定时器220的简化框图,该重定时器220具有全数据路径302和位级数据路径304用于在下行或上行数据方向上的数据传送。除了数据路径302和304之外,重定时器220还包括接收接口Rx、时钟和数据恢复电路306、路径控制器308、多路复用器310、FIR驱动器312和传输接口Tx。重定时器220被配置为恢复和放大在对应于下行数据方向140或上行数据方向150的接收接口Rx处接收的信号,从而扩展数据链路120的信道所及范围。特别地,接收接口Rx从上游设备314接收数据包。数据包可选地包括链路训练数据、事务请求或事务响应。时钟和数据恢复电路306从数据包恢复嵌入式时钟信号和数据。在一些实现中,全数据路径302和位级数据路径304都在嵌入式时钟信号的控制下处理所恢复的数据,并且路径控制器308使用多路复用器310来选择全数据路径302和位级数据路径304中的一个以输出要馈送到FIR驱动器312内的处理后的数据。可选地,在一些实现中,全数据路径302和位级数据路径304中仅一个完全由路径控制器308启用以在嵌入式时钟信号的控制下处理所恢复的数据,并将处理后的数据馈送到FIR驱动器312中。FIR驱动器312的输出被提供到传输接口Tx和下游设备316。
参考图2A,在下行数据方向140上,重定时器220A的上游设备314和下游设备316分别是第一电子设备102和第二电子设备104。在上行数据方向150上,重定时器220A的上游设备314和下游设备316分别是第二电子设备104和第一电子设备102。参考图2B,在下行数据方向140上,重定时器220B的上游设备314和下游设备316分别是第一电子设备102和重定时器220C,以及重定时器220C的上游设备314和下游设备316分别是重定时器220B和第二电子设备104。在上行数据方向150上,重定时器220C的上游设备314和下游设备316分别是第二电子设备104和重定时器220B,以及重定时器220B的上游设备314和下游设备316是重定时器220C和第一电子设备102。
参考图3,FIR驱动器312被配置成经由数字信号调节(例如,经由在数字域中的高频滤波)来提高数据包的信号质量,并且具有多个均衡设置(例如滤波系数)。默认系数预置(preset)或先前确定的一组滤波系数被应用以在数据传输过程开始时传输数据包,并在数据传输过程期间用另一预置或新的一组滤波系数来更新。为了更新FIR驱动器312的系数,在上游设备314和下游设备316之间实现协议感知均衡协商(protocol-awareequalization negotiation)。例如参考图2A,重定时器220A参与在上游部件202和下游部件204之间的协议感知均衡协商。同样参考图2B,重定时器220B参与在上游部件202和重定时器220C之间的协议感知均衡协商,并且重定时器220C参与在重定时器220B和下游部件204之间的协议感知均衡协商。
换句话说,重定时器220被配置为执行均衡过程以使用在上游设备314和下游设备316之间的协商来更新FIR驱动器312的系数。在一些实现中,该均衡过程符合电子设备总线标准,例如PCI Express 3.0或以上。全数据路径302在均衡过程期间被应用来确定FIR驱动器312的系数。例如,协商和均衡过程继续,直到预定义的均衡准则被满足为止(例如,直到在下游设备316处接收的误比特率小于数据误差容限为止)。当均衡过程终止时,重定时器220使用利用已更新的系数来操作以将从上游设备314接收的数据包转发到下游设备316的位级数据路径304和FIR驱动器312。因此在示例中,全数据路径302被启用来当与PCIExpress 3.0或以上相关联的高速数据传输被请求并需要被发起时在均衡过程中设置FIR驱动器312,以及然后位级数据路径304被启用来在与PCI Express 3.0或以上相关联的后续高速数据传输期间(例如,在图7中的完全活动状态L0中)与已经在均衡过程中设置的FIR驱动器312一起操作。
特别地,在均衡过程开始之前,数据项的第一序列从上游设备314被接收,并经由数据链路120的位级数据路径304被传送(318)到下游设备316。FIR驱动器312在处理数据项的第一序列的过程期间采用默认系数预置或先前确定的一组滤波系数,这可能导致相对高的误比特率(例如10-5)。数据项的流包括指示均衡过程的开始的起始数据包。路径控制器308基于在数据包的第一序列中的起始数据包来检测(320)均衡过程的开始。根据检测到均衡过程的开始,重定时器220选择全数据路径302用于在数据链路120上的数据传送。在均衡过程期间,数据包的第二序列紧跟在数据包的第一序列之后,并且经由数据链路120的全数据路径302从上游设备314传送(323)到下游设备316。均衡过程基于在上游部件202和下游部件204(图2A)之间或在上游部件202、重定时器220B和202C以及下游部件204(图2B)当中的协议感知均衡协商来更新FIR驱动器312的滤波系数。在一些实现中,当误比特率在上游部件202、重定时器220和下游部件204的接收接口Tx中每一个处被抑制为小于比特误差容限(例如10-12)时,FIR驱动器312的滤波系数被最后确定,并且均衡过程可以被终止。数据包的第二序列以指示均衡过程的终止的终止数据包结束。在一些实现中,路径控制器308基于在数据包的第二序列中的终止数据包来检测(324)均衡过程的终止。位级数据路径304被重新选择以使用已更新的滤波系数与FIR驱动器312协作来传送数据包的一个或更多个后续序列。
图4是根据一些实现的重定时器220的有限脉冲响应(FIR)驱动器312的示意图。FIR驱动器312被配置为使携带数据包的电信号均衡以减轻符号间干扰并改善误比特率(BER),例如,将BER抑制在小于数据误差容限。在一些实现中,FIR驱动器312具有等于数据链路120的部分的频率响应的倒数的频率响应。例如,电信号以在高频范围处的增益被放大以抵消高频信号衰减。FIR驱动器312包括在均衡过程期间确定的多个滤波系数以自适应地补偿信号衰减。在一些实现中,FIR驱动器312耦合在接收接口Rx附近,例如在时钟和数据恢复电路306与数据路径302和304之间。在一些实现中,FIR驱动器312耦合在传输接口Tx附近,例如在多路复用器310和传输接口Tx之间。
在一些实现中,FIR驱动器312包括被配置为如下组合三个电信号Vn+1、Vn和Vn-1的三个滤波系数C+1、C0和C-1:
VN=C-1Vn-1+C0Vn+C+1Vn+1。
可选地,电信号Vn+1和Vn-1中的每一个从Vn偏移了一个时钟周期。第一滤波系数C0大于0,以及第二滤波系数C-1和第三滤波系数C+1中的每一个等于或小于0。滤波系数C+1、C0和C-1的值遭受在电子设备总线标准(例如PCI Express 3.0或以上)中定义的一个或更多个约束。在一些实现中,系数值的默认预置被存储在用于滤波系数C+1、C0和C-1的寄存器中,并且在任何均衡过程之前被使用。在一些实现中,系数值的多个预置被存储在寄存器中,并且多个预置中的一个被选择来在均衡过程期间定义滤波系数C+1、C0和C-1。在一些实现中,在均衡过程期间确定并应用系数值的集合。滤波系数C+1、C0和C-1的系数值的集合不同于默认集合或多个预置中的任一个,并且被确定作为协议感知均衡协商的结果。可选地,滤波系数C+1、C0和C-1的这些系数值在LTSSM状态(例如图7中的恢复状态)中以TS1/TS2符号被传递到FIR驱动器312。
图5是根据一些实现的在数据链路120的重定时器220中的全数据路径302的框图。全数据路径302被配置成操纵在数据包的序列中的一个或更多个数据位,从而在均衡过程期间至少促进协议感知均衡协商。全数据路径302包括下列项中的一个或更多个:串联至并联转换器(即解串行化器)502、解扰器504、解码器506、数据操纵器508、编码器510、加扰器512、去偏斜器514和并联至串联转换器(即串行化器)516。解串行化器502从时钟数据和恢复电路306接收数据包的序列,并将数据包的序列转换成第一多位并行数据信号。解扰器506将多位并行数据信号解扰以生成经解扰的数据信号。解码器504接收经解扰的数据信号并将经解扰的数据信号解码。经解码的信号然后在数据操纵器508中按照电子设备总线标准(例如PCI Express 3.0或以上)被操纵。当数据操纵完成时,经操纵的信号由编码器510编码,由加扰器512加扰,和/或由去偏斜器514去偏斜以提供第二多位并行数据信号,其由串行化器516串行化,由FIR驱动器312处理,并经由重定时器220的传输接口Tx提供到下游设备316。
相反,参考图3,在一些实现中,位级数据路径304还包括被配置为顺序地传送数据包的序列而不主动改变在数据包的序列中的任何数据位的串行SFIFO电路。SFIFO电路不将数据包的序列转换成多位并行数据信号,它也不在数字域中将多位并行数据信号解扰、解码、操纵、编码、加扰或去偏斜。SFIFO电路充当传送数据包的序列的缓冲器。在一些情况下,当数据包的序列经由位级数据路径304被传送时,重定时器相关的数据时延可以在符合PCIExpress 3.0或以上的规范的数据链路120的下游或上行方向上降低到低于阈值数据时延(例如3纳秒或更少)。可选地,在一些情况下,如果数据包的序列经由全数据路径302被传送(例如,在均衡过程期间),则重定时器相关的数据时延在数据链路120的下行或上行方向上超过50纳秒。
在本申请的一些实现中,在均衡过程期间应用全数据路径302,这只是链路训练状态的一部分。数据传输出现在链路训练状态之后的完全活动状态(L0)期间,并且可以依赖于位级数据路径304。因此,在均衡过程之后,数据传输可以受益于由位级数据路径304提供的低重定时器相关的数据时延。在一些实现中,当数据包序列在数据链路120上用位级数据路径304例如在完全活动状态(L0)中被传送时,第一电子设备102或第二电子设备104监测从数据链路120的传输接口Tx接收的数据包的第一序列的误比特率,并确定BER是否满足均衡条件(例如,BER小于数据误差容限)。根据BER不满足均衡条件的确定,接收接口Rx随后接收起始数据包以开始另一均衡过程来例如在链路训练状态中更新FIR驱动器312的均衡设置(例如,滤波系数C+1、C0和C-1)。起始数据包触发全数据路径302的选择,并且全数据路径302被应用直到均衡过程终止为止。
图6是根据一些实现的数据链路120的另一重定时器220的框图,该重定时器220具有全数据路径302和位级数据路径304用于沿着两个相反的数据方向中的任一个传送数据。两个相反的数据方向包括从第一电子设备102延伸到第二电子设备104的下行数据方向140以及从第二电子设备104延伸到第一电子设备102的上行数据方向150。对于下行数据方向140和上行数据方向150中的每一个,重定时器220分别包括相应的位级数据路径304A或304B、相应的全数据路径302A和302B以及相应的路径控制器308A或308B。
对于下行数据方向140和上行数据方向150中的每一个,位级数据路径304A或304B被配置为在正常数据传输期间(例如,在完全活动状态(L0)中)将数据包的第一序列从相应的上游设备传送到相应的下游设备。全数据路径302被配置为在均衡过程期间(例如在链路训练状态中)将跟随数据包的第一序列的数据包的第二序列从相应的上游设备传送到相应的下游设备。路径控制器308A或308B被配置成(i)在数据包的第一序列被传送的同时,基于在数据包的第一序列中的起始数据包来检测均衡过程的开始,以及(ii)根据检测到均衡过程的开始来选择全数据路径302A或302B用于在数据链路上的数据传送。在一些实现中,路径控制器308A或308B还被配置成基于在数据包的第二序列中的终止数据包来检测均衡过程的终止,并且根据检测到均衡过程的终止分别来选择重定时器220的位级数据路径304A或304B用于在数据链路120上的数据传送。
在一些实现中,下行数据方向140和上行数据方向150中的每一个独立于下行数据方向140和上行数据方向150中的另一个而具有均衡过程。例如,在下游传输接口Tx_D和上游传输接口Tx_U处独立地监测BER,并且独立地确定BER对于传输接口Tx_D和Tx_U中的每一个是否超过数据误差容限,以及相应的数据方向140或150是否需要均衡过程。
可选地,在一些实现中,下行数据方向140和上行数据方向150共同实现均衡过程以更新它们的相应FIR驱动器312A和312B的均衡设置。当数据方向140和150都被更新时,均衡过程完成。在均衡过程期间,协议感知均衡协商在第一电子设备102、重定时器220和第二电子设备104当中被实现,并且涉及在下行数据方向140和上行数据方向150二者上的数据传送。FIR驱动器312A和312B的均衡设置都被更新,作为协议感知均衡协商的结果。训练数据在第一电子设备102和第二电子设备104之间来回被传递至少一次。PCIe均衡过程包括四个阶段:阶段0、阶段1、阶段2和阶段3。在阶段2中,在每个上游部件202或重定时器220的下行数据方向140上耦合到传输接口Tx_D的FIR 312A被训练。在阶段3中,在每个下游部件204或重定时器220的上行数据方向150上耦合到传输接口Tx_U的FIR 312B被训练。参考图2A,耦合到传输接口Tx(A)和Tx(E)的FIR 312A在阶段2中被训练,以及耦合到传输接口Tx(B)和Tx(F)的FIR312B在阶段3中被训练。参考图2B,耦合到传输接口Tx(A)、Tx(C)和Tx(E)的FIR312A在阶段2中被训练,以及耦合到传输接口Tx(B)、Tx(D)和Tx(F)的FIR 312B在阶段3中被训练。
在一些实现中,当下行数据方向140和上行数据方向150共同地实现均衡过程以更新它们的相应FIR驱动器312A和312B的设置时,均衡过程以第一起始数据包开始,并以在下行数据方向140的接收接口Rx_D处接收的第一终止数据包结束。在均衡过程开始时,根据第一起始数据包的检测,全数据路径302A被选择来在均衡过程期间针对下行数据方向140传送数据包。在第一起始数据包到达第二电子设备104之后,在接收接口Rx_U处应用第二起始数据包。根据第二起始数据包的检测,全数据路径302B被选择来在均衡过程期间针对上行数据方向150传送数据包。在均衡过程结束时,根据第一终止数据分组的检测,位级数据路径304A被选择来在均衡过程之后针对下行数据方向140传送数据包。在第一终止数据包到达第二电子设备104之后,在接收接口Rx_U处应用第二终止数据包。根据第二确定数据包的检测,位级数据路径304B被选择来在均衡过程之后针对上行数据方向150传送数据包。因此,在全数据路径302和位级数据路径之间的切换在重定时器220的物理层上无缝且自动地实现,并且不涉及来自第一电子设备102和第二电子设备104中的任一个的干预。
图7是根据一些实现的数据链路120的链路训练和状态机(LTSSM)700的状态图。LTSSM 700具有五类状态:链路训练状态(例如检测、轮询和配置)、链路重新训练状态(例如恢复)、电源管理状态(例如L0、L1和L2)、有功功率管理状态(例如L0和L1)以及其他状态(例如禁用、回送、热重置(hot reset))。每个状态还包括一个或更多个子状态。在任何类型的重置退出之后或者在来自数据链路层112的请求时,数据链路120顺序地经历检测、轮询和配置状态,并且达到完全活动状态(L0),其中正常数据传输被实现。
在一些实现中,如果BER在完全活动状态(L0)中超过数据误差容限,则LTSSM 700转变到恢复状态,其中数据链路被重新训练以经由均衡过程702来更新FIR驱动器312的设置。全数据路径302在均衡过程702开始时被选择,并且在均衡过程702终止时(例如当数据链路120在完全活动状态(L0)中返回到正常操作时)被取消选择。
在一些实现中,数据链路120是PCI Express 3.0或以上的链路,以及当数据速率增加时均衡过程被执行。每个数据通道130被配置成以包括第一数据速率(例如0.5Gbp)和高于第一数据速率的第二数据速率(例如1Gbp)的不同数据速率传输数据。数据链路120顺序地经历检测、轮询和配置状态,并达到完全活动状态(L0)。在完全活动状态(L0)中,数据包例如在一些情况下经由数据链路120的位级数据路径304以第一数据速率被传送。响应于将数据链路120的数据速率提升到第二数据速率的请求,数据链路120进入恢复状态,其中均衡过程702被实现以确定可以支持第二数据速率的FIR驱动器312的均衡设置。全数据路径302在均衡过程702开始时被选择,并且在均衡过程702终止时(例如,当FIR驱动器312的均衡设置支持第二数据速率并且数据链路120返回到完全活动状态(L0)时)被取消选择。当数据链路120返回到完全活动状态(L0)时,数据包开始经由数据链路120的位级数据路径304以第二数据速率被传送。
通常,均衡过程可以至少当BER超过数据误差容限时以及当数据链路的数据速率增加到更高水平时被执行,从位级数据路径304到全数据路径302的数据路径切换也这样被执行。如下面参考图8A-8B、图9A-9B和图10所解释的,在特定时间控制在位级数据路径304和全数据路径302之间的数据路径切换以避免在下游设备316的一侧上的位解锁和块未对准(block misalignment)。
图8A和图8B示出了示例切换过程800,其中根据一些实现,重定时器220的下行数据方向140和上行数据方向150中的每一个分别从位级数据路径304切换到全数据路径302。对于下行数据方向140和上行数据方向150中的每一个,最初分别经由数据链路120的重定时器220的位级数据路径304A或304B来传送数据包的第一序列802或852。对于下行数据方向140,均衡过程以在重定时器220的下游接收接口Rx_D处接收第一有序训练数据集(TS1)820A开始。对于上行数据方向150,均衡过程以在重定时器220的上游接收接口Rx_U处接收另一第一有序训练数据集(TS1)870A开始。
参考图8A,在第一有序训练数据集820A中的每个数据包包括指示均衡的阶段的EC符号。第一有序训练数据集820A包括数据包的第一子集804和数据包的第二子集806。在第一数据子集804中的每个数据包的EC符号是“01”,指示均衡过程的第一阶段,以及在第二数据子集806中的每个数据包的EC符号是“10”,指示紧跟在均衡过程的第一阶段之后的第二阶段。在数据包的第一子集804中的一个或更多个数据包经由位级数据路径304A被传输,从而到达重定时器220的下游传输接口Tx_D而不被修改。对于下行数据方向140,当“01”的EC符号在数据包的第一序列802中由路径控制器308检测到时,均衡过程的开始被检测到。
根据检测到均衡过程的开始,路径切换被实现(808)来选择全数据路径302A,用于传输第一有序训练数据集(TS1)820A的剩余部分和跟随第一有序训练数据集820A的数据包的一个或更多个序列。特别地,当第一有序训练数据集820B到达下游传输接口Tx_D时,它包括数据包的四个子集810、812、814和816。子集810对应于结束数据包的第一序列802的起始数据包,并且用于检测均衡过程的开始。子集812对应于当重定时器220从位级数据路径304A切换到全数据路径302A时的持续时间,并且子集812的数据包可以包括错误位并且未被对准。子集814和816使用新近选择的全数据路径302被传送,并且标记使用全数据路径302A传送的数据包的第二序列818的开始。
参考图8B,在上行数据方向850上,对应的第一有序训练数据集870A包括数据包的第一子集854和数据包的第二子集856。在第一数据子集854中的每个数据包的EC符号是“00”,而在第二数据子集856中的每个数据包的EC符号是“01”。在数据包的第一子集854中的一个或更多个数据包经由位级数据路径304B被传输,从而到达重定时器220的上游传输接口Tx_U而不被修改。对于上行数据方向150,当“00”的EC符号在数据包的第一序列852中由路径控制器308检测到时,均衡过程的开始被检测到。根据检测到均衡过程的开始,路径切换被实现(858)来选择全数据路径302B,用于传输第一有序训练数据集870A的剩余部分和跟随第一有序训练数据集870A的数据包的一个或更多个序列。特别地,当第一有序训练数据集870B到达上游传输接口Tx_U时,它包括数据包的四个子集860、862、864和866。子集860对应于结束数据包的第一序列802的起始数据包,并且用于检测均衡过程的开始。子集862对应于当重定时器220从位级数据路径304B切换到全数据路径302B时的持续时间。子集864和866使用新近选择的全数据路径302B被传送,并且标记使用全数据路径302A传送的数据包的第二序列868的开始。尽管有不稳定数据的子集812或862,但是数据包的序列818或868仍被视为分别紧跟在数据包的第一序列802或852之后。
换句话说,在下行数据方向140上,当重定时器220检测到上游设备或部件(例如第一电子设备102)在TS1训练块(即,数据包的第一子集804)中发出具有EC=“01”的均衡过程时,重定时器220将数据传送从位级数据路径304A切换到全数据路径302A。这样的数据路径切换被保证在下游部件204在Recovery.rcvrLock或Recovery.EQ.phase0状态时出现。在上行数据方向150上,当重定时器检测到第二电子设备104的下游部件204在TS1训练块(即,数据包的第一子集854)中发出具有EC=“00”的均衡过程时,重定时器将数据传送从位级数据路径304B切换到全数据路径302B。这样的数据路径切换被保证在第一电子设备的上游部件202的Recovery.EQ.phase1状态出现。这些状态允许上游部件202和下游部件204进行位锁定和块对准(例如,在对应于数据包的子集812和862的持续时间期间)。
可选地,在一些实现中,当在PCI Express的规范中定义的start_equalization_w_preset变量等于“0”时,重定时器220开始数据传送从位级数据路径304到全数据路径302的切换。当start_equalization_w_preset变量改变为“1”时,重定时器220可以开始在退出电空闲状态(例如,在Recovery.Speed时)之后、甚至在均衡过程开始之前立即使用全数据路径302来传送数据。在“start_equalization_w_preset=1”的这种情况下,当EC=01出现在第一有序训练数据集820A或870A中时,没有从位级数据路径304切换到全数据路径302的需要。也就是说,起始数据包包括start_equalization_w_preset变量,以及均衡过程的开始根据start_equalization_w_preset变量具有值“1”的确定而被检测到。
图9A和图9B示出了示例切换过程900,其中根据一些实现,重定时器220的下行数据方向140和上行数据方向150中的每一个分别从全数据路径302切换到位级数据路径304。对于下行数据方向140和上行数据方向150中的每一个,最初分别经由数据链路120的重定时器220的全数据路径302A或302B来传送数据包的第二序列902或952。对于下行数据方向140,当在重定时器220的下游接收接口Rx_D处接收到有序数据集920A时,均衡过程终止。对于上行数据方向150,当在重定时器220的上游接收接口Rx_U处接收到另一有序数据集970A时,均衡过程终止。
参考图9A,在有序数据集920A中的每个数据包包括顺序地排序的子集904、906、908、910和912。子集904、910和912包括训练数据。子集906包括开始数据流(SDS)数据字段,以及子集908包括IDLE数据字段。数据操纵器508由路径控制器306控制以用非IDLE数据914替换在下游接收接口Rx_D处接收的SDS数据字段和IDLE数据字段(即子集906和908)中的预定义数据。响应于该替换操作,预定义值在较长的持续时间(例如2ms)内没有被耦合到下游传输接口Tx_D的下游部件204检测到。下游部件204不发送回指示它在较长的持续时间内已经进入空闲状态的确认数据。当上游部件202没有接收到确认数据时,上游部件202例如在多个这样的IDLE数据序列已被传送之后停止发送出子集908中的IDLE数据序列,并且开始发送子集910和912中的训练数据序列。终止数据包包括子集912中的一个或更多个训练序列。当检测到终止数据包时,数据链路120的重定时器220确定均衡过程已经终止。
根据检测到均衡过程的终止,路径切换被实现(916)来选择位级数据路径用于传输有序数据集920的剩余部分和跟随有序数据集920的数据包的一个或更多个序列。特别地,当有序数据集920B到达下游传输接口Tx_D时,它包括数据包的五个子集918、922、924、926和928。子集922包括非IDLE数据914,以及子集918在子集922之前。当超时状态数据被检测到时,终止数据包至少对应于子集924中的训练数据序列。子集926对应于当重定时器220从全数据路径302A切换到位级数据路径304A时的持续时间,以及子集926的数据包可以包括错误位并且未被对准。子集928使用新近选择的位级数据路径304A被传送,并且标记使用位级数据路径304A传送的数据包的另一序列930的开始。
参考图9B,对于上行数据方向150,数据操纵器508被配置成用非IDLE数据964替换在上游接收接口Rx_U处接收的SDS字段956和IDLE数据字段958中的预定义数据。响应于该替换操作,预定义值在较长的持续时间期间(例如2ms)内没有在上游传输接口Tx_U处由上游部件202检测到。在较长的持续时间期间,下游部件204例如在多个这样的IDLE数据序列已被传送之后停止发送出子集908中的IDLE数据序列,并且开始发送子集960和962中的训练数据序列。终止数据包包括子集960中的一个或更多个训练序列。当检测到终止数据包时,数据链路120的重定时器220确定均衡过程已经终止。根据检测到均衡过程的终止,路径切换被实现(966)来选择位级路径用于传输有序数据集970的剩余部分和跟随数据包的第二序列952的数据包的一个或更多个序列。特别地,当超时状态数据被检测到时,终止数据包对应于子集972中的非IDLE数据964。子集976对应于当重定时器220从全数据路径302B切换到位级数据路径304B时的持续时间。子集978使用新近选择的位级数据路径304B被传送,并且标记使用位级数据路径304B传送的数据包的另一序列980的开始。尽管有不稳定数据的子集926或976,但是数据包的序列930或980仍被视为分别紧跟在数据包的第二序列902或952之后。
换句话说,当重定时器220检测到均衡过程的终止时,即切换点在子集912和962中在Recovery.rcvyLock状态中时,重定时器220将数据传送从全数据路径302切换到位级数据路径304。当在均衡过程完成之后LTSSM从Recovery.IDLE状态改变到Recovery.rcvyLock状态时,重定时器220创建切换点。重定时器220用其他非IDLE块914或964(内容可编程块)替换在下行数据方向140和上行数据方向150二者上的SDS有序集906或956和IDLE数据块908或958,以便使上游和下游设备都变得超时(例如,在2ms之后)并进入Recovery.rcvyLock状态内。当重定时器220保证接收数据的上游或下游设备在Recovery.rcvyLock状态时,它从全数据路径302切换到位级数据路径304。
图10示出了根据一些实现的另一示例切换过程1000,其中重定时器220的下行数据方向140和上行数据方向150中的每一个从全数据路径302切换到位级数据路径304。对于上行数据方向150和下行数据方向140中的每一个,最初分别经由数据链路120的重定时器220的全数据路径302B或302A来传送数据包的第二序列1002或1052。对于上行数据方向150,当在重定时器220的上游接收接口Rx_U处接收到有序数据集1020A时,均衡过程终止。对于下行数据方向140,当在重定时器220的下游接收接口Tx_D处接收到另一有序数据集1070A时,均衡过程终止。
有序数据集1020A包括终止均衡过程的IDLE数据字段1008。数据操纵器508和/或路径控制器308被配置为缩短(1080)IDLE数据字段1008,并用训练状态数据1016和1018替换在上游传输接口Tx_U处接收的在IDLE数据字段1008中的预定义数据的一部分。训练状态数据1018可以是损坏的训练状态数据或其他内容可编程块以防止下游部件移动到Recovery.rcvyLock状态的下一状态。
响应于(1082)对IDLE数据字段1008的这个缩短/替换操作,上游部件202进入完全活动状态(L0)。在下行数据方向140上,上游部件202终止(1084)IDLE数据字段1058中的IDLE数据序列,并且开始(1084)去往下游接收接口Rx_D的训练数据序列1060。重定时器220在接收到训练数据序列1060时检测L0状态的终止,并相应地将数据传送从全数据路径302A切换(1072)到位级数据路径304A。相反,在下游部件204在有序数据集1070B中检测到(1086)L0状态的开始时,下游部件204发送出训练数据序列1010,并且上行数据方向150进入(1088)L0状态。重定时器220在接收到训练数据序列1010时检测L0状态的开始,并相应地将数据传送从全数据路径302B切换(1022)到位级数据路径304B。通过这些手段,Recovery.rcvyLock状态针对上行数据方向150或下行数据方向140被创建(1084和1088)以便于路径切换,且然后数据包的序列1032或1082分别经由上行数据方向150或下行数据方向140的位级数据路径304被传送。
换句话说,在一些实现中,重定时器220通过用EIEOS/TS1有序集替换有序数据集1020中的IDLE数据块1008的部分来创建在Recovery.rcvyLock状态中的切换点,以使耦合到上游传输接口Tx_U的上游部件202在上游部件从Recovery.IDLE状态进入L0状态内之后立即移动到Recovery.rcvyLock状态。在上游部件进入Recovery.rcvyLock状态内之后,它发送出EIEOS/TS1有序集,且然后下游部件204也移动到Recovery.rcvyLock状态。通过这些手段,当重定时器220保证接收数据的上游部件202或下游部件204在Recovery.rcvyLock状态时,重定时器220从全数据路径302切换到位级数据路径304。
图11是根据一些实现的在数据链路120上传送数据的方法1100的流程图。数据链路120耦合在第一电子设备102和第二电子设备104之间,并且包括具有并联耦合的全数据路径302和位级数据路径304的重定时器220。在一些实现中,位级数据路径还包括被配置为经由数据链路120顺序地传送数据包的第一序列而不改变在数据包的第一序列中的任何数据位的串行先进先出(SFIFO)电路。在一些实现中,全数据路径还包括一个或更多个串联至并联转换器、解扰器、解码器、数据操纵器、编码器、加扰器、去偏斜器和并联至串联转换器,并且被配置为操纵在数据包的第二序列中的一个或更多个数据位,从而在均衡过程期间至少促进在第一电子设备102和第二电子设备104之间的均衡协商。
数据链路120经由重定时器220的位级数据路径304将数据包的第一序列从第一电子设备102传送(1102)到第二电子设备104。当传送数据包的第一序列时,数据链路120(例如路径控制器308)基于在数据包的第一序列中的起始数据包来检测(1104)均衡过程的开始。在一些情况下,在重定时器220的输出端处监测数据包的第一序列的误比特率。第一电子设备102或第二电子设备104确定误比特率是否满足均衡条件。根据误比特率不满足均衡条件的确定,均衡过程开始。
在一些实现中,数据链路具有下行数据方向140和上行数据方向150。重定时器220的位级数据路径304和全数据路径302对应于下行数据方向140和上行数据方向150之一。此外在一些实现中,起始数据包属于第一有序训练数据集820,并且具有指示均衡的阶段的EC符号。根据全数据路径对应于下行数据方向140的确定,数据链路120通过检测到在起始数据包的EC符号中的数据是“01”来检测均衡过程的开始。根据全数据路径对应于上行数据方向的确定,数据链路120通过检测到在起始数据包的EC符号中的数据在起始数据包中为“00”来检测均衡过程的开始。
根据检测到均衡过程的开始,数据链路120(例如路径控制器308)选择(1106)重定时器220的全数据路径302用于在数据链路120上的数据传送。在均衡过程期间,数据链路120经由重定时器220的全数据路径302将跟随数据包的第一序列的数据包的第二序列从第一电子设备102传送(1108)到第二电子设备104。在一些实现中,重定时器220还包括耦合到全数据路径302和位级数据路径304二者的有限脉冲响应(FIR)驱动器312。当在均衡过程期间经由全数据路径302传送数据包的第二序列时,针对FIR驱动器312更新多个滤波系数。在均衡过程终止之后并利用位级数据路径304,多个滤波系数继续由FIR驱动器312利用。此外在一些实现中,通过选择多个系数预置中的一个来更新多个滤波系数。FIR驱动器312耦合到传输接口Tx并耦合到全数据路径的输出端和位级数据路径的输出端。
在一些实现中,嵌入式时钟信号由在全数据路径302和位级数据路径304外部的时钟和数据恢复电路306恢复。嵌入式时钟信号被提供到位级数据路径304和全数据路径302二者,用于分别使数据包的第一序列和第二序列同步。
在一些实现中,数据链路120(例如路径控制器308)基于在数据包的第二序列中的终止数据包来检测(1110)均衡过程的终止,并且根据检测到均衡过程的终止来选择(1112)重定时器的位级数据路径用于在数据链路上的数据传送。此外在一些实现中,全数据路径302由路径控制器306控制以用非IDLE数据替换在终止数据包的至少IDLE数据字段中的数据。响应于该替换,数据链路120(例如路径控制器308)接收在数据包的第二序列中的终止数据包。当第一电子设备102不能从第二电子设备104得到由于在接收在IDLE数据字段中被替换的IDLE数据序列时的失败而超时的确认时,终止数据包由第一电子设备102添加。可选地,在一些实现中,通过检测起始于终止数据包的完全活动状态(L0)的开始来检测均衡过程的终止。上面参考图9A-9B和图10讨论了关于在均衡过程终止时从全数据路径302到位级数据路径的切换的更多细节。
在一些实现中,重定时器220包括第一重定时器220B,并且数据链路120还包括与在数据链路120上的第一重定时器220B串联耦合的第二重定时器220C。可选地,第一重定时器220B布置成靠近第一电子设备102,以及第二重定时器220C布置成靠近第二电子设备104。
在一些实现中,位级数据路径304具有第一数据时延。全数据路径302具有第二数据时延。第二数据时延大于第一数据时延。位级数据路径304被启用来在重定时器的位级低时延模式中(例如在均衡过程之外)传送数据,以及全数据路径302被启用来在正常数据传送模式中(例如在均衡过程中)传送数据。该位级低时延模式由重定时器本身在数据链路的物理级上自动地并且在没有来自其他电子设备或部件(例如,耦合到数据链路的上游部件和下游部件)的干预的情况下无缝地被激活和去激活。
图12示出了根据一些实现的用于发起数据链路120并便于在数据链路120中的路径切换的数据包的示例序列1200。可以经由在数据链路120中的重定时器220的全数据路径302或位级数据路径在两个电子设备(例如第一电子设备102和第二电子设备104)之间传送数据。重定时器220的全数据路径302可以在位级上操纵数据(例如,改变或更新数据)。相反,重定时器220的位级数据路径304不能在位级上操纵数据。在一些实现中,全数据路径302具有第一数据时延,并且位级数据路径304具有小于第一数据时延的第二数据时延(例如,全数据路径302与位级数据路径304相比具有更高的时延)。
数据链路120包括至少一个重定时器220(例如一个或更多个重定时器220)。例如,参考图2A,数据链路120可以包括直接连接到第一设备102且直接连接到第二设备104的单个重定时器220。在另一个示例(图2B)中,数据链路120可以包括第一重定时器220B和第二重定时器220C,第二重定时器220C在数据链路120上与第一重定时器220B串联耦合。在这样的情况下,第一重定时器220B直接连接到第一设备,以及第二重定时器220C经由第一重定时器220B连接到第一设备。类似地,第二重定时器220C直接连接到第二设备104,以及第一重定时器220B经由第二重定时器220C连接到第二设备104。
如上面参考图6所解释的,在数据链路120中的重定时器220具有第一数据方向140(例如,从第一设备102到第二设备104)和第二数据方向150(例如,从第二设备104到第一设备102)。第二数据方向150与第一数据方向140相反。第一数据方向140和第二数据方向150中的每一个包括相应的全数据路径302、相应的位级数据路径304以及耦合到相应的全数据路径302或位级数据路径304的相应的有限脉冲响应(FIR)滤波器312。
当电子设备102或104被加电并开始使用数据链路120用于数据传送时,数据链路120被发起以在它被应用来在第一电子设备102和第二电子设备104之间传送数据之前建立与第一电子设备102和第二电子设备104的连接。通过经由数据链路120的全数据路径302传输数据包的第一序列1202,在第一电子设备102和第二电子设备104之间发起数据链路120。在全数据路径302中的数据包的第一序列1202的传输允许数据链路120的至少一个重定时器220操纵所传输的数据(例如,数据包的第一序列的至少一部分可以被数据链路120中的至少一个重定时器220改变)。
在一些实现中,在建立数据链路120的过程期间,第一电子设备102和第二电子设备104中的每一个需要获得关于在耦合在电子设备102和104之间的数据链路120中应用多少个重定时器220的信息。每个重定时器220的全数据路径302修改所传输的数据,以便提供相应重定时器220的存在的指示。特别地,数据包的第一序列1202包括一个或更多个重定时器存在位。当数据包的第一序列1202经过耦合在电子设备102和104之间的每个重定时器220时,相应重定时器220的全数据路径302被应用并且例如通过将存在位的计数增加1来调整数据包的第一序列中的一个或更多个重定时器存在位。当第二电子设备104接收到数据包的第一序列1202时,基于一个或更多个重定时器存在位来(例如,由第一设备和/或第二设备)确定在数据链路120中的重定时器的数量。在示例中,作为在两个设备102和104之间的数据链路120的一部分的第一重定时器220B改变在从第一设备102传输到第二设备104的数据包的第一序列1202的TS2块中的第一位。作为两个设备102和104之间的数据链路120的一部分的第二重定时器220C可以改变在TS2块中的不同于第一位的第二位。因此,当在第二设备处接收到数据时,在TS2块中的两个位被重定时器220改变,从而给第二设备提供在数据链路120中的重定时器220的数量的指示(例如,在数据链路120中有两个重定时器220,因为TS2块的两个位被改变)。在另一个示例中,一个或更多个重定时器存在位有具有“00”的初始值的2个位,并且每当数据包的第一序列1202经过一个重定时器120时被计数一次。当数据包的第一序列1202离开最后一个重定时器220或到达第二电子设备104时,重定时器存在位的值“01”、“10”或“11”表示数据链路120具有串联耦合的1、2或3个重定时器。
在一些实现中,响应于在第一设备和第二设备之间建立数据链路120的连接,数据链路120自动从全数据路径302切换到位级数据路径304(例如,没有用户干预,独立于在数据链路120处传输或接收的信息,独立于用户输入)。在一些情况下,在数据链路120的发起(和成功的建立)之后,数据链路120在电空闲状态1204中,后面是链路重新训练状态(例如恢复,见图7),其中数据链路120可以经由均衡过程1206被重新训练。重定时器220在数据链路120的连接的建立之后识别电空闲状态1204,并在电空闲状态1204期间从全数据路径302切换到位级路径304。此外,在一些实现中,均衡过程1206使用位级数据路径304来实现以确定FIR驱动器312的滤波系数(特别地,当数据链路120的连接被建立时在该低速率设置下)。可选地,当数据链路120的连接被建立时,可以使用全数据路径302来实现这个均衡过程1206。
一旦在第一设备和第二设备之间的数据链路120被建立并且数据链路120从全数据路径302切换到位级数据路径304,数据就经由位级数据路径304在第一设备102和第二设备104之间被传输。在一些实现中,数据包的第一序列的剩余子集继续根据低数据速率设置(例如,在低数据速度、低数据传输速度处)被传输(例如,经由全数据路径302)。在一些实现中,经由位级数据路径304来传送不同于并跟随数据包的第一序列1202的数据包的第二序列1208。在一些实现中,数据包的第二序列1208经由位级数据路径304被传送,而不考虑数据链路120的数据速率设置。在一些实现中,根据数据链路120的数据速率设置(包括低数据速率设置(例如2.5Gbps)和高数据速率设置(例如5、8、16或32Gbps))经由位级数据路径304来传送数据包的第二序列1208。
在一些实现中,在第一设备102和第二设备104之间建立数据链路120的连接之后,数据链路120的数据速率从低数据速率设置(例如2.5Gbps)增加到高数据速率设置(例如5Gbps)。例如,这可以在传送数据包的第一序列1202的过程期间发生。使用位级数据路径304来实现均衡过程1206以确定在高数据速率设置处的FIR驱动器312的滤波系数。随后使用高数据速率设置来传送数据包的第二序列1208。在一些实现中,低数据速率设置定义了2.5Gbps的数据速率(例如数据传输速率、数据传输速度)。在一些实现中,高数据速率设置选自在2.5Gbps之上的数据速率设置的层级。在一些实现中,数据速率设置的层级包括下面的预定义数据速率中的一个或更多个:5Gbps、8Gbps、16Gbps和32Gbps。
在一些实现中,数据速率可以经由均衡过程1206从低数据速率设置直接增加到高数据速率设置中的任一个,例如从2.5Gbps到16Gbps。数据包的第一序列1202可选地携带用于数据速率增加到的高数据速率设置的预定义初始滤波系数,并且预定义初始滤波系数由提供数据包的第一序列1202的电子设备提供。在接收到经由数据包的第一序列1202增加数据速率的指令之后,数据链路120使用具有高数据速率设置的预定义初始滤波系数,直到均衡过程1206更新滤波系数为止。相反,在一些实现中,数据包的第一序列1202不携带用于数据速率增加到的高数据速率设置的预定义初始滤波系数。更确切地,对于每个高数据速率设置,预定义初始滤波系数在本地被存储在数据链路的存储器中。在接收到经由数据包的第一序列1202增加数据速率的指令之后,数据包的第一序列1202在具有高数据速率设置的情况下使用从数据链路的存储器在本地提取的预定义初始滤波系数,直到均衡过程1206定制数据链路120和相关联电子设备的FIR驱动器312的滤波系数为止。
此外和可选地,在一些实现中,数据速率可以经由层级从低数据速率设置逐渐增加到高数据速率设置中的任一个。例如,使用位级数据路径304来实现均衡过程1206以确定在5Gbps的第一高数据速率设置处的FIR驱动器312的滤波系数。数据包的第二序列1208随后使用位级数据路径304在第一高数据速率设置处被传送,并且包括另一均衡过程1210。使用位级数据路径304来实现均衡过程1210以确定在8Gbps的第二高数据速率设置处的FIR驱动器312的滤波系数。数据包的第三序列1212随后使用位级数据路径304在第二高数据速率设置处被传送。在数据包的第一序列1202和第二序列1208中的每一个中,与第一或第二高数据速率设置相关联的相应的预定义初始滤波系数或者由数据包的相应序列携带,或者从数据链路120的本地存储器被提取。相应的预定义初始滤波系数用于以第一或第二高数据速率传送数据包的相应序列,直到相应的均衡过程1206或1210为相应的高数据速率定制数据链路120的FIR驱动器312的滤波系数和相关联电子设备为止。
图13是根据一些实现的更新FIR驱动器的滤波系数的均衡过程1300。在一些实现中,在数据链路120从全数据路径302切换到位级数据路径304之后,数据链路120经由均衡过程1300(例如,图12中的均衡1206或1210)被重新训练。例如,当数据链路120的数据速率设置改变为8Gbps或更高的数据速率设置(例如,8Gbps、16Gbps或32Gbps的数据速率)时,均衡过程1300在更多数据的传送之前(例如,在跟随数据包的第一序列1202的数据包的第二序列1208或数据包的第三序列1212的传输之前)被执行。特别地,数据链路120包括耦合在第一电子设备102和第二电子设备104之间的一个或更多个重定时器1306。第一电子设备102和第二电子设备104中的每一个分别具有耦合在数据链路120的第一数据方向140或第二数据方向150上的相应的FIR驱动器1312或1314。在数据链路120的连接被建立之后以及在均衡过程1300期间,多路复用器310选择位级数据路径304A和304B以分别耦合到在第一数据方向140和第二数据方向150上的FIR滤波器1318和1316的输入端。全数据路径302A和302B仍然接收和处理由电子设备102和104提供的数据包,但是处理后的数据包没有沿着第一数据方向140和第二数据方向150被全数据路径302传递。
换句话说,在均衡过程1300期间,第一设备102的FIR驱动器1312的设置、第二设备104的FIR驱动器1314的设置以及重定时器1306的FIR滤波器1316和1318的设置基于由全数据路径302A和302B操纵的数据被更新。在一些实现中,执行均衡过程1300包括经由在第一设备102和第二设备104之间的数据链路120的位级数据路径304来传送数据(例如,数据包的第一序列1202),同时使用数据链路120的全数据路径302来监测经由位级数据路径304执行的数据传送并便于与第一设备102或第二设备104的均衡协商。
在一些实现中,数据链路120的数据速率在均衡过程1300期间被改变(例如增加)。在一些实现中,当数据链路120的数据速率增加到8Gbps或更高的数据速率设置(例如8Gbps、16Gbps或32Gbps的数据速率)时,执行均衡过程1300。在一些实现中,当数据链路120具有8Gbps、16Gbps或32Gbps的数据速率设置时,执行均衡过程1300,以进一步改变数据设置。在一些实现中,当数据链路120具有8Gbps或更高的数据速率设置时,执行均衡过程1300。
参考图12和图13,在一些实现中,在均衡过程1300期间增加数据链路120的数据速率包括经由位级数据路径304在第一设备102和第二设备104之间传送(例如传输)数据包的第一序列1202(例如,而不操纵数据包的第一序列)。使用数据链路120的全数据路径302来监测经由位级数据路径304对数据包的第一序列1202的传送。作为均衡过程1300的一部分,至少一个重定时器1306还基于高数据速率在全数据路径302中操纵数据包的第一序列1202。所操纵的数据用于确定至少一个重定时器1306的多个滤波系数(例如,FIR滤波器1316和1318的FIR系数)。至少一个重定时器1306的多个滤波系数被更新,用于在高数据速率设置下传送数据包。也就是说,一旦至少一个重定时器1306的FIR滤波器1316和1318基于所操纵的数据包的第一序列被更新,跟随数据包的第一序列1202的数据包的第二序列1208就基于更新的滤波系数在高数据速率设置下经由位级数据路径304被传输。在一些实现中,更新多个滤波系数包括从多个系数预置选择系数。
在一些实现中,位级数据路径304包括被配置为经由数据链路120顺序地传送数据包的序列而不改变在数据包的序列中的任何数据位的串行先进先出(SFIFO)电路。在一些实现中,全数据路径302包括下列项的子集:一个或更多个串联至并联转换器502、解扰器504、解码器506、数据操纵器508、编码器510、加扰器512、去偏斜器514和并联至串联转换器516。全数据路径302被配置成操纵在数据包的序列中的一个或更多个数据位,从而便于多个滤波系数的确定。上面参考图5讨论了全数据路径302的更多细节。
在一些实现中,作为均衡过程1300的一部分,嵌入式时钟信号例如使用时钟数据恢复电路306被恢复并被提供给位级数据路径304和全数据路径302,用于使经由位级数据路径304对数据包的第一序列的传输(例如传送)同步并基于经由全数据路径302传输的所操纵的数据包的第一序列来更新系数。
在一些实现中,基于在第一数据方向140(例如,从第一设备102到第二设备104)上传送的所操纵的数据包的第一序列1202来确定并更新FIR滤波器1316的滤波系数。响应于更新FIR滤波器1316的滤波系数,第一设备102的FIR驱动器1314的滤波系数也被更新,使得FIR滤波器1316和FIR驱动器1314具有相同的滤波系数(例如,第一滤波系数)。因此,第一滤波系数1308基于所操纵的数据包的第一序列1202被确定,并且第一滤波系数1308应用于重定时器1306的FIR滤波器1316和第二设备104的FIR驱动器1314。
同样,在一些实现中,基于在第二数据方向150(例如,从第二设备104到第一设备102)上传送的所操纵的数据包的第一序列1202来确定并更新FIR滤波器1318的滤波系数。响应于更新FIR滤波器1318的滤波系数,第一设备102的FIR驱动器1312的滤波系数也被更新,使得FIR滤波器1318和FIR驱动器1312具有相同的滤波系数(例如,第二滤波系数)。也就是说,第二滤波系数1310基于所操纵的数据包的第一序列来确定,并且第二滤波系数1310应用于重定时器1306的FIR滤波器1318和第一设备102的FIR驱动器1312。在一些实现中,第二滤波系数1310不同于第一滤波系数1308(例如,相比于第一滤波系数1308具有不同值)。在一些实现中,第二滤波系数1310等于第一滤波系数1308。
在一些实现中,当数据包的第二序列1208经由位级路径304被传送时,数据链路120的数据速率设置被改变。例如,数据速率可以从第一高数据速率设置增加到第二高数据速率设置(例如,从16Gbps到32Gbps),同时数据包的第二序列经由位级数据路径304被传送。在这样的情况下,至少一个重定时器1306经由全数据路径302来传输和操纵(例如改变)数据包的第二序列1208,并根据第二高数据速率设置(例如,基于所操纵的数据包的第二序列)来更新至少一个重定时器1306的多个滤波系数(例如,在FIR滤波器1316和/或1318处)。
在一些实现中,最佳数据传输(例如,数据传输和数据恢复)要求滤波系数1308和1310基于所操纵的数据被确定,以及FIR驱动器1312-1318的滤波系数相应地被更新。在一些实现中,在数据链路120中,在第一设备102和重定时器1306之间的第一轨迹损失(traceloss)类似于在第二设备104和在重定时器1306之间的第二轨迹损失。滤波系数1308和1310被配置为在不损害数据质量的情况下实现准确的数据传输和恢复。换句话说,当在第一和第二轨迹损失之间的差异在预定义损失差异阈值内时,数据链路120利用基于全数据路径302确定的滤波系数1308和1310以经由位级数据路径304来准确且可靠地传送数据。
在一些实现中,在至少一个重定时器1306的输出端处监测数据包的第一序列的误比特率,以便确定误比特率是否满足均衡条件(例如,在可接受的阈值内)。根据误比特率不满足均衡条件的确定,开始均衡过程以经由全数据路径302来操纵数据包的第一序列1202、第二序列1208或第三序列1210,以及根据数据包的第一序列1202、第二序列1208或第三序列1210的操纵(例如,基于所操纵的数据包的第一序列)来更新至少一个重定时器1306的多个滤波系数。
总之,参考图13,数据链路120执行均衡过程1300,同时数据包经由位级数据路径304被传送。在均衡过程1300期间,全数据路径302用于操纵在设备(例如,第一设备102或第二设备104)和数据链路120的至少一个重定时器1306之间的数据包,而不干扰经由位级数据路径304在第一设备102和第二设备104之间的数据传送。
图14A-14C示出了根据一些实现的在数据链路120上传送数据的方法1400的流程图。在包括至少一个重定时器(例如,重定时器220或1306)的数据链路120处执行(1402)方法1400。在一些实现中,位级数据路径304还包括被配置为经由数据链路120顺序地传送数据包的序列1202、1208或1212而不改变在数据包的第一序列1202中的任何数据位的串行先进先出(SFIFO)电路。在一些实现中,全数据路径302还包括一个或更多个串联至并联转换器502、解扰器504、解码器506、数据操纵器508、编码器510、加扰器512、去偏斜器514和并联至串联转换器516,并且被配置为操纵在数据包的序列1202、1208或1212中的一个或更多个数据位,从而在均衡过程1300期间至少便于在第一电子设备102和第二电子设备104之间的均衡协商。利用(例如经由)全数据路径302来发起(1404)数据链路120(例如,在第一设备102和第二设备104之间)。数据链路120经由重定时器(例如,重定时器1306)的全数据路径302来传送(1406)数据包的第一序列1202。当传送数据包的第一序列1202时,数据链路120(例如,数据链路120的重定时器1306)在全数据路径302中操纵(1408)数据包的第一序列1202以建立数据链路120的连接。响应于建立数据链路120的连接,数据链路120(例如,数据链路120的重定时器1306)从全数据路径302切换(1410)到位级数据路径304。在一些实现中,数据链路120(例如,包括数据链路120的重定时器1306)在电空闲状态期间从全数据路径302切换(1412)到位级数据路径304。
在一些实现中,数据包的第一序列1202包括一个或更多个重定时器存在位,以及操纵数据包的第一序列包括调整(1409)在至少一个重定时器中的每一个的全数据路径302中的一个或更多个重定时器位,并且基于一个或更多个重定时器存在位来确定在至少一个重定时器中的重定时器的数量。
在一些实现中,方法1400还包括在切换到位级数据路径304之后将数据链路120的数据速率从低数据速率设置增加(1414)到高数据速率设置。数据链路120可选地在均衡过程1300中增加(1416)数据链路120的数据速率。此外,在一些实现中,方法1400还包括根据高数据速率设置经由位级数据路径304传送(1418)跟随数据包的第一序列1202的数据包的第二序列1208。
此外,在一些实现中,数据链路120的数据速率通过下列操作而增加:当在位级数据路径304中传送数据包的第一序列1202时,基于高数据速率设置在全数据路径302中操纵(1420)数据包的第一序列。特别地,基于所操纵的数据包的第一序列来确定(1422)至少一个重定时器(例如重定时器1306)的多个滤波系数,并且根据高数据速率设置来更新(1424)至少一个重定时器(例如重定时器1306)的多个滤波系数用于传送数据包的第二序列1208。在一些实现中,更新多个滤波系数包括选择(1426)多个系数预置中的一个。在一些实现中,数据链路120耦合在第一电子设备(例如第一设备102)和第二电子设备(例如第二设备104)之间,并且方法1400还包括将多个滤波系数应用(1428)于第一和第二电子设备中的至少一个。
此外,在一些实施例中,从数据包的第一序列1202获得或者从数据链路120的本地存储器提取与高数据速率设置相关联的预定义初始滤波系数。当基于高数据速率设置在全数据路径302中操纵数据包的第一序列时,数据链路120应用预定义初始滤波系数,直到至少一个重定时器的多个滤波系数被确定和更新为止。
在一些实现中,高数据速率设置包括第一高数据速率设置,并且方法1400还包括当经由位级数据路径304传送数据包的第二序列1208时将数据链路120的数据速率从第一高数据速率设置增加(1430)到第二高数据速率设置。特别地,在全数据路径302中操纵(1432)数据包的第二序列,并且根据第二高数据速率设置来更新(1434)至少一个重定时器的多个滤波系数。
在一些情况下,方法1400包括在至少一个重定时器(例如重定时器1306)的输出端处监测(1436),并确定(1438)误比特率是否满足均衡条件。根据误比特率不满足均衡条件的确定,方法1400包括开始(1440)均衡过程1300以在全数据路径302中操纵数据包的第一序列1202并根据数据包的第一序列1202的操纵来更新至少一个重定时器1306的多个滤波系数。
在一些实现中,方法1400还包括恢复(1442)嵌入式时钟信号,并将嵌入式时钟信号提供(1444)到位级数据路径304和全数据路径302二者,用于使数据包的第一序列1202同步。
图15A和图15B示出了根据一些实现的在数据链路120上传送数据的另一种方法1500的流程图。方法1500在包括重定时器1306的数据链路120处被执行,重定时器1306具有(1502)第一数据方向140和与第一数据方向140相反的第二数据方向150。第一数据方向140和第二数据方向150中的每一个包括(1504)相应的全数据路径302A或302B、相应的位级数据路径304A或304B以及耦合到相应的全数据路径302和位级数据路径304的相应的有限脉冲响应(FIR)滤波器1318或1316。
方法1500包括使用在数据链路120中的第一数据方向140的位级数据路径304A在数据链路120上传送(1506)数据包的序列。方法1500还包括当使用第一数据方向140的位级数据路径304A传送数据包的序列时,使用第一数据方向140的全数据路径302来处理(1508)数据包的序列,并基于处理后的数据包的序列来更新(1510)第二数据方向150的FIR滤波器1316的多个滤波系数。在一些实现中,数据链路120耦合(1512)在第一电子设备102和第二电子设备104之间。第一电子设备102和第二电子设备104在第一数据方向140上分别在上游和在下游耦合到重定时器1306。方法1500还包括将第二数据方向150的重定时器1306的FIR滤波器1316的多个滤波系数应用(1514)于第二电子设备104的FIR驱动器1314,第二电子设备104在第二数据方向150上在上游耦合到重定时器。
在一些实现中,数据包的序列包括(1516)数据包的第一序列,并且多个滤波系数包括多个第一滤波系数。方法1500还包括使用第二数据方向150的全数据路径302B来处理(1518)数据包的第二序列,并基于处理后的数据包的第二序列来更新(1520)第一数据方向140的FIR滤波器1318的多个第二滤波系数。此外,在一些实现中,方法1500还包括将第一数据方向140的FIR滤波器1318的多个第二滤波系数应用(1522)于第一电子设备102的FIR驱动器1312,第一电子设备102在第一数据方向上在上游耦合到重定时器1306。
在一些实现中,方法1500还包括在数据链路120上传送数据包的序列之前,在低数据速率设置下发起(1524)数据链路120并在均衡过程1300期间将数据链路120的数据速率从低数据速率设置增加(1526)到高数据速率设置。在均衡过程1300期间更新多个滤波系数。此外,在一些实施例中,从数据包的序列1206获得或者从数据链路120的本地存储器提取与高数据速率设置相关联的预定义初始滤波系数。当处理数据包的序列并更新针对高数据速率设置的多个第二滤波系数时,数据链路120将预定义初始滤波系数应用于它的FIR滤波器1316和1318,直到第一数据方向的FIR滤波器1318的多个第二滤波系数被确定和更新为止。
在一些实现中,方法1500还包括恢复(1528)嵌入式时钟信号,并将嵌入式时钟信号提供(1530)到位级数据路径304和全数据路径302二者,用于使数据包的序列同步。
应当理解,已经描述的在图10、图14A-14C和图15A-15B中每一个中的操作的特定顺序仅仅是示例性的,并不意欲指示所描述的顺序是操作可以被执行的唯一顺序。本领域中的普通技术人员之一将认识到如本文所述的经由数据链路120传送数据的各种方式。
还将理解,尽管术语“第一”、“第二”等在一些实例中在本文用于描述各种要素,但这些要素不应被这些术语限制。这些术语只是用来将一个要素与另一个区分开。例如,第一电子设备可以被称为第二电子设备,以及类似地,第二电子设备可以被称为第一电子设备,而不偏离各种所描述实现的范围。第一电子设备和第二电子设备都是电子设备,但是它们不是同一电子设备。
在本文的各种所描述实现的描述中使用的术语仅为了描述特定实现的目的,且并不意欲限制。如在各种所描述的实现和所附的权利要求的描述中所使用的,单数形式“一(a)”、“一(an)”和“该(the)”意欲也包括复数形式,除非上下文另有明确指示。还要理解的是,如在本文使用的术语“和/或(and/or)”指相关联的所列出的项目中的一个或更多个的任何和所有可能的组合并包括这些组合。将进一步理解,术语“包括(includes)”、“包括(including)”、“包含(comprise)”和/或“包含(comprising)”当在本说明书中使用时指定所陈述的特征、整体、步骤、操作、要素和/或部件的存在,但不排除一个或更多个其它特征、整体、步骤、操作、要素、部件和/或其组的存在或添加。
如在本文所使用的,根据上下文,术语“如果”可选地被解释为意指“当......时”或“在......时”或“响应于确定......”或“响应于检测到......”或“根据......的确定”。类似地,根据上下文,短语“如果确定......”或“如果检测到[所陈述的条件或事件]”可选地被解释为意指“在确定......时”或“响应于确定......”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”或“根据[所陈述的条件或事件]被检测到的确定”。
尽管各种附图以特定顺序示出了多个逻辑阶段,但是不依赖于顺序的阶段可以被重新排序,并且其他阶段可以被组合或分解。虽然一些重新排序或其他分组特别被提到,但是其它重新排序或分组对本领域中的普通技术人员将明显,因此在本文呈现的重新排序或分组不是备选方案的详尽列表。此外,应当认识到,阶段可以在硬件、固件、软件或其任何组合中实现。
为了解释的目的,参考特定实现描述了前述描述。然而,以上的说明性讨论并不旨在穷举或将权利要求的范围限制在所公开的精确形式。鉴于上面的教导,许多修改和变形是可能的。实现被选择以便最好地解释权利要求的根本原理及其实际应用,并由此使得本领域的技术人员能够采用适用于预期的特定用途的各种修改来利用实现。
条款1.一种数据链路,包括:
重定时器,其具有第一数据方向和与第一数据方向相反的第二数据方向,重定时器还包括:
位级数据路径,其被配置为沿着数据链路中的第一数据方向在数据链路上传送数据包的序列;
全数据路径,其被配置为在使用第一数据方向的位级数据路径传送数据包的序列时处理从第一数据方向接收的数据包的序列;以及
路径控制器,其被配置为基于处理后的数据包的序列来更新第二数据方向的FIR滤波器的多个滤波系数。
条款2.条款1的数据链路,其中,重定时器包括第一重定时器,以及数据链路的方法包括:使用数据链路中的第一数据方向的位级数据路径在数据链路上传送数据包的序列,其中:
数据链路包括具有第一数据方向和与第一数据方向相反的第二数据方向的重定时器,以及
第一和第二数据方向中的每一个包括相应的全数据路径、相应的位级数据路径以及耦合到相应的全数据和位级数据路径的相应的有限脉冲响应(FIR)滤波器;以及
当使用第一数据方向的位级数据路径传送数据包的序列时:
使用第一数据方向的全数据路径来处理数据包的序列;以及
基于处理后的数据包的序列来更新第二数据方向的FIR滤波器的多个滤波系数。
条款4.条款3的方法,其中,数据链路耦合在第一电子设备和第二电子设备之间,以及第一和第二电子设备在第一数据方向上在上游和在下游耦合到重定时器,该方法还包括:
将第二数据方向的FIR滤波器的多个滤波系数应用于第二电子设备的FIR驱动器,第二电子设备在第二数据方向上在上游耦合到重定时器。
条款5.条款3或4的方法,其中,数据包的序列包括数据包的第一序列,以及多个滤波系数包括多个第一滤波系数,该方法还包括:
当使用第二数据方向的位级数据路径传送数据包的第二序列时:
使用第二数据方向的全数据路径来处理数据包的第二序列;以及
基于处理后的数据包的第二序列来更新第一数据方向的FIR滤波器的多个第二滤波系数。
条款6.条款5的方法,其中,数据链路耦合在第一电子设备和第二电子设备之间,以及第一和第二电子设备在第一数据方向上在上游和在下游耦合到重定时器,还包括:
将第一数据方向的FIR滤波器的多个第二滤波系数应用于第一电子设备的FIR驱动器,第一电子设备在第一数据方向上在上游耦合到重定时器。
条款7.条款3-6中的任一项的方法,还包括:
在低数据速率设置下发起数据链路;
在均衡过程期间将数据链路的数据速率从低数据速率设置增加到高数据速率设置,其中多个滤波系数在均衡过程期间被更新。
条款8.条款7的方法,其中,高数据速率设置高于2.5Gbps,以及高数据速率设置选自包括5Gbps、8Gbps、16Gbps和32Gbps中的一个或更多个的数据速率设置的层级。
条款9.条款3-8中的任一项的方法,其中,更新多个滤波系数包括选择多个系数预置中的一个。
条款10.条款3-9中的任一项的方法,其中:
位级数据路径还包括被配置为经由数据链路顺序地传送数据包的序列而不改变在数据包的序列中的任何数据位的串行先进先出(SFIFO)电路;以及
全数据路径还包括下列项的子集:一个或更多个串联至并联转换器、解扰器、解码器、数据操纵器、编码器、加扰器、去偏斜器和并联至串联转换器,以及全数据路径被配置为操纵在数据包的序列中的一个或更多个数据位,从而便于多个滤波系数的确定。
条款11.条款3-10中的任一项的方法,其中:
位级数据路径具有第一数据时延;以及
全数据路径具有第二数据时延,第二数据时延大于第一数据时延。
条款12.条款3-11中的任一项的方法,其中,多个滤波系数包括多个第一滤波系数,还包括:
在重定时器的输出端处监测数据包的序列的误比特率;以及
确定误比特率是否满足均衡条件;
其中,根据误比特率不满足均衡条件的确定来更新多个滤波系数。
条款13.条款3-12中的任一项的方法,还包括:
恢复嵌入式时钟信号;以及
向位级数据路径和全数据路径都提供嵌入式时钟信号,用于使数据包的序列同步。
Claims (20)
1.一种数据通信方法,包括:
在包括具有全数据路径和与所述全数据路径并联耦合的位级数据路径的至少一个重定时器的数据链路处:
以所述全数据路径发起所述数据链路;
根据低数据速率设置经由所述全数据路径传送数据包的第一序列;
在传送所述数据包的第一序列时,在所述全数据路径中操纵所述数据包的第一序列以建立所述数据链路的连接;以及
响应于建立所述数据链路的连接,从所述全数据路径切换到所述位级数据路径。
2.根据权利要求1所述的方法,其中,所述数据包的第一序列包括一个或更多个重定时器存在位,以及操纵所述数据包的第一序列还包括:
调整在所述至少一个重定时器中的每一个重定时器的所述全数据路径中的所述一个或更多个重定时器存在位;以及
基于所述一个或更多个重定时器存在位来确定在所述至少一个重定时器中的重定时器的数量。
3.根据权利要求1所述的方法,还包括:
在切换到所述位级数据路径之后,将所述数据链路的数据速率从所述低数据速率设置增加到高数据速率设置;以及
根据所述高数据速率设置经由所述位级数据路径来传送跟随所述数据包的第一序列的数据包的第二序列。
4.根据权利要求3所述的方法,其中,所述数据链路在电空闲状态期间从所述全数据路径切换到所述位级数据路径,并且在均衡过程中增加所述数据链路的数据速率。
5.根据权利要求3所述的方法,其中,所述低数据速率设置定义2.5Gbps的数据速率,以及所述高数据速率设置选自高于2.5Gbps的数据速率设置的层级,并且包括下面的预定义数据速率中的一个或更多个:5Gbps、8Gbps、16Gbps和32Gbps。
6.根据权利要求3所述的方法,其中,将所述数据链路的数据速率从所述低数据速率设置增加到所述高数据速率设置还包括:
当在所述位级数据路径中传送所述数据包的第一序列时,基于所述高数据速率设置在所述全数据路径中操纵所述数据包的第一序列;
基于所操纵的数据包的第一序列来确定所述至少一个重定时器的多个滤波系数;以及
根据所述高数据速率设置来更新所述至少一个重定时器的所述多个滤波系数用于传送所述数据包的第二序列。
7.根据权利要求6所述的方法,其中,所述数据链路耦合在第一电子设备和第二电子设备之间,所述方法还包括:
将所述多个滤波系数应用于所述第一电子设备和第二电子设备中的至少一个。
8.根据权利要求6所述的方法,其中,所述高数据速率设置包括第一高数据速率设置,所述方法还包括:
当经由所述位级数据路径传送所述数据包的第二序列时,将所述数据链路的数据速率从所述第一高数据速率设置增加到第二高数据速率设置,包括:
在所述全数据路径中操纵所述数据包的第二序列;以及
根据所述第二高数据速率设置来更新所述至少一个重定时器的所述多个滤波系数。
9.根据权利要求6所述的方法,其中,更新所述多个滤波系数包括选择多个系数预置中的一个。
10.根据权利要求1所述的方法,还包括:
在所述至少一个重定时器的输出端处监测所述数据包的第一序列的误比特率;以及
确定所述误比特率是否满足均衡条件;以及
根据所述误比特率不满足所述均衡条件的确定,开始均衡过程以在所述全数据路径中操纵所述数据包的第一序列并根据所述数据包的第一序列的操纵来更新所述至少一个重定时器的多个滤波系数。
11.根据权利要求1所述的方法,其中:
所述位级数据路径还包括被配置为经由所述数据链路顺序地传送所述数据包的序列而不改变在所述数据包的序列中的任何数据位的串行先进先出(SFIFO)电路;以及
所述全数据路径还包括下列项的子集:一个或更多个串联至并联转换器、解扰器、解码器、数据操纵器、编码器、加扰器、去偏斜器和并联至串联转换器,以及所述全数据路径被配置为操纵在所述数据包的第一序列中的一个或更多个数据位,从而便于多个滤波系数的确定。
12.根据权利要求1所述的方法,其中:
所述数据链路具有下行数据方向和上行数据方向;以及
所述至少一个重定时器的所述位级数据路径和所述全数据路径对应于所述下行数据方向和上行数据方向之一。
13.根据权利要求1所述的方法,其中:
所述位级数据路径具有第一数据时延;以及
所述全数据路径具有第二数据时延,所述第二数据时延大于所述第一数据时延。
14.根据权利要求1所述的方法,还包括:
恢复嵌入式时钟信号;以及
向所述位级数据路径和所述全数据路径都提供所述嵌入式时钟信号,用于使所述数据包的第一序列同步。
15.一种数据链路,包括:
至少一个重定时器,所述至少一个重定时器具有全数据路径、与所述全数据路径并联耦合的位级数据路径以及路径控制器,其中所述路径控制器被配置为控制所述至少一个重定时器以:
以所述全数据路径发起所述数据链路;
根据低数据速率设置经由所述全数据路径传送数据包的第一序列;
在传送所述数据包的第一序列时,在所述全数据路径中操纵所述数据包的第一序列以建立所述数据链路的连接;以及
响应于建立所述数据链路的连接,从所述全数据路径切换到所述位级数据路径。
16.根据权利要求15所述的数据链路,其中,所述至少一个重定时器包括第一重定时器,以及所述数据链路还包括在所述数据链路上与所述第一重定时器串联耦合的第二重定时器。
17.根据权利要求15所述的数据链路,其中,所述数据包的第一序列包括一个或更多个重定时器存在位,以及操纵所述数据包的第一序列还包括:
调整在所述至少一个重定时器的所述全数据路径中的一个或更多个重定时器存在位;
其中,所述数据链路被配置成基于所述一个或更多个重定时器存在位来确定在所述数据链路中的重定时器的数量。
18.根据权利要求15所述的数据链路,其中,所述路径控制器被配置为控制所述至少一个重定时器以:
在切换到所述位级数据路径之后,将所述数据链路的数据速率从所述低数据速率设置增加到高数据速率设置;以及
根据所述高数据速率设置经由所述位级数据路径来传送跟随所述数据包的第一序列的数据包的第二序列。
19.一种数据通信方法,包括:
使用在数据链路中的第一数据方向的位级数据路径在所述数据链路上传送数据包的序列,其中:
所述数据链路包括具有所述第一数据方向和与所述第一数据方向相反的第二数据方向的重定时器,以及
所述第一数据方向和第二数据方向中的每一个包括相应的全数据路径、相应的位级数据路径以及耦合到所述相应的全数据路径和位级数据路径的相应的有限脉冲响应(FIR)滤波器;以及
当使用所述第一数据方向的所述位级数据路径传送所述数据包的序列时:
使用所述第一数据方向的所述全数据路径来处理所述数据包的序列;以及
基于处理后的数据包的序列来更新所述第二数据方向的FIR滤波器的多个滤波系数。
20.根据权利要求19所述的方法,其中,所述数据链路耦合在第一电子设备和第二电子设备之间,以及所述第一电子设备和第二电子设备在所述第一数据方向上在上游和在下游耦合到所述重定时器,所述方法还包括:
将所述第二数据方向的FIR滤波器的多个滤波系数应用于所述第二电子设备的FIR驱动器,所述第二电子设备在所述第二数据方向上在上游耦合到所述重定时器。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/071,655 | 2020-10-15 | ||
US17/071,655 US10979258B1 (en) | 2020-10-15 | 2020-10-15 | Seamless bit-level low-latency retimer for data links |
US17/191,456 US11159353B1 (en) | 2020-10-15 | 2021-03-03 | Seamless bit-level low-latency retimer for data links |
US17/191,456 | 2021-03-03 | ||
US17/331,521 US11683204B2 (en) | 2020-10-15 | 2021-05-26 | High speed data links with low-latency retimer |
US17/331,521 | 2021-05-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114372015A CN114372015A (zh) | 2022-04-19 |
CN114372015B true CN114372015B (zh) | 2023-12-08 |
Family
ID=81138397
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111202701.XA Active CN114372015B (zh) | 2020-10-15 | 2021-10-15 | 具有低时延重定时器的高速数据链路 |
CN202111202180.8A Active CN114430399B (zh) | 2020-10-15 | 2021-10-15 | 用于数据链路的无缝位级低时延重定时器 |
CN202111202708.1A Active CN114430400B (zh) | 2020-10-15 | 2021-10-15 | 用于数据链路的无缝位级低时延重定时器 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111202180.8A Active CN114430399B (zh) | 2020-10-15 | 2021-10-15 | 用于数据链路的无缝位级低时延重定时器 |
CN202111202708.1A Active CN114430400B (zh) | 2020-10-15 | 2021-10-15 | 用于数据链路的无缝位级低时延重定时器 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11683204B2 (zh) |
CN (3) | CN114372015B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111263408B (zh) * | 2018-12-03 | 2021-12-14 | 华为技术有限公司 | 速率协商方法及其装置 |
CN115296965B (zh) * | 2022-09-28 | 2022-12-23 | 成都电科星拓科技有限公司 | 降低延时的Retimer均衡配置方法、系统及装置 |
CN115687197B (zh) * | 2023-01-03 | 2023-03-28 | 成都登临科技有限公司 | 数据接收模块、数据接收方法、电路、芯片及相关设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200904017A (en) * | 2007-03-23 | 2009-01-16 | Newport Media Inc | A high linearity, low noise figure, front end circuit with fine step gain control |
CN109154927A (zh) * | 2016-06-27 | 2019-01-04 | 英特尔公司 | 低延时多协议重定时器 |
CN110659239A (zh) * | 2018-06-29 | 2020-01-07 | 英特尔公司 | 在多通路链路中动态地协商不对称链路宽度 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1545044B1 (en) * | 2003-12-19 | 2011-03-30 | Broadcom Corporation | Decision feedback equalizer and clock and data recovery circuit for high-speed applications |
JP5549377B2 (ja) * | 2010-05-26 | 2014-07-16 | 富士通株式会社 | 通信システム、通信方法および通信装置 |
EP2849345B1 (en) * | 2013-09-12 | 2020-11-04 | Socionext Inc. | Circuitry and methods for use in mixed-signal circuitry |
US9858234B2 (en) * | 2015-07-17 | 2018-01-02 | Parade Technologies, Ltd. | System transparent retimer |
US10095653B2 (en) * | 2016-04-02 | 2018-10-09 | Intel Corporation | Apparatuses, systems, and methods for accurately measuring packet propagation delays through USB retimers |
US10860449B2 (en) * | 2017-03-31 | 2020-12-08 | Intel Corporation | Adjustable retimer buffer |
-
2021
- 2021-05-26 US US17/331,521 patent/US11683204B2/en active Active
- 2021-10-15 CN CN202111202701.XA patent/CN114372015B/zh active Active
- 2021-10-15 CN CN202111202180.8A patent/CN114430399B/zh active Active
- 2021-10-15 CN CN202111202708.1A patent/CN114430400B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200904017A (en) * | 2007-03-23 | 2009-01-16 | Newport Media Inc | A high linearity, low noise figure, front end circuit with fine step gain control |
CN109154927A (zh) * | 2016-06-27 | 2019-01-04 | 英特尔公司 | 低延时多协议重定时器 |
CN110659239A (zh) * | 2018-06-29 | 2020-01-07 | 英特尔公司 | 在多通路链路中动态地协商不对称链路宽度 |
Also Published As
Publication number | Publication date |
---|---|
CN114430400A (zh) | 2022-05-03 |
CN114372015A (zh) | 2022-04-19 |
CN114430400B (zh) | 2023-06-02 |
CN114430399A (zh) | 2022-05-03 |
US20220123972A1 (en) | 2022-04-21 |
US11683204B2 (en) | 2023-06-20 |
CN114430399B (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114372015B (zh) | 具有低时延重定时器的高速数据链路 | |
US11159353B1 (en) | Seamless bit-level low-latency retimer for data links | |
US11032111B2 (en) | Serdes pre-equalizer having adaptable preset coefficient registers | |
CN108737024B (zh) | 多通道通信方法和通信收发器 | |
US8446942B2 (en) | Waveform equalization circuit and waveform equalization method | |
CN109075992B (zh) | 以太网链路扩展方法和设备 | |
US8743945B2 (en) | Shift register based downsampled floating tap decision feedback equalization | |
US8599913B1 (en) | Data regeneration apparatus and method for PCI express | |
US9071479B2 (en) | High-speed parallel decision feedback equalizer | |
US10498523B1 (en) | Multipath clock and data recovery | |
US7447278B2 (en) | Apparatus for transmitting and receiving data | |
US8458546B2 (en) | Oversampled clock and data recovery with extended rate acquisition | |
CN112187683B (zh) | 用于高速串行链路的并行混合信号均衡的设备及方法 | |
US11128497B1 (en) | Decision feedback equalizer with fractional tap unrolling | |
CN112241384B (zh) | 一种通用的高速串行差分信号分路电路及方法 | |
US7668238B1 (en) | Method and apparatus for a high speed decision feedback equalizer | |
CN102523436B (zh) | 发送终端、接收终端、多路视频光纤传输系统及传输方法 | |
US11736266B2 (en) | Phase interpolator circuitry for a bit-level mode retimer | |
US20130195154A1 (en) | Transmitter Adaptation Loop Using Adjustable Gain and Convergence Detection | |
US11005567B2 (en) | Efficient multi-mode DFE | |
CN115473772B (zh) | 用于链路速度协商期间的重定时器训练的装置和方法 | |
CN114584256A (zh) | 链路速度协商期间的均衡器训练 | |
US20230254188A1 (en) | Transitioning Between Signal Constellations | |
CN114553642B (zh) | 一种快速建立SerDes链路连接的方法和设备 | |
US12040804B2 (en) | Methods and systems for controlling frequency variation for a PLL reference clock |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |