FPGA Fabric Architecture

Alan-Programlanabilir kapı Dizileri, donanım seviyesindeki performans ve post-manufacture yeniden yapılandırılabilirlik için eşsiz bir kombinasyon sunarak modern dijital sistem tasarımında vazgeçilmez hale gelmektedir.In the heart of each FPGA is the CertFLT:0)) - karmaşık bir donanım hattı oluşturmak için, birlikte sunulan herhangi bir dijital devreleri ve birlikte uygulama zamanı ile ilgili olarak, belirli bir sinyal kontrolcüleri oluşturma izin veren, özel bir sinyal işleme kanallarını ve özel bir sabit devreleri oluşturma izin veren bazı sabit devreleri uygulama.

Bu yeniden yapılandırma kabiliyeti, hızlı prototipleme, havacılık ve savunma sistemleri, telekomünikasyon altyapısı ve yüksek performanslı hesaplama hızlandırma sistemleri için kritik hale geldi. Cihazların, modern FPGA özelliklerini tanımlayan basit kapı dizilerinden gelişmiş özelliklerden faydalandığı gibi.

FPGA Fabric'nin Core Building Blocks of the FPGA Fabric

programlanabilir kumaş, çeşitli temel element türlerinden oluşur, her biri belirli roller için optimize edilir.Ara masalar arasında Interplay, turn-flops, routing resources, blok, DSP dilimleri ve sertleştirilmiş I /O, bir tasarımın zamanlaması, alan ve güç hedefleri ile nasıl bir araya gelebileceğini belirler.

Güvenilebilir Mantık Blokları ve Bak-Up Tables

En iyi granularity'de, her FPGA cihazı birincil mantığı olarak masaya girer. A k-input LUT, statik hafıza hücreleri içinde gerçek tabloyu depolamak için herhangi bir Boolean işlevini anlayabilir. Örneğin, bir Xilinx serisindeki tipik bir 6-input LUT doğrudan doğruya doğru bir şekilde işlemlenebilir:0Y = (A · B) + (C ⁇ D) + E · F[D[D)

Modern yapılandırılabilir mantık blokları, birden çok LUT'u özel arithmetic donanımla birleştirir. Bir Xilinx CLB'de bir dilim genellikle dört 6 adet LUTs, sekiz flip-ps, çokluxers ve taşıma zincirleri hızlı bir şekilde optimize eder ve ek olarak çalışır ve taşıma zincirleri, ve taşıma zincirleri sadece kodlayıcılar, komplikeler ve genel amaçlı kaynakları tüketmeden daha yüksek performansa sahip olabilir.

Keyif mantığının uygulanmasına ek olarak, LUTs, RAM'ı dağıtan veya geçiş kayıtları olarak yapılandırılabilir. Bu çift kullanım kapasitesi, küçük FFO'lar, boru hattı gecikme hatları veya filtre katları için sıralama masaları oluşturmak için özellikle kullanışlıdır. Örneğin, 8x8 kat serisini depolayın.

Flip-Flops, Sequential Logic, and reset Architecture

Her mantık hücresi bir FPGA çiftleri veya LUT ile birlikte senkronizasyonu yakalamak için LUT ile daha fazla yüzer durum sağlar.Bu kayıtlar, programlanabilir saat sağlar, set / dizi sinyalleri sağlar ve bazen ikiyüzlülükler - LUT'un sayısını iki kez azaltır - yüzlerce megahertz'de çalıştırabilecek derin boru hatları kullanmaya pratik yapar.

Ortak bir tuzak küresel sıfırları aşırı derecede aşırıya indirir. Birçok tasarımcı her dönüş kaynağına eşitsiz veya asenkron sıfırını uygular, ancak modern sentez araçları genellikle yapılandırma sırasında kayıtları azaltır ve kapatma ihtiyacını ortadan kaldırır.En iyi bir uygulama sıfırlandığında, aynı zamanda kayıt gruplarına aktif olan kayıt gruplarına sahip olmak ve paylaşmak için sınırlı olmalıdır.

Interconnect and Routing Architecture

Tüm kumaş bileşenlerinin, routing kumaşın performans ve tasarım karmaşıklığı üzerinde en büyük etkisi vardır. FPGAs, programlanabilir anahtar matrislerin tam boy veya genişliğini çalıştırdığı bir ada tarzı topoloji kullanır. Bu kanallar çeşitli uzunlukların tellerini içerir: ekinsiz mantık bloklarına bağlanmak için yerel teller, birkaç satır veya sütunlar, ve tüm yüksekliği veya genişliğini çalıştıran küresel teller.

Kontrol, programlanabilir bağlantı noktaları aracılığıyla egzersiz yapılır - normal olarak transistör veya birden fazlaxers - bu, yapılandırma bitstream tarafından döndürülür.Bir LUT çıkışının uzak bir dönüş için, yerleştirme ve routing aracı bir dizi PIPs arasından bir yol seçer.For this reason, modern FPGA mimarisi de özel taşıma sistemleri (birkaçlı geçiş için) kalibre etmek için gerekli olduğunda, katlantı ve yüksek hızlı geri bildirimler için, hızlanmış hızlar.

Örneğin, eker ağacı için göreceli yerleştirme kısıtlamaları dikey olarak taşıyabilir, mesafeyi azaltır[Döneticileri azaltır) Aynı şekilde, cihazın belirli bir bölgeye giden büyük bir bellek kontrolörü yazılabilir. Örneğin, ekersiz bir ağaç için göreceli yerleştirme kısıtlamaları ayarlayabilirsiniz.0) Brown, Rose ve Vranesic) tarafından klasik akademik analizleri nasıl kesintiye uğratıldığını anlamak için değerli bir referans kalır.

Giriş/Output Blocks ve Interface Standartları

I/O bloklar iç kumaş ve dış devreler arasındaki elektrik arayüzlerini sağlar. Her blok, LVCMOS, SSTL, HSTL, LVDS ve yüksek hızlı diferansiyel protokolleri içerir. Gelişmiş IOB'ler, tüm pinler standart ve gerilim seviyesi ile aynı zamanda standart ve yüksek hızlı seri bağlantıları içeren bir arayüzler için yapılandırılabilir.

Yüksek hızlı arayüzler için, FPGA'lar genellikle zorlanmış serileştirici/dödücü mantığı özel I/O bankaları içinde birleştirirler. Bu SerDes, JESD204B gibi basit bir AXI arayüzünü kumaş kaynakları planlamadan veya gigabit Ethernet'i planlamadan ve sinyal bütünlüğünün hesaplanması için gereklidir.

Blok RAM ve On-Chip Memory Hierarchy

Orta büyüklükteki bir blok RAM, farklı saat frekanslarında çalışabilecek iki bağımsız porta sahiptir ve her biri doğru çift-portajlı veri akışları gibi farklı durumlarda otomatik olarak ayarlanabilir ve yapılandırılabilir bir okuma / yazma modları, tasarıma iyi bir şekilde giriş yapmak için iki bağımsız portları destekler. Multi BRAMs can be cascade to create data streaming. Özellikler as true dual-portre operasyonu, hata düzeltme kodlaması ve yapılandırılabilir okuma / yazma modları, tasarıma iyi bir şekilde yazılabilir.

BRAM kullanımı için anahtar, derinlik, genişlik ve port konfigürasyonu arasındaki ticaret noktaları anlamaktır. Örneğin, 1024×36 bellek tek bir 36 Kb BRAM olarak uygulanabilir, ancak iki bağımsız okuma portu gerekliyse, tasarımcının BRAM'a karşı ilk okuma işlemine ihtiyaç duymaları gerekir.

DSP Slices ve Harded Arithmetic

DSP dilimleri, bir DSP dilimden oluşan bir dizi sabit bir dilim, 25 ×18-bit multiplier ve 48-bit cumulator veya eker zinciri içerir.Tek bir saat döngüsünde, bir DSP dilim bir miktar radarı hesaplar ve birçok ürüne dönüşerek sonuç verebilir.

Sertleştirilmiş IP blokları bu konsepti tam alt sistemlerle genişletmektedir. Birçok modern FPGA'lar PCI Express sert IP'yi entegre eder (Gen4/Gen5), 100G Ethernet MACs, Interlaken ve hatta Arm Cortex-A serisi gibi gömülü işlemciler sunar.Bu blokları kullanarak, yumuşak mantık ücretsiz olarak tasarım, güç tüketimi azaltır ve arayüz zamanlamasının karşılanmasını garanti eder.

Yüksek Şekillilik için tasarım ilkeleri

Doğru HDL yazmak yeterli değildir. En başarılı FPGA tasarımları, kumaşın güçlü yönlerine iyi haritadır: uzaysal paralellik, derin borulining ve hiyerarşik modülerlik. aşağıdaki ilkeler kılavuz mühendisler hızlı, kullanılabilir ve kaynak verimlidir.

modülerlik ve Registered Interface Discipline

Açık sınırlarla iyi tanımlanmış modüllere bir tasarım yok, karmaşıklaşmalara yardımcı olur ve modülasyonlarını ve her modülün kendi giriş ve çıkış noktalarında kaydedilmesine olanak sağlar.Bu uygulama, kayıt arabirimleri için kısıtlamalar) olarak bilinen, kombinasyonel yollar çapraz modül sınırlarına sahip değildir, zamanlama analizi basit ve modül düzeyindeki zemin planlayıcısı sağlar.Her modülün kendi giriş ve çıkış ve çıkış noktalarına sahip olduğunda, her blok için zaman kısıtlamaları bağımsızdır.

Yeniden yapılandırılabilirlik ve Katılımcı Yeniden yapılandırma

FPGAs, geri kalan sistemde işlevsellik değiştirmek için programlanabilir cihazlar arasında benzersizdir.Partal rekonurasyon, bu özelliğin alt kümesine geri dönmeleri için yeniden programlanmış olması için, farklı kodlama standartları için bir oyun değiştiricidir.Bu uygulama için bir oyun değiştiricisi gerekir - örneğin, LTE ve 5G dalgalama arasındaki bir yazılım- tanımlanabilir radyolar aynı donanıma izin verir veya farklı kodlamalar için aynı mantıkla yeniden programlamaya başlar.

Pipelining and Paralelism

FPGA kumaşı doğal olarak bir uzaysal bilgisayardır: binlerce LUTs ve turn-flops aynı anda çalışabiliyor, her bir algoritmanın küçük bir dilimini uygulayın.Bu, tasarımcılar her döngüyü en iyi şekilde yapılandırmalıdır.Sürekli FIR'nin boru hatları, bir araya gelen filtreyi bir araya getirebiliyorsa bile, yüzlerce tıklamadan geç saatlere kadar kırılabilir.

Paralellik aynı zamanda veri genişliği için de geçerlidir: paralel olarak çoklu DSP dilimleri kullanarak tek bir döngüde geniş vektör sonuçları üretir. Ancak, tamamen kayıt dışı döngüler, cihazı çalıştıran kaynaklar aracılığıyla buluşmak için tasarımcıya izin verir.

Fiziksel Tasarım Rehberliği ve Yoğunlaştırma Kaçınma

Otomatik yerleştirme ve yönlendirme araçları güçlü, ancak insan rehberliğinden faydalanırlar.En etkili tekniklerden biri zemin planlayıcıdır - büyük bloklar (RAM, DSP serisi, devlet makineleri) belirli cihazlara kayıt yaptırır ve bu, yüksek performanslı sürücülerin belirli bölgelerine yol açabilir ve çipleri tekrarlayarak en iyi şekilde devre dışı bırakma işlemlerini engellemeli.

Doğrulama ve Debug Methodology

Robust doğrulama, pahalı silikon respinsten kaçınmak için gereklidir. RTL simülasyonu tek başına yetersizdir çünkü tel gecikmelerini görmezden gelir ve Vivado Logic veya Intel Signal gibi hapşırtıcı araçları kullanarak gerçek zamanlı görünürlük sağlar. Tüm yollar hedef saat süresiyle buluşmak için tasarıma ihtiyaç duyar.In-system debuggingte gecikmeleri ile birçok gözlem noktası doğrulama sinyalini kullanarak.In-system debugging araçları kullanarak gerçek zamanlı olarak görünürlüğü sağlar.

Modern FPGA'larda Gelişmiş Mimari Özellikler

Bugün FPGAs, temel mantığın ötesindeki sofistike alt sistemleri entegre eder. Bu özellikleri anlamak, tam, yüksek performanslı sistemler oluşturmak için gereklidir.

Saat Yönetimi ve Global Dağıtım

FPGAs, bu sinyalleri en az skew ile dağıtan ve karışık-mode saat yöneticilerinin tek bir referanstan ayrı olan anlık saat sinyalleri içerir. Bu bloklar frekans sentez, faz değişimi ve özel bir saat ağacı sağlar. Küresel saat tomurcuklar bu sinyalleri minimum skew ile dağıtır, genel olarak bağlantıdan ayrı olan parçalar kullanarak dağıtır.

Yüksek Hızlı Seri Transceivers

Multi-gigabit transceivers şimdi standarttır ve PCI Express, Track, 100G Ethernet ve Interlaken. Transcereler, PLL'leri paylaşan 1 Gbps'den 32 Gbps'ye kadar uzanan satır oranları destekler ve her dörtlü blok, transistimal için bakım ile ayarlanmalıdır.

Güvenlik ve Güvenilirlik Özellikleri

Donanımdan biraz daha fazla bilgi edinmek ve tam olarak birçok uygulama için kritik. Çoğu FPGA aileleri AES-256 şifreyi on-çipli anahtar depolama ile desteklemek, tasarımın izinsiz okumasını önlemek. Güvenli boot yetenekleri yüksek kullanılabilirlik uygulamaları için (aerospace, otomotiv, tıbbi), FPGA'lar genellikle bir şekilde veya belirli bir yapılandırmayı gerektirir.

En İyi Uygulamalar ve Pratik Tahminler

Aşağıdaki kontrol listesi gerçek dünya FPGA tasarım deneyiminden elde edilen en aksiyonlu tavsiyeyi ele alır:

  • [FONT=0)Define kısıtlamaları erken: [Dönemli zaman bütçeleri, pin atamaları ve RTL yazmadan önce saat özellikleri. Endüstri standart SDC veya XDC kısıtlamaları dosyaları kullanın. Geç değişiklikler yerleştirmeyi geçersiz kılar ve tüm tasarımın yeniden tanımlanmasını gerektirir.
  • [FONT:0) Kontrol setleri:[Dönetici:[Dönetici: 0) Share saat mümkün olduğunca çok sayıda geri dönüşümlü sinyalleri mümkün olduğunca sıfırlamanızı sağlar. Küçük kayıt grupları için eşsiz sıfırlardan kaçının.
  • [FONT:0]Leverage satıcılar IP çekirdeği[[Döntgenler, bellek kontrolörleri, ağ arabirimleri ve DSP ilkelleri gibi standart işlevleri için. Bunlar hedef kumaş için önceden optimize edilmiş ve titiz bir doğrulamaya maruz kalmaktadır.
  • [FONT:0)Run erken post-synthesis raporları) kaynağı aşırı kullanım ve kesintiye uğratmak için kontrol etmek için. büyük bileşenleri izole etmek için zemin planlayın.
  • [FONT:0) Takımlar için yükseltici derleme[[Döneticiler için: stabil modüller ve recompile sadece değiştirilmiş bölgeler. Bu, zaman ve kapanış zamanını azaltır.
  • [FONT=0]Debug için enstrument[Dönetici: Birden çok eksenli problarla birlikte silinen çekirdekler. Bu, bir hatanın donanımda göründüğünde yeniden işlenme ihtiyacından kaçınır.

Deneyimli tasarımcılar mimarlık, kısıtlamalar yazma ve post-propmentasyon analizi arasında bir geri bildirim döngüsü geliştirirler; her önemli değişiklikten sonra çalıştırılmalıdır ve en kötü dosya yolları manuel olarak incelenmelidir. Güvenilir FPGA gelişiminin arka kemiğini doğrulamaya yönelik bir yaklaşım.

FPGA Fabric'nin Geleceği: Trendler ve Tahminler

FPGA kumaş mimarisi hızla gelişmektedir, kenardaki AI inference için talepler tarafından yönlendirilir, veri merkezlerindeki adaptif bir hesaplama ve yüksek bant genişliği bellek ile sorunsuz entegrasyonlar. Xilinx Versal ACAP gibi cihazlar AI motorlarını ve programlanabilir bir ağ-çiçek mimarisi ile birlikte, FPGA ve heterojen hızlandırıcı hızlandırıcılar arasındaki sınırı bulanıklaştırır.

Bu yeniliklere rağmen, temel ilkeler kalır: yapılandırılabilir mantık, esnek routing ve bol kayıtlar her başarılı uygulamanın temelini oluşturur. Mimari ayrıntıları ustalaştırarak ve disiplinli tasarım uygulamaları uygulayarak, mühendisler bu cihazları dijital performansı zorlayan sistemlere kullanabilir - satıcılar belgeleri, akademik araştırma ve el-on deneyi - FPGA'lar daha yetenekli ve pervaplı tasarım uygulamaları olarak devam eder.