数字锁相环verilog源程序

数字锁相环verilog源程序
数字锁相环verilog源程序

数字锁相环verilog源程序

module dpll(reset,clk,signal_in,signal_out,syn); parameter para_K=4;

parameter para_N=16;

input reset;

input clk;

input signal_in;

output signal_out;

output syn;

reg signal_out;

reg dpout;

reg delclk;

reg addclk;

reg add_del_clkout;

reg[7:0]up_down_cnt;

reg[2:0]cnt8;

reg[8:0]cnt_N;

reg syn;

reg dpout_delay;

reg[8:0]cnt_dpout_high;

reg[8:0]cnt_dpout_low;

/******phase detector*****/

always@(signal_in or signal_out)

begin

dpout<=signal_in^signal_out;

end

/******synchronization establish detector*****/

always@(posedge clk or negedge reset)

begin

if(!reset)dpout_delay<='b0;

else dpout_delay<=dpout;

end

always@(posedge clk or negedge reset)

begin

if(!reset)

begin

cnt_dpout_high<='b0;cnt_dpout_low<='b0; end

else if(dpout)

if(dpout_delay==0)cnt_dpout_high<='b0;

else

if(cnt_dpout_high==8'b11111111)

cnt_dpout_high<='b0;

else cnt_dpout_high<=cnt_dpout_high+1;

else if(!dpout)

if(dpout_delay==1)cnt_dpout_low<='b0;

else

if(cnt_dpout_low==8'b11111111)cnt_dpout_low<='b0; else cnt_dpout_low<=cnt_dpout_low+1;

end

always@(posedge clk or negedge reset)

begin

if(!reset)syn<='b0;

else

if((dpout&&!dpout_delay)||(!dpout&&dpout_delay)) if(cnt_dpout_high[8:0]-cnt_dpout_low[8:0]<=4||cnt_dpout_low[8:0]-cnt_dpout_high[8:0]<=4)syn<='b1;

else syn<='b0;

end

/****up down couter with mod=K****/

always@(posedge clk or negedge reset) begin

if(!reset)

begin

delclk<='b0;

addclk<='b0;

up_down_cnt<='b00000000; end

else

begin

if(!dpout)

begin

delclk<='b0;

if(up_down_cnt==para_K-1)

begin

up_down_cnt<='b00000000; addclk<='b0;

end

else

begin

up_down_cnt<=up_down_cnt+1; addclk<='b0;

end

end

else

begin

addclk<='b0;

if(up_down_cnt=='b0) begin

up_down_cnt<=para_K-1; delclk<='b0;

end

else

if(up_down_cnt==1)

begin

delclk<='b1;

up_down_cnt<=up_down_cnt-1; end

else

up_down_cnt<=up_down_cnt-1; end

end

end

/******add and delete clk*****/ always@(posedge clk or negedge reset) begin

if(!reset)

begin

cnt8<='b000;

end

else

begin

if(cnt8=='b111)

begin

cnt8<='b000;

end

else

if(addclk&&!syn)

begin

cnt8<=cnt8+2;

end

else

if(delclk&&!syn)

cnt8<=cnt8;

else

cnt8<=cnt8+1;

end

end

always@(cnt8or rese

t)

begin

if(!reset)

add_del_clkout<='b0;

else

add_del_clkout<=cnt8[2];

end

/******counter with mod=N******/

always@(posedge add_del_clkout or negedge reset) begin

if(!reset)

begin

cnt_N<='b0000;

signal_out<='b0;

end

else

begin

if(cnt_N==para_N-1)

begin

cnt_N<='b0000;

signal_out<='b0;

end

else

if(cnt_N==(para_N-1)/2)

begin

signal_out<='b1;

cnt_N<=cnt_N+1;

end

else

cnt_N<=cnt_N+1;

end

end

endmodule

DPLL由鉴相器、模K加减计数器、脉冲加减电路、同步建立侦察电路、模N分频器构成。

数字系统设计与verilog HDL课程设计 设计题目:实用多功能数字钟 专业:电子信息科学与技术 班级:0313410 学号:031341025 姓名:杨存智 指导老师:黄双林

摘要 本课程设计利用QuartusII软件Verilog VHDL语言的基本运用设计一个多功能数字钟,经分析采用模块化设计方法,分别是顶层模块、alarm、alarm_time、counter_time、clk50mto1、led、switch、bitel、adder、sound_ddd、sound_ddd_du模块,再进行试验设计和软件仿真调试,分别实现时分秒计时、闹钟闹铃、时分秒手动校时、时分秒清零,时间保持和整点报时等多种基本功能。 单个模块调试达到预期目标,再将整体模块进行试验设计和软件仿真调试,已完全达到分块模式设计功能,并达到设计目标要求。 关键字:多功能数字钟、Verilog、模块、调试、仿真、功能

目录 1.课程设计的目的及任务............................................................. 错误!未定义书签。 1.1 课程设计的目的 (3) 1.2 课程设计的任务与要求 (4) 2.课程设计思路及其原理 (4) 3.QuartusII软件的应用 (5) 3.1工程建立及存盘 (5) 3.2工程项目的编译 (5) 3.3时序仿真 (6) 4.分模块设计、调试、仿真与结果分析 (7) 4.1 clk50mto1时钟分频模块 (7) 4.2 adder加法器模块 (7) 4.3 hexcounter16 进制计数器模块 (7) 4.4 counter_time 计时模块 (8) 4.5 alarm闹铃模块 (8) 4.6 sound_ddd嘀嘀嘀闹铃声模块 (9) 4.7 sound_ddd_du嘀嘀嘀—嘟声音模块 (9) 4.8 alarm_time闹钟时间设定模块 (10) 4.9 bitsel将输出解码成时分秒选择模块 (10) 4.10 switch去抖模块 (11) 4.11 led译码显示模块 (11) 4.12 clock顶层模块 (12) 5.实验总结 (13) 5.1调试中遇到的问题及解决的方法 (13) 5.2实验中积累的经验 (14) 5.3心得体会 (14) 6.参考文献 (14) 1.1 课程设计的目的 通过课程设计的锻炼,要求学生掌握V erilog HDL语言的一般设计方法,掌握VerilogHDL语言的基本运用,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,基于实践、源于实践,实践出真知,实践检验真理,培养学生的

数字电路课程设计题目选编 1、基于DC4011水箱水位自动控制器的设计与实现 简介及要求:水箱水位自动控制器,电路采用CD4011 四与非门作为处理芯片。要求能够实现如下功能:水 箱中的水位低于预定的水位时,自动启动水泵抽水; 而当水箱中的水位达到预定的高水位时,使水泵停止 抽水,始终保持水箱中有一定的水,既不会干,也不 会溢,非常的实用而且方便。 2、基于CD4011声控、光控延时开关的设计与实现 简介及要求:要求电路以CD4011作为中心元件,结合外围 电路,实现以下功能:在白天或光线较亮时,节电开关呈关闭 状态,灯不亮;夜间或光线较暗时,节电开关呈预备工作状态, 当有人经过该开关附近时,脚步声、说话声、拍手声等都能开 启节电开关。灯亮后经过40秒左右的延时节电开关自动关闭, 灯灭。 3、基于CD4011红外感应开关的设计与实现 在一些公共场所里,诸如自动干手机、自动取票机等,只要人手在机器前面一晃,机器便被启动,延时一段时间后自动关闭,使用起来非常方便。要求用CD4011设计有此功能的红外线感应开关。 4、基于CD4011红外线对射报警器的设计与实现 设计一款利用红 外线进行布防的防盗 报警系统,利用多谐振 荡器作为红外线发射 器的驱动电路,驱动红 外发射管,向布防区内 发射红外线,接收端利用专用的红外线接收器件对发射的 红外线信号进行接收,经放大电路进行信号放大及整形, 以CD4011作为逻辑处理器,控制报警电路及复位电路,电

路中设有报警信号锁定功能,即使现场的入侵人员走开,报警电路也将一直报警,直到人为解除后方能取消报警。 5、基于CD4069无线音乐门铃的设计与实现 音乐门铃已为人们所熟知,在一些住宅楼中都 装有音乐门铃,当有客人来访时,只要按下门铃按 钮,就会发出“叮咚”的声音或是播放一首乐曲, 然而在一些已装修好的室内,若是装上有线门铃, 由于必须布线,从而破坏装修,让人感到非常麻烦。 采用CD4069设计一款无线音乐门铃,发射按键与接 收机间采用了无线方式传输信息。 6、基于时基电路555“叮咚”门铃的设计与实现 用NE555集成电路设计、制作一个“叮咚”门铃,使该装置能够 发出音色比较动听的“叮咚”声。 7、基于CD4511数显八路抢答器的设计与实现 CD4511是一块含BCD-7段锁存、译码、驱动电路于一体的集成 电路。设计一款基于CD4511八路抢答器,该电路包括抢答,编 码,优先,锁存,数显和复位。 8、基于NE555+CD4017流水彩灯的设计与实现 以NE555和CD4017为核心,设计制作一个流水彩灯,使之通 过调节电位器旋钮,可调整彩灯的流动速度。 9、基于用CD4067、CD4013、 NE555跑马灯的设计与实 现

module digclk(clk,en,rst,dula,wela,s1,s2,s3,led,flag1,start1,flag2,start2,aled,s6,s4,s5); //s1调时s2调分s3调秒wela位码dula段码en使能clk时钟,flag1是跑表标志(拨上去就是显示跑表),置一为跑表功能,start1为跑表开始停止 //flag2为闹钟标志(拨上去就是设置闹钟时间)start2为闹钟开关aled闹钟提示灯input clk,rst,en,s1,s2,s3,flag1,start1,flag2,start2,s6,s4,s5; output [2:0] wela; output [7:0] dula; output led; output aled; reg led; reg aled; reg [7:0] cnt,dula; reg [2:0] wela; reg[7:0] hourh,hourl,minh,minl,sech,secl; reg[7:0] phourh,phourl,pminh,pminl,psech,psecl; reg[7:0] ahourh,ahourl,aminh,aminl,asech,asecl; reg[3:0] a; //a用于数码管显示的临时变量 (* synthesis, keep *) reg clk1; always @(posedge clk1) begin if(start2) begin if(hourh==ahourh&&hourl==ahourl&&minh==aminh&&minl==aminl&&sech==asech&&secl ==asecl) aled=1'b1; else aled=1'b0; end end always @(posedge clk1) //闹钟功能 begin if(flag2) begin if(!s4) //调节小时 begin /*if(ahourl==9)begin ahourl<=0;ahourh<=ahourh+1;end if(ahourh==2&&ahourl==3)begin ahourh<=0;ahourl<=0; end else ahourl<=ahourl+1;*/ ahourl<=ahourl+1; if(ahourl==3&&ahourh==2)begin ahourl<=0;ahourh<=0;end if(ahourl==9) begin ahourl<=0;ahourh<=ahourh+1;end;

2009—2010学年第二学期 《数字电子技术课程设计》报告 专业班级:电气-08-1 姓名:曹操 学号:08051127 设计日期:2010年8月23日~27日 一.设计题目 多功能数字钟电路设计 二.设计任务及要求 多功能数字钟应该具有的功能有:显示时—分—秒、整点报时、小时和分钟可调等基本功能。整个钟表的工作应该是在1Hz信号的作用下进行,这样每来一个时钟信号,秒增加1秒,当秒从59秒跳转到00秒时,分钟增加1分,同时当分钟从59分跳转到00分时,小时增加1小时,小时的范围为0~23时。 在实验中为了显示的方便,由于分钟和秒钟显示的范围都是从0~59,所以可以用一个3位的二进制码显示十位,用一个四位的二进制码(BCD 码)显示个位,对于小时因为他的范围是从0~23,所以可以用一个2位的二进制码显示十位,用一个4位的二进制码(BCD码)显示个位。

实验中由于七段码管是扫描的方式显示,所以虽然时钟需要的是1Hz 时钟信号,但是扫描需要一个比较高频率的信号,因此为了得到准确的1Hz 信号,必须对输入的系统时钟50Mhz进行分频。 对于整点报时功能,本实验设计的是当进行正点的倒计时5秒时,让LED来闪烁进行整点报时的提示。 调整时间的按键用按键模块的S1和S2,S1调节小时,每按下一次,小时增加一个小时;S2调整分钟,每按下一次,分钟增加一分钟。另外用S8按键作为系统时钟复位,复位后全部显示00—00—00。 管脚分配如下表: 端口名使用模块信号对应FPGA管脚说明 S1 按键开关S1 R16 调整小时 S2 按键开关S2 P14 调整分钟 RST 按键开关S8 M15 复位 LED LED模块D1 L14 整点倒计时 LEDAG0 数码管模块A段N4 时间显示 LEDAG1 数码管模块B段G4 LEDAG2 数码管模块C段H4 LEDAG3 数码管模块D段L5 LEDAG4 数码管模块E段L4 LEDAG5 数码管模块F段K4 LEDAG6 数码管模块G段K5 SEL0 数码管选择位1 M4 8个数码管

锁相环及其应用 所谓锁相环路,实际是指自动相位控制电路(APC),它是利用两个电信号的相位 误差,通过环路自身调整作用,实现频率准确跟踪的系统,称该系统为锁相环路,简称环路,通常 用PLL表示。 称VCO )三个部件组成闭合系统。这是一个基本环路,其各种形式均由它变化而来 PLL概念 设环路输入信号V i= V im Sin( 3 i t+ 0 i) 环路输出信号V o= V om Sin( 3 o t+ 0 o) 其中 3 o = 3 r +△ 3 o 率的自动控制系统称为锁相环路 PLL构成 由鉴相器(PD环路滤波器(LPF)压控振荡器(VCO组成的环路 通过相位反馈控制, 最终使相位保持同步, 实现了受控频率准确跟踪基准信号频锁相环路是由鉴相器(简称PD)、环路滤波器(简称LPF或LF )和压控振荡器(简

ejt 戶心(tAejt)谋差相檯 PLL 原理 从捕捉过程一锁定 A.捕捉过程(是失锁的) 0 i — 0 i 均是随时间变化的,经相位比较产生误差相位 0 e = 0 i - 0 o ,也是变化的。 b. 0 e (t)由鉴相器产生误差电压 V d (t)= f ( 0 e )完成相位误差一电压的变换作用。 V d (t)为交流电压。 C. V d (t)经环路滤波,滤除高频分量和干扰噪声得到纯净控制电压,由 VCO 产生 控制角频差△ 3 0,使3 0随3i 变化。 B.锁定(即相位稳定) 即 3 0= 3 r + △ 3 Omax 。 3 r 为VCO 固有振荡角频率。) 锁相基本组成和基本方程(时域) 各基本组成部件 鉴相器(PD) a. 一旦锁定0 e (t)= 0 e -(很小常数) V d (t)= V d (直流电压) b. 3 0= 3 i 输出频率恒等于输入频率(无角频差,同时控制角频差为最大△ 3 Omax

锁相电路(PLL)及其应用 自动相位控制(APC)电路,也称为锁相环路(PLL),它能使受控振荡器的频率和相位均与输入参考信号保持同步,称为相位锁定,简称锁相。它是一个以相位误差为控制对象的反馈控制系统,是将参考信号与受控振荡器输出信号之间的相位进行比较,产生相位误差电压来调整受控振荡器输出信号的相位,从而使受控振荡器输出频率与参考信号频率相一致。在两者频率相同而相位并不完全相同的情况下,两个信号之间的相位差能稳定在一个很小的围。 目前,锁相环路在滤波、频率综合、调制与解调、信号检测等许多技术领域获得了广泛的应用,在模拟与数字通信系统中已成为不可缺少的基本部件。 一、锁相环路的基本工作原理 1.锁相环路的基本组成 锁相环路主要由鉴频器(PD)、环路滤波器(LF)和压控振荡器(VCO)三部分所组成,其基本组成框图如图3-5-16所示。 图1 锁相环路的基本组成框图 将图3-5-16的锁相环路与图1的自动频率控制(AFC)电路相比较,可以看出两种反馈控制的结构基本相似,它们都有低通滤波器和压控振荡器,而两者之间不同之处在于:在AFC环路中,用鉴频器作为比较部件,直接利用参考信号的频率与输出信号频率的频率误差获取控制电压实现控制。因此,AFC系统中必定存在频率差值,没有频率差值就失去了控制信号。所以AFC系统是一个有频差系统,剩余频差的大小取决于AFC系统的性能。 在锁相环路(PLL)系统中,用鉴相器作为比较部件,用输出信号与基准信号两者的相位进行比较。当两者的频率相同、相位不同时,鉴相器将输出误差信号,经环路滤波器输出

控制信号去控制VCO ,使其输出信号的频率与参考信号一致,而相位则相差一个预定值。因此,锁相环路是一个无频差系统,能使VCO 的频率与基准频率完全相等,但二者间存在恒定相位差(稳态相位差),此稳态相位差经鉴相器转变为直流误差信号,通过低通滤波器去控制VCO ,使0f 与r f 同步。 2.锁相环路的捕捉与跟踪过程 当锁相环路刚开始工作时,其起始时一般都处于失锁状态,由于输入到鉴相器的二路信号之间存在着相位差,鉴相器将输出误差电压来改变压控振荡器的振荡频率,使之与基准信号相一致。锁相环由失锁到锁定的过程,人们称为捕捉过程。系统能捕捉的最大频率围或最大固有频带称为捕捉带或捕捉围。 当锁相环路锁定后,由于某些原因引起输入信号或压控振荡器频率发生变化,环路可以通过自身的反馈迅速进行调节。结果是VCO 的输出频率、相位又被锁定在基准信号参数上,从而又维持了环路的锁定。这个过程人们称为环路的跟踪过程。系统能保持跟踪的最大频率围或最大固有频带称为同步带或同步围,或称锁定围。 捕捉过程与跟踪过程是锁相环路的两种不同的自动调节过程。 由此可见,自动频率控制(AFC )电路,在锁定状态下,存在着固定频差。而锁相环路控制(PLL )电路,在锁定状态下,则存在着固定相位差。虽然锁相环存在着相位差,但它和基准信号之间不存在频差,即输出频率等于输入频率.这也表明,通过锁相环来进行频率控制,可以实现无误差的频率跟踪.其效果远远优于自动频率控制电路. 3.锁相环路的基本部件 1)鉴相器(PD —Phase Detector ) 鉴相器是锁相环路中的一个关键单元电路,它负责将两路输入信号进行相位比较,将比较结果从输出端送出。 鉴相器的电路类型很多,最常用的有以下三种电路. (1)模拟乘法器鉴相器,这种鉴相器常常用于鉴相器的两路输入信号均为正弦波的锁相环电路中。 (2)异或门鉴相器,这种鉴相器适合两路输入信号均为方波信号的锁相环电路中,所以异或门鉴相器常常应用于数字电路锁相环路中。 (3)边沿触发型数字鉴相器,这种鉴相器也属于数字电路型鉴相器,对输入信号要求不严,可以是方波,也可以是矩形脉冲波.这种电路常用于高频数字锁相环路中。 图2 是异或门鉴相器的鉴相波形与鉴相特性曲线。

电子线路设计与测试 实验报告 一、实验名称 多功能数字钟设计 二、实验目的 1.掌握可编程逻辑器件的应用开发技术 ——设计输入、编译、仿真和器件编程; 2.熟悉一种EDA软件使用; 3.掌握Verilog设计方法;

4.掌握分模块分层次的设计方法; 5.用Verilog完成一个多功能数字钟设计。 三、设计内容及要求 1.基本功能 具有“秒”、“分”、“时”计时功能,小时按24小时制计时。 具有校时功能,能对“分”和“小时”进行调整。 2.扩展功能 仿广播电台正点报时。在59分51秒、53秒、55秒、57秒发出低音512Hz 信号,在59分59秒时发出一次高音1024Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点。 定时控制,其时间为23时58分。 3.选做内容 任意时刻闹钟(闹钟时间可设置)。 自动报整点时数。 四.系统框图与说明 数字钟框图

1.数字钟电路系统由主体电路和扩展电路两大部分所组成。 2.秒计数器计满60后向分计数器进位,分计数器计满60后向小时计数器进位,小时计数器按照“24进制”规律计数。 3.计数器的输出经译码器送显示器。 五.设计步骤 1.列写多功能数字钟设计--层次结构图 2.拟定数字钟的组成框图,在Max+Plus II软件中,使用Verilog语言输入,采用分层次分模块的方法设计电路; 3.设计各单元电路并进行仿真; 4.对数字钟的整体逻辑电路图,选择器件,分配引脚,进行逻辑综合; 5.下载到Cyclone II FPGA实验平台上,实际测试数字钟的逻辑功能。

六.Verilog代码 //24进制时钟, 具有计时、校时、仿广播电台正点报时、固定时刻定时,任意时刻闹钟等功能 module clock_main(LED_Hour,LED_Minute,LED_Second,Alarm,CP_1KHz,Jsh_Min_key,Jsh_Hour_ke y,Set_Hour_key,Set_Min_key,Show,Ctrl_Bell); input CP_1KHz;//定义输入时钟 input Jsh_Min_key,Jsh_Hour_key;//定义校时按键 input Set_Hour_key,Set_Min_key;//定义闹钟定时按键 input Show; //定义显示模式按键 input Ctrl_Bell;//定义闹钟铃声控制 output [7:0]LED_Hour,LED_Minute,LED_Second;//定义输出变量 wire [7:0]LED_Hour,LED_Minute,LED_Second;//定义输出变量类型 wire [7:0]Hour,Minute,Second; wire [7:0]Set_Hour_Out,Set_Min_Out; wire Out_1Hz,Out_500Hz;//定义分频模块输出变量类型 reg Alarm_Ring,Alarm_Clock_1KHz;//定义仿广播电台报时和固定时刻定时铃声 output Alarm;//蜂鸣器输入 supply1Vdd; wire Alarm_Clock;//任意时刻闹钟闹铃 wire MinL_EN,MinH_EN,Hour_EN;//定义中间变量类型 //分频 fre_dividerFD0(Out_1Hz,Out_500Hz,Vdd,Vdd,CP_1KHz); //正常计时 counter10 U1(.Q(Second[3:0]),.nCR(Vdd),.EN(Vdd),.CP(Out_1Hz)); counter6 U2(.Q(Second[7:4]),.nCR(Vdd),.EN(Second[3:0]==4'h9),.CP(Out_1Hz)); assignMinL_EN=Jsh_Min_key?Vdd:(Second==8'h59); assign MinH_EN=(Jsh_Min_key&&(Minute[3:0]==4'h9))||(Minute[3:0]==4'h9)&&(Second==8'h59 ); counter10 U3(.Q(Minute[3:0]),.nCR(Vdd),.EN(MinL_EN),.CP(Out_1Hz)); counter6 U4(.Q(Minute[7:4]),.nCR(Vdd),.EN(MinH_EN),.CP(Out_1Hz)); assign Hour_EN=Jsh_Hour_key?Vdd:((Minute==8'h59)&&(Second==8'h59)); counter24 U5(Hour[7:4],Hour[3:0],Vdd,Hour_EN,Out_1Hz); //仿广播电台正点报时 baoshi BS1(Alarm_Ring,Minute,Second,Out_500Hz,CP_1KHz);//在59分51秒、53秒、55秒、57秒发出低音512Hz信号,在59分59秒时发出一次高音1024Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点 //固定时刻定时

1.锁相环的基本原理和模型 在并网逆变器系统中,控制器的信号需要与电网电压的信号同步,锁相环通过检测电网电压相位与输出信号相位之差,并形成反馈控制系统来消除误差,达到跟踪电网电压相位和频率的目的。一个基本的锁相环结构如图1-1所示,主要包括鉴相器,环路滤波器,压控振荡器三个部分。 图1-1 基本锁相环结构 鉴相器的主要功能是实现锁相环输出与输入的相位差检测;环路滤波器的主要作用应该是建立输入与输出的动态响应特性,滤波作用是其次;压控振荡器所产生的所需要频率和相位信息。 PLL 的每个部分都是非线性的,但是这样不便于分析设计。因此可以用近似的线性特性来表示PLL 的控制模型。 鉴相器传递函数为:)(Xo Xi Kd Vd -= 压控振荡器可以等效为一个积分环节,因此其传递函数为:S Ko 由于可以采用各种类型不同的滤波器(下文将会讲述),这里仅用)(s F 来表示滤波器的传递函数。 综合以上各个传递函数,我们可以得到,PLL 的开环传递函数,闭环传递函数和误差传递函数分别如下: S s F K K s G d o op )()(=,)()()(s F K K S s F K K s G d o d o cl +=,) ()(s F K K S S s H d o += 上述基本的传递函数就是PLL 设计和分析的基础。 2.鉴相器的实现方法 鉴相器的目的是要尽可能的得到准确的相位误差信息。可以使用线电压的过零检测实现,但是由于在电压畸变的情况下,相位信息可能受到严重影响,因此需要进行额外的信号处理,同时要检测出相位信息,至少需要一个周波的时间,动态响应性能可能受到影响。 一般也可以使用乘法鉴相器。通过将压控振荡器的输出与输入相乘,并经过一定的处理得到相位误差信息。 在实际的并网逆变器应用中还可以在在同步旋转坐标系下进行设计,其基本的目的也是要得的相差的数值。同步旋转坐标系下的控制框图和上图类似,在实际使用中,由于pq 理论在电网电压不平衡或者发生畸变使得性能较差,因而较多的使用dq 变换,将采样得到的三相交流电压信号进行变化后与给定的直流参考电压进行比较。上述两种方法都使用了近似,利用在小角度时正弦函数值约等于其角度,因而会带来误差,这个误差是人为近似导致的误差,与我们要得到的相位误差不是一个概念,最终的我们得到相位误差是要形成压控振荡器的输入信号,在次激励下获得我们所需要的频率和相位信息。 2.1乘法鉴相器

全数字锁相环原理及应用 2011年11月18日 摘要:锁相环是一种相位负反馈系统,它能够有效跟踪输入信号的相位。随着数字集成电路的发展,全数字锁相环也得到了飞速的发展。由于锁相精度和锁定时间这组矛盾的存在使得传统的全数字锁相环很难在保证锁定时间的情况下保证锁定精度。鉴于此,本文对一些新结构的全数字锁相环展开研究,并用VHDL语言编程,利用FPGA仿真。 为解决软件无线电应用扩展到射频,即射频模块软件可配置的问题和CMOS工艺中由于电压裕度低、数字开关噪声大等因素,将射频和数字电路集成在一个系统中设计难度大的问题,本文尝试提出数字射频的新思路。全数字锁相环是数字射频中最重要的模块之一,它不仅是发射机实现软件可配置通用调制器的基础,还是为接收机提供宽调频范围本振信号的基础。本文针对数字射频中的数字锁相环的系统特性以及其各重要模块进行了研究。 关键词:全数字锁相环;锁定时间;锁定精度;PID控制;自动变模控制;数控振荡器;时间数字转换器;数字环路滤波器;FPGA; Principle and Application of all-digital phase-locked loop Abstract: Phase-Locked Loop is a negative feedback system that can effectively track the input signal’s phase. With the development of digital integrated circuits, all-digital phase-locked loop has also been rapidly developed. Because of the contradiction between the existence of phase-locked precision and phase-locked time, it makes the traditional all-digital phase-locked loop difficult to ensure the lock time meanwhile as well as phase-locked precision. So some new structures of all-digital phase-locked loop are analyzed in this paper and programmed in VHDL language with simulation under FPGA. In order to extend the application from radio to RF, which including RF modules software configurable problems and the difficulty to integrate RF and digital circuit in one system due to some factors contain the low voltage and large noise of the digital switches etc. This paper will try to put out a new thought for digital RF. All-digital phase-locked loop is one of the most important modules in digital RF. It is not only the foundation of transmitter which can be realized by software configurable general modulator, but also the foundation of receiver which can be provided wide range of local vibration signal. This paper particularly makes a study of the system character of tall-digital phase-locked loop and its vital modules. Keywords: ADPLL; Locked time; Locked precision; PID control; Auto modulus control; DCO;TDC; Digital Loop Filter; 1. 引言 锁相环路是一种反馈控制电路,锁相环的英文全称是Phase-Locked Loop,简称PLL。目前锁相环在通信、信号处理、调制解调、时钟同步、频率综合和自动化控制等领域应用极为广泛,已经成为各种电子设备中不可缺少的基本部件。随着电子技术向数字化方向发展,需要采用数字方式实现信号的锁相处理。因此,对全数字锁相环的研究和应用得到了越来越多的关注。虽然锁相环(PLL)技术已经有了半个多世纪的发展,但是其应用领域也在不断扩大,随着高新科技的发展,使得它的性能需要不断地改进和提高,因此,锁相环的设计与分析也成立集成电路设计者的热点。设计者们也不断提出了新的锁相环结构[1-3],以适应不同场合的需求。

生产实习报告 班级:通信13-2班 姓名:闫振宇 学号:1306030222 成绩: 电子与信息工程学院 信息与通信工程系

基于verilog 数字秒表的设计实现 1. 概述 硬件描述语言HDL ( HardwareDescription Langyage) 是一种用形式化方法来描述数字电路和系统的语言。数字电路系统的设计这里用这种语言可以从上层倒下层逐层描述自设计思想用一系列分层的模块来表示极其复杂的数字系统,然后用EDA 工具逐层验证,把其中需要为具体物理电路的模块组合由自动综合工具转换到门级电路网表。Verilog HDL 是一种硬件描述语言,用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门和完整的电子数字系统之间。数字系统能够按层次描述,并可在相同描述中显式地进行时序建模。使用VERILOG 进行系统设计时采用的是从顶至下的设计,自顶向下的设计是从系统机开始巴西同划分为若干个基本单元,然后再把每个单元划分为下一层的基本单元,这样下去直到可以直接用EDA 元件库中的基本元件来实现为止。 2. 设计目的及要求 a. 有源晶振频率:50MHZ ; b. 测试计时范围:00' 00” 00 ~ 59 ',59显”示9的9 最长时间为59 分59 秒; c. 数字秒表的计时精度是10ms; d. 显示工作方式:六位BCD 七段数码管显示读数,两个按钮开关(一个按钮使秒表复位,另一个按钮控制秒表的启动/暂停)。 3. 设计原理秒表的逻辑结构较简单,它主要由四进制计数器、十六进制计数器、分频器、数据选择器、和显示译码器等组成。在整个秒表中最关键的是如何获得一个精确的100HZ 计时脉冲,除此之外,整个秒表还需有一个启动信号和一个清零信号,以便秒表能随意停止、启动以及清零复位。 秒表有共有6个输出显示,其中6个显示输出数据,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有 6 个计数器与之相对应; 6 个计数器的输出全都为BCD 码输出,这样便与同显示译码器连接。 利用一块芯片完成除时钟源,按键和显示器之外的所有数字电路功能。所有数字逻辑功能都在CPLD 器件上用Verilog 语言实现。这样设计具有体积小,设计周期短,调试方 便,故障率地和修改升级容易等特点。 本设计采用依次采用以下设计方法: 1)按键输入缓存,键盘消抖设计;

多功能数字钟电路的设计与制作 一、设计任务与要求 设计和制作一个多功能数字钟,要求能准确计时并以数字形式显示时、分、秒的时间,能校正时间,准点报时。 二、方案设计与论证 1.数字钟设计原理 数字电子钟一般由振荡器、译码器、显示器等几部分电路组成,这些电路都是数字电路中应用最广的基本电路。振荡器产生的1Hz的方波,作为秒信号。秒信号送入计数器进行计数,并把累计的结果以“时”、“分”、“秒”的数字显示出来。“秒”的计数、显示由两级计数器和译码器组成的六十进制计数电路实现;“分”的计数、显示电路与“秒”的相同;“时”的计数、显示由两级计数器和译码器组成的二十四进制计数电路实现。所有计时结果由七段数码管显示器显示。用4个与非门构成调时电路,通过改变方波的频率,进行调时。最后用与非门和发光二极管构成整点显示部分。

2.总体结构框图如下: 图14 总体框图 三、单元电路设计与参数计算 1.脉冲产生电路 图15 晶振振荡器原理图 图16 555定时器脉冲产生电路原理图 振荡器可由晶振组成(如图15),也可以由555定时器组成。图16是由555定时器构成的1HZ 的自激振荡器,其原理是: 第一暂态2、6端电位为Vcc 3 1 ,则输出为高电平,三极管不导通,电容C 充电,此 时2、6端电位上升。当上升至大于Vcc 3 2 时,输出为低电平,三极管导通,电容C 放电, 11 21 C 1 R C 2 R O

此时2、6端电位下降,下降至Vcc 3 1 时,输出高电平,以此循环。根据公式C R R f )2(43.121+≈ 得,此时频率为0.991。 图17 555定时器波形关系 图18 555定时器产生1Hz 方波原理图 2.时间计数电路 图19 74LS161引脚图 74LS161功能表 v V 2 3 V 1 3 v U 1 74L S 161D Q A 14Q B 13Q C 12Q D 11R C O 15A 3B 4C 5D 6 E N P 7E N T 10 ~L O A D 9~C L R 1 C L K 2

问题: 什么是锁相环(PLL)?锁相环的工作原理是什么?锁相环电路对硬件电路连接有什么要求? 解答: 锁相环是一种反馈电路,其作用是使得电路上的时钟和某一外部时钟的相位同步。PLL通过比较外部信号的相位和由压控晶振(VCXO)的相位来实现同步的,在比较的过程中,锁相环电路会不断根据外部信号的相位来调整本地晶振的时钟相位,直到两个信号的相位同步。 在数据采集系统中,锁相环是一种非常有用的同步技术,因为通过锁相环,可以使得不同的数据采集板卡共享同一个采样时钟。因此,所有板卡上各自的本地 80MHz和20MHz时基的相位都是同步的,从而采样时钟也是同步的。因为每块板卡的采样时钟都是同步的,所以都能严格地在同一时刻进行数据采集。 通过锁相环同步多块板卡的采样时钟所需要的编程技术会根据您所使用的硬件 板卡的不同而不同。对于基于PCI总线的产品(M系列数据采集卡,PCI数字化仪等),所有的同步都是通过RTSI总线上的时钟和触发线来实现的;这时,其中一块版板卡会作为主卡并且输出其内部时钟,通过RTSI线,其他从板卡就可以获得这个用于同步的时钟信号,对于基于PXI总线的产品,则通过将所有板卡的时钟于PXI内置的10MHz背板时钟同步来实现锁相环同步的。关于更多的不同仪器的锁相环技术,请点击下面相关的连接。 锁相环原理及锁相环原理图 1.锁相环的基本组成 锁相环中的鉴相器又称为相位比较器,它的作用是检测输入信号和输出信号的相 (t)电压信号输出,该信号经低通滤位差,并将检测出的相位差信号转换成u D 波器滤波后形成压控振荡器的控制电压u (t),对振荡器输出信号的频率实施 C 控制。 2.锁相环的工作原理 (8-4-1) (8-4-2)

多功能数字钟设计 院系:电光学院 班级:*** 学号: *** 姓名: *** 指导老师:*** 时间:2010.4.20.

摘要:利用QuartusII软件设计一个数字钟,利用模块化的程序设计思想,核心 模块均采用Verilog语言编写(译码显示模块采用原理图设计),软件仿真调试编译成功后,再下载到SmartSOPC实验系统中。经过硬件测试,查找软件设计缺陷,并进一步完善软件,最终设计得到较为满意的多功能数字钟。 关键词:QuartusII; 多功能数字钟; 模块化; Verilog; 可编程; Abstract:Using the QuartusII software design a digital bell with the blocking method.The design takes theory drawing instead of Verilog language.After emluating and debuging successfully,translate and edit the code.Then,download the result to the programmable SmartSOPC system and test it in hardware.Realizing the soul of designing hardware by software. Keywords:QuartusII; digital bell; blocking method; VHDL; programmable; hardware 目录 设计内容简介 (3) 设计要求说明 (3) 方案论证(整体电路设计原理) (3) 各子模块设计理 (5) 分频模块: (5) 计数模块: (7) --校准模块程序实现: (8) --秒计数模块程序实现: (9) --分计数模块程序实现: (10) --时计数模块程序实现: (10) 整点报时模块: (12) 闹钟设定模块: (13) --闹钟调节模块程序实现: (14) --输出信号选择模块程序实现: (14) 彩铃模块: (15) 译码显示模块: (18) 万年历模块: (19) --日计数模块程序设计: (20) --月计数模块程序设计: (23) --年计数模块程序设计: (23) --万年历波形仿真结果: (25) 结论: (26) 实验感想: (26) 附图: (27)

基本组成和锁相环电路 1、频率合成器电路 频率合成器组成: 频率合成器电路为本机收发电路的频率源,产生接收第一本机信号源和发射电路的发射信号源,发射信号源主要由锁相环和VCO电路直接产生。如图3-4所示。 在现在的移动通信终端中,用于射频前端上下变频的本振源(LO),在射频电路中起着非常重要的作用。本振源通常是由锁相环电路(Phase-Locked Loop)来实现。 2.锁相环: 它广泛应用于广播通信、频率合成、自动控制及时钟同步等技术领域 3.锁相环基本原理: 锁相环包含三个主要的部分:⑴鉴相器(或相位比较器,记为PD或PC):是完成相位比较的单元,用来比较输入信号和基准信号的之间的相位.它的输出电压正比于两个输入信号之相位差.⑵低通滤波器(LPF):是个线性电路,其作用是滤除鉴相器输出电压中的高频分量,起平滑滤波的作用.通常由电阻、电容或电感等组成,有时也包含运算放大器。⑶压控振荡器(VCO):振

荡频率受控制电压控制的振荡器,而振荡频率与控制电压之间成线性关系。在PLL中,压控振荡器实际上是把控制电压转换为相位。 1、压控振荡器的输出经过采集并分频; 2、和基准信号同时输入鉴相器; 3、鉴相器通过比较上述两个信号的频率差,然后输出一个直流脉冲电压; 4、控制VCO,使它的频率改变; 5、这样经过一个很短的时间,VCO 的输出就会稳定于某一期望值。 锁相环电路是一种相位负反馈系统。一个完整的锁相环电路是由晶振、鉴相器、R分频器、N分频器、压控振荡器(VCO)、低通滤波器(LFP)构成,并留有数据控制接口。 锁相环电路的工作原理是:在控制接口对R分频器和N分频器完成参数配置后。晶振产生的参考频率(Fref)经R分频后输入到鉴相器,同时VCO的输出频率(Fout)也经N分频后输入到鉴相器,鉴相器对这两个信号进行相位比较,将比较的相位差以电压或电流的方式输出,并通过LFP滤波,加到VCO的调制端,从而控制VCO的输出频率,使鉴相器两输入端的输入频率相等。 锁相环电路的计算公式见公式: Fout=(N/R)Fref 由公式可见,只要合理设置数值N和R,就可以通过锁相环电路产生所需要的高频信号。 4.锁相环芯片 锁相环的基准频率为13MHz,通过内部固定数字频率分频器生成5KHz或6.25KHz的参考频率。VCO振荡频率通过IC1 内部的可编程分频器分频后,与基准频率进行相位比较,产生误差控制信号,去控制VCO,改变VCO的振荡频率,从而使VCO输出的频率满足要求。如图3-5所示。 N=F VCO/F R N:分频次数 F VCO:VCO振荡频率

数字钟 一、任务解析 用Verilog硬件描述语言设计数字钟,实现: 1、具有时、分、秒计数显示功能,以二十四小时循环计时。 2、具有调节小时,分钟的功能,调整时对应的数字闪烁。 3、具有整点报时及闹铃时间可调的功能。 4、数字钟具有四种模式:正常显示、时间调整、闹铃时间调整、秒表。 二、方案论证 没有闹铃功能 三、重难点解析 选择模式:module beii(clr,selin_key,beii_out); input clr,selin_key; output [1:0]beii_out; wire [1:0]beii_out; reg [1:0]selout_key; always@(negedge clr or posedge selin_key) begin if(!clr) selout_key=0; else begin if(selout_key==2) selout_key=0; else selout_key=selout_key+1;end end assign beii_out=selout_key; endmodule

头文件中: module clk_top(clr,clk,upkey,downkey,sel,a,b,c,d,e,f,g,p,clr_key,selin_key); clr:清零clk:50M时钟 upkey:向上调downkey:向下调 clr_key:恢复初始状态selin_key:模式选择 四、硬件资源分配 60进制module mycnt60(clr,clk,upkey,downkey,selout,q,c); input clk,clr,upkey,downkey;//upkey为加按键 input [1:0] selout; output[7:0] q;//60进制输出 output c;//进位溢出位 reg c; reg[7:0] q; wire new_clk1,ckb,ckc,ckd,cko; assign new_clk1=clk|((!selout[0]&selout[1])&(upkey|downkey)); LCELL AA(new_clk1,ckb);//信号延迟 LCELL BB(ckb,ckc); LCELL CC(ckc,ckd); LCELL DD(ckd,cko); initial c=0; always @(posedge cko or negedge clr )begin if(!clr) q=8'h00; else begin if(selout==2) begin if(upkey)begin if(q==8'h59) q=8'h00; else if(q==8'h?9) q=q+4'h7; else q=q+1; end else if(downkey)begin if(q==8'h00) q=8'h59; else if(q==8'h?0) q=q-4'h7; else q=q-1; end

数字电路设计数字电路应用设计 数字电路应用设计。本书从实用设计方法出发。 通信及相关专业师生的参考用书。也可供电路设计及研发人员参 考阅读。 书名,数字电路应用设计。作者,关静。ISBN,9787030257796。定价,32.00 元。出版社,科学出版社。出版时间,xx-11-1。装帧,平装。开本,16开。 基本信息。数字电路应用设计作者:关静编著出版社:科学 出版社出版时间: xx-11-1开本: 16开I S B N: 9787030257796定价:¥32.00。 内容简介。本书从实用设计方法出发。结合实际应用。 也可供电路设计及研发人员参考阅读。 目录。第1章数字电路实用设计基础1.1 数字集成电路的分类。 特点及注意事项1.2 数字逻辑电路的测试方法1.3 基本逻辑门 电路的测试方法1.4 典型集成逻辑门电路部件逻辑门等等。逻辑门 可以组合使用实现更为复杂的逻辑运算。1.5 组合逻辑电路的分析与设计逻辑运算又称布尔运算布尔用数学方法研究逻辑问题。成功地 建立了逻辑演算。他用等式表示判断。把推理看作等式的变换。这种变换的有效性不依赖人们对符号的解释。 只依赖于符号的组合规律。这一逻辑理论人们常称它为布尔代数。20世纪30年代。逻辑代数在电路系统上获得应用。随后。由于电子技术与计算机的发展。出现各种复杂的大系统。它们的变换规律也遵

守布尔所揭示的规律。逻辑运算通常用来测试真假值。最常见到的逻辑运算就是循环的处理。用来判断是否该离开循环或继续执行循环内的指令。1.6 电路的安装与调试1.7 TTL集电极开路门与三态输出门的应用集电极开路门。即OC门。 是一种能够实现线逻辑的电路。OC与非门电路的特点是将原TTL 与非门电路中的VT3管集电极开路。并取消集成电极电阻。所以。使用OC门时。为保证电路正常工作。必须外接一只RL电阻与电源VCC 相连。称为上拉电阻。如图2所示。1.8 数字IC的接口电路1.9 数字电路的抗干扰问题第2章电子计数器。秒表的制作2.1 电子计数器的制作2.1.1 集成计数器74LS1602.1.2 数码管显示单元2.1.3 计数器电路图与实际制作2.1.4 调整和使用方法2.2 秒表的制作2.2.1 钟表的工作2.2.2 秒表的制作及调整2.2.3 使用BCD计数器和十进制计数器的方法第3章电子储钱罐的设计与制作3.1 设计思路3.2 光电传感器与锁存器部分电路3.2.1 光电传感器光电传感器是采用光电元件作为检测元件的传感器。 它首先把被测量的变化转换成光信号的变化。然后借助光电元件进一步将光信号转换成电信号。光电传感器一般由光源。光学通路和光电元件三部分组成。光电检测方法具有精度高。反应快。非接触等优点。而且可测参数多。传感器的结构简单。形式灵活多样。因此,光电式传感器在检测和控制中应用非常广泛。光电传感器是各种光电检测系统中实现光电转换的关键元件。它是把光信号转变成为电信号的器件。光电式传感器是以光电器件作为转换元件的传感器。

相关文档
最新文档