FPGA Nedir? FPGA Teknolojisi
Bu yazımızda paralel çalışma kabiliyetine sahip, son teknoloji geliştirme kartları olan FPGA’leri yakından inceledik. FPGA nedir ve FPGA programlama konularına bu yazımızdan ulaşabilirsiniz.
14.09.2020 tarihli yazı 78387 kez okunmuştur.
FPGA Nedir?
FPGA (Field Programmable Gate Arrays), “Alanda Programlanabilir Kapı Dizileri” anlamına gelen yarı iletken teknolojisine sahip cihazlardır.Daha temel ve göz korkutucu olmayan bir tanım yapacak olursak, kullanıcının bir veya daha fazla mantıksal işlemi gerçekleştirmek için programlayabileceği donanım devresi olduğunu söyleyebiliriz.
Bir adım daha ileri gidecek olursak, FPGA’ler bir yonga üzerindeki bir dizi entegre(IC) devre diyebiliriz. Bu entegre devre dizileri, tasarımcının üretim süreci tamamlandıktan sonra da yapılandırabileceği bir entegre devre çeşididir. Programlanabilir mantık kapıları, bellek veya diğer öğelerden meydana gelmiştir. Ayrıca en önemli ve ayırt edici özelliği olarak pararel işlem yapabilme kabiliyetinden söz edebiliriz.
Bir adım daha ileri gidecek olursak, FPGA’ler bir yonga üzerindeki bir dizi entegre(IC) devre diyebiliriz. Bu entegre devre dizileri, tasarımcının üretim süreci tamamlandıktan sonra da yapılandırabileceği bir entegre devre çeşididir. Programlanabilir mantık kapıları, bellek veya diğer öğelerden meydana gelmiştir. Ayrıca en önemli ve ayırt edici özelliği olarak pararel işlem yapabilme kabiliyetinden söz edebiliriz.
FPGA vs Mikrodenetleyici
Mikrodenetleyicilerin modern elektronik tasarımda baskın bir bileşen haline geldiği konusunda hemfikir olabiliriz. Ucuzdurlar ve çok yönlüdürler ve günümüzde genellikle bir kişinin elektronik dünyasına ilk girişi olarak hizmet ederler. Aşina olduğumuz bileşenleri kullanmaya devam etmemiz doğaldır ve mikrodenetleyiciler gittikçe güçlendikçe, tasarım zorluklarımıza alternatif çözümler düşünmeye gittikçe daha az ihtiyaç duyulmaktadır. Bununla birlikte, bir mikro denetleyici bir işlemci etrafında oluşturulur ve işlemciler, tanınması ve bazı durumlarda üstesinden gelinmesi gereken temel sınırlamalarla gelir.
Öyleyse, bir mühendis bir mikro denetleyici üzerinden bir FPGA'ya ne zaman ulaşır? Cevap, yazılım ve donanım arasında gelir.
Bir işlemci, talimatları sıralı bir şekilde uygulayarak görevlerini yerine getirir. Bu, işlemcinin işlemlerinin doğası gereği sınırlandırıldığı anlamına gelir: istenen işlevsellik, mevcut talimatlara uyarlanmalıdır ve çoğu durumda, birden fazla işlem görevini aynı anda gerçekleştirmek mümkün değildir. İyi haber: eğer FPGA kullanıyorsanız bu mümkündür!
Öyleyse, bir mühendis bir mikro denetleyici üzerinden bir FPGA'ya ne zaman ulaşır? Cevap, yazılım ve donanım arasında gelir.
Bir işlemci, talimatları sıralı bir şekilde uygulayarak görevlerini yerine getirir. Bu, işlemcinin işlemlerinin doğası gereği sınırlandırıldığı anlamına gelir: istenen işlevsellik, mevcut talimatlara uyarlanmalıdır ve çoğu durumda, birden fazla işlem görevini aynı anda gerçekleştirmek mümkün değildir. İyi haber: eğer FPGA kullanıyorsanız bu mümkündür!
►İlginizi Çekebilir: İşlemci Önbelleği Nedir? Nasıl Çalışır? Nasıl Tasarlanmalıdır?
Şekil 1: Bir mikro denetleyici, bir işlemci etrafında oluşturulur ve bir işlemci bir CPU etrafında oluşturulur ve bir CPU, her seferinde bir işlem gerçekleştirir.
Komut seti oldukça çok yönlü olacak şekilde tasarlanmıştır ve günümüzde talimatlar çok yüksek frekanslarda yürütülebilir; ancak bu özellikler, dijital tasarıma yazılım tabanlı bir yaklaşımın dezavantajlarını ortadan kaldırmaz.
Alternatif, donanım tabanlı bir yaklaşımdır. Her yeni tasarım, sistemin gerektirdiği tam işlevselliği uygulayan bir dijital IC etrafında inşa edilebilseydi son derece kullanışlı olurdu: yazılım yazmaya gerek yok, talimat seti kısıtlamaları yok, işleme gecikmeleri yok, sadece giriş pinlerine sahip tek bir IC , çıkış pinleri ve gerekli işlemlere tam olarak karşılık gelen dijital devre. Bu metodoloji, her bir kart için bir ASIC (uygulamaya özel entegre devre) tasarlamayı içerdiğinden, tarifin ötesinde pratik değildir. Ancak, bu metodolojiyi FPGA'lar kullanarak tahmin edebiliriz .
Alan Programlanabilir Kapı Dizisi Nedir?
İyi bir isim gayet bilgilendirici olabilir ve "alanla programlanabilir kapı dizisi" nin gayet iyi bir isim olduğunu düşünürdüm. Bir FPGA bir dizi mantık kapılarıdır (iyi, bir nevi - aşağıya bakınız) ve onu tasarlayan insanların aksine cihazın kullanıcısı tarafından bu dizi sahada programlanabilir (aslında "yapılandırılabilir" daha uygun bir kelime olabilir) . Bu temel özelliklere daha yakından bakalım.
Mantık kapıları (AND, OR, XOR, vb.), Dijital devrenin temel yapı taşlarıdır. O halde, oldukça yapılandırılabilir olması (yani "sahada programlanabilir") amaçlanan bir dijital cihazın, özelleştirilebilir bir şekilde birbirine bağlanabilen çok sayıda kapıdan oluşur.
Bununla birlikte, bir FPGA, tek tek Boole kapılarının geniş bir koleksiyonu değildir. Bu, yapılandırılabilir mantık işlevselliği sağlamanın çok yetersiz bir yolu olacaktır çünkü ortak işlemlerin sabit modüller olarak çok daha verimli bir şekilde uygulanabileceği gerçeğinden yararlanmayacaktır. Aynı ilke, ayrık dijital IC'lerin dünyasında da geçerlidir. AND kapılarından, OR kapılarından vb. Oluşan IC'ler satın alabilirsiniz - ancak tek tek kapılardan bir vardiya kaydı oluşturmak istemezsiniz. Bunun yerine, bir kaydırma yazmacı IC satın alırsınız.
► İlginizi Çekebilir: ASIC ve FPGA Farkları Nelerdir?
Öyleyse bir FPGA, bir dizi kapıdan çok daha fazlasıdır. Ortak işlevleri verimli bir şekilde uygulama kabiliyeti olan ve aynı zamanda çok yüksek düzeyde esneklik sunan, dikkatlice tasarlanmış ve birbirine bağlı dijital alt devreler dizisidir. Dijital alt devreler, yapılandırılabilir mantık blokları (CLB'ler) olarak adlandırılır ve FPGA'nın programlanabilir mantık kabiliyetinin temelini oluştururlar.
Esnek İşlem Kabiliyeti
►FPGA’in işlevi, aygıtın her açılışında değişebilir. Bu nedenle, bir tasarım mühendisi değişiklik yapmak istediğinde, cihaza yeni bir konfigürasyon dosyası indirip değişikliği deneyebilir.
►Çoğu zaman, pahalı PC kartı ile değişiklikler yapmadan FPGA'da değişiklikler yapılabilir.
►Çoğu zaman, pahalı PC kartı ile değişiklikler yapmadan FPGA'da değişiklikler yapılabilir.
►ASSP'ler ve ASIC'lerin, pahalı ve çok zaman isteyen sabit donanım “işlevselliğine” sahiptir.
Hızlı Sonuç
Ürünleri daha hızlı pazara sunabilirsiniz ve / veya sistem performansınızı arttırırsınız.
►FPGA'ler, ASIC'lere göre (aylar süren üretim döngüleri gerektiren) "kullanıma hazır" olarak satılır.
►FPGA'ler, ASIC'lere göre (aylar süren üretim döngüleri gerektiren) "kullanıma hazır" olarak satılır.
►FPGA esnekliği nedeniyle orijinal ekipman üreticileri, tasarım çalışır ve test edilir edilmez sistemleri sevk edebilme imkanına sahiptir.
►FPGA'lar, CPU'lara yüksüz(off-load) ve hızlandırma işlevleri kazandırarak tüm sistem performansını etkin bir şekilde hızlandırırlar.
►FPGA'lar, CPU'lara yüksüz(off-load) ve hızlandırma işlevleri kazandırarak tüm sistem performansını etkin bir şekilde hızlandırırlar.
Entegrasyon
Günümüzün FPGA'ları, kalıp üstü(on-die) işlemciler, 28 Gbps (veya daha hızlı) alıcı-verici I/O'lari, RAM blokları, DSP motorları ve daha fazlasını içerir. FPGA'daki daha fazla özellik, devre kartında daha az cihaz anlamına gelir ve bu da cihaz arızalarının sayısını azaltır dolayısıyla güvenilirliği de artırır.
Maliyet
Maliyet
►ASIC'ler birim başına eşdeğer olan bir tane FPGA'dan daha ucuza mal olabilirken, bunları oluşturmak için tekrar yapılması gerekmeyen bir masraf (NRE), pahalı yazılım araçları, özel tasarım ekipleri ve uzun üretim döngüleri gerektirir.
►Intel FPGA'lar, karttaki elektronik cihazlardan birinin kullanım ömrü sona erdiğinde orijinal ekipman üreticisi, üretim ekipmanını yeniden tasarlama ve yeniden yetkilendirmesinin maliyetini ortadan kaldırır. Uzun kullanım ömrüne (15 yıl ya da daha fazla) sahiptir.
Şekil 2 : Devrenin osiloskop, mantık analizörü, spektrum analizörü vb. işlevselliklerini sağlamak üzere yeniden yapılandırılmasını sağlamak için FPGA kullanılan bir PCB
►Intel FPGA'lar, uzun kullanım ömrünü (15 yıl veya daha fazla) destekler.
►FPGA'lar üretimde oluşabilecek riskleri azaltır, prototip sistemlerin saha denemeleri için müşterilere gönderilmesine izin verir ve seri üretime geçmeden önce hızlı bir şekilde değişiklik yapma yeteneği sağlarlar.
Kaynak:
► allaboutcircuits.com
► intel
► digilent
YORUMLAR
Aktif etkinlik bulunmamaktadır.
- Dünyanın En Görkemli 10 Güneş Tarlası
- Dünyanın En Büyük 10 Makinesi
- 2020’nin En İyi 10 Kişisel Robotu
- Programlamaya Erken Yaşta Başlayan 7 Ünlü Bilgisayar Programcısı
- Üretimin Geleceğinde Etkili Olacak 10 Beceri
- Olağan Üstü Tasarıma Sahip 5 Köprü
- Dünyanın En İyi Bilim ve Teknoloji Müzeleri
- En İyi 5 Tıbbi Robot
- Dünyanın En Zengin 10 Mühendisi
- Üretim için 6 Fabrikasyon İşlemi
- Nasıl Dönüşür I Elektrik 4.0
- Nasıl Dönüşür I Fosil Yakıt
- Nasıl Dönüşür I Kompost
- Sigma DIN Rayı Çözümleri: Ürün Portföyü, Teknik Özellikler ve Kullanım Alanları
- Denizcilik Endüstri Uygulamaları ve Servis Bakım Süreçleri
- DrivePro Yaşam Döngüsü Hizmetleri
- Batarya Testinin Temelleri
- Enerji Yönetiminde Ölçümün Rolü: Verimliliğe Giden Yol
- HVAC Sistemlerinde Kullanılan EC Fan, Sürücü ve EC+ Fan Teknolojisi
- Su İşleme, Dağıtım ve Atık Su Yönetim Tesislerinde Sürücü Kullanımı
ANKET