Il suono digitale – capitolo 2 ___________________________________________________________________________ Il Suono Digitale Capitolo 2 - Il convertitore AD Introduzione pag 1 Il campionatore pag 2 La quantizzazione pag 4 La quantizzazione non lineare pag 7 La codifica digitale pag 8 La correzione degli errori pag 9 Introduzione La conversione analogica-digitale sfrutta il principio del teorema del campionamento visto nel capitolo 1. Lo schema generale del convertitore AD è illustrato nella figura seguente. Schema ADC FILTRO Analogico Banda illimitata Tempo e ampiezza continui Campionatore Analogico Banda limitata Tempo e ampiezza continui Quantizzatore Codificatore Analogico Tempo discreto Ampiezza continua Digitale Tempo e Ampiezza discreti Il FILTRO limita la larghezza di banda del segnale analogico. Il CAMPIONATORE converte un segnale a valore continuo nel tempo in segnale discreto Il QUANTIZZATORE converte un segnale a valore continuo nell’ampiezza in segnale discreto Il CODIFICATORE definisce il codice di segnale digitale in base alle applicazioni che seguono. Il passaggio discretizzazione dall’analogico del tempo, a digitale detta è caratterizzato campionamento, e da da un’operazione una successiva discretizzazione dell’ampiezza, detta quantizzazione. Silvio Relandini www.audiomidi-educational.it 1 di di Il suono digitale – capitolo 2 ___________________________________________________________________________ A ogni periodo di campionamento si preleva un campione dell’ampiezza del segnale, cioè il valore quantizzato del segnale analogico in quell’istante; il risultato è una sequenza di valori che corrispondono all’andamento del segnale. Più sono ravvicinati i valori, più efficacemente sarà descritto l’andamento del segnale. In modo ancora più intuitivo, più brevi sono gli intervalli di tempo tra un campione e il successivo, più simile all’originale analogico sarà il segnale risultante. Per intervalli di tempo infinitamente brevi, i due segnali analogico e digitale dovrebbero coincidere. È chiaro che occorre trovare un buon bilancaimento tra il numero dei campioni (ovvero la SR) e la qualità del suono che si vuole ottenere. Una migliore qualità del segnale presuppone un maggior numero di campioni nell’unità di tempo e di conseguenza uno spazio maggiore in memoria e una velocità superiore di trasferimento dati. La riproduzione dell’audio corrisponde a una lettura dei campioni e alla loro conversione in segnale analogico, operazione che deve avvenire con una velocità appropriata. Se i campioni che descrivono il segnale sono 44.100 per secondo, occorre che il dispositivo (hard disk, CD) sia abbastanza veloce da inviare 44.100 numeri al DAC. Se l’audio viaggiasse su Internet, allora la rete dovrebbe essere in grado di trasportare 44.100 campioni al secondo, altrimenti la riproduzione sarebbe difficile. Il campionatore Il campionamento è effettuato dal circuito di Sample & Hold (che tradotto in italiano suona come “campiona e mantieni”). Il circuito ha il compito di registrare il segnale per ogni istante di campionamento discretizzando i tempi. Il circuito Sample & Hold (brevemente S/H) è costituito schematicamente da un condensatore e da un interruttore. Per campionare la tensione di ingresso l’interruttore si chiude momentaneamente per effettuare la lettura, quidni si riapre e in questo preciso istante il condensatore trattiene il valore di tensione finchè l’interruttore si chiude nuovamente per registrare un nuovo campione. L'interruttore viene attivato dal clock con una frequenza pari a quella del sample rate. Silvio Relandini www.audiomidi-educational.it 2 Il suono digitale – capitolo 2 ___________________________________________________________________________ L’operazione di sampling e di holding fornisce una curva a gradini. Il segnale viene campionato. Pertanto rimangono solamente i campioni E la funzione a gradini grazie all’holding Silvio Relandini www.audiomidi-educational.it 3 Il suono digitale – capitolo 2 ___________________________________________________________________________ La quantizzazione Abbiamo visto che, nel campionamento, andiamo a trasformare in valori numerici discreti quello che in origine è un segnale continuo. Il segnale che deriva dal circuito di campionamento è però ancora nel dominio analogico in quanto l’ampiezza di ogni campione può assumere infiniti valori tra i limiti massimo e minimo della tensione analogica. Questi valori dovranno essere rappresentati tramite il sistema binario ovvero determinando il numero di bit a disposizione per i valori dell'ampiezza del segnale. I numeri di lettura della tensione dovranno quindi essere associati (anzi, approssimati) ad uno dei valori possibili. Per questo motivo, la caratteristica di un convertitore è espressa dalla Sample Rate e dal bit rate (ovvero dalla massima risoluzione della quantizzazione). Questa combinazione viene espressa ad esempio con la sigla 96/24 che stà a significare una sample rate massima di 96 kHz e una risoluzione massima di 24 bit. Vediamo quali sono i valori ammessi per la quantizzazione considerando il caso semplice che il convertitore metta a disposizione 4 bit per effettuare l’operazione. Le combinazioni possibili che offrono 4 bit sono 16, pari cioè a 24. Silvio Relandini www.audiomidi-educational.it 4 Il suono digitale – capitolo 2 ___________________________________________________________________________ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 L’operazione di quantizzazione sul singolo campione di ampiezza (tensione elettrica) ha l’obiettivo di assegnare al campione uno dei valori numerici che sono consentiti nella codifica digitale che divide il range delle ampiezze possibili in regioni: ogni campione ha un’ampiezza che deve cadere in una delle regioni. Ad esempio, se l’ampiezza varia tra –5 e +5 volt, il range delle ampiezze è di 10 volt e se la codifica digitale la divide in 16 regioni, ogni regione avrà un’ampiezza di 0,625 volt. N° regione 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 bit Tensione 0000 - 5/-4,375 0001 - 4,375/-3,75 0010 -3,75/-3,125 0011 -3,125/-2,5 0100 -2,5/-1,875 0101 -1,875/-1,25 0110 -1,25/-0,625 0111 -0,625/0 1000 0/0,625 1001 0,625/1,25 1010 1,25/1,875 1011 1,875/2,5 1100 2,5/3,125 1101 3,125/3,75 1110 3,75/4,375 1111 4,375/5 Silvio Relandini www.audiomidi-educational.it 5 Il suono digitale – capitolo 2 ___________________________________________________________________________ Il numero di regioni in cui è suddivisa la gamma delle ampiezze dipende quindi dai bit a disposizione per la codifica. Una parola binaria di N bit può assumere 2N valori o configurazioni differenti. Per N = 2, le parole binarie possibili sono 4 (22) mentre per N = 5, le parole binarie possibili sono 32 (25). La combinazione di 8 bit costituisce una parola binaria chiamata byte che offre un numero di valori paro a 256 (28), mentre con 16 bit abbiamo 65.536 combinazioni (216). Durante l’operazione di quantizzazione, i valori di tensione che vengono letti sono associati ad una certa regione e vengono quindi convertiti nel codice binario che rappresenta quella regione. Se facciamo riferimento alla tabella precedente la tensione 3,6 viene convertita nel valore 1101 mentre la tensione 0,15 al valore 1000. È ovvio che durante il processo di quantizzazione avviene una perdita dell’informazione perché tutti i valori intermedi tra una rgione e la successiva saranno convertiti allo stesso valore binario. Ad esempio, se consideriamo l’immagine seguente, Dopo la quantizzazione avremo il risultato mostrato in figura. Silvio Relandini www.audiomidi-educational.it 6 Il suono digitale – capitolo 2 ___________________________________________________________________________ Il risultato ottenuto è affetto da un errore di quantizzazione. Possiamo ridurre gli errori aumentando il numero di regioni ricordando che aumentando di un bit il codice binario si avrà il raddoppio delle regioni. Il massimo errore di quantizzazione è dato dalla metà della dimensione di una regione, in quanto assumendo che il codice corrisponda al valore di mezzo, al più il valore di tensione per un certo campione sarà agli estremi della regione. Aumentando il numero di regioni…. …l’errore di quantizzazione diminuisce Il numero di bit determinano la risoluzione del range di ampiezza e quindi influiscono la dinamica. Ogni volta che si aggiunge un bit alla parola binaria si raddoppia la dinamica ovvero si aggiungono 6 decibel. Ad esempio se ho 8 bit posso considerare un range di dinamica pari a 6 x 8 = 48 dB. Con 16 bit otteniamo 96 dB. La quantizzazione non lineare Quando il segnale si muove ai valori di intensità minima il numero di regioni potrebbero essere insufficienti per poterlo quantizzare e in alcuni casi il segnale potrebbe essere collocato all’interno di una sola regione, risultando a variazione praticamente nulla. A livello digitale la variazione di 0 e 1 avviene sull’ultimo bit (variazione che è detta flip). Una soluzione alternativa è quella di utilizzare una spaziatura non uniforme delle regioni di quantizzazione, ovvero una quantizzazione non lineare. Sebbene il numero Silvio Relandini www.audiomidi-educational.it 7 Il suono digitale – capitolo 2 ___________________________________________________________________________ delle regioni continui a rimanere lo stesso (in quanto dipende dal numero di bit), la dimensione delle regioni di quantizzazione diminuisce per le regioni delle ampiezze minime, e aumenta di conseguenza per le regioni delle ampiezze superiori. Pertanto, l’errore di quantizzazione diminuisce per le ampiezze deboli mentre aumenta per le ampiezze forti. La quantizzazione non lineare serve a ridurre il rumore (l’errore di quantizzazione) alle ampiezze minime cedendo in cambio un aumento dello stesso alle ampiezze forti, dove comunque viene mascherato. Le regioni vicine all’ampiezza nulla vengono quantizzate in modo molto più fine rispetto alle regioni alle ampiezze elevate. La codifica digitale L’operazione di quantizzazione associa ogni campione a una delle regioni di quantizzazione definite dalla lunghezza della parola binaria. L’operazione conclusiva della conversione è la generazione del codice associato al campione, e che identifica tutta la regione. I valori in successione della codifica sono associati a regioni successive di quantizzazione. Anche i codici sono parole binarie, che possono rappresentare valori interi senza segno o con segno. Le parole binarie sono memorizzate sui supporti per il digitale quali hard disk, cd, dvd, e sono trasmesse via telematica. Esistono molti modi per codificare un segnale e quella più utilizzata avviene tramite la modulazione del codice dell’impulso (Pulse Code Modulation - PCM) grazie alla quale l’informazione digitale viene codificata in modo seriale. Se c’è, l’impulso viene Silvio Relandini www.audiomidi-educational.it 8 Il suono digitale – capitolo 2 ___________________________________________________________________________ codificato con un1, l’assenza di impulso è rappresentata con lo 0. Ad esempio il segnale seguente Viene codificato in PCM come nella figura seguente I numeri romani indicano la successione dei campioni. Per semplificare abbiamo utilizzato dei campioni a 3 bit. I numeri (a base decimale) sopra i numeri romani indicano le ampiezze dei campioni. Infine, la successione di 0 e 1 rappresenta le parole binarie di 3 bit che costituiscono i campioni. La correzione di errori Durante la codifica vengono aggiunti dei bit extra utilizzati per il controllo di eventuali errori nella codifica e, in alcuni casi, per la loro correzione. Lil sistema più semplice è costituito dal bit di parità, che viene aggiunto alla word fissa di bit. Se nella sequenza costituente la word il numero di bit a 1 è pari, allora il bit di parità viene posto a 0; se invece il numero di bit a 1 è dispari, allora il bit di parità verrà posto a 1. Nel caso in cui un bit per errore subisce un flip, ovvero varia da 0 a 1 o viceversa, il bit di parità permette di scoprirlo senza però dare alcuna indicazione per sapere dove è occorso l’errore anche se il sistema può richiedere al dispositivo una nuova lettura del dato o eventualmente una ritrasmissione. Silvio Relandini www.audiomidi-educational.it 9 Il suono digitale – capitolo 2 ___________________________________________________________________________ Ma c’è un altro problema in quanto con un bit di parità non è possibile rilevare i casi in cui si verificano due errori e in generale, in quelli dove gli errori sono in numero pari; inoltre, il bit di parità non può distinguere se gli errori sono in numeri dispari. Una delle soluzioni adottate è quella di aumentare il numero di bit di controllo in modo da rilevare un numero maggiore di errori e in alcuni casi di correggerli. Questi bit aggiuntivi sono detti codici di correzione degli errori (Error Correcting Codes - ECC) e sono presenti in tutte le forme di archiviazione digitale. A conlcusione del capitolo cerchiamo di riassumere tutto il processo di conversione: il segnale analogico entra nel convertitore A/D e passa per il circuito di sample & hold, dove il segnale viene letto e mantenuto costante per il tempo di campionamento, costituendo la formazione della funzione a gradini. Il segnale passa a questo punto nel quantizzatore, dove viene calcolato, nel tempo di campionamento, il valore digitale del segnale. Il segnale viene a questo punto inviato al multiplexer, che opera un’operazione di miscelamento nel senso che crea un dato unico per un segnale ad esempio stereofonico (costituito dai dati del canale sinistro e da quelli del dato destro). Infatti, il segnale stereofonico segue due strade separate per il canale destro e sinistro e solamente grazie al multiplexing viene unito. Segue un circuito di correzione degli errori, che opera correzioni basate su sistemi di riconoscimento degli errori e infine il segnale viene modulato. La figura successiva riassume lo schema dell’intero processo di corversione analogicadigitale. Silvio Relandini www.audiomidi-educational.it 10