Il convertitore AD - Istituto Superiore di Studi Musicali Vincenzo Bellini

Transcript

Il convertitore AD - Istituto Superiore di Studi Musicali Vincenzo Bellini
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