实验二进制分频器

实验二进制分频器

ID:14425428

大小:344.50 KB

页数:16页

时间:2018-07-28

实验二进制分频器_第1页
实验二进制分频器_第2页
实验二进制分频器_第3页
实验二进制分频器_第4页
实验二进制分频器_第5页
资源描述:

《实验二进制分频器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、二进制分频器一.实验目的1.分频器的原理2.二进制分频器的设计二.分频器的原理1.分频器就是对较高频率的信号进行分频,得到较低频率的信号。2.分频系数(倍率)rate=fin/fout三.二进制分频器的设计二进制分频就是对输入时钟进行2的整数次幂分频。1.设计原理:(rate=2N,N是整数)定义一个N位的计数器,对输入的时钟脉冲进行计数,计数结果的第N-1位就是对输入时钟的2的N次幂分频。将相应的位数取出即可得到分频时钟。2.二进制分频器的VHDL源程序nLibraryieee;nUseieee.std_log

2、ic_1164.all;nUseieee.std_logic_unsigned.all;nUseieee.std_logic_arith.all;nEntityfdivisngeneric(N:integer:=3);--rate=2N,N为正整数nport(nclkin:INstd_logic;nclkout:OUTstd_logicn);nEndfdiv;nArchitectureaoffdivisnsignalcnt:std_logic_vector(N-1downto0);nBeginnprocess(c

3、lkin)nbeginnif(clkin'eventandclkin='1')thenncnt<=cnt+1;nendif;nendprocess;nclkout<=cnt(N-1);nEnda;四.仿真结果1.从波形图可以看到,clkout是clkin的8分频,也就是2的3次幂分频。2.如果要产生其他次幂分频,直接修改generic类属变量参数即可。五.实验结论本次实验使我们了解和认识AlteraFPGA/CPLD软件,理论与实践相结合,为以后的学习打下坚实的基础。实验二序列信号检测器一.实验目的(1)掌握关于

4、串行序列的设计。(2)掌握状态机的设计。二.实验要求(1)设计序列发生器,产生序列:0111010011011010。(2)设计检测器,若检测到串行序列11010,则输出为1,否则输出为0,并对其进行仿真。三.实验原理每收到一个符合要求的串行码就需要用一个状态进行记忆。串行码长度为5位,需要5个状态;另外,还需要增加一个“未收到一个有效位”状态,共6个状态;画出状态转换图,如图所示,这是一个莫尔状态机。6个状态机根据编码原则可以用3位二进制数来表示。011011100ABCDFE当到达F状态时,zout输出为1,

5、否则为0。四.VHDL源程序【程序源代码】libraryieee;useieee.std_logic_1164.all;entitydetectisport(din,clk,clr:instd_logic;dout:outstd_logic);enddetect;architecturertlofdetectistypestateis(s0,s1,s2,s3,s4,s5,s6,s7);signalcurrent_state,next_state:state;beginprocess(clk,clr)beginif

6、clr='0'thenquartusIIcurrent_state<=s0;elsifclk'eventandclk='1'thencurrent_state<=next_state;elsenull;endif;endprocess;process(din,current_state)begincasecurrent_stateiswhens0=>dout<='0';ifdin='1'thennext_state<=s1;elsenext_state<=s0;endif;whens1=>dout<='0';if

7、din='1'thennext_state<=s2;elsenext_state<=s0;endif;whens2=>dout<='0';ifdin='1'thennext_state<=s3;elsenext_state<=s0;endif;whens3=>dout<='0';ifdin='0'thennext_state<=s4;elsenext_state<=s0;endif;whens4=>dout<='0';ifdin='0'thennext_state<=s5;elsenext_state<=s0;e

8、ndif;whens5=>dout<='0';ifdin='1'thennext_state<=s6;elsenext_state<=s0;endif;whens6=>dout<='0';ifdin='0'thennext_state<=s7;elsenext_state<=s0;endif;whens7=>ifdin='1'thennext_state<=s0;dout

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

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

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