JDownloader Account Premium WorldBytez Filestore Easybytez Datafile Rapidgator Uploaded Easybytez Spotify IPTV DAZN SKY

[GUIDA] Costruire un programmatore USB per CPLD Coolrunner II

« Older   Newer »
  Share  
maximus0910
view post Posted on 1/8/2012, 16:42     +1   -1




GUIDA: Costruire un programmatore USB per Coolrunner II utilizzando un Nand Flasher USB/SPI come base


0) Indice

1) Introduzione
2) Aggiornare il firmware del Nand Flasher
3) Collegare Coolrunner II e Nand Flasher
4) Programmazione del Coolrunner II


1) Introduzione


Questa guida si basa su l'utilizzo di un firmware modificato per il Nand Flasher USB/SPI. Tale firmware aggiunge un piccolo interprete XSVF in grado di programmare le CPLD Coolrunner II via JTAG. La selezione della modalità di funzionamento è fatta tramite comandi USB dal software del lato host, quindi il dispositivo continuerà a funzionare normalmente come USB-SPI se utilizzato con nandpro.


2) Aggiornare il firmware del Nand Flasher


Cominciate con lo scaricare questo archivio che andrà estratto in una cartella del vostro PC, contiene tutto il software utilizzato nella guida.

In questo archivio trovate la versione 1.1 del software, l'unica modifica sostanziale è l'incremento della dimensione dei buffer nel firmware del pic in modo da gestire correttamente anche CPLD a più elevato numero di macrocelle.

Innanzitutto dovrete mandare in bootloader mode il vostro Nand Flasher. Individuate un pin marcato con "BOOT" o qualcosa di simile, dovrete connetterlo mediante un jumper o un filo a GND/VSS. Nella foto in spoiler è indicata la posizione di questo punto con la connessione da eseguire sul matrix nand programmer.


Dopo aver chiuso il jumper collegate il PIC alla porta USB del PC, verrà rilevata una nuova periferica chiamata "Microchip Custom USB Device". Una volta installati i driver contenuti nella cartella .\PIC_Firmware\DRIVER la situazione dovrebbe apparire come nell'immagine in spoiler.



Avviate l'applicazione PDFSUSB contenuta in .\PIC_Firmware e selezionate il vostro dispositivo (PICDEM FS USB...), quindi cliccate su Load HEX ed aprite il file PICFLASH_XSVF.HEX.

Se l’HEX contiene delle impostazioni (frequenza del quarzo ecc.) diverse da quelle con cui è stato scritto bootloader del PIC, potrebbe comparire a video un messaggio di warning. In questo caso E' MOLTO IMPORTANTE che clicchiate sul tasto "Cancel" o "Annulla" in modo da mantenere i settaggi esistenti.

Per completare la procedura dovrete cliccate su “Program Device”, se non ci sono problemi il risultato finale sarà quello dell’immagine qui di seguito.




Ora aprite il jumper (o tagliate il filo con cui avevate connesso BOOT e GND), disinserite il Nand Flasher dalla porta USB e reinseritelo subito. Se sarà riconosciuta una periferica USB chiamata MemoryAccess, come riportato nell'immagine sottostante, vorrà dire che tutto è andato a buon fine. Tenete presente che affinchè il programmatore funzioni correttamente è necessario installare un versione recente dei driver libusb, è consigliabile utilizzare quelli inclusi nella cartella .\XSVF\LIBUSB_DRIVER.




3) Collegare Coolrunner II e Nand Flasher


La circuiteria esterna necessaria a realizzare il collegamento tra Coolrunner II e programmatore è estremamente ridotta, vi serviranno:

3x Diodo 1N4148
1 x Diodo Zener 3.3V , > 250mW (es. BZX85C3V3)
1x Condensatore 10uF , >5V


Lo scopo di questi componenti è abbassare la tensione di I/O del PIC a 3.3V, in modo da rientrare nelle specifiche Xilinx. Rischiando un po' sarebbe anche possibile programmare la CPLD a 5V collegandola direttamente ai pin del Nand Flasher, ma non è la soluzione consigliata.

Lo schema del circuito da costruire e delle connessioni da realizzare è riportato nello spoiler qui di seguito, il PIC fornirà anche l'alimentazione al Coolrunner II, quindi non dovrebbero essere necessarie batterie esterne.




Notate che le resistenze indicate in rosso sono già presenti nel Nand Flasher, pertanto non sarà necessario aggiungerle.


4)Programmazione del Coolrunner


Dopo aver predisposto programmatore e chip come indicato nelle parti 2) e 3) della guida, la programmazione vera e propria è immediata. Basterà aprire una finestra della shell, cliccando sul file "prompt" all'interno della cartella .\XSVF, e digitare il comando:

xsvf file.xsvf


Dove file.xsvf è il file che volete programmare. Ad esempio per programmare un chip XC2C64A in modo che sia utilizzabile per l'RGH di una jasper, il file da utilizzare è jasper.xsvf. Nel caso di un XC2C32A dovrete invece usare jasper32.xsvf. Se la versione richiesta fosse zephyr i file sarebbero rispettivamente zephyr.xsvf e zephyr32.xsvf, mentre per la falcon abbiamo falcon.xsvf e falcon32.xsvf. Con le slim è possibile utilizzare solo chip XC2C64A programmati per mezzo del file trinity.xsvf.

I file xsvf presenti nel pacchetto sono relativi al pinout standard che è quello, più comune e diffuso. Nel caso vogliate programmare una board artigianale realizzata con pinout alternativo come indicato qui, dovrete scaricare anche questo archivio ed estrarlo nella cartella .\XSVF sovrascrivendo i file ogni volta che sarà richiesto.

Nello spoiler qui sotto trovate un esempio di utilizzo.

 
Top
0 replies since 1/8/2012, 16:42   790 views
  Share