具体实施方式
发明详述
图1包括两个电路的部分的示意性方块图,例如,被MIPI高速串行链路所连接的集成电路(IC)。请参考图1,第一集成电路(IC)10,其可以被称为“主集成电路”(“Master IC”),其经由MIPI高速串行链路14被连接到,且可以与第二集成电路(IC)12进行通讯。如图1所示,参考时钟信号被输入锁相回路(PLL)的倍频器16,其输出比特率的时钟信号。比特率的时钟信号被施加到一对D触发器18和22,它们分别在比特率的时钟信号的上升边缘和下降边缘被触发。触发器18的输出被施加到触发器18的D输入端,使得触发器18产生双倍数据速率(DDR)的时钟信号,并在其Q输出端输出DDR时钟信号。输入数据信号被施加到触发器22的D输入端,其由输入数据信号来产生串行的数据,并在其Q输出端输出串行的数据信号。DDR时钟信号被驱动器20驱动到标号26所示的时钟互连通道上,时钟互连通道将DDR时钟信号传导到第二或从属集成电路(IC)12。类似地,串行的数据信号被驱动器24驱动到标号28所示的数据互连信道上,数据互连信道将串行的数据信号传导到第二或从属集成电路(IC)12。
第二或从属集成电路(IC)12包括第一接收器30和第二接收器32,第一接收器从第一或主集成电路(IC)10接收DDR时钟信号,第二接收器32从第一或主集成电路(IC)10接收串行的数据信号,且第二集成电路(IC)12包括一对D触发器34和36。DDR时钟信号被施加到触发器34和36二者的时钟输入端,使得D触发器34在DDR时钟信号的下降边缘被触发,而D触发器36在DDR时钟信号的上升边缘被触发。串行数据信号被施加到触发器34和36二者的D输入端。因此,来自串行数据信号的串行数据经由D触发器34和36被计时,使得来自串行数据信号的串行数据作为已收到的数据,而出现于D触发器34和36的Q输出端,且具有串行数据信号的双倍的数据速率。
图2A和2B包括时序图,其显示在MIPI串行数据链路的数据信号和时钟信号的示例性的时序。在图2A和图2B中,数据信号被标示为“MIPI数据”,而时钟信号被标示为“MIPI时钟”。图2A显示理想情况下信号的时序,其中不存在时钟数据的偏斜。垂直虚线表示时钟信号的上升边缘,其可触发数据信号的取样。如图2A所示,在没有时钟数据的偏斜之下,数据信号理想地在活动时间间隔的中间被取样。
相反地,图2B显示时钟数据偏斜存在的情况。这种偏斜可以被引入,例如,经由长距离的应用,如其中的时钟互连26和数据互连28超过30公分长,例如,约为2.0米长或更长。在这种情况下,在时钟信号的上升边缘,及,因此,数据信号的取样,不发生在数据信号的数据活动期间的中间。反而是,时钟-数据的偏斜会造成数据的取样偏离中心发生。当时钟-数据偏斜增大时,取样误差的概率也增加。
根据示例性实施例,MIPI串行数据链路被校准,使得时钟-数据的偏斜被去除或大幅度地减少。这将使MIPI串行数据链路高速运转于长距离的应用时会减少数据取样的误差。图3A和3B包括根据示例性实施例所用的数据信号和时钟信号的时序图,其实施示例性实施例的消除偏斜的校准。特别是,图3A包括根据示例性实施例的示意性的时序图,其显示在去偏斜校准过程中的校准模式下,于MIPI串行数据链路的发送端,如图1所示的第一集成电路(IC)10,所产生及所发送的数据信号(MIPI数据)和时钟信号(MIPI时钟)的时序。图3B包括根据示例性实施例的示意性的时序图,其显示在去偏斜校准过程中的校准模式下,于MIPI串行数据链路的接收端,如图1所示的第二集成电路(IC)12,所接收的数据信号(MIPI数据)和时钟信号(MIPI时钟)的时序。
请参见图3A,应注意到,根据示例性实施例,在去偏斜的校准操作时,其中MIPI串行链路被操作于校准模式时,数据信号和时钟信号同相位地被发送。此与正常的操作相反,在正常的操作时,MIPI串行链路是在正常操作模式下操作,其中,数据信号和时钟信号异相位地被发送,特别是,90度的异相位,或等价地,正交地被发送。
请参见图3B,根据示例性实施例,当MIPI串行链路在校准模式下被操作时,在MIPI串行链路的接收端所接收到的数据信号和时钟信号显示出时钟-数据偏斜。此偏斜显示于图3B1所示的实线的MIPI时钟波形。根据示例性实施例,校准过程被执行时,其中去偏斜校准的相位延迟被确定。此校准的相位延迟将导致时钟-数据偏斜被消除,如图3B中所示的虚线的MIPI时钟波形。
图4包括根据一些示例性实施例的二个电路,例如,被MIPI高速串行链路所连接的集成电路(IC),部分的示意性方块图。应注意到,图1所示的系统和图4所示的系统都有的组件由相同的标号表示。这些相同的组件的详细描述将不再重复。
请参见图4,第一或主集成电路110包括选择电路,例如多任务器135,其可在施加于多任务器135的第一输入端的去偏斜的校准时钟信号C-Clock,和施加于多任务器135的第二输入端的正常工作模式的时钟N-Clock之间进行选择。该选择被施加于多任务器135的选择控制输入端的模式信号(Mode-Select signal)所影响。根据一些示例性实施例,如上面所描述的,去偏斜的校准时钟信号C-Clock与数据信号是同相的。在去偏斜校准模式中,模式信号(Mode-Select signal)被设置用来选择去偏斜的校准时钟信号C-Clock,其由多任务器135的输出端被施加到D触发器18的时钟输入端。另外,在一些示例性实施例中,作为数据信号而被施加到D触发器22的D输入端的串行数据是在预定的固定图案。例如,在一些实施例中,为了匹配DDR时钟信号,数据信号的固定的数据图案可被选择为101010101010...。在某些示例性实施例中,固定的数据图案可被选择为具有一个短的1010图案,之后接着相对长的交替的1和0的图案,例如,101011110000...。在这种情况下,短的1和0之后跟着长的1和0被用来校准符号间干扰(ISI)的链路的抖动。
请继续参考图4,第二或从属集成电路112包括去偏斜校准模块133,其接收时钟信号和数据信号。在去偏斜校准模式中的去偏斜校准的过程,去偏斜校准模块133检测接收到的时钟信号和接收到的数据信号之间的相位差。因为它们是从第一集成电路110同相位地被发送,去偏斜校准模块133所检测到的相位差表示偏斜是在链路114中引入。去偏斜校准模块所检测到的相位差,即,时钟-数据偏斜,被存储且随后被去偏斜校准模块133用来在随后的正常操作模式中,以补偿链路114所引入的时钟-数据偏斜,从而消除或大大地减少正常操作过程中的时钟-数据偏斜。
图5包括根据示例性实施例的去偏斜校准模块133的详细的示意性方块图。请参考图5,在去偏斜校准模式的去偏斜校准过程中,去偏斜校准模块133检测接收到的时钟信号和接收到的数据信号之间的相位差,并在随后的串行链路的正常操作时,利用检测到的相位差来校准接收到的时钟信号和接收到的数据信号的偏斜。校准模块133包括固定延迟器136,该延迟器从接收器30接收时钟信号,并将固定的延迟引入时钟信号。被延迟的时钟信号被输出到数据取样的D触发器(DFF)的34和36的时钟输入端。应注意到,固定延迟器136可以是实际的电子部件,如延迟线,其将延迟引入时钟信号,或者固定延迟器136可以表示时钟信号连接的固有的延迟。
来自接收器32的数据信号被去偏斜校准模块133中的数字控制延迟线140所接收。数字控制延迟线140引入一个控制量的延迟到所接收的数据信号,并输出所得到的延迟的数据信号,该信号转发到数据取样的D触发器(DFF)34和36。数字控制延迟线140所引入的延迟的量,是被经由延迟控制线139输入的延迟控制值所控制。
如上所述,在去偏斜校准过程中,在去偏斜校准模式下,时钟信号和数据信号同相位地被传送。因此,在接收到的时钟信号和接收到的数据信号之间的任何相位差是指示串行链路中的时钟-数据偏斜的量。相位检测器142检测在被固定延迟器136偏移的接收到的时钟信号的相位与被数字控制延迟线140偏移的接收到的数据信号的相位之间的相位差。相位检测器142输出的信号,是表示延迟线的逻辑电路138的相位差,延迟线的逻辑电路138使用所检测到的相位差来产生延迟控制值,该值经由延迟控制线139传送到数字控制延迟线140。在去偏斜校准过程中,在去偏斜校准模式下,此闭合的回馈环路调整接收到的数据信号的相位,直到在接收到的数据信号和被延迟的接收到的时钟信号之间的相位差小于一个预定的最大的阈值。在此时,串行链路的时钟-数据偏斜已被移除。
上述的校准过程完成之后,串行链路可以进入正常操作模式。在这种模式下,在去偏斜校准过程中,被编写进入数字控制延迟线140的偏斜校准调整,继续调整所接收的数据信号的相位。在正常操作模式下,在MIPI串行数据链路中,数据信号和时钟信号异相地被发送出,例如,在正交的情况。利用被编写入数字控制延迟线140的去偏斜校准的相位的调整,在正常操作期间的时钟-数据偏斜对串行数据链路做了校正。时钟-数据偏斜会显著地被减小或被消除。
图6包括根据一些其他的示例性实施例的二个电路的部分的示意性方块图,例如,被MIPI高速串行链路所连接的集成电路(IC)。应注意到,在图1和4所示的系统和图6的系统中都有的组件由相同的标号来表示。这些相同的组件的详细描述将不再重复。
请参见图6,在一些示例性实施例中,在去偏斜校准过程,并非是,数据信号和时钟信号同相位地被传送,如在图4的实施例中所示的,而是,时钟信号被发送到串行链路214的数据信道,使得该时钟信号同时经由时钟信道及数据信道两者被发送。为了影响这种去偏移校准的途径,第一或主集成电路210包括一对选择电路,例如多任务器211和213。多任务器213被用来选择数据信号或时钟信号是否要经由串行链路214的数据信道被传输。为此目的,来自D触发器22的数据信号被施加到多任务器213的输入端中的一个,且来自D触发器18的时钟信号被加到多任务器213的另一个输入端。被施加到多任务器213的选择输入端的模式选择信号(The Mode Select signal),选择二个信号中的一个而由多任务器213输出,并被施加到串行链路214的数据信道。在校准模式下,模式选择信号(TheMode Select signal)被设定为逻辑的水平,以对D触发器18的时钟信号的选择,并在正常操作模式下,模式选择信号(The Mode Select signal)被设定为逻辑的水平,即,可产生对D触发器22的数据信号的选择的逻辑的程度。
多任务器211被包括在内,使得时钟和数据信道具有类似的延迟,或者换句话说,使得时钟通道包括一个延迟,该延迟类似于由多任务器213引入到数据信道的延迟。多任务器211接收来自D触发器18输出的时钟信号,以作为其一个输入信号,及虚拟信号,例如,连续的高的或低的信号,作为其另一个的输入信号。施加到工器211的模式选择信号被设定为逻辑的水平,其用来在正常或校准操作模式下,对来自D触发器18的时钟信号的选择。
图6的串行链路214的其余部分,在形式上和功能上都相同于上面图4有关的描述。例如,第二或从属集成电路212包括去偏斜校准模块133,其相同于上面图4和5的有关的详细的描述。
图7包括根据一些其他的示例性实施例的二个电路的部分的示意性方块图,例如,被MIPI高速串行链路所连接的集成电路(IC)。应注意到,图1,4和6所示的系统和图7的系统都有的组件用相同的标号来表示。这些相同的组件的详细描述将不再重复。
请参见图7,串行链路314在正常操作模式下,以类似于串行链路114(图4)的方式操作。然而,在校准模式下,串行链路314在“向后”的方向上传送数据,即,从第二集成电路312传到第一集成电路310。特别地,第二集成电路312的驱动器316和318,在校准模式期间,在校准数据生成器324的控制之下,分别生成校准数据图案320和322。校准数据图案320和322在第二集成电路312处彼此同相位,并在一些实施例中,各个校准数据图案320,322形成交替的1和0的模式。校准数据图案320和322分别被时钟互连通道26和数据互连信道28,从第二集成电路312发送到第一集成电路310。第一集成电路310中的接收器326和330,分别在第一集成电路310处接收校准数据图案320和322。去偏斜校准模块333在第一集成电路310处,确定校准数据图案320和322之间的偏斜,或相位差。去偏斜校准模块333在正常操作模式下,将相位施加到数据信号和/或时钟信号,从而消除或大大地减少正常操作期间的时钟-数据偏斜。在一些实施例中,去偏斜校准模块333被分配在第一集成电路310和第二集成电路312之间。
因此,发送电路被分配在第一集成电路310和第二集成电路312之间。例如,触发器18和驱动器20形成在正常操作模式中的至少一部分的时钟发送电路,而驱动器316和校准数据发生器324形成在校准模式中的至少一部分的时钟发送电路。另外,触发器22和驱动器24形成在正常操作模式中的至少一部分的数据发送电路,而驱动器318和校准数据发生器324形成在校准模式中的至少一部分的数据发送电路。类似地,接收电路被分配在第一集成电路310和第二集成电路312之间。例如,接收器30和触发器34形成在正常操作模式中的至少一部分的时钟接收电路,而接收器32形成在校准模式中的至少一部分的时钟接收电路。并且接收器326形式的至少一部分的时钟之间的分布接收电路中的校准模式。另外,接收器32和触发器36形成在正常操作模式中的至少一部分的数据接收电路,而接收器330形成在校准模式中的至少一部分的数据接收电路。时钟信号和数据信号在正常工作模式中,分别在时钟互连通道26和数据互连信道28在第一方向(从左至右)上被传送。相反地,时钟信号和数据信号在校准模式中,分别在时钟互连通道26和数据互连信道28,在与第一方向相反的第二方向(从右到左)上被传送。
串行链路314能够校正由时钟互连通道26和数据互连信道28之间的差异所引入的偏斜,但不能用于串行链路314的其他组件中所引入的偏斜。因此,串行链路314适合应用于互连通道主导的时钟-数据偏斜的地方。
图8包括根据一些示例性实施例的逻辑流程图,其显示去偏斜校准过程的逻辑流程。请参考图8,在一些示例性实施例中,在步骤502时,去偏斜校准过程500在系统或串行链路的电源打开时立即被启动。在步骤504时,进入校准模式/程序。在步骤506时,于串行链路的发送端时,MIPI时钟信号和MIPI数据信号同相位地被串行链路发送。在步骤508时,于串行链路的接收端,检测接收到的MIPI时钟信号和接收到的MIPI数据信号之间的相位差。在步骤510时,检测根据检测出的相位差所决定的去偏斜的校准值。在步骤512,去偏斜校准值被施加于串行链路的接收端,诸如,例如,经由延迟控制线139被延迟控制值,该延迟控制值是输入于数字控制延迟线140的延迟控制输入端。在步骤514时,以去偏斜校准值进入正常操作模式,该去偏斜校准值是在校准过程中所确定而被施加于链路的接收端。
特性的组合
本发明的各种特征已经详细描述如上。除非说明书明确排除特征的组合,本发明涵盖了本文中所描述的任何数目的特征的任一组合和所有组合。下面的例子将显示一些根据本发明在此公开的所考虑的特征的组合。
在本文中所详细描述的和/或要求保护的任何实施例中,在正常操作模式下,时钟信号和数据信号正交地被传输。
在本文中所详细描述的和/或要求保护的任何实施例中,在校准模式下,数据信号包括在预定的校准数据图案中的数据。
在本文中所详细描述的和/或要求保护的任何实施例中,预定的校准数据图案是如此,使得数据信号中的至少一部分包括时段,在此时段中数据信号的大小的转变的时间实质上相同于时钟信号的大小的转变的时间。
在本文中所详细描述的和/或要求保护的任何实施例中,预定的校准数据图案是如此,使得数据信号中的至少一部分包括时段,在此时段中数据信号的逻辑水平在多个的时钟信号的时段中保持恒定。
在本文中所详细描述的和/或要求保护的任何实施例中,串行链路还包括连接到数据接收电路和时钟接收电路的去偏斜校准电路,该去偏斜校准电路用来在校准模式下接收数据信号和时钟信号,并且,在校准模式下,调整数据信号和时钟信号中的至少一个的相位,使得相位差在一个阈值以下。
在本文中所详细描述的和/或要求保护的任何实施例中,去偏斜校准电路包括可调的延迟线电路,该延迟线电路用来调节数据信号和时钟信号中的至少一个的相位。
在本文中所详细描述的和/或要求保护的任何实施例中,在正常操作模式下,可调的延迟线电路将延迟引入时钟信号和数据信号中的至少一个,该延迟在校准模式下,是经由调节数据信号和时钟信号中的至少一个的相位而被确定。
在本文中所详细描述的和/或要求保护的任何实施例中,时钟传送电路和数据传送电路被如此配置,使得数据信号和时钟信号均导自相同的信号。
在本文中所详细描述的和/或要求保护的任何实施例中,在校准模式中,数据信号和时钟信号均导自相同的信号。
虽然本发明的概念已经参考示例性实施例具体地被显示与描述,但是,本领域的一般技术人员应理解到,可以在形式上和细节上作各种变化,而不会背离下面的申请专利范围所界定的本发明的构思的精神和范围。