Altium Nanoboard 3000 Altera >> Recensione FPGA

Test Altium Nanoboard 3000 Altera FPGA

La Nanoboard 3000 è una scheda FPGA prodotta dalla casa australiana Altium destinata principalmente allo sviluppo di progetti digitali e realizzazione rapida di prototipi. E' disponibile in tre versioni che si differenziano unicamente per il chip di FPGA montato: Xilinx, Altera, Lattice, i produttori che complessivamente si spartiscono circa il 90% del mercato delle logiche programmabili.

Oltre alla Nanoboard 3000, esistono anche la Nanoboard2, di progettazione un po' meno recente, e la Nanoboard1, obsoleta. In ogni caso la definizione di "scheda FPGA" è riduttiva perchè in realtà si tratta di un sistema hardware e software, ben distinto dalle comuni schede FPGA in commercio.

La scheda che ho avuto modo di provare monta il chip Altera EP3C40F780C8, una FPGA della serie Cyclone III contenente 39.600 elementi logici, 126 blocchi di memoria dual port da 9 kbits, 126 moltiplicatori 18x18 bits e 535 pin di I/O, in un contenitore FBGA780.

Il fatto che la stessa Nanoboard 3000 venga prodotta in tre versioni che coprono la maggior parte dei produttori di FPGA è un caso unico, a mia conoscenza, nel mercato di questo tipo di schede ed evidenzia l'idea di base di Altium: realizzare un sistema di sviluppo a livello di astrazione indipendente dall'hardware. La Altium principalmente produce software per la progettazione elettronica, coprendone tutte le fasi. La scheda Nanoboard, in collegamento con questo software, permette di trasformare immediatamente in realtà una grandissima varietà progetti di dispositivi digitali e sistemi embedded, quali sistemi di controllo e automazione, videogiochi, multimedia, periferiche di computer, web server e molto altro.

Un vero laboratorio hardware e software che non ha bisogno di costruire circuiti stampati e montaggi di componenti perchè il tutto viene realizzato e collegato all'interno della stessa scheda, con la possibilità di modificare il circuito all'infinito in pochi minuti, grazie alla FPGA e alle numerose periferiche a bordo.

L'hardware della Altium Nanoboard 3000 Altera FPGA

La bellissima confezione fa intuire a prima vista che si tratta di un prodotto molto curato. All'interno si trovano, oltre alla scheda vera e propria, i supporti di plastica per poterla appoggiare su un tavolo, il pannello con gli altoparlanti da collegare alla scheda, l'alimentatore universale da 5V 4A con i cavi di alimentazione per le reti elettriche europee, americane, inglesi, ecc., il cofanetto del DVD del software Altium Designer, un telecomando a infrarossi, le pile, un cavetto USB e altri piccoli accessori.

C'è persino una salvietta imbevuta di alcool isopropilico per pulire le sedi in cui attaccare i piedini di gomma autoadesivi! Una presentazione ben diversa dalle solite schede FPGA anche ben più costose. Anche la scheda è costruita molto bene, a norme RHos, con un circuito stampato montato su entrambe le facce, completamente dorato e con solder mask nero, un abbinamento di colori per la verità un po' funereo.
Ciò che colpisce è la quantità di connessioni verso l'esterno:

    - alimentazione (5V)
    - USB Host, per collegare la scheda al PC
    - uscita SVGA a 8 bit per colore
    - interfaccia midi (out, thru, in) per il collegamento a strumenti musicali
    - ethernet 10/100
    - RS485
    - RS323
    - morsetti per 4 relè
    - morsetti per 4 uscite PWM (in realtà sono i drain di 4 NMOS 30V/5,8A)
    - 4 ingressi ADC 8 bit/100 ks/s
    - 4 uscite DAC 8 bit
    - 4 connettori per jack di i/o audio
    - 2 connettori minidin per tastiera e mouse PS2
    - 2 connettori per i/o audio digitale SPDIF
    - 3 connessioni standard USB (master)
    - 2 alloggiamenti per schede SD
    - 1 connettore mini USB (periferica)

Inoltre la scheda dispone di un display grafico touch screen da 2,4 pollici TFT a 64k colori retroilluminato, un ricevitore per infrarossi, 8 led rgb, 5 pulsantini, 8 dip switch, connettore per una daughter board. Infine 2 connettori da 18 i/o ciascuno e un'area millefori a passo 2,54 mm. a libera disposizione dell'utente per costruire e collegare dispositivi esterni.

Il circuito è composto dalla FPGA Altera alla quale sono collegati, tramite un bus comune, 256K x 32 bit di RAM statica, 16M x 32 bit di RAM dinamica, 8M x 16 bit di Flash parallela. In aggiunta, sono collegate in modo indipendente, due RAM statiche da 256K x 16 bit. Infine sono presenti 4 memorie seriali flash da 8 Mbits ciascuna, tre delle quali riservate alla configurazione del sistema e una a disposizione dell'utente. Fatto inusuale, è presente una seconda FPGA Cyclone III EP3C10F256C8 dedicata all'host controller che si occupa della configurazione della FPGA principale e delle comunicazioni via USB con il computer.

Il software Altium Designer Soft Design

La Nanoboard 3000 lavora in stretto abbinamento con il software Altium Designer che nella versione completa è un sistema di CAE elettronico che va dal disegno di schemi elettrici, alla simulazione analogica e digitale, al disegno di circuiti stampati, allo sviluppo di software per micro, fino alla progettazione di sistemi con FPGA, in un unico ambiente.

La versione fornita con la Nanoboard è una versione ridotta, denominata Soft Design, che consente di disegnare schemi elettrici digitali, scrivere descrizioni di sistemi digitali in VHDL e Verilog, usare le librerie di componenti che comprendono varie CPU, scrivere software per tali CPU, simulare hardware e software, sintetizzarlo, configurare la FPGA della Nanoboard 3000 e testare il tutto con degli strumenti software da PC. La licenza per usare Altium Designer Soft Design ha la durata di un anno e può essere usata solo abbinata a una singola Nanoboard. Alla scadenza la licenza può essere rinnovata a pagamento di anno in anno, oppure acquistando una licenza perpetua o il pacchetto completo che però hanno un costo non indifferente. Comunque la scadenza si riferisce solo al software Altium Designer, mentre un sistema funzionante sulla Nanoboard e memorizzato nella sua memoria flash non ha scadenze nè costi di royalities. Perciò quando si realizza un sistema e lo si vende, conviene comprare un'altra Nanoboard e ottenere così una nuova licenza di un anno.

Va precisato che in ogni caso Altium Designer si appoggia al sistema del produttore di FPGA per il place & route, la fase finale di compilazione di un progetto. Nel caso della FPGA Altera è necessario perciò il software Quartus, anche in versione gratuita.

Si parte con Altium Nanoboard 3000 Altera

Il primo passo è l'installazione del software, che viene fornito in una custodia curata nello stesso stile degli altri imballaggi. Il supporto è un DVD-R masterizzato ma comunque etichettato in modo professionale. La versione fornita è la Summer09, attualmente l'ultima rilasciata da Altium. Tuttavia la build 9.2.0.18802 contenuta nel DVD non è l'ultimissima, perciò se si desidera si può scaricarne una più aggiornata dal sito Altium, ma solo dopo essersi registrati. La licenza infatti comprende anche gli aggiornamenti per un anno.

Il computer su cui ho installato il software è un notebook economico con il famigerato Windows Vista Home Basic 32 bit, cpu AMD Semprom SI-42 a 2,1 GHz e ram da 2 GB. Ho scelto di installare Altium Designer su questa macchina perchè qui avevo già installato Altera Quartus Web Edition, anche se in una versione piuttosto datata, la 7.2. Ricordo che è indispensabile la presenza di Quartus, se non lo si possiede basta scaricarlo dal sito Altera nella versione più aggiornata, attualmente la 10. E' comunque un bel programmone da vari GB. Nel mio computer è installato anche Nios II IDE, il sistema di sviluppo per la soft CPU Altera Nios II, ma non dovrebbe essere indispensabile per lavorare sulla Nanoboard. Ad ogni modo anche questo pacchetto è scaricabile dal sito Altera.

L'installazione non presenta particolari difficoltà, ho accettato la End User License Agreement a occhi chiusi, considerato che è un papiro inglese che mi avrebbe richiesto almeno un'ora di lettura, e soprattutto per il fatto che non ci sono alternative per poter proseguire, e ho lasciato le poche opzioni come da default. L'unica nota di rilievo è che viene installato il pacchetto Altium Designer completo, ma si potranno usare solo le parti di software che saranno attivate in base alla licenza Soft Design. Anche per questo motivo lo spazio di Hard Disk richiesto è piuttosto consistente, circa 3,8GB. L'installazione ha richiesto circa 20 minuti. Subito dopo ho collegato la Nanoboard al computer via USB. Appena accesa la Nanoboard, Windows riconosce la nuova periferica e automaticamente installa i driver necessari. A questo punto l'installazione è completata.

Problemi iniziali
Alla prima esecuzione del programma dovrebbe venire presentata la pagina per la registrazione online del software, senza la quale il programma non funziona e, di conseguenza, la Nanoboard è inutilizzabile. Le licenze di Altium Designer infatti sono gestite via internet a livello centralizzato dalla casa madre, con delle procedure abbastanza complicate e, a mia opinione, piuttosto fastidiose per l'utente. Nel mio caso le difficoltà per la registrazione sono state molto maggiori a causa del fatto che la Nanoboard risultava già registrata e non era possibile ottenere una nuova licenza. Inoltre ho subito scoperto un'altra caratteristica di Altium Designer: l'help è gestito in gran parte via web internet, richiamando le pagine html del sito wiki di Altium, cosa che richiede un collegamento continuo a internet. Purtroppo tale sito è particolarmente lento, per cui ogni pagina di help viene visualizzata dopo 5-10 secondi, e ciò avviene con tutti i provider internet che ho provato: una adls domestica Infostrada, una adsl aziendale e infine un collegamento con chiavetta wireless Tre.

Alla fine, nonostante le mie richieste di assistenza via email e telefono alla Altium, sono riuscito ad avere una licenza valida solo con l'intervento di Emanuele presso il fornitore britannico della Nanoboard 3000. Tutto ciò comunque ha comportato un ritardo di un paio di settimane.

La logica della Nanoboard 3000

Con queste premesse poco rassicuranti ho iniziato a addentrarmi in Altium Designer. Fortunatamente l'installazione di Altium Designer comprende due cartelle, Help e Examples, dove ci sono moltissimi documenti in formato Acrobat e progetti di esempio. Sono partito quindi da "TU0116 Getting Starded with FPGA Design.PDF" che spiega come iniziare da zero un piccolo progetto per FPGA basato su schema elettrico. Le spiegazioni sono abbastanza dettagliate, anche se ad un certo punto mi sono reso conto che il progetto non era per la Nanoboard 3000 ma per la Nanoboard2, un modello precedente ma abbastanza simile, ed inoltre riguardava la FPGA Xilinx invece che Altera. Questa confusione tra i diversi modelli di Nanoboard purtroppo è presente spesso in tutta la documentazione e nei tutorial nonchè nei progetti di esempio.

Le differenze in questo caso riguardavano i led che nella Nanoboard 3000 sono RGB invece che normali led singoli, perciò è bastato prendere il componente giusto dalla libreria. A parte questo piccolo disguido, ho compilato il progetto senza problemi e caricato nella FPGA. E finalmente ho visto la luce nel vero senso! Infatti i led si sono accesi. Incoraggiato da questo risultato, mi sono addentrato nella cartella Examples, dove ci sono decine e decine di progetti. Per qualche motivo però, quando compilo un progetto, Altium Designer mi dà un errore di scrittura dei file. Andando a vedere le proprietà di questi file, ho notato che non tutti gli utenti hanno i diritti per scriverli.

Cambiando questi diritti manualmente il tutto funziona. Ho aperto perciò un caso per richiedere assistenza sul sito del supporto Altium descrivendo il problema. Dopo una settimana, non avendo ottenuto risposta, ho inviato un sollecito. A quel punto ho ricevuto una email da parte di Altium Italia che mi prometteva che qualcuno mi avrebbe contattato e nel frattempo ho visto che il mio caso era stato chiuso come se fosse stato risolto. In realtà sto ancora aspettando qualche comunicazione. Intanto ho cambiato manualmente i diritti dei file e così ho potuto provare molti esempi, modificarli e scrivere alcuni miei progetti, sempre usando lo schematic entry.

Con soddisfazione posso dire che non ho trovato nessuna difficoltà e tutto funziona liscio. Girando per il web avevo letto di alcuni problemi di integrazione tra Altium Designer e ISE, il software di sviluppo per le FPGA Xilinx. Nel mio caso, con una FPGA Altera, fortunatamente l'integrazione con Quartus è perfetta, nel senso che il software Altera viene chiamato in modo assolutamente trasparente.

I miei primi esperimenti hanno riguardato gli otto bellissimi led rgb della scheda che, avendo una luminosità letteralmente accecante, è bene comandare sempre in PWM con l'apposito componente della libreria. Inizialmente usavo i pulsantini e gli striminziti dip switch per comandare i miei circuiti. Per fortuna poco dopo ho scoperto i "virtual instruments", una caratteristica originale del sistema Altium-Nanoboard. Si tratta di dispositivi come frequenzimetro, contatore, logic analyzer, led, pulsanti, slider virtuali, cioè visualizzati sul monitor e collegati al proprio circuito come qualunque altro componente, per mezzo dei quali si possono immettere e leggere valori logici e numerici.

Interessante anche la possibilità di creare dei propri "custom instruments", che consentono di rapresentare i dati di un circuito con una miriade di tipi di indicatori a barra, strumenti a lancetta, display, grafici, ecc. disegnabili dall'utente e gestiti tramite script. Gli script sono essenzialmente procedure scritte in linguaggio Delphi, un'evoluzione del Pascal della Borland. Una caratteristica dei virtual instruments è di essere collegati al computer via JTAG, quindi senza occupare ulteriori pin della FPGA. Esiste anche un apposito software, gratuito e indipendente da Altium Designer, scaricabile dal sito, per poter gestire i virtual instruments sul campo, per esempio per fare service su un circuito basato su FPGA.

Effettivamente i virtual instruments rendono molto comoda e veloce la verifica di un progetto su FPGA perchè si interagisce direttamente con il circuito. Tuttavia non credo che possano sostituire in tutti i casi le classiche e noiosissime verifiche funzionali e temporali basate su simulatore, vettori e testbench, che comunque sono sempre disponibili in Altium Designer.

Anche se il primo approccio al sistema è molto semplice, per poterlo usare in modo proficuo è necessaria una fase di apprendimento come per qualunque programma specie se complesso come questo. Il sito Altium è ricchissimo di documentazione, ma male organizzata. In particolare sono molto utili i numerosi tutorial in forma di filmati illustrati da Marty Hauff. Ovviamente sono tutti in lingua inglese. Per chi, come me, capisce meglio la lingua scritta, sono utilissime le trascrizioni, ma sfortunatamente non tutti i filmati ne sono corredati.

Dopo poche ore di uso, l'impressione complessiva che ho avuto di Altium Designer e della Nanoboard, è che si tratti di un sistema ben costruito, molto complesso ma intuitivo nell'uso, ideato da gente esperta nella progettazione elettronica. Mi ha sorpreso la facilità con cui si possono progettare, simulare, realizzare in FPGA e testare dal vivo circuiti digitali anche molto complessi, senza preoccuparsi troppo delle caratteristiche della FPGA. Il confronto nel mio caso riguarda Quartus, con il quale di solito realizzo i miei progetti su FPGA Altera, che tra l'altro richiede un maggiore training e una approfondita conoscenza della FPGA.

Oltre la logica

Disegnare circuiti logici e realizzarli immediatamente su una scheda senza bisogno di costruire fisicamente alcunché è molto divertente. Ma non è niente a confronto di quello che si può ancora fare con una FPGA. Mi riferisco ai sistemi embedded. Con una FPGA da 40 mila elementi logici si possono costruire interi sistemi completi di CPU, memoria, periferiche e programma in un solo chip e avanzare ancora molto spazio. La cosa non è una novità, tutti i produttori di FPGA forniscono strumenti per farlo. Per esempio Altera fornisce tutti gli strumenti per costruire un SOPC, un System On Programmable Chip, basato sulla CPU NIOS II, una soft CPU a 32 bit ottimizzata per le FPGA Altera e configurabile in vari modi, con cache, FPU, ecc.

Con Altium Designer si hanno a disposizione diversi modelli di CPU. Quella consigliata è la TSK3000A, una CPU RISC a 32 bit derivata dal MIPS3000, ottimizzata per architetture FPGA generiche. Oltre a questa, sono disponibili le CPU specifiche dei costruttori delle FPGA: il NIOS II per Altera, Microblaze per Xilinx, ecc. Infine sono disponibili delle CPU a 8 bit cloni di Z80, 8051, 8052 e PIC16C5x, utili per i nostalgici o per portare in FPGA vecchi sistemi hardware e software senza modificarli.

I miei test li ho svolti solo con la cpu TSK3000 che si è dimostrata abbastanza veloce pur non funzionando a frequenze di clock molto alte e moderata nel consumo di risorse della FPGA. Tuttavia è di prestazioni inferiori al NIOS II, ma con il vantaggio di essere completamente gratuita, al contrario del NIOS II.
Da sottolineare che i componenti delle librerie Altium sono basati sul bus standard Whishbone, il bus indipendende più usato nelle FPGA e per il quale in rete si trovano moltissimi IP cores, cioè componenti soft, open source e gratuiti.

Animazione grafica in C su soft cpu TSK3000 - Altium nanoboard 3000 altera

Per realizzare un sistema embedded sulla Nanoboard 3000, conviene partire con la progettazione dell'hardware. Anche se è possibile disegnare da sè o scrivere in HDL il proprio sistema usando i componenti delle librerie, è molto più semplice e veloce è farlo con OpenBus in ambiente grafico. Sul foglio di lavoro si depositano le icone dei componenti del sistema prelevandole da una palette, CPU, memorie, bus, interfacce, arbitri, timer e tutte le periferiche che desiderano tra quelle disponibili sulla Nanoboard. Per ogni componente possono esserci dei parametri da impostare, per esempio alcune opzioni della CPu o della memoria, ma la gran parte del sistema si disegna in forma grafica in pochi minuti. Da questo schema grafico Altium Designer genera automaticamente lo schema elettrico del sistema desiderato che va completato manualmente con i collegamenti alle porte fisiche della Nanoboard.

A questo punto la progettazione della parte hardware del sistema è completa e si può procedere alla compilazione. Questa fase di elaborazione può richiedere tempi abbastanza lunghi, dell'ordine delle decine di minuti, durante i quali il computer lavora intensamente anche se non dà segni evidenti di attività. Alla fine, se tutto è andato bene, viene visualizzata una finestra con le caratteristiche salienti dell'hardware, come quantità di risorse della FPGA usate e massima frequenza di clock permessa dal sistema e si può quindi caricare nella FPGA il file di configurazione.

A questo punto l'hardware su cui scrivere il software è pronto. Io ho usato soltanto il linguaggio C, ma sono disponibili anche C++ e assembly. La base del software è impostata con il Sofware Platform Builder. Importando il progetto hardware della FPGA, questo genera le funzioni di basso livello per interfacciarsi con i dispositivi. Letteralmente sopra questi
si impilano i driver e servizi realizzando lo stack del software di gestione delle periferiche del sistema. In questo modo è possibile, per esempio, accedere a livello di file indifferentemente a schede SD e chiavette di memoria USB, oppure usare le stesse funzioni grafiche e finestre sia sul display TFT della scheda che su un monitor VGA esterno.

Particolarmente interessante è il supporto all'interfaccia ethernet, il cui stack arriva a fornire il protocollo TCP/IP con cui si possono realizzare applicazioni internet. Inoltre con la prossima versione di Altium Designer si potranno gestire dispositivi wireless come chiavette USB WiFi e interfacce a dispositivi GSM, UMTS, ecc.
Purtroppo non sono riuscito a trovare una documentazione completa delle funzioni di libreria per la gestione dell'hardware che sono veramente tantissime. Le uniche informazioni si trovano nel Knowledge Center dell'help di Altium Designer, ma sono elencate in forma sintetica senza molte spiegazioni.
Alla fine Software Platform Builder crea i file header da includere nella nostra applicazione con i riferimenti alle funzioni, alle variabile e alla costanti relative ai dispositivi hardware del sistema. A questo punto si può passare a scrivere il software applicativo vero e proprio in C. Anche in questo caso i progetti di esempio sono di grande aiuto, fornendo una base funzionante su cui sperimentare.

La compilazione del software avviene abbastanza velocemente e a questo punto il programma può essere simulato o scaricato nella memoria della Nanoboard. In ogni caso il debugger permette l'esecuzione passo passo, settare breakpoint, vedere e modificare le variabili, interrompere e avviare l'esecuzione, fare il profiling dei tempi di esecuzione delle varie sezioni del software, ecc. In pratica tutto quello che è possibile fare con i moderni sistemi di sviluppo per micro.
Durante i test ho notato qualche malfunzionamento di alcuni dispositivi, ma non ho ancora potuto stabilire se la causa fosse qualche mio errore di programmazione o di qualche bug delle librerie. Mi riferisco al display TFT che all'avvio a volte ha bisogno di un reset manuale, e dell'interfaccia con le schede SD che ha mostrato problemi di velocità e di scrittura.
Raggiunto il funzionamento desiderato del software, si può caricare sia la configurazione hardware sia il codice del software nelle memorie flash della Nanoboard così da avere un sistema definitivo funzionante in modo autonomo dal computer. La comodità di un sistema costruito in questo modo è che in ogni momento potremo riconfigurarlo modificando l'hardware che avevamo progettato inizialmente, per esempio aggiungendo porte, memorie, o addirittura cambiando o aggiungendo CPU, senza fare nemmeno una saldatura.

Altium Nanoboard 3000 Altera: Il compilatore CHC

Infine voglio accennare a CHC, C Hardware Compiler. Si tratta di un compilatore per linguaggio C in grado di generare un circuito logico hardware invece che il codice per la CPU come i normali compilatori. Si possono per esempio, creare dei coprocessori hardware partendo da una normale funzione C. Il vantaggio principale è la maggiore velocità di esecuzione, a prezzo di un'occupazione di risorse della FPGA. Di solito è preferibile compilare con CHC solo alcune funzioni dell'intero programma, scegliendole tra quelle in cui la CPU impiega più tempo e con sequenze di operazioni che potrebbero essere eseguite in parallelo. Casi tipici sono gli algoritmi di elaborazione di segnali, video processing, grafica, algoritmi di crittografia, calcoli matriciali, interazioni complesse con periferiche hardware, ecc.

Tra le altre cose il compilatore si prende carico di generare anche l'interfaccia con il resto del software, incluso il passaggio di parametri, in modo assolutamente trasparente al programmatore, ma è anche possibile usare CHC per generare un componente hardware indipendente da inserire in uno schema elettrico senza una CPU. Quindi CHC è uno strumento potentissimo che permette anche ad un programmatore con scarse conoscenze di elettronica digitale di trarre benefici dalla tecnologia FPGA creando i propri acceleratori hardware. Ovviamente le prestazioni migliori si avranno sempre progettando un circuito con linguaggi HDL, ma sicuramente CHC è uno strumento utile anche a un progettista hardware almeno nelle fasi iniziali di test, debugging e prototipazione.

Altium Nanoboard 3000 Altera: Conclusioni

Il sistema Altium Designer e Nanoboard 3000, dopo alcune decine di ore di uso, lo considero molto buono. Avrei detto eccellente se non fosse per i problemi incontrati con l'attivazione della licenza e un'assistenza peggio che inesistente. Inoltre è un po' carente il sistema di help, sia per la necessità di un collegamento continuo a internet, sia per la difficoltà di trovare velocemente le informazioni che servono quando servono, senza nulla togliere alla qualità dei numerosi documenti e tutorial presenti sul sito, ma organizzati in modo confuso.

La Altium Nanoboard 3000 Altera in sè è un bel prodotto, costruito bene, basato su una FPGA recente di capacità medio-grande e un ricco insieme di periferiche di ottima qualità, come il display touch TFT a 65K colori, l'interfaccia USB master, l'interfaccia audio e l'interfaccia ethernet. Volendo essere pignoli, avrei preferito dei veri interruttori a levetta al posto dei dip switch, e dei convertitori ADC più veloci e con maggiore risoluzione, oggi disponibili a basso costo, con i quali si sarebbero potute fare tante altre cose come Software Defined Radio, oscilloscopi digitali, acquisizione video, ecc.

Per quanto riguarda il software Altium Designer, è senza dubbio un programma serio, molto complesso ma di uso semplice e intuitivo nelle funzioni principali. Una piccola assenza che ho notato è quella di uno strumento per la progettazione di macchine a stati. Comunque esistono programmi free per farlo esternamente.
Deve essere tenuto ben presente che la Nanoboard 3000 va usata solo in abbinamento a Altium Designer, non può quindi essere usata per lavorare direttamente con Quartus e non va confusa con una generica scheda FPGA. Grazie al livello di astrazione di Altium Designer, si lavora abbastanza isolati dai dettagli della FPGA. Per chi avesse necessità di lavorare a stretto contatto con la FPGA, per sfruttarne tutta la potenza e ottimizzare al massimo i propri progetti, dovrà sempre fare ricorso a Quartus e ad altri tipi che schede.
Personalmente consiglierei questa scheda per realizzare velocemente sistemi elettronici di svariati tipi, da usare come prototipi, ma anche per piccole serie, grazie anche alla disponibilità del box venduto come accessorio. Il bello di questo sistema è che può essere usato senza difficoltà anche da chi non ha nessuna esperienza di FPGA o ha il timore di affrontare linguaggi come VHDL o Verilog. Qui non sono richieste particolari competenze oltre a saper disegnare uno schema elettrico ed eventualmente aver già lavorato in un ambiente di sviluppo per micro, ma anche i progettisti esperti sia hardware che software troveranno tutti i migliori strumenti di cui hanno bisogno in un unico ambiente.
Infine è un ottimo strumento didattico per imparare l'elettronica digitale e la programmazione embedded e sperimentare architetture di ogni tipo, come multiprocessori e reti neurali. Soprattutto gli hobbisti troveranno un divertimento straordinario nel realizzare un'infinità di progetti riutilizzando sempre la stessa scheda e interfacciandola con i propri circuiti (facendo attenzione alle tensioni dei segnali digitali che non sono TTL!).
Ad ogni modo anche le poche considerazioni negative che ho fatto vengono meno quando si considera il prezzo di tutto il sistema Nanoboard 3000, una frazione del costo di altre schede simili.

Scarica subito una copia gratis
Tags:,

2 Commenti

  1. Avatar photo Antonio B.C. 10 Gennaio 2011
  2. Avatar photo Maurizio S. 8 Gennaio 2011

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend