用于并行信号的对齐的技术

申请号 CN201410042365.0 申请日 2014-01-28 公开(公告)号 CN103973312B 公开(公告)日 2017-11-10
申请人 阿尔特拉公司; 发明人 C·沃特曼; D·门德尔;
摘要 串行通道中的每个接收器 电路 均生成与主时钟 信号 对齐的同步 时钟信号 以允许无损坏地将数据同步传送到主时钟域上。每个接收器电路中的 串并转换 器电路响应于同步时钟信号中的一个同步时钟信号将串行数据信号转换为并行数据信号。 相位 检测电路基于同步时钟信号和主时钟信号之间的相位偏移生成 相移 的指示。时钟信号生成电路基于相移的指示提供对同步时钟信号的相位的调节。串并转换器电路基于对同步时钟信号的相位的调节来调节由并行数据信号所指示的比特的 位置 。
权利要求

1.一种电路,包括:
串并转换器电路,响应于第一周期性信号将串行数据信号转换成第一并行数据信号;
相位检测电路系统,基于所述第一周期性信号与第二周期性信号之间的相位偏移生成相移的指示;以及
时钟信号生成电路,基于所述相移的所述指示提供对所述第一周期性信号的相位的调节,所述串并转换器电路基于对所述第一周期性信号的所述相位的所述调节来调节由所述第一并行数据信号所指示的比特的位置
2.根据权利要求1所述的电路,进一步包括:
桶形移位器电路,基于所述第一并行数据信号生成第二并行数据信号,其中所述桶形移位器电路将由所述第二并行数据信号所指示的比特的位置相对于由所述第一并行数据信号所指示的所述比特的所述位置进行调节。
3.根据权利要求2所述的电路,其中所述桶形移位器电路包括响应于所述第二周期性信号存储所述第一并行数据信号的值的存储电路。
4.根据权利要求2所述的电路,进一步包括:
图案检测器电路,指示在所述第一并行数据信号中或者在所述第二并行数据信号中的数据字内的第一比特的比特位置,其中所述桶形移位器电路基于由所述图案检测器电路所指示的所述比特位置将由所述第二并行数据信号所指示的所述比特的所述位置相对于由所述第一并行数据信号所指示的所述比特的所述位置进行调节。
5.根据权利要求2所述的电路,其中所述桶形移位器电路包括选择器电路,将由所述第二并行数据信号所指示的所述比特的所述位置相对于由所述第一并行数据信号所指示的所述比特的所述位置调节少于所述第一并行数据信号的总数的最大数目的比特位置。
6.根据权利要求2所述的电路,其中所述桶形移位器电路包括选择器电路,将由所述第二并行数据信号所指示的所述比特的所述位置相对于由所述第一并行数据信号所指示的所述比特的所述位置调节至少两个比特位置的最小比特移位。
7.根据权利要求4所述的电路,其中所述相位检测电路系统包括:
相位检测器电路,生成所述第一周期性信号与所述第二周期性信号之间的相位偏移的指示,其中所述桶形移位器电路包括选择器电路以将由所述第二并行数据信号所指示的所述比特的所述位置相对于由所述第一并行数据信号所指示的所述比特的所述位置进行调节;以及
控制电路,基于所述相位偏移的所述指示、基于由所述图案检测器电路所指示的所述比特位置以及基于由所述选择器电路调节的最小比特移位生成所述相移的所述指示。
8.根据权利要求1所述的电路,其中所述时钟信号生成电路持续调节所述第一周期性信号的所述相位直到所述相位检测电路系统指示所述第一周期性信号和所述第二周期性信号在预定的相位差范围内被对齐相位。
9.根据权利要求8所述的电路,其中所述相位检测电路系统生成指示在所述第一周期性信号和所述第二周期性信号之间的所述相位偏移的第一相位检测信号和第二相位检测信号,其中所述相位检测电路系统包括基于所述第一相位检测信号生成第一计数值的第一计数器电路以及基于所述第二相位检测信号生成第二计数值的第二计数器电路,其中所述相位检测电路系统基于所述第一计数值和所述第二计数值生成提供所述相移的所述指示的信号,并且其中所述时钟信号生成电路是可变分频器电路。
10.根据权利要求1所述的电路,其中所述电路是集成电路中的接收器电路,并且其中所述串行数据信号包含由外部设备生成并被提供给所述集成电路的比特。
11.一种方法,包括:
利用串并转换器响应于第一周期性信号将串行数据信号转换为第一并行数据信号;
利用相位检测电路系统基于所述第一周期性信号与第二周期性信号之间的相位偏移生成相移的指示;
基于所述相移的所述指示提供对所述第一周期性信号的相位的调节;以及利用所述串并转换器基于对所述第一周期性信号的所述相位的所述调节来调节由所述第一并行数据信号所指示的比特的位置。
12.根据权利要求11所述的方法,进一步包括:
利用桶形移位器电路基于所述第一并行数据信号生成第二并行数据信号;
利用图案检测器电路指示在所述第一并行数据信号中或者在所述第二并行数据信号中的数据字内的第一比特的比特位置;以及
基于由所述图案检测器电路所指示的数据字内的所述第一比特的所述比特位置、利用所述桶形移位器电路将由所述第二并行数据信号所指示的比特的位置相对于由所述第一并行数据信号所指示的所述比特的所述位置进行调节。
13.根据权利要求11所述的方法,进一步包括:
响应于所述第二周期性信号将所述第一并行数据信号的值存储在存储电路中。
14.根据权利要求12所述的方法,其中所述桶形移位器电路将由所述第二并行数据信号所指示的所述比特的所述位置相对于由所述第一并行数据信号所指示的所述比特的所述位置调节少于所述第一并行数据信号的总数的最大数目的比特位置。
15.根据权利要求12所述的方法,其中所述桶形移位器电路将由所述第二并行数据信号所指示的所述比特的所述位置相对于由所述第一并行数据信号所指示的所述比特的所述位置进行调节的最小比特移位是至少两个比特位置。
16.根据权利要求12所述的方法,其中利用相位检测电路系统基于所述第一周期性信号与第二周期性信号之间的相位偏移生成相移的指示进一步包括:
利用相位检测器生成所述第一周期性信号与所述第二周期性信号之间的所述相位偏移的指示;以及
基于所述相位偏移的所述指示、基于由所述图案检测器电路所指示的数据字内的所述第一比特的所述比特位置以及基于所述桶形移位器电路将由所述第二并行数据信号所指示的所述比特的所述位置相对于由所述第一并行数据信号所指示的所述比特的所述位置进行调节的最小比特移位生成所述相移的所述指示。
17.一种电路,包括:
接收器电路,其中所述接收器电路中的每个接收器电路响应于相应的同步时钟信号将串行数据信号转换为一组并行数据信号,其中所述接收器电路中的每个接收器电路使得所述相应的同步时钟信号在所述相应的一组并行数据信号中的比特的比特周期的一半之内与主时钟信号对齐,其中所述接收器电路中的每个接收器电路响应于所述主时钟信号存储所述相应的一组并行数据信号,并且其中所述接收器电路将所述多组并行数据信号相对于彼此进行抗扭斜。
18.根据权利要求17所述的电路,其中所述接收器电路中的每个接收器电路包括:
串并转换器电路,响应于所述相应的同步时钟信号将所述相应的串行数据信号转换成所述相应的一组并行数据信号;
相位检测电路系统,基于所述相应的同步时钟信号与所述主时钟信号之间的相位偏移生成相移的指示;以及
时钟信号生成电路,基于所述相移的所述指示提供对所述相应的同步时钟信号的相位的调节,所述串并转换器电路基于对所述相应的同步时钟信号的所述相位的所述调节来调节由所述相应的一组并行数据信号所指示的比特的位置。
19.根据权利要求18所述的电路,其中所述接收器电路中的每个接收器电路进一步包括:
桶形移位器电路,基于所述相应的一组并行数据信号生成相应的输出并行数据信号,其中所述桶形移位器电路将由所述相应的输出并行数据信号所指示的比特的位置相对于所述相应的一组并行数据信号所指示的所述比特的所述位置进行调节。

说明书全文

用于并行信号的对齐的技术

技术领域

[0001] 本公开涉及电子电路,并且更具体地涉及用于并行信号的对齐的技术。

背景技术

[0002] 数据通常以高数据速率在集成电路之间被串行传送。当需要比所希望的串行数据速率更大的带宽时,数据通过分配被散布在多个串行数据流上,在给定的介质上被运送并且在接收端被汇集。被传送经过介质的每个串行数据流可能经历不同的传播延迟,使得每个串行数据流失去与形成链接的其它串行数据流相关联的对齐。
[0003] 集成电路接收来自另一集成电路的串行数据信号。接收集成电路可以将串行数据信号中的串行数据转换成并行数据以允许数字逻辑以较低的速度进行操作。例如,接收集成电路可以将传入的串行数据信号转换成并行数据的连续字节或字。并行数据具有比串行数据低的数据速率。并行数据以比用于对串行数据进行采样的时钟频率低的时钟频率被存储在接收集成电路中。发明内容
[0004] 根据一些实施例,多个串并转换器电路将多个串行数据信号转换成每个均具有其自己的同步时钟信号的多个并行数据信号。多个相位检测器电路被用于生成主时钟信号与每个同步时钟信号之间的相位偏移的指示。针对每个串行通道,控制电路基于主时钟信号与该通道中的同步时钟信号之间的相位偏移的指示生成相移的指示。时钟信号生成电路基于相移的指示提供对同步时钟信号的相位的调节。串并转换器电路通过对同步时钟信号的相位的调节来调节累积的串行比特何时被传送到主时钟信号的域。存储电路响应于主时钟信号存储并行数据信号的值。
[0005] 根据其它实施例,串并转换器电路、相位检测器电路和控制电路使得由串行通道中的接收器电路生成的同步时钟信号中的每个同步时钟信号与主时钟信号更紧密地对齐,以允许无损坏地将数据同步传送到主时钟域上。每个同步时钟信号与主时钟信号之间的偏移由相应的串行通道中的字对齐电路中的存储电路的建立和保持时间决定。因此,每个串行通道响应于主时钟信号存储并行数据信号中的比特的准确值。由串行通道中的接收器电路生成的同步时钟信号在比特周期内与彼此对齐。此外,串行数据信号中的比特被转换为具有减少的延迟的并行信号,并且由接收器电路生成的并行数据信号是字对齐的。因此,由接收器电路所生成的并行数据信号相对于彼此被进行抗扭斜处理。
[0006] 根据进一步实施例,串并转换器电路将串行数据信号转换为第一并行数据信号。桶形移位器电路基于第一并行数据信号生成第二并行数据信号。桶形移位器电路包括多路复用器电路,该多路复用器电路对由第二并行数据信号指示的比特相对于用于表示字边界的预定图案的对齐进行移位。每个多路复用器电路可以通过多个比特相对通过单个比特的粒度进行调节或者被删除。对串并数据传输的操纵可以与并行域桶形移位器相组合地被使用。
[0007] 本发明的各种目的、特征和优点在考虑到以下的详细描述和附图的情况下将变得清楚。

附图说明

[0008] 图1图示了根据本发明的实施例的将数据在串行和并行之间进行转换的多通道高速串行接口(HSSI)电路的示例。
[0009] 图2图示了根据本发明的实施例的用于一个通道的接收器电路的示例。
[0010] 图3图示了根据本发明的实施例的图2的解串器电路的示例。
[0011] 图4图示了根据本发明的实施例的图3的控制和存储逻辑电路的示例。
[0012] 图5图示了根据本发明的实施例的图2的控制电路的示例。
[0013] 图6A图示了根据本发明的实施例的图5的UP采样器电路的示例。
[0014] 图6B图示了根据本发明的实施例的图5的DN采样器电路的示例。
[0015] 图7A图示了根据本发明的实施例、当主时钟信号的相位超前于低速时钟信号的相位时图2和图5中所示的信号中的一些信号的示例性波形
[0016] 图7B图示了根据本发明的实施例、当低速时钟信号的相位超前于主时钟信号的相位时图2和图5中所示的信号中的一些信号的示例性波形。
[0017] 图8A图示了根据本发明的实施例的字对齐电路的示例。
[0018] 图8B图示了根据本发明的可替换实施例的字对齐电路的另一示例。
[0019] 图9图示了根据本发明的实施例的图案检测器电路的示例。
[0020] 图10图示了根据本发明的实施例的图8A和图8B的桶形移位器电路的示例。
[0021] 图11图示了根据本发明的实施例的图8A和图8B的桶形移位器电路中的存储电路的示例。
[0022] 图12图示了根据本发明的实施例的图8A和图8B的桶形移位器电路中的选择器电路的示例。
[0023] 图13图示了根据本发明的可替换实施例的图8A和图8B的桶形移位器电路中的选择器电路的另一示例。
[0024] 图14图示了根据本发明的实施例的图8A和图8B的桶形移位器电路的另一示例。
[0025] 图15图示了根据本发明的实施例的针对被选择的数据信号ZN的示例性波形。
[0026] 图16是可以包括本发明的实施例的现场可编程阵列(FPGA)的简化的部分框图
[0027] 图17图示了可以体现本发明的技术的示例性数字系统的框图。

具体实施方式

[0028] 图1图示了根据本发明的实施例的将数据在串行与并行之间进行转换的包含多个通道的高速串行接口(HSSI)电路100的示例。HSSI电路100包括接收器电路101、103、105和107。HSSI电路100还包括发送器电路102、104、106和108。图1还图示了协议逻辑电路110。
HSSI100和协议逻辑电路110在集成电路中。作为不意在进行限制的示例,集成电路可以是现场可编程门阵列,并且协议逻辑电路110可以包括可编程逻辑电路。
[0029] 接收器电路101、103、105和107从包含HSSI100的集成电路外部的源相应地接收4个串行数据信号DSINA、DSINB、DSINC和DSIND。主周期性时钟信号MSTCLK被提供至每个接收器电路101、103、105和107的输入。每个接收器电路101、103、105和107生成时钟信号RDCLK,如以下所描述的。主时钟信号MSTCLK具有与时钟信号RDCLK相同的频率。
[0030] 在实施例中,主时钟信号MSTCLK由时钟信号RDCLK中的一个导出。例如,由接收器电路101生成的时钟信号RDCLK可以被用作主时钟信号MSTCLK。在该示例中,由接收器电路101生成的时钟信号RDCLK与时钟信号MSTCLK对齐。在该示例中,接收器电路101没有如图2中所示的相位检测器或者如图5中所示的相位评估和相位调节电路系统。根据另一实施例,外部电路系统减少时钟信号RDCLK中的一个中的抖动以生成被用作MSTCLK的时钟信号。在该实施例中,附加的相位调节电路系统被用于减少由外部电路系统生成的MSTCLK中的相位延迟
[0031] 接收器电路101、103、105和107响应于时钟信号MSTCLK分别将4个串行数据信号DSINA、DSINB、DSINC和DSIND转换为4组并行数据信号DPINA、DPINB、DPINC和DPIND。每组并行数据信号DPINA、DPINB、DPINC和DPIND包括两个或更多个并行信号。
[0032] 协议逻辑电路110生成4组并行数据信号DPOUTA、DPOUTB、DPOUTC和DPOUTD。每组并行数据信号DPOUTA、DPOUTB、DPOUTC和DPOUTD包括两个或更多个并行信号。发送器电路102、104、106和108分别将4组并行数据信号DPOUTA、DPOUTB、DPOUTC和DPOUTD转换为4个串行数据信号DSOUTA、DSOUTB、DSOUTC和DSUTD。
[0033] 图2图示了根据本发明的实施例的接收器电路200的示例。接收器电路200是图1中所示的接收器电路101、103、105和107的每个的示例。在实施例中,接收器电路101、103、105和107的每个包括接收器电路200的实例。
[0034] 接收器电路200包括时钟数据恢复(CDR)电路201、解串器电路202、相位检测器电路203、控制电路204和字对齐电路205。单个串行数据信号DSIN被提供至时钟数据恢复电路201的输入。串行数据信号DSIN包含串行比特,包括数据比特和协议比特。串行数据信号DSIN可以例如是接收器电路101、103、105和107中的相应的一个接收器电路中的串行数据信号DSINA、DSINB、DSINC和DSIND中的一个。
[0035] 时钟数据恢复电路201基于串行数据信号DSIN生成恢复的时钟信号HFCLK。时钟数据恢复电路201还可以基于串行数据信号DSIN生成其它恢复的时钟信号。时钟数据恢复电路201可以利用例如振动器电路来生成恢复的时钟信号。可以被用在时钟数据恢复电路201中的时钟数据恢复电路的示例在2012年3月15日公布的共同转让的美国专利申请2012/0063556中被描述,该美国专利申请的全部内容通过引用被合并于此。
[0036] 时钟数据恢复电路201包括将串行数据信号DSIN转换为偶数数据信号DEV和奇数数据信号DOD的采样器电路。DEV和DOD信号包括响应于时钟信号HFCLK分别在串行数据信号DSIN的偶数和奇数比特周期中被采样的比特。偶数数据信号DEV和奇数数据信号DOD被提供至解串器电路202的输入。解串器电路202的示例性实施例在2011年7月19日发布的共同转让的美国专利7,982,639中被公开,该美国专利的全部内容通过引用被合并于此。
[0037] 图3图示了根据本发明的实施例的解串器电路202的示例。解串器电路202包括串进并出(SIPO)移位寄存器电路301-302、寄存器电路303-304、可变分频器电路305以及控制和存储逻辑电路306。SIPO移位寄存器电路301和302的每个包括被串联耦接在一起的5个触发器(FF)电路。每个寄存器电路303和304包括5个触发器(FF)电路。触发器电路是存储电路。
[0038] 时钟信号HFCLK被提供至SIPO移位寄存器电路301-302的每个中的5个触发器电路中的每个触发器电路的时钟输入以及被提供至可变分频器电路305的输入。由CDR电路201生成的偶数数据信号DEV和奇数数据信号DOD被相应地提供至SIPO移位寄存器电路301和302的输入。
[0039] 可变分频器电路305响应于时钟信号HFCLK生成周期性同步时钟信号RDCLK。可变分频器电路305将双沿时钟信号HFCLK的频率除以4以生成单沿时钟信号RDCLK的频率。可变分频器电路305使得时钟信号RDCLK的频率为时钟信号HFCLK的频率的四分之一。可变分频器电路305使得时钟信号RDCLK具有50%的占空比。时钟信号RDCLK也被称为低速时钟信号,并且时钟信号HFCLK也被称为高速时钟信号。解串器电路202针对RDCLK的每个上升沿执行到RDCLK时钟域上的8比特传送的同步对齐,如下面所描述的。
[0040] 解串器电路202具有串并转换器电路,该电路响应于时钟信号HFCLK将偶数和奇数数据信号DEV和DOD中的串行比特转换为并行数据信号DPRL中的并行比特。根据各种实施例,解串器电路202可以将数据信号DEV和DOD转换为4个、8个、16个、32个、64个或者128个并行数据信号DPRL。
[0041] 在图3的示例中,串并转换器电路包括SIPO移位寄存器电路301-302、寄存器电路303-304以及控制和存储逻辑电路306。SIPO移位寄存器电路301-302将数据信号DEV和DOD转换为10个并行数据信号DSP0-DSP9。偶数数据信号DEV被提供至SIPO移位寄存器电路301的数据输入,并且奇数数据信号DOD被提供至SIPO移位寄存器电路302的数据输入。
[0042] 由数据信号DEV所指示的比特响应于时钟信号HFCLK被串行移位至SIPO移位寄存器电路301中的5个触发器电路中。由数据信号DEV所指示的附加比特响应于时钟信号HFCLK的每个上升沿被串行移位至SIPO移位寄存器电路301中。存储在SIPO移位寄存器电路301中的5个触发器电路的输出处的信号被称为信号DSP0、DSP2、DSP4、DSP6和DSP8。信号DSP0、DSP2、DSP4、DSP6和DSP8指示从数据信号DEV接收的5个比特。信号DSP0、DSP2、DSP4、DSP6和DSP8中的每一个被提供至寄存器电路303中的5个触发器中的不同的一个触发器的数据输入,如图3所示。时钟信号RDCLK被提供至寄存器电路303中的5个触发器中的每一个触发器的时钟输入。寄存器电路303中的5个触发器为响应于时钟信号RDCLK的每个上升沿的单沿触发器。寄存器电路303中的5个触发器响应于时钟信号RDCLK中的每个上升沿将在它们的输出处的信号DSP0、DSP2、DSP4、DSP6和DSP8所指示的5个比特相应地存储在信号DPX0、DPX2、DPX4、DPX6和DPX8中。
[0043] 由数据信号DOD所指示的比特响应于时钟信号HFCLK被串行移位到SIPO移位寄存器电路302中的5个触发器电路中。由数据信号DOD所指示的附加比特响应于时钟信号HFCLK的每个上升沿被串行移位至SIPO移位寄存器电路302中。存储在SIPO移位寄存器电路302中的5个触发器电路的输出处的信号被称为信号DSP1、DSP3、DSP5、DSP7和DSP9。信号DSP1、DSP3、DSP5、DSP7和DSP9指示从数据信号DOD接收的5个比特。信号DSP1、DSP3、DSP5、DSP7和DSP9中的每一个被提供至寄存器电路304中的5个触发器中的不同的一个触发器的数据输入,如图3中所示。时钟信号RDCLK被提供至寄存器电路304中的5个触发器中的每一个触发器的时钟输入。寄存器电路304中的5个触发器为响应于时钟信号RDCLK的每个上升沿的单沿触发器。寄存器电路304中的5个触发器响应于时钟信号RDCLK的每个上升沿将在它们的输出处的信号DSP1、DSP3、DSP5、DSP7和DSP9所指示的5个比特相应地存储在信号DPX1、DPX3、DPX5、DPX7和DPX9中。
[0044] 当时钟信号RDCLK的频率是时钟信号HFCLK的频率的四分之一时,时钟信号RDCLK的每个周期具有与时钟信号HFCLK的四个周期相同的持续时间。因此,由信号DPX0所指示的比特是时钟信号RDCLK的前一个周期中的信号DPX8所指示的比特的重复,并且由信号DPX1所指示的比特是时钟信号RDCLK的前一个周期中的信号DPX9所指示的比特的重复。例如,如果数据信号DEV和DOD的数据速率为8Gbps,HFCLK为4GHz并且RDCLK为1GHz,则电路303-304响应于时钟信号RDCLK的每个上升沿在信号DPX2-DPX9中提供8个独特的比特。
[0045] 可变分频器305也基于周跳信号CYCSLP中的每个脉冲改变时钟信号RDCLK的周期和相位。响应于周跳信号CYCSLP中的每个脉冲,可变分频器电路305使时钟信号RDCLK的周期增大时钟信号HFCLK的一个周期,生成具有与时钟信号HFCLK的5个周期相同的持续时间的时钟信号RDCLK的一个拉长的周期。在时钟信号RDCLK的拉长的周期期间,在时钟信号RDCLK中的下一个上升沿之前,来自信号DEV的5个新的比特被串行移位到移位寄存器301中,并且来自信号DOD的5个新的比特被串行移位到移位寄存器302中。因此,在由时钟信号RDCLK的每个拉长的周期之后的信号DPX0-DPX9所指示的10个比特相对于由时钟信号RDCLK的前一个周期中的信号DPX0-DPX9所指示的10个比特而言是独特的。因而,由时钟信号RDCLK的每个拉长的周期之后的信号DPX0-DPX9所指示的10个比特不包含任何重复比特。
[0046] 信号DPX0-DPX9被提供至控制和存储逻辑电路306的输入。控制和存储逻辑电路306响应于时钟信号RDCLK基于信号DPX0-DPX9生成并行数据信号DPRL,如下所述。
[0047] 图4图示了根据本发明的实施例的控制和存储逻辑电路306的示例。控制和存储逻辑电路306包括解复用器电路401、寄存器电路402和计数器电路403。计数器电路403生成选择计数信号SCN。选择计数信号SCN被提供至解复用器电路401的选择输入。计数器电路403响应于时钟信号RDCLK的每个上升沿改变选择计数信号SCN的二进制值。
[0048] 寄存器电路303-304的10个输出数据信号DPX0-DPX9被提供至解复用器电路401的10个解复用输入。解复用器电路401生成包括例如并行输出数据信号DMX0-DMX9的10个并行输出数据信号的倍数。例如,解复用器电路401可以生成10、20、30、40、50等等个并行输出数据信号。解复用器电路401连续且循环地响应于选择计数信号SCN将由数据信号DPX0-DPX9所指示的比特提供至每个具有10个并行输出数据信号DMX0-DMX9等的连续组。
[0049] 作为示例,由数据信号DPX0-DPX9指示的第一组10个并行比特被相应地提供至输出数据信号DMX0-DMX9。由数据信号DPX0-DPX9指示的第二组10个并行比特被相应地提供至输出数据信号DMX10-DMX19。由数据信号DPX0-DPX9指示的第三组10个并行比特被相应地提供至输出数据信号DMX20-DMX29,并且依此类推直到信号DPX0-DPX9中的并行比特已被提供至解复用器电路401的所有并行输出数据信号为止。之后,由数据信号DPX0-DPX9指示的下一组10个并行比特被相应地提供至输出数据信号DMX0-DMX9,并且该过程按上述方式重复。
[0050] 解复用器电路401的并行输出数据信号DMX0-DMX9等被提供至寄存器电路402的输入。寄存器电路402包括响应于时钟信号RDCLK的每个上升沿存储解复用器电路401的并行输出数据信号DMX0-DMX9等的触发器。寄存器电路402还包括响应于时钟信号RDCLK的每个上升沿存储并行输出数据信号DPRL的触发器。寄存器电路402只将解复用器电路401的每组10个并行输出数据信号中的8个并行数据信号所指示的8个并行比特提供至并行输出数据信号DPRL。寄存器电路402不将从解复用器电路401的每组10个并行输出数据信号中的信号DPX0-DPX1接收的2个比特提供至并行输出数据信号DPRL。
[0051] 例如,寄存器电路402只将由并行数据信号DMX2-DMX9、DMX12-DMX19、DMX22-DMX29等所指示的并行比特提供至并行输出数据信号DPRL。由解复用器电路401的余下的并行输出数据信号DMX0-DMX1、DMX10-DMX11、DMX20-DMX21等所指示的比特不被提供给任意并行输出数据信号DPRL。因而,由并行输出数据信号DMX0-DMX1、DMX10-DMX11、DMX20-DMX21等所指示的比特被解串器电路202丢弃。电路306只将由并行数据信号DPX2-DPX9所指示的比特提供给并行输出数据信号DPRL。由另外两个并行数据信号DPX0-DPX1所指示的比特不被提供给任意并行输出数据信号DPRL。当时钟信号RDCLK的前一周期是时钟信号HFCLK的周期的四倍时,由并行数据信号DPX0-DPX1所指示的比特包含重复比特,并且因而没有新的比特被电路202丢弃。
[0052] 在周跳信号CYCSLP中的脉冲之后,时钟信号RDCLK的周期被拉长至时钟信号HFCLK的周期的五倍。当时钟信号RDCLK的周期是时钟信号HFCLK的周期的五倍时,相对于由时钟信号RDCLK的前一周期中的数据信号DPX0-DPX9所指示的比特,寄存器电路303-304在时钟信号RDCLK的下一个上升沿上生成并行数据信号DPX0-DPX9中的10个新的比特。因而,由并行数据信号DPX0-DPX1所指示的比特包含两个新的比特,这两个比特不是由时钟信号RDCLK的当前或前一周期中的数据信号DPX0-DPX9中的任意数据信号所指示的比特的重复。由并行数据信号DPX0-DPX1所指示的比特不被提供给任意并行输出数据信号DPRL,如上所述。因而,解串器电路202不响应于信号CYCSLP中的每个脉冲将由并行数据信号DPX0-DPX1所指示的两个新的比特提供给数据信号DPRL。因此,这两个比特被丢弃。因此,解串器电路202响应于信号CYCSLP中的每个脉冲将并行数据信号DPRL中的比特的位置偏移2个比特。
[0053] 再次参考图2,主时钟信号MSTCLK被提供至相位检测器电路203的第一输入。时钟信号RDCLK被提供至相位检测器电路203的第二输入。相位检测器电路203基于时钟信号MSTCLK与RDCLK之间的相位差生成两个数字相位检测信号UP和DN。当时钟信号MSTCLK的相位超前于时钟信号RDCLK的相位时,相位检测器电路203在时钟信号MSTCLK的每个周期期间生成相位检测信号UP中的逻辑高脉冲。当时钟信号MSTCLK的相位滞后于时钟信号RDCLK的相位时,相位检测器电路203在时钟信号MSTCLK的每个周期期间生成相位检测信号DN中的逻辑高脉冲。
[0054] 图5图示了根据本发明的实施例的控制电路204的示例。控制电路204包括UP采样器电路501、DN采样器电路502、计数器电路503、相位评估器电路504、判决偏移电路505和循环调节电路506。相位检测信号UP和DN被相应地提供至UP采样器电路501和DN采样器电路502的输入。周期性时钟信号ASCLK被提供至UP采样器电路501和DN采样器电路502的时钟输入。时钟信号ASCLK相对于主时钟信号MSTCLK是异步的。由相位评估器电路504所生成的重置信号RST被提供至UP采样器电路501、DN采样器电路502和计数器电路503的输入。UP采样器电路501生成数字计数信号UPCNT,并且DN采样器电路502生成数字计数信号DNCNT。
[0055] 图6A图示了根据本发明的实施例的UP采样器电路501的示例。UP采样器电路501包括寄存器电路601-602(例如触发器)和计数器电路603。如图6A中所示,相位检测信号UP被提供至寄存器电路601的输入,重置信号RST被提供至计数器电路603的重置输入,并且时钟信号ASCLK被提供至寄存器电路601-602和计数器电路603的时钟输入。寄存器601响应于时钟信号ASCLK中的每个上升沿将相位检测信号UP的值存储在信号UPA中。寄存器602响应于时钟信号ASCLK中的每个上升沿将信号UPA的值存储在信号UPB中。寄存器601-602是从相位检测信号UP中去除毛刺以生成信号UPB的亚稳硬化寄存器。
[0056] 计数器电路603响应于时钟信号ASCLK并且响应于信号UPB生成数字计数信号UPCNT。计数器电路603响应于重置信号RST中的每个上升沿将计数信号UPCNT的二进制值重置为0。计数器电路603响应于当信号UPB处于逻辑高状态时出现的时钟信号ASCLK的每个上升沿将计数信号UPCNT的二进制值增加1。当信号UPB处于逻辑低状态时,计数器电路603保持计数信号UPCNT的二进制值不变。
[0057] 图7A图示了当时钟信号MSTCLK的相位超前于时钟信号RDCLK的相位时针对图2和图5中所示的信号中的一些信号的示例性波形。图7A示出了针对时钟信号MSTCLK、RDCLK和ASCLK、相位检测信号UP和DN、计数信号UPCNT和计数信号DNCNT的示例性波形。在图7A的示例中,时钟信号MSTCLK和RDCLK具有相同频率,但时钟信号MSTCLK的相位超前于时钟信号RDCLK的相位。在图7A的示例中,相位检测器电路203生成相位检测信号UP中的逻辑高脉冲。
[0058] 相位检测信号UP中的每个逻辑高脉冲开始于当时钟信号RDCLK处于逻辑低状态时出现的时钟信号MSTCLK中的上升沿上。相位检测信号UP中的每个逻辑高脉冲结束于当时钟信号MSTCLK处于逻辑高状态时出现的时钟信号RDCLK中的上升沿上。当时钟信号ASCLK中的上升沿与信号UP中的逻辑高脉冲重合时,计数器电路603使计数信号UPCNT的二进制值从0增大为1,然后从1增大为2,如图7A中所示。在图7A中,信号DN保持在逻辑低状态,并且计数信号DNCNT的二进制值保持为0。
[0059] 图6B图示了根据本发明的实施例的DN采样器电路502的示例。DN采样器电路502包括寄存器电路611-612(例如触发器)和计数器电路613。如图6B所示,相位检测信号DN被提供至寄存器电路611的输入,重置信号RST被提供至计数器电路613的重置输入,并且时钟信号ASCLK被提供至寄存器611-612和计数器电路613的时钟输入。寄存器611响应于时钟信号ASCLK的每个上升沿存储相位检测信号DN的值以生成信号DNA。寄存器612响应于时钟信号ASCLK的每个上升沿存储信号DNA的值以生成信号DNB。寄存器611-612是从相位检测信号DN中去除毛刺以生成信号DNB的亚稳硬化寄存器。
[0060] 计数器电路613响应于时钟信号ASCLK并且响应于信号DNB生成数字计数信号DNCNT。计数器电路613响应于重置信号RST中的每个上升沿将计数信号DNCNT的二进制值重置为0。计数器电路613响应于当信号DNB处于逻辑高状态时出现的时钟信号ASCLK的每个上升沿将计数信号DNCNT的二进制值增加1。当信号DNB处于逻辑低状态时,计数器电路613保持计数信号DNCNT的二进制值不变。
[0061] 图7B图示了当时钟信号RDCLK的相位超前于时钟信号MSTCLK的相位时针对图2和图5中所示的信号中的一些信号的示例性波形。图7B示出了针对时钟信号MSTCLK、RDCLK和ASCLK、相位检测信号UP和DN、计数信号UPCNT和计数信号DNCNT的示例性波形。在图7B的示例中,时钟信号MSTCLK和RDCLK具有相同频率,但时钟信号RDCLK的相位超前于时钟信号MSTCLK的相位。在图7B的示例中,相位检测器电路203生成相位检测信号DN中的逻辑高脉冲。
[0062] 相位检测信号DN中的每个逻辑高脉冲开始于当时钟信号MSTCLK处于逻辑低状态时出现的时钟信号RDCLK中的上升沿上。相位检测信号DN中的每个逻辑高脉冲结束于当时钟信号RDCLK处于逻辑高状态时出现的时钟信号MSTCLK中的上升沿上。当时钟信号ASCLK中的上升沿与信号DN中的逻辑高脉冲重合时,计数器电路613使计数信号DNCNT的二进制值从0增大为1,然后从1增大为2,如图7B所示。在图7B中,信号UP保持在逻辑低状态,并且计数信号UPCNT的二进制值保持为0。
[0063] 再次参考图5,计数器电路503响应于时钟信号ASCLK生成数字计数信号SCNT。重置信号RST从相位评估器电路504被提供至计数器电路503。计数器电路503响应于重置信号RST中的每个上升沿将计数信号SCNT的二进制值重置为0。计数器电路503响应于时钟信号ASCLK中的每个上升沿使计数信号SCNT的二进制值增加1。计数信号SCNT的二进制值指示从重置信号RST中的上一个上升沿开始已出现过的时钟信号ASCLK中的上升沿的数目。
[0064] 计数信号SCNT、UPCNT和DNCNT被提供至相位评估器电路504的输入。相位评估器电路504接收或存储正整数S。该数S表示被用于确定时钟信号MSTCLK与RDCLK之间的相位偏移的UP和DN信号的样本的最小数目。该数S还指示在相位评估器电路504基于UPCNT或DNCNT信号更新其数字输出信号PHCP之前出现的时钟信号ASCLK的周期的最小数目。当计数信号SCNT的二进制值等于或大于数S时,相位评估器电路504基于UPCNT信号确定上偏移值或者基于DNCNT信号确定下偏移值。
[0065] 如果当计数信号SCNT的二进制值等于数S时UPCNT信号具有大于阈值的非零二进制值,则相位评估器电路504将UPCNT信号的二进制值除以SCNT信号的二进制值以生成上偏移值。上偏移值指示信号UP处于逻辑高状态的时钟信号ASCLK的上升沿占时钟信号ASCLK的S个上升沿的比例分数。然后,相位评估器电路504使其输出信号PHCP的二进制值指示上偏移值。阈值等于被选择以滤出相位噪声的最小数字。
[0066] 如果当计数信号SCNT的二进制值等于数S时DNCNT信号具有大于阈值的非零二进制值,则相位评估器电路504将DNCNT信号的二进制值除以SCNT信号的二进制值以生成下偏移值。下偏移值指示信号DN处于逻辑高状态的时钟信号ASCLK的上升沿占时钟信号ASCLK的S个上升沿的比例分数。然后,相位评估器电路504使其输出信号PHCP的二进制值指示下偏移值。PHCP信号的二进制值可以例如为负值以指示下偏移值并且可以为正值以指示上偏移值。在实施例中,信号PHCP的二进制值可以指示与分数的上偏移或下偏移值相对应的百分比数。
[0067] 如果当计数信号SCNT的二进制值等于数S时UPCNT信号和DNCNT信号都具有小于阈值的二进制值,则相位评估器电路504使其输出信号PHCP的二进制值等于0。在计数信号SCNT等于数S之后,相位评估器电路504基于计数信号UPCNT和/或DNCNT更新其输出信号PHCP,然后生成重置信号RST中的逻辑高脉冲。计数器电路603、613和503响应于重置信号RST中的每个逻辑高脉冲相应地将计数信号UPCNT、DNCNT和SCNT的二进制值重置为0。
[0068] 信号PHCP被提供至判决偏移电路505的输入。根据这里所描述的一些实施例,例如,关于图13-14,一个或多个字边界信号WORDBD被提供至判决偏移电路505的附加的输入,如图5所示。根据这里所描述的其它实施例,例如,关于图10和图12,字边界信号WORDBD不被提供至判决偏移电路505的输入。
[0069] 在其中字边界信号WORDBD不被提供至判决偏移电路505的输入的实施例中,判决偏移电路505只基于相位评估器电路504的输出信号PHCP的值生成判决偏移信号DCOF。判决偏移电路505将由信号PHCP所指示的上或下偏移值转换为正整数V。然后,判决偏移电路505使判决偏移信号DCOF指示数V。如果信号PHCP指示上偏移值U(例如正数),则判决偏移电路505使得数V等于上偏移值U乘以由解串器电路202所生成的并行数据信号DPRL的数M(即V=U×M)。如果信号PHCP指示下偏移值D(例如负数),则判决偏移电路505基于下偏移值D和由解串器电路202所生成的并行数据信号DPRL的数M生成数V,使得V=(1+D)×M。
[0070] 例如,如果解串器电路202生成针对16位数据字的16个并行信号DPRL,并且信号PHCP指示上偏移值1/4,则判决偏移电路505生成判决偏移信号DCOF中的值1/4×16=4。作为另一示例,如果解串器电路202生成16个并行信号DPRL,并且信号PHCP指示下偏移值-3/8,则判决偏移电路505生成基于(1-3/8)×16=10的判决偏移信号DCOF中的值10。
[0071] 判决偏移信号DCOF被提供至循环调节电路506的输入。循环调节电路506基于由判决偏移信号DCOF所指示的数V生成其数字输出信号CYCSLP中的脉冲。在实施例中,循环调节电路506生成信号CYCSLP中的V/2个逻辑高脉冲。每个逻辑高脉冲包括信号CYCSLP中的上升沿和之后的信号CYCSLP中的下降沿。在该实施例中,信号CYCSLP中所生成的逻辑高脉冲的数目等于由判决偏移信号DCOF所指示的数V除以2。在一些实施例中,循环调节电路506使信号CYCSLP中所生成的每个脉冲被分隔开最小的时间量,该时间量取决于可变分频器电路305对信号CYCSLP中的脉冲做出响应的时间量。
[0072] 再次参考图3,信号CYCSLP被提供至可变分频器电路305的输入。如上所述,可变分频器电路305将时钟信号HFCLK的频率除以4以生成时钟信号RDCLK的频率。响应于周跳信号CYCSLP中的每个脉冲,时钟信号RDCLK的一个周期被拉长为时钟信号HFCLK的周期的5倍,导致对时钟信号RDCLK的相位的调节。
[0073] 响应于指示时钟信号RDCLK与MSTCLK之间的相位差大于预定的相位差的UP和DN相位检测信号,控制电路204生成周跳信号CYCSLP中的一个或多个脉冲以调节时钟信号RDCLK的相位。上述相位评估器电路504所使用的阈值基于预定的相位差。控制电路204继续生成周跳信号CYCSLP中的脉冲,直到UP和DN相位检测信号指示时钟信号RDCLK与MSTCLK的相位之间的差小于预定的相位差为止。
[0074] 随着时钟信号RDCLK和MSTCLK的相位移动得更加接近于对齐,UP信号中的脉冲或者DN信号中的脉冲变得更窄,直到UPCNT信号或DNCNT信号在S个样本之后相应地小于阈值为止。当UPCNT信号和DNCNT信号在S个样本之后小于阈值时,控制电路204不生成周跳信号CYCSLP中的脉冲,并且可变分频器电路305使得时钟信号RDCLK的相位和频率保持不变。
[0075] 接收器电路101、103、105和107中的每个接收器电路生成在相位偏移内与主时钟信号MSTCLK对齐的同步时钟信号RDCLK。因此,由4组并行数据信号DPINA、DPINB、DPINC和DPIND中的每一组并行数据信号所指示的数据比特没有扭斜地彼此对齐,如下面将更详细描述的。
[0076] 在图3中所示并且关于图3所描述的实施例中,解串器电路202响应于信号CYCSLP中的每个脉冲从在数据信号DEV和DOD中接收到的一组10个比特中丢弃两个比特。因而,响应于信号CYCSLP中的每个脉冲,解串器电路202只将在数据信号DEC和DOD中接收到的一组10个比特中的8个比特提供给并行数据信号DPRL,使得由并行数据信号DPRL所指示的每个数据字中的比特的位置被调节两个比特。
[0077] 作为示例,如果数据信号DEV和DOD包含8比特的数据字,其中每个数据字中的比特被编号为0-7(即,比特0是每个数据字中的第一个比特,比特1是每个数据字中的第二个比特,等等),则解串器电路202可以响应于信号CYCSLP中的脉冲将8个并行数据信号DPRL0-DPRL7(即信号DPRL)中的比特的字边界从比特6,7,0、1、2、3、4、5相应地调节为比特0、1、2、3、4、5、6、7。作为另一示例,如果数据信号DEV和DOD包含8比特的数据字,其中每个数据字中的比特被编号为0-7,则解串器电路202可以响应于信号CYCSLP中的两个脉冲将8个并行数据信号DPRL0-DPRL7中的比特的字边界从比特4、5、6、7、0、1、2、3调节为比特0、1、2、3、4、5、
6、7。图3的实施例可以例如被用在接收具有4比特、8比特、16比特、32比特、64比特或128比特的数据字的数据信号的接收器电路中。
[0078] 根据解串器电路202的其它实施例,一个、两个、三个或者更多个的任意数量的比特响应于信号CYCSLP中的每个脉冲从数据信号DEV和DOD中接收到的每个N比特数据字中被丢弃以调节并行数据信号DPRL中的比特的字边界。作为不意在进行限制的具体示例,如果串行输入数据分别具有8比特、16比特或者32比特的数据字,则解串器电路202可以响应于信号CYCSLP中的每个脉冲只将数据信号DEV和DOD中接收到的9个比特中的8个比特、17个比特中的16个比特或者33个比特中的32个比特提供给并行数据信号DPRL。根据解串器电路202的可替换实施例,一个、两个、三个或者更多个的任意数量的重复比特响应于信号CYCSLP中的每个脉冲被添加到数据信号DEV和DOD中接收到的每个N比特数据字中,以调节并行数据信号DPRL中的比特的字边界。
[0079] 图8A图示了根据本发明的实施例的字对齐电路800的示例。字对齐电路800是图2中所示的字对齐电路205的示例。字对齐电路800包括图案检测器电路801和桶形移位器电路802。在图8A的实施例中,并行数据信号DPRL从解串器电路202的输出被提供至图案检测器电路801的输入以及桶形移位器电路802的输入。主时钟信号MSTCLK被提供至图案检测器电路801和桶形移位器电路802的输入。字边界图案信号WBP被提供至图案检测器电路801的输入。
[0080] 图案检测器电路801生成字边界信号WORDBD,该信号指示在并行数据信号DPRL中每个数据字开始的比特位置。桶形移位器电路802生成并行数据信号DPIN。桶形移位器电路802生成等于并行数据信号DPRL中的相应比特的值的并行数据信号DPIN中的比特。桶形移位器电路802可配置为基于信号WORDBD对并行数据信号DPRL中接收到的比特的位置进行移位,以使得每个数据字中的第一个比特在并行数据信号DPIN中的第一个数据信号中(即在信号DPIN0中)并且每个数据字中的连续比特相应地在并行数据信号DPIN中的连续的数据信号(即信号DPIN1、DPIN2等)中。
[0081] 图8B图示了根据本发明的可替换实施例的字对齐电路820的另一示例。字对齐电路820是图2中所示的字对齐电路205的另一示例。字对齐电路820包括图案检测器电路821和桶形移位器电路822。并行数据信号DPRL从解串器电路202的输出被提供至桶形移位器电路822的输入。主时钟信号MSTCLK被提供至图案检测器电路821和桶形移位器电路822的输入。字边界图案信号WBP被提供至图案检测器电路821的输入。
[0082] 并行数据信号DPIN被提供至图案检测器电路821的输入。图案检测器电路821生成字边界信号WORDBD,该信号指示在并行数据信号DPIN中每个数据字开始的比特位置(即字边界)。图案检测器电路821执行对信号DPIN中的字边界的比特位置的串行搜索。
[0083] 桶形移位器电路822生成并行数据信号DPIN。桶形移位器电路822生成等于并行数据信号DPRL中的相应比特的值的并行数据信号DPIN中的比特。桶形移位器电路822可配置为基于信号WORDBD对并行数据信号DPRL中接收到的比特的位置进行移位,以使得每个数据字中的第一个比特在并行数据信号DPIN中的第一个数据信号中并且每个数据字中的连续比特相应地在并行数据信号DPIN中的连续的数据信号中。
[0084] 图9图示了根据本发明的实施例的图案检测器电路900的实施例。图案检测器电路900是图案检测器电路801和图案检测器电路821的示例。图案检测器电路900包括控制逻辑电路950、AND逻辑门电路910和比较器电路901、911和921。如果解串器电路202生成针对信号DSIN中接收到的M比特的数据字的M个并行数据信号DPRL,则图案检测器电路900包括M组比较器电路901、911、921等。此外,图案检测器电路900包括M组比较器电路中的每组比较器电路中的M个比较器电路,包括M个比较器电路901A、901B、901C等、M个比较器电路911A、
911B、911C等和M个比较器电路921A、921B、921C等。图案检测器电路900还包括M个AND逻辑门电路910A、910B、910C等。
[0085] M个并行数据信号DP0、DP1、DP2、DP3、DP4……DP(M-1)被提供至图案检测器电路900的输入。在图案检测器电路801中,并行数据信号DP0、DP1、DP2、DP3、DP4……DP(M-1)是并行数据信号DPRL。在图案检测器电路821中,并行数据信号DP0、DP1、DP2、DP3、DP4……DP(M-1)是并行数据信号DPIN。M个字边界图案信号WBP0、WBP1、WBP2、WBP3、WBP4……WBP(M-1)(即信号WBP)被提供至图案检测器电路900的输入。
[0086] 比较器901分别将并行数据信号DP0、DP1、DP2、DP3、DP4……DP(M-1)与字边界图案信号WBP0、WBP1、WBP2、WBP3、WBP4……WBP(M-1)进行比较以生成比较信号CPA0、CPA1、CPA2、CPA3、CPA4……CPA(M-1)。比较器911分别将并行数据信号DP1、DP2、DP3、DP4……DP(M-1)、DP0与字边界图案信号WBP0、WBP1、WBP2、WBP3……WBP(M-2)、WBP(M-1)进行比较以生成比较信号CPB0、CPB1、CPB2、CPB3……CPB(M-2)、CPB(M-1)。比较器921分别将并行数据信号DP2、DP3、DP4……DP(M-1)、DP0、DP1与字边界图案信号WBP0、WBP1、WBP2、WBP3、WBP4……WBP(M-3)、WBP(M-2)、WBP(M-1)进行比较以生成比较信号CPC0、CPC1、CPC2……CPB(M-3)、CPB(M-
2)、CPB(M-1)。
[0087] AND逻辑门电路910A、910B、910C等通过分别对输入信号CPA0-CPA(M-1)、CPB0-CPB(M-1)、CPC0-CPC(M-1)等执行AND逻辑函数来生成数字输出信号PT0、PT1、PT2等。控制逻辑电路950基于AND逻辑门电路910A、910B、910C等的数字输出信号PT0、PT1、PT2等生成字边界信号WORDBD。
[0088] 各种串行数据信号通信协议使用比表示正被传送的数据所需要的最小数目多的比特。额外的比特包括被用于指示用于同步的字对齐边界的协议比特。字边界图案信号WBP具有被设置为预定的数字图案的固定的值。字边界图案信号WBP的预定的数字图案被选择为匹配指示数据比特流中的字边界的协议比特。图案检测器电路900将信号WBP0-WBP(M-1)与开始于并行数据信号DP0-DP(M-1)中的M个比特位置中的每个比特位置处的比特进行比较以确定字边界的比特位置。字边界指示比特流中的每个数据字开始的比特位置。M是并行数据信号DPRL的数目和每个数据字中的比特的数目。
[0089] 控制逻辑电路950基于信号PT0、PT1、PT2等确定字边界。图案检测器电路900只使得AND逻辑门910的输出信号PT0、PT1、PT2等中的一个输出信号处于逻辑高状态。如果信号PT0处于逻辑高状态,则字边界开始于与信号DP0相对应的比特位置。如果信号PT1处于逻辑高状态,则字边界开始于与信号DP1相对应的比特位置。如果信号PT2处于逻辑高状态,则字边界开始于与信号DP2相对应的比特位置。如果其它AND逻辑门910中的一个的输出信号处于逻辑高状态,则字边界开始于由被提供给相应的一组比较器中的第一比较器的相应的数据信号DP所指示的比特位置。控制逻辑电路950生成字边界信号WORDBD。控制逻辑电路950使得字边界信号WORDBD的数字值指示字边界开始的并行数据信号DP0-DP(M-1)中的比特位置。
[0090] 图10图示了根据本发明的实施例的桶形移位器电路1000的示例。桶形移位器电路1000是图8A中的桶形移位器电路802的示例。桶形移位器电路1000也是图8B中的桶形移位器电路822的示例。桶形移位器电路1000包括D触发器电路1001-1007、多路复用器电路
1011-1014和D触发器电路1021-1024。
[0091] 在图10的实施例中,解串器电路202生成指示4比特的数据字的4个数据信号DPRL0-DPRL3。信号DPRL0指示从串行数据信号接收的第一个比特(即最旧的比特),信号DPRL1指示从串行数据信号接收的第二个比特,信号DPRL2指示从串行数据信号接收的第三个比特,并且信号DPRL3指示从串行数据信号接收的第四个比特(即最近接收的比特)。数据信号DPRL3、DPRL2、DPRL1和DPRL0被相应地提供至触发器电路1001、1002、1003和1004的D输入。主时钟信号MSTCLK被提供至触发器电路1001-1007和1021-1024中的每一个触发器电路的时钟输入。触发器电路1001、1002、1003和1004响应于时钟信号MSTCLK的每个上升沿将在它们的Q输出处的数据信号DPRL3、DPRL2、DPRL1和DPRL0的值相应地存储在数据信号DQ3、DQ2、DQ1和DQ0中。
[0092] 数据信号DQ3、DQ2和DQ1被相应地提供至触发器电路1005、1006和1007的D输入。触发器电路1005、1006和1007响应于时钟信号MSTCLK的每个上升沿将在它们的Q输出处的数据信号DQ3、DQ2和DQ1的值相应地存储在数据信号DQ6、DQ5和DQ4中。
[0093] 数据信号DQ3、DQ2、DQ1和DQ0被相应地提供至多路复用器电路1011的0、3、2和1多路复用输入。数据信号DQ2、DQ1、DQ0和DQ6被相应地提供至多路复用器电路1012的0、3、2和1多路复用输入。数据信号DQ1、DQ0、DQ6和DQ5被相应地提供至多路复用器电路1013的0、3、2和1多路复用输入。数据信号DQ0、DQ6、DQ5和DQ4被相应地提供至多路复用器电路1014的0、3、2和1多路复用输入。字边界信号WORDBD被提供至多路复用器电路1011-1014中的每个多路复用器电路的选择输入。
[0094] 多路复用器电路1011-1014基于WORDBD信号的值和在它们的多路复用输入处的信号在它们的输出处相应地生成数据信号Z3、Z2、Z1和Z0。数据信号Z3、Z2、Z1和Z0被相应地提供至触发器电路1021-1024的D输入。触发器电路1021、1022、1023和1024响应于时钟信号MSTCLK的每个上升沿将在它们的Q输出处的数据信号Z3、Z2、Z1和Z0的值相应地存储在数据信号DPIN3、DPIN2、DPIN1和DPIN0中。
[0095] 如果信号WORDBD的二进制值等于0,指示字边界开始于比特位置0,则多路复用器电路1011-1014将数据信号DQ3、DQ2、DQ1和DQ0的值相应地提供给信号Z3、Z2、Z1和Z0。
[0096] 如果字边界开始于比特位置1、2或3,则桶形移位器电路1000将数据信号DPIN3、DPIN2、DPIN1和DPIN0中的比特的位置相对于数据信号DPRL3、DPRL2、DPRL1和DPRL0中的比特的位置进行调节。例如,如果信号WORDBD的二进制值等于1,指示字边界开始于数据信号DPRL1中的比特位置1,则多路复用器电路1011-1014将数据信号DQ0、DQ6、DQ5和DQ4的值相应地提供给信号Z3、Z2、Z1和Z0。因此,数据信号DPIN0-DPIN3中的每个比特的比特位置相对于数据信号DPRL0-DPRL3中的等效比特偏移一个比特以将数据信号DPIN0中的每个4比特的数据字的第一个比特对齐。
[0097] 如果信号WORDBD的二进制值等于2,指示字边界开始于信号DPRL2中的比特位置2,则多路复用器电路1011-1014将数据信号DQ1、DQ0、DQ6和DQ5的值相应地提供给信号Z3、Z2、Z1和Z0。因此,数据信号DPIN0-DPIN3中的每个比特的比特位置相对于数据信号DPRL0-DPRL3中的等效比特偏移两个比特以将数据信号DPIN0中的每个4比特的数据字的第一个比特对齐。
[0098] 如果信号WORDBD的二进制值等于3,指示字边界开始于信号DPRL3中的比特位置3,则多路复用器电路1011-1014将数据信号DQ2、DQ1、DQ0和DQ6的值相应地提供给信号Z3、Z2、Z1和Z0。因此,数据信号DPIN0-DPIN3中的每个比特的比特位置相对于数据信号DPRL0-DPRL3中的等效比特偏移三个比特以将数据信号DPIN0中的每个4比特的数据字的第一个比特对齐。
[0099] 图11和12图示了根据本发明的可替换实施例的桶形移位器电路的另一示例。图11-12的桶形移位器电路是图8A中的桶形移位器电路802的示例。图11-12的桶形移位器电路也是图8B中的桶形移位器电路822的示例。
[0100] 图11图示了根据本发明的实施例的图8A和8B的桶形移位器电路中的存储电路1100的示例。存储电路1100包括16个D触发器电路1101和15个D触发器电路1102。在图11的实施例中,解串器电路202生成包含16比特的数据字的16个并行数据输出信号DPRL。在图11中,并行数据信号DPRL被称为数据信号DPRL0-DPRL15。信号DPRL0指示从串行数据信号接收的第一个比特(即最旧的比特),信号DPRL1-DPRL14指示从串行数据信号接收的相应的第2到第15个比特,并且信号DPRL15指示最近从串行数据信号接收的比特。
[0101] 数据信号DPRL0-DPRL15被提供至16个触发器电路1101的D输入。主时钟信号被提供至31个触发器电路1101和1102中的每个触发器电路的时钟输入。触发器电路1101-1102是单沿触发器。触发器电路1101响应于时钟信号MSTCLK的每个上升沿将在它们的Q输出处的数据信号DPRL0-DPRL15相应地存储在数据信号DQ0-DQ15中。数据信号DQ1-DQ15被提供至15个触发器电路1102的D输入。触发器电路1102响应于时钟信号MSTCLK的每个上升沿将在它们的Q输出处的数据信号DQ1-DQ15相应地存储在数据信号DQ16-DQ30中。
[0102] 图12图示了根据本发明的实施例的选择器电路1200的示例。图11-12的桶形移位器电路包括存储电路1100和选择器电路1200。选择器电路1200包括16个多路复用器电路1201-1216和16个D触发器电路1221-1236。31个数据信号DQ0-DQ30中的不同的一组12个数据信号被提供至16个多路复用器电路1201-1216中的每个多路复用器电路的12个多路复用输入,如图12所示。主时钟信号MSTCLK被提供至每个触发器电路1221-1236的时钟输入。触发器电路1221-1236是单沿触发器。字边界信号WORDBD被提供至多路复用器电路1201-1216中的每个多路复用器电路的选择输入。
[0103] 多路复用器电路1201-1216在它们的输出处相应地生成数据信号Z0-Z15。多路复用器电路1201-1216中的每个多路复用器电路基于字边界信号WORDBD将在其12个多路复用输入处的数据信号中的一个数据信号的值提供至其输出,作为数据信号Z0-Z15中的相应的一个数据信号。触发器电路1221-1236响应于时钟信号MSTCLK的每个上升沿将在它们的Q输出处的数据信号Z0-Z15的值相应地存储在数据信号DPIN0-DPIN15中。在图12的实施例中,数据信号DPIN0-DPIN15对应于图2中所示的数据信号DPIN。
[0104] 选择器电路1200可配置为将数据信号DPRL0-DPRL15中接收到的比特的位置偏移0、1、2、3、4、5、6、7、8、9、10或11个比特以对齐数据信号DPIN0中的每个16比特的数据字的第一个比特。选择器电路1200可配置为将数据信号DPRL0-DPRL15中接收到的比特的位置偏移最大的11个比特以生成数据信号DPIN0-DPIN15中的比特。选择器电路1200可以被用在接收器电路200的实施例中,其中并行数据信号DPRL中的数据字的字边界相对于第一并行数据信号DPRL0具有多达11个比特的最大偏移。
[0105] 如果信号WORDBD的二进制值指示字边界开始于信号DPRL0中的比特位置0,则多路复用器电路1201-1216将数据信号DQ0-DQ15的值相应地提供给信号Z0-Z15。因此,数据信号DPIN0-DPIN15中的比特的比特位置分别与数据信号DPRL0-DPRL15中接收到的等效比特的比特位置相同。
[0106] 如果字边界开始于比特位置1-11中的一个比特位置,则选择器电路1200将数据信号DPIN0-DPIN15中的比特的位置相对于数据信号DPRL0-DPRL15中的比特的位置进行调节。例如,如果信号WORDBD的二进制值指示字边界开始于信号DPRL1中的比特位置1,则多路复用器电路1201-1216将数据信号DQ16-DQ30和DQ0的值相应地提供给信号Z0-Z15。因此,数据信号DPIN0-DPIN15中的每个比特的比特位置相对于数据信号DPRL0-DPRL15中的等效比特偏移一个比特以将数据信号DPIN0中的每个16比特的数据字的第一个比特对齐。
[0107] 如果信号WORDBD的二进制值指示字边界开始于信号DPRL2中的比特位置2,则多路复用器电路1201-1216将数据信号DQ17-DQ30和DQ0-DQ1的值相应地提供给信号Z0-Z15。因此,数据信号DPIN0-DPIN15中的每个比特的比特位置相对于数据信号DPRL0-DPRL15中的等效比特偏移两个比特以将数据信号DPIN0中的每个16比特的数据字的第一个比特对齐。
[0108] 如果信号WORDBD的二进制值指示字边界开始于信号DPRL3-DPRL11中的相应的一个信号中的比特位置3、4、5、6、7、8、9、10或11,则选择器电路1200将数据信号DPIN中的每个比特的比特位置相对于数据信号DPRL中的等效比特相应地偏移3、4、5、6、7、8、9、10或11个比特以将数据信号DPIN0中的每个16比特的数据字的第一个比特对齐。选择器电路1200基于指示字边界开始于相应的比特位置3、4、5、6、7、8、9、10或11的信号WORDBD将一组16个数据信号DQ18-DQ30和DQ0-DQ2、DQ19-DQ30和DQ0-DQ3、DQ20-DQ30和DQ0-DQ4、DQ21-DQ30和DQ0-DQ5、DQ22-DQ30和DQ0-DQ6、DQ23-DQ30和DQ0-DQ7、DQ24-DQ30和DQ0-DQ8、DQ25-DQ30和DQ0-DQ9或者DQ26-DQ30和DQ0-DQ10的值相应地提供给16个数据信号DPIN0-DPIN15。
[0109] 图11和13图示了根据本发明的另一可替换实施例的桶形移位器电路的另一示例。图11和13的桶形移位器电路是图8A中的桶形移位器电路802的示例。图11和13的桶形移位器电路也是图8B中的桶形移位器电路822的示例。
[0110] 图13图示了根据本发明的可替换实施例的选择器电路1300的另一示例。图11和13的桶形移位器电路包括存储电路1100和选择器电路1300。选择器电路1300包括16个多路复用器电路1301-1316和16个D触发器电路1321-1336。由存储电路1100生成的16个数据信号DQ0-DQ30中4个数据信号被提供至16个多路复用器电路1301-1316中的每个多路复用器电路的4个多路复用输入,如图13所示。主时钟信号MSTCLK被提供至触发器电路1321-1336的每个的时钟输入。触发器电路1321-1336是单沿触发器。字边界信号WORDBD被提供至多路复用器电路1301-1316中的每个多路复用器电路的选择输入。
[0111] 多路复用器电路1301-1316在它们的输出处相应地生成数据信号Z0-Z15。多路复用器电路1301-1316中的每个多路复用器电路基于字边界信号WORDBD将在其4个多路复用输入处的4个数据信号中的一个数据信号的值提供至其输出,作为数据信号Z0-Z15中的相应的一个数据信号。触发器电路1321-1336响应于时钟信号MSTCLK的每个上升沿将在它们的Q输出处的数据信号Z0-Z15的值相应地存储在数据信号DPIN0-DPIN15中。在图13的实施例中,数据信号DPIN0-DPIN15对应于图2中所示的数据信号DPIN。
[0112] 选择器电路1300可配置为将数据信号DPRL0-DPRL15中接收到的比特的位置偏移0、3、6或9个比特以对齐数据信号DPIN0中的每个16比特的数据字的第一个比特。选择器电路1300可配置为将数据信号DPRL0-DPRL15中接收到的比特的位置偏移最大的9个比特以生成数据信号DPIN0-DPIN15中的比特。选择器电路1300被用在接收器电路200的实施例中,其中并行数据信号DPRL中的数据字的字边界在响应于信号WORDBD被解串器电路202和控制电路204调节之后相对于第一并行数据信号DPRL0具有0、3、6或9个比特的偏移,如下所述。
[0113] 如果信号WORDBD的二进制值指示字边界开始于信号DPRL0中的比特位置0,则多路复用器电路1301-1316将数据信号DQ0-DQ15的值相应地提供给信号Z0-Z15。因此,数据信号DPIN0-DPIN15中的比特的比特位置分别与数据信号DPRL0-DPRL15中接收到的等效比特的比特位置相同。
[0114] 如果字边界开始于比特位置3、6或9,则选择器电路1300将数据信号DPIN0-DPIN15中的比特的位置相对于数据信号DPRL0-DPRL15中的比特的位置进行调节。例如,如果信号WORDBD的二进制值指示字边界开始于信号DPRL3中的比特位置3,则多路复用器电路1301-1316将数据信号DQ18-DQ30和DQ0-DQ2的值相应地提供给信号Z0-Z15。因此,数据信号DPIN0-DPIN15中的每个比特的比特位置相对于数据信号DPRL0-DPRL15中的等效比特偏移三个比特以将数据信号DPIN0中的每个16比特的数据字的第一个比特对齐。
[0115] 如果信号WORDBD的二进制值指示字边界开始于信号DPRL6中的比特位置6,则多路复用器电路1301-1316将数据信号DQ21-DQ30和DQ0-DQ5的值相应地提供给信号Z0-Z15。因此,数据信号DPIN0-DPIN15中的每个比特的比特位置相对于数据信号DPRL0-DPRL15中的等效比特偏移6个比特以将数据信号DPIN0中的每个16比特的数据字的第一个比特对齐。
[0116] 如果信号WORDBD的二进制值指示字边界开始于信号DPRL9中的比特位置9,则多路复用器电路1301-1316将数据信号DQ24-DQ30和DQ0-DQ8的值相应地提供给信号Z0-Z15。因此,数据信号DPIN0-DPIN15中的每个比特的比特位置相对于数据信号DPRL0-DPRL15中的等效比特偏移9个比特以将数据信号DPIN0中的每个16比特的数据字的第一个比特对齐。
[0117] 多路复用器电路1301-1316中的每个多路复用器的多路复用输入处的四个并行数据信号与总共16个并行数据信号DPRL中的10个并行数据信号的范围内的每第三个并行数据信号相对应。因而,多路复用器电路1301-1316的每个均具有3个比特的粒度。根据附加实施例,桶形移位器电路802和822可以包括只接收每隔一个并行数据信号、只接收每第四个并行数据信号、只接收每第五个并行数据信号等的多路复用器电路,分别对应于2个比特、4个比特、5个比特等的粒度。
[0118] 图14图示了根据本发明的实施例的桶形移位器电路1400的示例。桶形移位器电路1400是图8A中的桶形移位器电路802的示例。桶形移位器电路1400也是图8B中的桶形移位器电路822的示例。桶形移位器电路1400包括D触发器电路1401-1406、多路复用器电路
1411-1414和D触发器电路1421-1424。
[0119] 在图14的实施例中,解串器电路202生成指示4比特的数据字的4个数据信号DPRL0-DPRL3。数据信号DPRL3、DPRL2、DPRL1和DPRL0被相应地提供至触发器电路1401、1402、1403和1404的D输入。主时钟信号MSTCLK被提供至触发器电路1401-1406和1421-1424中的每个触发器电路的时钟输入。触发器电路1401-1406和1421-1424是单沿触发器。触发器电路1401-1404响应于时钟信号MSTCLK的每个上升沿分别将在它们的Q输出处的数据信号DPRL3-DPRL0的值存储在数据信号DQ3-DQ0中。
[0120] 数据信号DQ3和DQ2被相应地提供至触发器电路1405和1406的D输入。触发器电路1405和1406响应于时钟信号MSTCLK的每个上升沿分别将在它们的Q输出处的数据信号DQ3和DQ2的值存储在数据信号DQ5和DQ4中。
[0121] 数据信号DQ3和DQ1被相应地提供至多路复用器电路1411的0和1多路复用输入。数据信号DQ2和DQ0被相应地提供至多路复用器电路1412的0和1多路复用输入。数据信号DQ1和DQ5被相应地提供至多路复用器电路1413的0和1多路复用输入。数据信号DQ0和DQ4被相应地提供至多路复用器电路1414的0和1多路复用输入。在图14的实施例中,图案检测器电路生成被提供至多路复用器电路1411-1414中的每个多路复用器电路的选择输入的单个字边界信号WORDBD。
[0122] 多路复用器电路1411-1414基于WORDBD信号的值和在它们的多路复用输入处的信号在它们的输出处相应地生成数据信号Z3、Z2、Z1和Z0。数据信号Z3、Z2、Z1和Z0被相应地提供至触发器电路1421、1422、1423和1424的D输入。触发器电路1421-1424响应于时钟信号MSTCLK的每个上升沿分别将在它们的Q输出处的数据信号Z3、Z2、Z1和Z0的值存储在信号DPIN3、DPIN2、DPIN1和DPIN0中。
[0123] 如果信号WORDBD等于0,指示字边界开始于比特位置0,则多路复用器电路1411-1414将数据信号DQ3、DQ2、DQ1和DQ0的值相应地提供给信号Z3、Z2、Z1和Z0。如果信号WORDBD等于1,指示字边界开始于数据信号DPRL2中的比特位置2,则多路复用器电路1411-1414将数据信号DQ1、DQ0、DQ5和DQ4的值相应地提供给信号Z3、Z2、Z1和Z0。因此,数据信号DPIN0-DPIN3中的每个比特的比特位置相对于数据信号DPRL0-DPRL3中的等效比特偏移两个比特以将数据信号DPIN0中的每个4比特的数据字的第一个比特对齐。因而,如果字边界开始于比特位置2,则桶形移位器电路1400将数据信号DPIN3、DPIN2、DPIN1和DPIN0中的比特的位置相对于数据信号DPRL3、DPRL2、DPRL1和DPRL0中的比特的位置调节2个比特。
[0124] 再次参考图5,如果字对齐电路205中的桶形移位器电路包括选择器电路1300或1400,则多个(或单个)字边界信号WORDBD被提供至判决偏移电路505的输入。根据其它实施例,如果字对齐电路205中的桶形移位器电路包括具有只接收每第四个并行数据信号、只接收每第五个并行数据信号等的多路复用器电路的选择器电路,则字边界信号WORDBD被提供至判决偏移电路505的输入。
[0125] 在其中字边界信号WORDBD被提供至判决偏移电路505的输入的实施例中,判决偏移电路505基于相位评估器电路504的输出信号PHCP的值并且基于字边界信号WORDBD生成判决偏移信号DCOF。判决偏移电路505将信号PHCP所指示的上或下偏移值转换为正整数V,如以上关于图5所描述的。然后,判决偏移电路505基于正整数V、如字边界信号WORDBD所指示的并行数据信号中的每个数据字开始的比特位置以及桶形移位器电路中的多路复用器电路的粒度生成比特偏移值。
[0126] 判决偏移电路505生成比特偏移值,该比特位移值使得字边界(即每个数据字中的第一个比特)至少偏移V个比特加上使得字边界为可通过输出第一并行数据信号DPIN0的桶形移位器电路中的多路复用器电路选择的比特位置所需要的任意的附加比特偏移。判决偏移电路505使用如信号WORDBD所指示的字边界来确定要对数字V增加多少附加的比特偏移来将字边界移到可通过输出第一并行数据信号DPIN0的桶形移位器电路中的多路复用器电路选择的比特位置。然后,判决偏移电路505使得判决偏移信号DCOF指示比特偏移值,并且循环调节电路506生成基于所述比特偏移值的信号CYCSLP中的多个脉冲。
[0127] 判决偏移电路505接收或存储指示桶形移位器电路中的多路复用器电路的粒度的值。该粒度指示哪些比特(即哪些并行数据信号)可通过桶形移位器电路中的多路复用器电路选择。例如,在图13的实施例中,判决偏移电路505接收或存储粒度值3,指示多路复用器电路可以选择每第三个比特。在图14的实施例中,判决偏移电路505接收或存储粒度值2。
[0128] 作为示例,如果字边界信号WORDBD指示字边界(即每个数据字中的第一个比特)位于信号DPRL7中的比特位置7处,并且信号PHCP指示针对16个比特的数据字(即M=16)的向上计数值3/16,则将字边界偏移3个比特位置使得字边界移到开始于并行数据信号DPRL4中。然而,如果如选择器电路1300中桶形移位器电路中的多路复用器电路的粒度等于3,则控制电路204使得解串器电路202利用CYCSLP信号将并行数据信号DPRL中的比特偏移4个比特位置,以使得字边界开始于并行数据信号DPRL3,因为多路复用器电路1301只可以从并行数据信号中的比特位置0、3、6或9中选择。然后,图案检测器电路801或821调节字边界信号WORDBD以指示字边界当前开始于比特位置3,使得选择器电路1300将字边界从信号DPRL3偏移到信号DPIN0-DPIN15中的信号DPIN0。
[0129] 根据另一示例,字边界信号WORDBD指示字边界位于信号DPRL2中的比特位置2处,信号PHCP指示针对16个比特的数据字(即M=16)的向下计数值-5/16,并且如选择器电路1300中桶形移位器电路中的多路复用器电路的粒度等于3。在该示例中,控制电路204使得解串器电路202利用CYCSLP信号将并行数据信号DPRL中的比特偏移12个比特位置(而不是
11个比特位置),以使得字边界开始于并行数据信号DPRL6,因为多路复用器电路1301只可以从比特位置0、3、6或9中选择。然后,图案检测器电路801或821调节字边界信号WORDBD以指示字边界当前开始于比特位置6,使得选择器电路1300将字边界从信号DPRL6偏移到信号DPIN0-DPIN15中的信号DPIN0。
[0130] 图15图示了根据本发明的实施例的针对被选择的数据信号ZN的示例性波形。图15中所示的针对信号ZN的波形是图10和14中所示的数据信号Z0-Z3以及图12和13中所示的数据信号Z0-Z15中的每个数据信号的示例。图15图示了信号ZN的比特周期(即单位间隔)的示例。图15中所示的最佳定位置在比特周期的中间。最佳锁定位置对应于相应的触发器电路(例如触发器电路1021-1024、1221-1236、1321-1336以及1421-1424中的一个)存储信号ZN的值的理想时间。图15示出了针对触发器电路的建立和保持时间的示例。触发器电路可以在保持与建立时间之间的图15中所示的裕度时间(margin time)内的任意时间存储信号ZN的值,以将信号ZN的准确值提供给相应的数据信号DPIN。
[0131] 图15中所示的裕度时间出现在最佳锁定位置的两边。图15的裕度时间等于从保持时间结束一直到建立时间开始的时间。相位评估器电路504所使用的阈值基于RDCLK与MSTCLK时钟信号之间的预定的相位差,如上所述。RDCLK与MSTCLK时钟信号之间的预定的相位差等于图15中所示的裕度时间的一半。因而,相位评估器电路504所使用的阈值基于为图15中所示的裕度时间的一半的最大值。附加裕度时间可能被动态漂移(wander)或传播延迟变化所消耗,降低相位评估器504所使用的阈值。错误检测逻辑可以被包括在可被用于确定何时阈值已被越过、触发并行信号DPIN的重新对齐的协议逻辑中。
[0132] 图15中所示的裕度时间的持续时间取决于数据信号ZN的比特周期以及建立和保持时间。解串器电路202、相位检测器电路203和控制电路204使由接收器电路101、103、105和107所生成的4个时钟信号RDCLK在图15中所示的裕度时间的一半(即预定的相位差)以内与主时钟信号MSTCLK对齐。因此,触发器电路1021-1024、1221-1236、1321-1336和1421-1424响应于主时钟信号MSTCLK存储并行数据信号中的比特的准确值。接收器电路101、103、
105和107所生成的4个时钟信号RDCLK在图15中所示的裕度时间以内与彼此对齐。此外,由接收器电路101、103、105和107分别生成的4组并行数据信号DPINA、DPINB、DPINC和DPIND相对于彼此被对齐和抗扭斜。接收器电路101、103、105和107中的每个接收器电路中的电路
200减少被用于使数据信号从RDCLK跨到MSTCLK时钟域的寄存器级的数目。
[0133] 图16是可以包括本发明的实施例的现场可编程门阵列(FPGA)1600的简化部分框图。FPGA1600仅仅是可以包括本发明的特征的集成电路的一个示例。应当理解本发明的实施例可以被用在各种类型的集成电路中,诸如现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、复杂可编程逻辑器件(CPLD)、可编程逻辑阵列(PLA)、专用集成电路(ASIC)、存储器集成电路、中心处理单元、微处理器、模拟集成电路等。
[0134] FPGA1600包括通过具有可变长度和速度的纵横互连导体的网络互相连接的可编程逻辑阵列区块(或者LAB)1602的二维阵列。LAB1602包括多个(例如10个)逻辑单元(或者LE)。
[0135] 逻辑单元(LE)是提供对用户定义的逻辑功能的高效实现的可编程逻辑电路区块。FPGA具有可被配置为实现各种组合和时序功能的大量逻辑单元。逻辑单元可利用可编程互连结构。可编程互连结构可以被编程以按几乎任何所所期望的配置互连逻辑单元。
[0136] FPGA1600还包括分布式存储器结构,该结构包括在整个阵列中提供的具有可变尺寸的随机访问存储器(RAM)区块。RAM区块包括例如区块1604、区块1606和区块1608。这些存储器区块还可以包括移位寄存器和先入先出(FIFO)缓冲器
[0137] FPGA1600还包括可以实现例如具有加或减特征的乘法器的数字信号处理(DSP)区块1610。输入/输出单元(IOE)1612支持多种单端和差分输入/输出标准。IOE1612包括被耦接到集成电路的管脚的输入和输出缓冲器。这些管脚是可被用于路由例如输入数据信号、输出数据信号并提供FPGA与一个或多个外部设备之间的电压的FPGA芯片的外部端子。IOE1612中的一个或多个可以包括电路101-108。FPGA1600在这里是为了说明的目的而被描述的。本发明的实施例可以在很多不同类型的集成电路中被实现。
[0138] 本发明的实施例也可以在具有作为若干组件中的一个组件的FPGA的系统中被实现。图17示出了可以体现本发明的技术的示例性数字系统1700的框图。系统1700可以是被编程的数字计算机系统、数字信号处理系统、专用的数字交换网络或者其它处理系统。此外,这样的系统可以被设计用于各种应用,例如电信系统、汽车系统、控制系统、消费电子产品、个人计算机、互联网通信和联网等等。此外,系统1700可以被提供在单个板上、多个板上或者多个封装内。
[0139] 系统1700包括通过一个或多个总线互连在一起的处理单元1702、存储器单元1704和输入/输出(I/O)单元1706。根据该示例性实施例,FPGA1708被嵌入处理单元1702中。FPGA1708可以用于图17的系统内的很多不同的目的。FPGA1708可以例如是处理单元1702的逻辑构建区块,支持其内部和外部操作。FPGA1708被编程以实现在系统操作中执行其特定任务所必需的逻辑功能。FPGA1708可以通过连接1710被专门耦接到存储器1704并且通过连接1712被耦接到I/O单元1706。
[0140] 处理单元1702可以将数据引导至合适的系统组件以进行处理或存储、执行被存储在存储器1704中的程序、经由I/O单元1706接收和发送数据或者其它类似的功能。处理单元1702可以是中央处理单元(CPU)、微处理器、浮点协处理器、图形协处理器、硬件控制器微控制器、被编程以用作控制器的现场可编程门阵列、网络控制器或者任意类型的处理器或控制器。此外,在很多实施例中,通常不需要CPU。
[0141] 例如,代替CPU,一个或多个FPGA1708可以控制系统的逻辑操作。作为另一示例,FPGA1708用作可重新配置的处理器,该处理器可以按需要被重新编程以处理特定的计算任务。可替代地,FPGA1708自身可以包括嵌入式微处理器。存储器单元1704可以是随机访问存储器(RAM)、只读存储器(ROM)、固定的或柔性盘介质、闪存、磁带或者任何其它存储装置,或者这些存储装置的任意组合。
[0142] 关于本发明的示例性实施例的前述描述为了说明和描述的目的而被呈现。前述描述不意欲为穷尽性的或者将本发明局限于这里所公开的示例。在一些实例中,本发明的特征可以在没有关于所提出的其它特征的相应应用的情况下被使用。在以上教导的启发下,很多修改、替换和变动是可能的,且不脱离本发明的范围。
[0143] 附加实施例:
[0144] 附加实施例1.一种电路,包括:
[0145] 将串行数据信号转换成第一并行数据信号的串并转换器电路;以及
[0146] 基于第一并行数据信号生成第二并行数据信号的桶形移位器电路,其中桶形移位器电路包括多路复用器电路,以将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置进行调节,并且
[0147] 其中多路复用器电路中的每个多路复用器电路被耦接以接收少于由第一并行数据信号所指示的全部比特。
[0148] 附加实施例2.附加实施例1的电路,其中多路复用器电路将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置调节少于第一并行数据信号的总数的最大数目的比特位置。
[0149] 附加实施例3.附加实施例1的电路,其中多路复用器电路将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置调节等于至少两个比特位置的最小比特移位。
[0150] 附加实施例4.附加实施例1的电路,其中多路复用器电路将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置调节等于至少三个比特位置的最小比特移位。
[0151] 附加实施例5.附加实施例1的电路,还包括:
[0152] 图案检测器电路,该图案检测器电路指示在第一并行数据信号中或者在第二并行数据信号中的数据字内的第一比特的比特位置,其中桶形移位器电路基于由图案检测器电路所指示的比特位置将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置进行调节。
[0153] 附加实施例6.附加实施例5的电路还包括:
[0154] 生成第一和第二周期性信号之间的相位偏移的指示的相位检测器电路,其中串并转换器电路响应于第一周期性信号将串行数据信号转换为第一并行数据信号;
[0155] 基于相位偏移的指示生成相移的指示的控制电路;以及
[0156] 基于相移的指示提供对第一周期性信号的相位的调节的时钟信号生成电路,其中串并转换器电路基于对第一周期性信号的相位的调节来调节由第一并行数据信号所指示的比特的位置。
[0157] 附加实施例7.附加实施例6的电路,其中控制电路基于相位偏移的指示并基于由图案检测器电路所指示的比特位置生成相移的指示。
[0158] 附加实施例8.一种方法,包括:
[0159] 利用串并转换器电路将串行数据信号转换为第一并行数据信号;
[0160] 利用桶形移位器电路基于第一并行数据信号生成第二并行数据信号;
[0161] 利用桶形移位器电路中的多路复用器电路将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置进行调节;以及
[0162] 只将每个数据字中由第一并行数据信号指示的比特的子集提供至多路复用器电路中的每个多路复用器电路的输入。
[0163] 附加实施例9.附加实施例8的方法,其中多路复用器电路将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置调节少于第一并行数据信号的总数的最大数目的比特位置。
[0164] 附加实施例10.附加实施例8的方法,其中多路复用器电路将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置进行调节的最小比特移位为至少两个比特位置。
[0165] 附加实施例11.附加实施例8的方法,其中多路复用器电路将由第二并行数据信号所指示的比特的位置相对于由第一并行数据信号所指示的比特的位置进行调节的最小比特移位为至少三个比特位置。
QQ群二维码
意见反馈