锁相环的一些概念
1、捕获、锁定与跟踪的概念
捕获,是指从输入信号加到锁相环输入端开始开始,一直到环路达到锁定的全过程。
锁相环的锁定是指锁相环的输出频率等于输入频率,而输出信号的相位跟随输入信号的变化而变化。
跟踪是指锁相环锁定后的状态,一旦锁相环进入锁定状态,若输入信号产生了相位的变化,环路就调整压控振荡器的控制电压使得其输出信号的相位跟随输入信号的相位变化,即保持恒定的稳态相位差。这种状态称为跟踪或同步状态。
2、捕获时间和稳态相差
捕获时间是指捕获过程所需的时间。捕获时间的大小不仅与环路参数有关,而且与起始状态有关。
当环路进入同步状态之后,环内被控振荡器的振荡器频率已经等于输入信号的频率,两者之间只差一个固定的相位。这个相位差称为稳态相差。反过来说,若稳态相差为一个常数或等于0,则说明环路处于锁定状态。
3、相位捕获和频率捕获
“相位捕获”指在捕获过程中,相位没有经过2π的周期跳跃就能进入的锁定状态,即捕获过程小于一个2π周期的捕获过程称为相位捕获,又称快捕获。“频率捕获”指捕获经历一个以上的频率周期的捕获过程。即意味着环路的输入信号频率与输出信号频率在开始捕获前相差至少一个周期。一般来说,一个锁相环从捕获到锁定都要经历从频率捕获到相位捕获两个过程。
如下图的快捕范围就是快捕带,只有相位捕获,因此收敛较快,而除快捕范围的捕获带则首先要进行频率捕获,然后才是相位捕获。频率捕获相对来说是一个慢的过程,因此收敛较慢。
4、捕获带和同步带
捕获带是指保证环路必然进入锁定的最大固有频差值。换句话说,就是在保证环路不出现稳定的差拍状态所允许的最大固有频差值。
一旦环路进入锁定状态,系统就处于跟踪状态。随着输入信号的频率和相位的变化,环路应该始终能跟踪其变化,但一旦输入信号的频率与被控压控振荡器的自由振荡器频率相差太多,环路就会失去跟踪能力,这种状态称为“失锁”。
同步带是指系统保持同步的最大固有频差值
5、最大频率阶跃范围
描述PLL对于稳定工作状态的动态限制。环路初始处于锁定状态,当输入信号的频率发生阶跃变化的幅度在失锁带的范围之内,环路能够保持锁定。然而,当输入信号的频率发生阶跃变化的幅度超出失锁带的范围,环路不能保持锁定,输出信号无法跟踪输入参考信号。当然,通过缓慢的捕获过程,环路可再次入锁。
1、捕获、锁定与跟踪的概念
捕获,是指从输入信号加到锁相环输入端开始开始,一直到环路达到锁定的全过程。
锁相环的锁定是指锁相环的输出频率等于输入频率,而输出信号的相位跟随输入信号的变化而变化。
跟踪是指锁相环锁定后的状态,一旦锁相环进入锁定状态,若输入信号产生了相位的变化,环路就调整压控振荡器的控制电压使得其输出信号的相位跟随输入信号的相位变化,即保持恒定的稳态相位差。这种状态称为跟踪或同步状态。
2、捕获时间和稳态相差
捕获时间是指捕获过程所需的时间。捕获时间的大小不仅与环路参数有关,而且与起始状态有关。
当环路进入同步状态之后,环内被控振荡器的振荡器频率已经等于输入信号的频率,两者之间只差一个固定的相位。这个相位差称为稳态相差。反过来说,若稳态相差为一个常数或等于0,则说明环路处于锁定状态。
3、相位捕获和频率捕获
“相位捕获”指在捕获过程中,相位没有经过2π的周期跳跃就能进入的锁定状态,即捕获过程小于一个2π周期的捕获过程称为相位捕获,又称快捕获。“频率捕获”指捕获经历一个以上的频率周期的捕获过程。即意味着环路的输入信号频率与输出信号频率在开始捕获前相差至少一个周期。一般来说,一个锁相环从捕获到锁定都要经历从频率捕获到相位捕获两个过程。
如下图的快捕范围就是快捕带,只有相位捕获,因此收敛较快,而除快捕范围的捕获带则首先要进行频率捕获,然后才是相位捕获。频率捕获相对来说是一个慢的过程,因此收敛较慢。
4、捕获带和同步带
捕获带是指保证环路必然进入锁定的最大固有频差值。换句话说,就是在保证环路不出现稳定的差拍状态所允许的最大固有频差值。
一旦环路进入锁定状态,系统就处于跟踪状态。随着输入信号的频率和相位的变化,环路应该始终能跟踪其变化,但一旦输入信号的频率与被控压控振荡器的自由振荡器频率相差太多,环路就会失去跟踪能力,这种状态称为“失锁”。
同步带是指系统保持同步的最大固有频差值
5、最大频率阶跃范围
描述PLL对于稳定工作状态的动态限制。环路初始处于锁定状态,当输入信号的频率发生阶跃变化的幅度在失锁带的范围之内,环路能够保持锁定。然而,当输入信号的频率发生阶跃变化的幅度超出失锁带的范围,环路不能保持锁定,输出信号无法跟踪输入参考信号。当然,通过缓慢的捕获过程,环路可再次入锁。

鉴相器

关于鉴频器介绍一下2种鉴频器:
鉴频器1,二象限反正切函数,
优点:最准确的鉴相方法,实际相位差异位于-90°至+90°的范围之内时,该鉴相器的工作保持线性,并且其输出的鉴相结果与信号幅值无关。
缺点:需要进行反正切求值,因而它也是计算量最大的一种。
鉴频器2

优点:计算量小, 适合纯逻辑实现
缺点:鉴频近似准确,鉴相结果与成正比,并且与信号幅值有关 环路滤波器 和 频率可变振荡器 与锁频环一样,不在重复叙述
Matlab 程序
在锁频环的程序基础上添加锁相环,设定前面500ms是锁频环工作,将频率快速的拉到接近的范围,然后切换到锁相环,期间在1s的时候频率突变10Hz,在2s的时候突变30Hz,在3s的时候突变100Hz,来理解快捕范围,频率阶跃、捕获带等这些概念。为了显示更加清楚,这里就不加码元信息了
format long g; clc;clear all;close all SampleClk = 4.1e6; PointNum = SampleClk*5;IF = 1e6- 240 ; Carr_cos(1:SampleClk) = cos(2*pi*(IF/SampleClk).*[1:SampleClk] + 0);Carr_sin(1:SampleClk) = sin(2*pi*(IF/SampleClk).*[1:SampleClk] + 0);IF = IF + 10;Carr_cos(1+SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[SampleClk+1:PointNum] + 0);Carr_sin(1+SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[SampleClk+1:PointNum] + 0);IF = IF + 30;Carr_cos(1+2*SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[2*SampleClk+1:PointNum] + 0);Carr_sin(1+2*SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[2*SampleClk+1:PointNum] + 0);IF = IF + 100;Carr_cos(1+3*SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[3*SampleClk+1:PointNum] + 0);Carr_sin(1+3*SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[3*SampleClk+1:PointNum] + 0); signal0 = Carr_cos +j*Carr_sin;data = awgn(signal0,-5,'measured'); n = SampleClk/1000; num=1000;a=rand(1,num);a(a>0.5)=1;a(a<=0.5)=-1; % for m = 1 1000% data(m*n+1:(m + 1)*n) = a(m)*data(m*n+1:(m + 1)*n);% end fc = 1e6;n = SampleClk/1000; nf = floor(length(data)/n); FAccCarReg0 = 0;PAccCarReg0 = 0;frame = 0; FLL_BL = 100;PLL_BL = 20;tc1 = 1/1000;k1 = 1; [d0,d1] = Fil2ndPara(k1,FLL_BL,tc1);[c0,c1] = Fil2ndPara(k1,PLL_BL,tc1); df(1:nf) = 0;df1(1:nf) = 0; PQaccu = 0;PIaccu = 0; fll = 0;pll = 0;carr_accu = 0; counter = 1; init_carr_freq = fc; for frame = 1 : nf % frame carr_freq = init_carr_freq + fll + pll; for clk = 0 : n-1 %clk carr_accu = rem(carr_accu,1); cosine = cos(2*pi*(carr_accu)); sine = sin(2*pi*(carr_accu)); baseband = (data(((frame-1)*n+clk+1))).*(cosine -j*sine); PI_clk = real(baseband); PQ_clk = imag(baseband); PQaccu = PQaccu + PQ_clk; PIaccu = PIaccu + PI_clk; carr_accu = carr_accu + carr_freq/SampleClk; end PQ(frame) = PQaccu; PI(frame) = PIaccu; if PI(frame) == 0 PI(frame) = 0.0000001; end PQaccu = 0; PIaccu = 0; if frame <5 fll = 0; pll = 0; elseif(frame <500 ) df(frame) = FrqErr(PI,PQ,frame); [fll,FAccCarReg0] = Fil2nd(d0,d1,FAccCarReg0,df(frame)); else df1(frame) = PhaErr(PI,PQ,frame); [pll,PAccCarReg0] = Fil2nd(c0,c1,PAccCarReg0,df1(frame)); end fll_frame(frame) = fll + pll; end figure(1)plot(fll_frame); figure(4)plot(PI);hold onplot(PQ);hold on figure(5)plot(atan(PQ./PI))

关于鉴频器介绍一下2种鉴频器:
鉴频器1,二象限反正切函数,
优点:最准确的鉴相方法,实际相位差异位于-90°至+90°的范围之内时,该鉴相器的工作保持线性,并且其输出的鉴相结果与信号幅值无关。
缺点:需要进行反正切求值,因而它也是计算量最大的一种。
鉴频器2

优点:计算量小, 适合纯逻辑实现
缺点:鉴频近似准确,鉴相结果与成正比,并且与信号幅值有关 环路滤波器 和 频率可变振荡器 与锁频环一样,不在重复叙述
Matlab 程序
在锁频环的程序基础上添加锁相环,设定前面500ms是锁频环工作,将频率快速的拉到接近的范围,然后切换到锁相环,期间在1s的时候频率突变10Hz,在2s的时候突变30Hz,在3s的时候突变100Hz,来理解快捕范围,频率阶跃、捕获带等这些概念。为了显示更加清楚,这里就不加码元信息了
format long g; clc;clear all;close all SampleClk = 4.1e6; PointNum = SampleClk*5;IF = 1e6- 240 ; Carr_cos(1:SampleClk) = cos(2*pi*(IF/SampleClk).*[1:SampleClk] + 0);Carr_sin(1:SampleClk) = sin(2*pi*(IF/SampleClk).*[1:SampleClk] + 0);IF = IF + 10;Carr_cos(1+SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[SampleClk+1:PointNum] + 0);Carr_sin(1+SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[SampleClk+1:PointNum] + 0);IF = IF + 30;Carr_cos(1+2*SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[2*SampleClk+1:PointNum] + 0);Carr_sin(1+2*SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[2*SampleClk+1:PointNum] + 0);IF = IF + 100;Carr_cos(1+3*SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[3*SampleClk+1:PointNum] + 0);Carr_sin(1+3*SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[3*SampleClk+1:PointNum] + 0); signal0 = Carr_cos +j*Carr_sin;data = awgn(signal0,-5,'measured'); n = SampleClk/1000; num=1000;a=rand(1,num);a(a>0.5)=1;a(a<=0.5)=-1; % for m = 1 1000% data(m*n+1:(m + 1)*n) = a(m)*data(m*n+1:(m + 1)*n);% end fc = 1e6;n = SampleClk/1000; nf = floor(length(data)/n); FAccCarReg0 = 0;PAccCarReg0 = 0;frame = 0; FLL_BL = 100;PLL_BL = 20;tc1 = 1/1000;k1 = 1; [d0,d1] = Fil2ndPara(k1,FLL_BL,tc1);[c0,c1] = Fil2ndPara(k1,PLL_BL,tc1); df(1:nf) = 0;df1(1:nf) = 0; PQaccu = 0;PIaccu = 0; fll = 0;pll = 0;carr_accu = 0; counter = 1; init_carr_freq = fc; for frame = 1 : nf % frame carr_freq = init_carr_freq + fll + pll; for clk = 0 : n-1 %clk carr_accu = rem(carr_accu,1); cosine = cos(2*pi*(carr_accu)); sine = sin(2*pi*(carr_accu)); baseband = (data(((frame-1)*n+clk+1))).*(cosine -j*sine); PI_clk = real(baseband); PQ_clk = imag(baseband); PQaccu = PQaccu + PQ_clk; PIaccu = PIaccu + PI_clk; carr_accu = carr_accu + carr_freq/SampleClk; end PQ(frame) = PQaccu; PI(frame) = PIaccu; if PI(frame) == 0 PI(frame) = 0.0000001; end PQaccu = 0; PIaccu = 0; if frame <5 fll = 0; pll = 0; elseif(frame <500 ) df(frame) = FrqErr(PI,PQ,frame); [fll,FAccCarReg0] = Fil2nd(d0,d1,FAccCarReg0,df(frame)); else df1(frame) = PhaErr(PI,PQ,frame); [pll,PAccCarReg0] = Fil2nd(c0,c1,PAccCarReg0,df1(frame)); end fll_frame(frame) = fll + pll; end figure(1)plot(fll_frame); figure(4)plot(PI);hold onplot(PQ);hold on figure(5)plot(atan(PQ./PI))
从频率跟踪图可以明显的看出在500ms锁频环转锁相环的时候,误差频率很小,因此处于快捕带,只需要对相位进行捕获,收敛很快。在1s的时候,频率突变10Hz,环路仍然保持锁定,很快便调整到了正确的频率,因此10Hz属于最大阶跃范围内,2s的时候,频率突变30Hz,很明显的频率出现了震荡,这就是失锁了,但仍处于捕获带内,因此花了一点时间又重新锁定到正确的频率上,最后,频率突变100Hz,则直接跳出了捕获带之外,无法重新锁定了。 从I/Q幅度图以及鉴相值可以看出在500ms和1s的时候,相位没有出现2*pi的翻转,而在2s的时候出现了多次的2pi的翻转,这也印证了最开始介绍锁相环的概念中的 频率捕获和相位捕获的内容。IQ幅度图:

鉴相值图:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
锁相环
+关注
关注
36文章
633浏览量
90810 -
鉴频器
+关注
关注
1文章
28浏览量
33776
原文标题:FPGA学习-数字锁相环
文章出处:【微信号:FPGA研究院,微信公众号:FPGA研究院】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
热点推荐
CDCVF2510 3.3V锁相环时钟驱动器技术文档总结
该CDCVF2510是一款高性能、低偏斜、低抖动、锁相环 (PLL) 时钟驱动器。它使用锁相环 (PLL) 将反馈 (FBOUT) 输出与时钟 (CLK) 输入信号在频率和相位上精确对齐。它专为
CDCVF25081 3.3-V 锁相环时钟驱动器技术文档总结
CDCVF25081是一款高性能、低偏斜、低抖动、锁相环时钟驱动器。它使用 PLL 将输出时钟在频率和相位上精确对齐输入时钟信号。输出分为 2 个组,总共 8 个缓冲 CLKIN 输出。当不存在 CLKIN 信号时,该器件会自动将输出置于低电平状态(掉电模式)。
CDCVF2510A 3.3V锁相环时钟驱动器技术文档总结
该CDCVF2510A是一款高性能、低偏斜、低抖动、锁相环 (PLL) 时钟驱动器。该CDCVF2510A使用锁相环 (PLL) 将反馈 (FBOUT) 输出在频率和相位上精确对齐到时钟 (CLK
基于锁相环的无轴承同步磁阻电机无速度传感器检测技术
使用场合。为实现无轴承同步磁阻电机高速超高速、低成本、实用化运行,提出了一种基于锁相环法的无速度传感自检测技术。通过应用锁相环原理,设计出无轴承同步磁阻电机无速度传感器,并基于 Matlab
发表于 07-29 16:22
高压放大器在锁相环稳定重复频率研究中的应用
实验名称: 锁相环稳定重复频率的系统分析 实验内容: 针对重复频率的漂移,引入两套锁相环系统反馈控制两个激光器的重复频率,将其锁定在同一个稳定的时钟源上。本章主要阐述了经典锁相环的原理,稳定重复
Analog Devices Inc. ADF4382x小数N分频锁相环 (PLL)数据手册
Analog Devices ADF4382x小数N分频锁相环 (PLL) 是一款高性能、超低抖动、小数N分频锁相环 (PLL)。它集成了压控振荡器 (VCO),是5G或数据转换器时钟应用生成
锁相环(PLL)电路设计与应用(全9章)
内容介绍本文档主要介绍锁相环(PLL)电路的设计与应用,内容包括PLL工作原理与电路构成、PLL电路的传输特性、PLL电路中环路滤波器的设计方法、PLL电路的测试与评价方法、PLL特性改善技术
发表于 04-18 15:34
锁相环是什么意思
锁相环(Phase-Locked Loop,简称PLL)是一种广泛应用于电子系统中的反馈控制系统,主要用于频率合成和相位同步。本文将从锁相环的工作原理、基本组成、应用案例以及设计考虑等方面进行详细阐述,以帮助读者全面理解这一重要技术。
数字锁相环:二阶环的FPGA实现
一.依据模拟环设计数字环 根据信号与系统的分析理论,一个系统完全由系统函数来确定,因此我们可从系统函数的角度出发,找到模拟电路与数字电路的转换关系,最终根据环路滤波器的
AN-1420:利用数字锁相环(DPLL)实现相位增建和无中断切换
电子发烧友网站提供《AN-1420:利用数字锁相环(DPLL)实现相位增建和无中断切换.pdf》资料免费下载
发表于 01-13 14:07
•0次下载
可编程晶振的锁相环原理
锁相环(Phase-LockedLoop,PLL)是一个能够比较输出与输)入相位差的反馈系统,利用外部输入的参考信号控制环路内部振荡信号的频率和相位,使振荡信号同步至参考信号。而锁相环
可编程晶振的关键技术——锁相环原理讲解
扬兴科技的可编程晶振利用锁相环技术,实现了核心参数的随意编程定制。这意味着客户可以根据具体需求,在1MHz~2100MHz的宽频率范围内(精确至小数点后六位)选择任意频点进行定制。
TMS320C6000 DSP软件可编程锁相环控制器指南
电子发烧友网站提供《TMS320C6000 DSP软件可编程锁相环控制器指南.pdf》资料免费下载
发表于 12-24 16:54
•0次下载

数字锁相环基础知识
评论