资源描述:
《有限状态机实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划有限状态机实验报告 实验三:有限状态机时序电路设计 班级:姓名:学号:作业完成后,以班级为单位,班长或课代表收集齐电子版实验报告,统一提交. 文件命名规则如“通1_王五_学号” 一、实验目的 1、掌握时序逻辑设计思路 2、掌握状态机实现数字逻辑设计的方法和基本形式 3、掌握状态机的设计注意事项 二、预习要求 1.了解veirlogHDL行为语句。 2.VerilogHDL的模块结构的组成。 3.状态机设计方法。
2、 三、实验基本概念 模5计数器代码 1、modulefsm(clk,clr,z,qout); 2、inputclk,clr;outputregz;outputreg[2:0]qout; 3、always@(posedgeclkorposedgeclr)//此过程定义状态转换 4、beginif(clr)qout有限状态机实验报告)e 仿真后的波形如下图所示:目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常
3、、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 2.利用verilog语言,设计一个采用米勒型有限状态机实现的串行口发送程序; 源程序如下图所示: modules_tx(clk,en,dain,txd); inputclk,en; input[7:0]dain; outputtxd; reg[7:0]da_temp; regtxd; reg[3:0]state; parameterswait=4'b0000, star=4'b0001, s1=4'b0010, s2=4'b0011, s3=4'b010
4、0, s4=4'b0101, s5=4'b0110, s6=4'b0111, s7=4'b1000, s8=4'b1001, stop=4'b1010; always@(posedgeen)目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 da_temp<=dain; always@(posedgeclk) if(!en) begin
5、 state<=swait; txd<=1; end else case(state) swait: beginstate<=star;txd<=1;end star:beginstate<=s1;txd<=0;end s1:beginstate<=s2;txd<=da_temp[7];end s2:beginstate<=s3;txd<=da_temp[6];end s3:beginstate<=s4;txd<=da_temp[5];end s4:beginstate<=s5;txd<=da_temp[4];end s
6、5:beginstate<=s6;txd<=da_temp[3];end s6:beginstate<=s7;txd<=da_temp[2];end s7:beginstate<=s8;txd<=da_temp[1];end s8:beginstate<=stop;txd<=da_temp[0];end stop:beginstate<=stop;txd<=1;end endcase目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保
7、障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 endmodule 3.利用verilog语言,设计一个采用米勒型有限状态机实现的串行口接受程序; 源程序如下图所示: modules_rx(clk,dain,daout); inputclk,dain; output[7:0]daout; reg[7:0]daout; reg[7:0]da_temp; reg[3:0]state; parameterstar=4'b0000, s1=4'b0010, s2=4'b0011, s3=4
8、'b0100, s4=4'b0101, s5=4'b0110, s6=4'b0111, s7=4'b1000, s8=4'b1001, s