EDA术及应用EDA技术及应用状态机图.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA术及应用EDA技术及应用状态机图

5.1 概述 5.1.1 关于状态机 状态机就是事物存在状态的一种综合描述。 * * 第5章 有限状态机设计 ? VHDL综合器易于优化 ? 易构成性能良好的时序逻辑模块 ? 结构模式简单、层次分明、易读易懂、易排错 6.1.2 状态机的特点: ? 运行模式类似于CPU,易于进行顺序控制 ?利用同步时序和全局时钟线可实现高速FSM ? 高可靠性,非法状态易控制 5.2 一般有限状态机的设计 5.2.1 一般有限状态机的组成 (1)说明部分 说明部分中使用TYPE语句定义新的数据类型,此数据类型一般为枚举类型 例如: TYPE state_type IS (start_state, run_state, error_state); SIGNAL state: state_type; 说明部分一般放在结构体的ARCHITECTURE和BEGIN之间。 (2)时序进程 时序进程是指负责状态机运转和在时钟驱动下负责状态转换的进程。作为状态机的“驱动泵”。 (3)组合进程 组合进程的任务是根据外部输入的控制信号,和当前状态的状态值确定下一状态的去向,以及确定对外输出或对内部其他组合或时序进程输出控制信号的内容。 (4)辅助进程 用于配合状态机工作的组合进程或时序进程,例如为了完成某种算法的进程;或用于配合状态机工作的其他时序进程,例如为了稳定输出设置的数据锁存器等。 clk↑ in≠ (00) st0 st1 st2 st3 Rest=‘1’ clk↑ in≠ (00) Out=(00) Out=(01) Out=(10) Out=(11) In= (00) In= (00) clk↑ in≠ (11) In= (11) clk↑ in≠ (11) In= (11) 设计实例 1 st0 in out st0 00 00 00 clk st0 Rest =1 stx in ≠00 00 clk st1 st1 in out st0 00 00 01 clk st1 Rest =1 stx in ≠00 01 clk st2 st2 in out st0 11 00 10 clk st2 Rest =1 stx in ≠11 10 clk st3 st3 in out st0 11 00 11 clk st3 Rest =1 stx in ≠11 11 clk st0 设计实例 1 clk rest state_inputs comb_outputs s_machine sto st2 st1 st3 In[1..0] state_inputs comb_outputs out[1..0] 设计实例 1 clk rest state_inputs comb_outputs s_machine 时序电路 current_state next_state clk 设计实例 1 实例2 即用状态机设计一个A/D采样控制器。 对A/D器件进行采样控制 P195 RC STATUS D[11..0] AD574启动时序 20us Z /CS 实例2 对AD574 初始化 st0 st1 st2 st3 st4 打开片选,启 动12位转换 采样周期 中等待 STATUS=‘1’ : 正在转换! STATUS=‘0’ : 转换结束! 12位转换数 据输出有效 由 LOCK 发 数据锁存信号 AD574采样控制状态图 实例2 PROCESS REG 时序进程 PROCESS COM 组合进程 PROCESS LATCH 锁存器 current_state next_state LOCK 状态机FSM FPGA/CPLD CLK CS A0 RC K12/8 STATUS D[11..0] AD574 Q[11..0] 模拟信号输入 采样数据输出 采样状态机结构框图 实例2 ST1 A0 1 0 0 0 ST2 0 CS RC 0 0 0 K12/8 1 1 1 STAUS----?OUT ST1 ST2 ST3 ST0 0 ST1 ST2 ST2 STATUS =1 0 0 0 LOOK STATUS =0 0 1 1 0 ST4 ST3 ST4 1 1 1 0 ST0 ST4 0 1 ST0 LOOK----?OUT 实例2 AD574采样状态机工作时序图 状态2:等待 实例2 st0 st1 st2 st3 Rest=‘1’ : clk↑Datat=(1) Data=(0) Q=(01010) Data=(1) Q=(10000) In= (00) 设计实例 3 st4 clk↑Da

文档评论(0)

130****9768 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档