Da Analogico a Digitale
La rappresentazione dell'onda sonora nel dominio del tempo è una curva dell'ampiezza del suono in funzione del tempo;
La rappresentazione dell'onda sonora nel dominio della frequenza è data da 2 curve, ampiezza e fase in funzione della frequenza.
Nell'archiviazione del suono decidere per una rappresentazione analogica o digitale, sia nel dominio del tempo e della frequenza.
Rappresentazione analogica, lavora per analogia: la curva continua nel tempo delle variazioni di ampiezza viene rappresentata da una curva continua nel tempo delle variazioni di tensione elettrica, curva memorizzata: disco vinile, campo magnetico disco.
Curva continua che approssima una curva continua.
Rappresentazione digitale, non imita la curva continua di ampiezza con una curva analoga ad essa, assegna dei numeri che rappresentano di volta in volta il valore dell'ampiezza in istanti successivi di tempo: successione dei numeri rappresenta l'andamento della curva di ampiezza.
Successione di numeri che approssima una curva continua.
Non è continua , ma discreta: esistono eventi definiti che sono i valori dell'ampiezza in precisi istanti di tempo.
Si avvale di un codice simbolico preciso dato dalle cifre che compongono i numeri: la rappresentazione avrà a disposizione un insieme finito di simboli.
(es. sistema decimale 10 cifre a disposizione, 0 a 9; se limitiamo a 3 cifre la lunghezza del numero: codice 1000 elementi tutti i numeri da 000 a 999).
Il numero di elementi possibili si calcola con un'operazione di elevazione a potenza; base= cifre a disposizione e esponente la lunghezza del numero.(es. 10 alla 3)
Nell'analogico invece non è possibile conoscere le limitazioni intrinseche del sistema.
Vantaggi codice simbolico:
Copia del segnale identica all'originale.
Con copie ripetute dello stesso segnale non si ha la degradazione della qualità.(analogico: la copia deve di nuovo approssimare con una curva continua la curva precedentemente memorizzata, sempre + errori).
Manipolazione del segnale: operazione aritmetiche che cambieranno alcuni numeri(es. aumentare l'intensità di una parte del suono: moltiplichiamo i numeri di quella parte per il fattore desiderato, Analogico: applicare un dispositivo elettronico che accresce l'ampiezza della curva).
Correzione degli errori dei supporti per la memorizzazione(CD) e dispositivi di trasmissione(cavo o etere), errore nella lettura o ricezione di qualche numero rispetto alla memorizzazione. Sistema digitale è in grado di rilevare e correggere alcuni errori con l'introduzione di info aggiuntive.
Svantaggi:
Problemi nello scambio di dati con l'esterno dell'elaboratore: i numeri devono essere convertiti in pressione sonora(analogico un onda sonora è sempre una forma d'onda).
Per una qualità come i migliori apparati analogici: grandi capacità di memoria e velocità di trasmissione per la memorizzazione, costi a volte eccessivi --> tecniche di compressione.
Il Suono Analogico
La tecnologia analogica pervade ancora la maggior parte dell'audio che ascoltiamo: radio, televisione..
La catena dell'audio digitale.
Microfono cattura la variazione di pressione nell'aria e la trasduce in un segnale elettrico: le variazioni di tensione descrivono il segnale acustico.
Il segnale elettrico in uscita dal microfono passa attraverso un preamplificatore e un amplificatore.
Viene registrato su un nastro magnetico per poi essere trasferito su un supporto del suono analogico:
nastro magnetico, dischi resina vinilica, pellicola cinematografica.
Da questi supporti il segnale può essere trasdotto mediante un lettore adeguato.
Il segnale viene amplificato e mandato ai diffusori acustici, che trasducono il segnale elettrico in un segnale sonoro. In un sistema di alta fedeltà le curve di ampiezza sonora iniziale e finale sono simili.
Tuttavia gli elementi della catena possono introdurre rumore e distorsione. Rumore è segnale indesiderato che sia aggiunge al segnale analogico, è in generale ad ampio spettro. (Tipico rumore è causato dall'impressione magnetica sul nastro e dalla lettura del segnale registrato: percepito come fruscio).
Per la riduzione del rumore diversi metodi: noto sistema della Dolby, enfatizza in registrazione alcune regioni dello spettro dove il rumore è maggiormente percepibile , in riproduzione le stesse regioni vengono de-enfatizzate, risultato: riportare a livelli corretti i rapporti tra le frequenze nel segnale e attenuare il rumore.
Rapporto segnale-rumore:(Signal-to-noise-ratio SNR)
per la stima del rumore del sistema analogico.
Rapporto SNR si definisce come il rapporto tra la massima ampiezza utile del segnale e l'ampiezza del rumore presente:
SNR= max ampiezza segnale/ ampiezza rumore
Maggiore è il rapporto SNR migliore la qualità del segnale.
Si usa esprimere il rapporto segnale rumore in decibel.
SNR(in DB)= 20 log (max ampiezza segnale/ampiezza rumore)
SNRdb = 20 [log (ampiezza segnale utile) - log (ampiezza rumore)]
SNRdb = intensità segnale utile db - intensità rumore db
La Gamma Dinamica (Dynamic Range - DR)
Parametro che misura la bontà di un dispositivo audio analogico.
E il rapporto tra l'ampiezza massima e l'ampiezza minima del segnale (log a/b = log a - log b).
Essendo un rapporto di ampiezze anche essa può essere misurata in db : in questo caso la gamma dinamica è la differenza tra l'ampiezza massima e minima del segnale.
Un brano che passa da un pianissimo a un fortissimo presenta un'estesa gamma dinamica. Un sistema migliore è un sistema che approssima meglio la gamma dinamica del segnale in ingresso. Il rumore presenta un'ampiezza media costante, limita la risposta utile del sistema in gamma dinamica.
La distorsione è una modifica non desiderata della forma d'onda (dello spettro) di un segnale.La distorsione di solito aumenta con l'ampiezza.
Nella caratterizzazione del SNR l'ampiezza utile si intende l'ampiezza massima alla quale la distorsione è mantenuta sotto a una certa soglia di tolleranza prefissata.
La distorsione può essere in frequenza, ampiezza e fase.
Il suono digitale
Anni 80. Ciò che arriva da CD, DAT, MD, USB, DVD, HD. Sale cinematografiche --> diffusione con il Sourround.
Segnale digitale(numerico, disceto) Successione di numeri che rappresentano l'ampiezza del segnale in precisi istanti di tempo.
Occorrono strumenti per la conversione da analogico a numeri e viceversa.
Comprendiamo come la variazione di pressione dell'aria diventino numeri immateriali.
Registrazione:
Segnale analogico della pressione sonora viene trasdotto in un segnale elettrico.
Conversione del segnale in formato digitale:
Strumento è il Convertitore Analogico-Digitale(ADC- Analogue-To-Digital-Converter), che in base a un suo orologio interno(clock) preleva i campioni dell'ampiezza del segnale analogico.
L'orologio fissa il tasso o frequenza di campionamento(sample-rate - SR), fissa ogni quanto tempo vengono prelevati i campioni.
Campioni: sono numeri che possono essere memorizzati su un qualsiasi dispositivo digitale.
Prima di digitalizzare il segnale occorre filtrarlo in modo da eliminare una parte del suo spettro che potrebbe causare il problema dell'aliasing.
Secondo il teorema di Nyquist(o del campionamento), per digitalizzare un segnale che contiene componenti di frequenza fino a x hertz, occorre campionare a un tasso di campionamento SR di almeno 2x campioni per secondo.
(se nel segnale vi sono componenti frequenziali a 10.000 hz, occorre prelevare almeno 20.000 campioni per secondo(SR=20.000))
La digitalizzazione rispetta il teorema del campionamento procedendo in senso inverso.
Stabilito tasso SR, eliminare dal segnale tutte le frequenze che sono oltre la metà dell'SR(SR=11.000 campioni al secondo, eliminiamo le frequenze superiori a 5500hz).
Per farlo si usa un filtro che elimina(attenua) tutte le frequenze sopra una certa soglia(frequenza di taglio o cut off).
Filtro detto passabasso (lowpass filter) in quanto fa' passare solo le frequenze sotto una soglia, detto antialiasing perché evita il problema dell'aliasing.
Riproduzione:
conversione in segnale analogico(DAC) Convertitore Digitale a Analogico.
Genera tensioni elettriche che sono proporzionali ai campionamenti del segnale digitale, in corrispondenza degli istanti di tempo stabiliti dal clock.
Un interpolatore si occupa di smussare i gradini dovuti al salto da un valore di tensione al valore vicino.
Necessita di un nuovo filtro passabasso: gradini ripidi tra un valore e l'altro --> alte frequenze del segnale analogico generato, frequenze che verrano eliminate dal filtro, la cui frequenza di taglio è data dalla metà del tasso di campionamento fissata dal clock.
(Nel segnale digitale le f superiori alla metà del tasso di campionamento sono state eliminate nella registrazione, perché reintrodurle nell'analogico?)
Il segnale sarà amplificato e mandato ai diffusori per la trasduzione in segnale acustico.
Il passaggio da analogico e digitale è caratterizzato da 2 operazioni di discretizzazione, in cui delle grandezze continue vengono ad assumere valori discreti.
- una è il tempo, l'orologio dei convertitori stabilisce quali sono gli istanti da considerare per il campionamento.
- l'altra è l'ampiezza, i numeri che è possibile usare appartengono a un codice simbolico definito e preciso.
L'operazione che discretizza il tempo è detta campionamento.
L'operazione che discretizza l'ampiezza è detta quantizzazione.
Il campionamento
E' la discretizzazione del segnale analogico nel tempo. Dato che la descrizione del segnale è data dalla variazione dell'ampiezza nel tempo, il campionamento corrisponde alla individuazione dei valori discreti(istanti di tempo)sull'asse delle ascisse.
Perché il segnale digitale rappresenti in modo efficace il segnale analogico di partenza, occorre che i campioni siano prelevati a una velocità(tasso) abbastanza elevati da riuscire a tener conto di tutte le variazioni del segnale.
Il tasso di campionamento deve essere una variabile dipendente dalla velocità di variazione del segnale.
La velocità di variazione del segnale dipende a sua volta dalla parziale con frequenza più alta(componete armonica più alta) che determinerà la velocità massima di variazione del segnale e il tasso di campionamento.
Più brevi sono gli intervalli di tempo tra un campione e il successivo , più simile all'originale analogico sarà il segnale a gradini, al limite segnali analogico e digitale coincidono.
L'intervallo di tempo tra un campione e il successivo è detto periodo di campionamento;
l'inverso del periodo, e quindi il numero di campioni in un secondo è detto tasso o velocità di campionamento(rate).
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ù ravvicinati i valori più sarà efficace la descrizione dell'andamento del segnale.
Qual'è la dimensione migliore dell'intervallo? Parametri per trovare un equo compromesso: qualità del suono e numero di campioni.
Migliore qualità del suono --> maggiore quantità di informazioni,+ campioni nell'unità di tempo--> + spazio in memoria e velocità di trasferimento dati.
Ci serve una velocità appropriata per elaborare il numero corretto di campioni nell'unità di tempo: i campioni che descrivono il segnale sono 44.100 per secondo , occorre che la capacità del dispositivo sia capace di inviare 44.100 numeri al DAC.
Come facciamo ad avere il minimo valore di velocità di campionamento e quindi non avere perdita di informazione?
Anche nella digitalizzazione abbiamo la distorsione e il rumore in senso digitale.
Distorsione
Se non ci sono distorsioni percepibili dal segnale analogico a digitale la nostra percezione rimane invariata.
Nella digitalizzaizone di un segnale si ha un fenomeno di distorsione dovuti tipicamente all'operazione di campionamento che ci è utile per fissare dei limiti inferiori al tasso di campionamento: è l'aliasing(foldover), fenomeno che introduce nel segnale digitale delle frequenze spurie, non presenti nel segnale analogico in ingresso.
A partire dall'aliasing si possono formulare dei principi generali sulla velocità di campionamento.
Tre casi di campionamento con differenti rapporti tra tasso di campionamento e frequenza.
- Segnale analogico è una sinusoide, frequenza 1/8 del tasso di campionamento(sotto la metà)--> t.c è 1.000 campioni al secondo, la f è 125 hz(1000/8). Interpolando i valori è immediato ricostruire il segnale di partenza.--> Sovracampionamento: le info sono più che sufficienti per ricostruire il segnale.
- Campionamento critico. frequenza è metà tesso di campionamento--> t.c è 1000, f è 500 hz1
- Segnale nuovo, la frequenza spuria. tasso: 1000, frequenza 875(sopra la metà del tasso) . Questo è l'effetto dell'aliasing : i campioni ottenuti dal segnale di 875 hz non sono distinguibili dai campioni che si sarebbero ottenuti dal segnale di 125 hz , usando lo stesso tasso di campionamento di 1000 campioni/sec.
Al cinema effetto di aliasing nella percezione del movimento, dovuto al sottocampionamento per successione di immagini statiche di movimenti periodici che hanno una frequenza superiore alla metà del tasso di campionamento delle immagini, 24 fotogrammi al secondo.
Foldover o aliasing
Fc tasso di campionamento
F frequenza presente nel segnale di ingresso tale che F sia superiore a Fc/2(F > Fc/2), F superiore della metà del tasso di campionamento.
Si inventa una frequenza nuova(alias)
Fr: frequenza ricostruita nell'intervallo tra -Fc/2 e Fc/2 (-Fc/2 < Fr < Fc/2), poiché la frequenza originale F viene a cadere in un intervallo di frequenze più basso dell'originale F, il fenomeno di aliasing è detto anche foldover, o ripiegamento.
Esiste una formula che permette di calcolare la frequenza ricostruita Fr a partire dalla frequenza originale F e il tasso di campionamento Fc:
Fr = F + KFc è data dalla somma della frequenza originale F e del tasso di campionamento Fc moltiplicato per un numero intero K che soddisfa la relazione:
-Fc/2 < Fr + KFc < Fc/2 cioè K fa in modo che la frequenza ricostruita sia nell'intervallo (-Fc/2 < Fr < Fc/2).
F = 125 Hz, Fc= 1000 campioni/sec,
numero K che soddisfa la relazione -Fc/2 < F + KFc < Fc/2
- 500 < 125 + Kx1000 < 500
Se K = 0
la frequenza ricostruita sarebbe:
Fr = F + KFc = 125 + 0 = 125 hz
Nel caso F sia oltre i limiti dell'intervallo si ha un sottocampionamento.
F = 875 Hz, Fc= 1000 campioni/sec,
numero K che soddisfa la relazione -Fc/2 < F + KFc < Fc/2
- 500 < 875 + K 1000 < 500
Se K = -1
la frequenza ricostruita sarebbe:
Fr = F + KFc = 875 - 1000 = - 125 hz
Calcolare in modo immediato la Fr basta calcolare k a partire dalla disuguaglianza -Fc/2 < F + KFc < Fc/2 e poi applicare la Fr = F+KFc.
In generale K = - [2F/Fc], dove [ ] indica la parte intera del numero per cui il calcolo di Fr risulta essere: Fr = F -[2F/Fc]Fc
875-[1750/1000]1000= 875 - 1000= -125 Hz
Le conseguenze dell'aliasing possono essere disastrose, e dipendono dai rapporti che le frequenze spurie introdotte hanno con le altre frequenze presenti nel segnale.
Esempi di aliasing:
Nel caso in cui la frequenza spuria sia molto vicina a una frequenza già presente nel segnale: fenomeno dei battimenti.
Fc = 8000
Segnale Sinusoidale = 2000hz
Segnale Sinusoidale = 5998hz
K = -1 Fr= Fc-F= 8000-5998 = 2002hz
Glissando: fino a che la frequenza del segnale rimane al di sotto della metà del tasso di campionamento , il segnale digitale rappresenta correttamente il segnale analogico, non appena la frequenza supera la metà il segnale ricostruito diminuisce la sua frequenza secondo la formula vista in precedenza (segnale analogico continuerebbe invece a salire)
da 20 hz a 30.000 hz
Durata: 30 secondi con frequenza di campionamento 44.100hz
Teorema di Nyquist, 1928
Considerando una parziale del segnale, sono necessari almeno due campioni per ciascun periodo del segnale: nel periodo di una sinusoide il segnale cambia direzione due volte. Poiché in un segnale complesso sono presenti più parziali, occorre che il campionamento prelevi almeno due campioni per la parziale di frequenza massima presente nel segnale, le altre parziali saranno tutte sovracampionate, ma questo non è un problema.
Il tasso di campionamento deve essere quindi almeno il doppio della frequenza massima presente nel segnale di input. Questo tasso di campionamento è detto tasso di Nyquist, se il tasso di campionamento è al di sotto del tasso di Nyquist si verifica l'aliasing.
Operando in modo inverso, stabilito un tasso di campionamento sui dispositivi di conversione analogico-digitale, per campionare correttamente il segnale in input occorre che le frequenze che sono oltre la metà della frequenza di campionamento vengono eliminate. Con l'eliminazione il segnale risulterà impoverito rispetto all'originale, ma non è detto che le conseguenze siano percepibili dal sistema uditivo.
Es. Massimo 20.000 hz (soglia). Il tasso di campionamento sia fissato a oltre 40.000 campioni/sec
Tasso di campionamento dei Cd è di 44.100 campioni/sec ed è sufficiente a rappresentare correttamente il segnale originale.
Per eliminare le frequenze del segnale in ingresso , occorre filtrare il segnale in modo da far passare solo le frequenze al di sotto della metà del tasso di campionamento.Dispositivo: Filtro Passabasso.
L'eliminazione è una semplificazione: in realtà il filtro riesce solo ad attenuare le frequenze indesiderate. La frequenza che fissa la soglia oltre la quale le frequenze vengono attenuate è detta frequenza di taglio o cut-off.
La Quantizzazione
L'operazione di quantizzazione sul singolo campione di ampiezza (tensione elettrica) ha l'obbiettivo di assegnare al campione uno dei valori numerici che sono consentiti nella codifica digitale.
La codifica digitale divide la gamma delle ampiezze possibili in intervalli o regioni: ogni campione ha un'ampiezza che cade in una delle regioni.
Esempio, se l'ampiezza varia tra - 5 e + 5 volt, la gamma totale delle ampiezze è di 10 volt; se la codifica digitale divide la gamma delle ampiezze in 16 regioni, ogni regione sarà ampia 0,625 volt(10/16).
Il numero di regioni in cui è suddivisa la gamma delle ampiezze dipende dai bit a disposizione per la codifica. La rappresentazione digitale si basa sulle sequenze di bit.
Il bit è l'unità minima di informazione , può valere 0 o 1, una sequenza di bit è detta parola binaria.
Una parola binaria di N bit può assumere 2n valori o configurazioni differenti, 2n possibili sequenze differenti di 0 o 1.
Per N=2 , le parole binarie possibili sono 8(2alla3), cioè 000, 001, 010, 011, 100, 101, 110, 111.
Valori tipici per la lunghezza di una parola binaria nel''audio sono 0 o 16 bit, per un numero di valori differenti di 256 e 65.536
Fissato il numero di regioni possibili mediante i bit a disposizione, occorre stabilire un metodo per associare una configurazione di bit a una regione della gamma delle ampiezze.
Un metodo comune è la quantizzazione lineare, che divide la gamma delle ampiezze in 2n regioni uguali, e associa a ciascuna delle regioni uno dei 2n valori numerici.
Ciascun dei 2n valori numerici è un codice binario a N bit.
Nell'operazione di quantizzazione , tutti i valori di tensione che finiscono in una certa regione vengono convertiti nel codice binario che rappresenta quella regione.
Nel processo di quantizzazione si perde informazione, in quanto tutti i valori che rientrano in una regione verranno convertiti nello stesso codice binario, attenuando quindi le differenze fra i valori di tensione. E come se il codice corrispondesse a una valore di tensione che potrebbe essere il valore di mezzo della regione.
Rispetto al valore di mezzo, quando viene quantizzato un altro valore della regione si introduce un errore di quantizzazione.
Man mano che i bit della codifica aumentano, le regioni si riducono di ampiezza, e il codice binario viene quindi associato a una regione più piccola, riducendo l'errore di quantizzazione. Il massimo errore di quantizzazione è dato dalla metà della dimensione di una regione perché assumendo che il codice corrisponda al valore di mezzo, al più il valore di tensione per un certo campione sarà agli estremi della regione. Se ciascuna regione è ampia 0,039 il massimo errore: 0,0195.
Nella regione tra - 5 e - 4,961, il valore di mezzo è - 4,9805 volt. Il massimo errore di quantizzazione si verifica sugli estremi delle regioni, piccole imprecisioni possono far quantizzare il valore sulla regione vicina, la probabilità che accada è ridotta.
L'errore di quantizzazione si può considerare casuale ed è scorrelato dal segnale vero e proprio: si comporta come un segnale aggiunto(affine al rumore bianco) introdotto dal processo di digitalizzazione. Rumore di quantizzazione.
Poiché non è possibile andare all'infinito nell'aumentare il numero di bit della codifica digitale occorre fissare un criterio per determinare se la rappresentazione di un segnale è adeguata. Nel segnale analogico, la qualità di rappresentazione del segnale viene stabilito con la quantità di rumore presente. Il rapporto SNR fornisce una misura della fedeltà di un sistema analogico.
Nel digitale si può introdurre una misura simile al rapporto SNR: l'idea è di confrontare l'ampiezza del segnale con l'ampiezza del rumore di quantizzazione.
Rapporto SNR digitale, si può usare l'acronimo SQNR (Signal-to-Quantization-Noise-Ratio) Rapporto segnale rumore di Quantizzazione.
Se il numero di bit è almeno 6 0 7, SNR= 2n.
SNR = 20 log 2n dB = Nx20 log 2dB = 6.02xN dB
Ogni bit contribuisce per circa 6 db al rapporto tra il segnale e il rumore di quantizzazione SQNR. Per avere un'idea del contributo dato da un singolo bit al rapporto segnale/rumore consideriamo che con 8 bit, SQNR = 48db, 16 bit, SQNR = 96 db, valore molto alto nello standard dei CD: sotto ai 40 db la musica non è praticamente udibile e a 120 si ha una sensazione di dolore fisico.
I valori segnalati riguardano un segnale alla massima ampiezza; per ampiezze inferiori all'ampiezza massima , il rapporto SQNR scende. Per ampiezze inferiori le regioni interessate sono in numero inferiore al massimo, per cui si ha un numeratore inferiore.
Ampiezze minime, il segnale varia solo su 2 regioni (se fosse su una sola regione sarebbe nullo- il silenzio); nella codifica digitale si ha una variazione (0 o 1) dell'ultimo bit della parola binaria detta flip. Se si verifica una regolarità del segnale per cui si alternano con una certa periodicità campioni in una regione e campioni in un'altra regione, il segnale ricostruito sarà un'onda quadra o a impulsi. Il fenomeno è denominato low leve quantization noise, causato dall'errore di quantizzazione alle ampiezze deboli. La presenza di questa questa onda introduce nel segnale ricostruito delle armoniche indesiderate, che se fossero state effettivamente presenti nel segnale originale sarebbero state eliminate dal filtropassabasso.
La presenza di armoniche introdotte dal nulla nel segnale ricostruito causa effetti sgradevoli alle ampiezze minime. La soluzione è una correzione strana, dithering. Prima della conversione analogico-digitale si introduce nel segnale del rumore(bianco). Il livello del rumore è ridotto(intorno ai 3 db, più o meno corrisponde all'errore di quantizzazione, visto che 1 bit contribuisce per 6 db) e quindi il segnale analogico non viene influenzato nella sua curva di ampiezza.
Tuttavia, l'andamento casuale del rumore provoca delle variazioni casuali nei valori quantizzati alle ampiezze minime(e solo li a causa delle ampiezze ridotte) eliminando il problema della ricostruzione dell'onda quadra, con le sue armoniche indesiderate. Il rimore aggiunto è detto rumore di eccitazione.
Il ditherer è una tecnica a basso costo.
Gamma dinamica di un segnale digitale che è la differenza in db tra ampiezza massima e l'ampiezza minima del segnale. Anche la gamma dinamica aumenta con il numero di bit: ogni bit raddoppia la gamma dinamica della rappresentazione digitale(3 bit: 8 valori, 4 bit : 16 valori). La gamma dinamica per un sistema digitale a N bit è 6N db. Nella quantizzazione uniforme la gamma dinamica ha lo stesso valore del rapporto SQNR(con 16 bit anche la gamma dinamica è 96 db). Le cose sono differenti con la quantizzazione non uniforme.
La codifica del segnale audio
L'operazione di quantizzazione associa ogni campione a una delle regioni di quantizzazione definite dalla lunghezza della parola binaria. Il passo finale della digitalizzazione è la generazione del codice associato al campione, e che identifica tutta la regione. Tutti i codici consentiti dalla rappresentazione (2n per N bit) costituiscono la codifica digitale. In genere, valori in successione della codifica sono associati a regioni successive di quantizzazione. I codici sono parole binarie che possono rappresentare valori: interi senza segno o con segno, con virgola fissa o mobile, frazioni… Sono le parole binarie a essere memorizzate sui supporti per il digital.
Esistono molti modi per codificare un segnale. Il modo forse più immediato è la modulazione dell'ampiezza dell'impulso (Pulse Amplitude Modulation - PAM), per la quale un impulso occorre a ogni intervallo di campionamento , e l'ampiezza della forma d'onda è un valore digitale che corrisponde all'ampiezza analogica(è ciò che abbiamo fatto finora).
Ma la modulazione, cioè la variazione guidata nel tempo, può riguardare altre grandezze.Esempio: la durata dell'impulso, il numero di impulsi nell'intervallo di campionamento.
La forma più diffusa di codifica digitale avviene mediante la modulazione del codice dell'impulso(Pulse Code Modulation - PCM), l'informazione digitale viene codificata in modo seriale; l'impulso rappresenta l'1, l'assenza di impulso lo 0.
La differenza fondamentale nella rappresentazione binaria è se la codifica è con segno o senza.
Nel segnale analogico, la tensione elettrica assume valori positivi o negativi(esempio: segnale varia tra - 5 volt e + 5 volt).In generale, si adottano 2 tipi di codifica per i valori binari.
La prima è data da interi senza segno o codifica unipolare, per cui 0 corrisponde alla minima tensione negativa(-5 volt), il silenzio è a metà scala e le operazioni sui segnali necessitano di attenzione: esempio, se sommiamo due sorgenti di silenzio si ottiene un livello di picco positivo(bisogna predisporre il segnale per l'elaborazione, ad esempio metà del livello di picco da ogni segnale prima dell'elaborazione)
Esempio di codifica unipolare è la offset binary, il formato dato in output da molti DAC.
La seconda è dato dagli interi con segno o codifica bipolare, per cui il massimo valore assoluto corrisponde alla minima tensione negativa(- 5 volt). Il primo bit a sinistra rappresenta il segno(0 = + e 1= -). Due esempi di codifica bipolare:
La codifica in complemento a 2 rappresenta il valore assoluto dal fondo scala negativo(1000) fino alla regione che precede il silenzio(1111) ; la scala riprende poi con il silenzio nel segno positivo(0000) fino al picco positivo (0111); la somma di due segnali è una semplice addizione binaria.
Nella codifica segno e magnitudo, il valore assoluto procede dal silenzio verso i picchi positivo e negativo, lo svantaggio è che si hanno due 0, uno positivo e l'altro negativo, occorre un passo di elaborazione prima di poter effettuare elaborazioni.
La codifica PCM è usata in tutti i settori dell'archiviazione e della trasmissione digitale dei dati. Per irrobustire la codifica si aggiungono bit extra che sono utili per il controllo di eventuali errori nella codifica..
Esempio semplice di controllo degli errori è un bit di parità: si aggiunge un bit a una sequenza fissata di bit. Se nella sequenza il numero di bit a 1 è pari, allora il bit verra posto a 0; Se nella sequenza il numero di bit a 1 è dispari, allora il bit verra posto a 1; Nel caso in cui un bit subisce un flip(da 0 diventa 1 o viceversa) il bit di parità permette di scoprirlo.
Ovviamente non si sà dovè l'errore , ma il sistema può richiedere al dispositivo una nuova lettura.
Con un solo bit di parità non è possibile rilevare i casi in cui si verifichino due errori. Aumentando il numero di bit di controllo è possibile rilevare un numero maggiore di errori e in alcuni casi di correggerli.
Esempio 4 bit di parità su un campione di 8 bit
1101 0000 (1001)
il primo controlla i bit: 1,2,3,4
secondo: 5,6,7,8
terzo: 1,2,5,6
quarto; 2,3,6,7
Le configurazioni possono essere ancora più complesse . Questi codici binari aggiuntivi sono detti codici di correzione degli errori(ECC)
Poiché la spaziatura delle regioni di ampiezza è uniforme, la codifica PCM descritta è lineare.
Il rapporto tra la massima ampiezza del segnale e il rumore medio di quantizzazione(SQNR) è intorno a 6N dB, ogni bit contribuisce con 6 dB al rapporto SQNR.
L'errore di quantizzazione è indipendente dall'ampiezza del segnale, e varia in modo casuale tra lo 0 e la metà della regione di quantizzazione. Quindi il rapporto di 6n dB , che vale per l'ampiezza massima del segnale, va corretto con un fattore che lo fa decrescere con il diminuire dell'ampiezza.
Espressione più accurata per SQNR può essere;
SQNR(in dB) = 6N + S
S è il fattore di correzione che vale 0 dB per l'ampiezza massima del segnale , vale - 6 dB quando il segnale decresce a metà dell'ampiezza massima, - 12 db quando va' a un quarto dell'ampiezza massima, e così via.(Dimezzare l'ampiezza corrisponde ad accorciare la parola binaria di 1 bit e quindi di 6 dB, dimezzare ancora 1/4 sottrarre altri 6(totale 12) e così via.)
SQNR quindi diminuisce con l'ampiezza del segnale; i segnali più deboli subiscono una degradazione di qualità rispetto ai segnali forti, in codifica PCM lineare.
Per mantenere un livello elevato del rapporto SQNR è sufficiente usare un numero elevato di bit in modo che anche se il rapporto decresce con il diminuire dell'ampiezza continua a godere di valori adeguati alle ampiezze deboli.
Esempio standard CD : usa 16 bit per la quantizzazione, con rapporto SQNR di 96 dB(16x6). Se il livello di pressione sonora(SPL) massimo in riproduzione nel nostro hi-fi è di 100 dB(valore già elevato), allora i campioni con questo SPL godono del rapporto SQNR di 96 dB. Con porzioni del segnale più deboli, il rapporto SQNR scender, ma sarà ancora accettabile(oltre 60 dB) sulla soglia minima di udibilità. Questi valori permettono di mantenere elevato il rapporto SQNR. La quantizzazione lineare sembra la tecnica preferita dai costruttori in quanto facilita la progettazione dell'hardware di base.
Campionamento e sovra-campionamento
Le tecniche illustrate in precedenza sono considerate standard nella rappresentazione e conversione in digitale del segnale. Si nascondono metodi e approcci molto complessi.
Il processo di campionamento si può vedere come il prodotto di 2 segnali:
il primo segnale è un treno di impulsi di periodo e ampiezza costanti;
il secondo segnale è la forma d'onda da campionare, che modula in ampiezza il treno di impulsi;
Guardando il dominio della frequenza, si ha che lo spettro del treno di impulsi è dato da una serie infinita di armoniche del tasso di campionamento Fc;
lo spettro della forma d'onda da campionare occuperà una certa larghezza di banda che ha il massimo nella frequenza Fmax;
lo spettro del segnale campionato presenta delle bande laterali sui due lati di ogni armonica Fc.
Quando il segnale viene convertito in analogico , il passaggio attraverso il filtro passabasso assicura che tali bande in eccesso vengono escluse, in modo da far emergere solo la banda del segnale originale.
Questa situazione si ha quando si rispetta il teorema di Nyquist:
Esempio, treno di impulsi ha un tasso di 48.000 campioni al secondo, il segnale da campionare ha una frequenza massima di 20khz, in tal modo le bande laterali sulle armoniche di Fc non si sovrappongono alla banda originale e il taglio del filtro è sufficiente per la ricostruzione del segnale originale.
Se invece il tasso di campionamento non rispetta il teorema, le bande laterali alla prima armonica si sovrappongono allo spettro del segnale originale e si ha l'aliasing.
Se da 48.000 il Tasso scende a 32.000 si ha una sovrapposizione nella banda 12khz-20khz, e le frequenze ripiegate provocano problemi.
Il tasso di campionamento deve essere fissato a un tasso superiore al doppio della massima frequenza presente nel segnale, in modo da rendere innocua la porzione di segnale causata dall'aliasing.
Per questi motivi il tasso di campionamento selezionato agli inizi dell'audio digitale fu di circa 44.000 campioni al secondo. Così i filtri garantiscono un'attenuazione sufficiente anche per le frequenze intorno ai 20 khz, impedendo una sovrapposizione delle bande di frequenza.
Poiché il numero di dati da immagazzinare era di circa 1 megabit per canale(44.000 campioni al secondo per 16 bit per campione corrisponde a 704.000 bit/secondo) si aveva la necessita di supporti che riuscissero a memorizzare i dati con capacità e velocità sufficiente.
Il tasso di campionamento di 44.100 campioni al secondo fu il risultato dell'uso di nastri video per le prime registrazioni e rispondeva alla necessità di garantire che un numero intero di campioni entrasse in una linea del segnale video nei due standard principali:
sistema PAL, Europa, 625 linee tracciate 25 volte al secondo(25 hz), il tasso di linee al secondo è 15.625;
sistema NTSC, Usa, 525 linee tracciate 30 volte al secondo(30 hz), il tasso di linee al secondo è 15.750;
Sistema PAL: 588 linee attive e 37 linee blank, per cui è la frazione 588/625 effettivamente utilizzabile. NTSC 490/525.
Si può osservare che si arriva allo stesso numero di campioni memorizzati in un secondo se si inseriscono 3 campioni per linea.
PAL: 588/625 x 15.625 linee/sec x 3 campioni/linea = 44.100 campioni/sec
NTSC: 490/525 x 15.750 linee/sec x 3 campioni/linea = 44.100 campioni/sec
Si adottò il tasso di campionamento di 48.000 campioni/sec per le applicazioni audio professionali(48.000 è una volta è mezza 32.000).
Con un tasso di 44.100 campioni al secondo, la frequenza di taglio è fissata a 22.050 hz, molto vicina al limite massimo di udibilità. Per cui parte delle frequenze attenuate dal filtro ha ancora un intensità rilevante e rischia di provocare aliasing. Un modo per aggirare questo problema è il sovracampionamento(oversampling).Consiste in una velocità di campionamento più elevata di quella stabilita dal teorema di Nyquist.
Il sovracampionamento porta anche un migliore sfruttamento delle capacità di rappresentazione del digitale.
Per comunicare una certa quantità di informazione si può:
incrementare la larghezza di banda del segnale(>tasso di campionamento);
incrementare il rapporto segnale/rumore (> lunghezza della parola binaria x la quantizzazione);
Uno stesso contenuto informativo si può realizzare aumentando i campioni e diminuendo la lunghezza della parola binaria o viceversa.
La diminuzione della parola binaria permette l'utilizzo di convertitori flash, in cui il rumore non è uniforme e aumenta con la frequenza. Nel sovracampionamento si ha che la banda del segnale digitale è ampia che lo spettro del rumore è sulle frequenze altissime, non udibili.
La diminuzione della parola binaria porta a un minore efficacia nello sfruttamento del contributo di un solo bit.
Con l'aumentare della lunghezza della parola binaria migliorano le prestazioni dei singoli bit, si ha un migliore sfruttamento della memorizzazione: A parità di rapporto segnale/rumore è meglio sovracampionare con altissimi tassi di campionamento e codificare con parole binarie standard mediante un processo successivo di ri-quantizzazione.
Quando l'output è un prodotto consumer che va a un certo tasso di campionamento e con una certa quantizzazione(44.100 e 16 bit) si ha un'operazione di decimazione, selezionando solo alcuni dei campioni: se il sovracampionamento è un fattore n oltre il tasso Nyquist, si selezionerà un campione su n.(oversampling: 176.400 c/s, 4x44.100, si seleziona un campione su quattro).
I contributi del sovracampionamento si hanno nella conversione A/D che D/A.
A/D tradizionale a 44.100 c/s e 16 bit ha un rumore di quantizzazione di 96 dB sotto la massima ampiezza del segnale ed è diffuso su tutta la banda sotto la metà del tasso di campionamento, cioè 22,050 khz.
Se aumenta la velocità di conversione, la potenza totale del rumore rimane la stessa , ma si distribuisce su una larghezza di banda maggiore.
Se il tasso di campionamento raddoppia, la potenza del rumore di quantizzazione si allarga fino a 44,1 Khz. Ma il segnale utile rimane nella banda a 22,050 khz e in questa banda la potenza del rumore si è dimezzata.
Il Filtro passabasso digitale con frequenza di taglio a 22,050 khz elimina metà del rumore di quantizzazione dalla banda base del segnale, aumentando il rapporto SNR di 3 dB: con un sovracampionamento di 4 volte il rumore di quantizzazione sarà inferiore di 6 dB rispetto allo stesso convertitore senza sovracampionamento.
Un bit di quantizzazione aumenta SNR di 6 dB, un convertitore a 15 bit a 4x stesse prestazioni di quello a 16 bit e 44.100 c/s.
Si ha che ogni volta che si incrementa il tasso di campionamento di un fattore 4 , si può eliminare un bit dalla quantizzazione, mantenendo lo stesso SNR.
Sovracampionando a 4alla15x possiamo disfarci di 15 su 16 bit e usare un convertitore a un solo bit. Il tasso di campionamento equivale a circa 50 x 10alla12 c/s(si dice Tera Herz -Thz -cioè 1000Ghz, 10.000.000 Khz) Per ridurre il tasso di campionamento a un livello di praticità per i convertitori con quantizzazione molto bassa si può lavorare con la tecnica della sagomazione del rumore(noise shopping).
Quantizzazione non lineare
Una soluzione alternativa per evitare le degradazione dei segnali deboli è data da una spaziatura non uniforme delle regioni di quantizzazione, una quantizzazione non lineare.
Il numero delle regioni è lo stesso, la dimensione delle regioni di quantizzazione diminuisce per le regioni delle ampiezze deboli e aumenta per le regioni delle ampiezze forti.
L'errore di quantizzazione decresce per le ampiezze deboli e aumenta x le ampiezze forti: il guadagno di qualità alle ampiezze deboli è compensato dalla perdita di quelle forti.
Il primo effetto della quantizzazione non lineare è la separazione tra il rapporto SQNR e la gamma dinamica,La gamma dinamica di un sistema è la differenza in dB tra la massima e la minima ampiezza del segnale e con la quantizzazione lineare essa coincide con il rapporto SQNR, cioè vale circa 6N dB.
Per la quantizzazione non lineare il rapporto SQNR può assumere forme diverse, in quanto l'ampiezza dell'errore varia con l'ampiezza del segnale e con il tipo di spaziatura scelto.
La quantizzazione non lineare nel digitale cerca di ridurre il rumore di quantizzazione alle ampiezze deboli, permettendo invece che aumenti alle ampiezze forti , dove comunque viene mascherato.
Questo risultato viene raggiunto mediante una spaziatura non uniforme delle regioni di quantizzazione: le regioni vicine all'ampiezza nulla vengono quantizzate in modo più fine delle regioni alle ampiezze elevate.
Con la quantizzazione non lineare il rapporto SQNR e la gamma dinamica, entrambi espressi in dB, valgono circa 6N, dove N è il numero di bit della rappresentazione.
Spaziando in modo non uniforme le regioni di quantizzazione il rapporto SQNR viene a dipendere dall'errore variabile nelle varie regioni, mentre il calcolo della gamma dinamica resta invariato.
La quantizzazione non lineare, logaritmica ci permette di comprendere come avviene la spaziatura non uniforme degli intervalli (con modifica del rapporto SQNR) e l'espansione della gamma dinamica.
Si ritrova in alcuni formati audio comuni. La caratteristica fondamentale è che la dimensione delle regioni di quantizzazione cresce con l'ampiezza del segnale secondo una curva logaritmica.
Quantizzare in modo logaritmico vuol dire assegnare le regioni di quantizzazione in modo uniforme rispetto a una scala logaritmica, risultando in una non uniformità sulla scala lineare.
I codici digitali vengono assegnati ai campioni secondo tale suddivisione.
Rapporto SQNR è migliore alle ampiezze deboli per una quantizzazione logaritmica rispetto a quella lineare con lo stesso numero di bit, peggiore SQNR alle ampiezze elevate, ma i fenomeni di mascheramento permettono di tollerare tale situazione.
Non è molto efficiente quando il segnale quantizzato deve essere in seguito sottoposto a elaborazione: esempio, la somma di due valori su una scala logaritmica corrisponde al logaritmo del prodotto dei due valori, il prodotto è un'operazione più costosa in termini di tempo di elaborazione(log a + log b= log axb).
E consigliabile adottare la forma logaritmica in applicazioni in cui non ci si può permettere un numero elevato di bit di quantizzazione, soprattutto nella fase finale di archiviazione di un segnale, quando non verrà più elaborato.
Migliora il rapporto SQNR alle ampiezze deboli e la gamma dinamica. Si può verificare che una quantizzazione logaritmica a 8 bit produce una gamma dinamica pari a una quantizzazione lineare a 13 o 14 bit .
Autore: Fabrizio Garis
Autore: Fabrizio Garis
La rappresentazione digitale del suono by http://lucciolaonline.blogspot.com/2012/01/la-rappresentazione-digitale-del-suono.html is licensed under a Creative Commons Attribuzione - Non commerciale - Non opere derivate 3.0 Italia License.