Verilog刷题日志

参考博文:题解 | #根据状态转移表实现时序电路#_牛客博客 (nowcoder.net)

VL21 根据状态转移表实现时序电路

某同步时序电路转换表如下,请使用D触发器和必要的逻辑门实现此同步时序电路,用Verilog语言描述。其接口 input   A  ,input  clk , input  rst_n;output   wire Y 。

根据该转换表和题目,可以发现不同的A值,对于受 Q_{1}^{n}Q_{0}^{n}控制的Q_{1}^{n+1}Q_{0}^{n+1}、Y取值不同。但是 Q_{1}^{n}Q_{0}^{n}又不是输入信号,那么它是怎么变换的呢?我们发现表中存在Q_{1}^{n+1}Q_{0}^{n+1}信号,转换表蕴含了 Q_{1}^{n}Q_{0}^{n}的时钟变化规律。结合题目要采用D触发器实现,代表一个always块只能控制一个信号变量。因此列出Q_{1}^{n+1}Q_{0}^{n+1}的真值表。

由于逻辑表达式的化简结果不同,我们采用最小项表示(不需要进行化简,化简会出错):

q1 <= (~A & ~q1 & q0) | (~A & q1 & ~q0) | (A & ~q1 & ~q0) | (A & q1 & q0);

q0 <= (~A & ~q1 & ~q0) | (~A & q1 & ~q0) | (A & ~q1 & ~q0) | (A &

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值