改善时钟恢复的方法及相关装置与流程

文档序号:13520449阅读:258来源:国知局

本发明涉及一种改善时钟恢复的方法及相关装置,尤其涉及一种用于移动产业处理器接口(mobileindustryprocessorinterface,mipi)的改善时钟恢复的方法及其相关装置。



背景技术:

移动产业处理器接口(mobileindustryprocessorinterface,mipi)是由移动产业处理器接口联盟(mipialliance)所制定的一标准接口。移动产业处理器接口的物理层最新规格包含d-phy、m-phy及c-phy,其用来提供一主装置及一从装置之间的连结。有别于d-phy及m-phy所采用的差分信号对(双线)传输,c-phy在3线信道上采用3相符号编码来进行传输。此3相符号编码技术可实现每单位符号(symbol)大于2位(2bits)的数据速率。差分信号对可选择性地分配到3条线的其中2条,因此,随着不同的导线选择方式,可产生6种导线状态,如表1所示。导线状态为同一个信号时段中三条导线上信号电平的组合。在一高速单位期间(unitinterval,ui),6种可能的高速导线状态之一被传送至导线上,而每一条导线a、b、c在一信号时段上被驱动至低、中、高三个信号电平之一。在部分情形下,中电平信号是传输器不驱动信号所产生的结果。在一信号时段中,三条导线上的信号电平互不相同。上述6种导线状态包含驱动三条导线的6种可能排列方式,使得每条导线上存在不同的信号电平,此6种导线状态称为+x、-x、+y、-y、+z及–z,定义于表1。

表1

根据移动产业处理器接口的c-phy规格,主装置的传输器可对一符号串流进行编码以产生欲在三条导线上传送的信号,并将此信号通过三条导线传送至从装置的差分接收器。以导线状态(+x、-x、+y、-y、+z及–z等状态)进行符号编码的方式可确保每一单位期间的边界上都发生高速数据的转换,从装置即可根据解码得到的符号串流的保证转换机制来恢复用来锁存数据的时钟。从装置的多个接收器可分别接收导线a、b、c上的导线状态,并据此产生差分输出信号,这些接收器的运作方式类似于比较器。由于上述符号编码规则,从装置的多个接收器在每一单位期间边界上都存在至少一差分输出信号发生电平变化。然而,由于(导线a、b、c上的)三个信号的上升时间及下降时间存在些微差异,且不同信号对组合(如a-b、b-c及c-a)的信号传播时间也存在些微差异,因此当多个差分输出信号在同一单位期间边界上发生电平变化时,信号电平变化的时序往往相互错开并产生一时间差,此时间差称为编码抖动(encodingjitter),编码抖动会造成错误的时钟恢复。



技术实现要素:

因此,本发明的主要目的即在于提供一种用于移动产业处理器接口(mobileindustryprocessorinterface,mipi)的方法及相关装置,可改善时钟恢复。

本发明公开了一种用于移动产业处理器接口的一主装置的方法,用来改善该移动产业处理器接口的一从装置的时钟恢复,该方法包含:在传送封包数据至该从装置之前,传送包含多个连续符号的一符号序列至该从装置,该多个连续符号包含一第一符号值及一第二符号值当中至少一者,其中,该第一符号值及该第二符号值相较于其它符号值而言产生较大的编码抖动。

本发明还公开了一种用于移动产业处理器接口的一从装置的方法,用来改善时钟恢复,该方法包含:接收一导线状态并产生三个差分输出信号,其中,该导线状态为三个传输线上的信号电平的组合;根据一先前导线状态到一目前导线状态的转换,产生一第一数量的符号中的每一者,该先前导线状态及该目前导线状态是通过该从装置的一时钟恢复电路所产生的一时钟信号来取得,其中,该时钟信号的脉冲宽度由设定于该时钟恢复电路的一时序延迟所控制;在该第一数量的符号中,判断每一符号是否相同于一参考符号序列中相对应的符号以产生一判断结果,其中,该参考符号序列包含多个连续符号,该多个连续符号包含一第一符号值及一第二符号值当中至少一者,其中,该第一符号值及该第二符号值相较于其它符号值而言产生较大的编码抖动;以及根据该第一数量的判断结果来设定该时序延迟的数值,以控制该时钟信号的脉冲宽度。

本发明还公开了一种移动产业处理器接口的从装置,其包含多个接收器、一符号解码器及一判断单元。该多个接收器可用来接收一导线状态并产生三个差分输出信号,其中,该导线状态为三个传输线上的信号电平的组合。该符号解码器可根据一先前导线状态到一目前导线状态的转换,产生一第一数量的符号中的每一者,该先前导线状态及该目前导线状态是通过该从装置的一时钟恢复电路所产生的一时钟信号来取得,其中,该时钟信号的脉冲宽度由设定于该时钟恢复电路的一时序延迟所控制。该判断单元可用来判断该第一数量的符号中的每一者是否相同于一参考符号序列中相对应的符号以产生一判断结果,并根据该第一数量的判断结果来设定该时序延迟的数值,以控制该时钟信号的脉冲宽度。该参考符号序列包含多个连续符号,该多个连续符号包含一第一符号值及一第二符号值当中至少一者,其中,该第一符号值及该第二符号值相较于其它符号值而言产生较大的编码抖动。

附图说明

图1为本发明实施例具有一移动产业处理器接口的一从装置的示意图。

图2为时钟恢复电路的一种实施方式的示意图。

图3为从装置中导线状态及信号的波形示意图。

图4为导线状态及符号之间的符号编码/解码机制的示意图。

图5a及5b为导线状态的各种转换、差分输出信号、及相对应符号值的示意图。

图6为本发明实施例具有一移动产业处理器接口的一主装置的示意图。

图7为移动产业处理器接口c-phy规格所定义的高速数据传输的示意图。

图8为本发明实施例一流程的示意图。

图9为本发明实施例一流程的示意图。

图10为本发明实施例用于移动产业处理器接口的主装置的一流程的示意图。

图11为本发明实施例用于移动产业处理器接口的从装置的一流程的示意图。

其中,附图标记说明如下:

10从装置

102时钟恢复电路

104符号解码器

106判断单元

a、b、c导线

r1~r3接收器

rx_ab、rx_bc、rx_ca差分输出信号

s1控制信号

clk时钟信号

202或门

204时序延迟电路

dff1~dff6d型正反器

i0~i3反相器

t1~t3单位期间

+x、-x、+y、-y、+z、–z导线状态

60主装置

602符号编码器

d1~d3驱动装置

80、90、100、110流程

800~808、900~908、1000~1004、步骤

1100~1110

具体实施方式

请参考图1,图1为本发明实施例一从装置10的示意图,从装置10具有符合移动产业处理器接口(mobileindustryprocessorinterface,mipi)c-phy规格的一接口。如图1所示,从装置10包含一时钟恢复电路102、一符号解码器104、一判断单元106及三个接收器r1~r3。接收器r1~r3为差分接收器,分别耦接于三条导线a、b、c当中的两条。接收器r1~r3可在每一高速单位期间接收差分导线对a-b、b-c及c-a上传送的信号,并根据导线对a-b、b-c及c-a的信号差异来产生差分输出信号rx_ab、rx_bc及rx_ca。从导线a、b、c上接收的信号电平组合可分别由导线状态+x、-x、+y、-y、+z及–z来表示,如表1所示。举例来说,输出信号rx_ab代表导线a及b上信号电平的比较结果。若导线a的信号电平大于导线b的信号电平,则输出信号rx_ab为“1”(即逻辑高电平);若导线a的信号电平小于导线b的信号电平,则输出信号rx_ab为“0”(即逻辑低电平)。本领域的技术人员可依照相同方式,根据每一导线状态中导线a、b、c的信号电平来推论出输出信号rx_bc及rx_ca的数值。

时钟恢复电路102可根据输出信号rx_ab、rx_bc及rx_ca,产生一时钟信号clk。由于c-phy传输线未包含专属的时钟信号线,因此时钟信号clk是根据时钟恢复技术由导线a、b、c上接收到的信号产生。如上所述,移动产业处理器接口c-phy的符号编码机制可确保从装置的多个接收器输出的至少一差分输出信号在每一单位期间的边界上都发生信号电平转换,因此时钟恢复电路102可根据解码得到的符号串流的保证转换机制来恢复时钟。符号解码器104可接收输出信号rx_ab、rx_bc及rx_ca,并根据输出信号rx_ab、rx_bc及rx_ca的转换来产生符号。判断单元106可接收符号解码器104所产生的符号,以判断所接收的符号是否正确,进而输出一控制信号s1至时钟恢复电路102,来调整或设定时钟信号clk。

请参考图2,图2为时钟恢复电路102的一种实施方式的示意图。时钟恢复电路102可包含6个d型正反器(dflip-flop)dff1~dff6、4个反相器i0~i3、一或门(orgate)202及一时序延迟电路204。来自于接收器r1~r3的输出信号rx_ab、rx_bc及rx_ca可分别直接输入至d型正反器dff1、dff3及dff5的时钟输入端,并通过反相器i1~i3分别反相输入至d型正反器dff2、dff4及dff6的时钟输入端。d型正反器dff1~dff6的数据输入端则接收逻辑高电平“1”。或门202可接收d型正反器dff1~dff6的输出信号,并据此产生时钟信号clk。上述实施方式使得时钟信号clk可在任何输出信号rx_ab、rx_bc及rx_ca发生电平变化时从“0”转换成“1”,上述转换必然随着导线状态的转换发生在每一单位期间的边界。当时钟信号clk转换为“1”以后,时序延迟电路204(其可由一延迟链(delaychain)所组成)可从或门202接收时钟信号clk并从判断单元106接收控制信号s1,进而输出一延迟信号至d型正反器dff1~dff6的重设端。延迟信号可重设d型正反器dff1~dff6使得d型正反器dff1~dff6的输出信号被下拉到“0”,因此,时钟信号clk可从“1”转换成“0”。在此情形下,时序延迟电路204的时序延迟大小可用来决定时钟信号clk的脉冲宽度,也就是时钟信号clk维持在逻辑高电平“1”的时间长度,如图2所示。根据移动产业处理器接口c-phy的符号编码规则,导线状态的转换会发生在每一单位期间的边界,因此时钟信号clk的转换也会发生在每一单位期间的边界,使得时钟信号clk的周期相同于导线状态的切换周期,进而实现时钟恢复。需注意的是,时钟恢复电路102的结构仅为本发明众多实施例当中的一种,而时钟恢复电路102的实现方式不应用来限制本发明的范畴。

请参考图3,图3为从装置10中导线状态及信号的波形示意图,其示出了三个单位期间t1~t3。导线a在单位期间t1位于高信号电平,在单位期间t2转换至低信号电平,并在单位期间t3转换至高信号电平。导线b在单位期间t1位于中信号电平,在单位期间t2转换至高信号电平,并在单位期间t3转换至中信号电平。导线c在单位期间t1位于低信号电平,在单位期间t2转换至中信号电平,并在单位期间t3转换至低信号电平。输出信号rx_ab、rx_bc及rx_ca即可根据导线a、b、c的状态转换而产生。如图3所示,导线a上(信号电平“高”与“低”之间的转换)的信号转换幅度大于导线b及c上的信号转换幅度,因此导线a上的信号具有较长的上升时间及下降时间,造成输出信号rx_ab、rx_bc及rx_ca转换的时间差。编码抖动(encodingjitter)即代表导线对a-b、b-c及c-a的差分信号中最先穿越零电位的时间及最后穿越零电位的时间之间的时间差,也可代表输出信号rx_ab、rx_bc及rx_ca中最早的转换(0→1或1→0)及最晚的转换之间的时间差。编码抖动的大小受到多项因素的影响,如移动产业处理器接口c-phy主装置的传输器所输出的数据电压切换、该传输器的驱动能力、及/或导线a、b、c的传输线信道特性等。

如上所述,时序延迟电路204的时序延迟大小可用来决定时钟信号clk的脉冲宽度。若时序延迟过小,由于编码抖动的影响,时钟信号clk会快速地转换为“0”并随即被触发而在同一单位期间内再次上升到“1”。参见图3中单位期间t2开始的时间点,时钟信号在输出信号rx_ab的下降缘上升,接着,由于时序延迟长度不够,时钟信号迅速下降。此错误的时钟信号随即在输出信号rx_ca的上升缘再次上升(位于相同单位期间t2内),因而产生错误的时钟周期。另一方面,若时序延迟过大,用来锁存数据的建立时间(setuptime)及保持时间(holdtime)可能不够,造成错误的数据产生。因此,时序延迟电路204需产生适合的时序延迟,用来控制时钟信号clk的脉冲宽度大于编码抖动的时间长,以产生正确的时钟信号。

关于导线状态及符号之间的符号编码/解码机制示于图4。如图4所示,6种可能的导线状态+x、-x、+y、-y、+z及–z分别对应于导线a、b、c的不同信号电平(参见表1)。每一符号具有一3位符号值,由两个连续单位期间的不同导线状态转换来定义。举例来说,导线状态+x至导线状态+y的转换可解码为符号值“010”,导线状态+y至导线状态–z的转换可解码为符号值“011”。更明确来说,以图3中的导线状态转换为例,单位期间t1~t3的导线状态分别为–z、-x及–z,因此解码而得的符号值为“010”(从–z至–x)以及“000”(从–x至–z)。

如图4所示,基于导线状态+x、-x、+y、-y、+z及–z的转换可产生5种符号值“000”、“001”、“010”、“011”及“100”。为求简化,下文中符号值将以十进制来表示,也就是说,符号值0代表“000”,符号值1代表“001”,符号值2代表“010”,符号值3代表“011”,符号值4代表“100”。

请参考图5a及5b,图5a及5b为导线状态的各种转换、差分输出信号、及相对应符号值的示意图。图5a示出了符号值0、2,符号值0定义为以下导线状态转换:从–z至–y、从–y至–x、从–x至–z、从+z至+y、从+y至+x、从+x至+z;符号值2定义为以下导线状态转换:从–z至–x、从–x至–y、从–y至–z、从+z至+x、从+x至+y、从+y至+z。对符号值0、2而言,三条导线a、b、c的信号电平都在单位期间的边界上发生变化,其中两者的信号电平变化幅度较小,而另一者的信号电平变化幅度较大而需要更多转换时间。在导线a、b、c具有不同转换时间的情形下,符号值0、2存在较大的编码抖动。

图5b示出了符号值1、3、4,符号值1定义为以下导线状态转换:从–z至+y、从+y至–x、从–x至+z、从+z至–y、从–y至+x、从+x至–z;符号值3定义为以下导线状态转换:从–z至+x、从+x至–y、从–y至+z、从+z至–x、从–x至+y、从+y至–z;符号值4定义为以下导线状态转换:从–z至+z、从–x至+x、从–y至+y。对符号值1、3、4而言,三条导线a、b、c中仅有两条的信号电平在单位期间的边界上发生变化,且此两条导线上的转换具有相同幅度且转换所需时间相近。因此,符号值1、3、4不会产生编码抖动或只会产生较小的编码抖动。

由此可知,当符号值2或0被移动产业处理器接口c-phy的从装置接收时,产生的编码抖动大于其它符号值1、3及4被接收时所产生的编码抖动,这是因为符号值2及0相较于其它符号值而言,被接收时不同信号对之间的信号转换时间差异较大。

为消除编码抖动的影响,本发明实施例的时钟恢复电路102可使用适合的时序延迟来恢复时钟信号,此时序延迟可滤除包含符号值2或0的符号串流传输可能产生的最大编码抖动,借此,可正确地恢复时钟信号来锁存数据,以用于封包数据的接收。

因此,在传送封包数据至移动产业处理器接口的从装置之前,移动产业处理器接口的主装置可先传送包含符号值2及0当中至少一者的符号序列至该从装置,使得从装置可决定用于时钟恢复电路102中时序延迟电路204的适合的时序延迟。详细来说,请参考图6,图6为本发明实施例具有一移动产业处理器接口的一主装置60的示意图。主装置60包含一符号编码器602及驱动装置d1~d3。符号编码器602可将一符号序列转换为导线a、b、c上的导线状态,其中,依照图4所示的符号编码规则,符号序列中的每一符号可根据符号值及前一个单位期间内传送的前一个导线状态,被转换为欲在目前单位期间内传送的目前导线状态。举例来说,当符号值为2(即3位符号值“010”)且前一个导线状态为+y时,接续传送的目前导线状态应为+z。接着,驱动装置d1~d3可在传送封包数据之前,通过导线a、b、c传送符号序列转换而得的导线状态至移动产业处理器接口的从装置。

在一实施例中,上述用来找出时钟恢复电路适用的时序延迟的符号序列可在封包数据传输的前导码(preamble)当中的一可编程序列进行传送。请参考图7,图7为移动产业处理器接口c-phy规格所定义的高速数据传输的示意图。如图7所示,高速数据传输包含一前导码、同步信号(synchronizationword)、封包数据、及封包数据结尾(称为后置(postfield))。在高速数据传输阶段(即一高速模式)之前及之后为一控制模式(即一低功率模式),控制模式的信号传输应为本领域技术人员所熟知,因此未示于图7。前导码是在信号传输从控制模式切换到高速模式时被传送,前导码之后则依序是同步信号及封包数据的传送。前导码及同步信号可用来指示移动产业处理器接口的从装置预备好接收高速封包数据。详细来说,同步信号包含符号值为“3444443”的符号序列,从装置中的接收器及其它后端电路可通过同步信号的校准来接收后续封包数据。

前导码的内容依序为一开始区段(prebegin)、一中间区段(progseq)及一末尾区段(preend)。开始区段及末尾区段分别为连续多个符号值3所组成的符号序列,中间区段则包含一可编程序列,其具有14个符号s0~s13,可用来传送一预设符号序列,用来找出从装置所适用的时序延迟。可编程序列包含符号值2及0当中至少一者,以在可编程序列被从装置接收时产生较大的编码抖动。由于移动产业处理器接口c-phy规格未定义可编程序列的符号值,因此可根据本发明实施例在可编程序列中加入符号值2及/或0。当可编程序列的传输完成以后,从装置可决定用来执行时钟恢复以产生时钟信号的一时序延迟,此时钟信号并接着用来解码末尾区段中符号值皆为3的符号序列以及同步信号中符号值为“3444443”的符号序列,若可编程序列中的符号都可被正确解码时,上述时序延迟即为适合的时序延迟。

在一实施例中,在封包数据之前传送到从装置的符号序列可包含符号值为2的三个连续符号及/或符号值为0的三个连续符号。请再次参考图5a,符号值0对应于从–z至–y、从–y至–x、从–x至–z、从+z至+y、从+y至+x、以及从+x至+z的导线状态转换。因此,符号值为0的三个符号可位于四个连续单位期间,其可对应于例如–z→–y→–x→-z或+z→+y→+x→+z的连续三次导线状态转换。三个连续的符号值0可确保从装置侦测到导线状态转换加上不同导线的信号转换时间不匹配所产生的较大编码抖动,这是因为三种导线状态转换(例如–z→-y、–y→–x及–x→–z)分别是在不同导线a、b、c上具有较大幅度的信号电平转换,而导线a、b、c相对应的驱动装置可能具有不同驱动能力,且导线a、b、c可能具有不同特性。举例来说,根据表1所示,从–z至–y的导线状态转换(符号值0)中导线c具有较大的信号电平转换(其从电平“低”到“高”),但从–y至–x的导线状态转换中导线b具有较大的信号电平转换(其从电平“低”到“高”)。

除此之外,符号值为4的一符号可插入一第一组符号值为0的三个连续符号及一第二组符号值为0的三个连续符号之间,以产生一符号序列“0004000”,此符号序列可对应于例如–z→–y→–x→–z→+z→+y→+x→+z的连续导线状态转换。在此符号序列中,从装置可侦测到导线a、b、c上较大幅度的上升转换及下降转换所伴随的较大编码抖动。较佳地,由于符号序列“0004000”包含对应于符号值0的所有可能导线状态转换,因此可在主装置传送的符号序列中加入“0004000”序列以用来找出时序延迟。

同样地,符号值2对应于从–z至–x、从–x至–y、从–y至–z、从+z至+x、从+x至+y、以及从+y至+z的导线状态转换。因此,符号值为2的三个符号可位于三个连续单位期间,其可对应于例如–z→–x→–y→-z或+z→+x→+y→+z的连续三次导线状态转换。三个连续的符号值2可确保从装置侦测到导线状态转换加上不同导线的信号转换时间不匹配所产生的较大编码抖动,这是因为三种导线状态转换(例如–z→-x、-x→-y及–y→-z)分别是在不同导线a、b、c上具有较大幅度的信号电平转换,而导线a、b、c相对应的驱动装置可能具有不同驱动能力,且导线a、b、c可能具有不同特性。考虑不同导线a、b、c及其对应的驱动装置不匹配的情形,较佳地,符号序列可包含符号值为2的至少三个连续符号。

除此之外,符号值为4的一符号可插入一第一组符号值为2的三个连续符号及一第二组符号值为2的三个连续符号之间,以产生一符号序列“2224222”,此符号序列可对应于例如–z→-x→-y→-z→+z→+x→+y→+z的连续导线状态转换。在此符号序列中,从装置可侦测到导线a、b、c上较大幅度的上升转换及下降转换所伴随的较大编码抖动。较佳地,由于符号序列“2224222”包含对应于符号值2的所有可能导线状态转换,因此可在主装置传送的符号序列中加入“2224222”序列以用来找出时序延迟。

在一实施例中,若将包含符号值2及0至少一者的符号序列作为可编程序列(progseq),在封包数据之前传送至从装置,此符号序列的长度应符合可编程序列的长度,如移动产业处理器接口c-phy规格所定义的14个符号。举例来说,符号序列可以是14个符号“22242220004000”,此符号序列包含关于符号值2及0的各种可能导线状态转换。如此一来,传送至从装置的符号序列可产生更大的编码抖动,其更有利于判断时钟恢复电路的时序延迟,以对时钟信号的脉冲宽度进行控制。在另一实施例中,包含符号值2及0至少一者的符号序列也可不位于可编程序列(progseq),而在封包数据之前传送至从装置,此符号序列的符号数量则不受限于可编程序列的长度。上述符号序列中的符号也可结合其它符号值1、3及/或4。

值得注意的是,上述实施例仅包含本发明多种符号序列当中的数种可能。举例来说,符号值为0的三个连续符号也可通过其它导线状态转换来实现,例如–y→–x→–z→-y,而符号值为2的三个连续符号也可通过其它导线状态转换来实现,例如–x→-y→-z→-x。在另一实施例中,符号序列可包含符号值为2的三个连续符号以及符号值为0的三个连续符号的组合,以产生一符号序列“222000”,其相对应的连续导线状态转换可以是例如–z→-x→-y→-z→-y→-x→-z。

接着,移动产业处理器接口的从装置(如图1中的从装置10)可接收导线a、b、c上的导线状态。从装置10可通过时钟恢复电路102所产生的时钟信号clk来接收符号序列,其中,时钟信号clk的脉冲宽度可由时钟恢复电路102中时序延迟电路204的时序延迟所控制,如图2所示。详细来说,接收器r1~r3可接收一导线状态并根据导线状态产生三个差分输出信号rx_ab、rx_bc及rx_ca。符号解码器104可包含一锁存电路(latchcircuit)(未示于图1),其可在一第一采样时间通过时钟信号clk锁存差分输出信号rx_ab、rx_bc及rx_ca以产生三个目前的数字输出信号,并在第一采样时间之后的一第二采样时间通过时钟信号clk锁存目前的数字输出信号以产生另外三个数字输出信号用作为先前的数字输出信号。符号解码器104可根据对应于三个先前数字输出信号的一先前导线状态到对应于三个目前数字输出信号的一目前导线状态的转换,产生一目前符号值,并将解码后的符号值传送至判断单元106。判断单元106可将符号序列中特定数量的符号(例如所接收的14个符号当中的3个)与一参考符号序列进行比较,以判断特定数量的符号中每一符号是否相同于参考符号序列中相对应的符号,并据此产生一判断结果。需注意的是,参考符号序列相同于移动产业处理器接口的主装置所传送的符号序列中所有或部分符号,用来检查从装置10是否正确接收符号序列。在此情况下,参考符号序列也包含符号值2及0当中至少一者。若判断结果指示特定数量的接收符号是正确的,判断单元106可判断目前的时钟信号clk之下符号值2或0所伴随的编码抖动不影响符号序列的接收,进而判断用来控制目前时钟信号clk的脉冲宽度的时序延迟具有适合的数值。因此,从装置10的时钟恢复电路102可找出时序延迟的适合数值,用来产生时钟信号clk以用于封包数据的接收。

从装置10可设定时序延迟的多个可能数值。在一实施例中,时序延迟最初被设定至所有可能数值中的最小值。详细来说,若特定数量的判断结果指示所接收的特定数量的符号中存在至少一符号不同于参考符号序列中相对应的符号时(即判断出符号错误),代表时序延迟有必要进行调整,此时,判断单元106可传送控制信号s1至时钟恢复电路102的时序延迟电路204,以提高用来控制时钟信号clk的脉冲宽度的时序延迟(例如提高一级)。接着,判断单元106采用提高后的时序延迟所产生的时钟信号(即脉冲宽度增加的时钟信号)来接收符号序列中的后续符号。

另一方面,若特定数量的判断结果指示所接收的特定数量的符号中每一符号都相同于参考符号序列中相对应的符号时,代表时序延迟不需要进行调整,此时,判断单元106可判断时序延迟的现有数值适用于时钟恢复电路102产生时钟信号clk以接收封包数据。因此,现有时序延迟即可被设定为适合的时序延迟。时钟恢复电路102可根据适合的时序延迟来产生时钟信号clk,即通过适合的时序延迟来控制时钟信号clk的脉冲宽度,使符号解码器104得以使用时钟信号clk来正确地接收封包数据。

在另一实施例中,即使对应于所接收的特定数量的符号的特定数量的判断结果指示不需要对时钟信号clk的脉冲宽度进行调整,判断单元106仍提高时序延迟且时钟恢复电路102产生相对应的时钟信号clk来接收后续符号。时序延迟的提高可重复执行,直到对应于最新接收的特定数量的符号的判断结果指示最新接收的连续符号中出现任一错误符号为止。在此情况下,判断单元106可取得时序延迟的适合数值范围,且时钟恢复电路102可选择时序延迟的其中一个适合数值来控制时钟信号clk的脉冲宽度,用以接收封包数据。举例来说,判断单元106可选择时序延迟的适合数值范围的中间值作为一最佳时序延迟数值,以用来执行时钟恢复。

上述判断时序延迟以进行时钟恢复的运作方式可归纳为一流程80,如图8所示。流程80可实现于图1中从装置10的判断单元106,其包含以下步骤:

步骤800:开始。

步骤802:接收特定数量的符号。

步骤804:判断特定数量的符号是否相同于参考符号序列中相对应的符号。若是,则执行步骤808;若否,则执行步骤806。

步骤806:传送控制信号s1至时钟恢复电路102以提高时序延迟。接着执行步骤802。

步骤808:结束。

在另一实施例中,时序延迟最初被设定至所有可能数值中的最大值。详细来说,若特定数量的判断结果指示所接收的特定数量的符号中存在至少一符号不同于参考符号序列中相对应的符号时(即判断出符号错误),代表时序延迟有必要进行调整,此时,判断单元106可传送控制信号s1至时钟恢复电路102的时序延迟电路204,以降低用来控制时钟信号clk的脉冲宽度的时序延迟(例如降低一级)。接着,判断单元106采用降低后的时序延迟所产生的时钟信号(即脉冲宽度减少的时钟信号)来接收符号序列中的后续符号。

另一方面,若特定数量的判断结果指示所接收的特定数量的符号中每一符号都相同于参考符号序列中相对应的符号时,代表时序延迟不需要进行调整,此时,判断单元106可判断时序延迟的现有数值适用于控制时钟信号clk的脉冲宽度。因此,现有时序延迟即可被设定为适合的时序延迟。时钟恢复电路102可根据适合的时序延迟来产生时钟信号clk,即通过适合的时序延迟来控制时钟信号clk的脉冲宽度,使符号解码器104得以使用时钟信号clk来正确地接收封包数据。在另一实施例中,判断单元106可取得时序延迟的适合数值范围,且时钟恢复电路102可选择时序延迟范围中的一适合数值来控制时钟信号clk的脉冲宽度。

上述判断时序延迟以进行时钟恢复的运作方式可归纳为一流程90,如图9所示。流程90可实现于图1中从装置10的判断单元106,其包含以下步骤:

步骤900:开始。

步骤902:接收特定数量的符号。

步骤904:判断特定数量的符号是否相同于参考符号序列中相对应的符号。若是,则执行步骤908;若否,则执行步骤906。

步骤906:传送控制信号s1至时钟恢复电路102以降低时序延迟。接着执行步骤902。

步骤908:结束。

在另一实施例中,时序延迟最初可设定至一中间值,且判断单元106可从中间值提高或降低时序延迟,以找出时序延迟的适合数值或时序延迟的适合范围。需注意的是,用来判断目前时序延迟的数值为适用的判断结果数量可能不同于用来判断须调整(提高或降低)时序延迟的判断结果数量。举例来说,只有在判断单元106判断连续三个符号都被正确接收时,时钟恢复电路102才使用现有的时序延迟来产生时钟信号,以用来接收封包数据。此外,若判断单元106判断五个连续符号中的第二个符号错误时,即使第一个符号及第三至第五个符号都判断为正确,时钟恢复电路102仍使用提高后的时序延迟来产生时钟信号。

在另一实施例中,用来找出适合的时序延迟以产生时钟信号clk的判断流程可在每次高速传输开始时执行,这是因为编码抖动的长度可能因供应电压、温度及/或制程工艺参数变化的影响而改变,使得时序延迟的较佳值或最佳值也可能随之而改变。借此,时钟恢复电路102可找出具有适合脉冲宽度的时钟信号以用来接收封包数据。

值得注意的是,图6中的主装置60及图1中的从装置10的结构仅为本发明各种可能实施例当中的一种范例。举例来说,用来锁存接收器的差分输出信号的锁存电路也可独立于符号解码器。在移动产业处理器接口的从装置中,时钟恢复电路所产生的时钟信号可直接作为用来锁存符号/封包数据的时钟信号;或者,时钟恢复电路所产生的时钟信号可经过处理而产生不同的时钟信号。举例来说,移动产业处理器接口的从装置还可包含一时钟门控(clockgating)单元,以根据时钟恢复电路所产生的时钟信号的周期t来产生周期为2t的时钟信号(其上升缘及下降缘都可用来锁存数据)。在此例中,时钟门控单元可由一分频电路来实现。

上述关于移动产业处理器接口的主装置的运作方式可归纳为一流程100,如图10所示。流程100可用于图6中的主装置60,其包含以下步骤:

步骤1000:开始。

步骤1002:驱动装置d1~d3在传送封包数据至从装置之前,传送包含多个连续符号的一符号序列至从装置,多个连续符号包含符号值0及2当中至少一者,其中,符号值0及2相较于其它符号值1、3及4而言产生较大的编码抖动。

步骤1004:结束。

上述关于移动产业处理器接口的从装置的运作方式可归纳为一流程110,如图11所示。流程110可用于图1中的从装置10,其包含以下步骤:

步骤1100:开始。

步骤1102:接收器r1~r3接收导线状态并产生三个差分输出信号,其中,每一导线状态为三个传输线上的信号电平的组合。

步骤1104:符号解码器104根据一先前导线状态到一目前导线状态的转换,产生一特定数量的符号中的每一者,先前导线状态及目前导线状态是通过时钟恢复电路102所产生的一时钟信号clk来取得,其中,时钟信号clk的脉冲宽度由设定于时钟恢复电路102的一时序延迟所控制。

步骤1106:在特定数量的符号中,判断单元106判断每一符号是否相同于一参考符号序列中相对应的符号以产生一判断结果,其中,参考符号序列包含多个连续符号,此多个连续符号包含符号值0及2当中至少一者,其中,符号值0及2相较于其它符号值1、3及4而言产生较大的编码抖动。

步骤1108:判断单元106根据特定数量的判断结果来设定时序延迟的数值,以控制时钟信号clk的脉冲宽度。

步骤1110:结束。

关于流程100及110的详细运作及变化可参考前述段落的说明,在此不赘述。

综上所述,本发明的实施例提供了一种用来改善移动产业处理器接口c-phy的时钟恢复的方法以及移动产业处理器接口的主装置及从装置。主装置可在传送封包数据至从装置之前,先传送一符号序列,其中,此符号序列包含符号值0及/或2,用来产生(相对于其它符号值而言)较大的编码抖动。从装置可通过接收具有较大编码抖动的符号序列来设定并调整时序延迟,以控制时钟信号的脉冲宽度,进而取得用来控制时钟信号的脉冲宽度的适合时序延迟,以滤除任何编码抖动。因此,从装置的时钟恢复电路可采用适合的时序延迟,使时钟恢复电路产生用来接收封包数据的时钟信号。如此一来,从装置可使用正确的时钟信号来正确接收封包数据,同时消除编码抖动所造成的影响。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1