DOC PREVIEW
MIT 6 111 - Study Notes

This preview shows page 1-2-3-4-5-6-7-49-50-51-52-53-54-55-98-99-100-101-102-103-104 out of 104 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 104 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

FPGA videogame 6.111 final project report Telmo Luis Correa Junior2 Index Index .................................................................................................................................2 List of figures ....................................................................................................................3 List of tables...................................................................................................................... 4 Introduction .......................................................................................................................5 Project Design ...................................................................................................................6 Design tools................................................................................................................... 6 Design overview ............................................................................................................7 Output........................................................................................................................7 GPU communication..................................................................................................9 GPU submodules...................................................................................................... 10 Hardware protocols...................................................................................................... 12 CPU to GPU ............................................................................................................12 Blob manager to blob............................................................................................... 17 Feedback ......................................................................................................................... 18 References ....................................................................................................................... 19 Appendix A: Verilog files................................................................................................ 20 final-project.v .............................................................................................................. 20 vga.v............................................................................................................................ 34 beta2.v ......................................................................................................................... 35 coordinate_generator.v................................................................................................. 41 debounce.v................................................................................................................... 42 blob.v........................................................................................................................... 42 blob_manager.v............................................................................................................ 48 sprite_manager.v.......................................................................................................... 52 pixel_tree.v.................................................................................................................. 59 pixel_combinator.v ...................................................................................................... 66 interrupt_generator.v.................................................................................................... 68 fifo.v............................................................................................................................ 71 Appendix B: Bsim macros ............................................................................................... 73 beta.uasm..................................................................................................................... 73 ram.uasm ..................................................................................................................... 84 Appendix C: Other scripts.............................................................................................. 100 ImageConverter.java.................................................................................................. 100 betamem.py ............................................................................................................... 101 Appendix D: ROM Sprites............................................................................................. 1043 List of figures Fig. 1: System block diagram ............................................................................................ 8 Fig. 2: VGA horizontal sync ............................................................................................. 9 Fig. 3: VGA vertical sync ................................................................................................. 9 Fig. 4: GPU block diagram .............................................................................................. 114 List of tables Table 1: VGA timings........................................................................................................ 9 Table 2: Blob states ......................................................................................................... 12 Table 3: Blob pixel filters ................................................................................................ 16 Table 4: command_bus protocol ..................................................................................... 185 Introduction The aim of this project was to develop a gaming system on the FPGA easily reconfigurable; by switching small component parts on the system, it could be used to play another game. Two apparently opposing goals were set: to avoid hardwiring game logic into the hardware, and to use the massive parallel processing power available on the labkit to speed up the game, making this project have an interesting digital design aspect. The compromise was achieved by designing the game logic itself to be controlled by a microprocessor, but letting the graphics processing being controlled by hardware, in the form of a somewhat primitive graphics processing unit. Diverse factors, such as availability, familiarity and available technical support, the microprocessor architeture chosen was the Beta, a processor used for an introductory computational structures class at MIT, 6.004. The GPU design


View Full Document

MIT 6 111 - Study Notes

Documents in this Course
Verilog

Verilog

21 pages

Video

Video

28 pages

Bass Hero

Bass Hero

17 pages

Deep 3D

Deep 3D

12 pages

SERPENT

SERPENT

8 pages

Vertex

Vertex

92 pages

Vertex

Vertex

4 pages

Snapshot

Snapshot

15 pages

Memories

Memories

42 pages

Deep3D

Deep3D

60 pages

Design

Design

2 pages

Frogger

Frogger

11 pages

SkiFree

SkiFree

81 pages

Vertex

Vertex

10 pages

EXPRESS

EXPRESS

2 pages

Labyrinth

Labyrinth

81 pages

Load more
Download Study Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Study Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Study Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?