Field programmable gate array
Da Wikipedia, l'enciclopedia libera.
I dispositivi FPGA (Field Programmable Gate Array) sono dispositivi digitali la cui funzionalità è programmabile via software.
Sono elementi che presentano caratteristiche intermedie rispetto ai dispositivi ASIC (Application Specific Integrated Circuit) da un lato e a quelli con architettura PAL (Programmable Array Logic) dall'altro. L'uso di tali componenti comporta alcuni vantaggi rispetto agli ASIC: si tratta infatti di dispositivi standard la cui funzionalità da implementare non viene impostata dal produttore che quindi può produrre su larga scala a basso prezzo. La loro genericità li rende adatti a un gran numero di applicazione come consumer, comunicazioni, automotive eccetera. Essi sono programmati direttamente dall'utente finale, consentendo la diminuzione dei tempi di progettazione, di verifica mediante simulazioni e di prova sul campo dell'applicazione. Il grande vantaggio rispetto agli ASIC è che permettono di apportare eventuali modifiche o correggere errori semplicemente riprogrammando il dispositivo in qualsiasi momento. L'ambiente di progettazione è anche più user-friendly e di relativamente facile acquisizione. Di contro per applicazioni su grandi numeri (più di qualche migliaio di pezzi) sono antieconomici, perché il prezzo unitario del dispositivo è superiore a quello degli ASIC (che di converso hanno elevati costi di progettazione).
Il costo di tali dispositivi è oggi in rapida diminuzione: ciò li rende sempre di più una valida alternativa alla tecnologia standard cell. Usualmente vengono programmati con linguaggi come il Verilog o il VHDL, ma non bisogna dimenticare la modalità "schematic-entry", che consente un approccio veloce e semplificato a tale tecnologia, e peraltro, di pari potenzialità. Molte case costruttrici (ad esempio Xilinx ed Altera) forniscono gratuitamente sistemi di sviluppo che supportano quasi tutta la loro gamma di prodotti.