linux user group brescia

immagine del castello

Archivio della mailing list

[LugBS] Nuovi Arduini

Enrico Colombini erix a erix.it
Mer 23 Maggio 2018 12:01:59 UTC
On 23-May-18 13:07, Diego Guella wrote:
> Tu cosa usavi per progettare su quella board? I tool di Xilinx (ISE, 
> EDK, ecc..) o altro?

ISE, nella versione gratuita. Pesantissimo...

> Non so se tu abbia già lavorato con la toolchain di Xilinx, ma quella ti 
> permette (con Xilinx Platform Studio, XPS, incluso in EDK) di gestire il 
> tuo progetto in un modo abbastanza familiare (alla "PC"), incentrato sul 
> soft-processor MicroBlaze [...]

Uno dei motivi per cui non ho ulteriormente approfondito gli FPGA è 
appunto il loro ecosistema (moduli e soft-processor sotto IP 
proprietaria) che non è esattamente un investimento a lungo termine e 
non è portatile.
Li studierò se mai avessi richiesta di utilizzarli, ma per conto mio ho 
già dato abbondantemente negli anni con investimenti in perdita su 
architetture e software proprietari, grazie :-)
(ad esempio, avendo smesso di pagare la tangente ad Apple, non posso 
nemmeno più eseguire sul mio device un paio di programmi che scrissi per 
iOS)

> Il nuovo Arduino, integrando una FPGA Intel/Altera, dovrà per forza di 
> cose legarsi ai loro tool, e quindi non sarai "libero" di passare a 
> Xilinx, o Lattice, ecc...
> Oppure avranno inventato un IDE loro, open-source, e con magari una 
> libreria di moduli/periferiche già pronti?

Mi pare di capire che sia la seconda, ma sospetto che non si potranno 
creare nuovi moduli.

> Qui non è come con GCC che compili da C e finisci direttamente in codice 
> macchina x86, ma c'è un altro passaggio di mezzo, del quale non credo ci 
> libereremo presto: il passaggio da HDL a RTL (per i non addetti ai 
> lavori: RTL è un linguaggio che descrive i collegamenti tra elementi 
> logici digitali semplici, come porte logiche, flip-flop, ecc), e da RTL 
> al bitstream che configura tutta la logica interna dell'FPGA (questo è 
> simile al "binario eseguibile" che noi diamo in pasto ai nostri x86, e 
> viene caricato dall'FPGA all'accensione da una memoria non volatile).

In teoria (complessità a parte) ciò sarebbe grosso modo paragonabile ai 
vari cross-compilatori per gcc che gestiscono la generazione del codice, 
ma ovviamente i produttori non ci tengono affatto che un utente possa 
cambiare fornitore con facilità.

> Per quanto riguarda le "obsolescenze programmate", non credo facciano 
> parte del mondo degli FPGA: ad esempio, la Spartan-3 presente sulla 
> board che hai citato è ancora supportata, forse non più venduta così 
> com'è, ma sicuramente viene venduta nelle "nuove" versioni Spartan-3E e 
> Spartan-3A.

In compenso già un anno fa era solo supportata dai tool 'legacy', se non 
sbaglio.

> Democratizzarlo nel senso di farlo conoscere alle masse, speriamo!
> Ma arrivare al livello di avere tutta una toolchain open-source... Credo 
> che siamo ancora mooolto lontani, di decenni a questo risultato.
> Primo, tutti i produttori dovrebbero rendere disponibile dei file che 
> descrivono l'architettura interna dei loro FPGA, con licenze di utilizzo 
> libere.
> Poi, si dovrebbe sviluppare una community per, appunto, realizzare 
> questi tool open-source indipendenti: si tratta di valanghe di ore di 
> ingegneri elettronici (e non... il Place & Route va a toccare problemi 
> matematici molto complessi) a lavoro.
> Penso sia più vicino a un'utopia, ma non si sa mai!

Eh, temo anch'io.

-- 
   .Erix.



Maggiori informazioni sulla lista Lug