Bu
çalışmada, bir FPGA geliştirme ve eğitim kiti üzerinde tam gömülü olarak çalışan
bir Tetris oyun kodu gerçeklemesi yapılmıştır. Bunun için, FPGA kiti üzerinde
bağımsız olarak çalışan, VHDL donanım tanımlama dilinde orijinal bir Tetris
oyun kodu tasarlanmıştır. Bu tasarımın özgün yanı, şimdiye kadar bu konuda
yapılmış birçok çalışmadan üstün olarak, tasarlanan kodun veri tutma işlemi
için herhangi bir SRAM modülü kullanmamasıdır. Kodun yazımında
karo-haritalamalı şema denilen, bir grup pikselin tamamını bir karo olarak
tanımlayan bir haritalama kullanılmaktadır. Bu şema ile, ilgili karo içindeki
piksellerin tamamı için 1-bit bilginin tutulması yeterli olduğundan kod
tasarımı oldukça kolaylaşmakta ve aynı zamanda kodun hızlı çalışması sağlanmaktadır.
Oyun kodu VHDL donanım tanımlama dilinde yazılmıştır. Sistem olarak Altera DE0
geliştirme ve eğitim kiti kullanılmıştır ancak yazılan kodda yalnız standart
VHDL fonksiyonları kullanıldığından kod diğer FPGA kitleri üzerinde de
çalışabilmektedir.
In this paper, a
Tetris game code which runs on an FPGA development and education board is
synthesized. To this end, an original Tetris game code that works solely on the
FPGA board is designed in VHDL hardware description language. The novelty of
this design lies in the fact that the Tetris code does not use any SRAM modules
for storage unlike other embedded Tetris implementations published to date.
What is more, the code uses a tile-mapped scheme in which the code groups
certain pixels as a tile. Thus, a 1-bit register is enough for the current
value of all the pixels that fall in the tile which improves the speed of the
code and simplifies the design procedure. The code is written using VHDL
hardware description language. Though Altera DE0 development and education
board is used for the implementation, thanks to the usage of only the standard
VHDL functions, the code can run on any other FPGA boards.
Primary Language | English |
---|---|
Subjects | Electrical Engineering |
Journal Section | Electrical and Electronics Engineering |
Authors | |
Publication Date | January 30, 2020 |
Submission Date | February 5, 2019 |
Acceptance Date | December 27, 2019 |
Published in Issue | Year 2020 Volume: 9 Issue: 1 |