基于FPGA的电压控制LC振荡器的设计研究

发布时间:2022-10-21 08:35:07

摘要:文章设计了一种基于FPGA的电压控制LC振荡器, 频率可调整的LC振荡器利用可变电容值的二极管构成,由锁相环频率合成器MC145152进行控制电压,以FPGA+单片机作为整个系统的测控部分,采用硬件描述语言进行各功能模块的编程,最后对程序进行编译和功能仿真,给出仿真结果,验证系统设计的正确性。

关键词:VHDL FPGA 电压控制 LC振荡器 仿真

中图分类号:TN752文献标识码:A文章编号:1007-9416(2011)09-0056-02

1、系统设计要求

设计基于FPGA的电压控制LC震荡器,其具体要求如下:(1)振荡器输出的正弦波不能有明显的失真。(2)振荡器输出频率范围:12~30MHz。(3)频率稳定度输出要高于0.001。(4)输出电压峰-峰值:1V±0.2V。(5)能够实现输出频率的步进及图像显示,步进的间隔为100KHz。(6)设计要求频率可以实时测量,并且可以显示。

2、系统设计总体方案

据以上系统的设计要求,本系统可分为两大部分:基于FPGA的电压控制LC振荡源电路及压控LC振荡源的测量控制和显示电路。其中电压型控制LC振荡源电路部分综合考虑各方面的因素,本系统频率可调整的LC振荡器拟利用可变电容值的二极管构成,由锁相环频率合成器MC145152进行控制二极管的电压。压控LC振荡源的测控和显示电路部分考虑到单片机具有很好的人机接口和运算控制功能,而FPGA/CPLD具有集成度高,I/O资源丰富,稳定可靠,可现场在线编程等优点,本系统拟用FPGA/CPLD和单片机相结合,构成整个系统的测控主体,FPGA主要完成对频率的测量及对锁相环频率合成器MC145152的直接控制,而AT89C51单片机则主要针对键盘处理和各工作状态的串行显示,另外还配合FPGA测量控制频率的预置[1]。整个系统的总体原理框图如图1所示。

3、电压控制LC振荡器的设计

电压控制LC振荡器主要包括4个部分:压控LC振荡电路、MC145152锁相环电路、精度达10-5的温补晶体基准频率发生电路、LM258组成的电压比较器电路。

3.1 压控LC震荡电路(VCO)

压控LC震荡电路(VCO)一般由分立元件电感和电容组成。由于可变电容二极管的结电容随反向电压的增加而减少,因此若电容选用变容二极管并加上一个反向控制电压,就可实现振荡器的频率的改变。若L一定,则振荡器频率的调节范围由二极管的容量变化范围决定。设不加电压时振荡器的输出频率为,频率的可变范围是,变容二极管的变容范围是,电路固有电容为C,则满足公式/=-1/2(/C)。要满足15-35MHz的变频范围,L取330nH,则变容二极管在2-10V的容量范围应为30-380pF。

具体计算过程如下:

根据图可得振荡回路中的等效电容为

(为变容二极管的结电容)

当f=15MHz时,由可得

15

解方程得=375Pf。

当f=35MHz时,可用同样的方法求得=30pF。

因此本设计中振荡频率为15~35MHz,所需变压器二极管的结电容范围为30-375pF。

3.2 锁相环及其工作原理

本设计中锁相环选用摩托罗拉公司生产的锁相环频率合成器专用芯片MC145152,参考晶振产生的参考频率输入OSCin,再经过内部R分频器分频产生信号给鉴相器作为基准频率。而VCO的检测频率经耦合输入,再经过一个反相器输入双模分频器,经过=NP+A分频后输出。送到鉴相器与户主故意把频率进行比较,当与基准频率存在误差时,鉴相器就会输出一处理信号、,这个信号经过衰减滤波后送给电压比较器LM258。LM258将产生一个误差纠正电压作为压控振荡器的,从而改变VCO内变容二极管的电容值,继而改变VCO的频率,直到鉴相器的两路输入信号频率相等时,比较器才呈高阻态。此时环路处于锁定状态,直到N发生变化,进入下一个频率锁定状态。如果频率超过VCO的变化范围时,锁相环路失锁,LED指示灯亮。当设定再次进入那个范围时,系统又自动进入锁定状态[2]。

R分频器的分频系数由RA2~RA0接高低电平决定,设置不同的R值可实现不同频率的步进, N计数器的系数由N9~N0确定,用二进制表示,比如N9~N0为0101010110,则N=342.同样,A计数器的系数由A5-A0确定,比如A5-A0为100101时,A=37.此时,=NP+A=379

3.3 锁相环的MC145152的控制

根据以上设计要求,步进频率设定为100KHz,此时要求电阻分频器采用128分频,也就是将RA0、RA1、RA2分别设定为0、1、0。在本次设计中,因为fd直接输入fin,步进频率为100KHz,分频系数出现小数的可能性不存在,因此可以将A5-A0直接置为0.因此,要控制MC145152,只需控制MC145152的N9~N0即可。这时,还应将双模分频器的逻辑控制端MC设置为1[3]。

4、FPGA测控专用芯片的VHDL程序设计

根据系统的总体设计要求,FPGA芯片的输入信号有:a、FIN-被测量频率信号的输入端;b、CLK-基准信号200Hz的输入端;c、EN-的控制信号ADDSUB[1.0]端口,ADDSUB可加载到FPGA;d、ADDSUB[1.0]-对锁相环MC145152的控制输入,当ADDSUB[1.0]为“00”状态时,发射频率被设定在25MHz,当ADDSUB[1.0]为“01”状态时,降频键每按一次,发射频率就以100KHz的幅度增加,当其为“10”时,降频键每按一次,发射频率以100KHz的幅度降低,当其为“11”时,对FPGA测控专用芯片就不起作用;e、SEL[1.0]-输出端口选择,当SEL[1.0]分别为“00”,“01”,“10”,“11”时,此时频率计数器输出第0~7位、8~15位、第16~23位。FPGA芯片的输出信号有:a、CTR[9..0]- 锁相环MC145152控制信号输出端;b、DATA[7.0]-FPGA芯片到单片机的数据输出口,它直接与单片机的PO口相连,由SEL[1.0]控制输出的内容。它的功能就是负责控制锁相环MC145152和压控振荡器输出信号的频率。根据系统应实现的功能要求,FPGA测控专用芯片可分为两个相对独立的模块,一个模块负责控制MC145152,一个模块负责实时测量压控振荡器输出信号的频率。实时测量压控振荡器输出频率按以下原理设计:系统上电时,FPGA芯片输出11111010B到锁相环MC145152,该二进制数值就是振荡器基值频率;当芯片FPGA接收到单片机AT89C51的升频步进信号后,内部信号“CONTROL”自动加1,送给锁相环MC145152;同理,当芯片FPGA收到单片机AT89C51的降频步进信号后,内部信号“CONTROL”自动减1,送给锁相环MC145152,通过这个过程就实现了对振荡器锁定频率的调节。由于所设计的系统频率范围集中在高频,因此利用侧周期个数的方法来测定频率。

5、仿真及波形

本次设计采用ALTERA公司的quartus Ⅱ8.1开发平台[4],对功能模块仿真波形如图2所示。

当ADDSUB=‘0’时,CTR=H“0FA”,即CTR=D“250”,当ADDSUB=‘1’时,EN每来一个上升沿脉冲,CTR自动加1,依次为H“0FB”,H“0FC”,H“0FD”,H“0FE”,H“0FF”等,即CTR=D“251”、D“252”、D“253”、D“254”、D“255”等,锁定频率分别为25MHz、25.1MHz、25.2MHz、25.3MHz、25.4MHz、25.51MHz。

6、结语

本系统的设计采用了EDA 设计手段, 基于VHDL 语言编程,目标器件为FPGA芯片,运用quartus Ⅱ8.1开发平台,完成各电路模块的仿真,实现了电压控制LC振荡器的设计,系统具有简化设计过程,缩短设计周期,工作稳定、可靠等优点。

参考文献

[1]潘晨聪,刘倩如,韩耕.电压控制LC 振荡器[J].北京理工大学,2004(02):42-44.

[2]魏平俊,方向前等.电压控制基于锁相频率合成器的电压控制LC振荡器[J]. 电子工业专用设备,2005(123):53-56.

[3]葛海波,王海潼,郑燕.一种锁相频率合成系统的设计[J].电讯技术,2008(1)44-46.

[4]周润景,图雅,张丽敏.基于Quartus Ⅱ的FPGA/CPLD数字系统设计实例[M].1.北京:电子工业出版社,2007:1-12.

作者简介

万留杰(1983.3-),男,硕士研究生,助教,研究方向:电气工程及其自动化。

推荐访问:振荡器 电压 控制 研究 设计

版权所有:众一秘书网 2005-2024 未经授权禁止复制或建立镜像[众一秘书网]所有资源完全免费共享

Powered by 众一秘书网 © All Rights Reserved.。备案号: 辽ICP备05005627号-1