Home
Accesso / Registrazione
 di 

FPGA: tutto ciò che avreste sempre voluto sapere sui Field Programmable Gate Array

FPGA guida

Tutto ciò che avreste sempre voluto sapere sul mondo dei Field Programmable Gate Array verrà svelato in questo articolo: come nasce questo fantastico dispositivo, quali sono i suoi antenati, la storia della sua evoluzione e, soprattutto, lo stato attuale della tecnologia. Vedrete cosa può nascondersi all'interno di un chip e quali innovazioni hanno portato i grandi vendor negli ultimi tempi: l'alta velocità di comunicazione, l'elevatissimo grado di integrazione, la possibilità di ridurre il numero di componenti su una scheda elettronica digitale. Nei prossimi articoli vedremo anche come fare per programmarli: il VHDL, il Verilog, i software messi a disposizione dai vendor. L'FPGA non avrà più segreti per noi!

Contenuto esclusivo per gli ABBONATI PLATINUM di Elettronica Open Source.

Leggi subito tutto l'articolo e poi ricevilo in PDF all'interno di EOS-Book insieme a tanti altri vantaggi offerti dall'Abbonamento Platinum! Diventa Utente PLATINUM

SCOPRI TUTTI I VANTAGGI DI UN ABBONAMENTO ANNUALE CHE COMPRENDE ANCHE TUTTO L'ARCHIVIO

 

 

 

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog
ritratto di Gianluca Angelone

Complimenti. Un articolo

Complimenti. Un articolo molto interessante e dallo stile chiaro e leggibile. Mi auguro di vedere presto i prossimi con la programmazione.
Concordo con la precisazione che l'FPGA sia dedicato ad applicazioni professionali, e non hobbystiche, almeno dato il costo di una scheda di sviluppo. Ho dato anche un'occhiata anche ai link proposti e devo dire che l'attenzione, in generale, è rivolta alla tecnologia, cioè cosa sono e come si usano questi prodotti.
La tua precisazione, invece, mi stimola una riflessione: per quali tipi di applicazione si usano? Forse ci vorrebbe un articolo dedicato, ma potremmo comunque approfittare di questi commenti per discuterne.
Per quanto ne so l'FPGA è usato per ridurre i tempi (e i costi) di sviluppo di nuovi sistemi, ma è sconsigliato in applicazioni a larga scala dove il costo di produzione di un circuito integrato dedicato è molto minore. Il flusso di lavoro dovrebbe, quindi, combinare la progettazione su FPGA della logica per poi portare su silicio "solo" il circuito equivalente. Viceversa per applicazioni prototipali , produzioni su piccola scala, al limite custom, conviene sviluppare applicazioni su FPGA .

ritratto di Tiziano.Pigliacelli

Grazie

Ti ringrazio per i complimenti innanzitutto.
In realtà ciò che dici riguardo ai costi, attualmente è vero solo in parte, ed era certamente "più vero" fino a poco tempo fa: i vendor di FPGA nel caso di produzioni su larga scala sono oramai disposti ad abbassare i prezzi in modo piuttosto "generoso", tanto da far preferire in molte situazioni anche per applicazioni più popolari un prodotto ancora riprogrammabile e su cui sono stati già svolti tutti i test necessari, evitando di dover riprodurre un prodotto ASIC o Hardcopy su cui poi i margini di modifica in caso di problemi sono ridotti al minimo.
Le FPGA sono nate per le telecomunicazioni, ed ancor ora vengono molto usate in questi ambiti.
I campi dell'aerospazio, della difesa, automotive e ferroviario sono pieni di FPGA. Anche il Digital Processing è approdato nel mondo FPGA, per cui i sistemi radar ne fanno largo utilizzo.
Non credo di esagerare se dico che non ci sono limiti sui campi di utilizzo di un FPGA.
Considera che una Altera Cyclone IV attualmente si aggira, come costo sul singolo pezzo, sui 200-300 dollari, per cui nel caso in cui non si abbiano grandi pretese in termini di prestazioni e affidabilità (anche se ti assicuro che la Cyclone permette comunque di fare grandi cose) si potrebbe optare per questa soluzione altamente economica. Ovviamente valgono gli stessi discorsi se si parla degli altri vendor, quali Xilinx e Lattice ad esempio.

ritratto di Andres Reyes

Articolo davvero

Articolo davvero appassionante!Aspetto con ansia i prossimi articoli!

ritratto di Gianluca Angelone

Un'altra osservazione che mi

Un'altra osservazione che mi viene in mente è relativa al concetto di tempo di elaborazione. Come giustamente fai notare, questo è legato ai tempi di transito dei segnali attraverso i circuiti digitali elementari di cui si compone la funzione realizzata.
Uno dei campi di applicazione di FPGA è proprio nell'elaborazione veloce di segnali: ad esempio io utilizzo un sistema di simulazione real time (di Opal-RT) basata su una FPGA della Xilinx. L'oggetto da analizzare contiene dei sottosistemi che risulterebbero complessi da simulare via software su un normale microprocessore che, con tempi di campionamento nell'ordine dei microsecondi, non riuscirebbe a garantire l'elaborazione real time.
La soluzione prevede di realizzare delle funzioni logiche in FPGA che, con i tempi di elaborazione dell'hardware (tempi di campionamento dell'ordine delle decine di nanosecondi) permettono di acquisire e processare i segnali di interesse fornendo i dati necessari alla CPU, garantendo l'esecuzione in real time.
Mi piacerebbe conoscere anche altre esperienze relative alle applicazioni di FPGA.
Se utile , potrei preparare un articolo sulle simulazioni real time.

ritratto di Tiziano.Pigliacelli

Radar

In un precedente lavoro che ho fatto, l'FPGA era su una scheda elettronica montata su un radar. Il radar aveva il compito di monitorare delle specifiche zone e verificare che oggetti di dimensioni specifiche non invadessero la zona da monitorare. Immagina ad esempio dei binari ed una galleria da cui possono cadere massi proprio sui binari.
L'FPGA aveva il compito di temporizzare i movimenti del radar, ricevere dati provenienti dal radar (attraverso degli AD Converter), elaborarli, inviarli se necessario a delle memorie di appoggio, oltre ad alcuni servizi accessori (Interfacce con PC per test, controllo delle alimentazioni, ...). C'era anche un'interfaccia seriale per comunicare con un PC per ricevere le configurazioni e per inviare gli esiti delle elaborazioni.
In un altro lavoro invece l'FPGA aveva il compito di intercettare un flusso dati Ethernet per fare uno zero-padding sui pacchetti che avevano lunghezza minore di 64 byte.

ritratto di Giorgio B.

Ma quindi sarà una serie?In

Ma quindi sarà una serie?
In quante puntate?
Di cosa parlerete nello specifico?
Ci sarà il monotematico alla fine?
Devo dire che FPGA e un altro paio di argomenti latitavano su questo blog e sono molto felice che questi stiano diventando sempre più casi isolati :D
Complimenti!

Posso fare solo un'osservazione? Più che altro una domanda: come mai questo corso non partecipa al contest? Avrebbe potuto fare tanti punti.
Non so, io penso che non avrei scelto la stessa cosa.

ritratto di Tiziano.Pigliacelli

Webnovela

Sì, sarà una webnovela, stimata per ora in 10 puntate. Vi anticipo che il prossimo argomento tratterà i vendor di FPGA che vanno per la maggiore: Xilinx, Altera e Actel. Per gli altri articoli non vi anticipo nulla, anche per lasciare un minimo di suspense...
Sono un nuovo acquisto qui, non so ancora come funziona il tutto, diciamo che quando ho pubblicato questo articolo non sapevo neanche dell'esistenza di questo contest... Sto provvedendo ad iscrivermi, anche se mi sono ritrovato in classifica con 30 punti. Spero di essere competitivo :)
Grazie per l’apprezzamento, mi impegnerò per mantenere un livello apprezzabile per i prossimi articoli!

ritratto di Giorgio B.

Ottimo! Attendo i prossimi

Ottimo!
Attendo i prossimi allora :)

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 1 utente e 42 visitatori collegati.

Utenti online

Ultimi Commenti