Sezione 15.1: Trasmissione su canale numerico Su Capitolo 15: Trasmissione dati in banda base Sezione 15.3: Equalizzazione 

15.2 Scelta dell’impulso dati

Fino ad ora si è ragionato sulla base di un segnale dati generato secondo lo schema del § 15.1.2, in cui l’impulso g(t) è definito come g(t) = rectτ(t), mentre nei sistemi di comunicazione questa è solamente una di diverse alternative, i cui criteri di scelta andiamo ora ad illustrare.

15.2.1 Codici di linea a banda infinita

Come anticipato al § 15.1.2 il grafico dello spettro di densità di potenza PX(f) = σ2AEg(f)Ts di un segnale dati dipende direttamente[728]  [728] In realtà al § 7.7.4 si mostra come il risultato possa essere un po’ diverso nel caso di simboli statisticamente dipendenti e/o non a media nulla. da quello dello spettro di densità di energia Eg(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 eq. (10.58) a pag. 1), che come noto si estingue come 1f2, 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 o perfetto, e quindi capace di riprodurre il segnale inalterato.
figure f4.201.png
La figura a lato mostra lo spettro di densità di potenza Px(f) calcolato per f che va da zero fino al doppio di fb, per un segnale dati binario che ricade in una delle categorie illustrate di seguito, dette codici di linea. Il risultato è ottenuto generando i valori (0 o 1) per 400 simboli binari ak in modo pseudo-casuale[729]  [729] La non perfetta indipendenza statistica dei simboli prodotti dal generatore di numeri casuali di un computer si può riflettere su di una ridotta generalità del risultato mostrato, che tuttavia rispecchia molto bene i casi reali., campionando il segnale dati (21.1) con 16 campioni per periodo di bit, e valutando con questi una stima spettrale[730]  [730] Ottenuta applicando ai dati una finestra triangolare (§ 3.8.4) e quindi valutando il periodogramma (§ 7.3.1). .
Ogni scelta per il codice di linea a cui corrisopnde una diversa definizione di impulso g(t) ha particolari proprietà, e può essere usato per trasmettere informazioni di natura binaria sotto determinate condizioni. Elenchiamo quindi caratteristiche e proprietà di tali scelte, con riferimento agli esempi riportati in figura 15.12.
Codici unipolari
Sono realizzati come segnali sbilanciati,[731]  [731] Viene detto sbilanciato un segnale trasmesso mediante un collegamento (ad es. su rame) in cui uno dei due conduttori è connesso a massa ad entrambe le estremità, dando luogo ad una maggiore sensibilità a fenomeni di induzione elettromagnetica relativi ad altri segnali in transito nelle vicinanze (vedi diafonia a pag. 1), e dunque ad un peggiore SNR rispetto ai segnali (e collegamenti) bilanciati - .vedi ad es. https://it.wikipedia.org/wiki/Linea_bilanciata. e codificano i due livelli logici 0 ed 1 rispettivamente con un valore nullo, od un valore positivo.
figure f4.16.png
Figure 15.12 Forme d’onda di esempio associate ai codici di linea descritti nel testo
Codici bipolari
Usano segnali bilanciati o antipodali, e sono ricevuti mediante uno stadio di ingresso differenziale[732]  [732] Vedi https://it.wikipedia.org/wiki/Amplificatore_differenziale, riducendo la sensibilità al rumore. In funzione del tipo di codice, è possibile garantire l’assenza di una componente continua nel segnale.
Codici differenziali
Sono ancora di tipo bipolare, ma la forma d’onda non è più legata al valore di un solo bit, bensì dipende da quello di due bit contigui (vedi anche § 16.4). Ciò permette di risolvere l’ambiguità che si determina qualora si scambino tra loro gli estremi del collegamento[736]  [736] In tal caso tutti gli zeri diventerebbero uni e viceversa, mentre con la codifica differenziale questo viene evitato..

15.2.2 Segnale dati limitato in banda

Discutiamo ora come la scelta di un impulso g(t) non rettangolare permetta di ridurre l’occupazione di banda del relativo segnali dati, indipendentemente dalla codifica multilivello.

15.2.2.1 Requisiti per l’impulso di trasmissione

Organizziamo il ragionamento analizzando ordinatamente i requisiti che deve avere l’impulso g(t) per soddisfare tre diverse esigenze parzialmente contrapposte, anticipando che la soluzione sarà necessariamente una forma di compromesso.
Limitazione di banda
Al § 15.1.2 abbiamo osservato che (sotto opportune condizioni) il segnale dati (21.1) ha densità di potenza pari a Px(f) = σ2A |G(f)|2Ts (eq. (21.2)), e la sua ricezione inalterata è possibile solo se x(t) è trasmesso per il tramite di un canale perfetto (pag. 243). Se al contrario la banda del segnale eccede quella del canale gli effetti di distorsione lineare non sono trascurabili e gli impulsi g(t) si deformano[737]  [737] Come mostrato al § 15.1.2.2, il segnale dati filtrato è basato su impulsi ~g(t) = g(t) * h(t), con una durata pari alla somma delle durate di g(t) e h(t). Pertanto, anche se g(t) è limitato nel tempo, come nei casi descritti al § 15.2.1, l’impulso ~g(t) si può estendere a valori di t > Ts. Considerando ad esempio la trasmissione di soli due simboli a0 ed a1, si otterrebbe x(t) = a0~g(t) + a1~g(t − Ts), e dunque x(Ts) = a0~g(Ts) + a1~g(0) dipenderà da entrambi i simboli anziché solamente da a1, osservando quindi un errore pari a a0~g(Ts), detto appunto interferenza tra simboli., causando problemi di interferenza tra simboli (ISI).
figure f4.100a.png
Ad esempio adottando g(t) =  rectτ(t) con τ ≤ Ts il relativo spettro di ampiezza G(f) = τ sinc(fτ) presenta il primo passaggio per zero a frequenza 1τ ≥ 1Ts = fs, e la densità di potenza Px(f) può essere considerata nulla solo dopo diversi multipli di tale valore.
Limitazione nel tempo
figure f4.100b.png
Il problema della limitazione di banda potrebbe essere risolto adottando un impulso elementare di tipo g(t) =  sinc(fst) che, essendo fs = 1Ts, ha trasformata G(f) = Ts ⋅ rectfs(f) strettamente limitata nella banda |f| < fs2: in tal caso se il canale presenta un comportamento ideale in tale (limitato) intervallo di frequenze il segnale dati non subisce alterazioni. Ma lo svantaggio di adottare una forma d’onda g(t) limitata in frequenza è che la stessa è illimitata nel tempo, e dunque l’impulso può essere realizzato[738]  [738]  Il requisito di causalità h(t) = 0 per t < 0 (pag. 1) a cui deve sottostare qualsiasi sistema fisico impedisce infatti di realizzare un filtro la cui risposta impulsiva g(t) abbia una estensione temporale illimitata: per avvicinarsi al risultato desiderato occorre implementare il filtro adottando al posto di
g(t) una sua versione ritardata e limitata g(t) = g(t − TR) con t ≥ 0 e g(t) = 0 altrimenti, come in figura.
figure f4.10c.png
Se TRTs, l’entità dell’approssimazione è accettabile, ed equivale ad un semplice ritardo pari a TR; d’altro canto, quanto maggiore è la durata della risposta impulsiva, tanto più difficile (ossia costosa) risulta la realizzazione del filtro relativo.
solo in modo approssimato!
Notiamo ora che con questa scelta g(t) passerebbe da zero per t = nTs e quindi non provocherebbe interferenza tra i simboli collocati agli istanti nTs, come verificabile notando che in tal caso l’espressione (21.1) risulta del tutto simile alla (10.66) relativa alla ricostruzione cardinale di un segnale campionato.
Limitazione di precisione
Contrariamente al caso del campionamento, ora non siamo interessati al valore del segnale negli istanti intermedi a quelli a cui sono centrati i simboli, e desideriamo unicamente recuperare i valori originali ak. D’altra parte anche ammettendo di poter adottare una g(t) =  sinc(fst) il recupero degli ak può avvenire solamente campionando il segnale dati x(t) esattamente agli istanti t = nTs,
figure f4.100c.png
dato che al di fuori di tali istanti il valore del segnale dipende dal valore delle code degli impulsi g(t) centrati sugli altri simboli[739]  [739] Al contrario, se g(t) =  rectTs(t), il campionamento può avvenire ovunque nell’ambito del periodo di simbolo, ma si torna al caso di elevata occupazione di banda. come mostrato in figura, in cui la linea spessa rossa rappresenta il segnale dati x(t) risultato della somma dei contributi di termini ak sinc(fs(t − kTs)) con ak = ±1. L’orologio (clock) del ricevitore deve quindi comandare il campionatore esattamente agli istanti kTs, e non in anticipo o in ritardo, perché altrimenti si verifica isi, tanto maggiore e da parte di tanti più simboli anche lontani, quanto più lentamente si attenuano le code della g(t). Dato però che nessun oscillatore ha una precisione infinta e che anzi i metodi di sincronizzazione (§ 15.7) presentano piccole variazioni (jitter) della loro frequenza, occorre ricercare una soluzione per g(t) che pur rimanendo limitata in banda presenti oscillazioni di ampiezza ridotta, in modo da tollerare meglio modesti errori di precisione nella determinazione degli istanti di campionamento.
Riepilogando
Vorremmo soddisfare contemporaneamente le esigenze
  1. occupare una banda contenuta;
  2. ricorrere ad un filtro con g(t) di durata ridotta e quindi poco complesso;
  3. ridurre la sensibilità agli errori di campionamento.
Per i punti 2 e 3 sarebbe sufficiente adottare g(t) di tipo rettangolare producendo un segnale dati del tipo x(t) = k ak ⋅ rectτ(t − kTs), ma questo ha lo svantaggio di occupare una banda troppo elevata, che può essere ridotta ad un valore finito (punto 1) pur di accettare una durata per g(t) maggiore di Ts, come per il caso del sinc, che però ha eccessiva estensione temporale e code troppo ampie. Mostriamo ora come a partire dalla formalizzazione analitica dell’esigenza di non subire isi sia possibile ottenere una soluzione di compromesso a tutti e tre i problemi.

15.2.2.2 Criterio di Nyquist per l’assenza di ISI

Il fatto che sia un rect che un sinc permettano di evitare interferenza intersimbolica[740]  [740] Almeno, in assenza di distorsione lineare! sembra suggerire che possano essere accomunate dal soddisfare un criterio generale: infatti, sia rect che sinc sono casi particolari di impulsi che rispettano le condizioni espresse nel seguito, e che alla fine ci permettono di negoziare il compromesso necessario a soddisfare le tre esigenze espresse sopra.
Condizioni di Nyquist nel tempo
Torniamo a riferirci alla (21.1) per osservare che, affinché x(t = nTs) dipenda dal solo valore an e non dagli altri ak con k ≠ n, deve risultare
(21.3) g(t) =  1   se t = 0 0    se t = mTs  con m ≠ 0 ∀     altrove
figure f4.125.png
cond. di Nyquist nel tempo
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 (21.1) si ottiene:
x(nTs) = k akg(nTs − kTs) = k akg((n − k)Ts) = an
dato che m = n − k è un intero che vale zero solo quando k = n. Le condizioni (21.3) prendono il nome di condizioni di Nyquist per l’assenza di interferenza intersimbolo (isi) nel dominio del tempo. Se una forma d’onda g(t) soddisfa tali condizioni, allora viene detta impulso di Nyquist([741]  [741] Ad esempio, l’impulso rettangolare è di Nyquist, in quanto rectTs(t) =  1 se|t| < Ts2 0 set = kTs .).
Condizioni di Nyquist in frequenza
Dalle condizioni di Nyquist nel tempo (21.3) 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 eq. (10.61)) si ottiene:
1 = G(f) * 1Ts ⋅ Π1Ts(f) = G(f) * 1Tsk δ(f − k1Ts)
Indicando con fs = 1Ts la frequenza di simbolo, ed eseguendo la convoluzione tra G(f) e gli impulsi centrati in f = kfs, risulta infine
(21.4) k G(f − kfs) = Ts
che rappresenta la condizione in frequenza per l’assenza di interferenza intersimbolo.
figure f4.13.png
condizioni di Nyquist in frequenza
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 se G(f) manifesta simmetria dispari rispetto ad fs2. 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 fianco.

15.2.2.3 Filtro a coseno rialzato

Descrive una famiglia parametrica di filtri di Nyquist limitati in banda, detti a coseno
figure f4.151a.png
rialzato in quanto la G(f) è realizzata mediante 2 semiperiodi di coseno raccordati da una retta, come mostrato a lato. La fig. 15.19-a)([742]  [742] La fig. 16.4 a pag. 1 mostra la stessa funzione su di una scala quadratica e in decibel.) illustra l’andamento di G(f) per diverse scelte del parametro 0 < γ < 1 chiamato coefficiente di roll-off[743]  [743] Il termine roll-off può essere tradotto come “rotola fuori “., che rappresenta l’indice di dispersione del ramo di coseno attorno alla frequenza fs2, detta frequenza di Nyquist[744]  [744] Molto intimamente legata alla velocità di Nyquist definita al § 4.1 come la minima frequenza di campionamento fc = 2W per un segnale analogico di banda W, mentre la frequenza di Nyquist si riferisce invece a metà della massima frequenza di segnalazione fs2 = B per un segnale dati che transita su di un canale limitato in banda B, per motivi presto chiari. Come evidente due aspetti dello stesso fenomeno, ma in contesti differenti, vedi https://en.wikipedia.org/wiki/Nyquist_rate..
a) figure f4.14.png
b) figure f4.14a.png
Figure 15.19 a) - filtro a coseno rialzato e b) - impulso di Nyquist per fs = 0.5, variando γ
La banda occupata a frequenze positive da G(f) può quindi essere espressa in funzione di γ come
(21.5) B = fs2(1 + γ) = fb2log2L(1 + γ)
figure f4.151b.png
e varia da un minimo B|γ = 0 = fs ⁄ 2 in corrispondenza di un G(f)|γ = 0 = Ts rectfs(f) rettangolare, ad un massimo pari a B|γ = 1 = fs a cui corrisponde una
G(f)|γ = 1 = Ts2 [1 + cos(2π12fsf)] ⋅ rect2fs(f)     con |f| < fs
che rappresenta esattamente un periodo di coseno (in f) di periodo 2fs, rialzato.
Filtro a banda minima
Il caso di γ = 0 individua una G(f) = Ts rectfs(f) e come già discusso a pag. 1 corrisponde ad un impulso g(t) = sinc(fst).
figure f4.151c.png
Tale scelta viene detta a banda minima poiché non è possibile occupare una banda inferiore, dato che in tal caso non sarebbero verificate le condizioni di Nyquist in frequenza, in quanto nella (21.4) resterebbero dei “buchi”.
Abbiamo già osservato alla nota (367) a pagina 1 come la realizzazione di G(f) a banda minima sia complicata, dato che la corrispondente g(t) = sinc(fst) va a zero con t → ∞ come 1πfst, sviluppando code che si estendono su di un elevato numero di simboli adiacenti: oltre a complicare la realizzazione del filtro, ciò comporta la possibilità di introdurre notevole isi in presenza di errori negli istanti di campionamento. Ma la situazione migliora decisamente usando γ > 0, con γ via via più grande, come ora illustriamo.
Roll off γ diverso da zero
In questo caso per g(t) si può ottenere l’espressione generale[745]  [745] Non ho trovato questi passaggi già svolti in nessun posto, qualche lettore può aiutare? Tutto quel che sono riuscito a calcolare è relativo al caso γ = 1, per cui g(t) = F− 1T2[1 + cos(πTf)] ⋅ rect2T(f) che fornisce
g(t)  = T2δ(t) + 12δt − T2 + 12δt + T2 * 2T sinc2Tt =   =  sinc2Tt + 12 sinc2T t − T2 + 12 sinc2T t + T2
figure f4.144.png
che una volta graficato, conferma l’andamento di fig. 15.19. Osserviamo che per t → 12γfs il denominatore di (21.6) si annulla, ma lo stesso avviene anche per il numeratore, che in tal caso tende a cosπ2, dando luogo alla forma 00, ed il cui limite sembra tendere a poco meno di uno.
(21.6) g(t) =  sinc(fst)cos γπtfs1 − (2γtfs)2
a cui corrisponde una forma d’onda simile a sinc(fst), ma che va a zero molto più rapidamente, come verificabile osservando la parte destra di Fig. 15.19. Pertanto se γ → 1 le oscillazioni di g(t) sono molto più smorzate, ed anche in presenza di errori negli istanti di campionamento t = kTs ogni impulso estende la sua influenza ad un numero di simboli limitrofi molto ridotto rispetto al caso γ = 0.
figure f4.155a.png
figure f4.155b.png
figure f4.155c.png
figure f4.155d.png
Figure 15.23 Segnale dati e diagramma ad occhio per diversi valori di roll-off
Per verificare visivamente quanto affermato, aiutiamoci con la fig. 15.23 che in alto a sinistra mostra l’andamento di un segnale dati realizzato adottando la g(t) fornita dalla (21.6), calcolata per γ = 0.5, e per simboli ak a due valori, pari a 0 e 1. Notiamo che al di fuori degli istanti di simbolo t = kTs il segnale può assumere valori arbitrari, anche oltre la dinamica degli ak. La rappresentazione fornita dal diagramma ad occhio per questo segnale dati, mostrato in alto a destra in fig 15.23, 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. 15.23 permettono il confronto tra le scelte relative alla banda minima e massima: notiamo che nel primo caso (a destra) g(t) è un sinc, e l’apertura orizzontale dell’occhio si è ristretta, mentre nel secondo (a sinistra, con γ = 1) l’occhio è alla sua apertura massima, ed i tracciati sono quasi del tutto identici tra loro, indipendentemente dai simboli precedenti e successivi.
 Sezione 15.1: Trasmissione su canale numerico Su Capitolo 15: Trasmissione dati in banda base Sezione 15.3: Equalizzazione