Implement the Snakes and Ladders game on the NEXYS 4 DDR FPGA board. The Boards include eight 7-segments, 16 Switches, 1 – 24/7 ASSIGNMENT HELP

Don't use plagiarized sources. Get Your Custom Essay on
Implement the Snakes and Ladders game on the NEXYS 4 DDR FPGA board. The Boards include eight 7-segments, 16 Switches, 1 – 24/7 ASSIGNMENT HELP
Just from $13/Page
Order Essay

You need to implement the Snakes and Ladders game on the NEXYS 4 DDR FPGA board. The Boards include eight 7-segments, 16 Switches, 16 LEDs, and (5+2) push buttons as below. (CPU RESET and PROG are also push buttons)

Game Rules:

Figure 1 shows the play board. As seen the X and Y positions range between 0 to 9 for each player. If the player lands up at the head of the snake, the player moves down to the tail of the snake. If the player lands at the bottom of the ladder, the player moves to the top of the ladder. For example, if a player reaches to location (1, 3) that is related to position 39 in Figure 1, he/she should move to location (2,0) shown by 3 through the snake. However, if a player reaches to location (1,0) that is position 2, he/she should move to the location (2,2) that is position 23 through the ladder.

Please consider the following notes. The notes are based on the FPGA board schematic shown in Figure 2. 2 Figure 2: NEXYS 4 DDR FPGA board

  • The game is started on the push of switch 7 from off to on (i.e., down to up). Ifthe switch 7 is off the game should be reset to initial state.• The game is played between two players. Both players start at position (0,0).•
  • The player one starts first by rolling of the dice.• The dice value is a random number between one and six. To throw the dice,player one uses switch 15 and player 2 uses switch 0 (as shown in Figure 2). Youcan implement the dice by generating a random number via a counter countingbetween 1 and 6 running under the system clock frequency (CLK100MHZ).When switch 15 or switch 0 changes from off to on (i.e., down to up), the countervalue is captured as the dice value. Note that for the next dice throwing, youshould move the switch from on to off first and then off to on.•
  • After the dice is thrown by each player, he/she moves on the board by using pushbuttons to move up, down, left or right (See push buttons in Figure 2). Note thatthe dice value for each player should be shown on the related 7-SEG discussedbelow.Example: Suppose the player 1 is at position 8 on the board and the dice roll upis 6. The player needs to move to position 14. For doing so, player 1 will pressthe right push button twice, followed by pressing the up push button once,followed up by pressing the left button triple times.•
  • After each player is done with the movements, by using the push buttons, he/sheshould press the center push button to indicate that the turn is over.• If the player moved correctly via the push buttons, his/her location (X and Ypositions) is updated on the seven segments (discussed later). However, if themoves are considered as wrong (after the push of center push button), the gameis over and the player loses it.•
  • Any player reaches first to the location (0,9), wins the game.•
  • In case, the player one wins the game, the LED 15 blinks, and if the player twowins the game, the LED 0 blinks.3Note on dice throwing:• When you move the switch from off to on you may have a transient change(glitch) in the signal related to the switch. So, you should use a filter for yourswitches as well as all push buttons. You already have the filter.v fromassignment 3.Seven SegmentsFigure 3: Eight Seven-segments included in the FPGAThe eight seven-segments included in the board are numbered from zero to sevenstarting from right. They show values as below:•
  • The 7SEG 7 and 7SEG 6 show the location of the first player at each time (Xcoordinate and Y coordinate, respectively), each between 0 and 9.• The 7-SEG 5 shows the dice number for player 1 (between 1 and 6).•
  • The 7SEG 4 and 7SEG 0 are not used.• The 7SEG 3 and 7SEG 2 show the location of the second player (X coordinateand Y coordinate, respectively), each between 0 and 9.•
  • The 7-SEG 1 shows the dice number for player 2 (between 1 and 6).Snake and Ladder Locations:Use the module (memory.v) given to you for uploading the locations of the snakes andladder. You should instantiate that module in your top module.To instantiate that module, you can include the following line in your top module:memory inst (.Address(mem_addr), .Data(mem_out));Here, mem_addr is a 4-bit address and mem_out is a 16-bit data.The lines 9 to 24 in memory.v indicate the start and stop coordinates for snakes andladders. In each line, the first and second 4 bits show the X and Y position of the starting4point of a snake or a ladder, respectively. In addition, the third and forth 4 bits representthe X, and Y locations of the stopping point of the same snake/ladder.For example, if we have 00010011001000001, it shows a snake going from (1,3) to(2,0). This entry is snake (as the destination is lower then source), but you don’t needto know if it is a ladder or snake. Your algorithm behaves the same for ladders andsnakes.Note that you should be able to use any map for ladder/snake positions in your code. Itmeans that if the values uploaded as the ladder/snake locations through memory.v file(that you were given) is changed, your implementation should operate properly basedon the new map. However, for the sake of simplicity, we assume that at most, thenumber of snakes and ladder, together, is 16. So, the code that you write should begeneric in a sense that it should work for any positions of snakes and ladders (totally upto 16).Deliverables•
  • Complete implemented project.•
  • A report explaining your design. The report should include a complete diagramof the design and a brief explanation of each part of design (not explaining thequestion).10-point Bonus (Due Tuesday Oct. 26)You get 10 extra point if you implement the dice throwing parts and showing the valueson the related seven segments for both players.
  • Calculate your paper price
    Pages (550 words)
    Approximate price: -

    Why Work with Us

    Top Quality and Well-Researched Papers

    We always make sure that writers follow all your instructions precisely. You can choose your academic level: high school, college/university or professional, and we will assign a writer who has a respective degree.

    Professional and Experienced Academic Writers

    We have a team of professional writers with experience in academic and business writing. Many are native speakers and able to perform any task for which you need help.

    Free Unlimited Revisions

    If you think we missed something, send your order for a free revision. You have 10 days to submit the order for review after you have received the final document. You can do this yourself after logging into your personal account or by contacting our support.

    Prompt Delivery and 100% Money-Back-Guarantee

    All papers are always delivered on time. In case we need more time to master your paper, we may contact you regarding the deadline extension. In case you cannot provide us with more time, a 100% refund is guaranteed.

    Original & Confidential

    We use several writing tools checks to ensure that all documents you receive are free from plagiarism. Our editors carefully review all quotations in the text. We also promise maximum confidentiality in all of our services.

    24/7 Customer Support

    Our support agents are available 24 hours a day 7 days a week and committed to providing you with the best customer experience. Get in touch whenever you need any assistance.

    Try it now!

    Calculate the price of your order

    Total price:

    How it works?

    Follow these simple steps to get your paper done

    Place your order

    Fill in the order form and provide all details of your assignment.

    Proceed with the payment

    Choose the payment system that suits you most.

    Receive the final file

    Once your paper is ready, we will email it to you.

    Our Services

    No need to work on your paper at night. Sleep tight, we will cover your back. We offer all kinds of writing services.


    Essay Writing Service

    No matter what kind of academic paper you need and how urgent you need it, you are welcome to choose your academic level and the type of your paper at an affordable price. We take care of all your paper needs and give a 24/7 customer care support system.


    Admission Essays & Business Writing Help

    An admission essay is an essay or other written statement by a candidate, often a potential student enrolling in a college, university, or graduate school. You can be rest assurred that through our service we will write the best admission essay for you.


    Editing Support

    Our academic writers and editors make the necessary changes to your paper so that it is polished. We also format your document by correctly quoting the sources and creating reference lists in the formats APA, Harvard, MLA, Chicago / Turabian.


    Revision Support

    If you think your paper could be improved, you can request a review. In this case, your paper will be checked by the writer or assigned to an editor. You can use this option as many times as you see fit. This is free because we want you to be completely satisfied with the service offered.

    Are you looking for Assignment Help save 20% with this code BIXBY