Dijital Signal Processors (DSP) uzun zamandır gerçek zamanlı sinyal işlemenin iş kümeleri olmuştur, telekomünikasyon ve ses kodlarından radar ve biyomedikal cihazlara kadar her şeyi güçlendirir. Mekanik öğrenme (ML), bir işlemcinin temel tasarımını yeniden optimize etmek ve hatta geç kalmış cihazlar üzerinde eğitim almak için daha fazla ihtiyaç vardır, güç ve maliyet sıkı bir şekilde kısıtlanır. DSP mimarilere tümleşik olarak nasıl uygulanır.

DSP Süreçor Mimarlıklarının Temelleri

Klasik DSP işlemcisi üç temel prensip üzerine inşa edilmiştir: yüksek kodlu kopyalar tek bir saat döngüsünde MAC yapabilen ve sonlu yanıt (FIR) gibi algoritmaların sonlu yanıtları için son derece verimli hale getirir. Geleneksel mimariler Harvard veya değiştirilmiş-Harvard bellek modeli, ayrı talimat ve veri otobüsleri ve tek bir saat döngüsünde bir MAC yapabilen çok sayıda uygulama birimleri.

Anahtar mimari elementler şunlardır:

  • [FONT:0)MAC birimleri), eş zamanlı çoklu uygulama ve birikimine adanmıştır, genellikle döngü başına bir sonucu sürdürmek için boru hattı.
  • [FONT:0]Circular tamponlama[[Dönetici: 1 ) filtrelemede etkin gecikmeli kullanım için.
  • [FONT:0)Zero-overhead döngüsü[[Dönetici: 1) Tekrarlanan çekirdek infazı sırasında boru hatlarının durdurulmasından kaçınmak için donanım.
  • [FONT:0)Fixed-point arithmetic[Dönetici], aşırı akıştan kaçınmak için geniş bir bekçi ile birlikte, birçok gerçek dünya sinyalleri sınırlı hassasiyetle sayısallaştırılır.

Tarihsel olarak, bu işlemciler düzensiz kontrol akışını ve veri bağımlısı ağlarını makine öğrenme modellerinde kullanan ortak bir iş yükü profiliyle, özellikle derin konvolutional ve recurrent architectures, yoğun matris-vector multiplikasyonları, doğrusal olmayan aktivasyon işlevlerini ve ağırlıkları ele almak için tasarlanmış değildi - geleneksel DSP görevlerinden keskin bir şekilde farklı olan bir iş yükü profili.

DSP'lere Tümleştirici Makine Öğrenmesinin Meydanları

Deterministic sinyal işleme ve veri odaklı makine öğrenimi arasındaki boşluk birkaç temel zorluk sunuyor:

C ⁇ Mismatch

Çoğu ML eğitimi ve inference, uzayda, güç ve döngü saymalarında yüz yüzen bir cezaya dayanır.DSP'nin sabit nokta tamsayı işlemleri için optimize edilmesi; bu donanımda yüzen nokta MAC'ları gerçekleştirmek, güç ve döngü saymak için.DSP'nin yüzen bir noktaya kadar, aktarım sırasında bile genellikle sabit nokta MAC'ları sabit bir şekilde optimize etmek için bir boyuta sahiptir.

Memory Band geniş ve Hierarchy

ML modelleri hafızadan defalarca getirilmelidir milyonlarca parametre içerir. Tipik DSP'nin küçük, yerel hafıza (scratchpad veya L1 önbellek) filtre katları ve birkaç veri penceresi için aynı şekilde genişletilmemektedir, ağırlık için onlarca filtre; tiling ve veri stratejileri, çok boyutlu adresleme için esnek bir şekilde daha fazla enerji siparişleri tüketmektedir.

Kontrol Akışı ve Irregularity

Neural ağ katmanları boyutlarda, doğrusal olmayan türler ve veri akışları (örneğin, oturma fonksiyonları, havuzlama) ve havuzlama katmanları, sabit işlem noktalarında sabit işlem veya uygulama alanlarının üstesinden gelmek için özel donanım veya yazılımlar gerektirir; kalıplar ve geri yüklemeler sıfır devreleri ve geri yüklemeleri.

Latency ve Power Constraints

Birçok gerçek gerçek zamanlı uygulama - ses asistanları, aktif gürültü iptali, otonom sensör işleme - sıkı geç bütçeleri (mikrosans) ve SoC'nin termal tasarımını dışlayan güç kapları. DSP'ler genellikle düşük güç için seçilir, determinist zamanlaması, ancak bu özellikleri çözmeden ML yeteneklerini dengelememelidir.

Bütünleşme için Stratejiler

Bu zorlukların üstesinden gelmek için, hem çip tasarımcıları hem de yazılım mühendisleri üç geniş kategoriye sınıflandırılabilecek bir dizi strateji geliştirdi: Donanım hızlandırma, yazılım optimizasyonu ve hibrid mimarlıklar.

Donanım Acceleration

DSP çekirdeği içinde özel ML hızlandırma bloklarını eklemek veya bunun yanında en doğrudan yaklaşımdır. Ortak donanım uzantıları şunları içerir:

  • [FONTD:0)Vector işleme birimleri (VPUs)), tek yapılı çoklu ölçeklendirmeleri (CD) geniş kayıtlarda, element-bilite operasyonları için tipik olarak, Cadence Tensilica ConnX serisi gibi, bazı basitleştirilmiş SIMD boru hatlarına kadar urable SIMD boru hatlarına kadar uzanır.
  • [FONT:0]Neural ağ hızlandırıcıları (NPUs)) DSP'nin hafıza ve kontrol mantığına sıkıca bağlı olarak, bu sertleştirilmiş motorlar konvolutional çekirdekler için optimize edilir, genellikle sinatolik dizileri veya matrisleri ile birlikte, örneğin, API Hexagon DSP, API'de kullanılan API Hexagon platformlarında kullanılan bir “Hexagon Vector eXize motorlar” (HVX) ve daha sonra bir Hexagon Tensorlu çalışma yükleri için.
  • [FONT:0) Uygulamalı fonksiyonel birimler[DPMT:1], aktivasyon işlevi gözlüğü, yumuşakmax sişik veya yerel yanıt normalleştirme gibi, DSP'nin ISA'daki ek talimatlar olarak uygulanabilir.
  • [FONT=0]Memory sistemi geliştirmeleri [Dönetici anılar, donanım verileri önbellek erişim için önfetteçler ve baskılama mantığı, en-fly üzerinde ölçümlenen modeller.

Bir illüstrasyon örneği, 0 )CEVA-XB12[Dönetici: 0)CEVA-XB12[[Dönetici: 128 MAC'ye kadar motor başına geçiş yapan ve özel bir sinir ağ hızlandırıcı içerir. Aynı alet zincirini kullanarak hem geleneksel sinyal işleme hem de ML inferencele aynı araç zincirini yönetebilir, gelişim karmaşıklığını azaltır.

Software Optimisation

Her sistem yeni bir çip ödeyemez. Mevcut DSP'ler için, sofistike yazılım teknikleri verimli ML execution sağlar:

  • [FONT:0) Model ölçümleme ve pruning.[[Dönetici:0) Model ölçümleme ve pruning[Dönetici:0) Modelleme ve pruning[Dönetici:0) Uygulamalı ve sabit nokta MAC birimlerinin kullanımını azaltır, model boyutunu ve hesaplama sayısını azaltır. 10sorFlow Micronetler ve ONNX Runtime gibi araçlar DSP'yi hedefleyebilir ve belirli talimatları sağlar.
  • [FONT=0)Kernel füzyon ve döngü dönüşümü.[DÜT:1] Manually veya otomatik olarak birden çok katman (örneğin, konvolution + toplu normalizasyon + ReLU) tek bir şekilde, optimize edilmiş döngü hafıza yuvarlak-dönüşümü azaltır ve yazılım boruları küçük yerel anılarda maximise verileri yeniden kullanmak için kullanılır.
  • [FONT:0)Compiler- bazlı oto-vectorizasyon DSP aracıchains şimdi, onor işlemlerinin SIMD talimatlarına ve otomatik olarak DMA transferlerini birbirine katletmiş veri hareketi için ekleyen ML-aware derleyicileri içerir. Örneğin, TI C7000 C6x derleyicisi, yüzen nokta vektörü etkin bir şekilde kullanan kod üretebilir.
  • [FONT:0]Runtime schedulers[D) DSP, CPU ve mevcut hızlandırıcılar arasında dinamik olarak bölme çalışması, geç kalmış ve güç bütçelerine saygı gösterilmesi.

Yazılım optimizasyonu yalnızca ağır modeller için performans boşluğu kapatamaz, ancak orta donanım desteği ile birleştirildiğinde, genellikle kenar uygulamaları için kabul edilebilir gerçek zamanlı performans elde eder.

Hybrid Architectures

Daha da önemlisi, SoC tasarımcıları tek bir monolithic DSP'den, genel amaçlı bir CPU, DSP ve bir veya daha fazla ML hızlandırıcısına doğru hareket ediyorlar.

  • [FONT=0)CPU[DÜDÜDÜDÜDÜDÜDÜSÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜ
  • [FONT=0]DSP[DFLT:1), sinyal işlemeyi (örneğin, sensör ön uçları, özellik ekstraksiyonu) yönetiyor ve ML hızlandırıcı için uygun olmayan çekirdekleri optimize ediyor.
  • [FONT=0]ML hızlandırıcı[Dönetici:0)[D) DSP tabanlı bir NPU) yüksek enerji verimliliği ile ağır onlarca veya operasyon gerçekleştirebilir.

Ünlü bir örnek, akabinde Tensilica HiFi DSP ve bir sinir işleme ünitesi (NPU) ile ilgili olarak, NPU anahtar kelime-spotting ve sescommand tanıma modellerini birleştirirken, bu tür mimariler ayrıca paylaşılan hafıza ve koherent bağlantıları ile de yararlanır, düşük seviyeli veri değişimi sağlar.

Gerçek Dünya Tümleşik DSP-Makine Öğrenme Sistemleri

Yukarıda açıklanan teorik stratejiler, çeşitli alanlarda ticari ürünlerde fark edilmiştir. Aşağıda, entegrasyon seviyelerini gösteren önemli örneklerdir.

Qualcomm Hexagon DSP (Snapdragon)

Qualcomm'un Hexagon DSP, şirketin AI Engine'in önemli bir bileşeni haline geldi.Soru 820 ile başlayın, Hexagon 680 doğrudan dahil edildi.Hexagon Vector etans (HVX)[DDSPT:1) - döngü başına 1024-bit işlem kapasitesine sahip SIMD birimleri, gerçek zamanlı olarak, istemci multiplikasyonları gerçekleştirebilir.

Cadence Tensilica ConnX / HiFi DSPs

Cadence, ML iş yükleri için uyarlanabilir bir DSP çekirdeği sunar.TheurFLT:0)ConnX BBE) (Baseband Engine) tarafından kullanılabilir ve sabit nokta SIMD birimleri, örneğin Hi-Fi 5) ses /speech'e odaklanır ve şimdi tüm bir “CNN Hızlandırma seçeneği içerir.

CEVAXB12 ve SensPro2-

CEVA'N XB12, bilgisayar vizyonu ve AI iş yükleri için özel olarak tasarlanmış bir DSP çekirdeğidir. 128-MAC motoru, özel bir sinir ağ hızlandırıcısı ve geniş bir SIMD ünitesi.YenierİLETİŞ:0)SensPro2 mimarisi), bunu otomatik olarak şarj edilebilir bir veri akışı ekleyerek genişletir.

TI C7000 C6x ile C7x Coprocessor

Texas Instruments, C7000 serisini bir C7x DSP ile bir C7x vektör koişlemci ile birleştirir. C7x, hem yüzen hem de tam zamanlı veri türlerine destek vererek, matrix işlemleri için tam olarak programlanabilir bir vektör motorudur. TI'sİLFLT:0).

ML'nin DSP mimarilerine entegrasyonu hala hızla gelişiyor. Birkaç ortaya çıkan trend, kombinasyonu daha güçlü ve erişilebilir hale getirmeye söz veriyor.

In-Memory Computing and Near-Memory Processing

hafıza duvarı ML inference için birincil şişenck. Yeni yaklaşımlar yerel hafıza elemanlarına daha yakın hareket eder.Bazı prototip DSPs, FATFLT:0Conpute-in-SRAM veyaİLFLT:2) Bu büyük ölçüde veri hareket enerjisini azaltır ve hafızanın içinde MAC işlemleri gerçekleştirebilir.

RISCV DSP ve ML-In için Hazırlanıyor

RISCV, özel işlemciler için esnek bir ISA olarak yol alıyor.TheurFLT:0)P-exction) ve [[Cidden iş yükleri üzerinde tasarlanmıştır.[D)[DSPT:3) DSP-like yetenekleri açık kaynak çekirdeği oluşturmak için kullanılabilir. Ek olarak, topluluk bir talimat üzerinde çalışıyor olabilir.[Döneticileri değiştirmiş durumda[Döneticileri üzerinde çalışır).

LowPrecision ve Hybrid Arithmetic

Araştırma, INT4 veya hatta ikili arithmetic. Future DSPs ile iyi performans gösteren birçok modelin, muhtemelen karışık-önlü bir blok yüzen modeller ile sabitlendiğini gösteriyor. Donanım desteği, DSPT:0) ve MACstochastic yuvarlaklama) ile yüzen nokta[Döneticileri)[Döneticileri bir gruptaki bir dizi işlemden oluşan bir dizi işlemden ibaret olduğunu ilericiyi korumak için doğrulayıcı.

Otomatik Donanım-Software Co-Design

Modeller ve donanım daha fazla iç içe geçmiş, otomatik olarak verilen bir ML iş yükü için DSP mimarisini otomatik olarak ayarlar.*Dsperanto Technologies) ve [[DFLT:3) belirli bir sinyal işleme ve sinir ağları için ayarlandığında, bu "DSP" ve "al işleme ünitesi" ile optimize edilmiş özel bir çipler olacaktır.

In-Device Learning and Adaptation

İnferans ötesinde, sadece ilerici hıza ilgi duyuyor, ancak aynı zamanda ölçümleme ve ağırlık güncellemelerini gerçekleştirme yeteneği var - mevcut DSP'lerde nadiren uygulanan işlemler, eğitim veya iyileştirici (örneğin, öğrenme yeteneğine sahip) için donanım içerebilir. Bu, gerekli dış ürün ve element-biliteleri hesaplamayı gerektirir.Bu, DSP'lerin değişen ortamlara uyum sağlamasını sağlar.

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

Makine öğrenme algoritmaları DSP işlemci mimarisine entegre etmek, yazılım optimizasyon (kahkadar, çekirdekli ölçüm, bellek bant genişliği, kontrol akış yönetimi ve enerji verimliliği. Donanım hızlarının bir kombinasyonu ile (CD birimleri, özelleştirilmiş hafıza sistemleri), yazılım optimizasyon (kahkadar-enerji, otomatikleştirme) ve karma SoC tasarımları, endüstri oyuncuları, gerçek zamanlı MLtime ML inference inference, geleneksel sinyal işleme görevleri ile ilgili örneklerle ilgili olarak, karma-kırıklama, CEVA ve bir süre içinde bir araya getiren yeni bir yazılım optimizasyonun daha iyi olduğunu gösterdiler.

Daha fazla okuma için aşağıdaki dış kaynakları düşünün:

  • [FONT:0)Qualcomm Hexagon DSP Genel Bakış).
  • [FONT:0)Cadence Tensilica DSP Ürünler).
  • [0]CEVA-XB12 Neural Network DSP).
  • [0]TI TIDL ve C7000 Mimari Beyaz Kağıt).
  • [0]"Devrimli DSP'ler üzerinde Signal Processing için Makine Öğrenmesinin Bir Anketi" (ArXiv 2021)).