第10章_状态机设计案例.ppt

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
.2.2 单进程Moore型有限状态机 图7-8 例7-4单进程状态机工作时序 7.2.2 单进程Moore型有限状态机 图7-9 对应于例7-4的2进程状态机工作时序图 10.3 Mealy型有限状态机的设计 Mealy机的组合进程结构中的输出信号是当前状态和当前输入的函数。 与Moore型状态机相比,Mealy机的输出变化要领先一个周期即一旦输入信号或状态发生变化,输出信号即刻发生变化。 10.3 Mealy型有限状态机的设计 【例10-5】 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY MEALY1 IS PORT ( CLK ,DIN1,DIN2,RST : IN STD_LOGIC; Q : OUT STD_LOGIC_VECTOR(4 DOWNTO 0)); END MEALY1; ARCHITECTURE behav OF MEALY1 IS TYPE states IS (st0, st1, st2, st3,st4); SIGNAL PST : states ; BEGIN COMREG : PROCESS(CLK,RST,PST,DIN1) BEGIN --决定转换状态的进程 IF RST =1 THEN PST = ST0; ELSIF CLKEVENT AND CLK = 1 THEN CASE PST IS WHEN st0 = IF DIN1 = 1 THEN PST = st1; END IF; WHEN st1 = IF DIN1 = ‘1 THEN PST = st2; END IF; WHEN st2 = IF DIN1 = 1 THEN PST = st3; END IF; WHEN st3= IF DIN1 = ‘1 THEN PST = st4; END IF; WHEN st4= IF DIN1 = ‘0 THEN PST = st0; END IF; WHEN OTHERS = PST = st0; END CASE ; END IF; END PROCESS COMREG; 接下页 COM: PROCESS(PST,DIN2) BEGIN --输出控制信号的进程 CASE PST IS WHEN st0 = IF DIN2 = 1 THEN Q = 10000 ; ELSE Q = 01010 ; END IF ; WHEN st1 = IF DIN2 = 0 THEN Q = 10111 ; ELSE Q = 10100 ; END IF ; WHEN st2 = IF DIN2 = 1 THEN Q = 10101 ; ELSE Q = 10011 ; END IF ; WHEN st3= IF DIN2 = 0 THEN Q = 11011 ; ELSE Q = 01001 ; END IF ; WHEN st4= IF DIN2 = 1 THEN Q = 11101 ; ELSE Q = 01101 ; END IF ; WHEN OTHERS = Q =00000 ; END CASE ; END PROCESS COM ; END behav; 图10-10 例10-5之双进程状态机工作时序图 【例10-6】 MEALY2 LIBRARY IEEE; --MEALY FSM USE IEEE.STD_LOGIC_1164.ALL; ENTITY MEALY2 IS PORT ( CLK ,DIN1,DIN2,RST : IN STD_LOGIC; Q : OUT STD_LOGIC_VECTOR(4 DOWNTO 0))

文档评论(0)

1112111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档