Lezione 4: Conversione A/D Conversione A/D
Transcript
Lezione 4: Conversione A/D Conversione A/D
Teoria dei segnali Conversione A/D Segnali a potenza media finita e conversione A/D Lezione 4: Conversione A/D Conversione A/D Generalità Campionamento ideale Campionamento reale Quantizzazione Esempi 2 © 2005 Politecnico di Torino 1 Teoria dei segnali Conversione A/D Conversione A/D generalità Conversione A/D La conversione A/D trasforma un segnale a analogico, x(t), in una sequenza di numeri interi Questa sequenza, codificata in binario, costituisce un bit stream che porta informazione sul segnale analogico I blocchi costituenti di un convertitore A/D sono: campionatore quantizzatore 4 © 2005 Politecnico di Torino 2 Teoria dei segnali Conversione A/D Campionamento Campionare un segnale a tempo continuo x(t) significa estrarre dal segnale stesso i valori che esso assume in un insieme discreto di valori dell’asse tempi Generalmente il campionamento avviene a intervalli temporali equidistanti, cioè multipli di un intervallo Tc, detto periodo di campionamento 5 Campionamento L’operazione di campionamento crea una sequenza di numeri xn = x(nTc), -8 <n<8 Generalmente si tratta di numeri reali, e che comunque condividono la tipologia dei valori del segnale a tempo continuo di partenza x(t) 6 © 2005 Politecnico di Torino 3 Teoria dei segnali Conversione A/D Campionamento Rappresentazione grafica dell’operazione di campionamento x (t ) x n = x (nT c ) t Tc 7 Perché campionare Obiettivo del campionamento è rappresentare l’informazione portata da x(t) mediante una sequenza di numeri (reali) Vedremo le condizioni affinché questo sia possibile preservando la possibilità di esatta ricostruzione di x(t) a partire dai suoi campioni La rappresentazione numerica ha il vantaggio di permettere un’elaborazione del segnale nel dominio digitale 8 © 2005 Politecnico di Torino 4 Teoria dei segnali Conversione A/D Perché numerico La tendenza moderna, risultante dai progressi compiuti dai componenti elettronici ad altissima integrazione (VLSI, Very Large Scale Integration) è quella di usare per l’elaborazione dei segnali dei microprocessori dedicati (DSP, Digital Signal Processor) L’elaborazione del segnale viene eseguita su valori numerici estratti dal segnale, e si risolve nell’esecuzione di un opportuno programma da parte del microprocessore 9 Perché numerico Questa struttura è estremamente flessibile, e diverse funzioni di elaborazione possono essere realizzate semplicemente cambiando il programma di elaborazione (software) senza modificare la struttura del circuito (hardware) Questo abilita molte opzioni, tra cui l’interoperabilità di sistemi diversi, e l’integrazione di segnali diversi in un’unica trama di dati da elaborare e trasmettere L’elaborazione software abilita anche operazioni quali criptografia, watermarking ecc. per la tutela di sicurezza e copyright 10 © 2005 Politecnico di Torino 5 Teoria dei segnali Conversione A/D Perché numerico Naturalmente per tutto ciò non è sufficiente campionare x(t); è anche necessario che i campioni xn=x(nTc) siano rappresentati in aritmetica finita o quantizzati (mentre normalmente si tratta di numeri reali) Le operazioni di campionamento e successiva rappresentazione finita dei campioni (conversione A/D) danno come risultato il segnale numerico denotato come x[n] 11 Conversione D/A Ovviamente, dopo l’elaborazione e la trasmissione, è necessario che il segnale numerico venga riconvertito in forma analogica (cioè in un segnale a tempo continuo) Ciò avviene mediante una conversione digitale/analogica (D/A) È necessario quindi approfondire le condizioni sotto le quali una conversione A/D e D/A è possibile, con buoni risultati, ovvero: il segnale ricostruito “molto simile” al segnale di partenza x(t) 12 © 2005 Politecnico di Torino 6 Teoria dei segnali Conversione A/D Conversione A/D e D/A Obiettivo: ricostruire un segnale il più possibile simile a x(t) dopo la catena di conversione A/D e D/A Nel seguito analizzeremo: effetti del campionamento sul segnale ricostruito effetti della quantizzazione sul segnale ricostruito x(t ) conversione A/D x[n] Conversione D/A x^(t ) 13 Conversione A/D campionamento ideale © 2005 Politecnico di Torino 7 Teoria dei segnali Conversione A/D Campionamento ideale Nel campionamento ideale, da x(t) vengono semplicemente estratti i valori x(nTc) senza distorsione Questa operazione si può modellare come una moltiplicazione di x(t) per un treno di delta di Dirac, spaziate di un periodo Tc, per ottenere il segnale campionato idealmente: ∞ ∑ δ (t − nT ) xc (t ) = x (t ) ⋅ Tc n =−∞ c Tc è un fattore di normalizzazione 15 Campionamento ideale Schema a blocchi di un campionatore ideale: x(t) x xc (t ) ∞ Tc ∑ δ (t − nT ) n=−∞ c 16 © 2005 Politecnico di Torino 8 Teoria dei segnali Conversione A/D Campionamento ideale Supponiamo che x(t) sia un segnale Fouriertrasformabile e che X(f) sia la sua trasformata di Fourier Troviamo un’espressione per Xc(t), la trasformata di Fourier del segnale campionato xc(t): ∞ X c ( f ) = X ( f ) ∗ ∑ δ ( f − Tnc ) = n =−∞ = ∞ ∑ X( f − n =−∞ n Tc ) 17 Campionamento ideale Lo spettro del segnale campionato idealmente è una ripetizione periodica di X(f), con periodo fc = 1/Tc X( f ) − 2 fc − fc X 0 c ( f ) f fc 2 fc 18 © 2005 Politecnico di Torino 9 Teoria dei segnali Conversione A/D Campionamento ideale Supponiamo ora che x(t) sia a banda strettamente limitata: X ( f ) = 0∀ | f |> Bx < ∞ In questo caso una buona scelta di fc permette che le repliche di X(f) non si sovrappongano nello spettro del segnale campionato 19 Campionamento ideale Se x(t) è strettamente limitato in banda a |f|<Bx<8 , le repliche periodiche dello spettro X(f) non si sovrappongono, a patto che fc = 1 ≥ 2 Bx Tc X X(f) 0 c ( f ) fc − fc B = fc / 2 − Bx = − f c / 2 x © 2005 Politecnico di Torino f 20 10 Teoria dei segnali Conversione A/D Campionamento ideale In questo caso, è possibile recuperare X(f) a partire da Xc(f) per mezzo di un filtro passabasso che separi X(f) dalle sue repliche periodiche Questo significa che x(t) può essere recuperato esattamente da xc(t) mediante un filtro ricostruttore con risposta in frequenza 1| f |≤ f c / 2 H( f ) = 0 | f | > f / 2 c 21 Campionamento ideale Rappresentazione grafica del campionamento ideale di un segnale a banda limitata, e relativa ricostruzione x(t ) arg(X( f )) X( f ) xn = x(nTc) Tc −Tc © 2005 Politecnico di Torino t xn = x(nTc ) Tc 2Tc − Bx Bx f Xc( f ) fc = 1 f Tc 22 11 Teoria dei segnali Conversione A/D Teorema di Nyquist Sia dato un segnale x(t) strettamente limitato in banda: X(f)=0 |f|>Bx <8 Il segnale può essere recuperato dai suoi campioni x(nTc), senza alcuna perdita di informazione, a patto che fc = 1 ≥ 2Bx Tc fc viene detta frequenza di campionamento, ed è il reciproco di Tc, periodo di campionamento. Si misura in campioni/s La frequenza di campionamento minima fN = 2Bx viene detta frequenza di Nyquist 23 Teorema di Nyquist Nella pratica nessun segnale è rigorosamente a banda limitata Infatti questo comporterebbe che il segnale debba essere illimitato nel tempo, il che non ha rilevanza fisica Di fatto però molti segnali sono praticamente limitati in banda, se, al di fuori della banda di riferimento, il loro spettro di ampiezza assume valori trascurabili Di fatto un piccolo tasso di distorsione ci sarà sempre, ma se il campionamento è “buono”, esso sarà non percettibile © 2005 Politecnico di Torino 24 12 Teoria dei segnali Conversione A/D Filtro ricostruttore x(t) xc (t) x x( t ) H(f) ∞ Tc ∑ δ (t − nT ) n =−∞ c Filtro ricostruttore xc ( t ) = Tc ∑ x ( nTc )δ ( t − nTc ) H( f ) () → c( ) → xt x t Tc − 1 1 2Tc 2Tc 25 Filtro ricostruttore Il filtro ricostruttore H(f) è un passabasso ideale con banda B = fc/2 = 1/(2Tc) La sua risposta all’impulso vale quindi h(t ) = F −1[H ( f )] = sin(π t / Tc ) πt 26 © 2005 Politecnico di Torino 13 Teoria dei segnali Conversione A/D Campionamento ideale nel tempo Traduciamo nel dominio del tempo la relazione che lega gli spettri del segnale ricostruito x^(t) e originario x(t), assumendo che sia soddisfatto il criterio di Nyquist ∞ ^ X ( f ) = X c ( f )H ( f ) = [ X ( f ) ∗ ∑ δ ( f − nf c )]H( f ) n =−∞ ∞ ^ x(t ) = [ x( t ) ⋅ Tc ∑ δ (t − nTc )] ∗ h(t ) = n=−∞ = ∞ ∑ Tc x(nTc )h(t − nTc ) = n=−∞ ∞ ∑ x(nT ) n=−∞ c ∞ ∑ T x(nT )δ (t − nT ) ∗ h(t ) = n =−∞ c sin(π t /Tc − nπ ) π t / Tc −nπ c c = x (t ) 27 Campionamento ideale nel tempo Questa relazione si può interpretare come segue: Se il criterio di Nyquist è rispettato, il segnale si può ricostruire perfettamente dai suoi campioni x(nTc), mediante un’interpolatore ideale Le funzioni interpolatrici sono del tipo f n (t ) = sin(π t / Tc − nπ ) π t / Tc − nπ , −∞ < n < ∞ 28 © 2005 Politecnico di Torino 14 Teoria dei segnali Conversione A/D Campionamento ideale nel tempo Rappresentazione grafica del campionamento ideale nel dominio t: funzioni di interpolazione ideale x(t) t Tc 2Tc 3Tc 29 Aliasing Se il segnale x(t) non è strettamente limitato in banda, non si può identificare alcuna frequenza di campionamento sufficientemente grande da permettere l’esatta ricostruzione di X(f) a partire da Xc(f) Se si ricostruisce un segnale a banda illimitata usando un filtro ricostruttore passabasso ideale di banda fc/2, il segnale ricostruito avrà uno spettro affetto dalla presenza delle “code” delle repliche periodiche 30 © 2005 Politecnico di Torino 15 Teoria dei segnali Conversione A/D Aliasing Questo significa che non esiste un filtro ricostruttore in grado di ricostruire idealmente X(f) (e quindi x(t)) Lo stesso accade se il segnale è a banda limitata, ma viene campionato a una frequenza inferiore al limite di Nyquist La conseguente distorsione del segnale ricostruito rispetto a x(t) è detta aliasing 31 Aliasing La distorsione da aliasing è fastidiosa in quanto non è confinata in una banda di frequenze, ma colpisce tutta la banda del segnale Per esempio, in applicazioni audio, l’aliasing dà luogo a un disturbo distintamente percepibile L’aliasing va assolutamente evitata; vedremo che si preferisce filtrare il segnale prima di campionarlo, riducendone la banda a priori 32 © 2005 Politecnico di Torino 16 Teoria dei segnali Conversione A/D Aliasing per sottocampionamento Questo è un esempio di aliasing generato da sottocampionamento (frequenza di campionamento troppo bassa, non rispetta il criterio di Nyquist) se f c < 2Bx Xc( f ) fc f ALIASING 33 Aliasing per sottocampionamento Gli effetti dell’aliasing si vedono bene se si campiona un segnale sinusoidale al di sotto della frequenza di Nyquist (che in questo caso coincide con il doppio della frequenza del segnale, f0) In questo caso viene ricostruito un segnale sinusoidale con una frequenza errata, come esplicato dal seguente esempio 34 © 2005 Politecnico di Torino 17 Teoria dei segnali Conversione A/D Aliasing per sottocampionamento x ( t ) = sin2π f0t f0 = 5.5kHz fc = 8kHz 5.5kHz t prima replica prima replica a sinistra a destra f (kHz) 35 Aliasing per sottocampionamento x ( t ) = sin2π f0t f0 = 5.5kHz fc = 8kHz 5.5kHz 5.5kHz t campionamento t prima replica prima replica a sinistra a destra f (kHz) 36 © 2005 Politecnico di Torino 18 Teoria dei segnali Conversione A/D Aliasing per sottocampionamento x ( t ) = sin2π f0t f0 = 5.5kHz fc = 8kHz 5.5kHz 5.5kHz campionamento t t prima replica prima replica a sinistra a destra 5.5kHz 2.5kHz f (kHz) ricostruzione 37 Il filtro anti-aliasing Come accennato, i segnali fisici non sono mai a banda strettamente limitata Tuttavia, in pratica la maggior parte dell’energia dei segnali fisicamente realizzabili è concentrata in una banda (-Be,Be) (definita ad esempio come la banda al Q% del segnale) 38 © 2005 Politecnico di Torino 19 Teoria dei segnali Conversione A/D Il filtro anti-aliasing Se si sceglie una frequenza di campionamento fc=2Be, ci sarà sempre e comunque errore di aliasing, che, anche se di energia limitata, comporta comunque una distorsione apprezzabile (specie in applicazioni audio-visuali) È decisamente conveniente, prima del campionamento, pre-filtrare il segnale in modo da renderlo veramente a banda limitata 39 Il filtro anti-aliasing A questo fine si usa (concettualmente) un filtro passabasso ideale di banda fc/2= Be Questo filtro di dice filtro anti-aliasing Si noti come esso sia identico al filtro ricostruttore, ma venga utilizzato prima delle successive operazioni di campionamento 40 © 2005 Politecnico di Torino 20 Teoria dei segnali Conversione A/D Il filtro anti-aliasing Il segnale ricostruito dopo il filtraggio antialiasing e il successivo campionamento a frequenza fc=2Be porterà informazione solamente sulla banda (-Be,Be) Esso quindi non fornirà in ogni caso perfetta ricostruzione di x(t) Il filtro anti-aliasing introduce sul segnale ricostruito una distorsione dovuta al troncamento di componenti spettrali 41 Campionamento con aliasing campionatore x (t) x(nT ) x (t) c ricostruttore → nT = n → A→ c fc X( f ) fc fc 2 X A( f ) f aliasing 42 © 2005 Politecnico di Torino 21 Teoria dei segnali Conversione A/D Campionamento con aliasing filtro antialiasing x (t) → 1 campionatore H (f) fs 2 xT(t) → nTc = n fc → X(f ) ricostruttore x’(t) → X '( f ) f f Componenti spettrali soppresse 43 Il filtro anti-aliasing La distorsione dovuta al filtro anti-aliasing è più o meno fastidiosa di quella dovuta ad aliasing? Test soggettivi effettuati su segnali audio o video dimostrano che la ricostruzione con filtro antialiasing è molto migliore Infatti, essa garantisce l’identità dello spettro del segnale ricostruito con X(f) nella banda |f| << fc/2. La distorsione è confinata alle alte frequenze dello spettro di x(t), dove c’è meno sensibilità dell’occhio o orecchio 44 © 2005 Politecnico di Torino 22 Teoria dei segnali Conversione A/D Il filtro anti-aliasing Oltre alla qualità soggettiva, la presenza del filtro anti-aliasing riduce anche l’errore quadratico medio di ricostruzione rispetto alla distorsione dovuta all’aliasing Per dimostrare questa affermazione, calcoliamo quindi l’errore quadratico medio tra il segnale di partenza x(t), illimitato in banda, e le due ricostruzioni: x’(t) con filtro anti-aliasing e xa(t) senza filtro anti-aliasing 45 Il filtro anti-aliasing E'= = ∞ ∞ −∞ −∞ 2 2 ∫ | x(t) − x '(t) | dt = ∫ | X ( f ) − X '( f ) | df = ∞ ∫ [ X ( f ) − X '( f )][ X ( f ) − X '( f )] df * −∞ Notiamo che X’(f) = X(f) per |f|<Be, 0 altrove Quindi E'= − Be ∫ −∞ ∞ | X ( f ) | df + ∫ | X ( f ) |2 df 2 Be 46 © 2005 Politecnico di Torino 23 Teoria dei segnali Conversione A/D Il filtro anti-aliasing Ea = ∞ ∫ | X( f )− X a ( f ) |2 df = −∞ = − Be ∫ | X( f )| −∞ ∞ 2 df + ∫ | X ( f ) | df + 2 Be Be ∫ | X( f )− X a ( f ) |2 df − Be Siccome l’ultimo integrale è definito positivo e generalmente non nullo, data la presenza di aliasing, si deduce che E’=Ea Quindi l’errore quadratico medio con il filtro anti-aliasing è inferiore a quello senza filtro anti-aliasing 47 Conversione A/D campionamento reale © 2005 Politecnico di Torino 24 Teoria dei segnali Conversione A/D Campionamento reale Nello schema di campionamento ideale, ci sono diversi blocchi irrealizzabili fisicamente: il campionatore a treno di delta di Dirac sarà sostituito nella pratica da un treno di impulsi di durata e ampiezza finita, fisicamente realizzabili il filtro ricostruttore (così come quello anti-aliasing) saranno filtri passa basso fisicamente realizzabili, non ideali 49 Campionamento reale Per prima cosa, verifichiamo che cosa succede usando impulsi fisicamente realizzabili, r(t), al posto delle delta di Dirac nella funzione di campionamento Eseguiamo quindi come prima operazione la moltiplicazione del segnale a tempo continuo con ∞ Tc ∑ r (t − nTc ) n =−∞ 50 © 2005 Politecnico di Torino 25 Teoria dei segnali Conversione A/D Campionamento reale r(t) è il segnale elementare usato per il campionamento reale; imponiamo come unica condizione che il suo supporto temporale sia τ ≤ Tc Il fattore di normalizzazione Tc è stato introdotto solamente per mantenere uniformità con il campionatore ideale; si vedrà come non abbia alcun impatto pratico 51 Campionamento reale Nell’esempio seguente r(t) è rappresentato come un impulso rettangolare causale di durata Tr e ampiezza unitaria. Nella pratica la sua forma non sarà rettangolare, di nuovo per motivi di fisica realizzabilità x(t) xr (t) x ∞ Tc ∑ r (t − nT ) c n=−∞ 52 © 2005 Politecnico di Torino 26 Teoria dei segnali Conversione A/D Campionamento reale Il segnale campionato reale, xr(t), si può esprimere come xr (t ) = Tc ∞ ∑ x(nT )r (t − nT ) = c c n =−∞ = Tc ∞ ∑ x (nT )δ (t − nT ) ∗ r (t ) = c c n =−∞ ∞ = Tc x(t ) ∑ δ (t − nTc ) ∗ r (t) n =−∞ 53 Campionamento reale Questa espressione si può interpretare come la cascata di un campionatore ideale e di un filtraggio con un filtro la cui risposta all’impulso vale h(t) = r(t) Questa interpretazione permette di capire velocemente l’impatto della forma dell’impulso r(t) sulla ricostruzione del segnale a tempo continuo 54 © 2005 Politecnico di Torino 27 Teoria dei segnali Conversione A/D Campionamento reale xr (t ) x(t ) x(t ) Tc ∑δ (t − nTc ) xr (t ) 1 r(t ) τ t n t Tr t 55 Campionamento reale xr (t ) x(t ) x(t ) Tc ∑δ (t − nTc ) xr (t ) 1 r(t ) τ t n Tr t t t 56 © 2005 Politecnico di Torino 28 Teoria dei segnali Conversione A/D Campionamento reale Lo spettro del segnale campionato reale è il prodotto dello spettro del segnale campionato idealmente, e di R(f) = F[r(t)] X r ( f ) = X c ( f )R ( f ) = ∞ ∑ X ( f − nf n=−∞ c )R( f ) 57 Campionamento reale Se r(t) è un impulso rettangolare di durata τ ≤ Tc , il suo spettro avrà il primo zero in corrispondenza di f = τ1 ≥ 1 Tc = fc Di conseguenza, nella banda [-fc,fc], R(f) non si annulla mai 58 © 2005 Politecnico di Torino 29 Teoria dei segnali Conversione A/D Campionamento reale Xr ( f ) Xc ( f ) R( f ) τ ≤ Tc f f Se r(t) è un impulso rettangolare di durata τ ≤ Tc , il suo spettro avrà il primo zero in corrispondenza di f = τ1 ≥ 1 Tc = fc Di conseguenza, nella banda [-fc,fc], R(f) non si annulla mai 59 Filtro ricostruttore Se r(t) non è un impulso rettangolare, ma smussato per motivi di fisica realizzabilità, il suo spettro non avrà comunque zeri prima della frequenza f=1/t Il segnale x(t) si può quindi ricostruire da xr(t) usando un filtro ricostruttore sagomato: R (1f ) per | f |≤ f2c Hr ( f ) = fc 0 per | f |> 2 60 © 2005 Politecnico di Torino 30 Teoria dei segnali Conversione A/D Filtro ricostruttore x(t ) 1 r (t ) τ Tc ∑δ (t − nTc ) xr (t ) t 1 H( f ) x(t ) − 1 Tc 2 1 R( f ) x(t ) f f 1 T 2 c n CAMPIONATORE RICOSTRUTTORE 61 Filtro ricostruttore x(t ) 1 r (t ) τ Tc ∑δ (t − nTc ) xr (t ) t 1 H( f ) x(t ) 1 R( f ) f x(t ) f − 1 Tc 1 Tc 2 2 n CAMPIONATORE t CAMPIONATORE REALE RICOSTRUTTORE t Hr ( f ) t f 62 © 2005 Politecnico di Torino 31 Teoria dei segnali Conversione A/D Campionamento sample-hold Si tratta di un caso particolare: r(t) rettangolare causale, t =Tc Il pratica il valore del segnale nel punto nTc viene mantenuto costante fino al successivo istante di campionamento (n+1)Tc τ = Tc t 63 Filtro ricostruttore Vediamo com’è in questo caso il filtro ricostruttore: R( f ) = sin(2π fTc ) jπ fTc e πf πf − jπ fTc sin(2π fTc) e Hr ( f ) = 0 fc | f |≤ 2 fc | f |> 2 64 © 2005 Politecnico di Torino 32 Teoria dei segnali Conversione A/D Filtro ricostruttore Questa funzione non ha alcun polo entro la banda di interesse, quindi non crea alcun problema progettuale 65 Conversione A/D quantizzazione © 2005 Politecnico di Torino 33 Teoria dei segnali Conversione A/D Quantizzazione Come accennato, la conversione A/D prevede anche la quantizzazione Infatti, i numeri che derivano dal campionamento sono in genere reali, e anche una loro rappresentazione in floating point (32 bit) è eccessivamente onerosa per la maggior parte delle applicazioni È quindi necessario attribuire ai campioni una rappresentazione in fixed point (per esempio 8 bit/campione) 67 Quantizzazione Rappresentazione grafica della catena di conversione A/D completa x(t ) Filtro Antialising Ha ( f ) xA (t ) xc (t ) Sample & hold Ora ci focalizziamo su questo blocco Quantizzatore xq (t ) Q( x ) S H xq (t) xc (t) Ts t t 68 © 2005 Politecnico di Torino 34 Teoria dei segnali Conversione A/D Quantizzazione Quantizzare un campione significa approssimarne il valore in modo che sia rappresentabile come numero intero in [0,2R-1] 5 4 3 2 1 0 t 69 Quantizzazione scalare Un quantizzatore scalare su R bit codifica ogni singolo campione di ingresso x ? (-∞,+ ∞) in un insieme discreto di L=2R possibili valori [0,2R-1] Ciò richiede R bit/campione per la codifica (rate del quantizzatore) Il bit rate per un segnale campionato a frequenza fc vale Rb=R fc bit/s Il quantizzatore si dice scalare perché i campioni sono quantizzati singolarmente 70 © 2005 Politecnico di Torino 35 Teoria dei segnali Conversione A/D Dequantizzazione scalare La dequantizzazione trasforma i numeri interi in [0,2R-1] in valori reali Si noti come solamente L=2R valori in (-∞,+ ∞) possano essere rappresentati Contrariamente al campionamento, la quantizzazione genera quindi perdita di informazione irreversibile 71 Notazione Vediamo ora, sotto semplici ipotesi di partenza, come si analizzano le prestazioni di un quantizzatore scalare Per questo, innanzitutto dobbiamo stabilire una notazione congruente che verrà usata nella successiva trattazione analitica 72 © 2005 Politecnico di Torino 36 Teoria dei segnali Conversione A/D Notazione x = campione di ingresso x* = versione quantizzata di x q = x - x* = errore di quantizzazione R = rate (bit/simbolo) L = numero di intervalli di quantizzazione ? k = larghezza del k-esimo passo di quantizzazione xk = soglie di decisione del quantizzatore yk = rappresentanti o valori di ricostruzione var(x) = varianza di x 73 Notazione L’asse reale è diviso in L=2R intervalli Ik, k=1,…,2R di cui le soglie xk sono gli estremi Se l’ampiezza del campione x cade in Ik, x è rappresentata dall’indice k In dequantizzazione, ogni indice k è associato a un valore di ricostruzione yk Ik xk-1 © 2005 Politecnico di Torino xk xk+1 74 37 Teoria dei segnali Conversione A/D Notazione L’asse reale è diviso in L=2R intervalli Ik, k=1,…,2R di cui le soglie xk sono gli estremi Se l’ampiezza del campione x cade in Ik, x è rappresentata dall’indice k In dequantizzazione, ogni indice k è associato a un valore di ricostruzione yk Ik yk-1 xk-1 yk xk xk+1 75 Notazione Un quantizzatore scalare è specificato da Rate R L+1 valori x k, k=1,…,L+1, che identificano L intervalli IK, k=1,…,L (tipicamente x1 =-∞ e xL+1=+∞) Il dequantizzatore è specificato dai valori di ricostruzione yk, k=1,…,L La funzione y=Q(x) è detta caratteristica del quantizzatore 76 © 2005 Politecnico di Torino 38 Teoria dei segnali Conversione A/D Quantizzatore uniforme Nella quantizzazione scalare uniforme, tutti gli intervalli hanno la stessa ampiezza: xk+1-xk=∆ e yk+1-yk=∆ per ogni k Si può dimostrare che i valori di ricostruzione ottimi, ovvero quelli per cui il segnale dequantizzato y è massimamente simile a x nel senso dell’errore quadratico medio (MSE), sono i punti centrali degli intervalli: yk=(xk+ xk+1)/2 77 Quantizzatore uniforme Caratteristica di un quantizzatore scalare uniforme Segnale quantizzato y=x*=Q(x) yk yk-1 ∆ xk xk+1 Segnale x originale 78 © 2005 Politecnico di Torino 39 Teoria dei segnali Conversione A/D Rumore di quantizzazione Per un segnale di ingresso deterministico, anche l’errore di quantizzazione q=x-y=x-x* =x-Q(x) è a sua volta un segnale deterministico Se invece il campione x è modellato come una variabile casuale X, ogni campione di errore q è a sua volta una variabile casuale Q, detta rumore di quantizzazione 79 Rumore di quantizzazione Rumore di sovraccarico (overload): avviene quando |x| > xL+1 Overload xL+1 Granularità x1 © 2005 Politecnico di Torino t Rumore granulare: tutti i valori dell’intervallo Ik sono rappresentati con l’unico rappresentante yk 80 40 Teoria dei segnali Conversione A/D Metrica di qualità Le prestazioni di un quantizzatore si valutano normalmente in termini dell’errore quadratico medio dell’errore di ricostruzione, E[Q] Si definisce SNR=E[X2]/E[Q2] = var(X)/var(Q) SNR = rapporto tra potenza del segnale e potenza del rumore di quantizzazione (signal to noise ratio) 81 SNR In figura vediamo un tipico andamento di SNR in funzione della varianza del campione di ingresso Al crescere di E[X2] inizialmente SNR cresce Oltre una certa soglia invece, SNR diminuisce in quanto aumenta l’errore dovuto a sovraccarico SNR Granularità Sovraccarico E[x2] © 2005 Politecnico di Torino 82 41 Teoria dei segnali Conversione A/D Calcolo di SNR X sia una variabile casuale a media nulla, varianza var(X)=E[X2] e pdf pX(x) L’ uscita del quantizzatore, Y, è a sua volta una variabile casuale L’errore di quantizzazione Q=X-Y è una variabile casuale con pdf pQ(q) e varianza var(Q): +∞ var(Q) = var( X − Q( X ) = E[Q 2 ] = ∫ q 2 pQ ( q)dq −∞ 83 Calcolo di SNR var(Q) si può scrivere separando i contributi dei singoli intervalli Ik L var(Q) = ∑ ∫ k =1 x k +1 xk [ x − yk ]2 p X ( x)dx 84 © 2005 Politecnico di Torino 42 Teoria dei segnali Conversione A/D Esempio di calcolo Ipotesi semplice: Quantizzazione uniforme di ingresso limitato x ? (-A,A); non c’è sovraccarico passo di quantizzazione uniforme: ∆=2A/2R Q ? (–∆/2,∆/2) ∆ è sufficientemente piccolo da poter ipotizzare che l’errore di quantizzazione abbia pdf uniforme in (–∆/2,∆/2) (ipotesi di alto rate) di conseguenza: var(Q)=∆2/12 =1/3 A 2 2-2R questa formula lega la distorsione al rate R 85 Esempio di calcolo Facciamo alcune considerazioni sull’andamento di SNR=var(X)/var(Q) sapendo che var(Q)= ∆2/12 =1/3 A2 2-2R 1. SNR diminuisce quadraticamente con ∆ 2. SNR aumenta esponenzialmente con R 3. Un bit di quantizzazione in più à var(Q) diminuisce di un fattore 4 à SNR aumenta di 6 dB 86 © 2005 Politecnico di Torino 43 Teoria dei segnali Conversione A/D Commento Per un quantizzatore scalare uniforme, nell’ipotesi di alto rate e assenza di sovraccarico, l’aumento di 1 bit/campione comporta un miglioramento di 6 dB in SNR Naturalmente una valutazione meno approssimata della bontà del quantizzatore richiede la conoscenza della densità di probabilità del segnale di ingresso Uno studio dettagliato degli effetti della quantizzazione esula dagli scopi del corso 87 Quantizzazione ottima La scelta di un quantizzatore uniforme, per quanto semplice, non è generalmente ottima Intuitivamente, sarebbe meglio definire intervalli di quantizzazione più piccoli nelle regioni dove il campione di ingresso assume valori con alta probabilità, e intervalli più ampi nelle regioni dove è poco probabile trovare il segnale di ingresso 88 © 2005 Politecnico di Torino 44 Teoria dei segnali Conversione A/D Quantizzazione ottima Il quantizzatore ottimo (o di Lloyd-Max) usa informazioni sulla pdf delle ampiezze del campione di ingresso per ottimizzare l’ampiezza degli intervalli di quantizzazione, e la scelta dei rappresentanti Il quantizzatore ottimo, pur fornendo risultati eccellenti in termini di SNR, comporta un progetto complesso e fortemente dipendente dalla statistica dell’ingresso Le sue prestazioni degradano se tale statistica cambia 89 Quantizzazione vettoriale Anche quantizzare ogni singolo campione in isolamento non è una scelta ottima Infatti, se più campioni vengono quantizzati insieme, è possibile sfruttare la correlazione eventualmente presente per conseguire un’ottimizzazione dei livelli e dei rappresentanti del quantizzatore (quantizzazione vettoriale) 90 © 2005 Politecnico di Torino 45 Teoria dei segnali Conversione A/D Quantizzazione vettoriale Anche in assenza di tale correlazione, una quantizzazione vettoriale comporta comunque un vantaggio di prestazioni, in quanto consente migliori tassellazioni operando in uno spazio multidimensionale La quantizzazione vettoriale, specie se a alto numero di dimensioni, è un’operazione a elevata complessità 91 Conversione A/D Esempi © 2005 Politecnico di Torino 46 Teoria dei segnali Conversione A/D Esempi di conversione A/D Concludiamo questa lezione con alcuni esempi di conversione A/D di importanti categorie di segnali Per ciascuna categoria, valuteremo il bit rate che deriva da un campionamento adeguato e da una quantizzazione scalare dei campioni 93 Esempio 1: segnale telefonico Il segnale vocale ha una banda di circa 20kHz Questa banda può essere tagliata a Bx ~ 4kHz, con una degradazione della qualità accettabile per applicazioni di telefonia (qualità telefonica) Vediamo quindi il bit rate necessario per convertire un segnale telefonico in formato numerico 94 © 2005 Politecnico di Torino 47 Teoria dei segnali Conversione A/D Esempio 1: segnale telefonico Frequenza di campionamento: fc=8KHz Dal segnale vengono prelevati 8 kcampioni/s Ogni campione viene quantizzato su R=8 bit/campione Il bit rate risultante è dunque Rb=64 kbit/s 95 Esempio 2: segnale audio Il segnale audio (qualità CD) ha una banda di circa 20kHz Con un leggero sovracampionamento, si campiona tale segnale a fc= 44.1 kcampioni/s La quantizzazione avviene su R=16 bit/campione Ne risulta un bit rate pari a Rb = 1.4112 Mbit/s 96 © 2005 Politecnico di Torino 48 Teoria dei segnali Conversione A/D Esempio 3: segnale video Il segnale video in uscita da una telecamera ha una componente di luminanza L(t) e due componenti di crominanza c1(t) e c2(t) La luminanza viene campionata a fcL=13.5 Mcampioni/s, mentre le crominanze a fcc=6.75 Mcampioni/s (normativa CCIR-602, segnale 4:2:2 senza compressione) Sia la luminanza che le crominanze vengono quantizzate su R= 8 bit/campione 97 Esempio 3: segnale video Da questi dati si deduce come il segnale video richieda un bit rate pari a Rb=108 Mbit/s + 2*54Mbit/s =216Mbit/s Questo bit rate, enormemente elevato, viene drasticamente ridotto se si applicano tecniche di compressione dati Con compressione dati si può rappresentare il segnale video a bit rate di appena 4 Mbit/s 98 © 2005 Politecnico di Torino 49 Teoria dei segnali Conversione A/D Riepilogo (1/2) La conversione A/D permette di convertire il segnale analogico x(t) in una sequenza di numeri La conversione A/D consta di campionamento e quantizzazione Il teorema di Nyquist sancisce che, per segnali a banda limitata campionati a frequenza almeno pari al doppio della banda, l’operazione di campionamento non implica perdita di informazione 99 Riepilogo (2/2) La quantizzazione implica perdita irreversibile di informazione, e quindi distorsione tra il campione di ingresso e quello ricostruito La qualità del quantizzatore si misura in termini del rapporto segnale-rumore di quantizzazione (SNR) Come regola approssimata, aumentando di 1 il rate del quantizzatore (R bit/campione) SNR aumenta di 6 dB La quantizzazione può essere uniforme o ottima (Max-Lloyd), scalare o vettoriale 100 © 2005 Politecnico di Torino 50