参考博文:题解 | #根据状态转移表实现时序电路#_牛客博客 (nowcoder.net)
VL21 根据状态转移表实现时序电路
某同步时序电路转换表如下,请使用D触发器和必要的逻辑门实现此同步时序电路,用Verilog语言描述。其接口 input A ,input clk , input rst_n;output wire Y 。
根据该转换表和题目,可以发现不同的A值,对于受 控制的
、Y取值不同。但是
又不是输入信号,那么它是怎么变换的呢?我们发现表中存在
信号,转换表蕴含了
的时钟变化规律。结合题目要采用D触发器实现,代表一个always块只能控制一个信号变量。因此列出
的真值表。
由于逻辑表达式的化简结果不同,我们采用最小项表示(不需要进行化简,化简会出错):
q1 <= (~A & ~q1 & q0) | (~A & q1 & ~q0) | (A & ~q1 & ~q0) | (A & q1 & q0);
q0 <= (~A & ~q1 & ~q0) | (~A & q1 & ~q0) | (A & ~q1 & ~q0) | (A &