【Verilog基础】野火FPGA新两段式有限状态机(FSM)理解 及 复杂可乐机实战(2)

本文通过一个复杂的可乐机设计实例,讲解Verilog中Mealy和Moore型状态机的实现。可乐机接受0.5元和1元硬币,定价2.5元,涉及找零功能。文章涵盖模块框图、状态转移图绘制、RTL代码编写及仿真验证,是数字IC设计中的基础应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、实战演练1: 复杂的可乐机

上一部分中的可乐机比较简单,只能投 1 元的硬币,但是我们生活中还有 0.5 元的硬币,所以我们在本章中将可乐机设计的稍微复杂一些,做成既可以投 1 元的硬币也可以投0.5 元的硬币,然后我们把可乐的定价改为 2.5 元一瓶。我们增加了可乐机的复杂度而引入了新的问题:投币后可乐机不仅仅需要吐出可乐还有可能出现需要找零钱的情况。

可乐定价为 2.5 元一瓶,可投入 0.5 元、 1 元硬币,投币不够 2.5 元需要按复位键退回钱款,投币超过 2.5 元需找零。

1.1、模块框图

在这里插入图片描述

在这里插入图片描述

1.2、状态转移图绘制

在绘制状态转移图时我们仍套用上一节中的三要素法来分析。首先我们要将实际的问题抽象成我们需要的元素,找到实际问题中对应状态转移图所需要的输入、输出和状态的部分,分析结果如下:

  • 1、输入: 投入 0.5 元硬币、投入 1 元硬币;
  • 2、输出: 不出可乐/不
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ReCclay

如果觉得不错,不妨请我喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值