第三章状态机设计_第1页
第三章状态机设计_第2页
第三章状态机设计_第3页
第三章状态机设计_第4页
第三章状态机设计_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第 三三 章章为什么要使用状态机为什么要使用状态机FSMz涉及语法复习 TYPE语句语句用法如下:用法如下: TYPE 数据类型名数据类型名 IS 数据类型定义数据类型定义 OF 基本数据类型基本数据类型; 或或 TYPE 数据类型名数据类型名 IS 数据类型定义数据类型定义 ;用户自定义的数据类型用户自定义的数据类型类型定义语句类型定义语句TYPETYPETYPE m_state IS ( st0,st1,st2,st3,st4,st5 ) ; SIGNAL present_state,next_state : m_state ;布尔数据类型的定义语句是:布尔数据类型的定义语句是: TYP

2、E BOOLEAN IS (FALSE,TRUE) ; TYPE my_logic IS ( 1 ,Z ,U ,0 ) ; SIGNAL s1 : my_logic ; s1 CS=1; A0=0; RC=0; LOCK=0; next_state CS=0; A0=0; RC=0; LOCK=0; next_state CS=0; A0=0; RC=0; LOCK=0; IF (STATUS=1) THEN next_state = st2;ELSE next_state CS=0; A0=0; RC=1; LOCK=0; next_state CS=0; A0=1; RC=1; LOCK=

3、1; next_state next_state = st0; END CASE ; END PROCESS COM ; REG:PROCESS (CLK) BEGIN IF ( CLKEVENT AND CLK=1) THEN current_state = next_state; END IF; END PROCESS REG; LATCH: PROCESS (LOCK) BEGIN IF LOCK=1 AND LOCKEVENT THEN REGL = D ; END IF; END PROCESS ; Q = REGL; K12X8 CS=1; A0=0; RC=0; LOCK=0;

4、next_state CS=0; A0=0; RC=0; LOCK=0; next_state CS=0; A0=0; RC=0; LOCK=0; IF (STATUS=1) THEN next_state = st2; ELSE next_state CS=0; A0=0; RC=1; LOCK=0; next_state CS=0; A0=1;RC=1; LOCK=1; next_state next_state = st0; END CASE ;END PROCESS COM ;接下页接下页 REG:PROCESS (CLK) BEGIN IF ( CLKEVENT AND CLK=1)

5、 THEN current_state = next_state; END IF; END PROCESS REG; LATCH: PROCESS (LOCK) BEGIN IF (LOCK=1 AND LOCKEVENT) THEN REGL = D ; END IF; END PROCESS ; Q = REGL; K12X8 next_state next_state IF (STATUS=1) THEN next_state = st2; ELSE next_state next_state next_state next_state = st0; END CASE ; OUT4 =

6、current_state(4 DOWNTO 1); END PROCESS COM1 ; REG: PROCESS (CLK) - 时序进程时序进程 BEGIN IF ( CLKEVENT AND CLK=1) THEN current_state = next_state; END IF; END PROCESS REG; LK = current_state(1) ; 接下页接下页 LATCH1 : PROCESS ( LK ) - 数据锁存器进程数据锁存器进程 BEGIN IF LK=1 AND LKEVENT THEN REGL = D ; END IF; END PROCESS ;

7、 Q = REGL; END behav;接上页接上页状态机工作时序图状态机工作时序图(2)顺序编码)顺序编码编码方式编码方式【例】【例】.SIGNAL CRURRENT_STATE,NEXT_STATE: STD_LOGIC_VECTOR(2 DOWNTO 0 );CONSTANT ST0 : STD_LOGIC_VECTOR(2 DOWNTO 0) := 000 ;CONSTANT ST1 : STD_LOGIC_VECTOR(2 DOWNTO 0) := 001 ;CONSTANT ST2 : STD_LOGIC_VECTOR(2 DOWNTO 0) := 010 ;CONSTANT ST3 : STD_LOGIC_VECTOR(2 DOWNTO 0) := 011 ;CONSTANT ST4 : STD_LOGIC_VECTOR(2 DOWNTO 0) := 100 ;状态机剩余状态处理状态机剩余状态处理状 态顺 序 编 码st0000st1001st2010st3011st4100st_ilg1101st_ilg2110st_ilg3111状态机一位热码编码方式的选择状态机一位热码编码方式的选择状态图状态图考试安排z时间:时间:6月月20号(下周周一)号(下周周一)z地点:地点:103z形式:开卷(只带一本课本)形式:开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论