Programmazione CPLD EPM1270

Sezione dedicata alle logiche programmabili

Programmazione CPLD EPM1270

Postby BIGMUFF » 30 Apr 2014, 15:17

Buongiorno a tutti,
non sono nuovo del forum, ma visto che l'ho visitato l'ultima volta molto tempo fa, mi ripresento :
Mi chiamo Massimo Rosellini di Cisterna di Latina e sono un appassionato di elettronica in generale.
Il mio quesito riguarda la programmazione di una CPLD della Altera.
E' una EPM1270T144C4N.
In passato ho programmato la famiglia MAX II usando il programmatore per porta parallela di NE che veniva visto da Quartus II come byteblaster. Quando andai a vivere all'estero vendetti tutto e poi comunque il mio PC attuale non ha porta parallela.
Qualche giorno fa mi e' arrivato un usb-blaster cinese ma targato Altera.
Con quest'ultimo riesco a programmare correttamente una FPGA Cyclone III, ma non la MAX II in oggetto.
Cosa cambia tra jtag con interfaccia parallela e usb?
I collegamenti li ho controllati 1000000 volte e sono esatti, ma la CPLD non viene programmata.
Quartus II web edition (l'ultima disponibile) mi dice che non riesce ad accedere alla catena JTAG. errore 44.
Con l'oscilloscopio vedo che i segnali di programmazione ci sono ma su TDO del JTAG non esce niente; rimane basso.
Forse mi sono dimenticato qualcosa oppure ignoro qualcosa che dovrei sapere sul usb-blaster?
io uso solo i segnali TDI, TDO, CLK e TMS. oltre a GND e VDD....
Le CPLD non arrivano dalla cina ma da un famoso rivenditore italiano di elettronica.
Unico dubbio puo' essere il programmatore, ma e' stato testato con successo su una CPLD cyclone iii.

10.000 volte grazie a chi vorra' dedicarmi un po' del suo tempo

Ciao

Massimo IW0HKG
BIGMUFF
 
Posts: 14
Joined: 30 Apr 2014, 15:04

Re: Programmazione CPLD EPM1270

Postby deluca » 30 Apr 2014, 15:40

Salve bigmuff, e ribenvenuto al forum.
ti invito a spendere 2 parole nella sezione nuovi iscritti.

Detto ciò... versione e sp di Quartus web edition. Dobbiamo essere certi che la Max II venga supportata.
La CPLD è montata su una scheda demo commerciale? se si quale.
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: Programmazione CPLD EPM1270

Postby BIGMUFF » 30 Apr 2014, 16:25

la versione di Quartus II e' quella 13.0.1 sp 1.

In effetti non mi compilava per la famiglia max alla prima installazione. Dopo qualche difficolta' sono riuscito a scaricare una versione che comprendeva anche questa famiglia (ho semplicemente aggiunto un baffetto nella finestra del download fornita da altera). La schedina e' autoprodotta e sono piu' che sicuro che funzioni perche' l'ho utilizzata largamente dal 2009 fino al 2011.Nel caso odierno si tratta di 5 schede gemelle che mi sono fatto produrre nuovamente qualche giorno fa. Tutte e 5 con questo problema.
Purtroppo l'ultima scheda funzionante della vecchia produzione adesso indossa il colbacco e si occupa dell'interfaccia di una tranciatrice per tasselli di legno in una fabbrica della ridente campagna di Yoshkar-Ola....
BIGMUFF
 
Posts: 14
Joined: 30 Apr 2014, 15:04

Re: Programmazione CPLD EPM1270

Postby Leonardo » 30 Apr 2014, 16:41

Salve Massimo e un caloroso benvenuto al forum,

La serie Max II è supportata da Quartus 10 in poi, se utilizzi l'ultima versione non dovresti avere problemi.
Ho programmato con successo EPM240 ed EPM570 anche con programmatori usb-blaster compatibili.

Se puoi pubblicare lo schema possiamo dare un'occhiata anche se da come hai esposto il tutto sembra un problema di fabbricazione delle schede.

Ciao

PS: Ti lascio il link al documento MAX II Device Family Issues http://www.altera.com/literature/ds/es_max_ii.pdf
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: Programmazione CPLD EPM1270

Postby BIGMUFF » 30 Apr 2014, 19:13

Grazie Leonardo per l'accoglienza.

Ho scritto anche sulla bacheca dei nuovi arrivati ma non compare il mio messaggio, probabilmente ho fatto qualche cavolata; provvedero' presto con un nuovo messaggio sperando che non ne compaiano 2.

Riguardo il mio problema(uno dei tanti che ho....)

Ho provato a programmare una epm240 funzionante su un circuito funzionante(e' stato anche un atto di coraggio perche' questo circuito mi serve ed ho rischiato di perderlo). Stessa cosa......errore 44

Sembra che la probabilita' del malfunzionamento a causa di problemi di fabbricazione delle nuove schede scenda di un bel po'. Direi "spannometricamente che siamo al 25%".

Ho rimediato un programmatore parallelo, ma mi sono reso conto che il mio nuovo pc non ha la parallela!
Corsa al negozio di PC per trovare un adattatore da usb a parallelo, ma corsa invana...non ce l'hanno.

Si rimanda a dopo le feste per le prove su parallela.

Se avete nuovi suggerimenti e info io comunque continuo a seguire il forum.

Grazie (2^10 - 24) * (2^10 - 24)
BIGMUFF
 
Posts: 14
Joined: 30 Apr 2014, 15:04

Re: Programmazione CPLD EPM1270

Postby deluca » 30 Apr 2014, 20:44

@bigmuff,
potresti postare lo schema della scheda o almeno la parte riguardante il collegamento con il j-tag?
indica quale prg compatibile hai acquistato.
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: Programmazione CPLD EPM1270

Postby Leonardo » 30 Apr 2014, 21:02

Per capire di quale versione del programmatore stiamo parlando puoi aprire l'USB-Blaster e pubblicare una foto della scheda interna? Esistono versioni basate su EPM3064 e IC USB FDTI come l'originale, altre su MCU Cypress EZ-USB FX2 ed altre ancora basate su Silabs 8051.

A che tensione alimenti la scheda con la CPLD prima della programmazione?

EDIT: Hai già provato a cambiare il cavo USB con uno sicuramente funzionante?
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: Programmazione CPLD EPM1270

Postby legacy » 30 Apr 2014, 21:15

boh, consigli sparsi

- lascia perdere gli accocchi usb-parallela, vanno bene solo per le stampanti ma non per altro.
- compra un programmatore usb, vagamente serio significa che se e' cinese non deve costare meno di 40 euro
- e a pro po di cosi cinesi, lascia perdere i combo-cosi-usb 3 in 1 (altera,xilinx,altro), sono solo fregature

io poi sarei stra felicissimo se qualcuno mi regalasse un ethernet blaster, cosi' mi tolgo dalle scatole anche una altra rogna, ovvero i cavetti usb altera e xilinx sono anche famosi per presentarsi all'urb con due PID diversi (primo PID per farsi uploadare il fw, secondo PID quando il fw fa bootstrap), e questa cosa non piace nemmeno un po' a virtualizzatori come VirtualBOX che vedendosi arrivare due PID sullo stesso urb finiscono per non gestirlo, ecco, l'ethernet blaster non ha questa rogna, la rete gira perfettamente, e quindi potrei usare i cavetti persino da mac

stesso tuo problema, non ho la parallela, in + i programmi non girano su MacOSX, solo windows e linux, quindi tocca virtualizzare.
legacy
 
Posts: 862
Joined: 12 Mar 2012, 11:30

Re: Programmazione CPLD EPM1270

Postby Leonardo » 30 Apr 2014, 21:24

Un ulteriore prova che puoi fare:

Puoi provare a tenere in reset la CPLD mentre tenti la programmazione? Devi già avere abilitato DEV_CLRn o predisposto un pin di reset nel codice caricato. Se non ricordo male avevo programmato alcune schede problematiche con programmatori compatibili in questo modo tempo fa
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: Programmazione CPLD EPM1270

Postby BIGMUFF » 01 May 2014, 11:37

Grazie a tutti per gli interventi.

Effettivamente il "coso" l'ho pagato 7 euro e mi viene il dubbio che non possa programmare le MAX II (anche se sull'inserzione e-bay cinese specificava la compatibilita' anche con le MAX II ). Purtroppo sono passati 2 mesi dall'acquisto ed ho perso il link dell'acquisto.

Chiedo la cortesia di farmi sapere come farvi vedere la foto che ho scattato alla schedina del programmatore(non so se sono condivisibili le foto in questo forum).Inoltre volevo far vedere lo schema di collegamentodel JTAG al Dott. Deluca, ma stesso problema.

Comunque il chip e' un Silabs F321 EOL?Q8 1306. Putroppo mi avvicino agli 'anta ed ho qualche difficolta' a leggere le sigle.

Per quanto riguarda l'adattatore parallelo seguiro' il consiglio di legacy e acquistero' una scheda parallela da mettere nello slot del PC per provare ad usare il byte blaster compatibile.

Non ho capito come tenere in reset la CPLD durante la programmazione.


Il circuito comunque e' questo. E' un progettino del 2009 e adesso ho bisogno di resuscitarlo : https://www.youtube.com/watch?v=lNb3BXn9ywI

a presto

e grazie ancora a tutti

Massimo
BIGMUFF
 
Posts: 14
Joined: 30 Apr 2014, 15:04

Re: Programmazione CPLD EPM1270

Postby Leonardo » 01 May 2014, 13:02

E' possibile caricare file su servizi come DropBox, OneDrive, etc.. e riportare il link nel forum

Lo scopo del reset era quello di portare tutti i GPIO in alta impedenza per evitare interferenze coi pin di programmazione, in alternativa puoi scollegare tutte le periferiche dalla CPLD se utilizzi qualche connettore.

Esistono diverse versioni con Silabs F321, servirebbe una foto. Tieni presente che non sono rari problemi di saldatura o di altro genere con oggetti a così basso costo, un buon programmatore compatibile è prodotto da Terasic http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=&No=46

Precedentemente avevo aggiunto ulteriori domande agli interventi che riporto nel caso le avessi perse:
- Hai già provato a cambiare il cavo USB con uno sicuramente funzionante?
- A che tensione alimenti la scheda con la CPLD prima della programmazione? Non tutte le tensioni dell'originale sono supportate dai programmatori compatibili

Ciao
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: Programmazione CPLD EPM1270

Postby BIGMUFF » 01 May 2014, 16:57

Rieccomi.

Oggi e' festa ed io festeggio con l'oscilloscopio acceso e il saldatore in mano.


Non e' nel mio modo di esprimermi quello che diro', ma sento di dirlo ; siete stati veramente fantastici tutti quanti!

Grazie a voi ho capito dov'era il problema.

Soprattutto la domanda "a che tensione alimenti la CPLD prima di programmarla?" e' stata illuminante.

Ormai stanco e depresso dalle prove infruttuose ho deciso di tenermi per ultima la prova di abbassare la tensione di alimentazione del chip.

Il primo tentativo a 1,25 V non e' andato bene.

Le cose sono cambiate a 2,5V. Il programmatore cinese ha riconosciuto il target e l'ha programmato.
Stessa cosqa per le altre schede.

Per curiosita', a questo punto, sono andato a leggere bene se il chip fosse proprio un EPM1270T144C5N e con mia grande sorpresa(non piu' tanto a questo punto) ho scoperto che trattasi di un EPM1270GT144C4N.

Il produttore(che e' anche mio amico) deve aver optato per una sigla "somigliante" quando ha ordinato il materiale. Appena lo vedro' mi faro' ripagare il tempo perso con un caffe'.

Adesso non so se le RAM statiche lavoreranno bene a 2,5V, ma a quanto pare il monitor mi mostra un "dump" stabile della memoria. Ne saro' sicuro quando pilotero' le schede con un microcontrollore.
Per ora l'accrocco ha uno stabilizzatore da 3,3V a cui ho messo in serie un diodo 1n4148 per portare la tensione ad un livello accettato dalla cpld, secondo voi puo' reggere?

Adesso devo vedere cosa significa quel GT in piu' nella sigla.

Grazie ancora 1.000.000 a tutti

Massimo IW0HKG
BIGMUFF
 
Posts: 14
Joined: 30 Apr 2014, 15:04

Re: Programmazione CPLD EPM1270

Postby Leonardo » 01 May 2014, 17:27

Da Altera Device Part Number Format: http://www.altera.com/products/devices/dev-format.html#table2

MAX II
MAX IIG (lower power)
MAX IIZ (zero power)

La versione G è a consumo energetico minore della versione standard, lo speed grade 4 è migliore (più veloce) del 5, quindi in sostanza è una CPLD ancora più performante ed a migliore risparmio energetico.

Per quanto riguarda la RAM statica hai la sigla?

Il diodo non è proprio il massimo per abbassare la tensione in quanto:
- la corrente che può condurre quello specifico diodo è molto limitata
- in base alla corrente di conduzione varia la tensione di conduzione, tra 0.1mA e 200mA hai 0.5v di differenza nella caduta di tensione

Prego
Ciao
Last edited by Leonardo on 01 May 2014, 17:45, edited 1 time in total.
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: Programmazione CPLD EPM1270

Postby deluca » 01 May 2014, 17:43

@Bigmuff,
Complimenti :), ho visto il video ed ha suscitato il mio interesse.
Qualche annetto fa sviluppai qualcosa di simile, quando ancora non erano spuntati i modulini per collegare i uC ad un monitor VGA e mi piacerebbe scambiare quanche informazione a proposito dei nostri progetti.
Questo il video della mia applicazione risalente al 2007/2008.

Qui usavo il 39%/(540 LE) di una EPM1270T144C5, un ATmega128-16 ed una SRAM da 1MB.
Come si può vedere dal video, la mia pagina web era ancora su interfree.it

Poi passai ad un semplice PAC-PONG(detto anche PING-PAC) :) implementando gli sprite, immagini background, collision object detect, alpha-blending e multi-layer. Qui però andiamo su Cyclone I.


Con l'arrivo della DE-1, Lo step successivo fu questo... un bel giochino spaziale spara tutto.
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: Programmazione CPLD EPM1270

Postby legacy » 01 May 2014, 20:23

@BIGMUFF
tieni presente che la vera rogna e differenza tra i programmatori economici e quelli un pelo + seri e' il voltage level del finale, ovvero la parte che si interfaccia con le tensioni sul target, e qui … hai un range da 1V a 5V giusto per farla breve.

Difficile trovare 5V sui device moderni, pero' sulle Altera Flex 10K (che non sono + nemmeno supportate da QuartusII) li hai, e nel caso il programmatore deve gestirli.

Il problema vero pero' e' andando verso il basso, ed e' li che si vede e si sente tutta la differenza tra l'accrocchio ed il programmatore serio, e non solo per la programmazione, si vede sopratutto per il chip scope.




p.s.
@BIGMUFF, deluca
tutti VDU-addicted, eh ?
bravi, faro' il tifo per entrambi :D
legacy
 
Posts: 862
Joined: 12 Mar 2012, 11:30

Re: Programmazione CPLD EPM1270

Postby legacy » 01 May 2014, 20:41

p.s.2
ho preso tempo fa uno di questi kit per aggiungere una interfaccia terminale ad un bidone unix che … beh, per farla breve non ha scheda video ne bus comuni (ISA, PCI) per poter anche solo pensare di sfruttare l'hw PC (p.e. una matrox m1/PCI, o una ET4000/ISA). Sfruttando una seriale fisicamente presente e scrivendo un protocollino dedicato ho potuto interfacciare il modulino microvga per aggiungere kb e video, text console only.

Ecco, quel coso va bene e costa pure poco, pero' poi mi farete usare i vostri cosi' personalizziamo il bidone con un qualche logo a cornice :D
legacy
 
Posts: 862
Joined: 12 Mar 2012, 11:30

Re: Programmazione CPLD EPM1270

Postby BIGMUFF » 02 May 2014, 12:24

Salve,


@Leonardo
La ram e' una GS74108AGP. E' costosa perche' veloce, ma poi piu' tardi ho scoperto che esistevano trucchetti per poterne usare anche di piu' economiche.
Per quanto riguarda il diodo effettivamente scalda, ma era solo una soluzione di emergenza per programmare i devices, provvedero' ad una soluzione piu' sofisticata se ne saro' capace.
Grazie per il link al programmatore, ho intenzione di acquistarlo oggi pomeriggio anche se ho visto che il coso cinese funziona. Il riferimento al range di tensioni che deve gestire il prog, come mi avete fatto notare, non e' banale.

@DeLuca
Io sarei veramente felicissimo di scambiare informazioni sui nostri giocattoli, ma ho anche un po' di timore.
L'accrocco nel video e' il mio primo progetto in VHDL e sicuramente per come ho implementato il codice ti farai dei grandi sorrisi.
Se ci scambiamo le mail ti passero' il sorgente dell'accrocco.
E' fatto, come sai, su una EPM1270 e un totale di 1Mb di RAM statica divisa in due buffer da 512K per ottenere gli effetti di scrolling veloce(ho preferito il dual buffer invece che il dual port per ovvie ragioni) e credo di aver utilizzato almeno un buon 60% della logica disponibile sulla CPLD.

@Legacy
Ottimo per la personalizzazione del tuo bidone!
Sarai il beta tester dell'interfaccia Lyuda(dal nome di mia moglie). Ma occhio.....l'interfaccia almeno finche' non la trasportero' su FPGA sara' un ......pochettino...... piu' costosa della tua interfaccia testuale.

A presto

Ciao

Massimo
BIGMUFF
 
Posts: 14
Joined: 30 Apr 2014, 15:04

Re: Programmazione CPLD EPM1270

Postby BIGMUFF » 02 May 2014, 12:26

dimenticavo........ I video postati dal Prof. De Luca sono, come si dice dalle mie parti, proprio FIGHI!
BIGMUFF
 
Posts: 14
Joined: 30 Apr 2014, 15:04

Re: Programmazione CPLD EPM1270

Postby Leonardo » 02 May 2014, 12:41

L'importante è avere risolto ed essere in grado di programmare le schede, dopo la programmazione potresti riportare la tensione a 3.3V per avere garanzie maggiori del funzionamento della SRAM attuale.

Se hai ordinato il programmatore Terasic non dovresti avere questo tipo di problemi in futuro ;)

Ciao
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: Programmazione CPLD EPM1270

Postby legacy » 02 May 2014, 21:40

@BIGMUFF
Ma + o -quanto++ costosa ?
legacy
 
Posts: 862
Joined: 12 Mar 2012, 11:30

Next

Return to FPGA & CPLD

Who is online

Users browsing this forum: No registered users and 6 guests