第10章 Verilog状态机设计技术.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
E D A技术与应用第10章 Verilog状态机设计技术§10.1 Verilog状态机的一般形式 E D A技术与应用广义而论,只要涉及触发器的电路,无论电路大小,都能归结为状态机。有限状态机用来实现一个数字电路的控制部分。与CPU的功能类似,综合了时序逻辑和组合逻辑电路。CPU是通过操作指令和硬件操作单元来实现控制功能,而有限状态机是通过状态转移来实现控制功能。综合器能从不同表述形态的HDL代码中轻易萃取出状态机,并加以多侧面、多目标和多种形式的优化。§10.1.1 状态机的特点与优势 E D A技术与应用面对同一个设计项目的不同形式的逻辑设计方案中,利用有限状态机的设计方案来描述和实现将可能是最佳选择。有限状态机的优越性:(1)高效的顺序控制模型(2)容易利用现成的EDA工具进行优化设计(3)性能稳定(4)高速性能(5)高可靠性能§10.1.2 状态机的一般结构 E D A技术与应用用Verilog设计的状态机根据不同的分类标准可以分为多种不同形式:从状态机的信号输出方式上分:Mealy型和Moore型状态机从状态机的结构描述上分:单过程状态机和多过程状态机从状态表达方式上分:符号化状态机和确定状态编码的状态机从状态机编码方式上分:顺序编码、一位热编码或其他编码方式状态机最一般和最常用的状态机结构中通常包含了说明部分、主控时序过程、主控组合过程、辅助过程等几个部分1、状态机说明部分 E D A技术与应用说明部分中包含状态转换变量的定义和所有可能状态的说明,必要时还要确定每一状态的编码形式,最好是纯抽象的符号化状态机,即所定义的状态序列和状态转换变量都不涉及具体的数值、编码,甚至数据类型或变量类型。parameter[2: 0] s0=0, s1=1, s2=2 , s3=3, s4=4;reg [2: 0] current_state, next_state;状态元素s0、s1等用关键词parameter来定义,各状态元素所取得数值或编码必须写出具体值。parameter旁的位宽说明可写可不写current_state是现态变量和next_state是次态变量1、状态机说明部分 E D A技术与应用2005版本的System Verilogtypedef enum {s0, s1, s2, s3, s4} type_user;type_user current_state, next_state;typedef是用户数据类型自定义语句关键词enum是定义枚举类型关键词type_user是用户定义状态元素s0、s1、s2、s3、s4为type_user类型的标识符第二句将状态变量current_state、next_state定义为type_user类型2、主控时序过程 E D A技术与应用主控时序过程指负责状态机运转和在时钟驱动下负责状态转换的过程。状态机是随外部时钟信号,以同步时序方式工作的,状态机中必须包含一个对工作时钟敏感的过程,状态机向下一状态转换的实现仅取决于时钟信号的到来。当时钟的有效跳变到来时,时序过程只是机械地将代表次态的信号next_state中的内容送入现态的信号current_state中,而信号next_state中的内容完全由其他过程根据实际情况来决定。此时序过程中也可放置一些同步或异步清0或置位方面的控制信号。3、主控组合过程主控组合过程根据当前状态和外部的信号发出控制信号,同时确定下一状态的走向。 E D A技术与应用在时钟的作用下,REG时序过程将次态信号的内容next_state传递给现态信号current_stateCOM组合过程通过信号current_state中的状态值,进入相应的状态;在此状态中根据外部的信号(如state_inputs)向内或向外发出控制信号(如com_outputs);同时根据外部信号(如state_inputs)向次态信号next_state中赋相应的状态值,确定下一状态的走向;此状态值通过next_state传给REG时序过程,直到下一个时钟脉冲的到来。4、辅助过程辅助过程用于配合状态机工作的组合过程或时序过程。例如为了完成某种算法的过程,或为了存储数据的存储过程,或用于配合状态机工作的其他时序过程等。 E D A技术与应用例10-1 module FSM_EXP (clk, reset, state_inputs, comb_outputs); input clk; //状态机工作时钟 input reset; //状态机复位控制 input [0: 1] state_inputs;//来自外部的状态机控制信号 output [3: 0] comb_outputs;//状态机对外部发出的控制信号输出 reg [3: 0] com

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档