Sorgenti digitali e jitter: la soluzione?

La sezione principale

Moderatore: F.Calabrese

Max
Messaggi: 1636
Iscritto il: martedì 12 giugno 2012, 20:48
Località: ...

Sorgenti digitali e jitter: la soluzione?

Messaggio da Max » martedì 8 gennaio 2013, 23:05

Come avrà visto chi ha seguito le discussioni sulla liquida di questi ultimi giorni, sono alla ricerca da tempo di un modo "intelligente" per ottimizzare il digitale e sono sempre stato scettico sul dare troppo peso all'ottimizzazione della sorgente.

Insomma ho spiegato più volte perché dovrebbe essere tutto sommato concettualmente semplice risolvere il problema della qualità dello stream audio digitale, ovvero il jitter:
- si individua la frequenza di clock in ingresso
- si mettono i campioni in un buffer
- si genera un clock locale di elevata precisione
- si convertono i campioni con il nuovo clock
Il prezzo da pagare è un ritardo introdotto dal buffering, ma nel caso della pura riproduzione audio questo non ci interessa.

Ebbene, mi sono rivolto al panorama internazionale e qualcosa di interessante, ovvero qualcosa che fa quello che avevo in mente, è uscito. Il thread di sviluppo su diyAudio è questo:
http://www.diyaudio.com/forums/digital- ... itter.html

La nota dolente è che non esiste come prodotto finito in commercio, bisogna partecipare al gruppo d'acquisto su diyAudio ed attendere una quantità di tempo che non sono andato a verificare, per il momento. E comunque si tratta di alcune PCB che vanno collegate tra loro ed inscatolate, per ottenere qualcosa di presentabile.

Qui un blog post che spiega i problemi con le tecnologie attualmente in commercio e come il buffer in questione cerca di porvi rimedio: http://hifiduino.wordpress.com/2012/03/ ... ec-jitter/

Il thread per il group buy è questo:
http://www.diyaudio.com/forums/group-bu ... uy-77.html

I prezzi attuali sono di circa 320 dollari per il kit completo (scheda FIFO I2S + scheda per clock variabile + scheda S/PDIF) spedito. Non è economicissio, ma permette di togliersi qualsiasi preoccupazione sul jitter della vostra sorgente digitale presente e futura (sia un PC, sia uno smarpthone/tablet, sia un lettore CD).

Se qualcuno cercava la "pappa pronta" mi dispiace averlo deluso. Spero di aver reso servizio a tutti condividendo quello che per me è un approccio molto intelligente al problema ;)

madman
Messaggi: 509
Iscritto il: giovedì 19 maggio 2011, 16:14

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da madman » mercoledì 9 gennaio 2013, 0:32

Molto bello ed interessante, ovviamente ho dato una rapida occhiata.

C'è un sistema montato in Italia? Tu sei lista? Qualche foto o video del prodotto in funzione? Come si usa?

Max
Messaggi: 1636
Iscritto il: martedì 12 giugno 2012, 20:48
Località: ...

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da Max » mercoledì 9 gennaio 2013, 1:02

madman ha scritto:Molto bello ed interessante, ovviamente ho dato una rapida occhiata.

C'è un sistema montato in Italia? Tu sei lista? Qualche foto o video del prodotto in funzione? Come si usa?
No, io per il momento ho altre priorità visto che il mio impianto è ancora composto di "mezzi di fortuna".

Ho letto che un utente del forum AudioFaiDaTe ne ha ordinato uno, ma non ho letto commenti a riguardo.

In pratica si mette tra la sorgente e il DAC e permette di disaccoppiare il clock a monte da quello a valle, che viene generato localmente.

Nativamente lavora con uno stream I2S (che non è detto sia estraibile facilmente da qualsiasi dispositivo) ma può essere interfacciato con una scheda I/O S-PDIF.

PeterDeNiro
Messaggi: 337
Iscritto il: lunedì 11 giugno 2012, 15:59

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da PeterDeNiro » mercoledì 9 gennaio 2013, 8:52

Ciao

si il Jitter è importantissimo, il segnale di clock in effetti è la parte "analogica" del sistema digitale. La questione fondamentale non è il JItter di per se, e nemmeno il suo spettro. Il problema fondamentale è come si cross-correla con il segnale, quindi sarebbe carino vedere il cross-spectrum segnale-jitter... una misura difficile e che nessuno si sogna di pubblicare.

Secondo me i Buffers non risolvono il problema, infatti ne aggiungono molti altri. Poi spesso la programmazione di questi chip avviene con "copia-incolla" vari e nel caso dei Buffer quello che fa la differenza è proprio il software.

Io ho sempre sposato la soluzione del re-clock asincrono mediante un resampler con un quartz locale di altissima qualità piazzato giusto prima della conversione. Io questo

http://www.twistedpearaudio.com/digital/metronome.aspx

alimentato a batteria... e credetemi quando è dentro la catena si sente e come!


Ovviamente ci sono i puristi del DAC No-Oversampling No-Upsampling (che sono due cose diverse). E' vero l'AudioNote DAC 4 suona da incanto, ma siamo sicuri che il buon suono sia dovuto all'assenza di resampling. Io credo sia dovuto più che altro al mostruoso stadio di uscita... infatti il suono dipende molto dalle valvole che ci metti.

A parte illustri esempi (costosissimi) come il DAC4, tutti i DAC moderni fanno conversione Delta-Sigma per ottime ragioni, quindi prima o poi massicce dosi di resampling in dominio PCM sono necessarie per mandare lo stream in pasto al Delta-Sigma.

Ecco perché il reclock asincrono mediante upsampling è vantaggioso:

1. Riduce la quantità di resampling a carico del chip DAC, una cosa non da poco

2. Per la serie ognuno fa il suo mestiere: gran parte del ricampionamento viene fatta ad un chip dedicato... Si ricordi che la maggior parte dei chip Delta-sigma ricampiona attraverso una banale interpolazione lineare, una forma primordiale di ricampionamento!

3. La asincronia del processo rende completamente indipendente la sorgente (spesso un PC o una meccanica CD) dalla conversione, l'unica cosa che puo' generare Jitter sta dentro lo chassis del resampler-DAC.

4. Per coloro che fanno DSP con catene fully-digital, avere un resampler che lavora a 24bit vicino alla conversione è una manna! Visto che alcuni DAC (esempio il mio SABRE) lavorano anche a 32bit... stiamo solo aspettando ricampionatori seri a 32bit!


Un segnale a 16Bit/44.1Khz ha una quantità di informazione enorme... un upsampler programmato come si deve puo' ricostruire il segnale nella sua integrità nella banda audio di interesse... lo so che c'è gente "non credente" ma la matematica è l'unica cosa alla quale non bisogna credere...è vera per definizione

http://en.wikipedia.org/wiki/Whittaker% ... on_formula

http://www.ingelec.uns.edu.ar/pds2803/M ... torial.pdf

ovviamente mi potete dire il teorema di Shannon-Whittaker vale asintoticamente... ma guardate il il punto 2 in "Validity conditions" del primo link! Il teorema fornisce anche un bound per campionamenti finiti!

PdN

F.Calabrese
Messaggi: 42377
Iscritto il: giovedì 23 settembre 2010, 16:18
Località: Roma
Contatta:

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da F.Calabrese » mercoledì 9 gennaio 2013, 9:06

In segno di riconoscenza e stima, piazzo in testa il thread !!!

Saluti
F.C.

Max
Messaggi: 1636
Iscritto il: martedì 12 giugno 2012, 20:48
Località: ...

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da Max » mercoledì 9 gennaio 2013, 10:38

Grazie PdN per il prezioso contributo.

Quel che non mi è chiaro è perché il resampler dovrebbe essere esente dai problemi di un buffer come quello che ho indicato io.

Cioè, mi verrebbe da pensare che per fare un resampling asincrono il buffer ti ci vuole lo stesso, con la differenza che in questo caso si tratta di un chip specificatamente progettato per quello, nell'altro caso si tratta di un FPGA programmato da qualcuno (con tutte le variabili e "rischi" del caso). Sbaglio qualcosa?

In ogni caso l'idea del resampling mi piace di più perché come fai giustamente notare "elimina" anche la variabile di come il DAC si comporti in funzione di diverse frequenze di campionamento in ingresso.

alberto inzani
Messaggi: 4524
Iscritto il: martedì 19 luglio 2011, 15:07

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da alberto inzani » mercoledì 9 gennaio 2013, 10:40

PeterDeNiro ha scritto:Ciao

si il Jitter è importantissimo, il segnale di clock in effetti è la parte "analogica" del sistema digitale. La questione fondamentale non è il JItter di per se, e nemmeno il suo spettro. Il problema fondamentale è come si cross-correla con il segnale, quindi sarebbe carino vedere il cross-spectrum segnale-jitter... una misura difficile e che nessuno si sogna di pubblicare.

Secondo me i Buffers non risolvono il problema, infatti ne aggiungono molti altri. Poi spesso la programmazione di questi chip avviene con "copia-incolla" vari e nel caso dei Buffer quello che fa la differenza è proprio il software.

Io ho sempre sposato la soluzione del re-clock asincrono mediante un resampler con un quartz locale di altissima qualità piazzato giusto prima della conversione. Io questo

http://www.twistedpearaudio.com/digital/metronome.aspx

alimentato a batteria... e credetemi quando è dentro la catena si sente e come!


Ovviamente ci sono i puristi del DAC No-Oversampling No-Upsampling (che sono due cose diverse). E' vero l'AudioNote DAC 4 suona da incanto, ma siamo sicuri che il buon suono sia dovuto all'assenza di resampling. Io credo sia dovuto più che altro al mostruoso stadio di uscita... infatti il suono dipende molto dalle valvole che ci metti.

A parte illustri esempi (costosissimi) come il DAC4, tutti i DAC moderni fanno conversione Delta-Sigma per ottime ragioni, quindi prima o poi massicce dosi di resampling in dominio PCM sono necessarie per mandare lo stream in pasto al Delta-Sigma.

Ecco perché il reclock asincrono mediante upsampling è vantaggioso:

1. Riduce la quantità di resampling a carico del chip DAC, una cosa non da poco

2. Per la serie ognuno fa il suo mestiere: gran parte del ricampionamento viene fatta ad un chip dedicato... Si ricordi che la maggior parte dei chip Delta-sigma ricampiona attraverso una banale interpolazione lineare, una forma primordiale di ricampionamento!

3. La asincronia del processo rende completamente indipendente la sorgente (spesso un PC o una meccanica CD) dalla conversione, l'unica cosa che puo' generare Jitter sta dentro lo chassis del resampler-DAC.

4. Per coloro che fanno DSP con catene fully-digital, avere un resampler che lavora a 24bit vicino alla conversione è una manna! Visto che alcuni DAC (esempio il mio SABRE) lavorano anche a 32bit... stiamo solo aspettando ricampionatori seri a 32bit!


Un segnale a 16Bit/44.1Khz ha una quantità di informazione enorme... un upsampler programmato come si deve puo' ricostruire il segnale nella sua integrità nella banda audio di interesse... lo so che c'è gente "non credente" ma la matematica è l'unica cosa alla quale non bisogna credere...è vera per definizione

http://en.wikipedia.org/wiki/Whittaker% ... on_formula

http://www.ingelec.uns.edu.ar/pds2803/M ... torial.pdf

ovviamente mi potete dire il teorema di Shannon-Whittaker vale asintoticamente... ma guardate il il punto 2 in "Validity conditions" del primo link! Il teorema fornisce anche un bound per campionamenti finiti!

PdN

quindi,
a cercare di fare il punto anche in base a quanto postato in ASCOLTI,
è consigliabile interporre il quarzo cui accenni tra l'uscita del PC e l'ingresso del DAC ?

madman
Messaggi: 509
Iscritto il: giovedì 19 maggio 2011, 16:14

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da madman » mercoledì 9 gennaio 2013, 11:18

Scusate ragazzi mi sto perdendo... ammetto la mia ignoranza verso livelli così "dettagliati e vado un pò in confusione.

Mi dite cosa ne pensate di questo http://www.mega-nerd.com/SRC/index.html ?

PeterDeNiro
Messaggi: 337
Iscritto il: lunedì 11 giugno 2012, 15:59

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da PeterDeNiro » mercoledì 9 gennaio 2013, 11:29

Max ha scritto:Grazie PdN per il prezioso contributo.

Quel che non mi è chiaro è perché il resampler dovrebbe essere esente dai problemi di un buffer come quello che ho indicato io.

Cioè, mi verrebbe da pensare che per fare un resampling asincrono il buffer ti ci vuole lo stesso, con la differenza che in questo caso si tratta di un chip specificatamente progettato per quello, nell'altro caso si tratta di un FPGA programmato da qualcuno (con tutte le variabili e "rischi" del caso). Sbaglio qualcosa?

In ogni caso l'idea del resampling mi piace di più perché come fai giustamente notare "elimina" anche la variabile di come il DAC si comporti in funzione di diverse frequenze di campionamento in ingresso.
I resampler internamente hanno sempre qualche forma di un buffer ma è ottimizzato rispetto al flusso di dati che deve uscire. La storia dei Buffers è molto complicata. Con un po' di pazienza si puo' fare un esperimento semplice. Prendi un player audio che dia la possibilità di stabilire la grandezza del buffer, ora fai variare il buffer e monitora la latenza complessiva del sistema. Vedrai che aumentare il buffer qualche volta comporta incrementi di latenza. Se la latenza fosse poco variabile si aggiungerebbe solo una costante temporale innocua, il problema è la variabilità della latenza... la quale è fortemente dipendente dalla tecnica di buffering!

Questo dimostra come esiste un rate di buffer ottimale lontano dal quale le perfomance non possono che peggiorare, talvolta in modo non ovvio. Il buffer è come una vasca con un rubinetto ed un foro.... tu vuoi mantenere due cose: (i) l'acqua dentro la vasca non deve andar mai fuori, (ii) quello che hai dentro la vasca non deve andare mai sotto un certo livello (iii) importantissimo: la velocità con cui l'acqua esce deve essere sempre la stessa.

Mettere un buffer dentro un resampler è più semplice che fare un buffer standalone (motivi tecnici).

PdN

PeterDeNiro
Messaggi: 337
Iscritto il: lunedì 11 giugno 2012, 15:59

Re: Sorgenti digitali e jitter: la soluzione?

Messaggio da PeterDeNiro » mercoledì 9 gennaio 2013, 11:38

alberto inzani ha scritto: quindi, a cercare di fare il punto anche in base a quanto postato in ASCOLTI, è consigliabile interporre il quarzo cui accenni tra l'uscita del PC e l'ingresso del DAC ?

Per ottenere il massimo in termini clocking, un resampler con un quarzo dedicato deve stare alla fine del percorso SPDIF ed appena prima del DSP e/o DAC, ma ancora più importante:

1. il rumore sull'alimentazione di buffer e convertitore devono essere
(a) più basso possibile
(b) indipendente, quindi alimentazioni elettricamente indipendenti (tipo due batterie diverse)

2. tutto quello che viene dopo il resampler deve essere connesso su bus I2S con connessioni di lunghezze minime

3. Il quarz deve essere meccanicamente isolato, e tutto l'apparato deve avere una schermatura estrema... il mio resempler-DAC è contenuto in una vasca di piombo e sabbia di mare.

Se c'è una cosa che risente delle vibrazioni sono i quarz dei clock.... il resto dei legnetti vanno bene per il caminetto!

PDN

Rispondi