67、数字状态机设计:从D触发器到状态图的深入解析

数字状态机设计:从D触发器到状态图的深入解析

1. D触发器在状态机设计中的应用

1.1 “1s计数机”设计

“1s计数机”是一个具有两个输入(X和Y)和一个输出(Z)的时钟同步状态机。输出Z在自复位以来X和Y输入中1的数量为4的倍数时为1,否则为0。

虽然乍一看,由于要对任意长时间内的1输入进行计数,该机器似乎需要无限个状态,但实际上由于输出仅指示输入数量对4取模的结果,因此只需要四个状态,分别命名为S0 - S3,其中S0为初始状态,Si中接收到的1的总数为i对4取模的结果。以下是状态和输出表:
| X Y | 含义 | S | 00 | 01 | 11 | 10 | Z |
| — | — | — | — | — | — | — | — |
| | 得到零个1(模4) | S0 | S0 | S1 | S2 | S1 | 1 |
| | 得到一个1(模4) | S1 | S1 | S2 | S3 | S2 | 0 |
| | 得到两个1(模4) | S2 | S2 | S3 | S0 | S3 | 0 |
| | 得到三个1(模4) | S3 | S3 | S0 | S1 | S0 | 0 |

该机器可以使用两个状态变量对其四个状态进行编码,且无未使用状态。这里选择按照卡诺图顺序(00, 01, 11, 10)将编码状态分配给命名状态,原因有二:一是在该状态表中,这种分配方式可使大多数状态转换时状态变量的变化数量最小化,从而简化激励方程;二是便于将信息机械地转移到激励图中。

基于所选状态分配的转换/激励表如下:
| X Y | Q1 Q2 | 00 | 01 |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值