Create a clock divider module to divide the master clock

Assignment Help Other Engineering
Reference no: EM131268784

Project - Simple Vending Machine FSM

Objective

The objective of this project is to implement, in VHDL, a Finite State Machine, using the main clock of the Digilent Board to drive the state machine. The finite state machine will control a vending machine to dispense soda cans that are worth 50¢. Since this project will require several modules, consider using a mixed schematic/VHDL design, where you can use a schematic as the top level module, and have each sub-module defined in VHDL.

The vending machine has three inputs:

QUARTER: a signal that goes high and then low when a quarter has been deposited

CLOCK: a clock that will drive the FSM

RESET: a signal that will reset the FSM to its initial state

The vending machine has two outputs:

COUNT: a signal that goes high when a single quarter has been accepted. This signal should remain high for one clock cycle.

DISPENSE: a signal that goes high when the soda has been dispensed

Part I

Create a clock divider module to divide the master clock (at 50MHz) to a 1Hz clock. You may also need to create a switch debouncer for the QUARTER input to avoid confusing the FSM.

Part 2

Create your state diagram that you will use to implement the FSM VHDL module. The vending machine behaves as follows:

· If the RESET input is asserted, the FSM will go to the initialization state (S_init) immediately. All of the outputs should be zero in this state.

· From the initialization state S_init, the FSM will unconditionally go to the wait state (S_wait)

· From the wait state S_wait, the FSM waits for the QUARTER switch to be activated.

· If QUARTER is asserted, the FSM goes to state S_Q1. In this state, the COUNT output is set to 1, indicating that a quarter has been accepted. The FSM will stay in this state until the QUARTER input is de-asserted. When this occurs, the FSM goes to state S_QW1, then unconditionally to state S_QW2 and the COUNT output is set to 0. The FSM waits for the QUARTER switch to be activated.

· If QUARTER is asserted while the FSM is in S_QW2, then the state machine goes to state S_Q2. In this state, the COUNT output is again set to 1. The FSM will stay in this state until the QUARTER input is de-asserted. When this occurs, the FSM goes to S_QW3, and then unconditionally to state S_dispense, the COUNT output is set to 0, and the DISPENSE output is set to 1.

· From state S_dispense, the FSM unconditionally goes to state S_init.

Your VHDL MUST have two process: a next-state process to determine the change of states, and a output_logic process, to determine the outputs. Please include a state diagram and test bench outputs in your report. Put all VHDL code, including test benches in the appendix.

Reference no: EM131268784

Questions Cloud

Paper relating to object orientation : It should state the problem, provide background and motivation, and describe novel approaches (proposed by others or by you). Your paper might or might not require programming, depending on its focus.
Knowledge-based systems and expert systems : Distinguish between knowledge-based systems and expert systems. Explain the terms "rule-based" and "inference engine" in relation to expert systems. Discuss the programming languages used for expert systems
Principles ofdirect manipulation : Name two ways you could update the above interface to support the principles ofdirect manipulation. Draw a sketch of your redesign.
Think of a security policy : Think of a security policy you may have encountered either at school or in the workplace. Why do you suppose it was set up that way? Do you think it was effective? Would you arrive at the same solution if you were a network manager?
Create a clock divider module to divide the master clock : Create a clock divider module to divide the master clock (at 50MHz) to a 1Hz clock. You may also need to create a switch debouncer for the QUARTER input to avoid confusing the FSM.
Review hypothesis testing concepts using minitab : In the Analyze phase of the DMAIC approach, we shall test several hypotheses in order to determine the factors that the outputs (which need to be improved) depend on.
Does the x coordinate ever increase at a faster rate : Find for defined implicitly by the equation exy=x2+y+1, and evaluate at (0, 0).- Does the x coordinate ever increase at a faster rate than the y coordinate? Explain.
What controls the electrical properties of the atom : What controls the electrical properties of the atom? The valence electron is referred to as a ______? When silicon atoms combine to form a solid, they arrange themselves into an orderly pattern called ____________ ?
When is the rate of increase of the area the smallest : Show that the area does not increase at a constant rate. When is the rate of increase of the area the smallest? The largest? Explain.

Reviews

Write a Review

Other Engineering Questions & Answers

  Best side lobe attenuation expected under constraints

The requirements for the frequency resolution of the system specify that the largest allowable main lobe for the Kaiser window is p/100. What is the best side lobe attenuation expected under these constraints?

  Use radian measures for the trigonometric

The following 10 exercises build upon your previous education and training along with the sample math problems you studied in this module. The assignment problems will challenge you to put all those elements together.

  Draw the sequence networks

The Y winding has a solidly grounded neutral. Draw the sequence networks. Neglect the exciting admittance and assume American standard phase shift.

  Input-output relationship of a discrete lti system

Calculate the impulse response h[n] of the system and verify the output with matlab program - Is this a causal and stable system> Explain.

  Examine the given plc ladder logic program

Examine the following PLC Ladder Logic program. (Note: The answer in each row is the status of the bits after scanning both rungs. Assume this is a PLC that scans the logic from left to right and from top to bottom, like Allen-Bradley/Rockwell Auto..

  Determine the braking efficiency of car

If the braking efficiency of car 2 is 0.78, determine the braking efficiency of car 1. (Assume minimum theoretical stopping distance and ignore aerodynamic resistance.)

  Topic- how facebook is changing our way of communicationkey

topic- how facebook is changing our way of communication.key words- facebook- changing- communicationkey questions- how

  Calculate the surface area and depth of an ideal settling

1. if 8000m3d of wastewater from an industry has a bod5 of 190 mgl and k 0.17 per day base 10a. how much oxygen kgday

  Collection and comparison of different companion systems

Title - Research Seminar: Collection and Comparison of different Companion Systems. Cognitive Systems or Intelligent Systems - Read as many papers as possible, look into publications, projects, etc for how many systems are there

  Determine controller parameters

What use are these measurements when trying to determine Controller parameters and what other measurements can be taken if one is trying to determine PID settings for a controller?

  Draw the free-body diagram of the bar

Draw the free-body diagram of the bar, which has a negligible thickness and smooth points of contact at A, B, and C. Explain the significance of each force on the diagram. (See Fig)

  The internet for the link to the boston tunnel

Search the internet for the link to the Boston tunnel, "the Big Dig" or the "Channel Tunnel," and London's Millennium Dome. In spite of their poor cost performance, why do you think these projects were supported to their conclusion?

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd