Che cos’è un FPGA
FPGA significa field-programmable gate array: un circuito integrato con logica e interconnessioni configurabili. Il progetto configura il comportamento hardware invece di fornire soltanto istruzioni a un processore fisso. Le risorse sono finite; non può realizzare circuiti illimitati senza vincoli di capacità, temporizzazione e interfacce.
Architettura e confronto
Le risorse logiche realizzano funzioni e stato; le connessioni le collegano. Secondo la famiglia, memorie, DSP, transceiver e processori completano la logica programmabile. Un MCU esegue software su un’architettura fissa; molti includono periferiche, acceleratori e più core. Un FPGA può implementare pipeline parallele, ma non è automaticamente più veloce o efficiente per ogni carico. Un ASIC può offrire maggiore efficienza per un compito specifico ad alto volume, con diversi impegni di sviluppo e fabbricazione.
Alcuni SoC FPGA combinano un processore capace di eseguire Linux con logica programmabile. Linux gira sul processore idoneo, non direttamente sulle porte senza processore. Verificare memoria, supporto della scheda e strumenti del dispositivo.
Flusso di sviluppo
- Definire interfacce, throughput, latenza, clock e reset.
- Progettare RTL o usare sintesi di livello superiore supportata.
- Simulare funzionamento normale e guasti prima delle prove sulla scheda.
- Sintetizzare, posizionare e collegare; controllare vincoli e attraversamenti dei domini di clock.
- Verificare l’hardware configurato sulla scheda target.
- Versionare bitstream, sorgenti, vincoli, strumenti ed evidenze.
La chiusura temporale richiede vincoli corretti e ipotesi verificate. La latenza deterministica è un risultato architetturale da dimostrare, non una garanzia del nome FPGA.
Costo, potenza e sicurezza
Il budget dipende da famiglia, package, quantità, licenze IP, strumenti, scheda e verifica. Usare preventivi attuali invece di listini universali. Stimare potenza statica e dinamica con strumenti del fornitore, poi misurare modalità rappresentative; contano clock, commutazione, memoria e transceiver.
Autenticazione e cifratura variano per famiglia e configurazione. L’autenticazione protegge da configurazioni non autorizzate; la cifratura può proteggere la riservatezza del bitstream. Pianificare chiavi, debug, recupero e controlli anti-rollback supportati. La riconfigurabilità consente alcune modifiche sul campo, ma non dimostra da sola sicurezza o conformità legale.
CRA e scelte tecnologiche
I requisiti CRA sono orientati ai risultati e tecnologicamente neutrali, in base alla valutazione dei rischi e all’applicabilità. Secure boot, radice hardware di fiducia, TPM, TrustZone e OTA wireless possono essere misure opportune; non sono obblighi universali per ogni prodotto. Documentare perché i controlli scelti soddisfano i requisiti, senza equiparare una singola architettura alla conformità.
Date e ambito CRA
Il CRA è entrato in vigore il 10 dicembre 2024. Le segnalazioni dell’articolo 14 si applicano dall’11 settembre 2026; i requisiti principali dall’11 dicembre 2027. L’articolo 69 contiene regole transitorie per prodotti già immessi sul mercato. I prodotti soggetti a MDR o IVDR sono esclusi dall’articolo 2(2); verificare anche altre esclusioni e il software libero/open-source non commerciale.
Assistenza, aggiornamenti ed evidenze
L’allegato I CRA richiede i meccanismi applicabili per gestione delle vulnerabilità e aggiornamenti sicuri. Gli aggiornamenti automatici hanno condizioni ed eccezioni; automatico non significa wireless. L’articolo 13(8) determina l’assistenza, normalmente almeno cinque anni; con uso previsto più breve, corrisponde a tale uso, mentre fattori relativi a un uso più lungo possono richiedere più assistenza. La SBOM deve essere leggibile da macchina e coprire almeno le dipendenze di primo livello.
Segnalazioni: obbligo distinto
L’articolo 14 CRA riguarda vulnerabilità attivamente sfruttate e incidenti gravi che incidono sulla sicurezza del prodotto, non ogni CVE. Entrambi richiedono un preallarme entro 24 ore e una notifica entro 72 ore dalla conoscenza. Il rapporto finale sulla vulnerabilità è dovuto entro 14 giorni dalla disponibilità di una misura correttiva o di mitigazione; quello sull’incidente grave entro un mese dalla notifica. Segnalazione, valutazione di conformità e aggiornamenti sono obblighi distinti.
Domande frequenti
Che cosa significa FPGA?
Field-programmable gate array: chip con logica e connessioni configurabili entro risorse finite.
Un sistema FPGA può eseguire Linux?
Alcuni SoC FPGA includono un processore capace di Linux. Verificare processore, memoria e scheda; le sole porte non eseguono un sistema operativo.
Un FPGA è sempre più veloce di un MCU?
No. Può realizzare hardware parallelo, ma le prestazioni dipendono da compito, architettura, clock, interfacce e implementazione.
L’articolo 14 CRA impone aggiornamenti sul campo?
No. L’articolo 14 riguarda segnalazioni di vulnerabilità sfruttate e incidenti gravi. Aggiornamenti e gestione delle vulnerabilità sono principalmente nell’allegato I e articolo 13.