YAPAY SİNİR AĞLARININ OTOMATİK OLARAK FPGA ÇİPİNE UYGULANMASI İÇİN OTOMATİK DENETLEYİCİ TASARIM ARACI

Yapay Sinir Ağları (YSA), insan beynindeki sinir hücrelerini ve bunların oluşturduğu sinir ağlarını örnek alarak oluşturulmuş matematiksel modellerdir. YSA’lar, paralel dağıtılmış veri işlemeye ihtiyaç duyduklarından dolayı yazılımın yetersiz kaldığı durumlarda donanım olarak gerçeklenirler. FPGA (Field Programmable Gate Arrays) çipleri, YSA’ları donanım olarak gerçeklemede paralel işlem yapabilme ve tekrar programlanabilme özelliklerinden dolayı en uygun seçenektir. Fakat bu gerçekleme işlemlerinin sorunsuz ve verimli bir şekilde yapılabilmesi için uzman gereksinimine ihtiyaç vardır. İnsan tarafından yapılan tasarımlar ve bunların gerçeklenmesi her zaman için hataya açıktır ve muhtemel hatalar neticesinde tasarımın en başına dönülmesine neden olmaktadır. Bu çalışmada, daha önceden geliştirilen FPGA tabanlı otomatik YSA tasarım sisteminin bir parçası olarak ANNCONT (Artifical Neural Network CONTroller Tasarım Aracı) geliştirilmiştir. Bu sistem içinde ANNCONT, veri yolu tasarlanmış YSA için otomatik olarak denetleyici tasarımını yapmakta ve tasarladığı denetleyiciyi veri yolu ile birleştirerek YSA sistemini üretmektedir. ANNCONT çeşitli test durumları ile test edilmiş ve istenen YSA’lar için çok kısa bir sürede, hatasız bir şekilde YSA denetleyicilerini ve sistemlerini tasarladığı gözlenmiştir. ANNCONT sayesinde FPGA üzerinde YSA tasarım ve gerçekleme süreci kısalmış, uzman gereksinimi en aza inmiştir. Ayrıca ANNCONT hatasız kod ürettiğinden hata ayıklama süreci ortadan kalkmıştır.

A CONTROLLER DESIGN TOOL DEVELOPMENT FOR AUTOMATICALLY MAPPING ARTIFICIAL NEURAL NETWORKS ONTO FPGAS

Artificial Neural Networks (ANNs) are the mathematical models which are based on neurons (brain cells) and the network of the neurons. Since ANNs require parallel distributed calculations, they usually are implemented on hardware when software implementations do not provide sufficient performance. Field Programmable Gate Array (FPGAs) chips are the best implementation option for ANNs due to their parallel processing and reconfiguration ability. On the other hand, implementing ANNs on FPGAs is a time consuming process and requires expert personal. Design and implementations made by humans are error prone and errors make the designers go back and reconsider their design from the beginning. In this study, ANNCONT has been developed as a part of a beforehand developed FPGA based automatic ANN design system. In this system, ANNCONT is responsible for designing a controller for a given ANN data-path and forming an ANN system by integrating this controller with the given data-path. ANNCONT has been tested with several test cases. Our observations show that it is able to design controllers and generate VHDL code for both the controller and the ANN system in less than a second without any errors in the code. Using ANNCONT, design and implementation processes can be shortened in terms of time, and expert requirement is minimized. Moreover, since ANNCONT produces error free code, debugging stage is eliminated.

___

  • J. E. Hall, Guyton Tıbbi Fizyoloji, İstanbul: Nobel Tıp Kitabevi, 2013.
  • Ç. Elmas, Yapay Zeka Uygulamaları, Ankara: Seçkin Yayıncılık, 2007.
  • N. Yılmaz, Sahada Programlamalı Kapı Dizileri (Fpga) Üzerinde Bir Ysa’nın
  • Tasarlanması Ve Donanım Olarak Gerçekleştirilmesi, Konya: Selçuk Üniversitesi, 2008.
  • S. Uzun, XC95XX CPLD’ sinin İncelenmesi ve Programlama Kartı Tasarımı, Ankara: Gazi Üniversitesi, 2008, pp. 32-34.
  • M. A. Çavuşlu, C. Karakuzu, S. Şahin ve F. Karakaya, Yapay Sinir Ağı Eğitiminin IEEE
  • Kayan Noktalı Sayı Formatı İle FGPA Tabanlı Gerçeklenmesi, GOMSİS, İstanbul, 2008.
  • S. Acar, Eliptik Eğri Kriptografisinde Skaler çarpma bloğunun VHDL ile Tasarımı, İstanbul: İstanbul Teknik Üniversitesi, 2005.
  • İ. H. Topçu, Sahada Programlanabilir Kapı Dizileri Kullanılarak Sayısal Tasarım Kartı Gerçeklenmesi,
  • İstanbul: İstanbul Teknik Üniversitesi, 2002.
  • E. Öztürk, Fpga Kullanarak 16 Bitlik Mikroişlemci Tasarımı, İstanbul: İstanbul Teknik Üniversitesi, 2010.
  • K. N. Sarıtekin, Yapay Sinir Ağlarının Otomatik Olarak Fpga’ya Uygulanması İçin Veri
  • Yolu Tasarım Aracı, Düzce: Düzce Üniversitesi, 2011.
  • Q. N. Le ve J.-W. Jeon, Neural-Network-Based Low-Speed-Damping Controller for Stepper Motor With an FPGA, IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS,, cilt 9, no. 57, 2010.
  • A. Gomperts, A. Ukil, S. Member, IEEE ve F. Zurfluh, Development and Implementation of Parameterized FPGA-Based General Purpose Neural Networks for Online Applications, IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, cilt 1, no. 7, 2011.
  • İ. Şahin ve İ. Koyuncu, Design and Implementation of Neural Networks Neurons with
  • RadBas, LogSig and TanSig Function on FPGA, Elektronika Ir Elektrotechnika, cilt 4, pp. 51-54, 2012.
  • İ. Şahin, A Compilation Tool for Automated Mapping of Algorithms onto FPGA Based
  • Custom Computing Machines, Raleigh-USA: NC State University, 2002.
  • L. Reis, L. Aguiar, D. Baptista ve F. Morgado-Dias, A Software Tool for Automatic Generation of Neural Hardware, The International Arab Journal of Information Technology, cilt 3, no. 11, 2014.
  • İ. Şahin ve A. Akkaya, ANNDES : Bir Yapay Sinir Ağı Tasarım ve Eğitim Yazılımı, 5th
  • International Computer & Instructional Technologies Symposium , ELAZIĞ-, 2011.
  • G. Temür, Yapay Sinir Ağlarının Otomatik Olarak Fpga’ya Uygulanması İçin Denetleyici Tasarım Aracı, Düzce: Düzce Üniversitesi, 2013.