Araştırma Makalesi
BibTex RIS Kaynak Göster

VHDL İLE TAM GÖMÜLÜ BİR TETRİS OYUNU GERÇEKLEŞTİRMESİ

Yıl 2020, Cilt: 9 Sayı: 1, 128 - 136, 30.01.2020
https://doi.org/10.28948/ngumuh.522790

Öz

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.

Kaynakça

  • [1] HUTCHINGS, B., VILLASENOR, J., “The flexibility of configurable computing”. IEEE Signal Processing Magazine, 15, 67-84, 1998.
  • [2] BENEDETTI, A., PERONA, P., “Real-time 2-D feature detection on a reconfigurable computer”, Proc IEEE Comput Soc Conf Comput Vis Pattern Recognit,, 586-593, Santa Barbara, CA, USA, 1998.
  • [3] BOSI, B., BOIS, G., SAVARIA, Y., “Reconfigurable pipelined 2-D convolvers for fast digital signal processing”, IEEE Trans VLSI Syst., 7, 299-308, 1999.
  • [4] DIAZ, J., ROS, E., PELAYO, F., ORTIGOSA, E.M., MOTA, S., “FPGA-based real-time optical-flow system”, IEEE Trans Circuits Syst Video Technol, 16(2), 274-279, 2006.
  • [5] DOWNTON, A., CROOKES, D., “Parallel architectures for image processing”, J Electron Commun Eng, 10, 139-151, 1998.
  • [6] CROOKES, D., BENKRID, K., BOURIDANE, A., ALOTAIBI, K., BENKRID, A., “Design and implementation of a high level programming environment for FPGA-based image processing”, IEE Proceedings - Vision, Image and Signal Processing, 147(4), 377-384, 2000.
  • [7] UZUN, I.S., AMIRA, A., BOURIDANE, A., “FPGA implementations of fast Fourier transforms for real-time signal and image processing”, IEE Proceedings - Vision, Image and Signal Processing, 152(3), 283-296, 2005.
  • [8] JIN, S. et al, “FPGA Design and Implementation of a Real-Time Stereo Vision System”, IEEE Trans Circuits Syst Video Technol, 20(1), 15-26, 2010.
  • [9] YOUNG, J.W., MOYERS, J.C., LENOX, M., “FPGA based front-end electronics for a high resolution PET scanner”, IEEE Trans Nucl Sci, 47(4), 1676-1680, 2000.
  • [10] ANDORKO, I., CORCORAN, P.M., BIGIOI, P., “FPGA based stereo imaging system with applications in computer gaming”, International IEEE Consumer Electronics Society's Games Innovations Conference, 239-245, London, UK, 2009.
  • [11] LIU, K., YANG, Y., ZHU, Y., “Tetris game design based on the FPGA”, 2nd International Conference on Consumer Electronics, Communications and Networks (CECNet), 2925-2928, 2012.
  • [12] WATANABE, T. et al, “An FPGA Connect6 Solver with a two-stage pipelined evaluation”, International Conference on Field-Programmable Technology (FPT), New Delhi, India, 2011.
  • [13] VIPIN, K., FAHMY, S.A., “A threat-based Connect6 implementation on FPGA”, International Conference on Field-Programmable Technology (FPT), New Delhi, India, 2011.
  • [14] FUJIMORI, T., WATANABE, M., “Full FPGA game machine”, 2016 IEEE International Conference on Consumer Electronics (ICCE), 431-432, Las Vegas, NV, USA, 2016.
  • [15] YOZA, T. et al, “FPGA Blokus Duo Solver using a massively parallel architecture”, 2013 International Conference on Field-Programmable Technology (FPT), 494-497, Kyoto, Japan, 2013.
  • [16] JAHANSHAHI, A., TARAM, M.K., ESKANDARI, N., “Blokus Duo game on FPGA”, The 17th CSI International Symposium on Computer Architecture & Digital Systems (CADS), 149-152, Tehran, Iran, 2013.
  • [17] FUJIMORI, T. et al, “FPGA Trax Solver based on a neural network design”, International Conference on Field Programmable Technology (FPT), 260-263, Queenstown, New Zealand, 2015.
  • [18] SZABÓ, R., GONTEAN, A., “Pong game on FPGA with CRT or LCD display and push button controls”, Federated Conference on Computer Science and Information Systems (FedCSIS), 729-734, Warsaw, Poland, 2014.
  • [19] ZHANG, G., XIE, M., “Design of visual based-FPGA Ping-Pang game with multi-models”, Second Pacific-Asia Conference on Circuits, Communications and System (PACCS), 31-34 Beijing, China, 2010.
  • [20] AZAR, Y., EPSTEIN, L., “On two dimensional packing”, Algorithm Theory – SWAT’96, Springer Berlin Heidelberg, 321-332. 1996.
  • [21] BREUKELAAR, R., DEMAINE, E., HOHENBERGER, S., HOOGEBOOM, H.J., KOSTERS, W.A., LIBEN-NOWELL, D. “Tetris is hard, even to approximate” J Comput Geom, 14, 41–68, 2004.
  • [22] CASAZZA, P.G., HEINECKE, A., KORNELSON, K., WANG, Y., ZHOU, Z., “Necessary and sufficient conditions to perform spectral Tetris”, Journal of Linear Algebra Applications, 438, 2239-2255, 2013.
  • [23] LANGENHOVEN, L., HEERDEN, W.S., ENGELBRECHT, A.P., “Swarm Tetris: applying particle swarm optimization to Tetris”, IEEE 2010 Congress on Evolutionary Computation, 1-8, Barcelona, Spain, 2010.
  • [24] HOLMES, E.A., JAMES, E.L., COODE-BATE, T., DEEPROSE, C., “Can playing the computer game Tetris reduce the build-up of flashbacks for trauma? A proposal from cognitive science”, J Plos One, 4, 4153, 2009.
  • [25] KENT, S., Ultimate History of Video Games, Three Rivers Press, New York, USA, 2001.
  • [26] TERASIC TECHNOLOGIES, Altera DE0 Development and Education Board User Manual, 2009.
  • [27] CHU, P.P., FPGA Prototyping by VHDL examples, John Wiley & Sons, New-Jersey, USA, 2008.
  • [28] PERRY, D.L., VHDL Programming by Example, McGraw-Hill, New York, USA, 2002.
  • [29] THOMAS, D.B., LUK, W., “FPGA-optimised uniform random number generators using LUTs and shift registers”, IEEE International Conference on Field Programmable Logic and Applications, 77-82, Milano, Italy, 2010.

A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL

Yıl 2020, Cilt: 9 Sayı: 1, 128 - 136, 30.01.2020
https://doi.org/10.28948/ngumuh.522790

Öz

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.

Kaynakça

  • [1] HUTCHINGS, B., VILLASENOR, J., “The flexibility of configurable computing”. IEEE Signal Processing Magazine, 15, 67-84, 1998.
  • [2] BENEDETTI, A., PERONA, P., “Real-time 2-D feature detection on a reconfigurable computer”, Proc IEEE Comput Soc Conf Comput Vis Pattern Recognit,, 586-593, Santa Barbara, CA, USA, 1998.
  • [3] BOSI, B., BOIS, G., SAVARIA, Y., “Reconfigurable pipelined 2-D convolvers for fast digital signal processing”, IEEE Trans VLSI Syst., 7, 299-308, 1999.
  • [4] DIAZ, J., ROS, E., PELAYO, F., ORTIGOSA, E.M., MOTA, S., “FPGA-based real-time optical-flow system”, IEEE Trans Circuits Syst Video Technol, 16(2), 274-279, 2006.
  • [5] DOWNTON, A., CROOKES, D., “Parallel architectures for image processing”, J Electron Commun Eng, 10, 139-151, 1998.
  • [6] CROOKES, D., BENKRID, K., BOURIDANE, A., ALOTAIBI, K., BENKRID, A., “Design and implementation of a high level programming environment for FPGA-based image processing”, IEE Proceedings - Vision, Image and Signal Processing, 147(4), 377-384, 2000.
  • [7] UZUN, I.S., AMIRA, A., BOURIDANE, A., “FPGA implementations of fast Fourier transforms for real-time signal and image processing”, IEE Proceedings - Vision, Image and Signal Processing, 152(3), 283-296, 2005.
  • [8] JIN, S. et al, “FPGA Design and Implementation of a Real-Time Stereo Vision System”, IEEE Trans Circuits Syst Video Technol, 20(1), 15-26, 2010.
  • [9] YOUNG, J.W., MOYERS, J.C., LENOX, M., “FPGA based front-end electronics for a high resolution PET scanner”, IEEE Trans Nucl Sci, 47(4), 1676-1680, 2000.
  • [10] ANDORKO, I., CORCORAN, P.M., BIGIOI, P., “FPGA based stereo imaging system with applications in computer gaming”, International IEEE Consumer Electronics Society's Games Innovations Conference, 239-245, London, UK, 2009.
  • [11] LIU, K., YANG, Y., ZHU, Y., “Tetris game design based on the FPGA”, 2nd International Conference on Consumer Electronics, Communications and Networks (CECNet), 2925-2928, 2012.
  • [12] WATANABE, T. et al, “An FPGA Connect6 Solver with a two-stage pipelined evaluation”, International Conference on Field-Programmable Technology (FPT), New Delhi, India, 2011.
  • [13] VIPIN, K., FAHMY, S.A., “A threat-based Connect6 implementation on FPGA”, International Conference on Field-Programmable Technology (FPT), New Delhi, India, 2011.
  • [14] FUJIMORI, T., WATANABE, M., “Full FPGA game machine”, 2016 IEEE International Conference on Consumer Electronics (ICCE), 431-432, Las Vegas, NV, USA, 2016.
  • [15] YOZA, T. et al, “FPGA Blokus Duo Solver using a massively parallel architecture”, 2013 International Conference on Field-Programmable Technology (FPT), 494-497, Kyoto, Japan, 2013.
  • [16] JAHANSHAHI, A., TARAM, M.K., ESKANDARI, N., “Blokus Duo game on FPGA”, The 17th CSI International Symposium on Computer Architecture & Digital Systems (CADS), 149-152, Tehran, Iran, 2013.
  • [17] FUJIMORI, T. et al, “FPGA Trax Solver based on a neural network design”, International Conference on Field Programmable Technology (FPT), 260-263, Queenstown, New Zealand, 2015.
  • [18] SZABÓ, R., GONTEAN, A., “Pong game on FPGA with CRT or LCD display and push button controls”, Federated Conference on Computer Science and Information Systems (FedCSIS), 729-734, Warsaw, Poland, 2014.
  • [19] ZHANG, G., XIE, M., “Design of visual based-FPGA Ping-Pang game with multi-models”, Second Pacific-Asia Conference on Circuits, Communications and System (PACCS), 31-34 Beijing, China, 2010.
  • [20] AZAR, Y., EPSTEIN, L., “On two dimensional packing”, Algorithm Theory – SWAT’96, Springer Berlin Heidelberg, 321-332. 1996.
  • [21] BREUKELAAR, R., DEMAINE, E., HOHENBERGER, S., HOOGEBOOM, H.J., KOSTERS, W.A., LIBEN-NOWELL, D. “Tetris is hard, even to approximate” J Comput Geom, 14, 41–68, 2004.
  • [22] CASAZZA, P.G., HEINECKE, A., KORNELSON, K., WANG, Y., ZHOU, Z., “Necessary and sufficient conditions to perform spectral Tetris”, Journal of Linear Algebra Applications, 438, 2239-2255, 2013.
  • [23] LANGENHOVEN, L., HEERDEN, W.S., ENGELBRECHT, A.P., “Swarm Tetris: applying particle swarm optimization to Tetris”, IEEE 2010 Congress on Evolutionary Computation, 1-8, Barcelona, Spain, 2010.
  • [24] HOLMES, E.A., JAMES, E.L., COODE-BATE, T., DEEPROSE, C., “Can playing the computer game Tetris reduce the build-up of flashbacks for trauma? A proposal from cognitive science”, J Plos One, 4, 4153, 2009.
  • [25] KENT, S., Ultimate History of Video Games, Three Rivers Press, New York, USA, 2001.
  • [26] TERASIC TECHNOLOGIES, Altera DE0 Development and Education Board User Manual, 2009.
  • [27] CHU, P.P., FPGA Prototyping by VHDL examples, John Wiley & Sons, New-Jersey, USA, 2008.
  • [28] PERRY, D.L., VHDL Programming by Example, McGraw-Hill, New York, USA, 2002.
  • [29] THOMAS, D.B., LUK, W., “FPGA-optimised uniform random number generators using LUTs and shift registers”, IEEE International Conference on Field Programmable Logic and Applications, 77-82, Milano, Italy, 2010.
Toplam 29 adet kaynakça vardır.

Ayrıntılar

Birincil Dil İngilizce
Konular Elektrik Mühendisliği
Bölüm Elektrik Elektronik Mühendisliği
Yazarlar

Sadiye Nergis Tural Polat 0000-0003-4414-0163

Yayımlanma Tarihi 30 Ocak 2020
Gönderilme Tarihi 5 Şubat 2019
Kabul Tarihi 27 Aralık 2019
Yayımlandığı Sayı Yıl 2020 Cilt: 9 Sayı: 1

Kaynak Göster

APA Tural Polat, S. N. (2020). A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL. Niğde Ömer Halisdemir Üniversitesi Mühendislik Bilimleri Dergisi, 9(1), 128-136. https://doi.org/10.28948/ngumuh.522790
AMA Tural Polat SN. A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL. NÖHÜ Müh. Bilim. Derg. Ocak 2020;9(1):128-136. doi:10.28948/ngumuh.522790
Chicago Tural Polat, Sadiye Nergis. “A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL”. Niğde Ömer Halisdemir Üniversitesi Mühendislik Bilimleri Dergisi 9, sy. 1 (Ocak 2020): 128-36. https://doi.org/10.28948/ngumuh.522790.
EndNote Tural Polat SN (01 Ocak 2020) A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL. Niğde Ömer Halisdemir Üniversitesi Mühendislik Bilimleri Dergisi 9 1 128–136.
IEEE S. N. Tural Polat, “A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL”, NÖHÜ Müh. Bilim. Derg., c. 9, sy. 1, ss. 128–136, 2020, doi: 10.28948/ngumuh.522790.
ISNAD Tural Polat, Sadiye Nergis. “A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL”. Niğde Ömer Halisdemir Üniversitesi Mühendislik Bilimleri Dergisi 9/1 (Ocak 2020), 128-136. https://doi.org/10.28948/ngumuh.522790.
JAMA Tural Polat SN. A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL. NÖHÜ Müh. Bilim. Derg. 2020;9:128–136.
MLA Tural Polat, Sadiye Nergis. “A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL”. Niğde Ömer Halisdemir Üniversitesi Mühendislik Bilimleri Dergisi, c. 9, sy. 1, 2020, ss. 128-36, doi:10.28948/ngumuh.522790.
Vancouver Tural Polat SN. A FULLY EMBEDDED TETRIS GAME APPLICATION IN VHDL. NÖHÜ Müh. Bilim. Derg. 2020;9(1):128-36.

 23135