《[论文精品] 基于VerilogHDL语言的状态机编程.doc》由会员分享,可在线阅读,更多相关《[论文精品] 基于VerilogHDL语言的状态机编程.doc(4页珍藏版)》请在三一办公上搜索。
1、数字电子技术基础大作业报告课程名称:数字电子技术基础设计题目:Verilog HDL 状态机编程院 系:控制科学与工程系班 级:姓 名:学 号:指导教师:设计时间:2011年12月XXXVerilog HDL状态机编程1 设计任务利用Verilog HDL设计一个电路,对输入的一串二进制数,用于检测序列中连续3个或者3个以上的1,状态转换如图所示。图 12 设计步骤1. 安装Quartus II软件并破解。2. 根据设计要求编写程序代码。3. 生成仿真电路图和波形如图。3 程序代码module moore(clk,din,op);input clk,din;output op;reg1:0 c
2、urrent_state,next_state;reg op;parameter S0=2b00,S1=2b01,S2=2b10,S3=2b11;always(posedge clk)begincurrent_state=next_state;endalways(current_state or din)begincase(current_state)S0:beginop=0;if(din=0)next_state=S0;elsenext_state=S1;endS1:beginop=0;if(din=0)next_state=S0;elsenext_state=S2;endS2:beginop=0;if(din=0)next_state=S0;elsenext_state=S3;endS3:beginop=1;if(din=0)next_state=S0;elsenext_state=S3;enddefault:beginop=0;next_state=S0;endendcaseendendmodule4 仿真电路图和波形图如下图所示。