ENEE 245: Digital Circuits and Systems Lab – Lab 9
Vending Machine Controller
ENEE 245: Digital Circuits and Systems Laboratory
Lab 9
9.1 Objectives
Design a vending machine controller circuit that accepts coins a
...
ENEE 245: Digital Circuits and Systems Lab – Lab 9
Vending Machine Controller
ENEE 245: Digital Circuits and Systems Laboratory
Lab 9
9.1 Objectives
Design a vending machine controller circuit that accepts coins and product selections as
inputs, and supplies requested product and cash balance.
Display the cash balance and product cost on the 7-segment displays of the FPGA board.
To familiarize with the design of sequential digital systems using the finite state machine
(FSM) model.
This lab involves the design and implementation of a vending machine controller. The payment,
dispensing, and returning change will be modeled using the switches, buttons, and LEDs of the
Nexys2 board. A user will input a product code via a switch on the FPGA and the system will
dispense the corresponding product and change, if the price of the entered product is less than or
equal to amount deposited by the user via buttons.
9.2 Finite State Machine (FSM)
Vending machines are more complicated than you might think. It must remember how much
money has been inserted. This means that its outputs are a function of past inputs, so it must be a
sequential circuit. Probably the best way to design this circuit is as a finite state machine (FSM).
A FSM is an abstract description of a digital circuit in terms of (i) a collection of states and (ii)
the transitions that allow the circuit to go from one state to another, based on the current input
values. FSMs are very widely used in digital system designs. The behavior of FSMs can be
observed in many devices in modern society, performing a predetermined sequence of actions
depending on a sequence of events with which they are presented. Simple examples are vending
machines which dispense products when the proper combination of coins are deposited, elevators
which drop riders off at upper floors before going
[Show More]