
Eccoci qui, con una nuova puntata del nostro corso su FPGA. Quello di cui parliamo oggi rende più completo un quadro che si va sempre più delineando nei dettagli. In particolare, non si può utilizzare un dispositivo FPGA se non si conosce il suo tool di sviluppo. E proprio per questo motivo ho deciso di venire in vostro aiuto, descrivendovi il tool progettato da Altera per dare la vita al vostro dispositivo programmabile. Ci stiamo avvicinando davvero al cuore del nostro dispositivo: signore e signori, ecco a voi Altera Quartus II!
ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2056 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.

Come sempre, sei stato chiaro ed hai scritto un ottimo articolo.
Credo che alla fine siamo arrivati al tasto dolente: le licenze.
E quindi io voglio chiederti una cosa: esiste l’open source in questo campo? Se sì, che soluzioni ci sono? Qual è la tua idea? Il tuo parere? che ne pensi? Sono all’altezza?
Oppure ci sono sempre i soliti problemi, cioè il programma è funzionante, alla perfezione, ma, per esempio l’interfaccia utente è minimale, il supporto non è del tutto esteso oppure magari ci sono bug minori da risolvere che però finchè non capita lo smanettone a cui interessa, non c’è nessuno a cui affidarli e quindi restano lì?
La mia non voleva essere un invettiva contro l’open source, eh?!
Solo dico che tutti noi vediamo questo genere di cose e allora è anche giusto dirsi che ci sono dei limiti, non trovate?
Era pressochè inevitabile, secondo me, che non appena arrivati alle licenze si sarebbe solevvata questa obiezione 🙂
Inevitabile…
Ad ogni modo, penso potrebbe essere un buon punto da approfondire 🙂
Bravo Giorgio.
Tiziano, che ne dici?
Nel frattempo, però, io vorrei sottolineare che il fatto che i progetti open vivano di passione degli sviluppatori (ma fortunatamente non sempre e non solo) non è mica un male… Le soluzioni commerciali non sono affatto esenti da bug solo perchè sono state comprate a centinaia di €…
Per piacere, non facciamo confusione 😉
Scusate la non celerità nella risposta, ma sono fresco di trasloco.
Inizio con una precisazione: io non programmerei mai un’FPGA con un software non proprietario, intendendo con ciò con un software non realizzato dalla stessa ditta che ha realizzato l’FPGA. Ogni FPGA ha una propria essenza, delle proprie caratteristiche, a tal punto che mi resta difficile pensare che chi non l’ha creata possa conoscere a pieno. Al massimo può succedere per famiglie un po’ datate, in cui magari con uno studio molto approfondito si può iniziare a conoscere un certo dispositivo, iniziare a creare un software ad hoc, testarlo con cura e infine rilasciarlo, ma a questo punto l’FPGA in questione è già obsoleta, dato che ne escono di nuove almeno di anno in anno.
Il tool di programmazione è totalmente legato all’Hardware. Fino alla sintesi no, e infatti esistono ottimi tool che realizzano la sintesi del sistema. Ma dal Place&Route in poi ho davvero tante riserve.
Ma il mio pensiero non va a intaccare i concetti di open-source o altro. E come dice Piero, non si tratta di presenza o meno di bachi, perché, detto tra noi, ne ho trovati alcuni in Quartus. E’ un discorso di più ampio raggio.
Detto ciò, ammetto la mia ignoranza nell’esistenza di un software open-source o meno alternativi, per cui mi riservo di informarmi e divulgarvi l’esito delle mie ricerche.
Ma io non parlavo mica solamente delle licenze…
A me interessava l’intera soluzione, sia hardware sia software.
Tra l’altro in genere esempi di schede sviluppate da comunità open source non è che manchino, o no?
Magari è così anche in questo caso.
Poi è chiaro che le licenze per i software sono un fatto tutt’altro che accessorio. 🙂
Perfetto grazie
C’è ancora un pochino da attendere, ma sto lavorando per voi, non mi sono dimenticato!
Ho trovato la risposta ai tuoi dubbi Giorgio!
Finora ero certo che l’unica cosa opensource per FPGA erano file (VHDL e Verilog) con codice già utilizzato e reso disponibile per lo più attraverso il sito Opencore.
Ora ho scoperto che esiste Papilio!
Questi nomi sono proprio buffi, ma si chiama proprio così. E’ la versione con FPGA di Arduino.
http://www.gadgetfactory.net/papilio-wiki/
Si tratta di un progetto HW Opensource che anziché avere un microprocessore ha a bordo un’FPGA.
La cosa bella è la compatibilità con Arduino. Infatti dentro l’FPGA può essere instanziato un soft-micro (nel prossimo articolo spiegherò un po’ meglio il concetto) in cui poter scaricare i vostri programmini opensource di Arduino.
Penso che anche Emanuele a questo punto non può restare indifferente!!! 😉
Ovviamente per programmare l’FPGA (Xilinx) c’è bisogno di Xilinx ISE. Ma non c’è bisogno di pagare la licenza, basterà utilizzare la versione gratuita Webpack. Sul sito comunque è spiegato tutto. Credo che il limite in questa versione gratuita è che non possiamo salvare il FW dell’FPGA dentro una memoria non-volatile, e a ogni spegnimento bisogna ricaricarlo. Oltre ovviamente alla completa mancanza di assistenza da parte di Xilinx (cosa preziosissima per chi ci lavora, garantisco!!!).
GRAZIE! :DD
Buongiorno a tutti
Nel progetto di ricerca che sto sviluppando per l’università utilizzo Quartus. Trovo che sia un ottimo programma (utilizzo una Stratix 4 come FPGA, su una board denominata DE4) e l’assistenza (come ad esempio il forum) è sempre a disposizione per ogni dubbio (anche se non sono proprio gentilissimi). Trovo però ORRENDA la documentazione! Terribilmente sparsa in più files che dicono spesso le stesse cose e non chiariscono i dubbi. O meglio. Se uno sa già che esiste una particolare caratteristica di un particolare modulo, sulla documentazione si ritrova, altrimenti io spesso mi ci perdo. In secondo luogo fino alla versione 9 di Quartus esisteva un simulatore che faceva parte dei tool di Quartus, oggi invece (io uso la versione 13) si appoggia a Modelsim che può piacere o meno.
Ho sempre usato linux nella mia vita (distro Ubuntu) e Quartus si comporta bene, mentre per quanto riguarda modelsim ho avuto qualche problema. Utilizzo per esempio un modo di scrittura del codice particolare (convenzioni ESA… magari un giorno scrivo due righe a riguardo…) e con modelsim non sono ancora riuscito a simulare. Quindi mi sono dovuto scrivere un testbench in VHDL standard e convertire ogni volta le modifiche in codice ESA.
Infine segnalo come open source un (secondo me) ottimo simulatore di vhdl presente nelle repository di ubuntu fino alla versione ubuntu 11, che si chiama GHDL (http://ghdl.free.fr/site/pmwiki.php).
Per usarlo utilizzavo una macchina virtuale con quella “vecchia” distro di linux. E’ stato un ottimo programma per iniziare a capire il mondo VHDL.
Salve a tutti,
sono appena arrivato perciò ritengo sia utile cercare di capire come funziona il forum e stare zitto per un po’.
🙂
Benvenuto 🙂
Capisco l’atteggiamento e ti ringrazio a nome di tutti per la discrezione 🙂
Prenditi pure il tempo che ti serve per ambientarti.
Dopodichè tieni presente che quello che vedi è quello che c’è: una comunità attiva che interagisce con gli autori di articoli e domande, dubbi e curiosità sia qui sul blog sia nel forum 🙂
Se hai problemi, o domande, non esitare a contattarci 🙂
Enjoy your time here! 🙂
Ciao, scusa il ritardo nella risposta ma mi era sfuggito il tuo commento. Ti ringrazio per aver condiviso la tua esperienza personale, forse hai ragione riguardo alla documentazione, ma io ho l’impressione che abbiano davvero così tante cose da inserire nei documenti, che trovo difficile pensare a qualcosa di più ridotto. Io ho visto come spesso delle application note mi siano corse in aiuto, ma è vero che trovare l’application note che fa al tuo caso non è per niente banale. In questo è certamente di aiuto chiedere ai Field Application, che in questo mare di documenti si districano senz’altro molto bene e possono dare le risposte di cui si ha bisogno.
Riguardo ai simulatori, io ho sempre usato modelsim, ed ho sempre usato VHDL e un po’ di verilog per simulare, e non ho i metri di paragone che hai tu. Interessante il simulatore Open-Source che citi, ti ringrazio per aver aumentato il panorama. Anzi, ora che ci penso credo di aver parlato molto poco o forse nulla di simulazione… mmm … vabbé ho da cui pensare per un po’.
Ciao
Tiziano