Alan-Programlanabilir kapı Dizileri (FPGA) yüksek hızlı dijital sinyal işleme (DSP) uygulamaları için vazgeçilmez hale geldi ve FPGA'ları yüksek hızlı DSP'ye kıyasla, mimari temelleri, stratejik tasarım metodolojileri, araç iş akışlarını ve algoritmaları değiştirme sistemlerini kullanarak yeniden yapılandırmak için esnek.Bu makale, yüksek hızlı DSP için FPGA'ları kullanmaya hazır bir kılavuz sunuyor.

DSP için FPGA Mimarisini Anlamak

programlanabilir Mantık Kumaş Kumaşı

Herhangi bir FPGA kalbi, yapılandırılabilir mantık kumaşı, her birinin bir göz boyama masası (LUT) ve bir Flip-flop. LUTs, sonlu dürtü (FIR) filtreleri uygularken, dörtlü dönüşüm (FFT) ve diğer arithmetici-işimsel-dönüşümlü bir matris ile bağlantılı binlerce yöntemin elde edilmesi için, bu kumaş, sonlu dürtüsel olarak neyin (FIR) filtrelerini uygular.

DSP Slices – Özel Multiply-Accumulate Hardware

Hemen hemen her modern FPGA, DSP dilimlerini içerir - tek bir saat döngüsünde 48 bitlik bir çok çoğaltmayı başarabilir.Örneğin, Xilinx cihazları DSP48E2 dilimleri (in 7 ve ötesinde) DSP kesitleri ile 10 × 18 bit arasında bir araya getirir.

Blok RAM ve Memory Hierarchy

DSP uygulamaları genellikle büyük veri akışlarını veya kat kat katsayı tablolarını depolamak için gerektirir. FPGAs, sütunlarda sertleştirilmiş bloklar veya satırlar halinde organize edilebilir bloklar veya 36 Kbits'ler, iki yönlü erişim ve yapılandırılabilir genişlik / derinlemesine / derinlemesine.Ses'in yüksek hızlı DSP için, BRAM veya 20 Kbit'ler olarak kullanılabilir.

Saat Yönetimi ve PLLs

Yüksek hızlı DSP, frekans multiplikasyonu, bölünme ve faz geçişini anlamayı gerektirir.Bu bloklar ayrıca dinamik yeniden yapılandırma sağlar. multi-gigahertz transceiver tasarımları (örneğin, JESD204B arabirimleri yüksek hızlı ADCs için yeteneklerle birlikte), yüksek hıza sahiptir.

Yüksek Hızlı Transceivers ve I /O

Gerçek dünya DSP sistemleri, yüksek hızlı veri dönüştürücüleri, bellek veya arka plan otobüsleri ile arayüze ihtiyaç duyuyor. FPGAs, çok yönlü transeivers (e.g., GTH, GTY in Xilinx; GX transceivers in Intel) seri verileri 65 Gbps'ye kadar genişletiyor, PCI FGbps, 10 / 10 adet / 8

Yüksek Hızlı DSP için Tasarım Stratejileri

Paralellik Açıklaması – Algoritmadan Mimariye

Bir FPGA'nın temel avantajı, işlem kaynaklarını çoğaltma yeteneğidir. Sonuç olarak, bir filtre saati döngüsünde bir filtreye sahip (DSP işlemcisi olarak), tüm tıklamaları paralel olarak uygulayabilir.N-tap FIR filtresi için, bu, N çoklu sistemler için N eklentileri ve N ekleyicileri bir şekilde çalışır, bir çıkış örneği her saat döngüsünde - saat başına bir örnek oluşturabilir.

Borulining – Latency olmadan Devayı Arttırmak

Borulining, uzun kritik yolları daha kısa segmentlere ayıracak şekilde eklemeye yönelik kayıtların uygulamasıdır, DSP için boru hatları birden çok seviyede uygulanır: DSP dilimleri içinde (örneğin, iç boru hatları kaydı) ancak bir dizi multipliers ve eklentileri FFT kelebekte sağlayarak, otomatik olarak ölçümleme hıza kadar yükseltilebilir.

Systolic Dizileri - Düzenli, Scalable Processor Structures

Analizcü multiplikasyon, konvolution veya QR decomposition gibi yoğun algoritmaları için, systolic dizileri FPGA donanıma zarif bir harita sunmaktadır. Bir systolic elementleri (PEs), her PE'in sadece en yakın komşularına bağlandığı yerde, simülasyon ve her PE, basit bir MAC işlemi gerçekleştirmektedir. Çünkü dizileri düzenli olarak ve yerel bağlantıların kullanımı için uygundur.

Data-Driven Design – Optimizing Data Flow and Bandennial

Yüksek hızlı DSP, veriye ve işleme elementlerinden hareket etmek genellikle şişenck. Bir veriye dayalı tasarım metodolojisi, bu giriş, iç hafıza genişliği sağlamak ve kaynak genişliğine eklenmek için otomatik olarak sabitlenebilir.DSP (örneğin, dijital dönüşüm) kullanarak otomatik olarak sabitlenen USB kanallarını kullanarak otomatik olarak sabitleme ve hesaplamaları kullanarak otomatik olarak sabitlenebilir.

Kaynak Paylaşımı vs. Replication – Balancing Area ve Speed

FPGA mantığı sonludur, bu yüzden tasarımcılar donanım kaynaklarını paylaşma konusunda karar vermelidir (örneğin, birden fazla musluk için tek bir multiplier) ve bunları çoğaltmak için zaman-multiplexleme, paylaşım alanı azaltırken, genellikle yüksek hızlı DSP için, hedef genellikle sayısal bir orantı oluşturmak için yeterlidir.

Geliştirme Araçları ve İş Akışı

Tasarım Girişi – RTL vs. High-Level Synthesis

DSP için FPGA tasarımı geleneksel olarak FFT veya adaptive filtreler gibi karmaşık DSP algoritmalarına dayanıyor ve otomatik olarak RSP'nin otomatik olarak sabitlediği ve HLS'nin (şimdi Vitis HLS) ve Intel HLS Compiler gibi karmaşık DSP algoritmaları için el yazması ve otomatik olarak doğrulanmış olması için RSP'nin otomatik olarak doğrulanması ve doğrulanması gerekir.

Simülasyon – Fonksiyonel ve Timing Verification

sentezden önce, davranışsal simülasyon, tasarım doğru davranır. ModelSim/QuestaSim, Vivado Simulator veya VCS'nin DSP için, simülasyon veri dönüştürücüleri (ADC/DAC) ve kanal etkilerini doğru şekilde içermelidir. ModelSim/VoaSim gibi araçlar, Vivado Simulator veya VCS en kötü durumdaki koşullar altında yapılandırma/sayıt kısıtlamalarının özellikle de doğru şekilde doğru şekilde doğrulandığını doğrulamaktadır.

Synthesis ve Uygulama – Constraint-Driven Optimizasyon

Synthesis RTL veya HLS çıktısını bir kapı düzeyinde net liste için optimize etti. Yüksek hızlı DSP için, sentez kısıtlamaları dikkatli bir şekilde ayarlanmalıdır: input delay, set ⁇ delay, ve false path/multicycle kısıtlamaları aynı saat boyunca rotalar için optimize edilmelidir.

Timing Closure – Iterative Refinement

Timing kapanışı, kurulum ve ihlalleri ortadan kaldırma sürecidir. DSP için kritik yol genellikle DSP dilimleri veya büyük düktörel fan-in gibi geniş eklemeler yoluyla yatıyor. Strategies şunları içerir: boru hatlarının eklenmesi (sonrası), her türlü yolu kullanarak, DSP dilimleri ayarlama, LUT girişleri ve büyük aksaklıklar ve yönlendiricileri tekrarlamak için yönlendiricileri kısıtlamak için yönlendiricileri kısıtlar. Modern araçlar, etkileşimli öneri raporları, paralellik analizleri ve (örneğin, Vivado Timing Closure Closure Closure Closure Closure Closure)

FPGA'da High-Speed DSP için en iyi uygulamalar

Saat Domain Crossing (CDC) – Güvenli senkronizasyon

Birçok DSP sistemleri birden fazla saat alan karıştırıyor - DSP veripath için hızlı bir saat, yapılandırma ve izleme için daha yavaş bir saat ve belki de gelen bir veri akışından elde edilen bir saat. Improper CDC kullanımı metastability ve veri yolsuzlukunu tanıtıyor.En iyi uygulamalar şunları içerir: tek-bit geçişler için iki-flopedi kullanarak, spam noktaların geçişleri için senkronize etmek, gri kodlayıcılar veya el elek protokolleri tarafından kontrol edilen bir saat.Her zaman Özel bir analiz aracı ile doğrulayın (Vido CDC raporu veya Questa gibi).

Katplanning – Domain Katılımcı

Yüksek saat frekansları elde etmek için, fiziksel zemin planını ayrı bölgelere bölmek: yüksek hızlı DSP verileripath, bir tane kontrol mantığı için, bir bellek arabirimleri ve seri transceivers için bir tane.Geçmiş bir alanda gecikmeli bir şekilde ayarlamak için kritik DSP boru hatlarına katılın.Pblocks (Xilinx) veya MantıkLock bölgeleri (Intel) çok DSP zamanlaması için.

Power Optimizasyon – Dinamik Tüketimi Yeniden Üretin

Yüksek hızlı geçiş, güç dahil ederken performansları koruyan önemli dinamik güç kullanır: saat tirici DSP dilimleri, düşük güç modlarını kullanarak transkript hızlarını kullanarak, sinyalleri ekleyerek, daha küçük LUT boyutları seçerek, sert DSP blokları (daha az güç kullanarak) seçerek hız kontrol eder.

Gerçek Dünya Verileri ile Doğrulama – Bit-Exact Analizi

El destekli test vektörleri ile simülasyon, beklenen referans çıktısına karşı FPGA çıktısını kullanmak için yetersizdir.If youlx System or Intel DSP Builder doğrudan Simulink ile entegre edebilir, eşimülasyon ve biraz-exact doğrulama sağlar.

Sabit-Point Arithmetic – Hassasiyet vs. Resource

FPGAs genellikle sabit nokta arithmetici uygular, yüz üstü anahtarlama (son derece fazla kaynak ve güç ile desteklenen) aşırı akıştan kaçınmak ve sinyal-to-noise oranını korumak için gereklidir.Süresel aralık analizi (örneğin, MATLAB’in sabit nokta aracı veya Xilinx’in sabit noktası analizi ile) her zaman sabit nokta analizinden kaçınmak için en az iki uyarıyı sağlamak için.

Debugging – Gerçek Zamanlı İşaret Probing

Çünkü simülasyon tüm köşe vakalarını kaplayamaz, donanım debugging önemlidir. FPGA satıcılar, kumaşta (Xilinx Entegre Mantık Analizi, Intel Tap) yer alan entegre mantık analizörleri sağlar.

Yüksek Hızlı FPGA DSP'de Ortak Zorluklar ve Çözümleri

Saat Skew ve Jitter Multi-Domain Designs

Büyük bir cihazda yüksek hızlı bir saat dağıtıldığında, skew ve jitter zamanlama marjlarını azaltabilir. Dış saat gürültüyü kullanarak Mitigate (örneğin, Xilinx'de BUFG) ve yüksek frekanslı saatler için kumaş yönlendirmesini kaçınırsa, g100 fs RMS'yi 28bps'yi dış saat gürültüyü temizlemek için kullanabilir ve boru hattı için birden fazla faz değiştirmeli saat oluşturabilir.If transceivers require ultra-low jitter (e.g.

Termal Yönetim

Yüksek hızlı DSP, tasarım aşamasında onlarca watt dağıtabilir, özellikle de birçok transceivers ve DSP dilimleri eşzamanlı olarak çalışır. Cihaz seviyesindeki termal analiz araçları (Xilinx Power Estimator, Intel PowerPlay) kullanın. Yeterli ısıtımı ve hava akışı sağlayın.

Test için tasarım (DFT) ve Yapılandırma

Görevli DSP sistemleri (örneğin, radar, tıbbi görüntüleme), test için tasarım gereklidir.DSP algoritmalarının sistemsiz yükseltilmeleri için sınır tarama (JTAG) ve BIST (kendi kendini test) dahil etmek için BRAM ve DSP dilimleri operasyon sırasında. FPGAs ayrıca çok fazla talep ve kısmi yeniden yapılandırmayı destekler - sistemsiz DSP algoritmaların alan yükseltmeleri için faydalı.

Yüksek Hızlı FPGA DSP'nin Gerçek Dünya Uygulamaları

FPGA tabanlı yüksek hızlı DSP çeşitli alanlarda dağıtılır:

  • [FONT=0)Software-Defined Radio (SDR): [DFLT:1), Dijital dönüşüm, kanalizasyon ve örnek oranlarında 500 MSPS'yi aşan oranlarda kesintiye uğratır. FPGAs çok kanallık geniş bant dalgaformları verimli bir şekilde ele alır.
  • [FONT:0]Radar ve Elektronik Savaş: [Dönetici: [Dönetici:0] Pulse sıkıştırma, adaptive kirişformülasyon ve CFAR algılama, gigasample-per-saniye sayısal geri dönüşlerin gerçek zamanlı işlemesini gerektirir. FPGAs gerekli deterministik gecikme ve kesintiye olanak sağlar.
  • [FONT=0) Yüksek performanslı Hesaplama (HPC) Hızlandırıcılar: [Dönetici: FPGA'lar düşük ücretli finansal ticaret, bilimsel simülasyon (örneğin, sonlu zaman alanı) ve makine öğrenimi, yüksek aktarım süresine göre kritiktir.
  • [FONT:0)Medical Görüntüleme: [Dönüşüm: 0:1] Ultrasound kirişform, hesaplanmış tomografi (CT) ve MRG rekonsyonu gerçek zamanlı ekran gereksinimleri karşılamak için FPGA paralelliğinden faydalandı.

Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç

FPGA'lar, yeniden yapılandırılabilirlik, paralellik ve onları yüksek hızlı dijital sinyal işleme uygulamaları için ideal kılan özel DSP donanımını sunar. FPGA mimarisini iyice anlamak - mantık kumaş ve DSP dilimleri ile transiversite ve hafızaya -mühendisler, çok-gigahertz eşdeğer hızlarda çalışan etkin veri işleme tekniklerini uygulamaktadır.