16
ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR UNIVERSITÀ DEGLI STUDI DI TRIESTE FACOLTÀ DI INGEGNERIA Corso di Laurea in Ingegneria Elettronica curriculum Elettronica Applicata Laureando: Relatore: Simone Bardella Chiar.mo Prof. Ing. Sergio Carrato

ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Embed Size (px)

Citation preview

Page 1: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

ANALISI DEGLI ERRORI

DI QUANTIZZAZIONE

NEI FILTRI IIR

UNIVERSITÀ DEGLI STUDI DI TRIESTEFACOLTÀ DI INGEGNERIA

Corso di Laurea in Ingegneria Elettronica curriculum Elettronica Applicata

Laureando: Relatore:

Simone Bardella Chiar.mo Prof. Ing. Sergio Carrato

Page 2: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

OBBIETTIVO

Problema iniziale:

Validazione del tool per il calcolo dei coefficienti di IIR biquadratici implementati

nel DSP TEAKlite

Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit

Page 3: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Analisi ambiente applicativo

SGOLD2: modulo GSM-GPRS-EDGE

DSP TEAKlite16 bit, fixed point

Il firmware del DSP implementa algoritmi per l’elaborazione del segnale audio digitale

Page 4: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Filtri Biquadratici

A/D Biquad TX#2

Biquad RX#2

Biquad TX#1

Biquad RX#1D/A

to uplink

fromdownlink

path di trasmissione

path di ricezione

j

TXG e

j

RXG e

MIC

speaker

Analog front end

Page 5: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Normative ETSI:impongono di correggere la risposta in

frequenza del canale trasmissivo e ricevente

MASCHERE DI FREQUENZA:

12th octave FFT Size:4096 Overlap:75.0% Hanning Ref.: r12sndrf.fftL/dB[V/Pa]

-50

-40

-30

-20

-10

0

10

f/Hz120 200 300 400 1000 1600 2400 4000

SND(1)-Reflowerupper

12th octave FFT Size:4096 Overlap:75.0% Hanning Ref.: r12rcvrf.fftL/dB[Pa/V]

-30

-20

-10

0

10

20

30

f/Hz120 200 300 400 1000 1600 2400 4000

RCV(2)-Reflowerupper

Sending Sensitivity frequencyResponse

Receiving Sensitivity frequencyResponse

Page 6: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Filtri Biquadratici

1 2

0 1 2

1 2

1 2

2( )

( ) 1 2

a a z a zY z

X z b z b z

Implementati in direct form:

f.d.t.

Page 7: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

• Rappresentazione in complemento a 2• Il DSP interpreta i valori nel formato Q15

Coefficienti dei filtri

0 1 2 15( ... )x a a a a

Valori rappresentabili:

Precisione:152

151 (1 2 )

Page 8: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Problema:Il tool lavora in floating point double precisionIl DSP in fixed point

Quindi:

FLOATING POINTDOUBLE PRECISION

FIXED POINT

Come ottenere dati compatibili con il DSP?

Q(x)

int

32768

(int)

double

double

x x

x x

errori ( )Q x x

15 152 2e

allora:

Page 9: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

I coefficienti devono essere quantizzati

Spostamento singolarità nel piano z (poli,zeri)

Cambiamento f.d.t. del filtro biquad.

1 2

0 1 2

1 21 2

2( )

1 2

a a z a zH z

b z b z

1 2

0 1 2

1 2

1 2

2( )

1 2

a a z a zH z

b z b z

studio del comportamento dei poli

Page 10: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Locazione poli

Nell’ipotesi di poli complessi coniugati:

1 2

1 2( ) 1 2D z b z b z

Si consideri il denominatore di H(z):

1 1( ) (1 )(1 * )D z p z p z

Si ricava:

1

2

2

Re( )b p

b p

Page 11: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Sensibilità

Quantitativamente, come ne risentono i poli dellaquantizzazione dei coefficienti?

Si consideri un polinomio B(z) di grado N:

kj

k kz r e

( )

( ) k kjk k kz r r e

Quantizzazione:

0

( )N

i

i

i

B z b z

0

( )N

i

i i

i

B z b b z

( )k kj j

k k k k kz r e r jr e

( ) kjkk k k k kz z z r jr e

Assumendo piccoli cambiamenti della k-esima radice si ha:

Page 12: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

1

( ) ( )N

k

k

B z z z

1

0 1

( ) ( ) ( ) ( )N N

iki

i k

B z B z b z z z

1

1

( )

Nk

k kB z z z

( )

( )k

kk k k

z z

z zR jX

B z

1( )

( )

kkk k

k k k

z B zB z z z

1

0

( ) 0 ( ) ( )( )N

ik k ki

i

B z B z b z

1

0

Ni

k k i k

i

z b z

1

0

( ) ( ) ( )k k

Ni

j j

k k k k k i k

i

r jr e R jX b r e

1

k k k k k

k k k k k

k

r R P X Q B

X P R Q Br

1

1

0 1 1

cos cos( 2)

sin 0 sin( 2)

N

k k k k k

N

k k k k

T

N

P r r N

Q r N

B b b b

Inoltre:

Considerando la funzione :

dove:

1/ ( )B z

con:

Page 13: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

• alta sensibilità per poli con• situazioni di instabilità

0,

Si vogliono analizzare le situazioni critiche per diversitipologie di filtri implementati nel tool:

Filtri Butterworth

LowpassHighpassNotchBandpass

Disposizione poli per alte frequenze di taglio:• precisione infinita• aritmetica a 16-bit• aritmetica a 8-bit

2

2 1

2

2

2 tan 2 sin

br

r

b b

r r

Nel nostro caso:

2 1

TB b b

Page 14: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

lowpass, Fc=3908 Hzinfinite precision: stabile16-bit truncation: stabile8-bit truncation: instabile

Poli 8-bit

Poli 16-bitPoli precisione infinita

bandpass, Fo=3924 Hz, Q=5infinite precision: stabile16-bit truncation: stabile8-bit truncation: instabile

Poli 8-bit

Poli 16-bitPoli precisione infinita

Page 15: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

Considerazioni per alte freq. di taglio (3900 4000)Hz

• aritmetica a 16-bit stabilità

• aritmetica a 8-bit Poli reali

Risp. in freq. diverse

instabilità

notch, Fo=3902 Hz, Q=3infinite precision: stabile16-bit truncation: stabile8-bit truncation: instabile

Poli 8-bit

Poli 16-bitPoli precisione infinita

Page 16: ANALISI DEGLI ERRORI DI QUANTIZZAZIONE NEI FILTRI IIR · Analisi errori di quantizzazione nei filtri IIR: confronto tra DSP a 16-bit e 8-bit. Analisi ambiente applicativo ... Cambiamento

CONCLUSIONI

Validazione del tool effettuata

Studiati gli errori di quantizzazione dei coefficienti ela loro influenza sulle condizioni di stabilità

DSP a 8-bit: criticità per alte frequenze di taglio

Non considerati altri errori che si presentano in unprocessore (limit cycles, conversione A/D,quantizzazione operazioni aritmetiche)