欢迎光临散文网 会员登陆 & 注册

HDLBits (130) — 旅鼠 3

2022-05-10 18:05 作者:僚机Wingplane  | 我要投稿

本题链接:

https://hdlbits.01xz.net/wiki/Lemmings3

另见:Lemmings1Lemmings2

除了走路和摔倒之外,旅鼠有时会被告知做一些有用的事情,比如挖掘(当 dig=1 时它开始挖掘)。 如果旅鼠当前在地面上行走(ground=1 并且没有下落),它可以挖掘,并且会继续挖掘直到它到达另一边的尽头(ground=0)。 到那时,由于没有地面,它会掉下来(aaah!),然后一旦再次撞到地面,就继续沿原来的方向行走。 与坠落一样,挖掘时被撞到时没有效果,并且在坠落或没有地面时被告知挖掘被忽略。

(换而言之,一只行走的旅鼠可以跌倒、挖掘或切换方向。如果满足这些条件中的一个以上,则跌倒的优先级高于挖掘,挖掘的优先级高于切换方向。)

 扩展你的有限状态机来模拟这种行为。

另见:Lemmings4

题目

提示:


答案

输出波形

有限状态机(Finite-State Machine,FSM),简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。状态机不仅是一种电路的描述工具,而且也是一种思想方法,在电路设计的系统级和 RTL 级有着广泛的应用。

Verilog 中状态机主要用于同步时序逻辑的设计,能够在有限个状态之间按一定要求和规律切换时序电路的状态。状态的切换方向不但取决于各个输入值,还取决于当前所在状态。状态机可分为 2 类:Moore 状态机和 Mealy 状态机。

参考内容:

6.3 Verilog 状态机 | 菜鸟教程:

https://www.runoob.com/w3cnote/verilog-fsm.html


HDLBits (130) — 旅鼠 3的评论 (共 条)

分享到微博请遵守国家法律