1、第 5章 同步有限状态机设计 5.1 同步有限状态机引例 5.2 状态机的基本概念 5.3 状态机的编码方法 5.4 复杂状态机的编写方法 5.5 采用状态机来实现程序算法 5.6 小结5.1 同步有限状态机引例【 例 5-1】 设计 一个串行数据 检测 器。 电 路的 输 入信号 A是与 时钟 脉冲同步的串行数据,其 时 序关系如 图所示。 输 出信号 为 Y;要求 电 路在信号 输 入 A出 现 110序列 时 , 输 出信号 Y为 1,否 则为 0。5.1 同步有限状态机引例图 5-2 时 序 逻辑电 路 设计过 程5.1 同步有限状态机引例第一步:理解 题 意,由给 定的 逻辑功能建立
2、原始状 态图 ,如 图 5-3所示图 5-3 原始状 态图图 中, S表示状 态 , A/Y中横 线 上面的为输 入,横 线 下面的 为输 出。5.1 同步有限状态机引例第二步:状态 化 简 ,合并等价状 态 a bc0/0 1/00/01/01/00/1图 5-4 化 简 后的状 态图5.1 同步有限状态机引例第三步:状态编码图 5-5 编码 后的状 态图5.1 同步有限状态机引例第四步: 选择 触 发 器的个数和 类 型触发器个数可根据状态数确定,要求满足 2n-1M2n,式中 M为状态数, n为触发器的个数。对于本例,已知 M为3,所以可求出触发器的个数为 2个。 触发器可以选择 D触发
3、器、JK触发器等等,本例选用 D触发器。5.1 同步有限状态机引例第五步:求出 电 路的激励方程和 输出方程5.1 同步有限状态机引例第六步:画出 逻辑图 并 检查 自启 动 能力 5.1 同步有限状态机引例【 例 5-2】 对应于步骤六的层次建模方法module fsm_1(clk,A,Y);input clk,A;output Y;wire q0,q1;assign Y= q1 mydff_2 dff0(.D(A),.Q(q0),.clk(clk),dff1(.D(Aendmodule/以下实现被调用模块 mydff_2module mydff_2(D,Q,clk);input D,clk;output reg Q;always (posedge clk)Q=D;endmodule