FPGA Ve CPLD devre yoğunluğunu ve hızını elde etmek için cihazlar oluşturuldu ASIC (Uygulamaya Özel Entegre Devre) ancak programlanabilir cihazlar için daha kısa geri dönüş süresine sahiptir. FPGA ile CPLD arasındaki temel fark, FPGA'nın daha basit ve daha az ara bağlantıya sahip olan CPLD'den daha fazla mantık kaynağına sahip olmasıdır. FPGA ve CPLD'yi ayırırken çoğunlukla iki faktör dikkate alınır. Birincisi mimarileri ve çeşitli mantık fonksiyonlarını nasıl uyguladığıdır. İkincisi, donanımda kullanılan özel yarı iletken teknolojisi.
Bu yazıda aralarındaki farkı öğreneceksiniz. CPLD Ve FPGA . Ancak farklılıkları tartışmadan önce CPLD ve FPGA'yı avantaj ve dezavantajlarıyla birlikte bilmelisiniz.
CPLD nedir?
CPLD için bir kısaltmadır 'Karmaşık Programlanabilir Mantık Cihazları' . Dijital sistemlerin yürütülmesine yardımcı olan entegre bir devredir. Bir CPLD programlanabilir fonksiyonel bloklardan oluşur ve her blokta makrohücreler . CPLD'nin birincil yapı taşları makro hücrelerdir. Fonksiyonel blokların G/Ç'si şu şekilde bağlanır: Küresel Arabağlantı Matrisi (GIM) . Bu ara bağlantı matrisi yeniden yapılandırılabilir çünkü fonksiyonel bloklar arasındaki kontakları değiştirmek imkansızdır. Bu fonksiyonel bloklar bir dizi mantık kapısına eşdeğerdir.
Linux'ta cmd'yi çalıştırın
CPLD'leri tasarlarken programlama tekniğini, I/P yeteneğini ve fonksiyonel blok yeteneklerini dikkate almak önemlidir. Genel olarak CPLD'ler kalıcıdır, kullanımı kolaydır ve ucuzdurlar.
CPLD'ler çeşitli IC paket türlerinde ve mantık ailelerinde gelir. CPLD'lerin besleme voltajı, bekleme akımı, çalışma akımı ve güç dağıtımı da farklıdır. Ayrıca farklı hafıza kapasiteleri ve hafıza desteği seçenekleri de mevcuttur. Bellek genellikle bit veya megabit cinsinden ölçülür ve bellek desteği şunları içerir: ROM'u, RAM'i Ve çift bağlantı noktalı RAM . Ayrıca şunları içerir: FIFO (ilk giren ilk çıkar) Ve LIFO (son giren, son çıkan) hafıza ve CAM (içerik adreslenebilir bellek) .
CPLD'nin bileşenleri
CPLD'nin çeşitli bileşenleri vardır. CPLD'nin bazı ana bileşenleri şunlardır:
Bir CPLD'de, bir fonksiyon bloğu, G/Ç bloklarından, fonksiyon bloklarından ve hatta aynı fonksiyon bloğunun yanıtından gelen girişleri kabul edebilen bir VE düzlemine sahiptir. Bundan sonra terimler OR dizisine eklenir ve büyük bir çoklayıcı kullanılarak seçilir. MUX'un çıkışı bloktan doğrudan veya saatli bir flip-flop aracılığıyla taşınabilir. Bu fonksiyonel blok ayrıca seçilebilir bir özel VEYA, bir ana sıfırlama sinyali ve polariteyi çeşitli aşamalarda programlama seçeneği gibi ek mantığa da sahip olabilir.
Giriş/Çıkış blokları CPLD pinlerine uygun voltaj ve akım seviyelerinde sinyal göndermek için kullanılır. Gecikmelerin ortadan kaldırılmasına, cihazın bekleme süresi gereksinimlerinin azaltılmasına ve cihaza ekstra kaynak eklenmesine olanak tanır.
Bir CPLD'nin ara bağlantısı, sinyallerin cihazın bir kısmından diğerine aktarımını yönlendiren, programlanabilir anahtarlardan oluşan geniş bir matristir.
Ayrıca PROM, EPROM, EEPROM ve flash EPROM gibi programlanabilir bileşenleri de kullanır.
CPLD'nin Avantajları ve Dezavantajları
CPLD'nin çeşitli avantajları ve dezavantajları vardır. CPLD'nin bazı temel avantaj ve dezavantajları şunlardır:
Avantajları
- Tasarımı kolaydır.
- Düşük geliştirme maliyetine sahiptir.
- Tahta alanının azaltılmasına yardımcı olur.
- Yüksek güvenilirlik sunar.
Dezavantajları
- Daha karmaşık, programlanabilir bir mantık cihazıdır.
FPGA nedir?
FPGA için bir kısaltmadır 'Alan Programlanabilir Kapı Dizileri' . Programlanabilir ara bağlantılar yoluyla birbirine bağlanan, yapılandırılabilir mantık bloklarından oluşan bir matristen oluşan yarı iletken bir cihazdır. Üretimden sonra bir FPGA, gereksinimleri karşılayacak şekilde yeniden programlanabilir. Mevcut FPGA'ler yaklaşık olarak 330000 lojik bloklar 1100 G/Ç .
Kullanıcılar şunları kullanabilir: Donanım Açıklama Dili (HDL) devreyi tasarlamak ve yapılandırmak. Bundan sonra, AND geçidi gibi basit bir geçidi veya çok çekirdekli işlemci gibi karmaşık bir sistemi çalıştırabilir. Tüm konfigürasyonları ana hafızaya kaydeder. Sonuç olarak, bir elektrik kesintisi tüm bu yapılandırmaları silebilir.
Java türü dönüştürme ve yayınlama
FPGA'nın Bileşenleri
FPGA'nın çeşitli bileşenleri vardır. FPGA'nın bazı ana bileşenleri şunlardır:
Lojik fonksiyonların uygulanmasını sağlar.
Fonksiyonların uygulanmasını sağlar.
Chip bağlantılarını yapmak için kullanılır.
FPGA'nın Avantajları ve Dezavantajları
FPGA'nın çeşitli avantajları ve dezavantajları vardır. FPGA'nın bazı temel avantaj ve dezavantajları şunlardır:
Avantajları
- FPGA IC'lere geniş çapta erişilebilir ve HDL kodu kullanılarak hızlı bir şekilde programlanabilir. Bunun sonucunda çözüm pazara daha hızlı sunulmaktadır.
- FPGA tasarımında yazılım yönlendirme, yerleştirme ve zamanlamayı yönetir. Daha az manuel müdahale gerektirir. Tasarım akışı, zaman alıcı ve karmaşık yer ve yönlendirici, kat planlama ve zamanlama analizlerini ortadan kaldırır.
- FPGA'ler mantık düzeyinde programlanabilme özelliğine sahiptir. Sonuç olarak daha hızlı ve daha paralel sinyal işleme uygulayabilir. CPU'nun yürütmesi zordur.
- Önemli miktarda bilgi içeren ASIC geliştirmenin aksine NRE (Tekrarlanmayan Giderler) ve pahalı araçlar, FPGA geliştirme, daha ucuz araçlar ve NRE olmaması nedeniyle daha ucuzdur.
- FPGA'ler herhangi bir zamanda yazılım düzeyinde programlanabilir. Sonuç olarak, FPGA IC sınırsız sayıda yeniden programlanabilir veya yeniden kullanılabilir. FPGA'ler uzaktan da programlanabilir.
Dezavantajları
- Güç tüketimi daha yüksektir ve programcıların FPGA'de güç optimizasyonu üzerinde çok az kontrolü vardır.
- FPGA'ler prototip oluşturma ve düşük hacimli üretim için idealdir. Oluşturulacak FPGA sayısı arttıkça ürün başına maliyet de artıyor.
- FPGA programlama, dijital sistem temellerinin yanı sıra VHDL/Verilog programlama dillerine aşina olmayı gerektirir. Programlama, işlemci tabanlı donanımda kullanılanlar kadar basit değildir. Mühendisler ayrıca simülasyon araçlarının nasıl kullanılacağını da öğrenmelidir.
- Bir FPGA seçilip tasarımda kullanıldığında, geliştiricilerin FPGA IC'de mevcut olan kaynakları kullanması gerekir, bu da tasarım boyutunu ve özelliklerini sınırlar. Böyle bir sorunun yaşanmaması için başlangıçtan itibaren uygun bir FPGA seçilmelidir.
CPLD ve FPGA arasındaki temel farklar
Arasında çeşitli temel farklılıklar vardır CPLD Ve FPGA . CPLD ve FPGA arasındaki temel farklardan bazıları şunlardır:
- CPLD, Karmaşık Programlanabilir Mantık Cihazlarının kısaltmasıdır. Buna karşılık FPGA, Field Programmable Gate Arrays'in kısaltmasıdır.
- CPLD, dijital sistemlerin yürütülmesine yardımcı olan entegre bir devredir. Buna karşılık, bir FPGA, esas olarak bir müşteri veya geliştirici tarafından üretimden sonra özelleştirilmek üzere oluşturulan entegre bir devredir.
- FPGA'ler en fazla şunları içerebilir: 100.000 küçük mantık blokları. Bunun aksine, CPLD'ler yalnızca birkaç bin mantık bloğunu depolayabilir.
- FPGA karmaşık uygulamalar için uygundur. Buna karşılık CPLD, daha basit uygulamalar için daha uygundur.
- FPGA daha büyük bir güç kullanımına sahiptir. Buna karşılık CPLD'nin güç tüketimi daha düşüktür.
- Performans açısından FPGA, dahili yönlendirmeden bağımsız olarak istikrarlı bir performans sağlar. Buna karşılık CPLD, yönlendirmeye dayalı öngörülemeyen bir performansa sahiptir.
- CPLD şuna eşdeğerdir: PAL . Öte yandan, FPGA bir benzer Kapı dizisi .
- FPGA, tabanlı bir dijital mantık çipidir. Veri deposu . Buna karşılık, CPLD'ler EEPROM tabanlı .
- FPGA ince taneli olarak sınıflandırılır. Bunun tersine, CPLD kaba tanelidir.
- CPLD, kalıcı belleğe sahip olduğundan FPGA'ya göre daha fazla koruma sağlar.
- CPLD'lerdeki gecikmeler FPGA'lere göre önemli ölçüde daha öngörülebilirdir.
CPLD ve FPGA arasında kafa kafaya karşılaştırma
Burada CPLD ve FPGA arasındaki başa baş karşılaştırmaları öğreneceksiniz. CPLD ve FPGA arasındaki temel farklar aşağıdaki gibidir:
Özellikler | CPLD | FPGA |
---|---|---|
Tam formlar | CPLD, Karmaşık Programlanabilir Mantık Cihazlarının kısaltmasıdır. | FPGA, Field Programmable Gate Arrays ifadesinin kısaltmasıdır. |
Tanım | Dijital sistemlerin yürütülmesine yardımcı olan entegre bir devredir. | Esas olarak bir müşteri veya geliştirici tarafından imalattan sonra özelleştirilmek üzere oluşturulan entegre bir devredir. |
Parmak arası terlik oranı | FPGA'ya göre daha düşük flip-flop oranına sahiptir. | CPLD'den daha yüksek flip-flop oranına sahiptir. |
Yoğunluk | Düşük ila orta yoğunluğa sahiptir. | Orta ve yüksek yoğunluktadır. |
Yapı benzer | PAL'a eşdeğerdir. | Gate dizisine benzer. |
Mantık Blokları | Yalnızca birkaç bin mantık bloğunu saklayabilir. | 100.000'e kadar küçük mantık bloğu içerebilir. |
Güç tüketimi | Daha büyük bir güç kullanımına sahiptir. | Daha düşük güç tüketimine sahiptir. |
Dayalı | EEPROM'a dayanmaktadır. | RAM'e dayanmaktadır. |
Maliyet | FPGA'ya göre daha ucuzdur. | CPLD'den daha pahalıdır. |
Mimari | İri taneli olarak sınıflandırılır. | İnce taneli olarak sınıflandırılır. |
Uygulamalar | Daha basit uygulamalar için daha uygundur. | Karmaşık uygulamalar için uygundur. |
Güvenlik | FPGA'dan daha fazla güvenlik sağlar. | CPLD'den daha az güvenlik sağlar. |
Verim | Performansı yönlendirmeye bağlıdır. | Dahili yönlendirmeden bağımsız olarak istikrarlı performans sağlar. |
Volatilite | Güç kapatıldığında veriler kaybolmaz. | Güç kapalıysa veriler kaybolabilir. |
Çözüm
FPGA'ler daha fazla karmaşıklık ve esneklik ile çip üzerinde RAM, saat yönetimi, DSP işlemleri, çarpanlar vb. özellikler sunar. Öte yandan CPLD, FPGA'den daha az güç tüketir ve FPGA cihazlarının tasarımlarda sıklıkla kullanılması daha olasıdır. değişiklikler uygulanır. Buna karşılık, CPLD cihazları, basit bir birleştirme mantığı gerektiğinde ve uygulama için anında açılma devrelerine ihtiyaç duyulduğunda kullanılır çünkü FPGA, harici ROM'dan konfigürasyonun yüklenmesi nedeniyle başlangıçta daha yavaş bir hızda çalışır.