有限状态机的vhdl设计ppt培训课件

上传人:aa****6 文档编号:53969873 上传时间:2018-09-06 格式:PPT 页数:16 大小:585.50KB
返回 下载 相关 举报
有限状态机的vhdl设计ppt培训课件_第1页
第1页 / 共16页
有限状态机的vhdl设计ppt培训课件_第2页
第2页 / 共16页
有限状态机的vhdl设计ppt培训课件_第3页
第3页 / 共16页
有限状态机的vhdl设计ppt培训课件_第4页
第4页 / 共16页
有限状态机的vhdl设计ppt培训课件_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《有限状态机的vhdl设计ppt培训课件》由会员分享,可在线阅读,更多相关《有限状态机的vhdl设计ppt培训课件(16页珍藏版)》请在金锄头文库上搜索。

1、第八章,有限状态机的VHDL设计,主要内容,有限状态机的基本概念 一般有限状态机的设计 摩尔状态机设计 米立状态机设计,8.1有限状态机的基本概念,8.1.1 有限状态机的基本结构和功能 有限状态机(Finite State Machine,简称FSM)是数字逻辑电路以及数字系统的重要组成部分,尤其应用于数字系统核心部件的设计,以实现高效率高可靠性的逻辑控制。有限状态机实现了以下两个基本功能: 根据当前状态和输入条件决定状态机的内部状态转换。 根据当前状态和输入条件确定产生输出信号序列。,8.1有限状态机的基本概念(续),8.1.2状态机的状态编码有限状态机设计是基于状态描述的,因此首先必须对

2、系统中的每一个工作状态有一个合理的表达。对于设计者而言,为了表达简捷方便通常使用符号化状态机。 二进制编码方案:是用N位二进制数,表示M个工作状态,当然必须满足2N大于等于M。 一位热码编码方案:用N位二进制数表示N个状态,每一位编码对应一个触发器,状态机中的每个状态都由其中一个触发器的状态来表示。 8.1.3有限状态机的技术优势 设计方案相对固定,结构模式简单,可定义符号化枚举类型的状态。 状态机的VHDL描述层次分明,结构清晰,易读易懂。 基于有限状态机技术设计的控制器其工作速度大大优于CPU。 基于有限状态机技术设计的控制器其可靠性也优于CPU。,8.2 一般有限状态机的设计,8.2.1

3、 一般有限状态机的VHDL组成 说明部分:主要是设计者使用TYPE语句定义新的数据类型,如:TYPE states IS (st0, st1, st2, st3, st4, st5);SIGNAL present_state, next_state: states; 主控时序逻辑部分:任务是负责状态机运转和在外部时钟驱动下实现内部状态转换的进程。时序进程的实质是一组触发器,因此,该进程中往往也包括一些清零或置位的输入控制信号,如Reset信号。 主控组合逻辑部分:任务是根据状态机外部输入的状态控制信号(包括来自外部的和状态机内部的非进程的信号)和当前的状态值current_state来确定下一

4、状态next_state的取值内容,以及对外部或对内部其他进程输出控制信号的内容。 辅助逻辑部分:辅助逻辑部分主要是用于配合状态机的主控组合逻辑和主控时序逻辑进行工作,以完善和提高系统的性能。,8.2.2 一般有限状态机的设计示例,LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY two_process_state_machine ISPORT (clk, reset : IN STD_LOGIC;state_inputs : IN STD_LOGIC;comb_outputs : OUT STD_LOGIC_VECTOR(0 TO 1); EN

5、D ENTITY two_process_state_machine;ARCHITECTURE behv OF two_process_state_machine IS TYPE states IS (st0,st1,st2,st3); -定义states为枚举型数据类型,构造符号化状态机SIGNAL current_state, next_state: states; BEGIN REG: PROCESS (reset, clk) -时序逻辑进程BEGINIF reset = 1 THEN -异步复位current_state = st0; ELSIF clk = 1 AND clkEVEN

6、T THEN-出现时钟上升沿时进行状态转换current_state comb_outputs comb_outputs comb_outputs comb_outputs = “11“; IF state_inputs = 0 THEN next_state = st3;ELSE next_state = st0;END IF;END CASE;END PROCESS; END ARCHITECTURE behv;,例8.1 二进程一般状态机的描述。,8.2.2 一般有限状态机的设计示例(续2),例8.1 二进程一般状态机的描述。,例8.1的状态转换图,例8.1的时序仿真图,例8.1的RTL

7、图,8.3 摩尔状态机设计,LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY four_state_moore_state_machine ISPORT(Clk : IN STD_LOGIC;Input : IN STD_LOGIC;reset : IN STD_LOGIC;output : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); END ENTITY;ARCHITECTURE rtl OF four_state_moore_state_machine IS- 定义枚举类型的状态机TYPE state_type IS

8、(s0, s1, s2, s3);- 定义一个信号保存当前工作状态SIGNAL state : state_type;,从状态机的信号输出方式上看,可以将状态机分为摩尔型(Moore)和米立型(Mealy)状态机。摩尔型有限状态机输出只与当前状态有关,而与输入信号的当前值无关,是严格的现态函数。 例8.2 四状态摩尔型有限状态机的描述。,8.3 摩尔状态机设计(续1),BEGIN PROCESS (clk, reset) - 状态转换的时序进程BEGINIF reset = 1 THEN state IF input = 1 THEN state IF input = 1 THEN state

9、 IF input = 1 THEN state IF input = 1 THEN state output output output output = “11“;END CASE;END PROCESS; END rtl;,例8.2 四状态摩尔型有限状态机的描述。,8.3 摩尔状态机设计(续2),例8.2 四状态摩尔型有限状态机的描述。,例8.2 的时序仿真图,8.4 米立状态机设计,LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY four_state_mealy_state_machine ISPORT(clk : IN STD_LOG

10、IC;input : IN STD_LOGIC;reset : IN STD_LOGIC;output : OUT STD_LOGIC_VECTOR(1 DOWNTO 0); END ENTITY;ARCHITECTURE rtl OF four_state_mealy_state_machine IS-定义枚举类型的状态机TYPE state_type IS (s0, s1, s2, s3);-定义一个信号保存当前工作状态SIGNAL state : state_type;,米立状态机的输出是现态和所有输入的函数,输出随输入变化而随时发生变化。因此,从时序的角度上看,米立状态机属于异步输出的

11、状态机,输出不依赖于系统时钟,也不存在摩尔状态机中输出滞后一个时钟周期来反映输入变化的问题。 例8.3四状态米立状态机的描述。,8.4 米立状态机设计(续1),BEGIN REG:PROCESS (clk, reset)BEGIN IF reset = 1 THEN state IF input = 0 THEN state IF input = 0 THEN state IF input = 0 THEN state IF input = 0 THEN state = s3;ELSE state IF input = 0 THEN output IF input = 0 THEN outpu

12、t IF input = 0 THEN output IF input = 0 THEN output = “11“;ELSE output = “00“;END IF;END CASE;END PROCESS; END rtl;,例8.3四状态米立状态机的描述。,8.4 米立状态机设计(续3),例8.3四状态米立状态机的描述。,例8.3的时序仿真图,例8.3综合后的RTL图,本章小结,有限状态机设计技术是进行数字电路设计的重要手段之一,尤其适合于高速高性能控制器的设计,目前在高速数据采集和数字信号序列检测方面有较多应用。 本章就状态机的基本概念、编码方式以及性能优势等问题进行了简要介绍,重点阐述了基于VHDL描述的有限状态机的一般设计方法、摩尔状态机设计方法和米立状态机设计方法。这些设计方法基本上是相同的,需要注意的是要明确希望的输出是同步输出还是异步输出,分别采用摩尔状态机和米立状态机进行设计,然后按照主控时序进程和主控组合进程分层次进行描述,必要时加入辅助进程。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号