CN112015691B - 一种串行总线设备的时钟校准方法、校准电路和电子设备 - Google Patents

一种串行总线设备的时钟校准方法、校准电路和电子设备 Download PDF

Info

Publication number
CN112015691B
CN112015691B CN202010841666.5A CN202010841666A CN112015691B CN 112015691 B CN112015691 B CN 112015691B CN 202010841666 A CN202010841666 A CN 202010841666A CN 112015691 B CN112015691 B CN 112015691B
Authority
CN
China
Prior art keywords
circuit
sub
preset
count value
clock frequency
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.)
Active
Application number
CN202010841666.5A
Other languages
English (en)
Other versions
CN112015691A (zh
Inventor
赵建中
王周
周玉梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Microelectronics of CAS
Original Assignee
Institute of Microelectronics of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Microelectronics of CAS filed Critical Institute of Microelectronics of CAS
Priority to CN202010841666.5A priority Critical patent/CN112015691B/zh
Publication of CN112015691A publication Critical patent/CN112015691A/zh
Application granted granted Critical
Publication of CN112015691B publication Critical patent/CN112015691B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明公开一种串行总线设备的时钟校准方法、校准电路和电子设备,解决了必须在相邻固定时间间隔内连续成功采样两次帧起始包,当错采、漏采帧起始包时,则花费更长时间校准的问题。该方法包括:接收并对串行信号的时钟频率进行粗调;在串行信号出现下降沿时,对串行信号进行采样,当判决到两个正确的帧起始包时,根据次数和计数值确定预设单位时间间隔内的平均计数值;将平均计数值与预设计数值比较,根据得到的再调参数在粗调后的时钟频率基础上调整振荡器输出时钟频率。本发明提供的校准方法利用在多个固定时间间隔的范围内采样,并根据固定时间间隔的平均计数值循环调整输出频率,在校准快速的同时也提高了校准的准确性。

Description

一种串行总线设备的时钟校准方法、校准电路和电子设备
技术领域
本发明涉及集成电路技术领域,尤其涉及一种串行总线设备的时钟校准方法、校准电路和电子设备。
背景技术
通讯技术的迅猛发展进一步加大了对数据传输方面的需求,传统的串并口已经无法满足需求,设备应需而生。通用串行总线设备其极高的传输速度,且供电简单、兼容性好、支持热插拔等特点,逐渐成为各类电子器件间数据传输所使用的必备接口和标准扩展接口之一。
传统无晶振串行总线设备多使用电阻电容振荡器做内部时钟源,但电阻电容振荡器由于工艺偏差、压强、电压及温度等的影响会发生漂移,在中心频点上产生±25%的偏差,直接输出的时钟频率无法满足协议所要求的偏差范围。
通用串行总线协议规定了主机每1ms±500ns会向连接的设备发送一次帧起始包,用来做设备的时间校准,现有技术中需要1ms连续采样成功两次SOF包才进行校准,且在复杂的电路工环境中帧起始包内信息会随着干扰受到影响,导致丢失或者误识别帧起始包。特别是在频率偏差较大时,出错概率会进一步加大,当错采、漏采SOF包时,将花费更长的时间进行校准。
发明内容
本发明的目的在于提供一种串行总线设备的时钟校准方法、校准电路和电子设备,用于解决必须在相邻固定时间间隔内连续成功采样两次帧起始包,在频率偏差大时,错采、漏采帧起始包,则会花费更长时间去校准的问题。
第一方面,本发明提供一种串行总线设备的时钟校准方法,包括:
接收串行信号;
对所述串行信号的时钟频率进行粗调,使得粗调后的时钟频率在预设偏差频率内;然后在所述串行信号出现下降沿时,对所述串行信号进行采样,得到采样序列,对所述采样序列进行译码得到译码序列,判定所述译码序列是否为帧起始包;
当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个所述预设单位时间间隔的计数值,根据所述次数和所述计数值确定所述预设单位时间间隔内的平均计数值;其中,所述预设单位时间间隔的次数大于或等于1,小于最大预设次数;
将所述平均计数值与预设计数值比较,得到再调参数,根据所述再调参数在所述粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样所述串行信号持续调整所述振荡器的输出时钟频率。
与现有技术相比,本发明提供的一种串行总线设备的时钟校准方法包括对串行信号的时钟频率有粗调和细调两步,一接收到串行信号就先进行粗调,使之串行信号的时钟频率在预设频率偏差范围内,在此粗调的基础上当串行信号下降沿时进行采样,并对采样数据译码,判定译码后的数据是否是帧起始包,当预设时间内存在两次帧起始包时,再进行细调,具体方式是确定两次帧起始包之间所用的预设单位时间间隔的次数和每个预设单位时间间隔的计数值,确定预设单位时间间隔的平均计数值,最后通过平均计数值与预设计数值比较,得到再调参数,这里再调参数就是细调参数,根据再调参数在粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样串行信号持续调整振荡器的输出时钟频率。
本发明的两次成功采样帧起始包的预设时间体现为预设单位时间间隔的次数可以大于或等于1,小于预设最大次数,相比现有技术的预设单位时间间隔的次数是1来说,在预设单位时间间隔的次数较多时成功采样到两次帧起始包的可能性更大,可以尽快进行校准;也可以理解为预设单位时间间隔的最大次数就是粗调设定的频率偏差,这样容忍的丢包数目更多,加快了校准速度,节省了时间。在多个预设的单位时间间隔下采样,最后取预设单位时间间隔内的平均计数值进行细调也比取某次预设单位时间间隔内的计数值更加准确。
第二方面,本发明还提供一种串行总线设备的时钟校准电路,包括:接收子电路、粗调子电路、采样子电路、译码子电路、判定子电路、计数统计子电路及调整子电路;
所述接收子电路的输出端电连接所述粗调子电路,所述粗调子电路的输出端电连接所述调整子电路;所述接收子电路的输出端还电连接所述采样子电路,所述采样子电路的输出端电连接所述译码子电路、所述译码子电路的输出端电连接所述判定子电路,所述判定子电路的输出端电连接所述计数统计子电路,所述计数统计子电路的输出端电连接所述调整电路;
接收子电路,用于接收串行信号;
粗调子电路,用于对所述串行信号的时钟频率进行粗调,得到粗调调整值,将所述粗调调整值输入调整子电路,使得所述调整子电路输出的粗调后的时钟频率在预设偏差频率内;
采样子电路,用于在所述串行信号出现下降沿时,对所述串行信号进行采样,得到采样序列;
译码子电路,用于对所述采样序列进行译码得到译码序列;
判定子电路,用于判定所述译码序列是否为帧起始包;
计数统计子电路,用于当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个所述预设单位时间间隔的计数值,根据所述次数和所述计数值确定所述预设单位时间间隔内的平均计数值;其中,所述预设单位时间间隔的次数大于或等于1,小于最大预设次数;
调整子电路,用于接收所述粗调调整值,根据所述粗调调整值输出粗调后的时钟频率;
调整子电路,还用于将所述平均计数值与预设计数值比较,得到再调参数,根据所述再调参数在所述粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样所述串行信号持续调整所述振荡器的输出时钟频率。
与现有技术相比,本发明实施例提供的串行总线设备的时钟校准方法的有益效果与上述串行总线设备的时钟校准电路提供的有益效果相同,在此不做赘述。
第三方面,本发明还提供一种电子设备,所述电子设备包括上述串行总线设备的时钟校准电路。
与现有技术相比,本发明实施例提供的电子设备的有益效果与上述串行总线设备的时钟校准电路提供的有益效果相同,在此不做赘述。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示例出本发明实施例提供的串行总线设备的时钟校准方法的流程示意图;
图2示例出本发明实施例提供的编码后的帧起始包中的同步域码示意图;
图3示例出本发明实施例提供的编码后的帧起始包示意图;
图4示例出本发明实施例提供的判定译码信号是否为帧起始包的流程示意图;
图5示例出本发明实施例提供的计数器调整流程示意图;
图6示例出本发明实施例提供的串行总线设备的时钟校准电路结构示意图;
图7示例出本发明实施例提供的电子设备的结构示意图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。“若干”的含义是一个或一个以上,除非另有明确具体的限定。
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
现有的无晶振串行接口设备多使用电阻电容振荡器做内部时钟源,振荡器由于工艺偏差,环境等影响发生漂移,会在中心频点上产生偏差,例如:±25%的偏差。且串行接口协议规定了主机每1ms±500ns会向连接的设备发送一次帧起始包,用来做设备的时间校准,现有技术需要相邻1ms连续两次成功采样帧起始包才进行校准。但是在复杂的电路工环境中帧起始包内的信息受到影响更大,导致丢失或者误识别帧起始包。在频率偏差较大时,概率会进步一加大。第一次采样帧起始包后,无法准确采样相邻1ms的第二次帧起始包将浪费更多的时间去做校准,这对于高速数据传输时的时间要求是不利的。
针对上述问题,本发明实施例提供一种串行总线设备的时钟校准方法,适用于高速串行接口的数据传输。
图1示例出本发明实施例提供的串行总线设备的时钟校准方法的流程示意图。如图1所示,本发明实施例提供的串行总线设备的时钟校准方法包括如下步骤:
步骤10:接收串行信号。
步骤11:对串行信号的时钟频率进行粗调,使得粗调后的时钟频率在预设偏差频率内。
在实际应用中,传统无晶振串行总线设备在中心频点上的偏差若为±25%,粗调就是首先将±25%的偏差控制预设的频率偏差范围内,预设的频率偏差可以为±10%。当全速模块正确时钟频率为60M±2500ppm,偏差±25%的时钟频率为45M或者70M,调整到±10%时的时钟频率则为54M或66M以内。
步骤12:在串行信号出现下降沿时,对串行信号进行采样,得到采样序列。
在实际应用中,接收到的串行信号是编码后的,图2示例出本发明实施例提供的编码后的帧起始包中的同步域码示意图,本领域的技术人员都知道,帧起始包最开始的首个码域就是同步域码,即当串行信号的同步码域KJKJK翻转序列一出现下降沿时就采样。
步骤13:对采样序列进行译码得到译码序列。
在实际应用中,高速串行接口都需要将编码的采样序列进行译码,以进行后面的各项数据处理,例如同步域码KJKJK译码后为00000001。
步骤14:判定译码序列是否为帧起始包。
作为一种可实现的方式,判定所述译码序列是否为帧起始包,包括:
判定译码序列是否按顺序出现帧起始包的预设固定序列集特征,若出现,则确定译码序列为帧起始包,若译码序列中没有按顺序出现与预设固定序列集的任一序列特征,则回到空闲态,并判定译码序列中的下个译码数据是否为帧起始包,其中,所述译码序列包括多个译码数据。
示例性的,帧起始包的预设固定序列集,包括:
同步域码、标识域码、帧号域码、校验域码以及结束域码。
图3示例出本发明实施例提供的编码后的帧起始包示意图,如图3所示,编码的帧起始包包括同步域码KJKJK、标识域码等。表1示例出本发明实施例提供的帧起始包的预设固定序列集,如表1所示,同步域码和标识域码都是固定的,同步域码为00000001、标识域码为10100101,帧号域码、校验域码以及结束域码都是每一个译码数据对应不同的码,是变化的,但是位宽是固定的,帧号域码是11比特,校验域码是5比特,结束域码是2比特。
表1帧起始包的预设固定序列集
Figure GDA0003329625250000071
图4示例出本发明实施例提供的判定译码信号是否为帧起始包的流程示意图,如图4所示,串行信号没有出现下降沿时,没有进行判定,处于空闲态,当串行信号出现下降沿时,得到采样数据,并对采样数据进行译码,对译码信号进行是否帧起始包的判定流程。步骤S1,首先判定译码信号是否出现了预设固定序列集中的同步域码未编码的序列00000001,是则进入步骤S2,否则跳回到空闲态;步骤S2,判定译码信号是否出现了预设固定序列集中的标识域码10100101,是则进入步骤S3,否则跳回到空闲态,此过程中若接收到跳转到空闲态的控制信号则跳回到空闲态;步骤S3,接受译码信号中帧号域码,并与预设固定序列集中的帧号域码进行匹配,此过程中若出现译码信号中的帧号域码的位填充错误,或者接收到跳转到空闲态的控制信号则跳回到空闲态,否则进入步骤S4;步骤S4,接受译码信号的校验域码,根据预设固定序列集中的校验域码判断校验是否成功,是则进入步骤S5,若此过程中出现位填充错误,或者接收到跳转到空闲态的控制信号则回到空闲态。步骤S5是判定译码信号是否出现结束域码特征,是则表示译码信号为帧起始包,帧起始包的采样成功,否则回到空闲态。
步骤15:当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个预设单位时间间隔的计数值,根据次数和计数值确定预设单位时间间隔内的平均计数值;其中,预设单位时间间隔的次数大于或等于1,小于最大预设次数。
在实际应用中,若正确时钟频率为60M±2500ppm,取1ms预设计数值为60000。当预设偏差为±10%时,计数值的范围为(54000,66000),此时预设单位时间间隔的最大预设次数为4,最大预设次数是跟就预设偏差相关的。假如第一次接收到帧起始包时,开始计数,直到连续计数四次才接收到第二次帧起始包,且每次采样计数值为66000、60000、66000和66000,那么平均计数值为计数值之和除以4,即64500;若连续计数三次才接收到第二次帧起始包,且每次采样计数值为60000、66000和60000,那么平均计数值为计数值之和除以3,即62000。
根据预设单位时间间隔的次数,得出预设单位时间间隔的平均计数值,公式(1)为平均计数值的公式。
F=C/N (1)
其中C为两次帧起始包之间总计数值,N为次数。
作为一种可选的方式,预设单位时间间隔的次数可由计数值的总和与所述预设最大偏差值或所述预设最小偏差值确定。
例如,以上面的例子,当预设偏差+10%时,最大偏差值为66000,若连续计数四次才接收到第二次帧起始包,且每次采样计数值依次为60000、60000、66000和66000,那么预设单位时间间隔的次数为计数值之和除以66000,即3.8181,实际应用中,按整数取值,则次数为3。
步骤16:将平均计数值与预设计数值比较,得到再调参数,根据再调参数在粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样串行信号持续调整振荡器的输出时钟频率。
在实际应用中,用平均计数值与预设计数值比较,输出电阻电容振荡器调整参数,选择电阻电容振荡器档位,调整电阻电容振荡器输出频率。公式(2)计算电阻电容振荡器调整参数。
Figure GDA0003329625250000081
P为粗调后的时钟频率,C为平均计数值,R为预设计数值,S为调整最大范围。参考上述的例子,若全速模式正确时钟频率为60M±2500ppm,取1ms预设计数值即R值为60000。当压强、电压及温度等情况较恶劣的时候会使时钟偏差较大,若当前正10%偏差,则待校准全速时钟为66Mhz,其在帧起始包之间预设单位时间间隔1ms的计数值为66000,设计所选择振荡器最大调整档位S为1024档,所以此时调整参数P’应当在粗调后的时钟频率值基础上减去(6000/60000)×1024,即将振荡器调低102个档位。同理待校准时钟偏低时要将档位调高。得到的调整参数若不能满足时钟频率的精度,则继续调整参数。
本发明提供的一种串行总线设备的时钟校准方法包括对串行信号的时钟频率有粗调和细调两步,一接收到串行信号就先进行粗调,使之串行信号的时钟频率在预设频率偏差范围内,在此粗调的基础上当串行信号下降沿时进行采样,并对采样数据译码,判定译码后的数据是否是帧起始包,当预设时间内存在两次帧起始包时,再进行细调,具体方式是确定两次帧起始包之间所用的预设单位时间间隔的次数和每个预设单位时间间隔的计数值,确定预设单位时间间隔的平均计数值,最后通过平均计数值与预设计数值比较,得到再调参数,这里再调参数就是细调参数,根据再调参数在粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样串行信号持续调整振荡器的输出时钟频率。
本发明的两次成功采样帧起始包的预设时间体现为预设单位时间间隔的次数可以大于或等于1,小于预设最大次数,相比现有技术的预设单位时间间隔的次数是1来说,在预设单位时间间隔的次数较多时成功采样到两次帧起始包的可能性更大,可以尽快进行校准;也可以理解为预设单位时间间隔的最大次数就是粗调设定的频率偏差,这样容忍的丢包数目更多,加快了校准速度,节省了时间。在多个预设的单位时间间隔下采样,最后取预设单位时间间隔内的平均计数值进行细调也比取某次预设单位时间间隔内的计数值更加准确。
作为一种可选的方式,对所述串行信号的时钟频率进行粗调,使得粗调后的时钟频率在预设偏差频率内,包括:
采用同步域码的计数值偏差对串行信号的初始时钟频率进行粗调,使得粗调后的时钟频率在预设最大偏差频率内或预设最小偏差频率内。
在实际应用中,刚接收到串行信号时,就利用固定的同步域码的计数值偏差做一次粗调整,以上面的以最大―25%的频率偏差为例,在同步域码KJKJK翻转序列的采样值为17次,而标准60Mhz的采样值为25次。代入公式(2)中C为17,R为25,S为1024档,则粗调就是在初始时钟频率的基础上将振荡器档位上调了327。对于正负偏差对应的512个档位,即可通过粗调将频率偏差缩小在±10%以内。实施例中的取值仅为举例,并不限定于此。
作为一种可选的方式,当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个预设单位时间间隔的计数值,根据次数和计数值确定预设单位时间间隔内的平均计数值,包括:
若第一次接收到的译码数据为帧起始包后,启动计数器计数,时间溢出预设时间后仍未第二次接收到帧起始包,则清零计数器;若在预设时间内第二次接收到的帧起始包,则根据启动计数器的时间到第二次接收到帧起始包的时间,锁定计数器输出至少一个以上的计数值,同时清零计数器,并根据预设单位时间间隔的次数和至少一个以上的计数值的总和确定预设单位时间间隔的平均计数值。
在实际应用中,图5示例出本发明实施例提供的计数调整流程示意图,如图5所示,步骤50:接收到串行数据就对其同步域码识别计数;步骤51:粗调频率;当串行数据下降沿时,采集到采样数据并译码,并根据上述判断帧起始包的流程判断该译码后的采样数据是否为帧起始包。步骤52:当准确采样到第一个帧起始包时,启动计数器开始进行计数;步骤53:判断预设时间是否溢出,可以理解为在预设时间内是否采样到下一次帧起始包;步骤54:若时间溢出预设时间仍未采样到第二个帧起始包,清零计数器;步骤55:若在预设时间内准确采集到第二个帧起始包后,则锁定计数值输出,计算两次采样到帧起始包之间预设单位时间间隔的次数和帧起始包的预设单位时间间隔内的平均计数值,同时执行步骤54清零计数器,从新开始计数,最后执行步骤56:将平均计数值与预设计数值比较,调整振荡器的输出时钟频率,在未达到时钟精度的需求之前循环此过程。
本发明实施例还提供一种串行总线设备的时钟校准电路,图6示例出本发明实施例提供的串行总线设备的时钟校准电路结构示意图,如图6所示,该电路包括:接收子电路101、粗调子电路102、采样子电路103、译码子电路104、判定子电路105、计数统计子电路106及调整子电路107;
如图6所示,接收子电路101的输出端电连接所述粗调子电路102,粗调子电路102的输出端电连接调整子电路107;接收子电路101的输出端还电连接采样子电路103,采样子电路103的输出端电连接译码子电路104、译码子电路104的输出端电连接判定子电路105,判定子电路105的输出端电连接计数统计子电路106,计数统计子电路106的输出端电连接调整子电路107;
接收子电路101,用于接收串行信号;
粗调子电路102,用于对串行信号的时钟频率进行粗调,得到粗调调整值,将粗调调整值输入调整子电路,使得调整子电路输出的粗调后的时钟频率在预设偏差频率内;
在实际应用中,粗调后首先生成的频率继续进入采样子电路、译码子电路、判定子电路、计数统计子电路和调整子电路进行粗调后的细调,使之调整后输出的频率更加准确。
采样子电路103,用于在串行信号出现下降沿时,对串行信号进行采样,得到采样序列;
在实际应用中,采样序列是串行信号多次出现下降沿时得到的多个采样信号。
译码子电路104,用于对采样序列进行译码得到译码序列;
对应上述的多个采样信号,译码后存在多个译码信号。
判定子电路105,用于判定译码序列是否为帧起始包;
计数统计子电路106,用于当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个预设单位时间间隔的计数值,根据次数和计数值确定预设单位时间间隔内的平均计数值;其中,预设单位时间间隔的次数大于或等于1,小于最大预设次数;
调整子电路107,用于接收粗调调整值,根据粗调调整值输出粗调后的时钟频率;
调整子电路107,还用于将平均计数值与预设计数值比较,得到再调参数,根据再调参数在粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样串行信号持续调整振荡器的输出时钟频率。
在实际应用中,可以看出粗调和细调形成了循环,首先在初始频率上进行粗调,使得粗调后的频率在预定频率偏差范围内,然后根据粗调后的频率再进行后面的调整,循环调整直至满足时间精度。例如:正确时钟频率的计数值为60000,初始频率的计数值为72000,预定频率偏差在10%,粗调后频率的计数值为66000,刚好在10%以内,细调之后计数值为62000,可以继续不断调整,当最后计数值近似为6000时,就稳定下来。实施例中的取值仅为举例,并不限定于此。
与现有技术相比,本发明实施例提供的串行总线设备的时钟校准电路的有益效果与上述串行总线设备的时钟校准方法的有益效果相同,在此不做赘述。
作为一种可能的实现方式,图7示例出本发明实施例提供的电子设备的结构示意图,如图7所示,上述电子设备110还包括与存储器112通信的处理器111。
其中,处理器可以是中央处理器(Central Processing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable GateArray,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
可选的,该终端设备还可以包括存储器。存储器用于存储执行本发明方案的计算机执行指令,并由处理器来控制执行。处理器用于执行存储器中存储的计算机执行指令,从而实现本发明实施例提供的方法。
存储器可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路与处理器相连接。存储器也可以和处理器集成在一起。
在一些情况下,如图7所示,上述电子设备110所包括的存储器112和处理器111可以与通信接口等装置集成在一起,并封装成芯片,构成应用于电子设备的芯片。
与现有技术相比,本发明实施例提供的电子设备的有益效果与串行总线设备的时钟校准方法的有益效果相同,在此不做赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、终端、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,固态硬盘(solid state drive,SSD)。
尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
尽管结合具体特征及其实施例对本发明进行了描述,显而易见的,在不脱离本发明的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本发明的示例性说明,且视为已覆盖本发明范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

Claims (8)

1.一种串行总线设备的时钟校准方法,其特征在于,所述串行总线设备的时钟校准方法包括:
接收串行信号;
对所述串行信号的时钟频率进行粗调,使得粗调后的时钟频率在预设偏差频率内;然后在所述串行信号出现下降沿时,对所述串行信号进行采样,得到采样序列,对所述采样序列进行译码得到译码序列,判定所述译码序列是否为帧起始包;
当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个所述预设单位时间间隔的计数值,根据所述次数和所述计数值确定所述预设单位时间间隔内的平均计数值;其中,所述预设单位时间间隔的次数大于或等于1,小于最大预设次数;
将所述平均计数值与预设计数值比较,得到再调参数,根据所述再调参数在所述粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样所述串行信号持续调整所述振荡器的输出时钟频率。
2.根据权利要求1所述的串行总线设备的时钟校准方法,其特征在于,所述判定所述译码序列是否为帧起始包,包括:
判定所述译码序列是否按顺序出现所述帧起始包的预设固定序列集特征,若出现,则确定所述译码序列为所述帧起始包,若所述译码序列中没有按顺序出现与所述预设固定序列集的任一序列特征,则回到空闲态,并判定所述译码序列中的下个译码数据是否为所述帧起始包,其中,所述译码序列包括多个译码数据。
3.根据权利要求2所述的串行总线设备的时钟校准方法,其特征在于,所述帧起始包的预设固定序列集,包括:
同步域码、标识域码、帧号域码、校验域码以及结束域码。
4.根据权利要求3所述的串行总线设备的时钟校准方法,其特征在于,所述对所述串行信号的时钟频率进行粗调,使得粗调后的时钟频率在预设偏差频率内,包括:
采用所述同步域码的计数值偏差对所述串行信号的初始时钟频率进行粗调,使得所述粗调后的时钟频率在预设最大偏差频率内或预设最小偏差频率内。
5.根据权利要求1或4所述的串行总线设备的时钟校准方法,其特征在于,所述当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个所述预设单位时间间隔的计数值,根据所述次数和所述计数值确定所述预设单位时间间隔内的平均计数值,包括:
若第一次接收到的所述译码数据为所述帧起始包后,启动计数器计数,时间溢出预设时间后仍未第二次接收到所述帧起始包,则清零所述计数器;若在所述预设时间内第二次接收到的所述帧起始包,则根据启动所述计数器的时间到第二次接收到所述帧起始包的时间,锁定所述计数器输出至少一个以上的计数值,同时清零计数器,并根据所述预设单位时间间隔的次数和所述至少一个以上的计数值的总和确定所述预设单位时间间隔的平均计数值。
6.根据权利要求5所述的串行总线设备的时钟校准方法,其特征在于,根据所述计数值的总和与所述预设最大偏差值或所述预设最小偏差值确定所述预设单位时间间隔的次数。
7.一种串行总线设备的时钟校准电路,其特征在于,所述串行总线设备的时钟校准电路包括:接收子电路、粗调子电路、采样子电路、译码子电路、判定子电路、计数统计子电路及调整子电路;
所述接收子电路的输出端电连接所述粗调子电路,所述粗调子电路的输出端电连接所述调整子电路;所述接收子电路的输出端还电连接所述采样子电路,所述采样子电路的输出端电连接所述译码子电路、所述译码子电路的输出端电连接所述判定子电路,所述判定子电路的输出端电连接所述计数统计子电路,所述计数统计子电路的输出端电连接所述调整子电路;
接收子电路,用于接收串行信号;
粗调子电路,用于对所述串行信号的时钟频率进行粗调,得到粗调调整值,将所述粗调调整值输入调整子电路,使得所述调整子电路输出的粗调后的时钟频率在预设偏差频率内;
采样子电路,用于在所述串行信号出现下降沿时,对所述串行信号进行采样,得到采样序列;
译码子电路,用于对所述采样序列进行译码得到译码序列;
判定子电路,用于判定所述译码序列是否为帧起始包;
计数统计子电路,用于当判决到两个正确的帧起始包时,统计两个帧起始包之间所需预设单位时间间隔的次数和每个所述预设单位时间间隔的计数值,根据所述次数和所述计数值确定所述预设单位时间间隔内的平均计数值;其中,所述预设单位时间间隔的次数大于或等于1,小于最大预设次数;
调整子电路,用于接收所述粗调调整值,根据所述粗调调整值输出粗调后的时钟频率;
调整子电路,还用于将所述平均计数值与预设计数值比较,得到再调参数,根据所述再调参数在所述粗调后的时钟频率基础上调整振荡器输出时钟频率,循环采样所述串行信号持续调整所述振荡器的输出时钟频率。
8.一种电子设备,其特征在于:包括权利要求7所述串行总线设备的时钟校准电路。
CN202010841666.5A 2020-08-20 2020-08-20 一种串行总线设备的时钟校准方法、校准电路和电子设备 Active CN112015691B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010841666.5A CN112015691B (zh) 2020-08-20 2020-08-20 一种串行总线设备的时钟校准方法、校准电路和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010841666.5A CN112015691B (zh) 2020-08-20 2020-08-20 一种串行总线设备的时钟校准方法、校准电路和电子设备

Publications (2)

Publication Number Publication Date
CN112015691A CN112015691A (zh) 2020-12-01
CN112015691B true CN112015691B (zh) 2022-02-08

Family

ID=73505217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010841666.5A Active CN112015691B (zh) 2020-08-20 2020-08-20 一种串行总线设备的时钟校准方法、校准电路和电子设备

Country Status (1)

Country Link
CN (1) CN112015691B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112687321B (zh) * 2020-12-30 2023-04-07 西安紫光国芯半导体有限公司 校准方法、装置及对应的延迟电路
CN112637031B (zh) * 2021-01-06 2022-06-17 广东博智林机器人有限公司 从站控制周期的校准方法、校准装置和驱动控制系统
CN113757932B (zh) * 2021-08-27 2022-12-13 Tcl空调器(中山)有限公司 空调通讯故障处理方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102331979A (zh) * 2011-09-28 2012-01-25 成都市芯锐微电子有限公司 应用于usb设备的动态时钟频率校准方法
CN103149970A (zh) * 2013-03-20 2013-06-12 珠海市杰理科技有限公司 时钟校准的方法和系统
CN103365336A (zh) * 2013-06-24 2013-10-23 深圳市文鼎创数据科技有限公司 Usb设备系统时钟的校准方法及装置
CN107968648A (zh) * 2017-11-17 2018-04-27 珠海亿智电子科技有限公司 一种校准无晶振usb设备内部振荡器时钟的系统
CN109687867A (zh) * 2018-11-30 2019-04-26 珠海慧联科技有限公司 一种无晶振usb设备时钟校准方法及校准电路

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102331979A (zh) * 2011-09-28 2012-01-25 成都市芯锐微电子有限公司 应用于usb设备的动态时钟频率校准方法
CN103149970A (zh) * 2013-03-20 2013-06-12 珠海市杰理科技有限公司 时钟校准的方法和系统
CN103365336A (zh) * 2013-06-24 2013-10-23 深圳市文鼎创数据科技有限公司 Usb设备系统时钟的校准方法及装置
CN107968648A (zh) * 2017-11-17 2018-04-27 珠海亿智电子科技有限公司 一种校准无晶振usb设备内部振荡器时钟的系统
CN109687867A (zh) * 2018-11-30 2019-04-26 珠海慧联科技有限公司 一种无晶振usb设备时钟校准方法及校准电路

Also Published As

Publication number Publication date
CN112015691A (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
CN112015691B (zh) 一种串行总线设备的时钟校准方法、校准电路和电子设备
US8595543B2 (en) Method and circuit for trimming an internal oscillator of a USB device according to a counting number between a first and second clock count value
CN109687867B (zh) 一种无晶振usb设备时钟校准方法及校准电路
US8447004B2 (en) Estimation and compensation of clock variation in received signal
TWI445315B (zh) 自動校正頻率之頻率校正電路及其方法
US9419783B1 (en) Phase detecting apparatus and phase adjusting method
CN108011851B (zh) 频率同步方法、装置、终端设备及存储介质
CN110781121B (zh) 一种参考时钟源配置方法与端设备
CN111177060A (zh) 串口数据发送方法、接收方法、相应装置及终端设备
CN114826977A (zh) 一种波特率检测方法、装置、终端设备以及存储介质
US7869492B2 (en) Frequency-locking device and frequency-locking method thereof
CN107708145B (zh) 一种同步检测的方法及同步检测设备
US8283983B2 (en) Frequency calibration device and method for programmable oscillator
US8907730B2 (en) Frequency calibration device and method for programmable oscillator
CN113098650B (zh) 时间偏差测量方法、装置、通信设备和可读存储介质
CN109309637B (zh) 传输信号的数据存储方法、装置及存储介质
US10075311B2 (en) Clock correction method and circuit utilizing training sequence to correct oscillator output, and reference clock generation method and circuit utilizing training sequence to generate reference clock
US9128643B2 (en) Method and apparatus performing clock extraction utilizing edge analysis upon a training sequence equalization pattern
US10700687B1 (en) Systems and methods for dynamic phase alignment of clocks
US9319216B2 (en) Operating method of human interface device
CN110838846B (zh) 时钟源的调试方法和任意波形发生器板卡
CN114722577B (zh) 钻孔工具的剩余寿命预测方法、装置、设备和存储介质
CN115118386B (zh) 解码方法、装置、解码器、可读存储介质及电子设备
CN109302275B (zh) 数据的输出方法及装置
US11588614B1 (en) Frequency search and error correction method in clock and data 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