Implementacja gry Pong w układzie programowalnym FPGA

pol Article in Polish DOI:

Wojciech Biduś *, Dominik Dusik *, send Piotr Andrzej Kowalski ** * Koło Naukowe IT przy Katedrze Automatyki i Technik Informacyjnych, Politechnika Krakowska ** Instytut Badań Systemowych, Polska Akademia Nauk

Download Article

Streszczenie

W artykule omówiono implementację gry Pong w układzie FPGA Spartan 3 XC3S200 firmy Xilinx. W trakcie realizacji projektu zastosowano obsługę standardów transmisji danych PS/2, co umożliwiło sterowanie grą za pomocą klawiatury komputerowej. Dzięki zastosowaniu standardu VGA cała rozgrywka wyświetlana jest na standardowym monitorze lub rzutniku multimedialnym. Powyższe zadanie zrealizowano, stosując język opisu sprzętu VHDL.

Słowa kluczowe

FPGA, gry komputerowe, Pong, VHDL

Implementation of Pong game on FPGA chip

Abstract

The main objective in making this project was creating a functional game based on FPGA module, controlled by convenient controller and displayed on popular type of video-output device. The configured FPGA module allows playing simple popular retro game - Pong. It is displayed on VGA-compatible device (a lot of popular PC-displays, projectors) and controlled by standard PS/2 compatible PC keyboard or PCB mounted pushbuttons. The biggest problems in creating our project was generating correct video-output signals, capturing events sent by keyboard and synchronizing control signals with their actions. Parallel computing made all of that possible, working simultaneously without any problems. Game "engine" is really simple and it did not took a lot of lines of code in VHDL to implement it. It actually works just by setting appropriate values to coordinates of game elements (ball and platforms). Game is made for two players. The whole project was made in ISE Design Suite software provided by Xilinx.

Keywords

computer game, FPGA, Pong, VHDL

Bibliography

  1. Girau B., On-chip learning of FPGA-inspired neural nets, “International Joint Conference on Neural Networks”, (Washington, DC 2001), 222-227.
  2. Łuba T. (red.), Rawski M., Tomaszewicz P., Zbierzchowski B., Programowalne Układy Przetwarzania Sygnałów i Informacji, Wydawnictwa Komunikacji i Łączności, Warszawa 2008.
  3. Skahill K., Język VHDL: projektowanie programowalnych układów logicznych, WNT, Warszawa 2004.
  4. Zwoliński M., Projektowanie układów cyfrowych z wykorzystaniem języka VHDL. WKiŁ, Warszawa 2007.
  5. Opis gry Pong, http://pl.wikipedia.org/wiki/Pong (dostęp 10.X.2012).
  6. Spartan-3E FPGA Family: Complete Data Sheet. www.xilinx.com/support/documentation/data_sheets/ds312.pdf (dostęp 10.X.2012).