扯一扯基于4046系IC的锁相电路设计
锁相环的原理这里就不多提了,简而言之就是一个环路,通过负反馈把内置振荡器输出的相位和输入波形的相位之差不断缩小,最后达到一致。当然通过干涉反馈环路,也可以使输出与输入呈的特定倍频或者相差关系。
嗯,不多提了,要是有不懂锁相环是啥的还想看下去的话就给张图你们意会一下吧(
具体到4046上,信号相位差可由内部的两种(在74HC4046/7046里是三种,多了一种RS触发器实现的)鉴相器度量;内部振荡器是一个压控振荡器(VCO),其输出频率可由外部电压控制。由于鉴相器的输出是离散的三态电平脉冲,而VCO是由连续电压线性控制的,所以环路上需要一个低通滤波器(LPF)来完成这个离散电平到连续电压信号的变换。
4046系IC示意图。仅给出各型号共有的部分
4046的VCO的静态工作状态由三个元件设定:震荡电容C1、频偏设置电阻R1、上限设置电阻R2。其中R1设置了VCO的频率下限,同时也使得异或门鉴相器的扫频范围从该下限开始。该电阻是非必须的,当11脚悬空(R1无穷大)时,VCO频率从0Hz开始递增。关于这三个元件和VCO频率的关系真可谓是众说纷纭,连不同厂家给的公式都不一样。实际上,由于元件的非线性、不同批次参数的离散性和不同厂商在design和fab上的差异,并没有一个精确的公式来表示VCO参数的设定。因为4046的频率跟踪特性,这样精确的公式也是不必要的。这里给出一组有较为普遍认同的公式,仅作为进行估算时的参考:
PD1原理图(左)工作波形(中)及扫频电路 (右)
PD2原理图(左)工作波形(右)
其中N为分频系数;KVCO为压控振荡器增益,即VCO频率范围 / VCC;Kd为鉴相器增益,其对于PD1而言是VCC/π,对于PD2则是VCC/4π。设计时,通常先确定一个适宜大小的C2,并取wn= 输入频率 / 10,取d = 0.707。
其中Kda为环路滤波器增益,如果使用无源滤波器的话则取1。KVCO与实际电路的关系是
其中f表示频率范围,VVCO表示控制电压范围。由于控制电压过低或过高会导致VCO进入非线性区,在VDD内设定一个数百毫伏的裕量可以保证精度。我们可以看出,在给定的VDD下,希望的工作频率范围越宽,KVCO就越小,意味着pll的响应越慢。所以希望同时得到大的工作频率范围和快的响应速度时,使用有源滤波器引入增益是很有必要的。
使用比较器的电路(左)和使用施密特触发器的电路(右)
上述的两种方案都有一个问题,即只能使输出相位超前,这限制了PLL电路作为移相器的功能。这里给出一种相当巧妙的方法[11],通过对VCO的控制电压进行偏置,实现宽范围的移相,而且不受器件速度的限制。引文中的实现需要给运放双电源供电,然后通过在第二个运放构成的加法器的反相端叠加电压实现控制。其实,可以通过在两级运放的同相端设置一偏置电压Vbias来实现单电源供电,并通过调节任意一级的Vbias大小来实现控制,但这要求环路滤波器必须是有源LPF(即第一级反相放大器)。
引文给出的控制电路(左)和使用单电源的变体电路(右)
在很多文献中,4046的1脚被描述为“锁定指示”,往往连接一个LED来作为pll是否入锁的判断。事实上这个判断的依据并不可靠——该脚实际上反映了环路失锁的“程度”,当相位差越大时,该脚输出更多的电平。显然,在入锁时,因为输出一直为高,LED确实能指示入锁的状态;但失锁时,如果相位差较小,输出的低电平不够宽或多,LED只会微弱变暗。在74HC7046中内置了一个由RC滤波器和施密特触发器组成的检测电路,可以通过适当地设定外接电容的大小得到可靠的锁定指示。
74HC7046的入锁检测电路
如果要用一个特征区分开4大类4046,那一定是15脚的功能。在CD4046中,15脚是连接到VSS上的一个稳压管的负极;74HC4046中,15脚是三号鉴相器的输出;74HCT7046中,15脚用来接入锁定检测的RC滤波器的外接电容;74HCT9046中,15脚连接设定PDII输出电流源的限流电阻。
我们知道,RC振荡器的频率易受工作电压的影响。为了得到精确而稳定的频率输出,4046系IC对于供电的要求较高。在74HCT9046中,VCO供电的稳定由内置的带隙基准保证,相对放宽了对供电的要求。
除74HCT9046以外的所有4046系IC,其二号鉴相器都因寄生电容而存在一个微小的死区,使得较小的相位差不能引起VCO的响应。9046中改进的PDII修复了这个问题。
4046/7046的PDII存在的死区(左)和9046中改进后的PDII的输出特性(右)
[1]:关于CD4046的相位比较器1(异或门)的一个问题 电源网
[2]:MC74HC4046A ON Semiconductor P8
[3]:MC74HC4046A ON Semiconductor P9
[4]:PLL SSTC with Type 2 phase comparator problems (added some info) 4hv
[5]:功率超声电源的频率跟踪电路 苏州大学学报 第30卷第2期 P69
[6]:CMOS Phase-Locked-Loop Applications Using the CD54/74HC/HCT4046A and CD54/74HC/HCT7046A Ti SCHA003B P31
[7]:Configuring and Applying the MC74HC4046A Phase-Locked Loop ON Semiconductor AN1410
[8]:MODELING, ANALYZING AND DESIGNING A PHASE-LOCKEDBATTERY CHARGER ournal of the Chinese Institute of Engineers, Vol. 30, No. 6, pp. 1037-1046 (2007) P1037
[9]:基于74HC4046兆赫兹级锁相控制电路的设计 电子技术 2011年45(2)
[10]:基于CD4046锁相环200KHZ的高频感应加热电源频率跟踪的研究 电子世界 2011年9月号
[11]:移相器的一种简单实现方法 微电子与基础产品 vol28
扯一扯基于4046系IC的锁相电路设计的更多相关文章
- 扯一扯前端css的整体架构设计:(2)base基础类的那些事儿
周一下午在实验室写了第一篇博文,有几个人捧场,那咱就得接着下去啊.然后我觉得现在写的内容更多的偏向于谈一下我对于前端css架构的理解和前端经验的一个小总结,所以就把标题里原来的[项目总结]给删掉了.但 ...
- 扯一扯 C#委托和事件?策略模式?接口回调?
早前学习委托的时候,写过一点东西,今天带着新的思考和认知,再记点东西.这篇文章扯到设计模式中的策略模式,观察者模式,还有.NET的特性之一--委托.真的,请相信我,我只是在扯淡...... 场景练习 ...
- 【项目总结】扯一扯电商网站前端css的整体架构设计(1)
最近半忙不忙的写了一个外包网站,网站主要功能是艺术品竞拍和艺术衍生品的销售.工程已经完成了80%左右,现在前后端代码量已经50W行左右,我主要负责的是前端设计和前端布局.下面就先放一个网站的设计图吧, ...
- 这个案例写出来,还怕跟面试官扯不明白 OAuth2 登录流程?
昨天和小伙伴们介绍了 OAuth2 的基本概念,在讲解 Spring Cloud Security OAuth2 之前,我还是先来通过实际代码来和小伙伴们把 OAuth2 中的各个授权模式走一遍,今天 ...
- 基于 Aliexpress API 的小程序 : 批量 Copy 产品到不同的店铺
第一个基于 Aliexpress API 的小程序 : 批量 Copy 产品到不同的店铺 还没来得及用 API 重写软件, 先写个小程序来缓解一下手工压力: 批量Copy 产品到不同的店铺. 开网店 ...
- dns安全 涉及 术语
僵木蠕 以“僵木蠕”(僵尸网络.木马.蠕虫)为代表的网络威胁 僵尸网络是攻击者出于恶意目的,传播僵尸程序bot以控制大量计算机,并通过一对多的命令与控制信道所组成的网络,我们将之称之为僵尸网络,bot ...
- 【Win 10 应用开发】多媒体转码
上次本来说好,今天咱们来讨论 socket 相关的话题,但,对于 socket ,老周还有一些问题没弄清楚,等弄清楚了,再和大伙伴们一起探讨.故,今天咱们扯一扯多媒体转码的事. 听起来挺复杂的,不过, ...
- 计算照片的面积(WPF篇)
昨天,老周突发其想地给大伙伴们说了一下UWP应用中计算照片面积的玩法,而且老周也表示会提供WPF版本的示例.所以,今天就给大伙们补上吧. WPF是集成在.net框架中,属于.net的一部分,千万不要跟 ...
- 用CIL写程序:写个函数做加法
前言: 上一篇文章小匹夫为CIL正名的篇幅比较多,反而忽略了写那篇文章初衷--即通过写CIL代码来熟悉它,了解它.那么既然有上一篇文章做基础(炮灰),想必各位对CIL的存在也就释然了,兴许也燃起了一点 ...
随机推荐
- 3名程序员被抓!开发“万能钥匙”APP,撬走3个亿
来自:程序员头条 报道 又有 3 名程序员被抓!开发"万能钥匙"APP,撬走 3 亿! 前几天,据央视新闻报道,上海公安机关接到共享单车企业报案,随后破获了一起共享单车万能解锁 A ...
- doctrine queryBuilder
为了能够方便的切换数据库,我们有必要使用doctrine的queryBuilder, 但是估计很多人都是不喜欢的(我也是),之前尝试用的时候,发现在doctrine定义的SELECT语法中并没有CON ...
- Bugku的一道注入
继续补sqli的题 这道题与之前的题的区别是在第二部分中加了一道waf,所以需要特殊的手段来进行注入. 题目来源:http://123.206.87.240:9004/1ndex.php?id=1 第 ...
- SpringBoot之SpringApplication
简介 可以用于从java主方法中引导和启动Spring应用程序的类,在默认情况下,通过以下步骤来启动应用: 创建一个ApplicationContext实例 注册CommandLineProperty ...
- 原创:Python爬虫实战之爬取代理ip
编程的快乐只有在运行成功的那一刻才知道QAQ 目标网站:https://www.kuaidaili.com/free/inha/ #若有侵权请联系我 因为上面的代理都是http的所以没写这个判断 代 ...
- 如何正确使用redis分布式锁
前言 笔者在公司担任技术面试官,在笔者面试过程中,如果面试候选人提到了reids分布式锁,笔者都会问一下redis分布式锁的知识点,但是令笔者遗憾的是,该知识点十个人中有九个人都答得不清楚,或者回 ...
- python3.5以及scrapy,selenium,等 安装
一.python3.5安装和配置 在安装的时候无意间发现了,python3.6没有给我自定义安装的机会,直接就C盘见:因此我选择了python3.5.<安装部分跳过,至于一条吃过痛苦的建议:不要 ...
- Java对接微信登录
今天我们来对接微信开放平台的网站应用登录 首先上文档链接:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login ...
- MySQL root密码重置问题
1:进入cmd,停止mysql服务:Net stop mysql (进入服务---->MySql----->停止) 到mysql的安装路径启动mysql,在bin目录下使用mysqld-n ...
- C#可空类型知多少
在项目中我们经常会遇到可为空类型,那么到底什么是可为空类型呢?下面我们将从4个方面为大家剖析. 1.可空类型基础知识 顾名思义,可空类型指的就是某个对象类型可以为空,同时也是System.Nullab ...