Se vuoi aggiungere funzionalità hardware personalizzate al tuo NanoBoard®, perché non creare la tua scheda periferica addizionale? Questo Tech Tip in due parti dettaglia il modo facile per creare la tua scheda personalizzata da utilizzare con Altium Designer®.
In questa prima parte di questo tech-tip in due parti, vedremo come procedere per avviare la progettazione del PCB, partendo dal design di riferimento PB30 e modificandolo per formare un template per la tua scheda periferica personalizzata. Insieme a ciò, discuteremo alcune delle connessioni IO disponibili per le periferiche personalizzate.
Nella prossima puntata discuteremo il processo di registrazione e come iniziare con i tuoi progetti FPGA utilizzando la nuova scheda periferica che hai creato.
Il NB2 e il NB3000 sono utilizzati da molte scuole di ingegneria, individui e team di progettazione aziendale per esplorare e dare vita a nuove idee di progetto.
L'NB3000 è stato particolarmente popolare, non solo per il suo prezzo invitante, ma anche grazie al suo ampio set di dispositivi e opzioni IO. Questi includono USB (Host e Slave), LED RGB, schermo touch TFT, interruttori a relè isolati, ADC, DAC, RS-485, RS-232, Ethernet, MIDI, SVGA e audio IO ad alta definizione - solo per citarne alcuni!.
Entrambe le NanoBoards sono schede di sviluppo estensibili, dotate di posizioni per schede figlie periferiche per aggiungere ulteriore capacità IO. Al momento della scrittura di questo tech-tip, sono disponibili quattro schede periferiche da Altium: la PB01 a grandezza naturale (codec audio, IO video analogico), la PB02 (scheda di memorizzazione di massa con SD, CF, ATA, ecc.), la PB03 (Ethernet, USB, IrDA) e la PB30 - una scheda a grandezza naturale con il connettore necessario per la NB2/NB3000 e diverse aree di prototipazione per costruire semplici circuiti aggiuntivi.
Mentre la scheda di prototipazione rappresenta un ottimo punto di partenza per sperimentare semplici circuiti con connessione alla NanoBoard NB3000, progettare la propria scheda periferica offre possibilità illimitate.
In questa prima parte di questo suggerimento tecnico in due parti, vedremo come iniziare la progettazione del PCB, partendo dal design di riferimento PB30 e modificandolo per formare un modello per la vostra scheda periferica personalizzata. Insieme a ciò, discuteremo alcune delle connessioni IO disponibili per le periferiche personalizzate. Nella prossima puntata discuteremo il processo di registrazione e come iniziare con i vostri progetti FPGA utilizzando la nuova scheda periferica che avete creato.
Il primo passo è costruire il modello per la scheda periferica, e in questo suggerimento tecnico lo baseremo sul PB30, perché questa scheda è orientata in modo tale che il Nanoconnettore di Altium sia in alto a sinistra, e la serigrafia è generalmente mostrata nel verso giusto quando è collegata al NanoBoard NB3000. Se state utilizzando il NanoBoard NB2, lo spazio per la scheda periferica di dimensioni complete si trova in alto, in questo caso la scheda PB-01 (Audio, Video) sarebbe una buona scelta, poiché la sua orientazione è ruotata di 180 gradi.
La versione attuale di Altium ha la posizione predefinita del design di riferimento PB30 in “C:\Program Files\Altium Summer 09\Examples\Reference Designs\PB30\”.
Copia l'intera cartella per la scheda periferica e rinominala per il tuo modello. In questo caso l'abbiamo chiamata PBUSER:
Inoltre, dovresti rinominare i file effettivi nel progetto. Un modo rapido per farlo è utilizzare il vecchio comando DOS RENAME con alcuni caratteri jolly:
Ora, se apri il Progetto PBUSER.PrjPCB in Altium, riceverai un avviso per ogni documento che era precedentemente un membro del progetto che non viene più trovato e verrà rimosso.
Questo perché abbiamo rinominato ciascuno di quei file (appropriatamente). Va bene, perché tutto ciò che dobbiamo fare è riaggiungerli al progetto di nuovo utilizzando il comando Progetto» Aggiungi Esistente al Progetto..., selezionando tutti i file PBUSER*.* e cliccando su OK.
Ora, abbiamo una copia completa del PB30, l'unica differenza è che il progetto e tutti i suoi file sono stati rinominati.
Il passo successivo consiste nel rimuovere l'area di prototipazione dal progetto. Questo è relativamente semplice perché in realtà è un componente che possiamo rimuovere dallo schema, designato PROTO1. Il design di riferimento PB30 contiene anche un componente dello schema che è un riferimento alla PCB fabbricata. Questo consente di generare un assemblaggio completo dove la PCB stessa è uno dei componenti necessari per assemblare il prodotto. Tuttavia, nel modello che stiamo creando non è più rilevante, quindi lo elimineremo anche quello.
Il design PB30 contiene anche il PROM a 1 filo utilizzato per l'ID e la registrazione della scheda con Altium, che abilita i vincoli per il design FPGA ad essere configurati automaticamente - lasceremo questo elemento nel design poiché desideriamo tale capacità per il nostro PB personalizzato. Una volta eliminato il superfluo dallo schema, cliccando su Design» Aggiorna Documento PCB PBUSER.PcbDoc verrà avviato il processo ECO per trasferire le modifiche al PCB e, in ultima analisi, rimuovere quegli elementi indesiderati. Eseguendo questo comando, potresti ricevere un avviso che alcuni componenti non possono essere abbinati utilizzando ID univoci. In tal caso, clicca su Sì per permettere la continuazione della sincronizzazione. Allo stesso modo, se ti viene chiesto di abbinare le classi di componenti, clicca su No. (Anche questi problemi saranno risolti semplicemente eseguendo il processo ECO.)
Puoi vedere, prima di eseguire l'ECO, che rimuoverà tutti i pad dei componenti non necessari dalla netlist, l'impronta del componente PROTO1 (che è l'intera area di prototipazione), così come la classe di componenti ridondante e la stanza. Una nuova classe di componenti e una nuova stanza, entrambe denominate dai nuovi file di design, saranno aggiunte. Eseguendo l'ECO si conclude questo processo e si apre il design PCB aggiornato.
Puoi vedere qui che il tracciato originale dall'area di prototipazione rimane, gocce di lacrima incluse. Possiamo rimuovere il tracciato utilizzando Strumenti» Annulla-Tracciato» Tutto. Per rimuovere le gocce di lacrima, dobbiamo selezionarle con un riquadro e semplicemente premere Cancella.
Come parte del processo ECO, è stata aggiunta una nuova Stanza alla scheda, nominata dopo lo schema di livello superiore (in questo caso PBUSER Double_Sized_Proto_Board). Se non desideri utilizzare le stanze, puoi semplicemente selezionarla ed eliminarla. Altrimenti, selezionala e trascina l'angolo in alto a destra in modo che la sua area copra la scheda.
Potresti notare che ci sono due documenti PCB in questo progetto - PBUSER.PcbDoc che è questo PCB, e PBUSERPanel.PcbDoc. PBUSERPanel.PcbDoc è una versione panelizzata due per due del design PCB principale, utilizzando un Array di Schede Incorporate. Poiché si riferisce al PCB principale, è necessario fare molto poche modifiche. L'Array Incorporato stesso deve essere aggiornato per puntare al nuovo documento PCB. Questo viene fatto facendo doppio clic sull'array (che sembra un piccolo rettangolo grigio) e specificando il nuovo nome del file PCB:
Quando l'array punta alla nuova scheda vuota, puoi vederli correttamente all'interno del pannello:
A questo punto, qualsiasi stringa di testo che fa riferimento a “PB30” dovrebbe essere modificata per riflettere il nome di questa nuova scheda. Potresti persino optare per utilizzare stringhe speciali come sostituzione in modo che possano essere aggiornate automaticamente da un parametro del progetto - particolarmente utile se questo viene utilizzato come modello per molti nuovi progetti.
Inoltre, il codice a barre sul layer Top Overlay è semplicemente una stringa con font di codice a barre. Per le schede Altium, è semplicemente il nome della scheda. In questo caso dovrebbe essere aggiornato a PBUSER, ma puoi farlo corrispondere a qualunque sia il nome della tua scheda periferica.
Una volta che i file aggiornati e il progetto sono stati tutti salvati, sono pronti per essere utilizzati come base per qualsiasi nuovo design di scheda periferica personalizzata. Possono anche essere utilizzati insieme come un modello di progetto, copiando il progetto e i suoi file nella cartella Templates dell'installazione di Altium. Quindi, dal pannello Files in Altium, cliccare su PCB Projects, e nella sezione New From Template cliccare su PCB Projects... e cercare il progetto PBUSER.PrjPcb nella cartella Templates. Quando si salva il nuovo progetto creato, vi sarà chiesto di scegliere una nuova posizione per salvare il progetto e tutti i documenti sorgente del modello.
Lo scambio di pin e il NanoConnector
Uno dei principali vantaggi dell'uso di questo modello è che il componente schematico che rappresenta il Nanoconnettore utilizzato per interfacciarsi con l'NB3000 o l'NB2 host è preconfigurato con tutte le assegnazioni dei pin appropriate per gli IO a funzione fissa dell'host, come Audio, SPI, I2C e l'orologio dell'host. Inoltre, le catene JTAG rigide e morbide del sistema sono instradate al Nanoconnettore della scheda periferica insieme a una linea di abilitazione, rendendo estremamente semplice aggiungere FPGA extra, microcontrollori o dispositivi di boundary-scan al sistema. Naturalmente, anche i binari di alimentazione dell' sono forniti. Le tensioni disponibili sono 1.2V, 1.8V, 2.5V, 3.3V e 5V.
Oltre alle IO a funzione fissa, un lato del Nanoconnettore è dedicato alle IO digitali di uso generale, che si collegano infine all'FPGA utente sul NB3000 (o NB2). Questi pin sul componente Nanoconnettore nel progetto (designati HDR1) sono tutti preconfigurati per essere intercambiabili. Questo è particolarmente utile poiché il routing intorno al connettore può essere piuttosto denso a causa del suo passo fine. Non c'è nessun trucco magico nell'usare questa capacità - nell'esempio mostrato qui sotto il pin-swapper è stato eseguito da Strumenti» Scambio Pin/Parte» Ottimizzatore Automatico Net/Pin, e le modifiche risultanti sono state riportate allo schema attraverso il processo di reverse-ECO usando Progetto» Aggiorna Schemi In <progetto>.
Potresti trovare utile eseguire il pin swapper diverse volte durante il processo di routing della scheda, man mano che il tuo lavoro di tracciamento si avvicina ai punti di completamento. Questo aiuta a rimuovere gli incroci e accelera notevolmente il processo di creazione del tuo periferico personalizzato. L'esempio sopra è stato completato in soli un paio di giorni, e qui sotto è mostrata una vista 3D:
Un ultimo e molto importante punto riguardo al Nanoconnector è che è disponibile da Altium in tutto il mondo a basso costo (e con sconti per grandi quantità). Il numero d'ordine per questo connettore sulla scheda periferica è 99-400-NBC (viene fornito un tubo di nove connettori).
...e il prossimo mese!
Bene, questo conclude la prima parte di questo consiglio tecnico. E una volta che avete seguito questo processo e creato il vostro modello, e ovviamente personalizzato con i loghi della vostra azienda, ecc., è semplice creare tutte le schede periferiche personalizzate che desiderate.
Nella prossima parte di questo Tech Tip, scoprirete gli aspetti "soft" dell'uso della vostra nuova scheda personalizzata con un - come creare un file di vincoli riutilizzabile, dare alla scheda una personalità con il PROM a 1 filo, e creare un port-plug-in corrispondente da usare con i vostri progetti FPGA.