8.2
Generazione del segnale dati↓
Facendo di nuovo riferimento allo schema di
generazione del segnale dati proposto al §
8.1.2↑, svolgiamo le considerazioni relative
alla scelta della forma d’onda elementare
g(t).
8.2.1
Codici di linea↓ a banda infinita
Come
anticipato, lo spettro di densità di potenza
PX(f) = σ2A(ℰG(f))/(Ts) di un segnale dati ha
andamento che dipende direttamente
da quello dello spettro di densità di energia
ℰG(f)
della risposta impulsiva
g(t) usata nel formatore di impulsi, e
dunque nel caso in cui
g(t) = rectτ(t) si ottiene che
PX(f) ha andamento di tipo
sinc2(fτ)
(vedi fig.
3.16↑
pag.
1↑), che
come noto si estingue come
1⁄f2,
con il primo zero per
f = 1⁄τ.
Nel caso in cui si operi a bassa velocità (ossia con
τ
sufficientemente grande), si può considerare il canale come se fosse
a
banda infinita, e quindi capace di riprodurre il segnale
inalterato.
La figura a lato mostra lo spettro di densità di energia
ℰG(f)
corrispondente alla scelta di alcune delle forme d’onda
g(t)
discusse nel seguito, e mostrato per frequenze fino al doppio di
fb. Gli andamenti
riportati in figura sono ottenuti generando i valori (0 o 1) per 400
simboli binari
ak
in modo pseudo-casuale, campionando il segnale dati (
10.58↑) con 16 campioni per periodo di bit, e
valutando con questi una
stima spettrale . Ogni particolare
g(t) dà origine alla definizione di un
codice
di linea corrispondente, usato nella pratica per trasmettere
informazioni di natura binaria. Elenchiamo di seguito caratteristiche e
proprietà di tali segnali, aiutandoci con gli esempi riportati in
figura.
Sono associati a segnali sbilanciati, e
presentano un valore nullo o diverso da zero per i due livelli logici 0 ed 1.
- NRZ ↓ o No Return to
Zero: il suo nome significa che il segnale “non torna a zero”
per tutto il periodo di bit, essendo g(t) = rectTb(t);
pertanto ha spettro di tipo sinc(fTb),
con il primo zero a f = 1 ⁄ Tb,
e presenta una componente continua. Rimane costante per dati costanti
e ciò complica la sincronizzazione (§ 8.6↓) del clock del ricevitore, data
l’assenza in questo caso di transizioni; la presenza di uno zero ad f = 1 ⁄ Tb
aggrava inoltre la situazione.
- RZ↓
o Return to Zero: in questo caso l’impulso g(t)
ha durata pari a Tb ⁄
2, il segnale presenta (a parità di ampiezza) minore energia
di NRZ, mentre lo spettro presenta una componente pronunciata
esattamente a frequenza fb,
agevolando la sincronizzazione sul bit ma occupando una banda
maggiore. Il segnale si mantiene però costante per lunghe sequenze di
zeri.
Usano segnali bilanciati, e sono ricevuti
mediante uno stadio di ingresso differenziale,
riducendo la sensibilità al rumore. In funzione del tipo di codice, è
possibile garantire l’assenza di una componente continua nel segnale.
- NRZ polare, RZ polare: realizzano
l’impulso con polarità negativa quando associato ad un bit pari a
zero, e presentano media nulla solo se i valori 0
ed 1 sono equiprobabili. RZ polare non
è mai costante, facilitando il compito della sincronizzazione.
- Manchester↓ o
Diphase NRZ: realizza una codifica di fase, in
quanto usa un impulso RZ a piena dinamica, in salita od in discesa,
corrispondentemente ai bit 1 e 0.
Per questo motivo il segnale risulta sempre a media nulla.
L’occupazione spettrale è intermedia tra il caso NRZ ed RZ, dato che
la durata dell’impulso può essere Tb
o Tb⁄2. L’uso del codice
Manchester è prescritto dallo standard ieee
802.3 per le LAN a bus con contesa di accesso cdma/cd
(vedi § 18.1.4↓).
- AMI o Alternate Mark Inversion↓: codifica gli 1 con polarità alternate, mediante un
impulso g(t) rettangolare di estensione Tb o Tb
⁄ 2, e gli zeri con assenza di segnale, garantendo assenza di
valore medio. Qualora la logica sia invertita (impulsi per gli zeri, e
silenzio per gli uni) il codice prende il nome di pseudo-ternario.
Da un punto di vista spettrale, l’AMI esibisce una occupazione di
banda ridotta rispetto a RZ, per via dei
periodi silenti corrispondenti agli zeri. Se il periodo silente è
prolungato, l’assenza di transizioni può compromettere la
sincronizzazione di bit, e per questo motivo sono stati definiti
ulteriori codici derivati, come ad esempio l’HDB3.
↓
Sono ancora di tipo bipolare, e la forma d’onda
non è più legata al solo valore dei bit, ma anche alla loro relazione
temporale (vedi anche §
14.4↓). Ciò permette di risolvere l’ambiguità
presente qualora si scambino le polarità degli estremi del collegamento.
- NRZI: deriva dall’NRZ, e la I sta per Inverted.
Ora il livello del segnale permane nello stesso stato per i bit pari
ad uno, e cambia stato per i bit pari a zero. L’assenza di valor medio
è legata alla statistica che descrive le sequenze di uni e dunque non
può essere garantita, mentre permangono i problemi legati alla
sincronizzazione. La ridotta occupazione spettrale lo rende però
interessante.
- Manchester Differenziale: usa un impulso RZ a piena
dinamica come per il Manchester, ma la polarità risulta invertita
rispetto al bit precedente se il nuovo bit è uno, mentre è mantenuta
nel caso arrivi un zero (in corrispondenza delle frecce); pertanto, in
presenza degli uni non si verifica transizione al confine tra i
periodi di bit. Questa soluzione è utilizzata nel contesto dello
standard ieee 802.5 per LAN Token
Ring. L’occupazione spettrale è simile a quella osservabile per
la codifica Manchester.
8.2.2
Segnale dati↓
limitato in banda
Analizziamo ora i requisiti necessari per
l’impulso g(t) in modo da realizzare un segnale
dati che impegni una banda strettamente limitata, ed evidenziando le
alternative di progetto.
8.2.2.1
Requisiti per l’impulso di trasmissione
Abbiamo
già osservato (vedi §
8.1.2↑)
che (sotto opportune condizioni) la densità di potenza del segnale dati
risulta pari a
Px(f) = σ2A(|G(f)|2)/(T) (eq.
(10.58↑)), e la sua trasmissione inalterata è
possibile solo qualora sia inviato attraverso un
canale perfetto
(pag.
120↑),
ovvero la cui risposta in frequenza presenti modulo costante e fase
lineare nella banda di frequenze occupata da
G(f).
Se al contrario la banda del segnale eccede quella del canale, gli
effetti di distorsione lineare introdotti su (
10.58↑) non sono trascurabili, e gli impulsi
g(t)
si deformano (vedi §
8.1.2.2↑);
in particolare, possono estendersi per una durata maggiore di
Ts,
causando problemi di
interferenza tra simboli (ISI).
Ad esempio, nel caso in cui si adotti g(t) = rectτ(t), allora G(f) = τsinc(fτ), con τ
≤ Ts; pertanto, il primo passaggio per
zero è a frequenza (1)/(τ)
≥ (1)/(Ts), e la densità di potenza Px(f)
può essere considerata nulla solo dopo diversi multipli di tale valore.
Il
problema della limitazione di banda potrebbe essere risolto adottando un
impulso elementare di tipo
g(t) = sinc(t⁄Ts), che ha trasformata
G(f) = Ts⋅rect1⁄Ts(f)
strettamente limitata in banda, dato che la massima frequenza è
W
= 1⁄2Ts:
in tal caso il segnale dati non subisce alterazioni se il canale
presenta un comportamento ideale in tale (limitato) intervallo di
frequenze. Notiamo ora che questo particolare
g(t)
passa da zero per
t = nTs,
e quindi non provoca interferenza tra i simboli collocati agli istanti
nTs, come
verificabile notando che in tal caso l’espressione (
10.58↑) risulta del tutto simile alla (
8.21↑) relativa alla ricostruzione
cardinale
di un segnale campionato; ora però
non siamo interessati al
valore del segnale negli istanti che intercorrono tra quelli in cui sono
centrati i simboli, mentre desideriamo unicamente recuperare i singoli
valori originali, che troviamo
in modo esatto agli istanti
t = nTs.
Lo svantaggio di adottare una forma d’onda g(t)
limitata in frequenza, è che il suo andamento è illimitato nel tempo, e
dunque g(t) può essere realizzata solo in modo
approssimato.
Limitazione
di precisione
Abbiamo appena mostrato come, adottando una g(t)
= sinc(t⁄Ts), si evita l’interferenza tra
simboli, purché i campioni vengano prelevati esattamente agli
istanti nTs ().
Infatti, al di fuori di tali istanti il valore del segnale dipende dal
valore delle code degli impulsi g(t) centrati sugli altri simboli.
L’orologio (
clock) del ricevitore, però,
non ha una precisione infinita, e gli istanti di campionamento
↓
saranno affetti da errori di fase. Pertanto, è interessante ricercare
una soluzione per
g(t) che, anche in presenza di errori di
precisione nella determinazione degli istanti di campionamento, dia
luogo ad errori quanto più ridotti possibile.
vorremmo
soddisfare contemporaneamente le esigenze:
- occupare una banda contenuta;
- ricorrere ad un filtro poco complesso;
- ridurre la sensibilità agli errori di campionamento.
Per i punti 2 e 3, è sufficiente adottare g(t)
di tipo rettangolare, generando un segnale dati del tipo x(t) = ∑kak⋅rectτ(t
− kTs),
che ha lo svantaggio di occupare una banda infinita, e quindi la sua
ricezione inalterata è possibile solo per canali ideali.
Prima di esporre una soluzione di compromesso a
tutti e tre i problemi, consideriamo che la trasmissione di
x(t)
su di un canale non ideale
H(f) determina un effetto di cui al §
8.1.2.2↑
abbiamo tenuto conto, considerando di ricevere un segnale dati
caratterizzato da un impulso
g’(t) = g(t)*h(t). Pertanto, nel caso in cui
H(f)
sia noto a priori, i risultati che troveremo (validi per
g’(t))
individueranno in realtà un formatore di impulsi con
G(f) = (G’(f))/(H(f)). Qualora viceversa l’
H(f)
non sia nota a priori, l’eventuale
isi
introdotta potrà essere contrastata adottando tecniche di equalizzazione
(§
15.4↓)
al lato ricevente.
8.2.2.2
Condizioni di Nyquist↓
Con questo termine individuiamo i requisiti che devono essere
soddisfatti dagli impulsi usati per generare un segnale dati privo di
interferenza intersimbolica.
Torniamo a riferirci alla (
10.58↑) per osservare che, affinché
x(t)|t
= nTs dipenda dal solo valore
an e non dagli
altri
ak con
k ≠ n, deve risultare
e cioè
g(t) deve passare da zero in tutti gli
istanti multipli di
Ts,
tranne che per
t = 0 dove deve
valere
1, mentre per valori di
t
intermedi può assumere qualunque valore. In tal caso infatti dalla
(10.58↑) si ottiene:
x(nTs) = ⎲⎳kak⋅g(nTs − kTs) = ⎲⎳kak⋅g((n − k)Ts)
= an
Le condizioni (
10.60↑) prendono il nome di
condizioni di
Nyquist per l’assenza di interferenza intersimbolo (
isi↓↓,
Inter Symbol Interference) nel dominio del
tempo. Se una
forma d’onda
g(t) soddisfa tali condizioni, allora
viene detta
impulso di Nyquist↓().
Dalle condizioni di Nyquist
nel tempo (10.60↑)
se ne derivano altre
in frequenza, mediante i seguenti passaggi.
Moltiplicando
g(t) per un treno di impulsi
πTs(t) = ∑kδ(t − kTs), si ottiene
g(t)⋅πTs(t) = δ(t)
dato che
g(nTs) = 0 e
g(0) = 1.
Trasformando (vedi §
3.8.3↑)
si ottiene:
1 = G(f)*(1)/(Ts)⋅Π(1)/(Ts)(f) = G(f)*(1)/(Ts)⋅ ⎲⎳kδ⎛⎝f
− k(1)/(Ts)⎞⎠
Indicando con
fs = (1)/(Ts) la frequenza di simbolo,
ed eseguendo le convoluzioni tra
G(f) e gli impulsi centrati in
f
= kfs, risulta infine
che rappresenta la condizione
in frequenza per l’assenza di
interferenza intersimbolo. Il risultato ottenuto si interpreta
considerando che una qualunque
G(f) va bene purché, se sommata con le
sue repliche traslate di multipli di
fs,
dia luogo ad una costante, ovvero
G(f)
manifesta simmetria dispari rispetto ad
fs⁄2.
In tal caso
G(f) può essere descritta come la
risposta in frequenza di un
filtro di Nyquist↓.
Notiamo che, seppure
G(f) possa essere qualsiasi, anche non
limitata in banda, il nostro interesse è appunto per le
G(f)
limitate in banda, come quella triangolare dell’esempio a lato.
8.2.2.3
Filtro a coseno rialzato
↓
Individua una famiglia parametrica di filtri di
Nyquist limitati in banda, e viene detto a
coseno rialzato in
quanto
è composto da 2 archi di coseno, raccordati da una retta,
come mostrato in Fig.
8.12↓(). La banda occupata a
frequenze positive ha espressione
in cui
γ è chiamato
coefficiente
di roll-off,
è compreso tra 0 e 1, e rappresenta l’indice di dispersione del ramo di
coseno. La banda di
G(f) varia quindi da un minimo (per
γ = 0) pari a
B
= fs ⁄ 2, con
G(f)|γ
= 0 = Tsrectfs(f)
rettangolare, ad un massimo (per
γ = 1)
pari a
B = fs
e con
G(f)|γ = 1 = (Ts)/(2)⎡⎣1 + cos⎛⎝2π(1)/(2fs)f⎞⎠⎤⎦⋅rect2fs(f),
che è proprio un periodo di coseno
rialzato.
Il caso di
γ = 0
viene quindi detto
a banda minima
↓, e corrisponde ad un impulso
g(t)
= sinc(fst), come già
discusso a pag.
1↑
in relazione ai requisiti di limitazione nel tempo. Occupare una banda
inferiore a quella minima non è possibile, perché in tal caso non
sarebbero verificate le condizioni di Nyquist in frequenza, in quanto
nella
(10.61↑)
resterebbero dei “buchi”. Abbiamo già osservato alla nota (
137↑) a pagina
1↑ come la realizzazione di
G(f)
a banda minima sia complessa, mentre l’inviluppo di ampiezza per
g(t) con andamento
(1)/(πfs) determina code che si
attenuano lentamente, e la possibilità di introdurre notevole
isi
in presenza di errori negli istanti di campionamento. La situazione però
migliora decisamente usando
γ > 0,
con
γ via via più grande.
Se
γ ≠ 0,
per
g(t) si può ottenere l’espressione generale
a cui corrisponde una forma d’onda simile al
(sin(x))/(x), ma che va a zero molto
più rapidamente, come verificabile osservando la parte destra di Fig.
8.12↑. Pertanto,
se
γ → 1 ogni singola onda
g(t − kTs)estenderà la sua
influenza ad
un numero di impulsi limitrofi
molto ridotto rispetto al caso
γ = 0, in quanto le oscillazioni sono
molto più smorzate, e dunque il termine di errore di ampiezza in
presenza di un errore di istante di campionamento è ridotto, dato che
dipende da un minor numero di impulsi limitrofi.
La fig
8.13↑
mostra in alto a sinistra l’andamento del segnale dati con
g(t)
fornito dalla (
10.63↑), calcolata per
γ
= 0.5, e per
ak
a due valori, pari a
0 e
1.
Notiamo che, al di fuori degli istanti caratteristici
t
= kTs il segnale può assumere valori
arbitrari, anche esterni alla dinamica degli
ak.
La rappresentazione fornita dal relativo diagramma ad occhio, mostrato
in alto a destra in fig
8.13↑,
permette di valutare meglio la precisione di temporizzazione che è
necessaria per evitare
isi, e che è
pari a metà della
apertura orizzontale↓
dell’occhio.
Gli ultimi due diagrammi nella parte inferiore di fig.
8.13↑ permettono il confronto con i casi
rispettivamente a banda minima e massima (per
γ
= 1), evidenziando l’influenza del roll-off.