状态机的设计ppt培训课件

状态机的设计ppt培训课件

ID:33626487

大小:147.00 KB

页数:33页

时间:2018-05-23

状态机的设计ppt培训课件_第1页
状态机的设计ppt培训课件_第2页
状态机的设计ppt培训课件_第3页
状态机的设计ppt培训课件_第4页
状态机的设计ppt培训课件_第5页
资源描述:

《状态机的设计ppt培训课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第九讲状态机的设计教学课时:2学时教学内容:1、状态机概述2、状态机的结构3、状态机的设计方法举例1、状态机概述数字系统一般可分为控制单元和数据通道,数据通道通常由组合逻辑电路构成,而控制单元通常由时序逻辑电路构成.数字电路按逻辑功能的不同,可分成组合逻辑电路和时序逻辑电路两大类。组合电路是指现时刻输出只和现时刻输入有关的电路,也即它是无记忆功能的电路。时序电路的特点:任一时刻,输出不仅取决于该时刻的输入,而且还与电路原来的状态有关。因此,时序电路中必须包含具有记忆功能的存储电路。有限状态机可以描述和实现大部分的时序电路。这里所谓的有限状态机实

2、际上就是一种算法思想,它能够根据控制信号按照有序方式遍历预先定义的状态序列,它由一组状态、一个初始状态、输入和根据输入及现有状态转换为下一个状态的转换函数组成。有限状态机根据输出信号与当前状态以及输入信号的关系来分,可以分为Moore型和Mealy型两种。输出信号只和当前状态有关的状态机称为Moore型状态机;输出信号不仅与当前与状态有关,而且也和输入信号有关的状态机称为Mealy型状态机。从结构上,有限状态机可分为:单进程状态机和多进程状态机。从编码方式上,有限状态机可分为:顺序编码状态机、one-hot编码状态机和其他编码方式状态机。无论是

3、何种类型的状态机,一般都是由组合逻辑进程和时序逻辑进程两部分构成。其结构如图所示。2、一般状态机的结构组合逻辑进程时序逻辑进程inputoutputcurrent_stateclockresetnext_state其中,组合逻辑进程用于实现状态机的状态选择和信号输出。该进程根据当前状态信号current_state的值确定输出信号,同时确定下一个状态,即next_state的取值。组合逻辑进程的VHDL代码process(input,current_state)begincasecurrent_stateiswhenstate0=>if(inp

4、ut=...)thenoutput<=value;next_state<=state1;else...endif;whenstate1=>if(input=...)thenoutput<=value;next_state<=state2;else...endif;...endcase;endprocess;这段代码的目的:(1)对输出赋值(2)确定状态机的下一个状态在整个代码中,没有任何信号的赋值是通过其它某个信号的跳变来触发的。时序逻辑进程的VHDL代码process(reset,clock)beginifreset=‘1’thencurre

5、nt_state<=state0;--state0是系统的初始状态elsif(clock’eventandclock=‘1’)thencurrent_state<=next_state;endif;endprocess;时序逻辑进程用于实现状态机的状态转化。状态机是随外部时钟信号clock,以同步时序方式工作的。该进程保证状态的跳变与时钟信号同步,在时钟发生跳变时,状态机的状态才发生变化。当复位信号有效时,时序逻辑对状态机进行复位;当时钟的上升沿到来时,时序进程将next_state的值赋给current_state.状态机的VHDL代码pro

6、cess(input,current_state)begincasecurrent_stateiswhenstate0=>if(input=...)thenoutput<=value;next_state<=state1;else...endif;whenstate1=>if(input=...)thenoutput<=value;next_state<=state2;else...endif;...endcase;endprocess;process(reset,clock)beginifreset=‘1’thencurrent_state<

7、=state0;--state0是系统的初始状态elsif(clock’eventandclock=‘1’)thencurrent_state<=next_state;endif;endprocess;--转右边libraryieee;useieee.std_logic_1164.all;entityentity_nameisport(input:indata_type;reset,clock:instd_logic;output:outdata_type);endentity_name;architecture结构名of实体名istypest

8、ateis(state0,state1,state2,...);signalcurrent_state,next_state:state;end结构名

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

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

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