Panoramica- Il SDK acceleratore VectorBlox™ fornisce un motore di inferenza software ottimizzato per FPGA Microchip PolarFire® e PolarFire SoC, con focus sull'inferenza di reti neurali convoluzionali (CNN) a basso consumo e sui pipeline video.
- Funzionalità principali: deploy software senza riprogrammare l'FPGA, supporto per reti sparse (compressione strutturata e non strutturata) e compromessi configurabili prestazioni/consumo.
Compressione ed efficienza della memoriaIl SDK (VectorBlox 3.x) riduce l'uso di memoria e il movimento dei dati tramite tecniche di compressione strutturata e non strutturata. La compressione strutturata è rivolta a dati con disposizione regolare (pesI, attivazioni, feature map) permettendo una decompressione deterministica e a basso overhead in hardware. La compressione non strutturata memorizza solo i valori non zero con indici per supportare pattern di dati sparsi o irregolari, consentendo modelli più grandi o dati a risoluzione superiore entro vincoli fissi di memoria/banda su sistemi edge.
Supporto modelli AI e toolchain- Ampio supporto di framework: TensorFlow, TensorFlow Lite, ONNX e OpenVINO.
- Strumenti di quantizzazione e conversione inclusi per convertire modelli FP32 in INT8 e preparare i modelli per il runtime VectorBlox.
- Gli strumenti di compilazione generano binari e pesi; le risorse di runtime sono memorizzate in memoria non volatile (tipicamente SPI Flash) e caricate in DDR all'avvio per l'esecuzione.
CoreVectorBlox IP e architetturaIl CoreVectorBlox IP fornisce un'architettura acceleratore configurabile con caratteristiche quali:
- Più configurazioni di dimensione per adattarsi ai requisiti applicativi/di performance.
- Architettura overlay per supportare più reti su un singolo core con switching dinamico.
- Interfaccia master memoria AXI4 configurabile (64-bit a 256-bit) e AXI4-Lite per controllo/stato.
- Architettura basata su memoria con supporto di I/O mappato in memoria.
- Processore vettoriale interno per reti neurali generali e acceleratore CNN dedicato per layer convoluzionali.
Design di riferimento e pipeline videoIl design di riferimento PolarFire SoC per valutazione integra pipeline camera e video inclusi ingresso camera MIPI CSI-2, ingresso HDMI, pipeline di Image Signal Processing (ISP), motore AI VectorBlox e uscita HDMI per visualizzare i risultati. Il SDK supporta il rapido prototipaggio usando CNN pre-ottimizzate e strumenti di simulazione per la valutazione prima del deployment.
Consumo e deployment edgeLa soluzione è mirata ad applicazioni embedded/edge a basso consumo, con inferenza e pipeline video efficienti in termini energetici riportate sotto i 5 W in configurazioni valutate. La configurabilità consente di bilanciare throughput e consumo energetico per casi d'uso specifici.
Primi passi (livello alto)- Step 1: Installare il SDK VectorBlox™ e consultare il Programmer's Guide e la documentazione fornita.
- Step 2: Convertire e quantizzare la propria CNN usando i tutorial/strumenti di conversione forniti per preparare modelli INT8 per il SDK.
- Step 3: Valutare usando il PolarFire SoC Video Kit (design di riferimento disponibile) per convalidare pipeline camera/ISP/AI sull'hardware target.
- Step 4: Installare il Libero® SoC Design Suite per visualizzare o ricostruire i componenti del design di riferimento.
- Step 5: Generare e unire le licenze Libero e CoreVectorBlox richieste secondo le indicazioni quick-start di Libero prima delle build hardware finali.
Flusso demo e deploymentIl flusso di sviluppo include la preparazione del modello addestrato (quantizzazione e compressione), la compilazione in binari e pesi VectorBlox, la memorizzazione delle risorse in SPI Flash e il caricamento in DDR a runtime. Il SDK supporta mappature aware-sparse per sfruttare direttamente la sparsity delle reti nell'hardware FPGA per migliorare il throughput.
Caratteristiche / specifiche tecniche- Dispositivi supportati: PolarFire® FPGAs e PolarFire SoC FPGAs.
- Framework AI supportati: TensorFlow, TensorFlow Lite, ONNX, OpenVINO.
- Quantizzazione: strumenti di conversione FP32 -> INT8 forniti.
- Compressione: compressione strutturata e non strutturata per pesi/attivazioni/feature map; memorizzazione sparse di valori non zero e indici.
- Interfacce: MIPI CSI-2 (camera), ingresso/uscita HDMI, SPI Flash per storage non volatile, DDR per dati a runtime.
- Bus/Controllo: AXI4 master configurabile (64–256 bit) e interfaccia di controllo AXI4-Lite.
- Funzionalità IP: architettura overlay, processore vettoriale interno, acceleratore CNN.
- Consumo tipico valutato: inferenza e pipeline video < 5 W (dipende dalla configurazione).
- Hardware di riferimento: PolarFire SoC Video Kit (design di riferimento disponibile per valutazione camera/ISP/AI).
- Tool di progettazione richiesto: Libero SoC Design Suite per ricostruire o ispezionare i componenti del design di riferimento; passaggi di unione licenze richiesti secondo la guida quick-start di Libero.