一种振荡器控制方法及控制系统

申请号 CN202311687280.3 申请日 2023-12-11 公开(公告)号 CN117394851A 公开(公告)日 2024-01-12
申请人 西安航天民芯科技有限公司; 发明人 张盼盼; 张鸿; 王金富; 王振; 韩佳利; 任佳佳;
摘要 本 申请 属于一种控制方法,针对当前应用于 锁 相环或锁频环中的 振荡器 ,存在成本高和鲁棒性差的技术问题,提供一种振荡器控制方法及控制系统,根据用户输入配置,生成输入参考时钟计数个数cunt1、理想输出 频率 的计数个数cunt2和可配置频率细调步长,控制压控振荡器输出频率时,采用两步调节法,先采用逐次逼近 算法 进行粗调,再利用可配置频率细调步长进行细调,因为频率细调步长可配置,进行细调时也可分多步对压控振荡器的输出频率进行调整,一方面,能够更加快速有效的调整压控振荡器输出频率,使压控振荡器输出频率满足预设要求的 精度 ,另一方面,也便于达到更高的调节精度。
权利要求

1.一种振荡器控制方法,其特征在于,包括:
S1,根据用户输入配置,生成输入参考时钟计数个数cunt1、理想输出频率的计数个数cunt2和可配置频率细调步长;
S2,对参考时钟进行计数,直至计数至计数个数cunt1,产生相应的计数周期T1,并在计数周期T1内,对压控振荡器输出时钟计数,记作实时计数值;
S3,根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码,并在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡,调整压控振荡器输出频率,直至压控振荡器输出频率位于粗调频率码的一个LSB范围内;
S4,设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长;
S5,将细调频率码译码为控制电压V_F控制压控振荡器的振荡,调整压控振荡器输出频率,判断压控振荡器输出频率的精度是否满足预设要求,若是,则完成一次振荡器控制,否则,返回步骤S4。
2.根据权利要求1所述一种振荡器控制方法,其特征在于,步骤S5之后,还包括步骤S6‑
1:
设置压控振荡器输出频率的最大偏移量;
对压控振荡器输出频率实时监控,若压控振荡器输出频率超出所述最大偏移量,使压控振荡器停止向外输出时钟,执行步骤S1至步骤S5,否则,持续对压控振荡器输出频率实时监控。
3.根据权利要求1所述一种振荡器控制方法,其特征在于,步骤S5之后,还包括步骤S6‑
2:
设置压控振荡器输出频率的最大偏移量;
对压控振荡器输出频率实时监控,若压控振荡器输出频率超出所述最大偏移量,记录偏移量,并置位一个标志位。
4.根据权利要求1至3任一所述一种振荡器控制方法,其特征在于,步骤S2包括:
开始对参考时钟进行计数,并输出第一控制信号
当所述第一控制信号置位时,开始对压控振荡器输出时钟计数;
当参考时钟计数至计数个数cunt1,产生相应的计数周期T1,释放第一控制信号,完成对压控振荡器输出时钟计数。
5.根据权利要求4所述一种振荡器控制方法,其特征在于,所述释放第一控制信号,完成对压控振荡器输出时钟计数,包括:
设置第一等待时间;
释放第一控制信号后,再经过所述第一等待时间,完成对压控振荡器输出时钟计数。
6.根据权利要求5所述一种振荡器控制方法,其特征在于,步骤S3和步骤S4之间,还包括步骤S3‑4:
置位一次粗调频率码有效位。
7.根据权利要求6所述一种振荡器控制方法,其特征在于,步骤S3中,所述在每次生成粗调频率码后,还包括:等待第二等待时间;
步骤S5中,所述将细调频率码译码为控制电压V_F控制压控振荡器的振荡,调整压控振荡器输出频率,之后还包括:等待第三等待时间。
8.一种振荡器控制系统,用于实现权利要求1至7任一所述一种振荡器控制方法;其特征在于,包括:
频率配置模,用于根据用户输入配置,生成输入参考时钟计数个数cunt1、理想输出频率的计数个数cunt2和可配置频率细调步长;
频率检测模块,用于对参考时钟进行计数,直至计数至计数个数cunt1,产生相应的计数周期T1,并在计数周期T1内,对压控振荡器输出时钟计数,记作实时计数值;
频率控制模块,用于根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码;并设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长;
译码模块,用于在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡;并将细调频率码译码为控制电压V_F控制压控振荡器的振荡。
9.根据权利要求8所述一种振荡器控制系统,其特征在于,所述频率检测模块包括第一计数器和第二计数器;
所述第一计数器为数字电路计数器,用于对参考时钟进行计数,直至计数至计数个数cunt1,产生相应的计数周期T1;
所述第二计数器为模拟电路计数器,用于在计数周期T1内,对压控振荡器输出时钟计数,记作实时计数值。
10.根据权利要求8或9所述一种振荡器控制系统,其特征在于,所述频率控制模块包括频率粗调控制模块和频率细调控制模块;所述译码模块包括细调译码模块和粗调译码模块;
所述频率粗调控制模块,用于根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码;
所述频率细调控制模块,用于设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长;
所述粗调译码模块,用于在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡;
所述细调译码模块,用于将细调频率码译码为控制电压V_F控制压控振荡器的振荡。

说明书全文

一种振荡器控制方法及控制系统

技术领域

[0001] 本申请属于一种控制方法,具体涉及一种振荡器控制方法及控制系统。

背景技术

[0002] 振荡器是现代电子系统中常见的电路结构,是任何需要时钟信号的数字或混合信号系统的关键部件。振荡器的两个主要应用是时钟数据恢复电路和频率合成电路。
[0003] 在高速输入输出系统中,振荡器作为时钟和数据恢复电路的关键组成,可用于恢复串行数据流中嵌入的时钟信号,并使用恢复的时钟信号捕获数据,以最佳方式采样数据,从而最大限度地减少数据传输中的错误。振荡器应用于相环或者锁频环中,能根据较低的输入参考频率,得到高的输出频率,传统的锁相环和锁频环中的振荡器控制通常使用模拟电路,成本较高且鲁棒性较差。发明内容
[0004] 本申请针对当前应用于锁相环或锁频环中的振荡器,存在成本高和鲁棒性差的技术问题,提供一种振荡器控制方法及控制系统。
[0005] 为了实现上述目的,本申请采用以下技术方案予以实现:第一方面,本申请提出一种振荡器控制方法,包括:
S1,根据用户输入配置,生成输入参考时钟计数个数cunt1、理想输出频率的计数个数cunt2和可配置频率细调步长;
S2,对参考时钟进行计数,直至计数至计数个数cunt1,产生相应的计数周期T1,并在计数周期T1内,对压控振荡器输出时钟计数,记作实时计数值;
S3,根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码,并在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡,调整压控振荡器输出频率,直至压控振荡器输出频率位于粗调频率码的一个LSB范围内;
S4,设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长;
S5,将细调频率码译码为控制电压V_F控制压控振荡器的振荡,调整压控振荡器输出频率,判断压控振荡器输出频率的精度是否满足预设要求,若是,则完成一次振荡器控制,否则,返回步骤S4。
[0006] 进一步地,步骤S5之后,还包括步骤S6‑1:设置压控振荡器输出频率的最大偏移量;
对压控振荡器输出频率实时监控,若压控振荡器输出频率超出所述最大偏移量,
使压控振荡器停止向外输出时钟,执行步骤S1至步骤S5,否则,持续对压控振荡器输出频率实时监控。
[0007] 进一步地,步骤S5之后,还包括步骤S6‑2:设置压控振荡器输出频率的最大偏移量;
对压控振荡器输出频率实时监控,若压控振荡器输出频率超出所述最大偏移量,
记录偏移量,并置位一个标志位。
[0008] 进一步地,步骤S2包括:开始对参考时钟进行计数,并输出第一控制信号
当所述第一控制信号置位时,开始对压控振荡器输出时钟计数;
当参考时钟计数至计数个数cunt1,产生相应的计数周期T1,释放第一控制信号,完成对压控振荡器输出时钟计数。
[0009] 进一步地,所述释放第一控制信号,完成对压控振荡器输出时钟计数,包括:设置第一等待时间;
释放第一控制信号后,再经过所述第一等待时间,完成对压控振荡器输出时钟计
数。
[0010] 进一步地,步骤S3和步骤S4之间,还包括步骤S3‑4:置位一次粗调频率码有效位。
[0011] 进一步地,步骤S3中,所述在每次生成粗调频率码后,还包括:等待第二等待时间;步骤S5中,所述将细调频率码译码为控制电压V_F控制压控振荡器的振荡,调整压控振荡器输出频率,之后还包括:等待第三等待时间。
[0012] 第二方面,本申请提出一种振荡器控制系统,用于实现上述一种振荡器控制方法;包括:
频率配置模,用于根据用户输入配置,生成输入参考时钟计数个数cunt1、理想输出频率的计数个数cunt2和可配置频率细调步长;
频率检测模块,用于对参考时钟进行计数,直至计数至计数个数cunt1,产生相应的计数周期T1,并在计数周期T1内,对压控振荡器输出时钟计数,记作实时计数值;
频率控制模块,用于根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码;并设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长;
译码模块,用于在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡;并将细调频率码译码为控制电压V_F控制压控振荡器的振荡。
[0013] 进一步地,所述频率检测模块包括第一计数器和第二计数器;所述第一计数器为数字电路计数器,用于对参考时钟进行计数,直至计数至计数
个数cunt1,产生相应的计数周期T1;
所述第二计数器为模拟电路计数器,用于在计数周期T1内,对压控振荡器输出时
钟计数,记作实时计数值。
[0014] 进一步地,所述频率控制模块包括频率粗调控制模块和频率细调控制模块;所述译码模块包括细调译码模块和粗调译码模块;所述频率粗调控制模块,用于根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码;
所述频率细调控制模块,用于设置初始的细调频率码,比较实时计数值和计数个
数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长;
所述粗调译码模块,用于在每次生成粗调频率码后,将粗调频率码译码为控制电
压V_C控制压控振荡器的振荡;
所述细调译码模块,用于将细调频率码译码为控制电压V_F控制压控振荡器的振
荡。
[0015] 与现有技术相比,本申请具有以下有益效果:本申请提出一种振荡器控制方法,可以应用于接口的时钟恢复电路中或者锁频环
中的频率生成以及频率校准,能够根据较低的输入参考时钟,将振荡器输出频率稳定在用户所配置的理想输出频率,并且频率精度可控。另外本申请控制压控振荡器输出频率时,采用两步调节法,先采用逐次逼近算法进行粗调,再利用可配置频率细调步长进行细调,因为频率细调步长可配置,进行细调时也可分多步对压控振荡器的输出频率进行调整,一方面,能够更加快速有效的调整压控振荡器输出频率,使压控振荡器输出频率满足预设要求的精度,另一方面,也便于达到更高的调节精度,进而降低了控制成本,且鲁棒性更高。
[0016] 本申请还提出了一种振荡器控制系统,通过硬件形式实现上述振荡器控制方法,具备上述振荡器控制方法的全部优势。附图说明
[0017] 为了更清楚的说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0018] 图1为本申请振荡器控制系统实施例示意图;图2为本申请振荡器控制系统实施例中状态机跳转示意图。

具体实施方式

[0019] 为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
[0020] 因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0021] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
[0022] 在本申请实施例的描述中,需要说明的是,若出现术语“上”、“下”、“平”、“内”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该申请产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0023] 此外,若出现术语“水平”,并不表示要求部件绝对水平,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
[0024] 在本申请实施例的描述中,还需要说明的是,除非另有明确的规定和限定,若出现术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
[0025] 本申请提出一种振荡器控制方法及控制系统,能够借助灵活的用户输入配置完成高精度的频率控制及校准,可适应灵活的频率调整需求。
[0026] 下面结合实施例和附图对本申请做详细描述:作为本申请一种振荡器控制方法的基础实施例,可以包括以下步骤:
S101,根据用户输入配置,生成输入参考时钟计数个数cunt1、理想输出频率的计数个数cunt2和可配置频率细调步长。
[0027] 需要说明的是,为了使压控振荡器的输出频率满足要求,可以进行用户输入配置,本申请中,用户输入配置可以对应输入参考时钟计数个数cunt1、理想输出频率的计数个数cunt2和可配置频率细调步长。其中,理想输出频率的计数个数cunt2与压控振荡器的理想状态相对应,作为后续调整的基准。还可配置频率细调步长用于后续进行细调。
[0028] S102,对参考时钟进行计数,直至计数至计数个数cunt1,产生相应的计数周期T1,并在计数周期T1内,对压控振荡器输出时钟计数,记作实时计数值。
[0029] 需要说明的是,参考时钟是用于提供准确时间基准的时钟信号,通常用于同步和校正各种电子设备和系统的时钟信号。实际应用中,参考时钟计数至计数个数cunt1后,可通过分频处理产生相应的计数周期。
[0030] S103,根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码,并在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡,调整压控振荡器输出频率,直至压控振荡器输出频率位于粗调频率码的一个LSB(Least Significant Bit,最低位)范围内。
[0031] 需要说明的是,逐次逼近算法本身是本领域常用的一种算法,此处不再进行详细描述。
[0032] S104,设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长。
[0033] 实际应用中,初始的细调频率码可以根据调整要求进行设置。
[0034] S105,将细调频率码译码为控制电压V_F控制压控振荡器的振荡,调整压控振荡器输出频率,判断压控振荡器输出频率的精度是否满足预设要求,若是,则完成一次振荡器控制,否则,返回步骤S104。
[0035] 需要说明的是,实际应用中实时计数值和计数个数cunt2很难保持完全相等,因此,只要压控振荡器输出频率的精度满足预设要求,即可完成一次振荡器控制,压控振荡器输出频率的精度预设要求,可以根据压控振荡器的实际使用情况进行确认,本申请不做限制。
[0036] 在本申请一种振荡器控制方法的其他实施例中,同时还可以对压控振荡器输出频率进行实时监控,设置压控振荡器输出频率的最大偏移量,若压控振荡器输出频率超出最大偏移量,可以强制压控振荡器退出任务模式,停止向外输出时钟,进入频率校准模式,即采用本申请的振荡器控制方法对压控振荡器输出频率进行调整。在本申请的其他实施例中,还可以仅仅对压控振荡器输出频率实时监控,即使监测到压控振荡器输出频率超出最大偏移量,也不会强制压控振荡器退出任务模式,但是会将此刻的频移量存储起来,并且会置位一个标志位,用户可读取该偏移量以及该标志位。
[0037] 在本申请的其他实施例中,对参考时钟和压控振荡器输出时钟计数时,可以采用以下方法:参考时钟开始计数时,输出第一控制信号en1,当第一控制信号en1置位时,开始对压控振荡器输出时钟计数,直至参考时钟计数至计数个数cunt1,释放第一控制信号en1,完成对压控振荡器输出时钟计数。
[0038] 另外,出于精确度考虑,还可以设置第一等待时间,第一等待时间为可配置的,用于等待压控振荡器输出时钟计数结果稳定。因为此处进行计数时,涉及两个时钟域,考虑第一控制信号en1交互时的稳定性,通常会有打拍的设计,因此可能存在延迟,为准确采样到压控振荡器输出时钟计数结果,可以设置第一等待时间。当采样到压控振荡器输出时钟计数结果,即实时计数值,对实时计数值和计数个数cunt2进行比较,根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法更新粗调频率码。在完成一次粗调频率码的更新后,就会置位一次粗调频率码有效位,开始译码,转换为控制电压V_C控制压控振荡器的振荡,使压控振荡器输出频率稳定到粗调频率码的1个LSB范围。然后进行频率细调,比较实时计数值和计数个数cunt2,如果实时计数值大于计数个数cunt2,表示当前压控振荡器输出频率快于理想输出频率,给细调频率码减去一个可配置频率细调步长;如果实时计数值小于计数个数cunt2,表示当前压控振荡器输出频率慢于理想输出频率,则给细调频率码加上一个可配置频率细调步长。同样的,更新完细调频率码也会置位一次细调频率码有效位,开始译码。为了频率细调能够快速锁定,使用细调频率码调节压控振荡器输出频率时,也可分为粗调和细调,因为在译码时高五位与低五位的译码权重是不一样的,其中的细调次数为可配置次。
[0039] 经过上述的粗调和细调,压控振荡器输出频率可以稳定在想要的频率点上。
[0040] 如图1所示,为了实现上述振荡器控制方法,本申请还提出了一种振荡器控制系统,可以包括频率配置模块、频率检测模块、频率控制模块和译码模块。
[0041] 频率配置模块,用于根据用户输入配置,生成输入参考时钟计数个数cunt1、理想输出频率的计数个数cunt2和可配置频率细调步长;频率检测模块,用于对参考时钟进行计数,直至计数至计数个数cunt1,产生相应的计数周期T1,并在计数周期T1内,对压控振荡器输出时钟计数,记作实时计数值;
频率控制模块,用于根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码;并设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长;
译码模块,用于在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡;并将细调频率码译码为控制电压V_F控制压控振荡器的振荡。
[0042] 需要说明的是,图1中freq_fine_step表示可配置频率细调步长,vco_clk_cunt表示理想输出频率的计数个数cunt2,ref_clk_cunt表示输入参考时钟计数个数cunt1,ref_clk表示参考时钟,freq_fine表示细调频率码,freq_tune表示粗调频率码,vco_clk表示压控振荡器输出时钟。
[0043] 需要说明的是,频率配置模块可以根据用户输入配置,自适应需要的频率,生成对应的输入参考时钟计数个数cunt1和理想输出频率的计数个数cunt2,以及后续用于压控振荡器输出频率调整的可配置频率细调步长。可配置频率细调步长可以是用户通过系统配置接口来配置。
[0044] 在本申请振荡器控制系统的其他实施例中,频率检测模块可以包括第一计数器和第二计数器,第一计数器用于对参考时钟进行计数,第二计数器用于在计数周期T1内,对压控振荡器输出时钟计数。相应的,频率控制模块包括频率粗调控制模块和频率细调控制模块,频率粗调控制模块和频率细调控制模块所述译码模块包括细调译码模块和粗调译码模块。频率粗调控制模块,用于根据实时计数值和计数个数cunt2的差值,采用逐次逼近算法逐次生成粗调频率码。频率细调控制模块,用于设置初始的细调频率码,比较实时计数值和计数个数cunt2,若实时计数值大于计数个数cunt2,为细调频率码减去可配置频率细调步长,若实时计数值小于计数个数cunt2,为细调频率码加上可配置频率细调步长。粗调译码模块,用于在每次生成粗调频率码后,将粗调频率码译码为控制电压V_C控制压控振荡器的振荡。细调译码模块,用于将细调频率码译码为控制电压V_F控制压控振荡器的振荡。
[0045] 其中,第一计数器可以使用数字电路实现,第二计数器可以使用模拟电路实现,以达到更精准的频率检测。第一计数器开始计数时,输出一个第一控制信号en1用来控制第二计数器,当该第一置位时,第二计数器也开始计数,当第一计数器完成特定数目(计数至计数个数cunt1)的计数时,释放控制第二计数器的第一控制信号en1,第二计数器同时也停止计数。同时,出于精确度考虑,此处可以预留一段可配置的第一等待时间,用于等待第二计数器的计数结果稳定。当采样到当前第二计数器的计数值后,将第二计数器的计数值,即实时计数值与计数个数cunt2进行比较,根据实时计数值与计数个数cunt2的差值,采用逐次逼近算法更新粗调频率码freq_tune。当完成一次粗调频率码freq_tune的更新,就会置位一次粗调频率码freq_tune的有效位,使粗调译码模块知晓当前粗调频率码freq_tune有效,粗调译码模块开始译码,将粗调频率码freq_tune转换为控制电压V_C控制压控振荡器振荡,目标是使压控振荡器输出频率稳定到粗调频率码的1个LSB范围。然后进行频率细调,比较实时计数值和计数个数cunt2的差异,如果实时计数值大于计数个数cunt2,表示当前压控振荡器输出频率快于理想输出频率,需要给细调频率码freq_fine减去一个可配置频率细调步长;如果实时计数值小于计数个数cunt2,表示当前压控振荡器输出频率慢于理想输出频率,则给细调频率码freq_fine加上一个可配置频率细调步长。同样的,更新完细调频率码freq_fine也可以置位一次细调频率码freq_fine有效位,使细调译码模块知晓当前细调频率码freq_fine有效,细调译码模块开始工作。另外,为了细调频率码freq_fine能够快速锁定,使用细调频率码freq_fine调节压控振荡器输出频率时,也可以分为粗调范围和细调范围,因为在译码时高五位与低五位的译码权重是不一样的,细调次数为可配置次,经过这样的粗调与细调过程,压控振荡器输出频率就能够稳定在想要的频率点上,此时,可以关闭频率控制模块和频率检测模块,直到下一次需要调整压控振荡器输出频率。
[0046] 在本申请的其他实施例中,振荡器控制系统还可以包括频率监控模块,用于对压控振荡器输出频率进行实时监控,设置压控振荡器输出频率最大偏移量,若压控振荡器输出频率超出最大偏移量,可以强制压控振荡器退出任务模式,停止向外输出时钟,进入频率校准模式,即采用本申请的振荡器控制方法对压控振荡器输出频率进行调整。也可以仅仅对压控振荡器输出频率实时监控,即使监测到压控振荡器输出频率超出最大偏移量,也不会强制压控振荡器退出任务模式,但是会将此刻的频移量存储起来,并且会置位一个标志位,用户可读取该偏移量以及该标志位。
[0047] 实际应用中,本申请中的频率监控模块为可关闭的,可以通过纯数字电路实现,成本低,鲁棒性好。频率监控模块也可以复用频率配置模块输出的计数个数cunt1和计数个数cunt2,同样采用计数器计数的方式监控压控振荡器输出频率频偏是否超出用户所配置的最大偏移量。在指定的计数周期内,输出频率计数值与理想计数值的差异量即为频偏量,监控此频偏量,保存该频偏量置位标志位,并根据用户配置选择是否中断当前压控振荡器工作模式。
[0048] 实际应用中,可以通过状态机来控制每一次粗调频率码freq_tune和细调频率码freq_fine的更新,在此过程中,出于稳定性考虑,本申请可以设计可配置的第二等待时间和第三等待时间,第二等待时间针对粗调频率码freq_tune,第三等待时间针对细调频率码freq_fine,使压控振荡器能够准确根据更新后的频率码更新其输出频率,达到有效校准的目的。如图2所示,为状态机的跳转示意图,其中,000态为reset状态,001态为等待压控振荡器开启并稳定状态(该等待时间设置为可配置),010态为等待第二计数器开启并稳定(该等待时间设置为可配置),011态为计数环节1(用于计算粗调频率码freq_tune),100为等待环节1(用于等待压控振荡器根据当前粗调频率码freq_tune更新输出频率,该等待时间设置为可配置),101为计数环节2(用于计算细调频率码freq_fine),110为等待环节2(用于等待压控振荡器根据当前细调频率码freq_fine更新输出频率,该等待时间设置为可配置),111态时关闭频率控制模块和频率检测模块。图2中,X1表示压控振荡器启动计时未完成,X2表示频率监控模块开启,并监测到压控振荡器输出频率超出最大偏移量,X3表示第二计数器启动计时完成,X4表示压控振荡器启动计时完成,X5表示计数环节1结束且K!=0,X6表示计数环节1结束且K=0,X7表示计数环节2结束且I!=0,X8表示计数环节2结束且I=0,K表示粗调频率码更新次数,I表示细调频率码更新次数。另外,RST表示复位信号,chkfrq_done=1表示对应检查频率的操作已经完成,均为状态机跳转示意图中的常见标注。
[0049] 数字电路在成本、功耗和集成度等方面均具有极大优势,在振荡器的设计中加入数字算法控制,可以得到低功耗高精度的高性能锁相环和锁频环电路。另外,本申请可以在各环节均设计为参数可配置,能够应对各种应用场景,并且采用了灵活的频率码更新算法以及译码方式,可以达到快速以及精确的频率输出控制。
[0050] 以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
QQ群二维码
意见反馈