编写的全数字锁相环的代码.doc

编写的全数字锁相环的代码.doc

ID:51713592

大小:42.45 KB

页数:5页

时间:2020-03-15

编写的全数字锁相环的代码.doc_第1页
编写的全数字锁相环的代码.doc_第2页
编写的全数字锁相环的代码.doc_第3页
编写的全数字锁相环的代码.doc_第4页
编写的全数字锁相环的代码.doc_第5页
资源描述:

《编写的全数字锁相环的代码.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、全数字锁相环的verilog源代码,仿真已通过moduledpll(reset,clk,signal_in,signal_out,syn);parameterpara_K=4;parameterpara_N=16;inputreset;inputclk;inputsignal_in;outputsignal_out;outputsyn;regsignal_out;regdpout;regdelclk;regaddclk;regadd_del_clkout;reg[7:0]up_down_cnt;reg[2:0]cnt8;reg[8:0]cnt_N;regsyn;regdpout_delay;

2、reg[8:0]cnt_dpout_high;reg[8:0]cnt_dpout_low;/******phasedetector*****/always@(signal_inorsignal_out)begindpout<=signal_in^signal_out;end/******synchronizationestablishdetector*****/always@(posedgeclkornegedgereset)beginif(!reset)dpout_delay<='b0;elsedpout_delay<=dpout;endalways@(posedgeclkornegedg

3、ereset)beginif(!reset)begincnt_dpout_high<='b0;cnt_dpout_low<='b0;endelseif(dpout)if(dpout_delay==0)cnt_dpout_high<='b0;elseif(cnt_dpout_high==8'b11111111)cnt_dpout_high<='b0;elsecnt_dpout_high<=cnt_dpout_high+1;elseif(!dpout)if(dpout_delay==1)cnt_dpout_low<='b0;elseif(cnt_dpout_low==8'b11111111)cn

4、t_dpout_low<='b0;elsecnt_dpout_low<=cnt_dpout_low+1;endalways@(posedgeclkornegedgereset)beginif(!reset)syn<='b0;elseif((dpout&&!dpout_delay)

5、

6、(!dpout&&dpout_delay))if(cnt_dpout_high[8:0]-cnt_dpout_low[8:0]<=4

7、

8、cnt_dpout_low[8:0]-cnt_dpout_high[8:0]<=4)syn<='b1;elsesyn<='b0;end/****updowncouterwithm

9、od=K****/always@(posedgeclkornegedgereset)beginif(!reset)begindelclk<='b0;addclk<='b0;up_down_cnt<='b00000000;endelsebeginif(!dpout)begindelclk<='b0;if(up_down_cnt==para_K-1)beginup_down_cnt<='b00000000;addclk<='b0;endelsebeginup_down_cnt<=up_down_cnt+1;addclk<='b0;endendelsebeginaddclk<='b0;if(up_

10、down_cnt=='b0)beginup_down_cnt<=para_K-1;delclk<='b0;endelseif(up_down_cnt==1)begindelclk<='b1;up_down_cnt<=up_down_cnt-1;endelseup_down_cnt<=up_down_cnt-1;endendend/******addanddeleteclk*****/always@(posedgeclkornegedgereset)beginif(!reset)begincnt8<='b000;endelsebeginif(cnt8=='b111)begincnt8<='b0

11、00;endelseif(addclk&&!syn)begincnt8<=cnt8+2;endelseif(delclk&&!syn)cnt8<=cnt8;elsecnt8<=cnt8+1;endendalways@(cnt8orreset)beginif(!reset)add_del_clkout<='b0;elseadd_del_clkout<=cnt8[2];end/******counterwithm

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。