Trasformazioni Winograd L'ultimo punto che rimane da esaminare nel progetto di una FFT di fattori primi, è la determinazione di efficienti algoritmi circolari di convoluzione per piccoli Winograd ha sviluppato la teoria di alcuni algoritmi usando versioni polinomiali del teorema di Chinese Remainder Theorem (CRT)[83-87] Se non è un numero primo, la DFT non può essere espressa come una convoluzione circolare (vedere problema 74), ma una efficiente DFT per non primo è stata data da Winograd M Usai Circuiti digitali 7_4
La trasformazione del vettore dei dati di input ~ t x x ~ ~ ~ ~ = [ ~ (),, x ( )] t per produrre il vettore di output DFT X = [ X (),, X ( )] può essere scritto nella forma matriciale come: X ~ = ODI x~ (75) dove: I è una matrice L di interi che indicano le addizioni di input eseguite per formare L dati intermedi (con L³); D è una matrice diagonale L L con costanti moltiplicative puramente reali o a parametri immaginari, e O è una matrice L di interi che indicano le addizioni di output necessarie per produrre la DFT del vettore M Usai Circuiti digitali 7_4
~ Si noti che x () ~ e X (), sono stati inclusi in ~ x e X ~ rispettivamente, per descrivere la DFT completa, non la convoluzione circolare Poiché L cade nel campo L <, il numero di moltiplicazioni cresce solo linearmente con Per esempio le moltiplicazioni e addizioni che compongono la DFT di Winograd a 3-punti sono descritte dalla seguente matrice di equazioni: ~ X () ~ () X = ~ () X - -3/ - j 3 / - x~ () x~ () x~ () Kolba e Parks[84] danno tabelle di numeri di moltiplicazioni e addizioni richieste per diverse lunghezze di DFT di interesse pratico M Usai Circuiti digitali 7_4 3
76 Periodogramma Premessa I segnali si definiscono deterministici se è possibile prevedere con certezza il valore che essi assumono in un istante assegnato qualsiasi, dalla conoscenza di pochi parametri Per esempio una sinusoide è perfettamente definita dalla sua ampiezza, fase e frequenza e molti segnali periodici sono sviluppabili in serie di Fourier in una sommatoria di sinusoidi, ciascuna definibile con pochi parametri Gli esempi di analisi di spettro esaminati sinora erano riferiti a segnali deterministici, dove l'unico effetto che deve essere considerato era quello dovuto alla finestratura M Usai Circuiti digitali 7_4 4
Ma generalmente nei problemi reali, elaboriamo segnali random con un numero finito di campioni, e questo fatto introduce nella scelta del metodo di analisi spettrale, considerazioni addizionali statistiche In questo paragrafo, si da una panoramica di queste considerazioni attraverso le quali si deduce: il metodo del periodogramma (periodogram) basato sulla DFT Questa trattazione presume una conoscenza di base della teoria delle probabilità e processi random Per i segnali random la trasformata discreta di Fourier non è definita (perché non conosciamo il segnale per tutto il tempo) quindi non è possibile risalire esattamente allo spettro del segnale Per tale motivo si cerca invece di fare una stima dello spettro di potenza M Usai Circuiti digitali 7_4 5
Si definiscono: media temporale m x di un processo casuale: e sequenza di autocorrelazione nel tempo: x = lim + = dove l asterisco indica il complesso coniugato n n x( n) xx = xnx ( ) *( n m), n n+ m + m n= Se il segnale è ergodico per qualsiasi sequenza campione, le medie temporali e le sequenze di autocorrelazione nel tempo sono costanti, ossia: le medie temporali di quasi tutte le possibili sequenze campione sono tutte uguali alla costante m x, e l autocorrelazione di tutte le possibili sequenze campione sono tutte uguali alla costante Φ xx M Usai Circuiti digitali 7_4 6
Quindi per i segnali ergodici, per ogni singola sequenza campione per - < n <, xn ( ) = lim xn ( ) = Ex [ ] = m n + n= x xnx ( ) *( n+ m) = xnx ( ) *( n+ m) = Exx [ * ] =Φ (m) n n+ m xx m n= Ossia per i segnali ergodici l operatore di media temporale < > ha le stesse proprietà dell operatore di media d insieme E[ ] In generale si può affermare che un processo casuale per il quale le medie temporali sono uguali alle medie d insieme è chiamato processo ergodico M Usai Circuiti digitali 7_4 7
Quindi per un segnale ergodico x(n), la sequenza di autocorrelazione é definita come: [ ] rm ( ) = E x*( nxn ) ( + m) (76) Chiamando S(z) la trasformata z, per z = e jω, si ottiene lo spettro di potenza S'(ω) calcolando la trasformata di Fourier: ( ) j m S'( ω) = r( m) e ω m= Data una sequenza di dati x(n), n=,,,-, una stima non polarizzata (unbiased) di r(m) è semplicemente: con stimatore non polarizzato e quindi m rm %( ) = x*( nxn ) ( + m), per m <, m n = (76) (763) r% ( m) = r% *( m) Erm [%( )] = rm ( ) M Usai Circuiti digitali 7_4 8
rm %( ) Quindi, come m si avvicina ad, la varianza della stima diventa grande, perché il numero (-m) di campioni, essendo mediato, diventa piccolo Comunemente, per evitare una varianza eccessiva, si utilizza la stima polarizzata (biased): m rm %( ) = x*( nxn ) ( + m), per m <, n= (764) Il tilde indica il fatto che il segnale x(n) èstato finestrato con finestra rettangolare, cioè: ~ x( n) = w ( n) x( n ) R m rm %( ) = x% *( nxn ) %( + m), n= (765) M Usai Circuiti digitali 7_4 9
Confrontando la (763) con la (764) è chiaro che la stima tende a: E [ ~ r ( m) ] = w ( m) r( m ) dove w T (m) è la finestra triangolare ((- m )/, per m < T (766) La trasformata di Fourier dell estimatore rm %( ) è il periodogramma ed è facilmente derivato dalla (765), per cui si ottiene : ' S ' R ( ω) = X R ( ω) dove x ~ R ( n) = x ( n) o in termini di DFT: ~ S R ( k) = ~ X ( k) (767) (768) Quindi si può calcolare una stima dello spettro di potenza direttamente X% ( k) dalla DFT di M Usai Circuiti digitali 7_4
Quindi si può calcolare una stima dello spettro di potenza direttamente dalla DFT di La stima è polarizzata (biased), poiché rm %( ) è polarizzata e per la (766) la tendenza della stima nel dominio del discreto, è descritta dalla convoluzione : E [ ' ] ' S ( ω) = W ( ω) S' ( ω), R X% ( k) T (769) dove W ' T ( ω) = sin( ω / ) sin( ω / ) [ ' ] W ( ω) = R (76) M Usai Circuiti digitali 7_4
Si noti anche che in base alla (765) rˆ ( m) corrisponde alla convoluzione lineare di ~ x ( n ) e di ~ x *( n ) e quindi per la proprietà dell operatore di convoluzione, presenta un numero di campioni pari a - Perciò non può essere riconvertita come la DFT inversa della (768) a meno ~ che si faccia lo zero-padding di x ( n ) ~ ad almeno (-) campioni prima di ~ calcolare X ( k ) e quindi ( k ) S k Si può facilmente verificare che all aumentare della lunghezza della sequenza ~ x ( n ) zero-padded, aumenta la risoluzione della stima spettrale per l effetto dello zero-padded sulla interpolazione spettrale ~ ( k ) S k Comunque la varianza di ciascuna ampiezza spettrale non diminuisce con, ma piuttosto rimane circa costante, essendo la varianza pari a: var { x( n) } = E{ ( xn [ ] xn [ ]) } = ( xn [ ] xn [ ]) n= Perciò il periodogramma non è un estimatore consistente dello spettro di potenza, infatti se aumenta il numero dei campioni, la stima non tende allo spettro vero M Usai Circuiti digitali 7_4
Cio è illustrato in fig 7 che mostra diverse stime di spettro per un rumore bianco (caratterizzato da media nulla e varianza unitaria) per valori crescenti di n Si noti che sebbene la risoluzione delle frequenze è aumentata, il range delle ampiezza spettrali non è diminuito Figura 7 Periodogrammi di rumore bianco per = 8, 56 e 5 M Usai Circuiti digitali 7_4 3
Ci sono due approcci base per risolvere questi problemi: fare la media delle stime spettrali relative a segmenti più corti della intera sequenza di dati, o fare una finestratura (windowing) Con entrambi gli approcci si ottiene che all aumentare del numero di campioni la varianza diminuisce a discapito della risoluzione Il miglior approccio é spesso una combinazione dei due metodi, come proposto da Welch[8] M Usai Circuiti digitali 7_4 4
Metodo di Welch Dividendo il registro dei dati per L e non sovrapponendo i segmenti ~ xi ( n ) di lunghezza M=/L, si fa la finestratura di ciascun segmento con una finestra appropriata (vedi paragrafo 73) e si valutano L periodogrammi modificati secondo la seguente formula: i ~ S k ω M ( k) = E ω n= =,,, M - ω( n) ~ x ( n) W i kn i =,,, L, (76) dove E ω è l'energia della finestra definita come: E ω M n= = ω ( n) (76) Quindi la stima spettrale totale è semplicemente il periodogramma medio degli L periodogrammi calcolati: L ~ ~ S ( k) ω = i Sω ( k) L i= (763) M Usai Circuiti digitali 7_4 5
Come prima: E πe [ ' ] S ( ω) = [ W '( ω) ] S' ( ω), ω ω (764) dal quale si può valutare la perdita di risoluzione spettrale, ricordando che ω(n) è ora di lunghezza M, non Di contro, la varianza della stima spettrale risulta diminuita del fattore /L Con questa procedura, molti dati diventano trascurabili, perché fortemente attenuati alle estremità di ciascun segmento di campioni sul quale si opera la finestratura Ovviamente, quando il numero dei dati è limitato, si è riluttanti ad attenuare qualcuno di essi per evitare una ulteriore perdita di informazione M Usai Circuiti digitali 7_4 6
Appendice A /Residuo aritmetico e teorema Chinese Remainder Theorem(CRT) Un intero k i, si definisce residuo di k modulo i, ed è indicato da k i =<k> i se K i è il più piccolo resto positivo quando k viene diviso per i Per esempio, 3 è il residuo di 4 modulo 7, o 3=<4> 7 Ciò è facile da verificare per le seguenti proprietà per gli interi n e k e i loro residui: < nk > =<< n > < k > > =< n < k > > i i i i i i < n + k > i =<< n > i = < n+ < k + k > > Se,, p sono relativamente intere primi ( come nessuna coppia tra P interi ha un fattore comune più grande dell'unità) e è il prodotto di p, quindi alcuni interi k nell'intervallo - può essere univocamente rappresentato dai suoi residui <k>, <k>,,<k> p i i > i > i = =<< n > + k > i M Usai Circuiti digitali 7_4 7
Per esempio la seguente tabella da i residui per gli interi nell'intervallo 4 per =5, =3 e =5 Si noti che ciascun intero k ha un unico paio di residui <k> e <k> La precedente rappresentazione degli interi k nel ring - in termini dei loro residui, è chiamata la rappresentazione del sino ed è compresso senza operazioni di moltiplicazioni ed addizioni Il seguente esempio illustra come la moltiplicazione e l'addizione possono essere eseguite all'interno del ring 4, moltiplicando solamente i residui della precedente tabella Poniamo n=4 e k=3 con =3 e =5 M Usai Circuiti digitali 7_4 8
Quindi la moltiplicazione moltiplicazione degli n e i k (modulo ) può esere ottenuta attaverso: k 3 4 5 6 7 8 9 3 4 <k> <k> 3 4 3 4 3 4 Si noti che ciascun intero k ha un unico paio di residui <k> e <k> La precedente rappresentazione degli interi k nel ring - in termini dei loro residui, è chiamata la rappresentazione del sino ed è compresso senza operazioni di moltiplicazioni ed addizioni M Usai Circuiti digitali 7_4 9
Il seguente esempio illustra come la moltiplicazione e l'addizione possono essere eseguite all'interno del ring 4, moltiplicando solamente i residui della precedente tabella Poniamo n=4 e k=3 con =3 e =5 Quindi la moltiplicazione moltiplicazione degli n e i k (modulo ) può esere ottenuta attaverso: n n k k = 3 = 4 3 = = 5 nk 5 =, M Usai Circuiti digitali 7_4
M Usai Circuiti digitali 7_4 e l addizione e n e k (modulo ) è analogamente ottenuta attraverso: dove il prodotto finale e la somma sono state determinate dai prodotti residui e le somme usando le tabelle Si può cercare di provare il caso di n=8 e k=9 Un altro importante concetto della teoria dei residui è quello di (multiplicative inverse) 7, 3 4 5 5 3 = + = + = + = + = + k n k n k n
Un intero p è chiamato multiplicative inverse di n modulo i ed è indicato con <n - > i se <np> i = Per esempio, 3 è il multiplicative inverse di 5 modulo 7 poiché <3 5> 7 = Un intero n ha un multiplicative inverse i se e solo se, n e i sono relativamente primi Si verifichi che <5 - > 5 non esiste, cioè non si può trovere un p tale che <5p> 5 = Ora è facile introdurre il rimarchevole teorema Chinese Remainder Theorem (CRT) che fornisce un metodo per ricostruire un intero k dai loro residui Come prima cosa poniamo che,,, p siano interi primi relativi e = p Inoltre poniamo M i =/ i per i=,,,p Perciò M i e i sono relativamente primi e <M - i > i quindi esiste Si noti che i residui di K modulo i per k cioè : <K i > i, i=,,,p La CRT quindi stabilisce che k può essere ricostruito dai suoi residui k i per mezzo di: k = P ki M i M i i= se k - Altrimenti questa ricostruzione produce <k> M Usai Circuiti digitali 7_4,
Per esempio, per =5, =3 e =5, si ha M =5 e M =3, e quindi <M - > = e <M - > = Quindi dalla CRT, K=<k +6k > 5 Si può verificare la formula usando diverse coppie di residui dalla tabella precedente M Usai Circuiti digitali 7_4 3