Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Electrical & Electronics Expert

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.

Electrical & Electronics, Engineering

  • Category:- Electrical & Electronics
  • Reference No.:- M92476310

Have any Question?


Related Questions in Electrical & Electronics

1 goalin this project you will solve a non-trivial design

1 Goal In this project you will solve a non-trivial design problem explicitly using the divide-and-conquer (D&C) approach. The main reason for using the D&C approach is the ease of the design process and the streamlined ...

Nanotechnology engineering program assignment - passive

Nanotechnology Engineering Program Assignment - Passive Filters Q1) Determine what type of filter is in circuit shown. Calculate the cutoff frequency f c . Q2) Determine what type of filter is in circuit shown. Calculate ...

1 a name the three major groups of contamination and

1. (a) Name the three major groups of contamination and briefly describe their physical characteristics. (b) Where do the above contamination types come from? Give one example of each. 2. Name two processes metrics which ...

Questions -q1 a single-phase transformer rated 21 kv130 v

Questions - Q1. A single-phase transformer rated 2.1 kV/130 V, 7.8 kVA has the following winding parameters: r1= 0.7Ω, x1 = 0.9Ω, r2 = 0.04Ω and x2 = 0.05Ω. Determine: a. The combined winding resistance ________ Ω and le ...

Summative assessmentin 2017 sej101 assessment will consist

Summative Assessment In 2017 SEJ101 assessment will consist of nine tasks that will develop a portfolio of your assessed work. Throughout the trimester you will have the opportunity for feedback on all nine tasks before ...

Advanced computational techniques in engineering assignment

Advanced Computational Techniques in Engineering Assignment - Optimisation For this assignment, you are required to carry out the process of attempting to solve different optimisation problems. For each question, you are ...

Electrical engineering questions -q1 two ideal voltage

Electrical Engineering Questions - Q1. Two ideal voltage sources designated as machines 1 and 2 are connected, as shown in the figure below. Given E 1 = 65∠0 o V, E 2 = 65∠30 o V, Z = 3Ω. Determine if Machine 1 is genera ...

1 a name the three major groups of contamination and

1. (a) Name the three major groups of contamination and briefly describe their physical characteristics. (b) Where do the above contamination types come from? Give one example of each. 2. Name two processes metrics which ...

Nanotechnology engineering - resonance circuits questions

Nanotechnology Engineering - Resonance Circuits Questions - Q1) A series RLC network has R = 2KΩ, L = 40mH and C = 1μF. Calculate the impedance at resonance and at one-fourth, one-half, twice, and four times the resonant ...

Question 1 - for the transistor in the circuit shown in

Question 1 - For the transistor in the circuit shown in Figure, assume β = 120. Design the circuit such that I CQ = 0.15 mA and R TH = 200kΩ. What is the value of V CEQ ? Question 2 - (a) For the circuit shown in figure, ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As