CN102270011A - 校准多个数据信道的数据传输时序的时序校准电路及时序校准方法 - Google Patents
校准多个数据信道的数据传输时序的时序校准电路及时序校准方法 Download PDFInfo
- Publication number
- CN102270011A CN102270011A CN2010102004761A CN201010200476A CN102270011A CN 102270011 A CN102270011 A CN 102270011A CN 2010102004761 A CN2010102004761 A CN 2010102004761A CN 201010200476 A CN201010200476 A CN 201010200476A CN 102270011 A CN102270011 A CN 102270011A
- Authority
- CN
- China
- Prior art keywords
- symbol
- data channel
- primary sign
- control signal
- adjustment
- 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.)
- Pending
Links
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
时序校准电路包含多个缓冲器、多个延迟选择器、多个调整符号产生器及控制单元。缓冲器接收相对应数据信道上的有序符号集合。延迟选择器依据延迟控制信号来延迟相对应缓冲器的有序符号集合的输出。调整符号产生器依据调整控制信号来输出调整符号或输出接收自相对应延迟选择器的输出。当控制单元检测到特定延迟选择器的起始符号而尚有其它延迟选择器的起始符号未检测到时,会产生延迟控制信号至特定延迟选择器、产生调整控制信号来控制对应特定延迟选择器的特定调整符号产生器输出调整符号,直到检测到所有延迟选择器的起始符号。
Description
【技术领域】
本发明提供一种控制数据传输的电路与方法,尤指一种校准(align)多个数据信道的数据传输时序的电路及方法。
【背景技术】
现今的计算机系统中常常使用一点对点链路(例如快捷外设互联标准(Peripheral Component Interconnect Express,PCI Express)定义的点对点链路)来作为其与其它外围装置之间的双向沟通,如业界所现有,PCIExpress总线可利用更高的运作时脉以及应用更多的数据信道(lane)来提升其数据传输效能。请参阅图1,图1为现有PCI Express总线115使用多个数据信道来传递数据的示意图。假设一输出装置100欲将一数据流110传输至一接收装置120,由于PCI Express总线115可提供四个数据信道Lane0、Lane1、Lane2、Lane3,因此当输出装置100输出数据流110时,数据流110中所包含的字节D0-D7便会分别通过一起始符号(COM symbol)经由数据信道Lane0、Lane1、Lane2、Lane3各自传递,举例来说,一起始符号以及两字节D0、D4系由数据信道Lane0输出至接收装置120,一起始符号以及两字节D1、D5系由数据信道Lane1输出至接收装置120,一起始符号以及两字节D2、D6系由数据信道Lane2输出至接收装置120,以及一起始符号以及两字节D3、D7系由数据信道Lane3输出至接收装置120,最后,接收装置120便可经由数据信道Lane0、Lane1、Lane2、Lane3来接收到所要的数据流110。
一般而言,输出装置100会于同一时间分别输出有序符号集合至数据信道Lane0、Lane1、Lane2、Lane3,然而,数据信道Lane0、Lane1、Lane2、Lane3可能会分别对应不同的线路布局而具有不同的长度与阻抗,亦即于数据传输的过程中,数据信道Lane0、Lane1、Lane2、Lane3会分别造成传递数据具有不同程度的延迟,因此,数据信道Lane0、Lane1、Lane2、Lane3的数据传输时序便会产生偏移(skew)的现象,换句话说,即便输出装置100同步输出起始符号至数据信道Lane0、Lane1、Lane2、Lane3,数据信道Lane0、Lane1、Lane2、Lane3上的起始符号最后并无法于同一时间点到达接收装置120,因此,由于数据传输时序的偏移,接收装置120也并无法于同一时间点处理于数据信道Lane0、Lane1、Lane2、Lane3上传递的字节D0、D1、D2、D3。
请参阅图2,图2为现有PCI Express总线215使用多个数据信道来传递数据的另一示意图。由于输出装置200与接收装置220的运作时脉不同,因此若输出装置200的运作时脉高于接收装置220的运作时脉,则输出装置200输出数据流210的传输率便高于接收装置220撷取数据流210的接收率,因此便会造成数据上溢(overflow)的情况;相反地,若输出装置200的运作时脉低于接收装置220的运作时脉,则输出装置200输出数据流210的传输率便低于接收装置220撷取数据流210的接收率,因此便会造成数据下溢(underflow)的情况,所以为了解决输出装置200与接收装置220的不同运作时脉所带来的问题,接收装置220便设置有多个弹性缓冲器(elasticbuffer)EB0、EB1、EB2、EB3来调节输出装置200经由数据信道Lane0、Lane1、Lane2、Lane3所传递的数据。依据PCI express的规范,输出装置200会输出有序符号集合(ordered set)以供弹性缓冲器来平衡输出装置200与接收装置220的不同运作时脉。举例来说,输出装置200所输出的每一有序符号集合包含有一起始符号以及三个调整符号(SKP symbol),所以当接收装置220上一弹性缓冲器接收到多个有序符号集合时,若输出装置200的运作时脉高于接收装置220的运作时脉,则弹性缓冲器可经由减少有序符号集合中的调整符号来达到降低输出装置200的数据传输率的目的,所以便可避免上述数据上溢的问题。另一方面,若输出装置200的运作时脉低于接收装置220的运作时脉,则弹性缓冲器可经由增加有序符号集合中的调整符号来达到提升输出装置200的数据传输率的目的,所以便可避免上述数据下溢的问题。
然而,如此的作法也造成每个数据信道上的调整符号数量不一致,因而使得数据信道Lane0、Lane1、Lane2、Lane3的数据传输时序产生偏移的现象,举例来说,如图2所示,经过弹性缓冲器EB0、EB1、EB2、EB3来增减有序符号集合中的调整符号后,数据信道Lane0上的有序符号集合包含有一个起始符号以及三个调整符号,数据信道Lane1上的的有序符号集合包含有一个起始符号以及四个调整符号,数据信道Lane2上的有序符号集合包含有一个起始符号以及三个调整符号,以及数据信道Lane3上的有序符号集合包含有一个起始符号以及二个调整符号,明显地,数据信道Lane0、Lane1、Lane2、Lane3的数据传输时序产生的偏移,换句话说,接收装置220并无法于同一时间点处理于数据信道Lane0、Lane1、Lane2、Lane3上传递的字节D0、D1、D2、D3。
为了使接收装置可正确地撷取出所要的数据流,因此,如何校准多个数据信道的数据传输时序便成为使用PCI Express总线的一项重要课题。
【发明内容】
本发明的目的的一在于提供一种校准多个数据信道的数据传输时序的时序校准电路及时序校准方法,以解决先前技术中所面临的数据传输时序偏移的问题。
本发明的实施例揭露了一种时序校准电路,用来校准多个数据信道的数据传输时序。该时序校准电路包含有:多个缓冲器,分别电连接于该多个数据信道,每一缓冲器系用来接收相对应数据信道上所传递的有序符号集合;多个延迟选择器,分别电连接于该多个缓冲器,每一延迟选择器系用来依据一延迟控制信号来延迟相对应缓冲器的有序符号集合的输出;多个调整符号产生器,分别电连接于该多个延迟选择器,每一调整符号产生器系用来依据一调整控制信号来输出调整符号或输出接收自相对应延迟选择器的输出;以及一控制单元,电连接于该多个延迟选择器以及该多个调整符号产生器,用来产生该延迟控制信号以及该调整控制信号,该控制单元包含有:一起始符号检测电路,电连接于该多个延迟选择器,用来检测该多个延迟选择器所输出的有序符号集合中的起始符号;以及一决定单元,电连接于该起始符号检测电路、该多个延迟选择器以及该多个调整符号产生器,当该起始符号检测电路检测到一特定延迟选择器所输出的有序符号集合中的起始符号而尚有其它延迟选择器所输出的有序符号集合中的起始符号未检测到时,该决定单元产生该延迟控制信号至该特定延迟选择器以及产生该调整控制信号来控制对应该特定延迟选择器的一特定调整符号产生器输出一调整符号,直到该起始符号检测电路皆检测到该多个延迟选择器所输出的有序符号集合中的起始符号。
本发明的实施例另揭露了一种校准多个数据信道的数据传输时序的时序校准方法。该时序校准方法包含有:接收每一数据信道上所传递的一有序符号集合;检测自该多个数据信道所接收的有序符号集合中的起始符号;以及当检测到一特定数据信道上的有序符号集合中的起始符号而尚有其它数据信道上的有序符号集合中的起始符号未检测到时,产生一延迟控制信号以延迟自该特定数据信道所接收的有序符号集合的输出以及产生一调整控制信号来控制对应该特定数据信道的一特定调整符号产生器输出一调整符号,直到皆检测到该多个数据信道上的有序符号集合中的起始符号。
本发明所提供的时序校准电路与时序校准方法不但可以校准数据信道的数据传输时序因为长短不一、温度的影响、电源供应器的电压改变或者是信道的品质不一样及/或弹性缓冲器补偿数据传输率所造成的偏移,而且可以通过更新累计值来节省缓冲器的使用空间。
【附图说明】
图1为现有PCI Express总线使用多个数据信道来传递数据的示意图。
图2为现有PCIExpress总线使用多个数据信道来传递数据的另一示意图。
图3为本发明时序校准电路的第一实施例的示意图。
图4为图3所示的时序校准电路校准数据信道的数据传输时序的操作示意图。
图5为本发明时序校准电路的第二实施例的示意图。
图6为图5所示的时序校准电路校准数据信道受弹性缓冲器影响后的数据传输时序的操作实施例的示意图。
图7为图5所示的时序校准电路校准数据信道受弹性缓冲器影响后的数据传输时序的另一操作实施例的示意图。
图8为本发明时序校准电路校准数据信道的数据传输时序的再另一操作实施例的示意图。
图9为本发明校准多个数据信道的数据传输时序的时序校准方法的一操作范例的流程图。
图10为本发明校准多个数据信道的数据传输时序的时序校准方法的另一操作范例的流程图。
图11为本发明校准多个数据信道的数据传输时序的时序校准方法的再另一操作范例的流程图。
【主要组件符号说明】
100、200 | 输出装置 |
110、210 | 数据流 |
120、220 | 接收装置 |
115、215 | 总线 |
EB0、EB1、EB2、EB3 | 弹性缓冲器 |
300 | 时序校准电路 |
311 | 第一缓冲器 |
312 | 第二缓冲器 |
321 | 第一延迟选择器 |
322 | 第二延迟选择器 |
331 | 第一调整符号产生器 |
332 | 第二调整符号产生器 |
340、540 | 控制单元 |
341、541 | 起始符号检测电路 |
342、542 | 决定单元 |
543 | 调整符号检测电路 |
【具体实施方式】
在本说明书以及后续的申请专利范围当中使用了某些词汇来指称特定的组件,而所属领域中具有通常知识者应可理解,硬件制造商可能会用不同的名词来称呼同一个组件,本说明书及后续的申请专利范围并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则,在通篇说明书及后续的请求项当中所提及的「包含有」系为一开放式的用语,故应解释成「包含有但不限定于」,此外,「耦接」一词在此系包含有任何直接及间接的电气连接手段,因此,若文中描述一第一装置耦接于一第二装置,则代表该第一装置可以直接电气连接于该第二装置,或通过其它装置或连接手段间接地电气连接至该第二装置。
请参考图3,图3为本发明时序校准电路的第一实施例的示意图。如图3所示,时序校准电路300系用来校准多个数据信道的数据传输时序,于本实施例中,时序校准电路300包含有(但不局限于)多个缓冲器(例如第一缓冲器311以及第二缓冲器312)、多个延迟选择器(例如第一延迟选择器321以及第二延迟选择器322)、多个调整符号产生器(例如第一调整符号产生器331以及第二调整符号产生器332)以及一控制单元340。请注意,熟知此项技艺人士应可轻易了解,缓冲器311及312可以由缓存器、内存或任何具有数据暂存功能的组件来加以实现,在本实施例中,缓冲器311及312系以先进先出(first in first out,FIFO)缓存器来实作,但此非本发明的限制条件,为简洁起见,FIFO缓存器的结构与运作原理于此不再进一步的描述。此外,在本实施例中,多个数据信道、多个缓冲器、多个延迟选择器以及多个调整符号产生器皆以两个为例,但此亦非本发明的限制条件。
如图3所示,第一缓冲器311以及第二缓冲器312,分别电连接于数据信道Lane0以及数据信道Lane1,以接收数据信道Lane0以及数据信道Lane1上所传递的有序符号集合。第一延迟选择器321以及第二延迟选择器322分别电连接于第一缓冲器311以及第二缓冲器312,分别用来依据一第一延迟控制信号DC1以及一第二延迟控制信号DC2来延迟相对应第一缓冲器311以及第二缓冲器312的有序符号集合的输出。第一调整符号产生器331以及第二调整符号产生器332分别电连接于第一延迟选择器321以及第二延迟选择器322,分别用来依据一第一调整控制信号AC1以及一第二调整控制信号AC 2来输出调整符号或输出接收自相对应延迟选择器(亦即第一缓冲器311或第二缓冲器312)的输出。另外,控制单元340电连接于第一延迟选择器321、第二延迟选择器322、第一调整符号产生器331以及第二调整符号产生器332,用来产生上述的第一延迟控制信号DC1、第二延迟控制信号DC2、第一调整控制信号AC1以及第二调整控制信号AC2。
于本实施例中,控制单元340包含有一起始符号检测电路341以及一决定单元342。起始符号检测电路341电连接于第一延迟选择器321以及第二延迟选择器322,用来检测第一延迟选择器321以及第二延迟选择器322所输出的有序符号集合中的起始符号,而决定单元342电连接于起始符号检测电路341、第一延迟选择器321、第二延迟选择器322以及第一调整符号产生器331以及第二调整符号产生器332,当起始符号检测电路341检测到一特定延迟选择器所输出的有序符号集合中的起始符号而尚有其它延迟选择器所输出的有序符号集合中的起始符号还未检测到时,决定单元342产生延迟控制信号至该特定延迟选择器以及产生调整控制信号来控制对应该特定延迟选择器的一特定调整符号产生器输出一调整符号,直到起始符号检测电路341皆检测到该多个延迟选择器所输出的有序符号集合中的起始符号。时序校准电路300的运作进一步详述如下。
请一并参阅图3以及图4,图4为图3所示的时序校准电路300校准数据信道Lane0、Lane1的数据传输时序的操作示意图。一开始,第一缓冲器311会接收数据信道Lane0上所传递的有序符号集合(此时第一缓冲器311的使用深度为1)并将该有序符号集合传送到第一延迟选择器321,而第一延迟选择器321立即将该有序符号集合传送到第一调整符号产生器331以及起始符号检测电路341,同时,第二缓冲器312会接收数据信道Lane1上所传递的有序符号集合(此时第一缓冲器312的使用深度为1)并将该有序符号集合传送到第二延迟选择器322,而第二延迟选择器322立即将该有序符号集合传送到第二调整符号产生器332以及起始符号检测电路341。在时序T1时,起始符号检测电路341检测到第一延迟选择器321所输出的有序符号集合中的起始符号COM,然而,起始符号检测电路341尚未有检测到第二延迟选择器322所输出的有序符号集合中的起始符号COM(于本范例说明中,起始符号检测电路341于时序T3中才会检测到第二延迟选择器322所输出的有序符号集合中的起始符号COM),因此,决定单元342便产生第一延迟控制信号DC1至第一延迟选择器321来延迟输出,因此,第一缓冲器311也相对应地将已接收的有序符号集合暂存起来(此时第一缓冲器311的使用深度为2),此外,由于决定单元342累计第一延迟控制信号DC1的次数为1,因此,第一累计值于时序T2时会由0递增为1,再者,决定单元342会产生调整控制信号AC1至第一调整符号产生器331,使得第一调整符号产生器331于时序T2时输出调整符号SKP。
如图4所示,在时序T2时,起始符号检测电路341尚未检测到第二延迟选择器322所输出的有序符号集合中的起始符号,因此,决定单元342再次产生第一延迟控制信号DC1至第一延迟选择器321来延迟输出,因此,第一缓冲器311也相对应地再次将已接收的有序符号集合暂存起来(此时第一缓冲器311的使用深度为3),此外,由于决定单元342累计第一延迟控制信号DC1的次数为2,因此,第一累计值于时序T 3时会由1递增为2,再者,决定单元342会产生调整控制信号AC1至第一调整符号产生器331,使得第一调整符号产生器331于时序T 3时再次输出调整符号SKP。
直到时序T3时,起始符号检测电路341才检测到第二延迟选择器322所输出的有序符号集合中的起始符号COM,于是,决定单元342产生第一调整控制信号AC1来控制第一调整符号产生器331输出第一延迟选择器321的输出,请注意,此时决定单元342累计第一延迟控制信号DC1的次数所产生的累计值为2,也就是说,第一缓冲器的使用深度为3,同时,决定单元342产生第二调整控制信号AC2来控制第二调整符号产生器332输出第二延迟选择器322的输出,请注意,此时决定单元342累计产生第二延迟控制信号DC2的次数所产生的累计值为0,也就是说,第二缓冲器的使用深度为1。因此,在时序T4时,时序校准电路300便已校准数据信道Lane0以及数据信道Lane1的数据传输时序,而第一调整符号产生器331以及第二调整符号产生器332便可同步输出数据,如图4所示,第一调整符号产生器331以及第二调整符号产生器332的数据输出自时序T4起便彼此同步,并开始输出之前经由相对应数据信道而逐一接收到的起始符号COM与多个字节D0、D1。
请参考图5,图5为本发明时序校准电路的第二实施例的示意图。图5的时序校准电路500的架构与图3的时序校准电路300的架构类似,两者主要不同的处在于控制单元540除了决定单元542于起始符号检测电路541的外另包含有一调整符号检测电路543,且数据信道Lane0以及数据信道Lane1系分别电连接于弹性缓冲器EB0以及弹性缓冲器EB1。如图5所示,调整符号检测电路543电连接于第一延迟选择器321以及第二延迟选择器322,用来检测弹性缓冲器EB0以及弹性缓冲器EB1是否调整有序符号集合中调整符号SKP的个数;当调整符号检测电路543检测到对应一特定数据信道的一特定弹性缓冲器增加一调整符号SKP至该特定数据信道的相对应起始符号COM的有序符号集合,则决定单元542控制其它数据信道(亦即不是该特定数据信道的数据信道)所对应的调整符号产生器输出一调整符号SKP;另一方面,当调整符号检测电路543检测到该特定弹性缓冲器于该特定数据信道的相对应起始符号的有序符号集合中减少一调整符号SKP,则决定单元542控制对应该特定数据信道的一特定调整符号产生器输出一调整符号SKP。时序校准电路500的运作进一步详述如下。
请参阅图5以及图6,图6为图5所示的时序校准电路500校准数据信道Lane0、Lane1受弹性缓冲器EB0、EB1影响后的数据传输时序的操作实施例的示意图。在时序T1时,起始符号检测电路541同时检测到第一延迟选择器321以及第二延迟选择器322所输出的有序符号集合中的起始符号COM,故决定单元542便产生第一调整控制信号AC1来控制第一调整符号产生器331输出第一延迟选择器321的输出(于时序T2时,起始符号COM会被输出),同时产生第二调整控制信号AC2控制第二调整符号产生器332输出第二延迟选择器322的输出(于时序T2时,起始符号COM会被输出),直到时序T4时,调整符号检测电路542检测到数据信道LANE1的弹性缓冲器EB1减少了一个调整符号SKP,于是决定单元542便产生第二延迟控制信号DC2至第二延迟选择器322来控制第二延迟选择器322来延迟输出,因此,第二缓冲器312也相对应地将已接收的有序符号集合暂存起来(此时第二缓冲器312的使用深度为2),此外,由于决定单元542累计第二延迟控制信号DC2的次数为1,因此,第二累计值于时序T5时会由0递增为1,再者,决定单元542也产生第二调整控制信号AC2至第二调整符号产生器332,使得第二调整符号产生器332于时序T5时输出一调整符号SKP。如此一来,在时序T6时,第一调整符号产生器331以及第二调整符号产生器332便可同步输出数据,如图6所示,第一调整符号产生器331以及第二调整符号产生器332的数据输出自时序T6起便彼此同步,并开始输出之前经由相对应数据信道而逐一接收到的多个字节D0、D1、D2。
请参阅图5以及图7,图7为图5所示的时序校准电路500校准数据信道Lane0、Lane1受弹性缓冲器EB0、EB1影响后的数据传输时序的另一操作实施例的示意图。图7的操作原理与图6类似,两者的差异系图6中数据信道LANE1比数据信道LANE0少一个调整符号SKP,而在图7中,数据信道LANE1则是比数据信道LANE0多一个调整符号SKP。因此,在时序T5时,调整符号检测电路542检测到数据信道LANE1的弹性缓冲器EB1增加了一个调整符号SKP,于是决定单元542便产生第一延迟控制信号DC1至第一延迟选择器321,来控制第一延迟选择器321延迟输出,因此,第一缓冲器311也相对应地将已接收的有序符号集合暂存起来(此时第一缓冲器311的使用深度为2),此外,由于决定单元342累计第一延迟控制信号DC1的次数为1,因此第一累计值于时序T6时会由0递增为1,再者,决定单元542会产生第一调整控制信号AC1至第一调整符号产生器331,使得第一调整符号产生器331于时序T6输出一调整符号SKP,如此一来,在时序T7时,第一调整符号产生器331以及第二调整符号产生器332便可同步输出数据。如图7所示,第一调整符号产生器331以及第二调整符号产生器332的数据输出自时序T7起便彼此同步,并开始输出之前经由相对应数据信道而逐一接收到的多个字节D0、D1、D2。
请注意,时序校准电路500的精神在于调整符号检测电路542检测到一数据信道上的调整符号SKP比其它数据信道上的调整符号SKP少时,决定单元542便产生相对应于该数据信道的延迟控制信号至相对应于该数据信道的延迟选择器,以控制该延迟选择器来延迟输出,并产生调整控制信号来控制调整符号产生器输出一调整符号SKP,进而校准数据传输时序偏移的现象以让第一调整符号产生器331以及第二调整符号产生器332可同步输出数据。
请参阅图8,图8为本发明时序校准电路校准数据信道Lane0、Lane1的数据传输时序的再另一操作实施例的示意图。如图8所示,在时序T2时,控制单元已校准数据信道Lane0、Lane1的数据传输时序,请注意,控制单元340、540校准数据信道Lane0、Lane1的数据传输时序如上述实施例所述在此不再赘述,如果在时序T2时第一累计值为3以及第二累计值为2,也就是说,第一缓冲器311的使用深度为4以及第二缓冲器312的使用深度为3,为了节省缓冲器的使用空间,决定单元342、542将第一累计值以及第二累计值同时减少一数值N(请注意,数值N最大为数据信道调整符号的个数)来更新第一延迟控制信号DC1以及第二延迟控制信号DC2来减少输出调整符号的个数,在本实施例中,同时将第一累计值以及第二累计值减少1(N=1),如此一来,调整后的第一累计值为2以及第二累计值为1,因此,第一缓冲器的使用深度便降为3以及第二缓冲器的使用深度便降为2。
请参考图9,图9为本发明校准多个数据信道的数据传输时序的时序校准方法的一操作范例的流程图,其包含(但不局限于)以下步骤(请注意,假若可获得实质上相同的结果,则这些步骤并不一定要遵照图9所示的执行次序来执行):
步骤S900:开始。
步骤S910:接收每一数据信道上所传递的一有序符号集合。
步骤S920:检测有序符号集合中的起始符号。
步骤S925:判断是否检测到一特定数据信道上的有序符号集合中的起始符号而尚有其它数据信道上的有序符号集合中的起始符号未检测到,如果是,则执行步骤S930,如果起始符号检测电路皆检测到多个延迟选择器所输出的有序符号集合中的起始符号,跳到步骤S950。
步骤S930:产生延迟控制信号以及调整控制信号。
步骤S940:依据延迟控制信号来延迟有序符号集合的输出以及依据调整控制信号来输出调整符号,回到步骤S925。
步骤S950:依据调整控制信号来输出接收自相对应延迟选择器的输出。
搭配参考图9所示的各步骤以及图3所示的各组件即可了解上述流程如何运作,为简洁起见,故于此不再赘述。
请参考图10,图10为本发明校准多个数据信道的数据传输时序的时序校准方法的另一操作范例的流程图,其包含(但不局限于)以下步骤(请注意,假若可获得实质上相同的结果,则这些步骤并不一定要遵照图10所示的执行次序来执行):
步骤S1000:开始。
步骤S1010:接收每一数据信道上所传递的一有序符号集合。
步骤S1020:检测有序符号集合中的起始符号的调整符号。
步骤S1025:判断每一弹性缓冲器是否调整有序符号集合中的调整符号,如果有,则执行步骤S1030,否则回到步骤S1020。
步骤S1030:当检测到对应特定数据信道的特定弹性缓冲器增加调整符号至该特定数据信道的相对应起始符号的有序符号集合,则控制其它数据信道所对应的调整符号产生器输出调整符号。
步骤S1040:当检测到该特定弹性缓冲器于该特定数据信道的相对应起始符号的有序符号集合中减少调整符号,则控制该特定数据信道所对应的调整符号产生器输出调整符号。
搭配图10所示的各步骤以及图5所示的各组件即可了解上述流程如何运作,为简洁起见,故于此不再赘述。
请参考图11,图11为本发明校准多个数据信道的数据传输时序的时序校准方法的再另一操作范例的流程图,其包含(但不局限于)以下步骤(请注意,假若可获得实质上相同的结果,则这些步骤并不一定要遵照图11所示的执行次序来执行):
步骤S1100:开始。
步骤S1110:校准多个数据信道的数据传输时序。
步骤S1120:累计针对多个特定数据信道产生延迟控制信号的次数以产生多个累计值。
步骤S1130:将该多个累计值同时减少一数值。
步骤S1140:依据调整后的该累计值来更新输出至该多个特定数据信道的多个延迟控制信号。
搭配图11所示的各步骤以及图5所示的各组件即可了解上述流程如何运作,为简洁起见,故于此不再赘述。
上述各流程的步骤仅为本发明所举的可行的实施例,并非限制本发明的限制条件,且在不违背本发明的精神的情况下,该些方法可另包含其它的中间步骤或者可将几个步骤合并成单一步骤,以做适当的变化。
请注意,以上所述的实施例仅用来说明本发明的技术特征,并非用来局限本发明的范畴,亦即,在不违背本发明的发明精神的情形下,基于以上所述的实施例的其它设计变化均落入本发明的范畴。
由上可知,本发明提供一种时序校准电路不但可以校准数据信道(可以是绕线(Trace)或者是不同种类的缆线(Cable)),因为长短不一、温度的影响、电源供应器的电压改变或者是信道的品质不一样以及弹性缓冲器为补偿数据传输率所造成数据传输时序偏移的问题,而且可以更新累计值来节省缓冲器的使用空间。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (10)
1.一种校准多个数据信道的数据传输时序的时序校准电路,包含有:
多个缓冲器,分别电连接于该多个数据信道,每一缓冲器系用来接收相对应数据信道上所传递的有序符号集合;
多个延迟选择器,分别电连接于该多个缓冲器,每一延迟选择器系用来依据一延迟控制信号来延迟相对应缓冲器的有序符号集合的输出;
多个调整符号产生器,分别电连接于该多个延迟选择器,每一调整符号产生器系用来依据一调整控制信号来输出调整符号或输出接收自相对应延迟选择器的输出;以及
一控制单元,电连接于该多个延迟选择器以及该多个调整符号产生器,用来产生该延迟控制信号以及该调整控制信号,该控制单元包含有:
一起始符号检测电路,电连接于该多个延迟选择器,用来检测该多个延迟选择器所输出的有序符号集合中的起始符号;以及
一决定单元,电连接于该起始符号检测电路、该多个延迟选择器以及该多个调整符号产生器,当该起始符号检测电路检测到一特定延迟选择器所输出的有序符号集合中的起始符号而尚有其它延迟选择器所输出的有序符号集合中的起始符号未检测到时,该决定单元产生该延迟控制信号至该特定延迟选择器以及产生该调整控制信号来控制对应该特定延迟选择器的一特定调整符号产生器输出一调整符号,直到该起始符号检测电路皆检测到该多个延迟选择器所输出的有序符号集合中的起始符号。
2.根据权利要求1所述的时序校准电路,其特征在于,该多个数据信道系分别电连接于多个弹性缓冲器;该控制单元另包含有一调整符号检测电路,电连接于该多个延迟选择器,用来检测每一弹性缓冲器是否调整有序符号集合中的调整符号;当该调整符号检测电路检测到对应一特定数据信道的一特定弹性缓冲器增加一调整符号至该特定数据信道的相对应起始符号的有序符号集合,则该决定单元控制其它数据信道所对应的调整符号产生器输出一调整符号;当该调整符号检测电路检测到该特定弹性缓冲器于该特定数据信道的相对应起始符号的有序符号集合中减少一调整符号,则该决定单元控制对应该特定数据信道的一特定调整符号产生器输出一调整符号。
3.根据权利要求2所述的时序校准电路,其特征在于,该控制单元另分别累计针对多个特定延迟选择器产生延迟控制信号的次数以产生多个累计值;以及在该控制单元校准该多个数据信道的数据传输时序之后,该决定单元将该多个累计值同时减少一数值,并依据调整后的该累计值来更新输出至该多个特定延迟选择器的多个延迟控制信号。
4.根据权利要求1所述的时序校准电路,其特征在于,该控制单元另分别累计针对多个特定延迟选择器产生延迟控制信号的次数以产生多个累计值;以及在该控制单元校准该多个数据信道的数据传输时序之后,该决定单元将该多个累计值同时减少一数值,并依据调整后的该累计值来更新输出至该多个特定延迟选择器的多个延迟控制信号。
5.根据权利要求1所述的时序校准电路,其特征在于,该起始符号为一PCI Express COM符号,以及该调整符号为一PCI Express SKP符号。
6.一种校准多个数据信道的数据传输时序的时序校准方法,包含有:
接收每一数据信道上所传递的一有序符号集合;
检测自该多个数据信道所接收的有序符号集合中的起始符号;以及
当检测到一特定数据信道上的有序符号集合中的起始符号而尚有其它数据信道上的有序符号集合中的起始符号未检测到时,产生一延迟控制信号以延迟自该特定数据信道所接收的有序符号集合的输出以及产生一调整控制信号来控制对应该特定数据信道的一特定调整符号产生器输出一调整符号,直到皆检测到该多个数据信道上的有序符号集合中的起始符号。
7.根据权利要求6所述的时序校准方法,其特征在于,该多个数据信道系分别电连接于多个弹性缓冲器,以及该方法另包含有:
检测每一弹性缓冲器是否调整有序符号集合中的调整符号;
当检测到对应一特定数据信道的一特定弹性缓冲器增加一调整符号至该特定数据信道的相对应起始符号的有序符号集合,则控制其它数据信道所对应的调整符号产生器输出一调整符号;以及
当检测到该特定弹性缓冲器于该特定数据信道的相对应起始符号的有序符号集合中减少一调整符号,则控制对应该特定数据信道的一特定调整符号产生器输出一调整符号。
8.根据权利要求7所述的时序校准方法,其特征在于,其另包含有:
分别累计针对多个特定数据信道产生延迟控制信号的次数以产生多个累计值;以及
在校准该多个数据信道的数据传输时序之后,将该多个累计值同时减少一数值,并依据调整后的该累计值来更新输出至该多个特定数据信道的多个延迟控制信号。
9.根据权利要求6所述的时序校准方法,其特征在于,其另包含有:
分别累计针对多个特定数据信道产生延迟控制信号的次数以产生多个累计值;以及
在校准该多个数据信道的数据传输时序之后,将该多个累计值同时减少一数值,并依据调整后的该累计值来更新输出至该多个特定数据信道的多个延迟控制信号。
10.根据权利要求6所述的时序校准方法,其特征在于,该起始符号为一PCI Express COM符号,以及该调整符号为一PCI Express SKP符号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102004761A CN102270011A (zh) | 2010-06-04 | 2010-06-04 | 校准多个数据信道的数据传输时序的时序校准电路及时序校准方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102004761A CN102270011A (zh) | 2010-06-04 | 2010-06-04 | 校准多个数据信道的数据传输时序的时序校准电路及时序校准方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102270011A true CN102270011A (zh) | 2011-12-07 |
Family
ID=45052340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102004761A Pending CN102270011A (zh) | 2010-06-04 | 2010-06-04 | 校准多个数据信道的数据传输时序的时序校准电路及时序校准方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102270011A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063352A (zh) * | 2013-03-20 | 2014-09-24 | 上海华虹集成电路有限责任公司 | Pipe的弹性缓冲电路及其状态同步方法 |
CN104317361A (zh) * | 2014-10-27 | 2015-01-28 | 杭州中天微系统有限公司 | 一种基于指针延迟更新的循环缓冲器 |
CN107431614A (zh) * | 2015-04-22 | 2017-12-01 | 韩国以事美德有限公司 | 用于自动偏移补偿的方法和装置 |
CN109640013A (zh) * | 2018-12-20 | 2019-04-16 | 苏州华兴源创科技股份有限公司 | 一种时序校准方法及芯片测试机 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523490A (zh) * | 2003-07-02 | 2004-08-25 | ��ʢ���ӹɷ�����˾ | 校准多个数据信道的数据传输时序的电路及方法 |
US7100067B2 (en) * | 2003-03-19 | 2006-08-29 | Victor Hansen | Data transmission error reduction via automatic data sampling timing adjustment |
CN1902613A (zh) * | 2003-12-31 | 2007-01-24 | 英特尔公司 | 为串行点到点链路通过非数据符号处理进行通道到通道的偏斜校正 |
-
2010
- 2010-06-04 CN CN2010102004761A patent/CN102270011A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7100067B2 (en) * | 2003-03-19 | 2006-08-29 | Victor Hansen | Data transmission error reduction via automatic data sampling timing adjustment |
CN1523490A (zh) * | 2003-07-02 | 2004-08-25 | ��ʢ���ӹɷ�����˾ | 校准多个数据信道的数据传输时序的电路及方法 |
CN1902613A (zh) * | 2003-12-31 | 2007-01-24 | 英特尔公司 | 为串行点到点链路通过非数据符号处理进行通道到通道的偏斜校正 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063352A (zh) * | 2013-03-20 | 2014-09-24 | 上海华虹集成电路有限责任公司 | Pipe的弹性缓冲电路及其状态同步方法 |
CN104063352B (zh) * | 2013-03-20 | 2017-03-15 | 上海华虹集成电路有限责任公司 | Pipe的弹性缓冲电路及其状态同步方法 |
CN104317361A (zh) * | 2014-10-27 | 2015-01-28 | 杭州中天微系统有限公司 | 一种基于指针延迟更新的循环缓冲器 |
CN104317361B (zh) * | 2014-10-27 | 2017-08-04 | 杭州中天微系统有限公司 | 一种基于指针延迟更新的循环缓冲器 |
CN107431614A (zh) * | 2015-04-22 | 2017-12-01 | 韩国以事美德有限公司 | 用于自动偏移补偿的方法和装置 |
CN107431614B (zh) * | 2015-04-22 | 2020-07-28 | 韩国以事美德有限公司 | 用于自动偏移补偿的方法和装置 |
CN109640013A (zh) * | 2018-12-20 | 2019-04-16 | 苏州华兴源创科技股份有限公司 | 一种时序校准方法及芯片测试机 |
CN109640013B (zh) * | 2018-12-20 | 2021-04-02 | 苏州华兴源创科技股份有限公司 | 一种时序校准方法及芯片测试机 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6744285B2 (en) | Method and apparatus for synchronously transferring data across multiple clock domains | |
US8179181B2 (en) | Power-mode-aware clock tree and synthesis method thereof | |
US8352773B2 (en) | Time aligning circuit and time aligning method for aligning data transmission timing of a plurality of lanes | |
US7975082B2 (en) | System and method to facilitate deterministic testing of data transfers between independent clock domains on a chip | |
US20060129869A1 (en) | Data de-skew method and system | |
US7958285B1 (en) | System and method to facilitate deterministic testing of data transfers between independent clock domains on a chip | |
CN102270011A (zh) | 校准多个数据信道的数据传输时序的时序校准电路及时序校准方法 | |
CN102868584A (zh) | 一种采用串行通信接口的同步时分多路复用总线通信方法 | |
CN104020820A (zh) | 接收器以及发射和接收系统 | |
CN102981116B (zh) | 一种验证专用集成电路的装置和方法 | |
US20200110682A1 (en) | Microcontroller and method for modifying a transmission signal | |
CN108920401B (zh) | 多主多从的i2c通信方法、系统及节点设备 | |
WO2021109508A1 (zh) | 基于同步机实现多信号源同步输出的同步系统、同步方法及校准方法 | |
CN105955900B (zh) | I2s外围电路时序的自适应调整方法及装置 | |
CN112818620B (zh) | 一种基于动态非平衡时钟的芯片设计优化系统及方法 | |
CN107797046B (zh) | 集成电路及集成电路的一输入输出接口的测试方法 | |
CN112118441B (zh) | 一种位校正改进的串行cmos图像数据训练方法 | |
CN109076036A (zh) | 使用复制通道的信道训练 | |
US11704276B2 (en) | Propagation delay compensation for SPI interfaces | |
Sawyer | Source-synchronous serialization and deserialization (up to 1050 Mb/s) | |
US9094183B2 (en) | Circuits for receiving data | |
JP5699780B2 (ja) | 電子回路 | |
CN112130053A (zh) | 一种在ate上进行芯片功能同步测试的方法 | |
CN102299787B (zh) | 在高速系统级芯片电路中实现数据同步的方法和装置 | |
CN101599926B (zh) | 差动传输器及其数据截取自动调整方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20111207 |