Newsgroup: it.hobby.elettronica.digitale
Titolo: FPGA CPLD SOPC VHDL Verilog

In questo neswgroup non si č mai parlato di logiche programmabili i relativi
liguaggi VHDL & Verilog.
Forse vi č sfuggito, ma si tratta sempre di elettronica digitale!
E' un argomento che ritenete OT oppure siete troppo impegnati con le vostre
PIC?
Bye
Salvo

Hp provato ad aprire anche un NG in italiano sull'argomento, ma dopo aver
percorso tutta la trafila mi hanno bocciato per il numero di post bassi
sull'argomento.
Cmq non tutti gli hobbysti usano fpga e fratelli, anzi...
73
"SDL" <S.De...@nospamUSA.NET> ha scritto nel messaggio
news:KsUia.7214812$6N5.9...@post-03.news.easynews.com...


 Forse vi è sfuggito, ma si tratta sempre di elettronica digitale!


 > Forse vi è sfuggito, ma si tratta sempre di elettronica digitale!


 poi mettere il tutto in una FPGA da 9$ che lavora a 100Mhz.
Potresti essere piú preciso?
Che FPGA usi? Il progetto é tutto tuo o stai mettendo assieme degli IP core?
Acquistati o free? Raccontaci.

 ha scritto nel messaggio
news:m00ja.4339$DT4.1...@twister1.libero.it...


 crittografia sto scrivendo tutto io in VHDL.
Guarda che qui rischi proprio di inventare l'acqua calda. Se ci sono ip core
free
in abbondanza, sono proprio quelli di crittografia per tutti i migliori
algoritmi


Se ci sono ip core free in abbondanza, sono proprio quelli di crittografia
per tutti i migliori algoritmi
Ne sono a conoscenza, ma le specifiche di progetto mi impongono di seguire
degli algoritimi proprietari
Ciao
Salvo

 Sembra carino ma costa 12 mila $.
E' compreso nel prezzo del Nios
Ma tu di cosa ti occupi?
Ciao
Salvo

 frequentatori di questo newsgroup.
A me l'idea piace molto! Bisogna vedere se la cosa è fattibile...
Nel frattempo per discuterne questo NG mi sembra un posto
adeguato (nonostante il ".hobby" :-) ).
Ciao
Dr. Jones

 PIC?
Le logiche programabili (e mi riferisco in particolare agli FPGA) sono dei
componenti straordinari! Io li uso per lavoro ma anche per hobby e ci ho
fatto delle cose veramente incredibili...
Tuttavia bisogna amettere non sono proprio dei componenti per "hobbisty", e
forse è proprio per questo che quì se ne parla poco. Alcuni dei motivi sono
i seguenti:
- Intanto la documentazione disponibile per imparare qualcosa su di essi è
decisamente scarsa, o comunque meno vasta rispetto a quella che copre altri
argomenti. Perfino i produttori, se si esclude la Xilinx sono un pò "tirati"
da questo punto di vista...
- Secondariamente per usarli è necessario conoscere e sapere usare
decentemente un linguaggio di descrizione HDL, che richiede un certo studio
e soprattutto una certa pratica. Insomma, non è come programmare un PIC...
- I prezzi dei singoli componenti non sono proprio convenienti dal punto di
vista di un hobbista.
- I package dei dispositivi sono in genere a montaggio superficiale ed
estremamente densi, questo impedisce di usarli direttamente e costringe a
comprare delle board già pronte.
- Le tensioni basse di alimentazione e di I/O possono dare ancora qualche
problema in una realizzazione hobbistica.
Detto questo comunque ci tengo a precisare che anche a me farebbe piacere
poterne discutere con qualcuno sensa bisogno di frequentare
comp.arch.fpga!!! :-)
Ciao
Dr. Jones

 liguaggi VHDL & Verilog.
Io quando posso ne parlo. :)
In Italia siamo molto indietro con i linguaggi di sintesi persino in
campo professionale, figurati in quello hobbistico! Mentre negli USA
progettare sistemi in VHDL e` cosa di routine anche per gli studenti di
un college, qui siamo ancora vincolati dalla "vecchia" generazione di
elettronici con scarsa dimestichezza col PC e l'informatica in generale.
:)
--
Lorenzo

 comp.arch.fpga!!! :-)
Ok, chi comincia? :)
Personalmente ho iniziato a usare il VHDL in maniera "estensiva" da poco
tempo (provengo dalle CPLD programmate tramite schematici, mi ci e`
voluto un po' per abituarmi :)). Di solito uso le CPLD e FPGA assieme a
dei DSP, per cui non mi serve implementare funzioni complesse nelle
logiche programmabili; gli faccio fare i "lavori di manovalanza" ad alta
velocita`, il vantaggio di cio` e` che tutto il codice che mi serve e`
disponibile gratuitamente in rete (per ora non devo fare niente di cosi`
complesso da dover pagare chilodollari per degli IP cores).
Le CPU implementate dentro alle FPGA sono sicuramente interessanti, ma
per ora io li vedo soprattutto come un gadget messo li` per fare
facciata (un DSP o un microprocessore potente batte le FPGA qualunque
giorno della settimana). E` vero pero` che la tecnologia costruttiva
delle logiche programmabili sta facendo dei passi da gigante (i primi
impianti a 90 nanometri dell'IBM serviranno per produrre le nuove FPGA
della Xilinx) e non e` improbabile che in un prossimo futuro le CPU
implementate su logica programmabile daranno effettivamente dei vantaggi
tangibili rispetto alle CPU "reali".
--
Lorenzo

"Lorenzo Lutti" <lorenz...@DOHtiscalinet.it> ha scritto nel messaggio
news:afkja.7035$DT4.2...@twister1.libero.it...

Carissimi , io purtroppo mi annoveravo tra quelli che proprio di componenti
programmabili non ne voleva sentir parlare, con un po' di tempo e MOLTA
pazienza ho cominciato ad usare i micro(processori) prima 8032, 8051, 8052
poi qualche micro(controllore) PIC, Atmel, e la stessa famiglia MCS51
rivista da Atmel usata con porte e ROM interne.
Ed in questo impervio sentiero ho proseguito con microprocessori da 32bit
(68000 e 80386).
Acquisita una solida esperienza e dimestichezza con tali devices ora restano
due passi alla meta DSP e CPLD/FPGA non tanto per ragioni professionali, in
quanto occupandomi prevalentemente di progettazione R.F. le poche centinaia
di MHz delle CPLD o FPGA mi fanno sorridere, quanto per esplorare nuovi
orizzonti, del resto il fatto stesso di poter implementare dispositivi
complessi come CPU in una logica programmabile ha fatto elettrizzare non
poco le mie sinapsi.
Diario di ventura a parte qualche domanda pratica alla quale gradirei
tantissimo una risposta.
Cominciamo a flirtare con le CPLD!
Quale costruttore scegliere?
Xlinx.
Lattice
Cypress
Altera
Fujitsu
Siemens
In qualunque caso quale IDE o tool di sviluppo scaricare  ed dove?
Infine (esasperando il concetto di do it yourself) dove reperire lo schema
di un programmatore per siffatti devices?
Tanks.

On Fri, 04 Apr 2003 18:34:46 GMT, "Lorenzo Lutti"
<lorenz...@DOHtiscalinet.it> wrote:
:Io quando posso ne parlo. :)
:
:In Italia siamo molto indietro con i linguaggi di sintesi persino in
:campo professionale, figurati in quello hobbistico! Mentre negli USA
:progettare sistemi in VHDL e` cosa di routine anche per gli studenti di
:un college, qui siamo ancora vincolati dalla "vecchia" generazione di
:elettronici con scarsa dimestichezza col PC e l'informatica in generale.
::)
Salve, io gli fpga a dintorni li conosco di vista e vagamente; ma non ho idea
di cosa si possa farci realmente.
Facciamo un esempio, se dovessi costruire un hub/router con 4 porte, quali
sarebbero i vantaggi e le differenze della soluzione con micro oppure logiche
programmabili ? Sempre che sia possibile.
Ciao.

 giorno della settimana).
Non è sempre vero, non si può generalizzare! :-)
Se ti riferisci ai cores di processori che si trovano su Opencores (ma anche
ai vari Microbaze, Nios, Leon) allora sono daccorco con te (tieni presente
però che questi vengono usati più per mansioni di "controllo" e
coordinazione che non per elaborare segnali...).
La cosa interessante invece, consentita solo dagli FPGA, è la possibilità di
implementare processori o architetture custom, dotati di macro-istruzioni
apposite e implementate esplicitamente in hardware, questo porta a
prestazioni incredibili per certi tipi di problemi!
Dr. Jones
P.S. Ma secondo voi "FPGA" è un nome maschile o femminile?!? Ho sempre avuto
questo problema di fondo quando scrivo in italiano... :-)

 questo problema di fondo quando scrivo in italiano... :-)
Mah, di solito io il sesso lo stabilisco in base alla "famiglia" a cui
appartengono i dispositivi. Ad esempio le CPLD e le FPGA sono logiche
programmabili, e allora uso il femminile; i PIC sono microcontrollori,
allora uso il maschile; e cosi` via. :)
Esistono pero` molto eccezioni, mediate dall'uso comune dei termini (per
i quali non conosco le motivazioni originali dell'utilizzo del maschile
o del femminile). Ad esempio le porte logiche sono femminili, ma si dice
comunque "il" 74hc00. :)
--
Lorenzo

 programmabili ? Sempre che sia possibile.
Direi che per quattro porte ce la dovresti fare con delle "normali" FPGA
da poche decine di dollari (che arrivano tranquillamente a centinaia di
MHz). Questa e` un'applicazione tipica per una logica programmabile:
operazione fondamentalmente semplice e ripetitiva, e alta velocita`. Di
fatto credo che nei normali switch da ufficio non ci siano delle CPU,
bensi` delle ASIC (che sono sostanzialmente i "fratelli maggiori" delle
FPGA e permettono di raggiungere velocita` maggiori).
--
Lorenzo

 di un programmatore per siffatti devices?
Sia Xilinx che Altera hanno reso pubblico lo schema dell'interfaccina
JTAG compatibile con i loro sistemi.
Per Xilinx e` qui:
http://www.xilinx.com/support/programr/files/0380507.pdf
--
Lorenzo

Lattice e Actel; interessanti le loro FPGA in tecnologia flash.
Secondo me per un uso hobbistico conviene cominciare con
i CPLD, o meglio ancora con i GAL. Si trovano facilmente, costano
poco, vanno a 5 volt e quello che impari poi eventualmente lo
applichi ai dispositivi piu' complessi. Inoltre hanno contenitori DIL
(16-20 pin) o PLCC (44-68-84 pin) che permettono di usarli
comodamente con le normali basette millefori con passo 2,54 mm.
Ciao
Luigi

> questo problema di fondo quando scrivo in italiano... :-)
Essendo un "array", dovrebbe essere maschile.
Pero' finendo per "a" si e' portati ad assegnarle il genere
femminile, e mi sembra che sia questo l' uso corrente.
Ad ogni modo questo e' il problema minore!
Ciao
Luigi

 economico di una FPGA.
Proprio in questi giorni su comp.arch.fpga si sta molto dibattendo su
questo argomento. L'opinione comune (che sembra anche confermata dai
fatti) e` che le FPGA stiano mangiando del mercato agli ASIC, perche` i
costi di impianto di questi ultimi stanno diventando astronomici per
rimanere concorrenziali con le FPGA di punta (stanno gia` uscendo i
modelli a 90 nanometri della Xilinx...). Si parla di costi di impianto
vicini al milione di dollari, e anche se alla fine otterrai sicuramente
un dispositivo migliore, piu` veloce e che consuma meno, ne dovrai
vendere davvero tanti per giustificare la spesa. Dall'altra parte lo
spreco di efficienza e occupazione delle FPGA e` compensato dalle
evoluzioni tecnologiche e dai prezzi in caduta libera.
Comunque non posso dare un parere a ragion veduta su questa argomento,
il mio lavoro non comporta volumi tali da giustificare l'uso di ASIC e
quindi staro` ancora molto a lungo con DSP e FPGA...
--
Lorenzo

 applichi ai dispositivi piu' complessi.
Il problema dei (o delle :)) GAL e` che apparentemente mi sembra che ci
sia una certa carenza di software e strumenti free per usarle! Tempo fa
avevo fatto una breve ricerca e non avevo trovato quasi nulla, ma puo`
anche darsi che non abbia guardato nei posti giusti.
--
Lorenzo

 allora uso il maschile; e cosi` via. :)
Io ho sempre usato il maschile sottointendendo "dispositivi"... :-)

 (magari coordinate fra loro) le cose cambiano.
Non è detto... Anzi in molti casi è vero il contrario! (E mi è capitato di
implementare qualcosa del genere...) Diciamo che quello che mette un pò in
crisi gli FPGA sono gli algoritmi pesantemente basati sul flusso di
controllo, per i quali in genere occorre implementare un piccolo
microprocessore, perdendo eventualmente i vantaggi di altro tipo...
Dr. Jones

 i dispositivi Xilinx.
Sono daccordo.
Inoltre apprezzo molto la loro politica veramente "amichevole" nei confronti
di clienti (di cui tra l'altro non avrebbero bisogno occupando già più del
70% del mercato! :-) )
Dr. Jones

 Ad ogni modo questo e' il problema minore!
Per me lo č stato, visto che ho dovuto parlarne estesamente nella tesi! :-))

anche darsi che non abbia guardato nei posti giusti.
Io anni fa ero riuscito a costruirmi un programmatore di gal con
le pochissime informazioni reperite sul web.
Oggi pero' c'e' molto piu' materiale. Per il software, oltre al classico
palasm, si puo' usare l'ambiente Lattice, anche versioni vecchie,
che permettono di avere come target anche i semplici GAL16V8.
Per la programmazione, qualche tempo fa ho trovato sul web  un
programmatore supersemplice da collegare alla porta parallela,
mi sembra che impiegasse solo qualche resistenza. Non l'ho
ancora provato ma lo faro' quanto prima perche' ho ancora un
paio di stecche di 16V8 da smaltire!
Ciao
Luigi

evoluzioni tecnologiche e dai prezzi in caduta libera.
Ho letto anch'io, parlano di 30 mila $ per maschera per 30 maschere.
Assurdo.
C'e' un produttore di ASIC, non ricordo il nome, che e' specializzato
in conversione logiche programmabili->ASIC.
Questo dichiara che qualunque sia il tuo tipo di CPLA o FPGA
e qualunque sia il numero di pezzi che ti serve, hai convenienza
a passare ad un ASIC se consumi almeno 20 mila $ di FPGA o
PLD all'anno, ovviamente con la stessa configurazione!
Se fosse vero, e non ho motivo di dubitarne, qualunque cosa
dicano Xilinx o Altera, le FPGA sono destinate, almeno per ora,
ad essere impiegate su piccole produzioni.
Ah... e poi c'e' la storia della Clear Logic 
www.clear-logic.com
non so se la conosci.
Producevano logiche programmate tramite laser, perfettamente
compatibili pin to pin ai dispositivi Altera, ovviamente a prezzo
inferiore!
Bastava inviargli il file di configurazione e ti fornivano qualunque
numero di dispositivi, compresi campioni gratis.
Ovviamente alla Altera questa cosa ha dato parecchio fastidio
ed e' riuscita a far chiudere la Clear Logic con una sentenza
abbastanza discutibile grazie al fatto che i file di configurazione
erano prodotti dal software Altera.
Niente vieta pero' che domani, un altro produttore, magari cinese.
possa rifare la stessa operazione in perfetta legalita' usando
software proprietario.
Tutto questo per dire che la sicurezza che gli ASIC siano in
decadenza a favore delle FPGA e' tutta da verificare.
Ciao
Luigi

La mia esperienza per il momento e' limitata alle CPLD di Lattice. Sinceramente,
se si resta su packages piccoli, quindi con pochi problemi di saldatura,
mi sembrano lo strumento ideale per l' hobbista, in quanto se si fa' un circuito
intelligente, eventuali modifiche vengono poi fatte sulla
CPLD senza la necessita' di dissaldare fili vari. L'ambiente di Lattice si puo'
scaricare a gratis con licenza per sei mesi(credo rinnovabile).
Permette solo di utilizzare le CPLD e non le FPGA ma per un uso hobbistico penso
che siano piu' che sufficenti. La programmazione poi' e'
banale perche' basta un semplice cavo collegato alla parallela del pc.
Se volete vedere cosa sono riuscito a fare con i chip di Lattice guardate
http://utenti.lycos.it/micrologicanalyzer
Adesso in ditta stiamo acquistando l'ambiente completo per valutare la
possibilita' di utilizzare le fpga. Come ho detto io ho solo esperienza con
Lattice
e quindi mi piacerebbe sapere cosa ne pensate delle loro FPGA ed eventualmente
se potete consigliarmi soluzioni che ritenete migliori.
Ciao
               Ale

 fino al prossimo reset del pc.
Facciamo una distinzione intanto tra software e componenti.
Di software ne esistono due distinti, Maxplus e Quartus.
Maxplus é limitato ma funziona bene ed é semplice da usare.
Quartus, invece, come ambiente grafico é disastroso.
Fortunatamente puó funzionare in modo puramente testuale,
con il linguaggio TCL, che é il modo in cui lo uso io normalmente
tranne che per il floorplan editor. Nel moto testuale Quartus é
una roccia, non mi si é mai bloccato e non l'ho mai visto dare
messaggi strani o risultati inconsistenti. Peró richiede molta RAM,
possibilmente un gigabyte, ed é lento. Sul mio pc da 1.7 GHz
certi grossi progetti richiedono oltre 15 ore di elaborazione.
Per ció che riguarda i componenti, non credo che ci sia molto
da dire, funzionano regolarmente e non mi hanno mai dato problemi,
al contrario delle CPLD Xilinx che avevo usato e si bruciavano
dopo poche centinaia ore di funzionamento a causa del surriscaldamento
localizzato in alcune macrocelle.
Gli unici appunti che posso fare all'Altera sono i frequenti cambiamenti
delle caratteristiche, vedi la famiglia MAX7000, ne hanno fatto almeno
4 o 5 generazioni in pochi anni e innumerevoli cambiamenti di processo,
e sulla documentazione incompleta e disordinata.

 mi sembra che impiegasse solo qualche resistenza.
Probabilmente era galblast:
http://www.geocities.com/mwinterhoff/program.htm
--
Lorenzo

 70% del mercato! :-) )
Loro sanno che la` fuori c'e` della brutta gente, delle iene pronte ad
assalirli... :))
Poi non credo che abbiano un vantaggio cosi` schiacciante, mi sembra di
aver letto che Xilinx e Altera abbiano piu` o meno lo stesso "share" di
mercato.
--
Lorenzo

 Non č detto... Anzi in molti casi č vero il contrario!
Anche Luigi mi ha risposto cosi`, probabilmente mi sono spiegato male.
Intendo molte cose *diverse* e legate in modo complesso fra di loro
(elaborazione di segnali, comunicazioni con altri dispositivi, calcoli
condizionati ad altri processi, I/O...)!
--
Lorenzo

 decadenza a favore delle FPGA e' tutta da verificare.
Questo senz'altro. Fra l'altro proprio l'altro giorno su comp.arch.fpga
hanno dato questo link:
http://www.eedesign.com/story/OEG20030409S0025
--
Lorenzo

 se potete consigliarmi soluzioni che ritenete migliori.
Non conosco le FPGA della Lattice, ma so che hanno una famiglia di FPGA
non volatili (che si programmano una volta sola, come le CPLD). Questa
puo` essere una caratteristica molto interessante per certe
applicazioni, sto pensando ad esempio a quelle in cui e` necessario
proteggere il firmware della logica programmabile.
A parte questo, continuo a ritenere che i due leader (sia come
reperibilita` che come qualita`) restino Altera e Xilinx. Xilinx mi
sembra molto piu` disponibile verso i piccoli sviluppatori, il loro
WebPack (totalmente gratuito) ti permette di programmare anche FPGA
molto grosse.
--
Lorenzo