自动售货机Verilog程序设计

Tags
Vending Machine Design
Verilog Programming
State Machine Modeling
Last edited by
AI summary
设计一个巧克力自动售货机,售价为25美分,接受5美分、10美分和25美分的硬币。机器在投入金额达到或超过25美分时售出巧克力,并在超出金额时退还多余的硬币。设计要求包括使用米利机绘制状态转移图、建模和仿真测试。
Last edited time
Sep 24, 2024 03:08 PM

实验要求

设计一个巧克力自动售货机,售出的巧克力块每一个25美分。该机器仅接收5美分(nickels),10美分(dimes)和25美分(quarters)的硬币。当投入的硬币总值达到或超过25美分时,机器通过一个时周期的dispense信号置1,售出一个巧克力块,机器返回到初始状态。在总投入值小于25美分任何时候,按下取消键cancel,机器将所有已经投入的硬币退回。投入硬币超过25美分时,不仅售出一个巧克力(一个时钟周期的dispense为高),还找回多余数值的硬币。(一个时钟周期的coin_returen高退回一个5美分硬币)。另外,若投币等待时间超过参数设置的等待时间WAIT_TIME(大于等于),则全部已经投入的硬币退回。要求:
  1. 使用米利机设计这个状态机,要求绘制状态转移图(设计分:10)。
  1. 为其建模,必须与设计吻合一致(建模分:10)。
  1. 仿真测试(验证分:5)

状态转移图

notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
Loading...