锁相环原理解析

在计算机和嵌入式系统中,常常要用锁相环来倍频,那么,锁相环是如何倍频的,其原理又是什么呢?

目录

  • 1. 锁相环基本概念与构成
    • 1.1 鉴相器
    • 1.2 低通滤波器
    • 1.3 压控振荡器
  • 2. 锁相环如何实现倍频
  • 3. 锁相环也会失效?
  • 4. 参考文献

1. 锁相环基本概念与构成

锁相环的英文简称是PLL(Phase Locked Loop)意思也就是说,锁相环就是锁定相位的一个环路,更确切地说,是一个闭环电路,是对相位的阶跃响应。

如下图所示(分频器只有在系统有倍频需要的时候才有,故而用虚线标出):
在这里插入图片描述
从上图可以看出,锁相环由鉴相器、低通滤波器、压控振荡器以及分频器组成。压控振荡器经过分频后,再与原来的输入电压一同输入鉴相器,就可以达到倍频的目的。

1.1 鉴相器

顾名思义,鉴相器就是鉴定相位的是否有偏差的模块。那么如何做到“鉴相”呢?理想条件下,一个两输入的异或门电路就可以实现。
在这里插入图片描述
异或门电路,当两个输入的数字信号相同时输出0,不同时输出1。可以从上图中的Vin和Vout中看出。这样,就达到了鉴定两个输入信号是否同相的目的。

那,异或门又如何设计呢?这就要用到数字电子的知识了,具体可以设计成以下的样子:
在这里插入图片描述
稍微懂点数字电子的知识就可以了哈。

1.2 低通滤波器

常见的滤波器有三种,分别是高通滤波器低通滤波器带通滤波器,而带阻滤波器并不常见。低通滤波器很好理解,就是让低频信号通过,高频信号则过滤掉。
在这里插入图片描述
上图反映了锁相环在相位调节前后,各物理量的变化过程。可以看到,VPD在经过低通滤波器后,将数字信号变成了较为平缓的模拟信号。

常见的低通滤波器有两种,一阶低通滤波器和二阶低通滤波器。

一阶低通滤波器和二阶低通滤波器都是常用的滤波器类型,它们的主要区别在于其对信号的滤波效果和滤波器的复杂度不同。

一阶低通滤波器的滤波效果相对较简单,可以有效地去除高频信号,使得信号的频率范围被限制在低于截止频率的范围内。但是在截止频率之上,其对信号的抑制效果并不是很明显。一阶低通滤波器的实现比较简单,只需要一个电容和一个电阻就可以实现,因此成本比较低。

二阶低通滤波器相对于一阶低通滤波器来说,其滤波效果更加明显。在截止频率之上,它对信号的抑制能力更强,可以有效地去除高频噪声,使得输出信号更加平滑。此外,二阶低通滤波器还具有较好的相位响应和群延迟性能。但二阶低通滤波器需要使用更多的元件进行实现,因此成本比较高。

因而在锁相环中,通常采用二阶滤波器
二阶低通滤波器
如上图所示,低通滤波器在对输入信号进行滤波的同时,也相当于进行了积分。以达到对输入-输出的相位误差进行累积的效果。 我们可以简单推导一下二阶低通滤波器的传递函数:
请添加图片描述

1.3 压控振荡器

压控振荡器是一个受压控电压控制改变输出频率的模块,有一个参数为压控灵敏度,就是控制电压和输出频率的转换系数。

振荡器本身就是多种多样,也是较为深奥的学问,感兴趣的可以参考:【模拟集成电路】宽摆幅压控振荡器(VCO)设计

2. 锁相环如何实现倍频

通过以上的分析,我们可以得出整个系统的传递函数(鉴频器和压控振荡器的传递函数并不难,故而略去):
请添加图片描述
环路增益为G(S),整个系统的闭环传递函数为H(S),从上面的关系式可以看出,当系统的各项参数稳定后,输入与输出信号的关系仅与分频系数N有关,反馈回路分频器的分频系数与整个系统的倍频系数一致

3. 锁相环也会失效?

有了锁相环,系统就高枕无忧了。。。吗?

远非如此,当电子系统受到电磁干扰,或者极端温度条件时,时钟同样会出现不准确的情况,这种情况又该如何解决呢?

这时候要分情况讨论,限于篇幅,仅仅说明通信协议中应对此种问题的方法。

在通信协议中,通常有两种方法来实现数据传输中的错误。

  1. 硬件层面(物理层面):将普通的电平信号改为差分信号进行通讯,常见的有RS485CAN通讯协议。
  2. 软件层面:添加校验位,也就是在通讯协议中,会有专门的字段对数据的准确性进行校验,数据校验的方式也是多种多样,最常见的有奇偶校验CRC校验等。

关于CRC校验的具体细节,可参考我的这篇文章:
CRC校验原理全面解读

当然,软件除了添加校验位,还有一种方式,就是采用 过采样技术,现在很多芯片(单片机)的UART协议中都可以通过简单配置实现过采样。

过采样是指在接收端对数据进行多次采样,以提高采样的准确性。通常情况下,UART采用16倍过采样,即每个位周期内进行16次采样。这样可以有效地减小时钟频率差异对数据采样的影响。

过采样的原理是通过对数据进行多次采样,统计每次采样中数据位的状态,然后根据统计结果判断数据位的值。如果大多数采样中数据位为高电平,则判断该位为逻辑1;如果大多数采样中数据位为低电平,则判断该位为逻辑0。

过采样技术可以提高UART通信的可靠性,减小时钟频率差异对数据采样的影响。同时,过采样还可以用于检测和纠正数据传输中的错误,提高通信的可靠性和稳定性。

关于UART通信的基本原理,可以参考:UART串口通信

而关于过采样,目前可查到的资料并不是很理想,有时间再单独写一篇。

4. 参考文献

让频率提升几十倍的电路!锁相环的工作原理!

锁相环原理

以及,CSDN的AI助手。

相关书籍:《电路原理》《模拟电路技术基础》《数字电路技术基础》《自动控制原理》等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/6656.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【前端学习——正则】

https://www.bilibili.com/video/BV1da4y1p7iZ/?spm_id_from333.337.search-card.all.click&vd_source5cef5968d539682b683e7d01b00ad01b 学习网站 https://github.com/ziishaned/learn-regex/blob/master/translations/README-cn.md

Bookends for Mac:文献管理工具

Bookends for Mac,一款专为学术、研究和写作领域设计的文献管理工具,以其强大而高效的功能深受用户喜爱。这款软件支持多种文件格式,如PDF、DOC、RTF等,能够自动提取文献的关键信息,如作者、标题、出版社等&#xff0c…

在M1芯片安装鸿蒙闪退解决方法

在M1芯片安装鸿蒙闪退解决方法 前言下载鸿蒙系统安装完成后,在M1 Macos14上打开闪退解决办法接下来就是按照提示一步一步安装。 前言 重新安装macos系统后,再次下载鸿蒙开发软件,竟然发现打不开。 下载鸿蒙系统 下载地址:http…

MATLAB实现遗传算法优化第三类生产线平衡问题

第三类生产线平衡问题的数学模型 假设: 工作站数量(m)和生产线节拍(CT)是预设并固定的。每个任务(或作业元素)只能分配到一个工作站中。任务的执行顺序是预先确定的,且不可更改。每…

PHP医疗不良事件上报系统源码 AEMS开发工具vscode+ laravel8 医院安全(不良)事件报告系统源码 可提供演示

PHP医疗不良事件上报系统源码 AEMS开发工具vscode laravel8 医院安全(不良)事件报告系统源码 可提供演示 医院安全不良事件报告系统(AEMS);分为外部报告系统和内部报告系统两类。内部报告系统主要以个人为报告单位&…

Docker私有镜像仓库搭建 带图形化界面的

搭建镜像仓库可以基于Docker官方提供的DockerRegistry来实现。 官网地址:https://hub.docker.com/_/registry 先配置私服的信任地址: # 打开要修改的文件 vi /etc/docker/daemon.json # 添加内容: "insecure-registries":["http://192.…

暴力匹配字符串的升级版算法 —— Kmp算法

文章目录 一、Kmp算法是什么?二、算法分析1.构建next数组2.匹配主串 三、完整代码 一、Kmp算法是什么? 简单来说,KMP(Knuth-Morris-Pratt)算法主要用于解决字符串匹配问题。也就是当你有一个主串(text&…

OceanBase 轻量级数仓关键技术解读

码到三十五 : 个人主页 为了更好地聚合和治理跨域数据,帮助企业用较低的成本快速聚合分析,快速决策,不断的让企业积累的数据产生价值,从全域海量数据抓取,高性能流批处理,元数据血缘治理等等方面…

AI-数学-高中52-离散型随机变量概念及其分布列、两点分布

原作者视频:【随机变量】【一数辞典】2离散型随机变量及其分布列_哔哩哔哩_bilibili 离散型随机变量分布列:X表示离散型随机变量可能在取值,P:对应分布在概率,P括号里X1表示事件的名称。 示例:

QT:QT窗口(一)

文章目录 菜单栏创建菜单栏在菜单栏中添加菜单创建菜单项添加分割线 工具栏创建工具栏设置停靠位置创建工具栏的同时指定停靠位置使用QToolBar类提供的setAllowedAreas函数来设置停靠位置 设置浮动属性设置移动属性 状态栏状态栏的创建在状态栏中显示实时消息在状态栏中显示永久…

AI人才争夺战,华尔街入局:豪掷百万美元年薪抢人

继硅谷之后,华尔街也入局**“AI人才争夺大战”**。 他们的目标非常明确——抢的就是高精尖的AI专家。 △图源:Business Insider 现在这条“街”上,不论是银行、对冲基金还是私募股权公司都已纷纷下场,可谓是豪掷千金&#xff0c…

选择深度学习框架:TensorFlow 2 vs PyTorch

TensorFlow 2 vs PyTorch 选择深度学习框架:TensorFlow 2 vs PyTorchTensorFlow 2概述TensorFlow 2的优点TensorFlow 2的缺点 PyTorch概述PyTorch的优点PyTorch的缺点 选择建议对于选择困难症的人,我给你们的答案——PyTorch选择理由:结论&am…

【LinuxC语言】setitimer与getitimer函数

文章目录 前言一、setitimer() 函数二、getitimer() 函数三、示例代码总结 前言 在Linux系统下,编写程序时经常需要使用定时器来实现一些定时任务、超时处理等功能。setitimer() 和 getitimer() 函数是两个用于操作定时器的重要函数。它们可以帮助我们设置定时器的…

[华为OD]C卷 给定一个数组,数组中的每个元素代表该位置的海拔高度 山脉的个数 200

题目: 给定一个数组,数组中的每个元素代表该位置的海拔高度。0表示平地,>1时表示属于某个 山峰,山峰的定义为当某个位置的左右海拔均小于自己的海拔时,该位置为山峰。数组起始位 置计算时可只满足一边…

SpringBoot自定义定时任务

通常,在我们的项目中需要定时给前台发送一些提示性消息或者我们想要的定时信息,这个时候就需要使用定时任务来实现这一功能,实现也很简单,接下来具体来看看吧~ 简单定时任务 首先,你需要在你的启动类上加上开启定时任…

YOLOv5改进之bifpn

目录 一、原理 二、代码 三、在YOLOv5中的应用 一、原理 论文链接:

[Linux][网络][TCP][一][TCP基础][TCP报头]详细讲解

目录 1.TCP头部格式2.TCP协议的特点3.TCP如何封装与分用4.通过序列号和确认应答号提高可靠性1.32位序列号2.32位确认应答号3.保证可靠性4.为什么序列号和确认应答号是单独的字段 5.窗口大小1.TCP的发送和接收缓冲区2.窗口大小 6.连接管理机制 1.TCP头部格式 TCP全称为"传输…

Ubuntu20安装torch1.13和pytorch_geometric2.3.0(对应cuda11.6)

在torch下载页面搜索1.13https://pytorch.org/get-started/previous-versions/,wheel安装方式(激活conda虚拟环境) pip install torch1.13.0cu116 torchvision0.14.0cu116 torchaudio0.13.0 --extra-index-url https://download.pytorch.org…

【Trick】conda安装python依赖时出现429 Client Error

起因 我在根据yml文件安装依赖和创建虚拟环境时,出现报错,主要报错信息为以下两点: 【1】Collecting package metadata (repodata.json): failed 【2】requests.exceptions.HTTPError: 429 Client Error: Too Many Requests for url: https…