FPGA

FPGA(Field Programme Gate Array),kullanıcı tarafından yapılması istenen işleme göre iç yapısı değiştirilebilen donanımı programlanabilir entegrelerdir.Bu yarı iletken yapının içerisinde konfigüre edilebilir matrix yapıda lojik bloglar bulunmaktadır.

fpga

FPGA’yi istediğimiz gibi konfigüre edebiliriz.Mikrodenetleyiciler sizin için önceden konfigüre edilmiştir.Biz sadece kodumuzu yazarız.Bu kodumuzu derleyicimizde derleyip hex dosyası haline getirip denetleyicimize yükleriz.Bu flash hafızaya atılarak taki biz silene kadar orada kalıyor.İşlemcimiz yazılım üzerinden çalışıyor.FPGA ise çok farklı,biz sayısal devreyi tasarlıyoruz.Yazılım üzerinden çalışan bir işlemci olmuyor.FPGA ile sıradan bir lojik kapıda yapabiliriz,çok çekirdekli bir işlemcide.Kendi tasarımımızı HDL(Hardware Description Language) ile tasarlayabiliriz. FPGA,konfigürasyonu RAM veya Flash hafızada depolanmaz.Buda elektrik kesilince konfigürasyon kaybedeğimiz anlamına geliyor.Buda FPGA her enerji verildiğinde yeniden konfigüre edilmesi gerektiği anlamına geliyor.Biz dışarıda ek mikroişlemci kullanırız.Bu işlemci ,Flash hafızasından konfigüre bitlerini FPGA’ye yollar ve FPGA konfigüre edilmiş olur.Gelişmiş geliştirme kartlarında konfigürasyon işlemcisi hazır bulunur.Otomatik konfigüre işlemini bu işlemci içerisinde bulunan flash bellek aracılığıyla yapar.

FPGA ile işlemcide tasarlayabiliriz.İşlemcimizi hazırladıkdan sonra bu işlemci üzerinde yazılımda çalıştırabiliriz.Digital devre tasarlayan,Intel ve nVidia gibi firmalar prototipi FPGA ile hazırlar.En son bu tasarımı üretime koyarlar.FPGA,PLD ile benzerdir.Ama PLD yüzlerce lojik kapı ile sınırlı iken,FPGA binlercesini desteklemektedir.Günümüzde FPGA’lar rahatlıkla 500 MHZ perfonmas seviyesine çıkabilmektedir.

Paralel işlem yapabilme kapasitesi  sebebiyle FPGA’ler tercih sebebidir.Bu özellik sayesinde farklı işlemleri aynı anda yapabilir.Bu özellik FPGA’yi işlemcilerden üstün kılar.Çünkü İşlemcilerde,işlemler sıralı şekilde ilerler.Yoğun işlem yapılması gereken yerlerlerde FPGA mantıklıdır,ama rutin işlemlerde tercihimiz klasik işlemciler olmalıdır.FPGA’nin diğer bir avantajı içine işlemci gömülebilmesidir.Bu işlemci ile kendi tasarladığımız fonksiyonu birleştirebiliriz.

Programlamak için Xilinx veya Altera firmalarının FPGA’larını seçebiliriz.Xilinx için derleyici program olarak ISE,Altera için derleyici program olarak Quartus kullanılmaktadır.Xilinx firması,FPGA pazarının %50’den fazlasına hakimdir.

altera-xilinx

FPGA’yı programlamak için iki yöntem vardır.

-Grafik Tasarım; Grafik tasarımda,FPGA’nin derleyici kütüphanesinde bulunan lojik kapılar kullanılır.HDL ile grafik tasarım birlikte kullanılabilir.HDL’de hazırlanan yapı,şematiğe dönüştürülerek işlem grafik tasarımla devam edilebilir.

-HDL(Hardware Descpription Language-Donanım Tanımlama Dili);VHDL ile Verilog en yaygın kullanılan iki HDL türüdür

Bu yazı hakkında ne düşünüyorsun ?
  • Faydalı 
  • Müthiş 
  • Gereksiz 
  • Normal 
Sidar ATABEY

About Sidar ATABEY

Elektrik-Elektronik Mühendisi. Makine Mühendisliğinde yan dal programını tamamladı. 1 sene boyunca Erasmus Programı kapsamında Polonya Silesian University of Technology'de eğitim gördü.

View all posts by Sidar ATABEY →