180 likes | 374 Views
UNIVERSITÀ DEGLI STUDI DI PARMA. FACOLTÀ DI INGEGNERIA. Corso di Laurea in Ingegneria delle Telecomunicazioni. FILTRAGGIO DI SEGNALI AUDIO SU PIATTAFORMA DSP MEDIANTE ALGORITMO DI CONVOLUZIONE FFT PARTIZIONATA. Tesi di Laurea di:. Christian Giottoli. INTRODUZIONE. 2. ARGOMENTO.
E N D
UNIVERSITÀ DEGLI STUDI DI PARMA FACOLTÀ DI INGEGNERIA Corso di Laurea in Ingegneria delle Telecomunicazioni FILTRAGGIO DI SEGNALI AUDIO SU PIATTAFORMA DSP MEDIANTE ALGORITMO DI CONVOLUZIONE FFT PARTIZIONATA Tesi di Laurea di: Christian Giottoli
ARGOMENTO Implementazione su scheda DSP di un nuovo sistema di filtraggio real-time di segnali audio OBIETTIVO Effettuare filtraggi utilizzando risposte all’impulso (IR) dell’ordine di 100.000 samples 100.000 samples (@48Khz) sono circa 2 sec. Valore tipico di IR di ampi spazi chiusi: teatri, chiese, ... Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 3 29/04/2003
DSP e CONVOLUZIONE Alla base del filtraggio fra segnali audio e filtri digitali (risposte all’impulso) sta la semplice formulazione matematica di convoluzione Multiply and ACcumulate y:=0; FOR n:=0 TO N-1 DO y:= y + a[n]·x[n]; DSP Analog Devices 21161N Operazione ottimizzata su DSPEseguita in un solo ciclo macchina Clock core 100 Mhz Limite teorico 2000 MAC fra samples (@48Khz) Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 4 29/04/2003
FFT X(k) x(n) h(n) X(k) H(k) IFFT Y(k) FILTRARE IN FREQUENZA? Esistono algoritmi efficienti per calcolare la DFT (FFT)Conviene effettuare il filtraggio in frequenza: x(n) y(n) y(n) • Prima acquisizione, poi filtraggio Difetti • FFT di un numero troppo elevato Soluzione Algoritmi di Overlap: Overlap and Add, Overlap and Save Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 6 29/04/2003
OVERLAP AND SAVE • Tempo di latenza eccessivo Difetti • Problemi di gestione memoria interna Soluzione Overlap and Save Partizionato Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 7 29/04/2003
1° blocco 2° blocco 3° blocco 4° blocco OVERLAP AND SAVE PARTIZIONATO Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 8 29/04/2003
OVERLAP AND SAVE PARTIZIONATO (2) • Riduzione tempo di latenza • Miglior sfruttamento processore • 1 FFT di M punti sostituita da P FFT ognuna di L punti • Miglior ripartizione carico computazionale • Maggior flessibilità nello scegliere lunghezza IR Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 9 29/04/2003
X X X SIMULAZIONI MATLAB Convoluzione (Matlab) Filtro digitale Overlap Save Part. (Matlab) Stream di ingresso Overlap Save Part. (DSP) Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 11 29/04/2003
PING PONG BUFFER Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 12 29/04/2003
Filter[3] Filter[1] Filter[2] Filter[0] A1 B0 A0 B1 A2 B2 A3 B3 X X X X IFFT[A] IFFT[B] To output_buffer To output_buffer ELABORA From input_buffer FFT[B] FFT[A] Computation circular buffer B3 A0 B0+A1 A1 B1+A2 A2 B2+A3 A3 Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 13 29/04/2003
EFFICIENZA • FFT 8192 punti • Latenza 8192/48000 = 0,17 sec • TAPS 50% => Eff. MAX 27 blocchi * 4096 = 110592 punti Obiettivo raggiunto !! Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 15 29/04/2003
PROVE D’ASCOLTO Con 2 DSP è stato possibile comandare: 4 riverberatori 2 stereodipoli (A,P) Registrazione anecoica: Risposta all’impulso: Stop Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 16 29/04/2003
CONCLUSIONI Convoluzione con IR da 110592 samples (@48Khz, 8192 FFT, 50%taps, 27 blocchi) Pagando un tempo di latenza pari a 0,17 sec. SVILUPPI FUTURI Aumentare la geometria Interfacciare il DSP con memorie esterne sulle quali salvare le risposte all’impulso dei vari teatri, chiese... Filtraggio di segnali audio su piattaforma DSP mediante algoritmo di convoluzione FFT partizionata Parma, 17 29/04/2003
FINE presentazione di Christian Giottoli