Verilog 有限状态机设计.ppt

Verilog 有限状态机设计.ppt

ID:49884658

大小:703.50 KB

页数:37页

时间:2020-02-29

Verilog 有限状态机设计.ppt_第1页
Verilog 有限状态机设计.ppt_第2页
Verilog 有限状态机设计.ppt_第3页
Verilog 有限状态机设计.ppt_第4页
Verilog 有限状态机设计.ppt_第5页
资源描述:

《Verilog 有限状态机设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第八章有限状态机设计EDA技术与应用教学重点MOORE状态机MEALY状态机有限状态机的几种描述方式有限状态机的状态编码8.1有限状态机构成组合逻辑状态译码、产生输出时序逻辑存储状态分类Moore输出是现态的函数Mealy输出是现态和输入的函数摩尔型(Moore)状态机米里型(Mealy)状态机Moore型状态图现态次态输入/输出modulefsm(clk,clr,z,qout);//模5计数器inputclk,clr;outputregz;outputreg[2:0]qout;always@(po

2、sedgeclkorposedgeclr)//此过程定义状态转换beginif(clr)qout<=0;//异步复位elsecase(qout)3'b000:qout<=3'b001;3'b001:qout<=3'b010;3'b010:qout<=3'b011;3'b011:qout<=3'b100;3'b100:qout<=3'b000;default:qout<=3'b000;/*default语句*/endcaseendalways@(qout)/*此过程产生输出逻辑*/begincase(

3、qout)3'b100:z=1'b1;default:z=1'b0;endcaseendendmoduleMealy型状态图start=0State0out=001clr=1step3=0State2out=100State1out=010start=1step3=1State3out=111step2=1step2=0【例10.7】状态机设计举例moduleFSM(clk,clr,out,start,step2,step3);inputclk,clr,start,step2,step3;outpu

4、t[2:0]out;reg[2:0]out;reg[1:0]state,next_state;parameterstate0=2’b00,state1=2’b01,//状态编码state2=2’b11,state3=2’b10;//格雷码always@(posedgeclkorposedgeclr)beginif(clr)state<=state0;//定义初态elsestate<=next_state;endalways@(stateorstartorstep2orstep3)//状态转换begi

5、ncase(state)state0:beginif(start)next_state<=state1;elsenext_state<=state0;endstate1:beginnext_state<=state2;endstate2:beginif(step2)next_state<=state3;elsenext_state<=state0;endstate3:beginif(step3)next_state<=state0;elsenext_state<=state3;enddefault:

6、next_state<=state0;endcaseendalways@(state)//状态译码及输出begincase(state)state0:out=3'b001;state1:out=3'b010;state2:out=3'b100;state3:out=3'b111;default:out=3'b001;endcaseendendmodule(1)用三个过程描述:即现态(CS)、次态(NS)、输出逻辑(OL)各用一个always过程描述。(2)双过程描述(CS+NS、OL双过程描述):使

7、用两个always过程来描述有限状态机,一个过程描述现态和次态时序逻辑(CS+NS);另一个过程描述输出逻辑(OL)。(3)双过程描述(CS、NS+OL双过程描述):一个过程用来描述现态(CS);另一个过程描述次态和输出逻辑(NS+OL)。(4)单过程描述:在单过程描述方式中,将状态机的现态、次态和输出逻辑(CS+NS+OL)放在一个always过程中进行描述。8.2有限状态机的Verilog描述“101”序列检测器的Verilog描述(三个过程)modulefsm1_seq101(clk,clr,

8、x,z);inputclk,clr,x;outputregz;reg[1:0]state,next_state;parameterS0=2'b00,S1=2'b01,S2=2'b11,S3=2'b10;/*状态编码,采用格雷(Gray)编码方式*/always@(posedgeclkorposedgeclr)/*该过程定义当前状态*/beginif(clr)state<=S0;//异步复位,s0为起始状态elsestate<=next_state;end“101”序列

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

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

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