CN116954306A - 一种时钟移相方法和装置 - Google Patents
一种时钟移相方法和装置 Download PDFInfo
- Publication number
- CN116954306A CN116954306A CN202311214116.0A CN202311214116A CN116954306A CN 116954306 A CN116954306 A CN 116954306A CN 202311214116 A CN202311214116 A CN 202311214116A CN 116954306 A CN116954306 A CN 116954306A
- Authority
- CN
- China
- Prior art keywords
- delay
- signal
- step length
- interval
- length
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000005070 sampling Methods 0.000 claims abstract description 159
- 230000001934 delay Effects 0.000 claims abstract description 11
- 230000000630 rising effect Effects 0.000 claims description 26
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 17
- 230000003111 delayed effect Effects 0.000 claims description 17
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 101001003569 Homo sapiens LIM domain only protein 3 Proteins 0.000 description 11
- 101000639972 Homo sapiens Sodium-dependent dopamine transporter Proteins 0.000 description 11
- 102100026460 LIM domain only protein 3 Human genes 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000010363 phase shift Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010921 in-depth analysis Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/06—Clock generators producing several clock signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/13—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
- H03K5/14—Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of delay lines
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/15—Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors
- H03K5/15013—Arrangements in which pulses are delivered at different times at several outputs, i.e. pulse distributors with more than two outputs
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Nonlinear Science (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明涉及集成电路技术领域,提供了一种时钟移相方法和装置。其中所述方法包括:对初始信号进行不同延迟步长的延迟,得到各第一中间信号;使用各第一中间信号对通道数据进行采样,根据采样结果,确定各第一中间信号是否与通道数据对齐;根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长,将初始信号延迟目标步长,得到第一采样时钟信号;其中,所述第一采样时钟信号为HOST用于采样的时钟信号。本发明对初始信号进行不同步长的延迟,并确定相应延迟下采样确定信号与通道数据是否对齐,从而能够选定相应的延迟步长,使信号与数据对齐,从而确保后续HOST数据采样的正确工作。
Description
技术领域
本发明涉及集成电路技术领域,特别是涉及一种时钟移相方法和装置。
背景技术
eMMC(Embedded Multi Media Card,嵌入式多媒体卡)为MMC(MultiMedia CardAssociation,多媒体存储卡协会)协会所订立的、主要是针对手机或平板电脑等产品的内嵌式存储器标准规格。eMMC的一个明显优势是在封装中集成了一个控制器,用于提供标准接口并管理闪存,使得手机厂商就能专注于产品开发的其它部分,并缩短向市场推出产品的时间。
eMMC是当前常用的数据通信接口,广泛应用于各种芯片之间的通信,但是由于eMMC传输速度高,HOST controller(主机控制器)与eMMC之间通信使用的数字信号在高速传输过程中容易受到工艺、PAD(管脚输入输出)延迟、PCB(Printed Circuit Board,印制电路板)布线延迟等因素影响,导致信号出现相位偏移。这种相位偏移可能导致数据采样不正确,最终导致HOST或eMMC无法正常工作。
鉴于此,克服该现有技术所存在的缺陷是本技术领域亟待解决的问题。
发明内容
本发明要解决的技术问题是现有技术中HOST与媒体卡之间通信所使用的数字信号在高速传输过程中容易受到工艺、PAD延迟、PCB布线延迟等因素影响,导致信号出现相位偏移,影响HOST或媒体卡的正常工作。
本发明采用如下技术方案:
第一方面,本发明提供了一种时钟移相方法,包括:
对初始信号进行不同延迟步长的延迟,得到各第一中间信号;
使用各第一中间信号对通道数据进行采样,根据采样结果,确定各第一中间信号是否与通道数据对齐;
将与通道数据对齐的第一中间信号的延迟步长作为对齐步长,将未与通道数据对齐的第一中间信号的延迟步长作为非对齐步长;
根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长,将初始信号延迟目标步长,得到第一采样时钟信号;其中,所述第一采样时钟信号为HOST用于采样的时钟信号。
优选的,所述根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长,具体包括:
将连续多个对齐步长所在的步长区间划分为对齐区间,将连续多个非对齐步长所在的步长区间划分为非对齐区间;
找到完整对齐区间,选择位于该完整对齐区间中心的对齐步长作为目标步长;其中,所述完整对齐区间为位于两个非对齐区间之间的对齐区间。
优选的,若无法找到完整对齐区间,则查找非对齐区间前后的对齐区间,分别作为前区间和后区间;
若仅存在前区间或仅存在后区间,则在前区间中或后区间中选择相应的延迟步长作为目标延迟步长;
若存在前区间和后区间,则使用前区间的区间长度与后区间的区间长度,计算得到目标长度;
以非对齐区间后目标长度所在位置的延迟步长作为目标步长。
优选的,所述在前区间中或后区间中选择相应的延迟步长作为目标延迟步长,具体包括:
选择位于前区间中心的对齐步长或后区间中心的对齐步长作为目标延迟步长。
优选的,所述使用前区间的区间长度与后区间的区间长度,计算得到目标长度,具体包括:
以前区间的区间长度与后区间的区间长度的平均值作为目标长度。
优选的,所述方法还包括:
按照每间隔预设时间延迟步长增加第一预设步长的方式,对初始信号进行延迟,依次得到不同延迟的第二中间信号;
在初始信号的上升沿或下降沿采集相应第二中间信号的电平,生成超前进位信号;
以超前进位信号产生上升沿时所对应的延迟步长以及超前进位信号产生下降沿时所对应的延迟步长,形成延迟步长区间;
以所述延迟步长区间的长度除以预设值,得到目标延迟步长;
使用所述目标延迟步长对DS信号进行延迟,得到第二采样时钟信号;其中,所述第二采样时钟信号为HOST在相应模式下用于辅助采样的时钟信号。
优选的,当完整对齐区间的长度小于预设长度时,使用各第一中间信号对通道数据进行采样,根据采样结果,确定各通道数据的数据周期划分;
根据各通道数据的数据周期划分,按照不同的n值,在每个n值下将数据周期延迟小的n个通道数据划分为第一通道数据,将数据周期延迟大的Num-n个通道数据划分为第二通道数据,得到对应n值下的第一通道数据和第二通道数据;其中,n大于1且n小于Num,Num为通道数量。
找到每个n值下,第一通道数据的数据周期维持不变且均为同一数据周期时所对应的各第一步长区间,计算各第一步长区间的长度;
以长度最长的第一步长区间中心的延迟步长作为第一目标延迟步长,以长度最长的第一步长区间所对应的n值作为最终的n值,以使用该最终的n值下划分所得的第一通道数据为第一目标数据,以使用该最终的n值下划分所得的第二通道数据为第二目标数据,找到该第二目标数据的数据周期维持不变且均为同一数据周期时所对应的第二步长区间;
对初始信号进行第一目标延迟步长得到第一目标采样信号,以第二步长区间中心的延迟步长作为第二目标延迟步长,对初始信号进行第二目标延迟步长得到第二目标采样信号,使用第一目标采样信号对第一目标数据进行采样,得到第一采样结果,使用第二目标采样信号对第二目标数据进行采样,得到第二采样结果,将第一采样结果和第二采样结果合并得到所有通道数据在相应数据周期的数据。
第二方面,本发明提供了一种时钟移相装置,包括控制模块和延迟模块;
所述延迟模块用于对初始信号进行不同延迟步长的延迟,得到各第一中间信号;
所述控制模块用于使用各第一中间信号对通道数据进行采样,根据采样结果,确定各第一中间信号是否与通道数据对齐;所述第一中间信号通过对初始信号进行延迟得到;将与通道数据对齐的第一中间信号的延迟步长作为对齐步长,将未与通道数据对齐的第一中间信号的延迟步长作为非对齐步长;根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长;
所述延迟模块还用于将初始信号延迟目标步长,得到第一采样时钟信号。
优选的,所述延迟模块包括至少一条延迟线路,每条延迟线路包括延迟组件和选择组件;
所述延迟组件用于将输入信号进行不同步长的延迟,得到不同延迟步长的延迟信号;
所述选择组件用于根据控制信号,选择性地将相应延迟的延迟信号输出,得到第一中间信号;其中,所述控制信号从所述选择组件的控制端输入。
优选的,所述装置还包括触发模块;
所述延迟组件用于按照每间隔预设时间延迟步长增加预设步长的方式,对初始信号进行延迟,依次得到不同延迟的第二中间信号;
所述触发模块用于在初始信号的上升沿或下降沿采集相应第二中间信号的电平,生成超前进位信号;
所述控制模块用于以超前进位信号产生上升沿时所对应的延迟步长以及超前进位信号产生下降沿时所对应的延迟步长,形成延迟步长区间;以所述延迟步长区间的长度除以预设值,得到目标延迟步长;
所述延迟模块还使用所述目标延迟步长对DS信号进行延迟,得到第二采样时钟信号;其中,所述第二采样时钟信号为HOST在相应模式下用于辅助采样的时钟信号。
本发明通过对初始信号进行不同步长的延迟,并确定相应延迟下采样确定信号与通道数据是否对齐,从而能够选定相应的延迟步长,使信号与数据对齐,从而确保后续HOST数据采样的正确工作。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种时钟移相方法的流程示意图;
图2是本发明实施例提供的第一种时钟移相方法的示意图;
图3是本发明实施例提供的又一种时钟移相方法的流程示意图;
图4是本发明实施例提供的第二种时钟移相方法的示意图;
图5是本发明实施例提供的第三种时钟移相方法的示意图;
图6是本发明实施例提供的第四种时钟移相方法的示意图;
图7是本发明实施例提供的第五种时钟移相方法的示意图;
图8是本发明实施例提供的第六种时钟移相方法的示意图;
图9是本发明实施例提供的第七种时钟移相方法的示意图;
图10是本发明实施例提供的再一种时钟移相方法的流程示意图;
图11是本发明实施例提供的第八种时钟移相方法的示意图;
图12是本发明实施例提供的一种时钟移相装置的架构示意图;
图13是本发明实施例提供的一种时钟移相装置中移相线路的示意图;
图14是本发明实施例提供的一种时钟移相装置中移相线路与触发器的示意图;
图15是本发明实施例提供的另一种时钟移相装置的架构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明中术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请中,除非另有明确的规定和限定,术语“连接”应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或成一体;可以是直接相连,也可以通过中间媒介间接相连。此外,术语“耦接”可以是实现信号传输的电性连接的方式。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
现有技术中HOST与媒体卡之间通信所使用的数字信号在高速传输过程中容易受到工艺、PAD延迟、PCB布线延迟等因素影响,导致信号出现相位偏移,影响HOST或媒体卡的正常工作,本发明实施例以eMMC媒体卡进行举例而言,在实际使用中,SD(Secure DigitalMemory Card,安全数字卡)媒体卡同样是可行的,为了解决上述问题,本发明实施例提供了一种时钟移相方法,如图1所示,包括:
在步骤201中,对初始信号进行不同延迟步长的延迟,得到各第一中间信号。在一些实施方式中,所述对初始信号进行不同延迟步长的延迟主要是通过延迟线路实现,该部分将在后续实施例结合具体的应用场景进行详述,在此不加以赘述。在一些实施方式中,可按照每间隔预设时间延迟步长增加相应步长的方式,对初始信号进行延迟。可以理解的是,该预设时间和增加的步长可根据经验分析得到,本发明对此不做限制。
在步骤202中,使用各第一中间信号对通道数据进行采样,根据采样结果,确定各第一中间信号是否与通道数据对齐。所述与通信数据对齐是指采样结果中各通道的数据是否均为同一周期的数据,如图2所示,以使用第一中间信号的上升沿进行采样举例而言,当对多个通道数据采样时对应均为第N个数据周期时,认为第一中间信号与通道数据对齐,否则,认为第一中间信号与通道数据未对齐。其中,各通道数据可使用预先设定的预设数据,从而根据采样结果在对应预设数据中的数据周期,判断第一中间信号是否与通道数据对齐,或在各通道数据中携带周期编号,根据周期编号确定采样结果所对应的数据周期,进而判断是否对齐。
在步骤203中,将与通道数据对齐的第一中间信号的延迟步长作为对齐步长,将未与通道数据对齐的第一中间信号的延迟步长作为非对齐步长。
在步骤204中,根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长,将初始信号延迟目标步长,得到第一采样时钟信号;其中,所述第一采样时钟信号为HOST用于采样的时钟信号。
在一些实施方式中,所述初始信号在实际使用中也称作tx_clk信号,所述第一采样时钟信号在实际使用中也称作rx_clk信号。
本发明实施例通过对初始信号进行不同步长的延迟,并确定相应延迟下采样确定信号与通道数据是否对齐,从而能够选定相应的延迟步长,使信号与数据对齐,从而确保后续HOST数据采样的正确工作。
在一些实施方式中,所述根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长,如图3所示,具体包括:
在步骤301中,将连续多个对齐步长所在的步长区间划分为对齐区间,将连续多个非对齐步长所在的步长区间划分为非对齐区间。在后续实施例或附图中,也以Pass steps或pass steps作为对齐区间的替代性表述,以Fail steps或fail steps作为非对齐区间的替代性表述。
在步骤302中,找到完整对齐区间,选择位于该完整对齐区间中心的对齐步长作为目标步长;其中,所述完整对齐区间为位于两个非对齐区间之间的对齐区间。
在一些实施方式中可能存在如图4和图5的两种情况,图4为第一个延迟步长最小的第一中间信号的采样时刻恰好位于对齐区间中,此时,继续对初始信号进行延迟,直至经历非对齐区间和对齐区间,并到达下一非对齐区间的起始位置,此时,确定得到完整对齐区间,即如图4所示的dn=7’d41至dn=7’d76所在区间;图5为第一个延迟步长最小的采样时刻位于非对齐区间中,继续对初始信号进行延迟,直至经历对齐区间,并到达下一非对齐区间的起始位置,确定得到完整对齐区间,即如图5所示的dn=7’d19至dn=7’d59所在区间。
选择完整对齐区间中心的对齐步长进行延迟能够使延迟所得的rx_clk信号具有较好的鲁棒性,即使在后续运行过程中,信号在传输过程中出现少量偏移,也可确保信号与各通道数据处于对齐状态,从而确保采样的正确性。
在一些实施方式中,还可能出现无法找到完整对齐区间的情况,如当延迟模块的最大延迟无法覆盖通道数据传输总线的完整时钟周期的情况下,本发明实施例还针对该情况,提供了一种优选的实施方式,即若无法找到完整对齐区间,则查找非对齐区间前后的对齐区间,分别作为前区间和后区间。
若仅存在前区间或仅存在后区间,则在前区间中或后区间中选择相应的延迟步长作为目标延迟步长;若存在前区间和后区间,则使用前区间的区间长度与后区间的区间长度,计算得到目标长度;以非对齐区间后目标长度所在位置的延迟步长作为目标步长。
在一些实施方式中,所述在前区间中或后区间中选择相应的延迟步长作为目标延迟步长,具体包括:选择位于前区间中心的对齐步长或后区间中心的对齐步长作为目标延迟步长,如图6所示。所述使用前区间的区间长度与后区间的区间长度,计算得到目标长度,具体包括:以前区间的区间长度与后区间的区间长度的平均值作为目标长度,如图7所示。
在一些实施方式中,还可能存在各通道数据之间的延迟偏差过大,导致对齐区间过短的情况,如图8中的对齐区间所示,在这种情况下,即使选用了对齐区间中心的对齐步长作为目标步长进行初始信号的延迟得到第一采样时钟信号,也极有可能由于使用过程中信号与数据稍有偏移,便出现第一采样时钟信号与数据无法对齐的情况,从而导致数据采样错误,为了解决该问题,本实施例还提供了一种优选的实施方式,即在完整对齐区间长度小于预设长度时,该预设长度由本领域技术人员根据经验分析得到,具体包括:
对初始信号进行不同延迟步长的延迟,得到各第一中间信号。使用各第一中间信号对通道数据进行采样,根据采样结果,确定各通道数据的数据周期划分;如若存在12个不同延迟步长的第一中间信号,12个延迟步长依次递增,且每两个延迟步长之间间隔dc,以第一个延迟步长为dc为例,则第n个延迟步长为n×dc。
针对第一个通道数据DAT0而言,若第1~3个延迟步长(对应的延迟步长区间为[dc,3dc])的第一中间信号采样所得数据为第N-1个周期,第4~9个延迟步长(对应的延迟步长区间为[4dc,9dc])的第一中间信号采样所得数据为第N个数据周期,第10~12个延迟步长(对应的延迟步长区间为[10dc,12dc])的第一中间信号采样所得数据为第N+1个数据周期,则确定第一个通道数据DAT0的数据周期划分为:[dc,3dc]为第N-1个数据周期,[4dc,9dc]为第N个数据周期,[10dc,12dc]为第N+1个数据周期。
若第二个通道数据DAT1的数据周期划分为:[dc,7dc]为第N-1个数据周期,[7dc,12dc]为第N个数据周期,则只有在[7dc,9dc]之间采样时,能够使第一个通道数据DAT0与第二个通道数据DAT1对齐,其长度仅为2dc。
根据各通道数据的数据周期划分,确定各通道数据的数据周期维持不变时所对应的各步长区间,计算各步长区间的长度。
其中,所述各通道数据的数据周期维持不变为:在相应步长区间内,相应通道数据的数据周期不发生变化,如在[4dc,7dc]中,第一个通道数据DAT0为第N个数据周期,第二个通道数据DAT1为第N-1个数据周期,而当在3dc时,第一个通道数据DAT0为第N-1个数据周期,在8dc时,第二个通道数据DAT1为第N个数据周期,即在该区间内时,第一个通道数据DAT0和第二个通道数据DAT1的数据周期均不发生变化,超出该区间时,第一个通道数据DAT0或第二个通道数据DAT1的数据周期发生变化。若其他6个通道数据的数据周期均在该区间中不发生变化,则[4dc,7dc]形成一个步长区间,该步长区间的长度为7dc-4dc=3dc。
以长度最长的步长区间作为第一区间,以第一区间中心的延迟步长作为目标步长;其中,由于数据的周期长度一致且等于信号的周期,则当上一个上升沿落于第一区间时,下一个上升沿必然落于下一个第一区间中;两个相邻的第一区间中,每个通道数据必然存在1个数据周期的间隔,如在上一个第一区间中,第一个通道数据DAT0为第N周期,则在下一个第一区间中,第一个通道数据DAT0必然为第N+1周期。
将初始信号延迟目标步长,得到第一采样时钟信号,使用第一采样时钟信号进行各通道数据的采样,并将上一次采样所得的相应通道数据与下一次采样所得的相应通道数据进行合并,得到所有通道数据在相应数据周期的数据;如图8所示,在第一个第一区间采集得到各通道数据的数据周期为:第一个通道数据DAT0为第N周期,其余通道数据均为第N-1周期;在第二个第一区间采集得到各通道数据的数据周期为:第一个通道数据DAT0为第N+1周期,其余通道数据均为第N周期,则将这两次采样所得的数据(即第一次采集得到的DAT0与第二次采集得到的DAT1~DAT7)合并则可得到每个通道数据在第N周期的数据。依次类推的,将第二个第一区间采集所得数据与第三个第一区间采集所得数据(即第二次采集得到的DAT0与第三次采集得到的DAT1~DAT7)合并可得到每个通道数据在第N+1周期的数据。
在一些实施方式中,还存在一种情况为:第一区间即为对齐区间,此时即对齐区间的长度较长,无需对两次采样数据进行合并,一次采样即可得到所有通道数据在相应数据周期的数据。
在此需要说明的是,本发明实施例所述的“上一次采样”和“下一次采样”相对两次相邻的采样过程而言的,例如,截止某个时间为止已经进行了三次采样,在此为描述方便,将这三次采样按照时间顺序称为:第一次采样、第二次采样和第三次采样,则第一次采样为第二次采样的“上一次采样”,第二次采样为第一次采样的“下一次采样”,第二次采样为第三次采样的“上一次采样”,第三次采样为第二次采样的“下一次采样”。
在该方式下,由于第一区间的长度相对较对齐区间较长,故而以第一区间中心的延迟步长作为目标步长时,能够使第一采样信号即使相对通道数据发生偏移,只要不超出第一区间的范围,则依旧能够采样得到正常数据,从而提高第一采样信号的鲁棒性。
还存在一种可选的实现方式为:在完整对齐区间长度小于预设长度时,使用各第一中间信号对通道数据进行采样,根据采样结果,确定各通道数据的数据周期划分。
根据各通道数据的数据周期划分,按照不同的n值,在每个n值下将数据周期延迟小的n个通道数据划分为第一通道数据,将数据周期延迟大的Num-n个通道数据划分为第二通道数据,得到对应n值下的第一通道数据和第二通道数据;其中,n大于1且n小于Num,Num为通道数量。
找到每个n值下,第一通道数据的数据周期维持不变且均为同一数据周期时所对应的各第一步长区间,计算各第一步长区间的长度;其中,所述数据周期维持不变且均为同一数据周期具体为:在相应区间内,第一通道数据的数据周期不发生变化,且第一通道数据的数据周期均为同一数据周期,如图9所示,若n为1,即第一个通道数据DAT0划分为第一通道数据,则以第一个通道数据DAT0的一个数据周期即为一个第一步长区间,当n为2时,即第一个通道数据DAT0和第二个通道数据DAT1划分为第一通道数据,则以第一个通道数据DAT0和第二个通道数据DAT1均处于同一数据周期的区间作为第一步长区间,如在[dc,3dc]中,第一通道数据DAT0和第二通道数据DAT1均为第N-1数据周期,则[dc,3dc]可作为一个第一步长区间。
以长度最长的第一步长区间中心的延迟步长作为第一目标延迟步长,以长度最长的第一步长区间所对应的n值作为最终的n值,以使用该最终的n值下划分所得的第一通道数据为第一目标数据,以使用该最终的n值下划分所得的第二通道数据为第二目标数据,找到该第二目标数据的数据周期维持不变且均为同一数据周期时所对应的第二步长区间。
对初始信号进行第一目标延迟步长得到第一目标采样信号,以第二步长区间中心的延迟步长作为第二目标延迟步长,对初始信号进行第二目标延迟步长得到第二目标采样信号,使用第一目标采样信号对第一目标数据进行采样,得到第一采样结果,使用第二目标采样信号对第二目标数据进行采样,得到第二采样结果,将第一采样结果和第二采样结果合并得到所有通道数据在相应数据周期的数据。在实际使用中,所述第一目标采样信号和第二目标采样信号可通过两条延迟线路延迟得到。
以图9所示,第一个通道数据DAT0的第N个数据周期先到来,则当n为1时,将第一个通道数据DAT0划分为第一通道数据,将第二个通道数据DAT1~第八个通道数据DAT7划分为第二通道数据,当n为2时,将DAT0~DAT1划分为第一通道数据,将DAT2~DAT7划分为第二通道数据,依次类推,分别找到对应的各第一步长区间,经计算得到在n为1时对应的第一步长区间最长,以n为1时的第一步长区间中心的延迟步长作为第一目标延迟步长,对应由第二通道数据得到的第二步长区间如图9所示,以第二步长区间中心的延迟步长作为第二目标延迟步长,从而得到第一目标采样信号和第二目标采样信号,如图9所示分别为rx_clk_1和rx_clk_2,将rx_clk_1采集得到的DAT0与rx_clk_2采集得到的DAT1~DAT7合并得到DAT0~DAT7的完整数据,如图9所示,在rx_clk_1上升沿采样得到DAT0为第N个数据周期,在rx_clk_2上升沿采样得到DAT1~DAT7为第N个数据周期,从而能够得到DAT0~DAT7的第N个数据周期,相同的,在rx_clk_1的下一个上升沿采样得到DAT0为第N+1个数据周期,在rx_clk_2上升沿采样得到DAT1~DAT7为第N+1个数据周期,从而得到DAT0~DAT7为第N+1个数据周期。
在该实现方式下,通过使用两个采样信号,从而能够进一步扩大信号的可偏移范围,提高信号的鲁棒性,确保采样数据正确。
在一些实施方式中,在确定各通道数据的数据周期划分后,根据各通道数据的数据周期划分,选用相应的延时和采样方法,如当确认得到完整对齐区间长度不小于预设长度时,以对齐区间中心的延迟步长作为目标步长,当对齐区间长度小于预设长度时,确定最长的第一区间的长度,若最长第一区间的长度不小于预设长度,则以最长的第一区间中心的延迟步长作为目标步长,并使用两次相邻的采样数据合并得到完整数据,即上述的如图8所示的方法;若最长第一区间的长度小于预设长度,则使用两个采样信号进行采样,并合并得到完整数据,即上述的如图9所示的方法。
在此需要说明的是,出于表述的简洁性考虑,当无需对各通道数据进行区分表述时,本发明实施例将所有通道数据整体简称为通道数据,如涉及对齐操作时,所指代的即为信号与所有通道数据整体对齐,即信号的采样位置对应各通道数据的数据周期一致。
在实际使用中,HOST与eMMC之间的通信信号还包括第二采样信号,所述第二采样信号在实际使用中可被本领域技术人员称为data_storbe信号。所述方法如图10所示,还包括:
在步骤401中,按照每间隔预设时间延迟步长增加第一预设步长的方式,对初始信号进行延迟,依次得到不同延迟的第二中间信号;所述预设时间和第一预设步长由本领域技术人员根据经验分析得到。
在步骤402中,在初始信号的上升沿或下降沿采集相应第二中间信号的电平,生成超前进位信号;其中,以初始信号的上升沿或下降沿所对应时刻的延迟步长下的第二中间信号生成超前进位信号。
在步骤403中,以超前进位信号产生上升沿时所对应的延迟步长以及超前进位信号产生下降沿时所对应的延迟步长,形成延迟步长区间;所述延迟步长区间即对应初始信号的一个完整时钟周期。
在步骤404中,以所述延迟步长区间的长度除以预设值,得到目标延迟步长;所述预设值由本领域技术人员根据经验分析得到,所述预设值可以是4。
在步骤405中,使用所述目标延迟步长对DS信号进行延迟,得到第二采样时钟信号;其中,所述第二采样时钟信号为HOST在相应模式下用于辅助采样的时钟信号。所述DS信号为eMMC所产生的信号,DS信号的时钟周期与初始信号的时钟周期一致,且DS信号的上升沿或下降沿与eMMC的数据的周期的起始或结束位置对齐。
本发明实施例通过在初始信号的上升沿或下降沿进行第二中间信号的采样,从而将延迟步长与初始信号的延迟周期相对应,从而得到完整时钟周期所对应的延迟步长区间,进而可通过选择相应的目标延迟步长,使第二采样信号的上升沿或下降沿对齐到eMMC的数据的周期中间位置,从而确保后续信号发生偏移时,依旧能够与数据对齐,如图11所示。
在一些实施方式中,HOST与eMMC之间的通信信号还包括CLK信号,即eMMC用于采样的时钟信号,故所述方法还包括:对初始信号进行第二预设步长的延迟,得到媒体卡用于采样的时钟信号。可以理解的是,所述第二预设步长可根据实际需求或经验分析得到,本发明对此不做限制。
本发明实施例所述的方法在HOST与eMMC交互前进行一次,称作tuning,且在后续交互过程中每经历一段时间进行一次,也称作retuning,具体的在何时进行retuning可设置相应的周期或指标进行确定。
本发明在提供了上述实施例内容所描述的一种时钟移相方法后,本发明实施例还将进一步提供一种时钟移相装置,为的是对实施例中相应方法的结构实现角度做相关阐述,并进一步就其设计原理做相关的深入分析。需要说明的是,上述实施例的方法在此依旧适用,在本实施例中将不再对其方法进行赘述。
本实施例所提供的一种时钟移相装置,如图12所示,包括控制模块和延迟模块。所述延迟模块用于对初始信号进行不同延迟步长的延迟,得到各第一中间信号。所述控制模块用于使用各第一中间信号对通道数据进行采样,根据采样结果,确定各第一中间信号是否与通道数据对齐;所述第一中间信号通过对初始信号进行延迟得到;将与通道数据对齐的第一中间信号的延迟步长作为对齐步长,将未与通道数据对齐的第一中间信号的延迟步长作为非对齐步长;根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长。所述延迟模块还用于将初始信号延迟目标步长,得到第一采样时钟信号。
其中,所述延迟模块包括至少一条延迟线路,一条延迟线路用于对相应应信号进行延迟,每条延迟线路包括延迟组件和选择组件;所述延迟组件用于将输入信号进行不同步长的延迟,得到不同延迟步长的延迟信号;所述选择组件用于根据控制信号,选择性地将相应延迟的延迟信号输出,得到第一中间信号;其中,所述控制信号从所述选择组件的控制端输入。所述延迟组件由多个延迟单元级联得到,所述选择组件可以由多个选择器连接得到,如图13所示。
所述装置还包括触发模块;所述触发模块可以是触发器,在实际使用中,通常将两个触发器串联使用,以去除信号毛刺,如图14所示。
所述延迟组件用于按照每间隔预设时间延迟步长增加预设步长的方式,对初始信号进行延迟,依次得到不同延迟的第二中间信号。
所述触发模块用于在初始信号的上升沿或下降沿采集相应第二中间信号的电平,生成超前进位信号;如图14所示的lead0_leg1。
所述控制模块用于以超前进位信号产生上升沿时所对应的延迟步长以及超前进位信号产生下降沿时所对应的延迟步长,形成延迟步长区间;以所述延迟步长区间的长度除以预设值,得到目标延迟步长。
所述延迟模块还使用所述目标延迟步长对DS信号进行延迟,得到第二采样时钟信号;其中,所述第二采样时钟信号为HOST在相应模式下用于辅助采样的时钟信号。
本发明实施例还结合时钟移相方法中的各优选实施方式,提供了完整的时钟移相装置示意图,如图15所示,其中,Delay line0-Delay line3代表相应的延迟线路,共同组成延迟模块,Delay line2接有触发模块(在图15中未示出),Tune module和Lock module共同构成控制模块。
HOST控制器通过内部的时钟移相装置,再经过PAD IO模块,输入或输出12根数字信号线,通过PCB板与eMMC颗粒连接。其中,8根双向DAT0~7信号线用于HOST与eMMC之间数据传输;CLK时钟由HOST控制器输出到eMMC,频率为0~200MHz之间;DS时钟由eMMC输出到HOST控制器,只有工作在HS400模式下才会使用到该DS时钟信号;RST_n信号由HOST输出到eMMC,起到硬复位eMMC作用;CMD信号为双向信号,用于HOST控制器与eMMC device之间传输CMD指令与Response信息。
本发明基于上述实施例内容所描述的方法基础上,结合以图15所示的时钟移相装置进行时钟移相的具体应用场景,并借由相关场景下的技术表述来阐述本发明特性场景下的实现过程。
图15中的四条Delay line,每条Delay line包含最大128级可配置step步长延迟,每级step步长延迟约为80ps,总共10240ps,约10ns。能覆盖HS200、HS400模式200MHz下2个周期的时钟延迟。如图13所示,使用时,实际的延迟步长长度通过7bit位宽的delay_num值配置决定,delay_num乘以每级step步长延迟大小,从而来确定出确切的延迟大小(在实际使用中,不同工艺下,布局布线后一级step步长延迟大小会与80ps略微有差异)。
该类Delay line输入为clock与delay number值,该delay number值后续也称作dc值,输出为延迟后的clock。每级step步长由两个反相器组成,每个反相器延迟40ps,两个组成延迟80ps的一级step步长。用一个个2选1的mux(选择器)组成的MUX树(即选择组件)来选择步长长度,MUX树深度由总步长数n来决定,由公式确定,本设计总步长n=128,故此MUX树深度为7。当dc值为7’d0时,输出延迟为1级step步长,当dc值为7’d127时,输出延迟为128级步长。
而当将Delay line与触发器相连接时,该类Delay line输入为clock与delaynumber值,输出为超前进位信号lead0_lag1。该类Delay line工作原理上并无太大区别,主要区别在于末端加入两个D触发器用作鉴相器计算超前进位信号。鉴相器的参考时钟来自直接输入的未延迟的时钟,数据时钟来自经过Delay line延迟后的时钟。参考时钟去采样数据时钟,输出超前进位信号lead0_lag1,超前进位信号开始为低电平,随着delay_num增加,逐步转变到高电平,直到覆盖完整一个时钟周期。
其中,Delay Line0、Delay Line1、Delay Line3均未连接触发器,Delay Line2连接有触发器。
CLK时钟由HOST控制器输出到eMMC,用于HOST发送数据、eMMC采样数据。在图13中,CLK由HOST内部tx_clk时钟移相后产生,若tx_clk时钟没有经过Delay line延迟,而是直接输出到CLK时钟,HOST发出数据时,数据DAT会沿着CLK上升沿发出。但此时时钟与数据经过PCB板后,经过PCB布线延迟后,到达eMMC端时,时钟与数据信号是极大概率出现偏移、非对齐的情况,如图2所示非对齐区间,若此时eMMC利用该CLK去采样数据,便会出现错误。故HOST控制器需要在正式发送数据前对CLK进行移相操作。
在一些实施方式中,CLK用图13中的Delay line0进行移相,该Delay line0的delay_num0值由寄存器直接配置配置。但该delay_num0值的具体配置大小实际上会受到工艺、PAD延迟、PCB布线延迟等影响,需根据实际传输情况来确定。不论在SDR或者DDR速率下,建议选取略小于本次传输模式1/4周期对应的delay_num0值比较合适。
值得一提的是,单bit位宽的HOST端的CMD与eMMC端的Response信号不会存在类似8bit的DAT数据偏移Fail Steps情况,故即使CLK时钟信号与CMD信号出现偏移,只需要满足建议保持时间要求,接受方就能正确采样。即便出现因建立时间不满足导致的采样错误,寄存器配置微调delay_num0即可。
rx_clk时钟在HOST内部产生,用于HOST数据采样使用。eMMC端发送数据时,会在HOST端的CLK上升沿发出数据,也就是说,HOST读eMMC时,eMMC发送的数据最终到达HOST端,也会出现类似图2一样的时钟与数据偏移。
由于CLK被用作了HOST发送数据时钟、eMMC采样时钟、eMMC发送数据时钟,若此时再把CLK用作HOST采样时钟则会出现冲突。故而HOST内部产生一个rx_clk时钟用作HOST控制器内部采样用时钟。
rx_clk时钟由tx_clk时钟移相得到。HOST在正式收发数据前,会发送CMD21命令进行tuning,如图5所示,tuning开始时,eMMC收到CMD21命令后,会返回固定格式的通道数据,HOST会利用rx_clk时钟采样该数据并校验,校验失败时即信号与通道数据未对齐,记为fail step,校验成功即信号与通道数据相对齐,记为pass step,无论校验是否通过,Tune模块都会使delay_num1值加1,使rx_clk时钟右移80ps,并如此循环。最终直到计算出完整的pass steps后,计算的到一个准确的delay_num1值用作tx_clk的相位偏移,tuning结束。
由于前文tx_clk时钟已经配置了delay_num0,即出去的CLK时钟有了一部分延迟,等效于回来的数据已经有了一部分延迟,加上PCB布线、PAD等延迟,故第一次delay_num1从1开始tuning,花费的时间较长,后续retuning会从左窗口值减4作为起始delay_num1值,这样retuning结果会更快一些。
由于本发明实施例的Delay line最大延迟为10ns,在200MHz(T=5ns)总线速率下能够覆盖完整的时钟周期(Fail steps加上Pass Steps为一完整的时钟周期),此时能锁定比较准确的delay_num1值。但若在100MHz(T=10ns)及以下速率下,Delay line总延时不能覆盖完整时钟周期,dc值的锁定会略微出现偏差,但是不会影响采样。以下是不同频率下,出现不同tuning场景时,delay_num1值的锁定机制。
如当工作时钟tx_clk为T=5ns时:假设起始tuning为pass step,如图4所示,随着delay_num1值从0逐渐递增,rx_clk时钟逐步右移,经过pass steps、fail steps、passsteps过程,最后再经过一次fail step作为结束标志来结束tuning,得到此次tuning的左窗口与右窗口对应的delay_num1值,此时第二次的pass steps为一完整的、有效的采样时钟窗口。此时左窗口的delay_num1值加上第二次pass steps次数的一半,则为最终锁定的delay_num1值,即以delay_num1为目标延迟步长,对tx_clk进行延迟得到rx_clk信号。
假设起始tuning为fail step,如图5所示,随着delay_num1值从0逐渐递增,rx_clk时钟逐步右移,经过fail steps、pass steps过程,最后再经过一次fail step作为结束标志来结束tuning,此时第一次的pass steps为一次完整的、有效的采样窗口。与之前一样,左窗口delay_num1值加上第一次pass steps次数的一半,则为最终锁定的delay_num1值。
当工作时钟tc_clk为T10ns时:假设起始tuning为pass step,如图7所示,随着delay_num1值从0逐步递增,rx_clk时钟逐步右移,经过pass steps、fail steps后,再经过pass setps时,若此时128级delay line不够用,delay_num1值会从127回到0,继续进行tuning累加,再次遇到fail step时结束tuning。此时第二次pass steps次数可能不会覆盖完整的一次pass计数,通过左窗口delay_num1值加上pass steps次数的一半锁定得到的delay_num1值,结果也不会是完整pass计数的中间值。但是此delay_num1值也是能够pass的,不会影响利用rx_clk采样,只是此时锁定的delay_num1的鲁棒性没有中间值好,用此delay_num1值进行一定时间或者一定量的数据传输后,需更快进行retuning来矫正。
假设起始tuning为fail steps,如图6所示,随着delay_num1值从0逐步递增,rx_clk时钟右移,经过fail steps,再经过pass steps时,若此时128级Delay line不够用,delay_num1值从127回到0时,遇到fail step,此时结束tuning。与之前原理类似,此时得到的pass step次数并不是一次完整的pass steps,故锁定得到的dc值也不是pass steps的中间值,但也不会影响rx_clk采样。
DS时钟仅在HS400传输模式下由eMMC产生,用于HOST采样数据使用。在该模式下,HOST写读eMMC,会利用时钟上下沿传输、采样数据。对于写eMMC,HOST利用移相后的CLK时钟,对于读eMMC,HOST用DS时钟采样,但此时读数据是由eMMC随着DS上下沿一起发出,如图12所示,故HOST需要在收发数据前,对DS右移相1/4周期。
在图13中,Lock模块输出delay_num2值,利用Delay line2对输入的tx_clk时钟(与DS时钟同频)移相,Delay line2输出超前进位信号lead0_lag1返回给Lock模块。超前进位信号lead0_lag1起始为低电平,随着delay_num2递增,超前进位信号逐步变为高电平,直到delay_num2覆盖整个周期时,超前进位信号再变成低电平。Lock模块利用此时delay_num2值除以4(即预设值)或右移两位得到最终的delay_num3,lock结束。得到的delay_num3再用于delay line3输入的DS时钟移相,如图11所示。
可以理解的是,本发明实施例能覆盖eMMC所有传输模式,如High Speed、HS200和HS400等,同时HOST也能兼容与SD卡的通信。
值得说明的是,上述装置和系统内的模块、单元之间的信息交互、执行过程等内容,由于与本发明的处理方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本领域普通技术人员可以理解实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁盘或光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种时钟移相方法,其特征在于,包括:
对初始信号进行不同延迟步长的延迟,得到各第一中间信号;
使用各第一中间信号对通道数据进行采样,根据采样结果,确定各第一中间信号是否与通道数据对齐;
将与通道数据对齐的第一中间信号的延迟步长作为对齐步长,将未与通道数据对齐的第一中间信号的延迟步长作为非对齐步长;
根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长,将初始信号延迟目标步长,得到第一采样时钟信号;其中,所述第一采样时钟信号为HOST用于采样的时钟信号。
2.根据权利要求1所述的时钟移相方法,其特征在于,所述根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长包括:
将连续多个对齐步长所在的步长区间划分为对齐区间,将连续多个非对齐步长所在的步长区间划分为非对齐区间;
找到完整对齐区间,选择位于该完整对齐区间中心的对齐步长作为目标步长;其中,所述完整对齐区间为位于两个非对齐区间之间的对齐区间。
3.根据权利要求2所述的时钟移相方法,其特征在于,若无法找到完整对齐区间,则查找非对齐区间前后的对齐区间,分别作为前区间和后区间;
若仅存在前区间或仅存在后区间,则在前区间中或后区间中选择相应的延迟步长作为目标延迟步长;
若存在前区间和后区间,则使用前区间的区间长度与后区间的区间长度,计算得到目标长度;
以非对齐区间后目标长度所在位置的延迟步长作为目标步长。
4.根据权利要求3所述的时钟移相方法,其特征在于,所述在前区间中或后区间中选择相应的延迟步长作为目标延迟步长包括:
选择位于前区间中心的对齐步长或后区间中心的对齐步长作为目标延迟步长。
5.根据权利要求3所述的时钟移相方法,其特征在于,所述使用前区间的区间长度与后区间的区间长度,计算得到目标长度包括:
以前区间的区间长度与后区间的区间长度的平均值作为目标长度。
6.根据权利要求1所述的时钟移相方法,其特征在于,所述方法还包括:
按照每间隔预设时间延迟步长增加第一预设步长的方式,对初始信号进行延迟,依次得到不同延迟的第二中间信号;
在初始信号的上升沿或下降沿采集相应第二中间信号的电平,生成超前进位信号;其中,以初始信号的上升沿或下降沿所对应时刻的延迟步长下的第二中间信号生成超前进位信号;
以超前进位信号产生上升沿时所对应的延迟步长以及超前进位信号产生下降沿时所对应的延迟步长,形成延迟步长区间;
以所述延迟步长区间的长度除以预设值,得到目标延迟步长;
使用所述目标延迟步长对DS信号进行延迟,得到第二采样时钟信号;其中,所述第二采样时钟信号为HOST在相应模式下用于辅助采样的时钟信号。
7.根据权利要求2所述的时钟移相方法,其特征在于,当完整对齐区间的长度小于预设长度时,使用各第一中间信号对通道数据进行采样,根据采样结果,确定各通道数据的数据周期划分;
根据各通道数据的数据周期划分,按照不同的n值,在每个n值下将数据周期延迟小的n个通道数据划分为第一通道数据,将数据周期延迟大的Num-n个通道数据划分为第二通道数据,得到对应n值下的第一通道数据和第二通道数据;其中,n大于1且n小于Num,Num为通道数量;
找到每个n值下,第一通道数据的数据周期维持不变且均为同一数据周期时所对应的各第一步长区间,计算各第一步长区间的长度;
以长度最长的第一步长区间中心的延迟步长作为第一目标延迟步长,以长度最长的第一步长区间所对应的n值作为最终的n值,以使用该最终的n值下划分所得的第一通道数据为第一目标数据,以使用该最终的n值下划分所得的第二通道数据为第二目标数据,找到该第二目标数据的数据周期维持不变且均为同一数据周期时所对应的第二步长区间;
对初始信号进行第一目标延迟步长得到第一目标采样信号,以第二步长区间中心的延迟步长作为第二目标延迟步长,对初始信号进行第二目标延迟步长得到第二目标采样信号,使用第一目标采样信号对第一目标数据进行采样,得到第一采样结果,使用第二目标采样信号对第二目标数据进行采样,得到第二采样结果,将第一采样结果和第二采样结果合并得到所有通道数据在相应数据周期的数据。
8.一种时钟移相装置,其特征在于,包括控制模块和延迟模块;
所述延迟模块用于对初始信号进行不同延迟步长的延迟,得到各第一中间信号;
所述控制模块用于使用各第一中间信号对通道数据进行采样,根据采样结果,确定各第一中间信号是否与通道数据对齐;所述第一中间信号通过对初始信号进行延迟得到;将与通道数据对齐的第一中间信号的延迟步长作为对齐步长,将未与通道数据对齐的第一中间信号的延迟步长作为非对齐步长;根据对齐步长与非对齐步长的分布,选择相应对齐步长作为目标步长;
所述延迟模块还用于将初始信号延迟目标步长,得到第一采样时钟信号。
9.根据权利要求8所述的时钟移相装置,其特征在于,所述延迟模块包括至少一条延迟线路,每条延迟线路包括延迟组件和选择组件;
所述延迟组件用于将输入信号进行不同步长的延迟,得到不同延迟步长的延迟信号;
所述选择组件用于根据控制信号,选择性地将相应延迟的延迟信号输出,得到第一中间信号;其中,所述控制信号从所述选择组件的控制端输入。
10.根据权利要求9所述的时钟移相装置,其特征在于,所述装置还包括触发模块;
所述延迟组件用于按照每间隔预设时间延迟步长增加预设步长的方式,对初始信号进行延迟,依次得到不同延迟的第二中间信号;
所述触发模块用于在初始信号的上升沿或下降沿采集相应第二中间信号的电平,生成超前进位信号;
所述控制模块用于以超前进位信号产生上升沿时所对应的延迟步长以及超前进位信号产生下降沿时所对应的延迟步长,形成延迟步长区间;以所述延迟步长区间的长度除以预设值,得到目标延迟步长;
所述延迟模块还使用所述目标延迟步长对DS信号进行延迟,得到第二采样时钟信号;其中,所述第二采样时钟信号为HOST在相应模式下用于辅助采样的时钟信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311214116.0A CN116954306B (zh) | 2023-09-20 | 2023-09-20 | 一种时钟移相方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311214116.0A CN116954306B (zh) | 2023-09-20 | 2023-09-20 | 一种时钟移相方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116954306A true CN116954306A (zh) | 2023-10-27 |
CN116954306B CN116954306B (zh) | 2024-01-02 |
Family
ID=88460530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311214116.0A Active CN116954306B (zh) | 2023-09-20 | 2023-09-20 | 一种时钟移相方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116954306B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030188215A1 (en) * | 2002-03-26 | 2003-10-02 | Semtech Corporation | Method and apparatus for controlling the phase of the clock output of a digital clock |
CN101326475A (zh) * | 2005-10-10 | 2008-12-17 | 雅斯拓股份有限公司 | 本地时钟生成的方法和电路以及包括本地时钟生成的电路的智能卡 |
CN107402597A (zh) * | 2017-07-31 | 2017-11-28 | 上海联影医疗科技有限公司 | 一种数据与时钟对齐的方法、装置、介质及磁共振设备 |
CN110853689A (zh) * | 2018-08-20 | 2020-02-28 | 爱思开海力士有限公司 | 包括数据输入电路的半导体器件 |
CN111128269A (zh) * | 2019-11-21 | 2020-05-08 | 深圳市国微电子有限公司 | 一种ddr比特延迟对齐方法、装置及存储介质 |
CN111628753A (zh) * | 2020-07-17 | 2020-09-04 | 中国科学技术大学 | 一种用于高速串行收发器的时钟相位对齐方法及电路 |
CN111800109A (zh) * | 2020-06-12 | 2020-10-20 | 烽火通信科技股份有限公司 | 一种多通道高速数据对齐的方法及装置 |
US11048289B1 (en) * | 2020-01-10 | 2021-06-29 | Rockwell Collins, Inc. | Monitoring delay across clock domains using constant phase shift |
CN113595713A (zh) * | 2021-07-21 | 2021-11-02 | 华中科技大学 | 一种基于多通道采集的接收数据对齐方法及系统 |
CN114880389A (zh) * | 2022-05-12 | 2022-08-09 | 浙江禾川科技股份有限公司 | 一种数据转换方法、系统及装置 |
CN115113686A (zh) * | 2022-04-25 | 2022-09-27 | 腾讯科技(深圳)有限公司 | 时序调整方法和装置、存储介质及电子设备 |
CN115642902A (zh) * | 2022-11-11 | 2023-01-24 | 深圳市紫光同创电子有限公司 | 采样时钟延迟相位确定方法、装置、系统和存储介质 |
US20230153190A1 (en) * | 2021-11-15 | 2023-05-18 | International Business Machines Corporation | Real-time error debugging |
CN116362168A (zh) * | 2023-05-31 | 2023-06-30 | 芯动微电子科技(珠海)有限公司 | 一种gpgpu离线时钟的建模方法、装置和存储介质 |
CN116520813A (zh) * | 2023-06-29 | 2023-08-01 | 芯动微电子科技(珠海)有限公司 | 一种控制器的fpga原型验证方法和系统 |
-
2023
- 2023-09-20 CN CN202311214116.0A patent/CN116954306B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030188215A1 (en) * | 2002-03-26 | 2003-10-02 | Semtech Corporation | Method and apparatus for controlling the phase of the clock output of a digital clock |
CN101326475A (zh) * | 2005-10-10 | 2008-12-17 | 雅斯拓股份有限公司 | 本地时钟生成的方法和电路以及包括本地时钟生成的电路的智能卡 |
CN107402597A (zh) * | 2017-07-31 | 2017-11-28 | 上海联影医疗科技有限公司 | 一种数据与时钟对齐的方法、装置、介质及磁共振设备 |
CN110853689A (zh) * | 2018-08-20 | 2020-02-28 | 爱思开海力士有限公司 | 包括数据输入电路的半导体器件 |
CN111128269A (zh) * | 2019-11-21 | 2020-05-08 | 深圳市国微电子有限公司 | 一种ddr比特延迟对齐方法、装置及存储介质 |
US11048289B1 (en) * | 2020-01-10 | 2021-06-29 | Rockwell Collins, Inc. | Monitoring delay across clock domains using constant phase shift |
CN111800109A (zh) * | 2020-06-12 | 2020-10-20 | 烽火通信科技股份有限公司 | 一种多通道高速数据对齐的方法及装置 |
CN111628753A (zh) * | 2020-07-17 | 2020-09-04 | 中国科学技术大学 | 一种用于高速串行收发器的时钟相位对齐方法及电路 |
CN113595713A (zh) * | 2021-07-21 | 2021-11-02 | 华中科技大学 | 一种基于多通道采集的接收数据对齐方法及系统 |
US20230153190A1 (en) * | 2021-11-15 | 2023-05-18 | International Business Machines Corporation | Real-time error debugging |
CN115113686A (zh) * | 2022-04-25 | 2022-09-27 | 腾讯科技(深圳)有限公司 | 时序调整方法和装置、存储介质及电子设备 |
CN114880389A (zh) * | 2022-05-12 | 2022-08-09 | 浙江禾川科技股份有限公司 | 一种数据转换方法、系统及装置 |
CN115642902A (zh) * | 2022-11-11 | 2023-01-24 | 深圳市紫光同创电子有限公司 | 采样时钟延迟相位确定方法、装置、系统和存储介质 |
CN116362168A (zh) * | 2023-05-31 | 2023-06-30 | 芯动微电子科技(珠海)有限公司 | 一种gpgpu离线时钟的建模方法、装置和存储介质 |
CN116520813A (zh) * | 2023-06-29 | 2023-08-01 | 芯动微电子科技(珠海)有限公司 | 一种控制器的fpga原型验证方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116954306B (zh) | 2024-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11430494B2 (en) | DQS position adjustment method, controller and network device | |
US20060036915A1 (en) | Deskew circuit and disk array control device using the deskew circuit, and deskew method | |
CN101562440B (zh) | 延迟模块和方法、时钟检测装置及数字锁相环 | |
US6791381B2 (en) | Method and apparatus for reducing the lock time of a DLL | |
US7508893B1 (en) | Integrated circuits and methods with statistics-based input data signal sample timing | |
US8565033B1 (en) | Methods for calibrating memory interface circuitry | |
US8942333B2 (en) | Apparatus and methods for clock alignment for high speed interfaces | |
US7826281B2 (en) | Memory read control circuit | |
US7198197B2 (en) | Method and apparatus for data acquisition | |
US7590879B1 (en) | Clock edge de-skew | |
US8532163B2 (en) | Method and transceiver system having a transmit clock signal phase that is phase-locked with a receive clock signal phase | |
CN110995241B (zh) | 一种自适应相位调整的lvds延时电路 | |
CN109831206B (zh) | 延迟锁定环及延迟锁定方法 | |
US6795514B2 (en) | Integrated data clock extractor | |
US7224638B1 (en) | Reliability clock domain crossing | |
KR20140035770A (ko) | 임베디드 멀티미디어 카드 디바이스, 그 시스템 및 그 동작방법 | |
CN116954306B (zh) | 一种时钟移相方法和装置 | |
US7545899B2 (en) | System and method of phase-locking a transmit clock signal phase with a receive clock signal phase | |
US20070170969A1 (en) | Electronic system having a clock signal correcting device | |
CN107943739B (zh) | 一种基于fpga的多组spi码信号检测验证方法 | |
US6954870B2 (en) | Method for receiver delay detection and latency minimization for a source synchronous wave pipelined interface | |
US20050063163A1 (en) | Integrated circuit input/output interface with empirically determined delay matching | |
EP1768261A1 (en) | Clock adjustment apparatus and method thereof | |
CN114598302A (zh) | 时钟占空比校准装置 | |
US7675336B1 (en) | Clock duty cycle recovery circuit |
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 |