Post on 24-Jan-2019
transcript
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
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
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
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
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
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.
• 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 )
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:
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
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
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:
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:
• 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
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
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
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)