欢迎来到天天文库
浏览记录
ID:33470897
大小:2.19 MB
页数:98页
时间:2018-05-25
《eda技术实用教程ppt教学课件-第7章_vhdl有限状态机设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、EDA技术实用教程第7章VHDL有限状态机设计第7章有限状态机设计教学内容:7.1 VHDL状态机的一般形式7.2 Moore型有限状态机的设计7.3 Mealy型有限状态机的设计7.4 状态机图形编辑设计方法7.5 状态编码7.6 安全状态机设计7.7 硬件数字技术排除毛刺教学要求:学习和掌握用VHDL设计不同类型的有限状态机的方法;了解EDA工具和设计中关注的问题:综合器优化、毛刺信号的克服、控制速度、状态编码方式等。状态机(StateMachine)状态机是一类很重要的时序电
2、路,是很多数字电路的核心部件,是大型电子设计的基础。状态机相当于一个控制器,它将一项功能的完成分解为若干步,每一步对应于二进制的一个状态,通过预先设计的顺序在各状态之间进行转换,状态转换的过程就是实现逻辑功能的过程。状态机图是指用图形的方式来表示一个设计实体的各种工作状态、内部各工作状态转换的条件以及各工作状态对应的输出信号序列。有限状态机FSM-FiniteStateMachine有限状态机是由寄存器组和组合逻辑构成的硬件时序电路,其状态(即由寄存器组的1和0的组合状态所构成的有限个状态)只可
3、能在同一时钟跳变沿的情况下才能从一个状态转向另一个状态,究竟转向哪一状态还是留在原状态不但取决于各个输入值,还取决于当前所在状态。[这里指的是米里(Mealy)型有限状态机,而摩尔(Moore)型有限状态机究竟转向哪一状态只决于当前状态。]对应:Mealy(输出不但取决于各个输入值,还取决于当前所在状态)->时序逻辑电路(不仅与输入有关还和当前状态有关)Moore(输出只取决于当前状态)->组合逻辑电路(只与输入有关)比较:传统的设计方法是首先绘制出控制器的状态图,并由此列出状态表,再合并消除状
4、态表中的等价状态项。在完成状态寄存器的分配之后,根据状态表求出次态及输出方程,最后画出设计原理图。采用这种方法设计复杂状态机将会十分繁杂。利用VHDL设计状态机,不需要进行繁琐的状态分配、绘制状态表和化简次态方程。设计者不必使用卡诺图进行逻辑化简,不必画电路原理图,也不必搭试硬件电路进行逻辑功能的测试,所有这些工作都可以通过EDA工具自动完成。应用VHDL设计状态机的具体步骤如下:(1)根据系统要求确定状态数量、状态转移的条件和各状态输出信号的赋值,并画出状态转移图(状态机图);(2)按照状态转
5、移图编写状态机的VHDL设计程序;所有的状态均可表达为CASE_WHEN结构中的一条CASE语句,而状态的转移则通过IF_THEN_ELSE语句实现。(3)利用EDA工具对状态机的功能进行仿真验证。7.1VHDL状态机的一般形式7.1.1为什么要使用状态机(1)高效的顺序控制模型。(2)容易利用现成的EDA优化工具。(3)性能稳定。(4)设计实现效率高。(5)高速性能。(6)高可靠性能。7.1.2一般有限状态机的设计有限状态机分类:从信号的输入与输出方式分:Mealy型和Moore型有限状态机从
6、结构分:单进程状态机和多进程状态机从状态表达方式分:有符号状态机和确定编码状态机从编码方式分:顺序编码状态机、一位热码编码状态机或其它编码状态机有限状态机的结构:说明部分、主控时序进程、主控组合进程、辅助进程*说明部分在architecture与begin之间;*定义枚举型数据类型:用于描述状态*状态变量定义为信号:便于信息传输,状态变量数据类型定义为含有既定状态元素的新定义的数据类型ARCHITECTURE...ISTYPEFSM_STIS(s0,s1,s2,s3);SIGNALcurrent
7、_state,next_state:FSM_ST;...begin1.说明部分——负责状态机运转和在时钟驱动下负责状态转换的进程作为状态机的“驱动泵”。功能1:状态机随外部时钟信号以同步方式工作,当时钟的有效跳变到来时,时序进程将代表次态的信号next_state中的内容送入现态信号current_state中,而next_state中的内容完全由其他进程根据实际情况而定。功能2:此进程中包括一些清零或置位的控制信号。图7-1一般状态机结构框图工作示意图2.主控时序进程主控组合进程的任务是根据外
8、部输入的控制信号(包括来自状态机外部的信号和来自状态机内部其它非主控的组合或时序进程的信号),或(和)当前状态的状态值确定下一状态(next_state)的取向,即next_state的取值内容,以及确定对外输出或对内部其它组合或时序进程输出控制信号的内容。-译码过程3.主控组合进程图7-1一般状态机结构框图工作示意图——用于配合状态机工作的组合进程或时序进程例如:完成某种算法的进程;配合状态机工作的其他时序进程;稳定输出设置的数据锁存器等。4.辅助进程LIBRARYIEEE;USEIEEE.S
此文档下载收益归作者所有