Sostieni il forum con una donazione! Il tuo contributo ci aiuterà a rimanere online!
Immagine

delay digitale, diagrammi?

Tutto ciò che riguarda l'elettronica digitale, dalla porta not al protocollo midi... e oltre!
Avatar utente
davidefender
Garzone di Roger Mayer
Garzone di Roger Mayer
Messaggi: 1437
Iscritto il: 11/02/2008, 23:51
Località: Roma
Contatta:

Re:delay digitale, diagrammi?

Messaggio da davidefender » 12/06/2009, 15:23

per dei PIC io ho lavorato con la piattaforma Arduino, e sarebbe perfetta per questo lavoro (ha 4 ADC a 8 bit integrati, perfetti per i potenziometri) e molti bit per le connessioni digitali, ma per i convertitori che ne dici di quelli che avevi già individuato nella discussione dei dsp?

:ciao:
La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché.
(Albert Einstein)

hilkin
Diyer Aiutante
Diyer Aiutante
Messaggi: 90
Iscritto il: 04/03/2009, 12:54
Località: Alonte (VI)

Re:delay digitale, diagrammi?

Messaggio da hilkin » 12/06/2009, 16:06

nelle varie ricerche avevo trovato questo sito che vende un po di tutto, anche adc e dac
http://www.profusionplc.com/MixedSignalICs.htm

dai dsp alle resistenze, ed è in europa quindi senza dazi,

alla fine di quella discussione mi ero convinto su questo:

http://www.profusionplc.com/pro/gex/pca ... PN1001-FV1

che farebbe sia da piccolo dsp che da memoria a 33k, ed avrebbe anche gli ingressi per i potenziometri, purtroppo non è espandibile.

Stasera mi leggo bene come funziona arduino, però da quello che leggo non si basa sui pic. Voi avete già questa scheda? E nel caso che versione avete?

hilkin
Diyer Aiutante
Diyer Aiutante
Messaggi: 90
Iscritto il: 04/03/2009, 12:54
Località: Alonte (VI)

Re:delay digitale, diagrammi?

Messaggio da hilkin » 15/06/2009, 10:14

Mi sono un po guardato la piattaforma arduino questo weekend, mi sembra perfetta anche per altre cose diy, per esempio per mettere qualche sensore strano sulla chitarra o robe del genere, comunque alla fine è solo una specie di demoboard minimale della famiglia di microcontrollori ATmel, comunque utile visto il basso costo e la versatilità, in linea di massima queste chede dovrebbero andare bene, tra stasera e domani mi studio anche le differenze di potenza di calcolo tra le varie versioni perchè ne hanno un bel po

Avatar utente
davidefender
Garzone di Roger Mayer
Garzone di Roger Mayer
Messaggi: 1437
Iscritto il: 11/02/2008, 23:51
Località: Roma
Contatta:

Re:delay digitale, diagrammi?

Messaggio da davidefender » 15/06/2009, 10:20

hilkin ha scritto: comunque alla fine è solo una specie di demoboard minimale della famiglia di microcontrollori ATmel
esattamente!  :gui1: il vantaggio è che è estremamente facile da utilizzare, ed essendo open source ci sono miliardi di librerie e righe di codice sviluppata da persone qualunque! Io posseggo la 2009 che è perfetta per il mio MIDI switcher, ancora meglio, e davvero paurosa in quanto a connessioni è la MEGA (l'ultima nata) ha però lo svantaggio di essere SMD, quindi non si può rimuovere il procio e inserirlo nella propria board (cosa invece possibile con la 2009)

che ne dici?

:ciao:
La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché.
(Albert Einstein)

hilkin
Diyer Aiutante
Diyer Aiutante
Messaggi: 90
Iscritto il: 04/03/2009, 12:54
Località: Alonte (VI)

Re:delay digitale, diagrammi?

Messaggio da hilkin » 15/06/2009, 11:02

Penso vada bene, l'unica cosa che mi blocca è che è a 8 bit, comunque va a 16 MHz quindi alla fine non penso ci saranno problemi per fargli fare un po di lavoro da dsp solo nella gamma audio, ho visto che ci sono 2 distributori italiani, tu quale mi consigli?
Per noi la 2009 va benissimo, ha 6 ingressi con adc su cui possiamo mappare 6 potenziometri ed eventualmente qualche ingresso digitale lo possiamo usare per degli switch quindi come controlli in ingresso penso ne abbiamo più che a sufficienza.

Adesso mancherebbe un adc e un dac seriali con possibilmente un package che possa essere inserito su zoccoletto, e anche una ram sempre seriale, più tardi facico una piccola ricerca.

ps: l'arduino è perfetto per interfacciare sensori e sparare fuori segnali midi, e per riceverli ovviamente, se prevediamo anche un utilizzo simile possiamo anche dedicare un ingresso digitale a ricevere segnali midi, in modo da controllare i parametri da remoto, credo che i tastieristi sarebbero contenti di avere una cosa del genere

Avatar utente
davidefender
Garzone di Roger Mayer
Garzone di Roger Mayer
Messaggi: 1437
Iscritto il: 11/02/2008, 23:51
Località: Roma
Contatta:

Re:delay digitale, diagrammi?

Messaggio da davidefender » 16/06/2009, 10:47

hiklin, tu mi stai letteralmente invitando a nozze!  :lol1:

allora, come hai detto bene, possiamo usare fino a 6 pot, ma direi che anche 4 vanno più che bene ( = ci risparmiamo 2 bit digitali in più), direi che l'interfaccia MIDI è un must! Se poi vogliamo fare i fichi (e io VOGLIO fare il fico  :yrock:) con 4 bit digitali ci si pilota un display LCD sui quali visualizziamo i parametri dell'effetto, le patch e così via...
Per il discorso degli 8 bit: è vero, ma non dimenticare che la piattaforma Arduino ci viene in aiuto:
http://arduino.cc/en/Reference/UnsignedLong

Abbiamo quindi operazioni di base già pronte per il calcolo a 32 bit (e direi che con 32 bit possiamo fare un audio professionale!)
Per quanto riguarda la RAM e gli adc:
Le RAM ne ho trovate molte qui, e i prezzi sono davvero ridicoli!
http://www.futurlec.com/ICRAM.shtml

per gli adc e dac, lo stesso sito ne propone alcuni, ma non sono proprio all'altezza del risultato che vogliamo ottenere:
http://www.futurlec.com/ICADConv.shtml

c'è però da dire che in una prima implementazione potremmo usare dac /adc ridicoli (da 8 bit, costano 2 dollari) solo per testare l'algoritmo e tutto il funzionamento generale, in un secondo momento, sviluppando il codice con criterio (ovvero mappando gli 8 bit in 32 per la prima fase di testing) avremmo un codice che è effettivamente pronto per DAC/ADC di qualità di molto superiore, ci basterebbe apportare qualche banalissima modifica al driver dell'interrupt incaricato di pescare valori per utilizzare i nuovi componenti.. se non sono stato troppo chiaro, ti prego dimmelo che cerco di spiegarmi meglio!!

Altra nota.. per generare il clock a 44100Hz che ci genera l'interrupt appunto per il sampling audio, che cosa si può usare? un NE555? mi pare una buona idea che ne dici?

a presto!  :ciao:
La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché.
(Albert Einstein)

hilkin
Diyer Aiutante
Diyer Aiutante
Messaggi: 90
Iscritto il: 04/03/2009, 12:54
Località: Alonte (VI)

Re:delay digitale, diagrammi?

Messaggio da hilkin » 16/06/2009, 14:39

Effettivamente a noi che si campioni a 44100Hz o 44000 o 45000 non ci cambia poi di molto, in fin dei conti entriamo in analogico e usciamo in analogico quindi penso che il 555 vada benissimo, se invece si prevede in un'altra versione, o in questa di entrare o uscire con spdif le cose cambiano perchè in quel caso ci serve un clock molto preciso. Se lo scopo è di fare un pedalino spdif non serve a niente, ma se vogliamo andare verso un effetto da mettere a rack può essere un bel plus per fare concorrenza alle apparecchiature di gamma alta.

Per quanto riguarda i 32 bit la mia paura è per il degrado delle prestazioni, nel momento in cui fai operazioni a 32 bit su una macchina a 8 bit vai almeno 4 volte più lento, però senza provare non si può sapere cosa succede e se ce la fa a tenere, in linea di massima sono fiducioso, senza esagerare con gli interrupt ce la dovremmo fare. (mi spaventa molto il fatto che in internet ho visto molti progetti di arduino usato come microcontrollore ma veramente poco come interfaccia audio)

Il discorso sugli adc e dac a pochi soldi ci sta, tanto se internamente è a 32 bit all'algoritmo poco importa che tu ne usi solo 8 quindi può andare bene, l'unica cosa da considerare è secondo me di magari ricercare ancora un po se esiste un adc e dac di prestazioni adeguate che sia a basso costo.

Avatar utente
davidefender
Garzone di Roger Mayer
Garzone di Roger Mayer
Messaggi: 1437
Iscritto il: 11/02/2008, 23:51
Località: Roma
Contatta:

Re:delay digitale, diagrammi?

Messaggio da davidefender » 16/06/2009, 16:46

hilkin ha scritto: Effettivamente a noi che si campioni a 44100Hz o 44000 o 45000 non ci cambia poi di molto, in fin dei conti entriamo in analogico e usciamo in analogico
hai colto esattamente la mia intuizione/preoccupazione: come hai giustamente detto se si fa "tutto in casa"  :lol1: possiamo andare ad una frequenza di clock che ci pare! anche superiore, diverso è se bisogna far uscire anche i dati digitali... ma a quel punto cosa consiglieresti come oscillatore?
Cmq per il degrado delle prestazioni a 32 direi che hai ovviamente ragione, diciamo che io punto sul fatto che l'oscillatore del microcontrollore è abbastanza alto da poterci permettere dei piccoli sprechi, cmq è possibile anche usare istruzioni in assembler se non vogliamo usare quelle in C per una maggiore efficienza (e ovviamente complessità  :lol1:) stavo già pensando che in realtà il trucchetto è che tutto l'algoritmo che crea il dato in uscita dovrebbe essere svolto il più possibile IN ANTICIPO, in maniera che allo scadere del clock vengano fatte pochissime operazioni e quindi introduciamo una latenza pressochè nulla.. cmq questi cominciano pure ad essere tecnicismi.. direi che è ancora un pò presto! ma facciamo bene.. si deve sempre e comunque fare uno studio di fattibilità!  :lol1:

per la mappatura da 8 a 32 basta che usiamo le proporzioni:  valore8bit : 2^8 = valore32bit : 2^32
così facendo sfruttiamo proprio tutto il range, ma in effetti stiamo sempre campionando a 8 bit.. almeno per la fase di testing!  :beer:

che ne dici?
La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché.
(Albert Einstein)

hilkin
Diyer Aiutante
Diyer Aiutante
Messaggi: 90
Iscritto il: 04/03/2009, 12:54
Località: Alonte (VI)

Re:delay digitale, diagrammi?

Messaggio da hilkin » 16/06/2009, 18:04

Con l'spdif non dovremmo avere problemi perchè gli integrati che fanno da conversione tra segnale spdif e seriale digitale di solito mettono fuori anche un piedino con il clock (e ricavano il clock direttamente dal segnale in ingresso), per esempio :

http://www.profusionplc.com/pro/gex/pca ... WM8804GEDS

che non costa molto e fa sia da ingresso spdif che da uscita, oltre a mettere fuori il clock. Il problema è che tutti questi integrati che costano poco sono smd, ma se accettiamo questo fatto a quel punto tanto vale prendere anche adc e dac smd che costano notevolmente meno e nello stasso sito ci sono direttamente i 24 bit a basso costo.

Per quanto riguarda la potenza del processore: devo ancora studiarmi l'architettura però faccio 4 conti nel caso più roseo
16 Mhz di clock, in caso di architettura superspinta farà un'operazione ad ogni colpo di clock, quindi considerando che con cadenza 44100 volte al secondo ci arriva un campione abbiamo circa 362 istruzioni per ogni campione, da una prima sfogliata al manuale dell'ATmega mi pare che faccia una istruzione per colpo di clock, però non ho ancura avuto il tempo per leggere bene.

Per quanto riguarda il riscalare da 8 a 32 bit può avere senso se mettiamo qualche filtro semplice, ma praticamente fare la conversione equivale a fare uno shift sino a che il primo bit della campionatura a 8 arriva al primo bit della campionatura a 32, quindi di fatto essendo la struttura a 8 bit basta mettere il campione nel posto giusto, del tipo:

campione a 32 bit diviso in parti da 8 bit:    A B C D
Se noi mettiamo il campione a 8 bit in A è come se avessimo scalato il valore, mentre se lo mettiamo in D manteniamo la stessa scalatura che ha a 8 bit.  (ovviamente se è little endian, se big endian si fa il contrario)

La conversione in questo modo non ha costo computazionale perchè da qualche parte li dovevi salvare i dati quindi tanto vale salvarli al posto giusto.

Per quel che riguarda l'anticipare il dato sono pienamente d'accordo , dobbiamo però fare i conti con la velocità di lettura e scrittura che possiamo avere dagli adc e dac, se potremo usarli ad alta velocità converrà fare un interrupt che scrive l'uscita e legge l'ingresso semplicemente, mentre il ciclo principale prepara i dati, se invece le periferiche vanno a velocità bassa dovremo trovare una soluzione diversa se non fare addirittura il contrario.


ps: questo topic sta cominciando a diventare interessante

Avatar utente
davidefender
Garzone di Roger Mayer
Garzone di Roger Mayer
Messaggi: 1437
Iscritto il: 11/02/2008, 23:51
Località: Roma
Contatta:

Re:delay digitale, diagrammi?

Messaggio da davidefender » 16/06/2009, 18:41

hilkin ha scritto: ps: questo topic sta cominciando a diventare interessante
:fonz: :fonz:

allora, in effetti non è che sarebbe proprio sbagliato prendere componenti di qualità anche se smd.. per problema come ti avevo avvennato forse ho una soluzione, un tizio che realizza PCB e che forse potrebbe realizzare degli zoccoletti per questi componenti (anche se poi sarebbero saldati sullo zoccolo, e quindi difficilmente riutilizzabili.. ma cmq ci si potrebbe costruire tutto il prototipo).. credo che in realtà il problema maggiore sarebbe... il grano!  :lol1: si insomma, i soldi! io sono a secco, e se ho qualcosa cerco di investirlo nel mio MIDIswitcher, solo che finchè si tratta di comprare 4 IC da 2 euro l'uno, non ci sono problemi!  :arf2: ma se diventno un pò di più.. non so.. vabbhè, magari sto correndo un pò tanto con la fantasia!.

Tralaltro come fase di testing, per il segnale audio si potrebbe usare anche l'ADC dell'arduino (soluzione DAVVERO low cost  :eek1:) il problema rimarrebbe per il DAC, ma se produciamo algoritmi validi, poi qualche soldo in più si spende anche più volentieri!  :lol1:
La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché.
(Albert Einstein)

Avatar utente
davidefender
Garzone di Roger Mayer
Garzone di Roger Mayer
Messaggi: 1437
Iscritto il: 11/02/2008, 23:51
Località: Roma
Contatta:

Re:delay digitale, diagrammi?

Messaggio da davidefender » 17/06/2009, 9:49

http://www.futurlec.com/SMD_Adapters.shtml  :seetest:

te la cavi con il saldatore  :lol1:?
La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché.
(Albert Einstein)

hilkin
Diyer Aiutante
Diyer Aiutante
Messaggi: 90
Iscritto il: 04/03/2009, 12:54
Località: Alonte (VI)

Re:delay digitale, diagrammi?

Messaggio da hilkin » 22/06/2009, 0:22

ho trovato un'articolo interssante per la scelta dell'adc:

http://it.emcelettronica.com/adc-conver ... gitale-top

fa una rassegna di molti adc per scopi audio, da quelli più economici a quelli anche performanti, almeno non procediamo leggendo datasheet a caso.

Il sito raccoglie anche molti atri articoli interessanti.

Avatar utente
davidefender
Garzone di Roger Mayer
Garzone di Roger Mayer
Messaggi: 1437
Iscritto il: 11/02/2008, 23:51
Località: Roma
Contatta:

Re:delay digitale, diagrammi?

Messaggio da davidefender » 22/06/2009, 12:47

OTTIMO!

davvero ottimo articolo, scusa se non ti ho risposto al mex privato, ma sono nel bel mezzo di un esame!  :tapai:

a presto!!
La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché.
(Albert Einstein)

hilkin
Diyer Aiutante
Diyer Aiutante
Messaggi: 90
Iscritto il: 04/03/2009, 12:54
Località: Alonte (VI)

Re:delay digitale, diagrammi?

Messaggio da hilkin » 22/06/2009, 14:02

Non preoccuparti anche per me questo è un momento di superlavoro, purtroppo o per fortuna sta crisi io non so proprio dove stia di casa tanto che non posso prendermi ferie se non in caso di veramente estrema necessità.

Rispondi