FPGA ile özel amaçlı bir giriş/çıkış kartı emülatörü
A special purpose input/output card emulator by using FPGA
Yazar: SEZEN BAL
Danışman: DOÇ. DR. HAYRİYE KORKMAZ
Marmara Üniversitesi / Fen Bilimleri Enstitüsü / Elektronik-Bilgisayar Eğitimi Ana Bilim Dalı
Derece: Doktora, 2014
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control ; Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering
Dizin: FPGA = FPGA

Özet:
FPGA, programlanabilir mantık blokları ve bu bloklar arasındaki ara bağlantılardan oluşan sayısal tümleşik devrelerdir. Tasarımcının ihtiyaç duyduğu mantık işlevlerini gerçekleştirme amacına yönelik olarak üretilmiştir. 
FPGA tümdevresinin günümüzde birçok kullanım alanı mevcuttur. Bunlar sayısal sinyal işleme, gömülü mikroişlemci, savunma sistemleri, havacılık ve uzay teknolojileri, biyoenformatik, taşınabilir uygulamalar, eğitim v.b. şeklinde sıralanabilir.  
Günümüzde hızla gelişen teknolojiye paralel olarak kullanılan birçok mevcut donanım güncelliğini hızla yitirebilmektedir. Diğer taraftan örneğin bir fabrikada üretimde kullanılan eski bir makinenin üzerinde bulunan bir mikrobilgisayarda meydana gelebilecek bir hasar karşısında bozulan bir donanım parçasının veya kartın günümüz şartlarında temin edilmesi de oldukça zor olmaktadır. 
Böyle eski ama hala çalışan donanımları kullanan işletmeler, sistemlerinin çok uzun süre ayakta kalmasını ve sürdürülebilir olmasını istemektedirler. Çünkü sistem üzerinde yapılacak bir değişikliğin maliyeti yüksek olmakla beraber,  uygun parçanın da temini bazen imkânsız olabilmektedir. Bu sorun için olası bir çözüm olarak FPGA kullanarak gerekli donanımın emülasyonunun gerçekleştirilmesi önerilebilir. Ayrıca böylelikle ileride ihtiyaç duyulacak farklı özellikler için de sistemi güncelleyebilmek ve eklemeler yapmak mümkün kılınabilmektedir.   
Bu çalışmada, Battenfeld Şişirme Plastik üretim makinesi otomasyon sisteminde kullanılan Schleicher PLC ünitesinde bulunan Giriş/Çıkış kartının emülasyonunun Xilinx Spartan XC3S500E FPGA tümdevresi kullanılarak gerçekleştirilmesi ele alınmıştır. 
Çalışma boyunca çeşitli aşamalarda farklı yazılımlar kullanılmıştır: Aracıbirim kartı tasarımı ve üretimi aşamasında Altium Designer 10, Gömülü sistem programlama,  sentezleme, doğrulama, yükleme aşamalarında Xilinx ISE Design Suite platformu ile Verilog donanım tanımlama dili tercih edilmiştir. Xilinx firması tarafından geliştirilen Chipscope yazılımı kullanılarak FPGA içerisinde bir lojik analizör bloğu oluşturulmuştur. Bu blok sayesinde FPGA üzerindeki işaretler sistem çalışırken bilgisayar ekranında gözlemlenmiştir.
Doğrulama sürecinde, Agilent 1683A Lojik analizör kullanılarak eski orijinal karttan alınan sinyaller ile FPGA ile gerçekleştirilen yeni karttan alınan sinyal sonuçları iki ayrı metin dosyasına kaydedilmiş ve sonuçlar birbiriyle karşılaştırıldığında benzer sonuçlar elde edildiği gözlemlenmiştir.

Abstract:
FPGAs are digital integrated circuits which consist of programmable logic blocks and interconnections of those blocks. They are suitably produced for the purpose of the designers' needs.
FPGAs have so many fields of application today. These are as follows: digital signal processing, embedded microprocessor, defence systems, aviation and space technologies, bioinformatics, portable applications, training, etc. 
Nowadays, many existing hardware can lose their actuality very quickly in parallel with rapidly growing technology. On the other hand, it would be very difficult to provide a hardware component or card which is damaged. And suppose that this hardware is mounted on an old machine but still working properly.
Such companies want their systems to survive long periods of time and wish to be sustainable. Although high cost of an update or replacements of any part of the obsolete system, sometimes it may be impossible to supply the appropriate part of the machine. As a possible solution to this problem, an FPGA based emulation of the hardware can be recommended. Additionally, so many other features that will be needed in the future to update or reconfigure the system can be made possible. 
In this study, emulation of the Schleicher PLC Input/Output board mounted on the Battenfeld Plastic Blow Molding machine is discussed by using Xilinx Spartan XC3S500 FPGA integrated circuit. 
During the study, different software tools are used at various stages: Altium Designer 10 to design and manufacturing steps of the interposer board; Xilinx ISE Design Suite platform and Verilog hardware description language for embedded system programming, synthesis, verification, and loading stages were preferred.  A logic analyser block is created in the circuit of FPGA by using ChipScope software developed by Xilinx. Through this block, the signals on the FPGA's pins were observed on the computer screen while the system is running.
In the verification process, acquired two signals from Agilent 1683 Logic Analyser through the old original card and from new implemented FPGA card are saved into two separate text files. When the results were compared, it was observed that similar results are obtained.