Implement the desired functionality

Assignment Help Electrical Engineering
Reference no: EM131667608

You are asked to design, simulate, implement, and test a Ticket Dispensing Machine for a subway to be operated in Boise, Idaho with the following properties:

Coin Entry Mode

The Subway Ticket Dispensing Machine accepts the following Coins
- 10 cents coin (pushbutton 2), - 25 cents coin (pushbutton 1),
- 1 dollar coin (pushbutton 0);
The machine is initialized as displaying "Amt $00.00" on the OLED display. Each time a new coin is entered, the display shows the current total in a decimal notation. The machine is not capable of dispensing tickets worth more than $10.00 (any additional amounts will be returned to the user at the end of purchasing).

The user ends the process of entering money by pushing (Pushbutton 3)then moves to Zone selection mode.
Zone selection Mode
The machine can dispense four types of tickets, depending on the distance to the destination:
1. Zone A worth $1.00 (local),
2. Zone B worth $1.35 (to Meridian),
3. Zone C worth $2.00 (to Nampa),
4. Zone D worth $2.45 (to Caldwell);

After finishing entering the money, the word "Zone Code " should be displayed.

Pressing (pushbutton 0) should scroll the choices up (A → B →C →D) and (pushbutton 1)should scroll the choices down (D → C → B → A) then wraps around, respectively. Each time the user presses one of these two buttons, the code of the next item on the list is displayed on the most left to the "Zone Code" If the two buttons are pressed together, the display freezes and stops changing the zone code, then continue to scroll according to the button pressed afterwards. The user makes the zone selection by pressing (Pushbutton 3)

Ticket Number Mode
After making the selection, the word "Tkt Nmbr 1" should be displayed. In this mode, the user is given an option of choosing the number of tickets to buy. The machine displays a default number of tickets "1" as shown above. By using (pushbutton 0) to increment and (pushbutton 1)to decrement, the user can choose a number of tickets between 1 and 4. An attempt to reduce the number of tickets below 1 or increase it above 4 should results in a LED_0becomes on, the number shown on the OLED display should not change, and the machine continues to operate in this mode.

After the number of tickets is selected the user should again press (pushbutton 3)

Dispensing Mode
At this point, the tickets are dispensed, this is shown as follows
- The code and ticket number "Zone x yTkt", where x is the zone code and y is the number of tickets is displayed flashing 5 times, followed by the amount of change returned by the machine displayed as "Chg $zz.zz", where zz.zz is the amount of money.
- If the amount of money was insufficient, the machine should light LED _02 and refunds all the money entered to the user indicating the amount by displaying "Rfnd $zz.zz".
- After the machine returns the change, the next entry on (pushbutton 03) resets the machine to its original state.

Additional information
- Switch_0 should be used as a high active asynchronous reset in case of error.
- Switch_3 should be used as a cancel button while in any mode. When cancel is on, the word "canceling" is displayed blinking three times on the OLED display, operation should be canceled, and the entire amount of money entered so far should be returned as a change. This should be indicated by displaying "Rfnd $zz.zz" on the OLED display and LED _03 should be turned on.

Tasks and Deliverables for the project

The following tasks are expected to be completed:
1. Draw as many FSM bubble diagrams as you need to implement the desired functionality. Please note that multiple state machines, working in parallel, and using datapath components is a good coding style for achieving the required behavior since it makes the debugging process a lot easier.
2. Translate the FSM(s) to VHDL.
3. Develop a testbench to test the functionality of your design and perform functional simulation of your code. Select your test cases carefully and label them including expected results. Waveforms should be annotated to show your understanding of the design.
4. Synthesize your code using Vivado.
5. Prepare the correct XDC (Constraints) file.
6. Implement your circuit using on the Zybo board.
7. Check thoroughly all generated reports. Pay attention to timing, resource usage, and latches.
8. Download your bitstream to the FPGA board.
9. Test the operation of your circuit experimentally using the FPGA prototyping Board.

Include the following with your electronic submission:
1. All state diagrams (Scan them if drawn by hand or take a good resolution picture). Include thesealong with a write-up explaining the design strategy for the whole project 2. All source files used for synthesis, testing, and implementation of your circuit.
3. Xilinx Design Constraints file (XDC) and the bitsteam file.
4. Testbench(s) code with samples of annotated simulation waveforms, proving the correctoperation of each mode (make sure waveforms are readable).
5. Extract the following information:
a. Resource utilization. Number of FF, latches, LUTs ... etc.
b. Maximum operating clock frequency after implementation.
6. List of any deviations/additions from the original specification.
7. Difficulties encountered and lessons learned.

Reference no: EM131667608

Questions Cloud

Te a thesis statement and outline for the ethical argument : In Module/Week 4, you will write a thesis statement and outline for the ethical argument essay that you will write in the next module/week.
Selection and retention-including employment branding : on your learning and development in relation to recruitment, selection and retention, including employment branding, as a key element of the HR ‘resourcing’ rol
Prepare an in-depth critique of article : Select an empirical research article relevant to your population of interest and prepare an in-depth critique of that article
What is the expected payoff from prize : She has received a prize that depends on the roll of a pair of dice. If she rolls a 3, 4, 6 or 8, she will receive $400. Otherwise she will receive $100.
Implement the desired functionality : Design, simulate, implement, and test a Ticket Dispensing Machine for a subway to be operated in Boise - implement the desired functionality
Is the mean age of entering prostitution in canada lower : Is the mean age of entering prostitution in Canada lower than the mean age in the United States? Test at a 1% significance level.
Compute higher mean weight loss of the powder diet : A powder diet is tested on 49 people, and a liquid diet is tested on 36 different people. Of interest is whether the liquid diet yields a higher mean weight.
Discuss the company-home depot-from strategic perspective : In a narrative format, discuss the company, Home Depot, from a strategic perspective.
Coupled with ever increasing technology capabilities : Do you think that the ever-increasing demand for, and actual implementation of, increased transparency, coupled with ever increasing technology capabilities

Reviews

len1667608

10/3/2017 5:58:59 AM

ticket dispensing machine FSM help on vhdl? 1. All state diagrams (Scan them if drawn by hand or take a good resolution picture). Include thesealong with a write-up explaining the design strategy for the whole project 2. All source files used for synthesis, testing, and implementation of your circuit. 3. Xilinx Design Constraints file (XDC) and the bitsteam file. 4. Testbench(s) code with samples of annotated simulation waveforms, proving the correctoperation of each mode (make sure waveforms are readable). 5. Extract the following information: a. Resource utilization. Number of FF, latches, LUTs … etc. b. Maximum operating clock frequency after implementation. 6. List of any deviations/additions from the original specification. 7. Difficulties encountered and lessons learned.

Write a Review

Electrical Engineering Questions & Answers

  Determine 1s complement addition and complement

Incremental Update. Typically, after every hop at least one packet header field (e.g., a packet's time-to-live field) needs to be overwritten. Because the checksum is a simple complement of a 1s complement sum, it turns out that when, for instance..

  Find the acceleration of sphere 1 just after it is released

Three small spheres with charge 2.00 mC are arranged in a line, with sphere 2 in the middle. Adjacent spheres are initially 8.0 cm apart.

  Plot turbines heat loss as a function of the steam flow rate

Plot the turbines heat loss as a function of the steam flow rate, the surface temperature of the turbine and The ground state temperature.

  What is the incidence rate for aids for 1994

The midyear population for the state of Ohio in 1994 was 11,140,950. What is the incidence rate for AIDS for 1994?

  Determine the speed of the block when spring is compressed

a block (m=0.0433 kg) is sitting on a frictionless horizontal surface. The mass is connected to a spring with a spring constant of 24.5 N/m. The block is pulled back released from rest. The maximum acceleration of the block is 31.5 m/s^2.

  Calculate the density of the manometric fluid

A U manometer reads 20 cm air as operating fluid and a given manometric fluid. A single branch closed tube reads 35 cm connected to point 1. If P2 = 1.2 ATM calculate the pressure in point 1 and the density of the manometric fluid.

  Explain concept of differential encoding for bpsk modulation

a) What is the key difference between coherent and non-coherent demodulation b) Explain the concept of differential encoding for BPSK modulation.

  What is the thevenin theorem or steps

What is the thevenin theorem or steps

  Determine the mathematical expressions for il and vl

Determine the mathematical expressions for iL and vL following the closing of the switch in given figure. - Determine iL and vL at t = 100 ns.

  What is the size of an output frame in bits

We need to use asynchronous TDM and combine 50 digital sources. On average only 20% of the sources are active at any time. Each output slot carries 18 bits of data from each digital source. Also 8 extra bits are added to each frame for synchroniza..

  Algorithm is based on vehicular ad hoc network

I have an algorithm need to be simulated in ns2/ns3, the algorithm is based on vehicular ad hoc network. The objective of the algorithm is predict the next AP availability and capacity in VANET scenario.

  Why designer often use signal conditioning amplifier circuit

What are two types of variables that can be used for values that exceed 256, and describe what is the difference between the variables, how to declare them and the memory allocated, and the numerical range for both.

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