Introduzione
FDD
VCO
()
rk
Figura I.1-Schema generale di un circuito ad anello chiuso
Successivamente con l’avvento delle trasmissioni numeriche, e più in generale delle
tecniche di elaborazione numerica dei segnali, è nata la necessità di diminuire questi
tempi di acquisizione e quindi è stato possibile utilizzare anche strutture ad anello
aperto per la ricostruzione del sincronismo di portante. Lo schema di principio è il
seguente, Fig. I.2
Stimatore di
frequenza
( )
rk
Figura I.2-Schema di principio di un circuito ad anello aperto
I sincronizzatori ad anello aperto elaborano il segnale su un tempo finito
detto intervallo di osservazione. Una caratteristica importante di quest’ultimi è di
avere un tempo di stima indipendente dal valore del parametro da stimare. Ciò li
rende particolarmente adatti per trasmissioni a pacchetto nelle quali la
sincronizzazione deve completarsi nel minor tempo possibile. Inoltre non presentano
fenomeni di stabilità, anche se a loro sfavore hanno il fatto che effettuano una
correzione di frequenza imprecisa a causa dei problemi di precisione matematica.
0
0 tT≤≤
Nel nostro studio ci occuperemo di stima di frequenza ad anello aperto proprio
perché i nostri algoritmi sono adatti a trasmissioni a pacchetto, in cui ogni
- 2 -
Introduzione
pacchetto contiene una sequenza di training (per esempio il preambolo) nota al
ricevitore seguita dai dati di informazione.
Lo studio e i relativi risultati ottenuti sono esposti in questo lavoro secondo lo
schema qui descritto brevemente.
Nel Capitolo 1 sono stati introdotti alcuni stimatori di frequenza ad anello
aperto che possiamo trovare in letteratura. In particolare abbiamo descritto
l’algoritmo di Rife e Boorstyn basato sulla funzione di verosimiglianza, algoritmi
basati sul criterio dei minimi quadrati e infine stimatori basati sulla funzione di
autocorrelazione.
Nel Capitolo 2 abbiamo inizialmente elencato i parametri di merito che
caratterizzano il comportamento di uno stimatore, e successivamente abbiamo
valutato attraverso tali parametri la bontà degli stimatori introdotti.
Nella seconda parte del capitolo abbiamo definito e calcolato il Modified Cramèr-
Rao Bound (MCRB) per diversi configurazioni del frame.
Nel Capitolo 3 sono stati esposti gli algoritmi applicabili alla particolare
configurazione del frame scelta e sono state valutate per simulazione le relative
prestazioni ottenute attraverso le nostre simulazioni. Come primo algoritmo abbiamo
presentato l’algoritmo FEPE (Frequency Estimation through Phase Estimation),
confrontato poi con il tradizionale algoritmo a massima verosimiglianza (ML). Infine
abbiamo introdotto una versione modificata dell’algoritmo di Rife e Boorstyn, adatto
sempre alla struttura del frame utilizzata.
Infine, nelle Appendici vengono riportati i codici sorgente C++ delle
simulazioni svolte in questo lavoro di tesi.
- 3 -
CAPITOLO 1
Stima di frequenza
1.1 Introduzione
In questo capitolo introdurremo alcuni algoritmi per la stima della frequenza della
portante ad anello aperto. Inizialmente descriveremo il modello del segnale che
utilizzeremo per la trattazione di tali algoritmi. Faremo una distinzione tra tre tipi
diversi di stimatori: stimatore di Rife e Boorstyn basato sulla funzione di
verosimiglianza; stimatori basati sul criterio dei minimi quadrati e infine stimatori
basati sulla funzione di autocorrelazione.
- 5 –
Capitolo 1
1.2 Stima di frequenza ad anello aperto
1.2.1 Modello del segnale
Prima di affrontare il problema dei metodi di stima di frequenza ci soffermiamo sul
modello del segnale che utilizzeremo in questo studio. La modulazione è di tipo PSK
(Phase Shift Keing) e il rumore è modellato come un processo aleatorio AWGN
(Additive White Gaussian Noise) con densità spettrale di potenza bilatera pari a N
0
/2.
Nella PSK i simboli di modulazione sono uniformemente distribuiti su una
circonferenza di raggio unitario quindi, indicato con C l’alfabeto a cui appartengono i
suddetti simboli possiamo scrivere : C =
( )
{}
: 0, 2 / ,..., 2 -1 /
j
M MM M
e
ϕ
ϕπ π= .
Supponiamo che il filtraggio del canale sia equamente distribuito tra trasmettitore e
ricevitore e che la risposta complessiva del canale sia di Nyquist in assenza di errori
di frequenza. Il recupero del clock è ideale e di conseguenza si riescono ad ottenere
prestazioni non fortemente degradate anche in presenza di offset di frequenza
normalizzati all’intervallo di simbolo dell’ordine del 10-20% del symbol rate. In
queste condizioni, lo capiremo meglio in seguito, i campioni in uscita dal filtro
adattato possono essere scritti come:
()
( )
()
2jkT
k
x kce nk
πν θ+
= (1.2.1.1)
dove sono i simboli della costellazione, rappresenta l’offset di frequenza
della portante da stimare, T è il tempo di simbolo, è la fase della portante che è
uniformemente distribuita nell’intervallo
{}
k
c ν
θ
)
0, 2π
⎡
⎣
, e infine sono i campioni di
rumore complessi, con parte reale e immaginaria indipendenti a media nulla e
varianza
(){
nk
}
( )
1
2
0
//2
s
ENσ
−
= , dove
s
E è l’energia del segnale per simbolo.
Come è già stato accennato precedentemente, l’espressione (1.2.1.1) vale solo nel
caso in cui il canale sia effettivamente di Nyquist. Questo non è generalmente vero in
presenza di offset di frequenza. Infatti un’ espressione più precisa dei campioni
all’uscita del filtro adattato è la seguente:
- 6 -
Stima di frequenza
() ()
( )
()
( )
()
22
0
jkT jiT
ik
x khce hkiTce nk
πν θ πν θ+
≠
+
⎡ ⎤
= − +
⎣⎦
∑
(1.2.1.2)
dove
( )
ht è
() () ( )
2jt
ht gte g t
πν
⎡ ⎤
⊗−
⎢ ⎥
⎣ ⎦
(1.2.1.3)
e è la risposta impulsiva del filtro di trasmissione. Supponiamo che
()
gt
( )
ht sia di
Nyquist per , cioè 0ν =
(1.2.1.4)
() ( )
10
|
00
tkT
k
gt g t
k
=
⎧
=
⎪
⎪
⊗− =
⎨
⎪
≠
⎪⎩
Confrontando le due espressioni di
( )
x k , si nota che esse coincidono per piccoli
valori dell’offset di frequenza. In altre parole, le due espressioni differiscono per la
presenza nella (1.2.1.2) di ISI (interferenza intersimbolica). Nel seguito quindi, per
le assunzioni fatte, adotteremo il modello (1.2.1.1).
È evidente che quest’ultimo dipende dalla modulazione. Poiché molti algoritmi per la
stima di frequenza sono stati proposti per portanti non modulate, occorre procedere
alla rimozione della modulazione dal segnale ricevuto. A tal fine, esistono due
differenti approcci, i quali dipendono dalla conoscenza o meno dei simboli trasmessi
. Nel primo caso si parla di algoritmo DA (Data-Aided) e consiste nell’andare a
moltiplicare la (1.2.1.1) per :
{}
k
c
*
k
c
() ()
*
k
z kxkc= (1.2.1.5)
da cui, considerando che i simboli hanno modulo unitario, si ottiene:
k
c
()
( )
()
2jkT
zk e wk
πν θ+
= (1.2.1.6)
- 7 -
Capitolo 1
dove è una sequenza di rumore statisticamente equivalente a .
() ()
*
k
wk nkc
(){}
nk
La (1.2.1.6) non è altro che una sinusoide immersa nel rumore. Discuteremo, in
seguito, come stimare la frequenza osservando
(){}
z k .
Nel caso in cui non si conoscono i simboli trasmessi (NDA-Non Data Aided), la
modulazione può essere rimossa andando ad applicare una non-linearità ai campioni
( )
x k . Per semplicità in questo studio applicheremo una non-linearità di questo tipo:
()
( )argjMxk
zk e
⎡ ⎤
⎣ ⎦
= (1.2.1.7)
dove M è il numero di simboli della costellazione. L’espressione (1.2.1.7) può essere
anche scritta come:
()
( )2
k
jM kT
zk e
πν θ η++
= (1.2.1.8)
dove
()
'
arg 1
k
nkη
⎡ ⎤
+
⎢ ⎥
⎣ ⎦
(1.2.1.9)
() ()
( )2
'
jkT
nk wke
πν θ− +
(1.2.1.10)
In questo caso abbiamo ancora una sinusoide, ma con frequenza M volte più grande
rispetto a quella in (1.2.1.6) e
( )
z k è affetto da un disturbo di fase non-Gaussiano. È
interessante vedere che cosa succede ad alti SNR. A questo proposito riscriviamo la
(1.2.1.6) nella seguente forma:
(1.2.1.11)
() ()
'(2
1
jkT
zk n k e
πν θ− +
⎡⎤
=+
⎢⎥
⎣⎦
)
o analogamente
() ()
( )2
'
1
k
jkT
zk n k e
πν θ η− ++
=+ (1.2.1.12)
- 8 -
Stima di frequenza
L’ampiezza
( )
'
nk diventa più piccola al crescere di
0s
ENe la (1.2.1.12) tende alla
(1.2.1.8) con 1M = . In altre parole, ad alti SNR il modello dato dalla (1.2.1.8) vale
sia per operazioni DA che NDA ponendo 1M = .
1.3 Algoritmo di Rife e Boorstyn
Dopo aver stabilito il modello del segnale, in questa sezione ci concentriamo sugli
algoritmi per la stima di frequenza. In particolare inizieremo con quello proposto da
Rife e Boorstyn in [R&B74], trattando separatamente i due casi DA e NDA, visti
precedentemente.
1.3.1 R&B Data Aided
Nell’ipotesi di aver verificato la (1.2.1.6), possiamo affermare che la stima a
massima verosimiglianza di corrisponde al valore che rende massimo il modulo
della funzione
ν
() ()
1
2
0
1
o
L
jfkT
k
o
Zf zke
L
π
−
−
=
∑
(1.3.1.1)
dove indica la lunghezza dell’osservato. Lo stimatore R&B è dato da
o
L
()
arg max
f
Z fν =
(1.3.1.2)
Dalla (1.3.1.2) è evidente che ν
non dipende dalla fase della portante, e inoltre che
()
Z f è periodica di periodo 1 T . Questo implica che le stime, date dalla (1.3.1.1),
sono ambigue di multipli del symbol rate e di conseguenza che la frequenza viene
stimata correttamente sull’intervallo
( ) ( )
12 ,12TT
⎡ ⎤
−
⎣ ⎦
.
- 9 -
Capitolo 1
La localizzazione del massimo di
()
Z f diventa difficile a bassi rapporti segnale-
rumore. Le Fig.1.3.1.1-1.3.1.2 rappresentano una tipica realizzazione di
( )
Z f nelle
stesse condizioni ma a rapporti segnale-rumore diversi.
0.0 0.5-0.5
Figura 1.3.1.1-Realizzazione di
()
Z f a
0s
EN=10 dB
0.0 0.5-0.5
Figura 1.3.1.2-Realizzazione di
()
Z f a
0s
EN= -10 dB
- 10 -
Stima di frequenza
Nel primo caso si ha
0s
EN=10 dB, nel secondo
0s
EN=-10 dB. Confrontando le
due figure, è evidente che a 10 dB attraverso la funzione
( )
Z f siamo in grado di
stimare l’offset di frequenza (normalizzato) semplicemente ricercando l’ascissa che
corrisponde al massimo di tale funzione. Mentre a bassi
0s
EN ci si trova di fronte a
una funzione che ha diversi massimi locali, quindi una ricerca esatta del massimo
assoluto non può essere fatta. In entrambi i casi comunque, la ricerca viene fatta in
due passi: una prima fase detta corse search e in seguito fine search.
Al primo passo si calcola la funzione
()
Z f in corrispondenza di un set discreto di
valori di f, determinando, quindi, il valore di f che ne massimizza il modulo. A questo
punto si fa una ricerca più fine (fine search) interpolando dei valori di
( )
Z f
nell’intorno del massimo, Fig. (1.3.1.3).
Interpolation
Figura 1.3.1.3- Interpolazione nella ricerca del massimo della |Z(f)|
In alcuni casi
( )
Z f sarà talmente distorto dal rumore che avrà un massimo molto
lontano dal valore vero dell’offset di frequenza. Quando questo accade l’algoritmo
R&B commette errori molto grandi (outliers). Il valore di
0s
EN, al di sotto del
quale si hanno molti errori di stima, viene detto soglia dello stimatore.
- 11 -
Capitolo 1
Nella pratica la corse search può essere eseguita efficientemente utilizzando la Fast
Fourier Transform (FFT). Ricordiamo, per prima cosa, la definizione della
trasformata discreta di una sequenza
( )
z k :
() ()
1
2
0
1
0,..., 1
kn
N
j
N
k
Zn zke n N
N
π
−
−
=
= −
∑
(1.3.1.3)
e corrisponde ai valori della trasformata di Fourier della stessa sequenza calcolata nei
punti
,
22
n
nN
fn n
NT
= ∈−≤<Z
N
(1.3.1.4)
La FFT non è altro che una trasformata di Fourier calcolata per sequenze di
lunghezza pari a potenze di 2, . Per aumentare la risoluzione dela FFT
usiamo la tecnica dello zero-padding che consiste nell’aggiungere artificialmente
degli zeri in coda alla sequenza fino a raggiungere una lunghezza pari a . Si
ottiene, così, la nuova sequenza:
2
m
N =
KN
(1.3.1.5)
()
()
'
01
1
0
o
oo
kL
zk
zk
LkLK
⎧
≤≤−
⎪
⎪
⎨
⎪
≤≤ −
⎪⎩
dove K è il fattore di pruning. La FFT di è calcolata nei punti:
()
{
'
zk
}
22
o
n
o
KL KLn
f
KL T
= −≤<
o
n (1.3.1.6)
per creare la sequenza
( ){ }
n
Z f . Infine, il massimo di
()
n
Z f fornisce la stima
grossolana della frequenza. Dalla (1.16) è chiaro che i campioni
()
n
Z f si
infittiscono al crescere di K e ciò fa migliorare la precisione della stima. In genere
2K = è sufficiente con intervalli di osservazione lunghi ( ) mentre è
necessario scegliere per intervalli più brevi.
256N >
4K ≥
- 12 -