Professional Documents
Culture Documents
Trasmissione Numerica II
Emanuele Viterbo
8 gennaio 2002
Indice
1 Introduzione 3
1.1 Il canale AWGN e il rumore termico . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Modulazioni numeriche senza memoria . . . . . . . . . . . . . . . . . . . . . . . 4
6 Codici convoluzionali 26
6.1 Concetti generali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
6.2 Decodifica con l’algoritmo di Viterbi . . . . . . . . . . . . . . . . . . . . . . . . . 27
6.3 Calcolo delle prestazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1
7 Esercizi sui codici convoluzionali 33
7.1 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
7.2 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
7.3 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
7.4 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2
Capitolo 1
Introduzione
Questa esercitazione è un ripasso di alcuni concetti fondamentali del corso di Trasmissione Nu-
merica I, che verranno utilizzati nel seguito di questo corso. Il contenuto di questa esercitazione si
trova sul libro di testo consigliato nel paragrafo 6.5 e nei capitoli 7 e 9.
Jop` j @liaR qratsLdc
è detto costellazione di segnali del modulatore. Il termine di modulazione senza memoria è riferito
al fatto che per ogni intervallo di simbolo viene emesso un segnale che dipende esclusivamente dal
simbolo di ingresso in quell’intervallo. Nella pratica vengono anche utilizzate le modulazioni con
memoria in cui il segnale emesso dipende dallo stato del modulatore che a sua volta è funzione di
un certo numero di simboli di ingresso precedenti. Si vedano ad esempio le modulazioni CPM che
permettono di modellare opportunamente lo spettro del segnale trasmesso.
In genere, u dvu uwJVuyx è potenza di 2. Supponiamo che x yQz , allora ogni simbolo
di ingresso a in d (ovvero ogni segnale in S) è associato univocamente ad una stringa binaria
|{~};li{ . l;"n"n"{ z da una funzione detta ”etichettamento binario” di J .
E’ noto che è sempre possibile dare una rappresentazione geometrica di J nello spazio dei
segnali. Infatti, poiché J ha x segnali, esiste una base :
4
dai versori di . Le coordinate dei vettori , e
b b@ @b si ottengono proiettando i segnali sui
versori della base, ovvero calcolando le correlazioni:
b@ 7 b}0$
7 |b@li kIV^ b bU7 OkMV)r
b@ 7 bi}0:
7 5brli OkCVe b
bP7 kCV)r
b 7 b}0: b@ b
7 5 bli kCVP b &b U 7 OkM-
)rA 7 M 7
per ¡Op!l@Rl;"n"n"l . Nel seguito ometteremo per semplicità di notazione la dipendenza dall’indice
temporale , poiché trattiamo la demodulazione nel caso senza memoria.
Allora otteniamo la seguente rappresentazione vettoriale del canale AWGN: ¢G^ . In
altre parole, il vettore di rumore ”sposta” il punto trasmesso nel punto ricevuto . Il compito
del ricevitore è, dato il punto ricevuto , trovare fra tutti i possibili punti in J un punto £ in modo
da minimizzare la probabilità di errore. Per il canale AWGN, si dimostra che la regola di decisione
ottima (cioè quella che minimizza la probabilità di errore) è la decisione a minima distanza se i
simboli in ingresso sono equiprobabili.
Ovvero, ad ogni tempo , osservato , il ricevitore decide per il punto:
G £ arg ¤v k
¨S©+¥§ª¬
¦ « « (1.1)
La decisione a minima distanza equivale a suddividere lo spazio in regioni, dette regioni di deci-
sione. Ogni regione di decisione è associata ad un punto della costellazione. La regione associata
al punto in J , contiene tutti i punti che sono più vicini a che a qualsiasi altro punto di J .
Allora, la regola (1.1) equivale ad identificare in quale regione si trova il punto ricevuto .
Trovato £ , tramite la corrispondenza biunivoca fra i punti di J e i simboli di d si trova la stima
a £ del simbolo trasmesso a , e se si vuole, la stima dell’etichetta binaria associata {~£ };l { £ ln";"n" { £ .
b@. z
Definiamo la probabilità di errore sul simbolo come la probabilità media che a £ sia diverso
dal simbolo trasmesso a
8 ! g
aL
£
° aKu a) (1.2)
x ®@©;¯
± 7
mentre la probabilità di errore sul bit come la probabilità media che un bit { £ sia diverso dal bit
7
trasmesso {
8± ! gz ! g 7 7
² 7 {£ A ° { u aR (1.3)
h } x @® ©;¯
Se si vede la catena modulatore + canale + demodulatore/ricevitore come unico blocco che riceve
in ingresso ed emette in uscita delle stringhe binarie, il tutto si può schematizzare come un canale
±
binario simmetrico (BSC) con probabilità di transizione ³t .
Un segnale numerico senza memoria in banda traslata si può scrivere come:
g 6
e Re ` f j ´ kCmlabnµ¶ .¸·+¹5º c
bih ,
dove abbiamo definito la costellazione di segnali complessi J :
f
´
JoX` j @lia-b+qra¬sGdc
5
analogamente a quanto fatto in precedenza. Anche il rumore, in banda traslata si può scrivere
come:
´ 6 N
e Re ` µ ¶ .¸·n¹ º c»A
_)¼~½¾+5S¿8\Q_¸OkI )¾¥§¦K5S¿8\S_¸
´ N N
dove evy_ÁÀr è l’inviluppo complesso del processo di rumore e _l sono
processi Gaussiani bianchi indipendenti con le stesse caratteristiche di . A questo punto, tutto
quanto è stato detto prima vale ancora, a patto di considerare segnali (e vettori) complessi invece
che segnali (e vettori) reali.
Il demodulatore opera nel modo seguente: riceve il segnale in banda traslata:
´ 6 ´ ´ 6 g 6
Re ` µ ¶ ¸. ·+¹|º c
Re `R K 0µ ¶ .¸·+¹5º c» Re `R j ´ kMmlia-b+K ´ 0µ ¶ .¸·+¹5º c
b
e lo moltiplica per ¼;½&¾+?Q¿8\S_? e per k
¾¥Ã¦<5S¿8\S_5 . Poi, filtrando i segnali moltiplicati con un
N
filtro passa basso, estrae la parte reale &_@ e la parte immaginaria dell’inviluppo complesso
del segnale ricevuto:
´ N
A &_@KM
´ ´ ´
A questo punto sia b il segnale complesso
per in Ä -mlQ?ÅX!Q0Æ .
Proiettando b sui
versori della base (in questo caso funzioni complesse), il ricevitore ottiene la rappresentazione
b@ b b@
geometrica ^O Ç del canale equivalente in banda base (AWGN complesso), e decide
a minima distanza per il punto ricevuto £ tale che:
G £ arg ¤v k
¨S©+¥§ª ¦ « «
Si noti che in questo caso la norma di un vettore complesso ovvero « « . YÈKÉ , dove Ê indica il
vettore trasposto complesso coniugato.
6
Capitolo 2
2.1 Problema
8± ±
Calcolare la e la in funzione di Ë ~ di una modulazione 2-PAM con la seguente costella-
zione di segnali
±
Jop`QaÌ Ë 8³ Íqratso`-kB!l@Å!&crc
dove ³8 è un generico segnale ad energia unitaria.
Soluzione — Per rappresentare questi segnali ci basta una base reale di dimensione y=! . Il
modello di canale vettoriale ha quindi solo una dimensione reale. La rappresentazione geometrica
b@ ± ±
di questo problema è la seguente. Ad ogni istante , O può valere Î Ë oppure kÏÎ Ë , il vettore
b@
di rumore è una variabile casuale Gaussiana a valor medio nullo e varianza B@ . Dunque il
b@ b@
campione ricevuto è Gaussiano a valor medio . Data la simmetria del problema e dato che
la modulazione ha solo due segnali abbiamo
±
a£ bÆ^!Ru a-bÆÐkB!Q
± ± ±
« b@ k Ì Ë « .>Ñ « b@ Ì Ë « . u b Ðk Ì Ë
± ±
« kC Ì Ë M b@ « . Ñ « b@ « . 5 b@8Ò Ì Ë
±
! . &Ë
Ó ÔRf Õ kMÚ Ü
Î ¿<BeÖ×RØLÙ Û Ú ÙTÝ Û
dove:
! .
Üve Þ f k Ú
Î S¿ Ö@×)ØGÙ Ï Û Ú
è la funzione che misura l’area della coda di una Gaussiana (Gaussian tail function). Richiamiamo
qui per comodità le relazioni tra Üv e la funzione erfc
7
äÍåræçSè äéTæUçSè
áTâ8ã à áTâ<ã à
à
à
ê áTâ ã à
8
2.3 Problema
Generalizzare i due problemi al caso di una modulazione binaria qualsiasi.
Soluzione — In generale possiamo dire che quando una modulazione ha solo due punti ð;+lið+} ,
posti a distanza , tale che:
« ð;ekCð+} «
la probabilità di errore sul bit (che coincide con la probabilità di errore sul simbolo) è data da:
8± R
Üòñó Ü
Ì B@ëôõ Ù Î &B Û
2.4 Problema
± ±
Calcolare e di una modulazione 4-PAM, in funzione di Ë ; . L’etichettamento binario è
l’etichettamento di Gray.
Soluzione — La rappresentazione geometrica della costellazione di segnali della modulazione
4-PAM è:
JìÐ`Qa Î Ë=qratsì`-kV#Rlnk!&l@Å!l@»#Rcrc
L’etichettamento di Gray associa a simboli adiacenti delle stringhe che differiscono al più per un
solo bit. In questo caso, un etichettamento di Gray è dato da:
|{~};li{ . a
00 -3
01 -1
11 +1
10 +3
êGø ã ÷ ê ã ÷ ö ã ÷ ö ø ã ÷
00 01 11 10
b@ @b &Ë
{ £ } ú ° { } u a @b Y
k>#rù Ü #
Ù Ý Û
b@ @b &Ë
{ £ } ° { } u a @b
»#rû Ü #
Ù Ý Û
b@ @b Ë
{ £ } ú ° { } u a @b Y
kB!Qù Ü
ÙTÝ B Û
b@ @b Ë
{ £ } ° { } u a @b
Å!Qû Ü
ÙTÝ B Û
b@ @b Ë Ë
{£ . ú ° { . u a b@ Yk>#rù Ü kCÜ ü
ÙTÝ BRÛ Ù Ý B)Û
b@ b@ Ë Ë
{ £ . ° { . u a b@ »#rû Ü kCÜ ü
ÙTÝ BRÛ Ù Ý B)Û
b@ b@ b@ YkB!Qù Ë &Ë
{ £ . ú ° { . u a Ü ÇÜ #
Ù Ý B Û Ù Ý Û
b@ b@ b@ Å!Qû Ë &Ë
{ £ . ° { . u a Ü ÇÜ #
ÙTÝ B Û Ù Ý Û
±
Sostituendo nuovamente l’espressione di Ë e mediando si ottiene:
ÿ ± ± ±
8± ! Ë Ë Ë
#Ü Á&Ü # kCÜ ü
Ù Ý ü þ Û Ù Ý ü&þ B Û Ù Ý ü&þ B Û
þ
2.5 Problema
± ±
Calcolare e di una modulazione 4-PSK, in funzione di Ë ; , supponendo di utilizzare un
etichettamento binario di Gray.
Soluzione — La costellazione di segnali (complessi) del 4-PSK è:
®
Jìp` Π˵ ¶ 8³ Íqatsì`S*)ln!lRl#Rcrc
10
dove ³8 è un segnale con energia unitaria. Utilizzando il modello di canale vettoriale complesso,
vediamo che lo spazio dei segnali ha dimensione (complessa) ! . I punti corrispondenti ai
segnali di J sono:
! ! ! ! ! ! ! !
Jo Î Ë À lÎ Ë k À lÎ Ë k k À lÎ Ë kÀ
Ù Î Î Û Ù Î Î Û Ù Î Î Û Ù Î Î Û
01 00
11 10
e le regioni di decisione sono i quadranti del piano complesso. L’etichettamento di Gray è dato,
per esempio, dalla tabella:
{;};l{ . a
00 0
01 1
11 2
10 3
Data la simmetria del problema, possiamo supporre che il simbolo trasmesso sia a= * . La
probabilità di errore sul simbolo può essere calcolata come:
! }. .
f Ô
f Ô
¿<B Ö@×RØ Ù kvÚ Ú . Û Ú }
!mk
Ú.
Î . , Î .
ÿ, .
Ë Ë Ë
!mk !ÆkoÜ &Ü kCÜ .
ÙTÝ Û
ÙTÝ B Û ÙïÝ Û
±
Poiché l’energia per bit vale Ë ËÅ , otteniamo:
± ±
Ë Ë
&Ü kCÜ .
ÙTÝ PÛ ÙTÝ Û
11
Per calcolare la probabilità di errore sul bit osserviamo che i bit delle etichette si comportano in
modo simmetrico rispetto ai punti di J . In particolare, scambiando {;} con { in tutte le etichette ot-
.
teniamo una riflessione della costellazione intorno alla diagonale principale, mentre se scambiamo
gli 1 con gli 0 otteniamo una rotazione di ¿ . Pertanto, la probabilità di errore sul bit condizionata
è indipendente sia dalla posizione del bit considerato nell’etichetta, sia dal valore dei bit trasmessi.
Scegliamo, per esempio, di calcolare la probabilità di errore su {;} dato che abbiamo trasmesso
{~}A* e { A* . Si ha:
.
Ô
Ô
± , Î . ! } . .. Î . ! .
f k Ú Ú } . k Ú. .
, , ¿K Ö ×RØîÙ Û Ú Ú
, Ö@×RØGÙ
Î ¿<B Û Ú
f Ë f ± f
& Ë
Ü Ü
^
Ù Ý B Û Ù Ý B Û
Che è lo stesso risultato ottenuto per il 2-PAM (vedi Problema 2.1).
12
Capitolo 3
Gli argomenti di questo capitolo corrispondono alle lezioni in videocassetta 2-10, e ai paragrafi
10.5 e 10.6 del libro di testo consigliato.
L2
dove 2 è una matrice binaria di dimensione ì . Quindi è l’insieme di tutti i vettori binari
ottenibili come combinazione lineare delle righe della matrice 2 . Diciamo che il codice è in
forma sistematica se 2 è nella forma
2pYbRu (3.1)
dove ~b è la matrice identità î e è una matrice binaria vkT . In questo caso, la parola
corrisponde al vettore di informazione e si ottiene concatenando al vettore îHkM simboli di
parità, definiti da . Il codice lineare si può anche definire tramite la sua matrice di parità ,
come l’insieme di tutti i vettori binari ortogonali alle righe della matrice
9
XÐ`+ sì`S*)l;!&c q Èc
13
dove l’apice indica la trasposizione della matrice. 2 e sono legate dalla relazione 2
ïb&b , dove ïb&b rappresenta una matrice di tutti 0. Se 2 è in forma sistematica, cioè nella
forma data nell’equazione (3.1), si può scrivere subito come
9
!u , b@
Definiamo il peso di Hamming "$#>< di un vettore binario come il numero delle sue componenti
diverse da zero. La distanza di Hamming fra due vettori 8} e è il peso di Hamming della loro
.
somma modulo 2
%#V8};l . e
&"$#V8}'C .
Un parametro molto importante di un codice è la minima distanza di Hamming fra tutte le
possibili coppie di parole distinte, ovvero
!Ækî³
* *
³
³
! !
!Ækî³
Ad ogni istante, un simbolo 0 oppure 1 viene trasmesso. Esso viene ricevuto correttamente con
probabilità !Ækî³ ed errato con probabilità ³ , dove ³ è detta probabilità di transizione. Se trasmet-
tiamo un vettore di simboli binari attraverso il canale BSC, riceviamo il vettore A.0/ , dove
/ è un vettore binario detto pattern di errore che contiene 0 in corrispondenza delle componenti
ricevute correttamente e 1 in corrispondenza delle componenti errate (si ricordi che la somma è
14
modulo 2). Dunque, il numero di errori che si è verificato sul canale durante la trasmissione di è
pari al peso di Hamming del pattern di errore "$#>5µQ . La probabilità che si verifichi un pattern di
errore di peso " è:
9
1"$#Æ1/Re2"
³43O!mkL³ë , 3
Ù" Û
Si noti che questa probabilità decresce molto rapidamente all’aumentare di " , ad esempio se ³G
*)" ! si ha 1"$#Æ1/Re2"
5E!n* , 3 .
Supponiamo di usare un codice per la trasmissione. Trasmettiamo una parola di codice in
e riceviamo A60/ . Il decodificatore sceglie la parola di codice £ che minimizza la distanza
di Hamming dal vettore ricevuto (decodifica hard a massima verosimiglianza)
G £ arg ¤ ¨ ©-¥Ã, ¦ 7#> l<
Se il codice ha distanza minima , può correggere tutti i pattern di errore che hanno peso minore
o uguale a e= |PkL!QS , dove indica la parte intera del numero reale . In generale, un codice
con distanza minima può correggere Ú Ú
tutti i pattern di errore di peso più qualche altro pattern
di peso maggiore. Dunque la probabilità di errore sulla parola, indicata con
3 , si può scrivere
come:
!mk 1/ correggibile
3 ÿ 6 9
g
!mk ³43O!mkL³ë ,
3 altri termini
h3 T6 Ù " Û 9
ÿ 9 9
g g
! k
m ³ 3 !mkL³ë , 3 6 ³ 3
! L
k
³ , 3
h3 T Ù " Û h3 } Ù " Û
Se ³ è sufficientemente piccola, il termine più significativo dell’espressione sopra è quello che
corrisponde al peso ÈA! , dunque abbiamo l’espressione approssimata
6 9 6
} }0
3 5 Ù Kú! Û ³ U !ÆkL³ ,
La probabilità di errore sul bit (di informazione) si può valutare approssimativamente come
±
5 3
Questo perché se commettiamo un errore sulla parola, molto verosimilmente la parola decodificata
sarà alla distanza minima dalla parola trasmessa, dunque la frazione di bit sbagliati per parole di
codice è R .
Se il codice è usato per la rivelazione degli errori, può rivelare tutti i pattern di errore con
peso minore o uguale a k ! .
15
minima distanza Euclidea (decodifica soft), cioè sceglie la parola di codice £ tale che
£ arg ¤ ¨S©9¥Ã, ¦ « k ΠˬU!ÆkMQ8 «
La probabilità di scegliere la parola : quando abbiamo trasmesso vale (ricordare l’espressione
della probabilità di errore di una modulazione avente solamente due punti alla distanza Euclidea
Ô ):
&Ëo%#Vl :
<; : ^Üòóñ
Ý ôõ
dove %#Vl : è la distanza di Hamming fra le parole e : . La suddetta probabilità viene comu-
nemente chiamata pairwise error probability. Poiché esistono xík! possibili parole : diverse da
, la probabilità di errore sulla parola 3 soddisfa il limite superiore
Ëo
3 Ð
?
x k Q
!
Ü ó ñ
Ý ôõ
dove è la minima distanza di Hamming del codice. Poichè l’energia per bit di informazione
±
trasmesso è Ë ÈË( , possiamo scrivere:
±
Ë
3 Ð?x k !QÜóñ Ý ôõ
Una approssimazione della
3 si può ottenere sapendo il7:9 numero di parole a distanza minima dalla
parola trasmessa . Denotiamo questo numero con , allora abbiamo:
z
±
7:9 Ë
3 ú z Ü ñó
Ý õô
±
La probabilità di errore sul bit si valuta, analogamente a quanto fatto in precedenza, mediante
la formula:
±
5 3
3.5 Problema
Si consideri il codice ciclico (7,4) generato dal polinomio A
1=H
E= / 2==p! . Si determini la
parola di codice @=¬ , in forma sistematica e non, corrispondente all’informazione B@=H= /
! .
Si scrivano inoltre le matrici generatrici in forma sistematica e non.
Soluzione — La parola di codice in forma non sistematica si ottiene facilmente come
@=¬CB@=HDAÈ1=H2=GFH=IH= / J= / H=ÐA!VC=GFJ=IJ=ÐA!K; U!+*)!+*&*)!!Q
Per calcolare la parola di codice in forma sistematica dobbiamo calcolare il resto della divisione di
= / B1=H per A
@=H
= F L= / u= / H =ÐA!
= F L= I L = / u = / H=
= I
= I = . L=
M
= . L = A~@=¬
Quindi 1=HBN= / B@=H ~@=¬(O= F C= / &= . C=P; !n**)!!!n*r è la parola di codice in
forma sistematica. La matrice generatrice in forma non sistematica è
UV UVV UV
= / AÈ1=H VV = F = I L= /
L V n! *)!!+**&* VV
= . A
È 1
=
H
2pRQSS =A
1=H W X QSS
= Y = / L
L = . SQS *R*&*)!+*)!+*)!!+!*&!n** W
ST TS = I =t.íL=
L W TS
A
@=H = /
t L= Å! *&**)!+*)!&!
La matrice generatrice in forma sistematica è
UV
UQ1=H VV
= F C
2pXQSS == Y C }n1=H
ST I C . 1=H W
= / C / 1=H
17
dove UÍ2=t.OA! , }PC=t.OH=pú! ,
. =t.A! e / =Ðú! quindi si ha
UV
!n***)!+*R! VV
2pXQSS *R*&*)!+*!+*)*)!!+*R!&!! W
ST
*&**)!+*)!&!
18
Capitolo 4
In generale, per selezionare la parola di codice alla minima distanza di Hamming dal vettore binario
b
ricevuto occorre confrontare tale vettore con tutte le parole di codice. Per i codici lineari, questo
può essere fatto in modo efficiente mediante la tecnica della standard 9 array.
b b
La standard array di un codice |l@liR è una tabella con , righe e9 colonne. Ogni ele-
mento della tabella è un vettore binario di lunghezza per un totale di elementi. Sulla prima
riga si scrivono tutte le parole di codice, partendo dalla parola di tutti zeri. Sulle altre righe si
scrivono i rimanenti vettori binari, nel modo seguente. Per ogni nuova riga ¡ -esima, della tabella si
7
sceglie un vettore di peso minimo / che non è ancora apparso nelle righe superiori della tabella, lo
b
si scrive nella prima colonna della riga ¡ -esima, poi gli elementi delle colonne l#)ln"n";"i della riga
7
si ottengono sommando il vettore / in prima colonna con le parole di codice corrispondenti alle
b
colonne Rli#)ln"n"n" . Quando la tabella è completa, i vettori della prima colonna /R};l?/ ln"n";"+/
. .DZ\[9]
sono detti coset leader e costituiscono tutti i pattern di errore correggibili dal codice.
Il primo coset leader /R}
* coincide con la parola di tutti zeri e corrisponde al caso in cui
il canale non produce errori. Per decodificare, dato il vettore ricevuto ý^/ , si calcola la
sindrome ð(
_/% , oppure, se il codice è ciclico, si calcola il polinomio sindrome j @=¬
come resto della divisione
@=H)A
@=H . Le sindromi sono in corrispondenza biunivoca con i coset
7
leader. Basta individuare il coset leader / corrispondente alla sindrome calcolata e la parola dopo
7 7
la decodifica si ottiene come A £ C7 / G&/2/ . Se siamo fortunati, il pattern di errore
/ è veramente uguale al coset leader / , dunque Á £ = tutti gli errori sono stati corretti. In caso
contrario, avremo errore sulla parola. La probabilità di errore sulla parola è dunque data dalla
probabilità che sul canale si verifichi un pattern di errore diverso da un coset leader.
4.1 Problema
Consideriamo il codice 5üRl@Rl# con matrice generatrice 2
ÿ
! * ! * !
* ! * ! !
Scrivere la standard array del codice e calcolare la probabilità esatta di errore sulla parola e sul bit
quando il canale è BSC con probabilità di transizione ³ .
Soluzione — Nel nostro caso, la standard array è:
19
00 000 01 011 10 101 11 110
00 001 01 010 10 100 11 111
00 010 01 001 10 111 11 100
00 100 01 111 10 001 11 010
01 000 00 011 11 101 10 110
10 000 11 011 00 101 01 110
00 110 01 101 10 011 11 000
01 100 00 111 11 001 10 010
La probabilità di errore sulla parola è data da
3 ! k 1 / correggibile
! kA !mkL³ë Y Çü³8U!Ækî³ë I Á³ . !mkG³ë /
³ . kÁ! ³ / ÇZ~³ I kI³ Y
þ
La probabilità di errore sul bit è
± #
5 3 5 ` ³ .
O
ü 3 ü
4.2 Problema
Consideriamo due sistemi di trasmissione su BSC con probabilità di transizione ³ . Il primo usa un
codice a ripetizione |#)ln!li#r per la correzione degli errori singoli. Il secondo usa un codice di parità
5#Rl@Rl@ per la rivelazione degli errori, e un sistema di richiesta automatica di ritrasmissione (ARQ).
Quando il decodificatore rivela un errore, si chiede la ritrasmissione della parola. Confrontare
questi due sistemi dal punto di vista della probabilità di errore residua sul bit (cioè la probabilità
±
di errore dopo la decodifica) e del rate di trasmissione, misurato come numero medio di bit di
informazione trasmessi per simbolo trasmesso sul canale.
Soluzione — Consideriamo il primo sistema. La probabilità di errore sulla parola del codice a
ripetizione 5#)l;!l#r vale
#
3 a"$#Æ1/RcbA ³ . U! kL³ëK³ / ^#~³ . kM@³ / 5p#³ .
Ù Û
poiché si commette errore per tutti i pattern di errore di peso maggiore o uguale a 2. Poiché
abbiamo solamente due parole di codice, la probabilità di errore sul bit è uguale a
3 . Il rate di
trasmissione è ^Ð!Q # , poiché per trasmettere un bit di informazione impieghiamo 3 trasmissioni
di simboli di canale.
Per valutare il secondo sistema, calcoliamo la probabilità di richiesta di ritrasmissione. Il ri-
cevitore chiede la ritrasmissione del blocco se rivela un errore. Con il codice di parità si possono
rivelare tutti i pattern di errore di peso dispari, dunque la probabilità di richiesta di ritrasmissione è
ed
1"$#Æ1/R dispari eA#~³8!mkG³ . ³ /
20
Si commette errore se il peso del pattern di errore è pari (e non zero), perché in questo caso l’errore
non è rivelato. La probabilità di errore sulla parola è la probabilità dell’unione degli eventi
8± ³ï.
5 3 5X³ .
# 3 !mkM³( ³ .
þ
Per calcolare il rate di trasmissione, occorre valutare il numero medio di simboli di canale
necessari per trasmettere un bit di informazione. Il numero medio di trasmissioni di un blocco è
dato da f
g d ed g
f È! k d b , } U!mk f db , }
bh} bhT
ed ! ! !
!mk ed ed
U! k . !mk ! kI#~³( ³ . k
m ³ /
`
þ
Poiché ogni blocco richiede 3 simboli di canale e trasporta 2 bit di informazione, il rate di trasmis-
sione è
f
bit d
U!Æk !mkL³ë~!mkC³( ³ . Ñ
# simboli # # #
þ 8±
Come si vede, se ³ è piccolo, il secondo sistema offre una probabilità di errore leggermente
inferiore e un rate superiore. Tuttavia richiede un sistema di trasmissione molto più complicato,
perché ha bisogno di un canale di ritorno (che abbiamo supposto essere privo di errori!) per
inoltrare le richieste di ritrasmissione.
21
Capitolo 5
5.1 Problema
Il codice di Hamming esteso 5%Rl l ha matrice generatrice
þ þ ! ! ! ! ! ! ! UV
! VV
2pXQSS ** * ! * ! !! ** * ! * ! !
! W
ST
* * * * ! ! ! !
Se si permutano le colonne di 2 o se si sostituisce ad una riga di 2 la combinazione lineare di
quella riga con un’altra riga, si ottiene la matrice generatrice di un codice equivalente (nel senso
che la probabilità di errore risultante è la medesima). Usare queste trasformazioni della matrice 2
data per ottenere una matrice 2 per il codice 5%)l l in forma sistematica. Scrivere la matrice di
parità H corrispondente. þ þ
Soluzione — Occorre fare comparire nelle prime gm posizioni di 2 la matrice identità tramite
l’applicazione ripetuta delle seguenti operazioni che non modificano il codice stesso
1. permutazione delle colonne.
2. sostituzione di una riga con una combinazione lineare di quella riga con un’altra riga.
Il modo di operare non è unico, nel senso che lo stesso risultato si può ottenere in modi
differenti. Un modo possibile è dato dalla catena di trasformazioni seguente:
UV UV
d (1j d ( d * ! * ! * ! * ! * VV d d @d k ! * * ! ! * * ! VV
2ih SQ ! * ! * ! * ! h (@j ( SQ * ! * ! * ! * !
STS * * ! ! * * ! ! W STS * * ! ! * * ! ! W
* * * * ! ! ! ! * * * * ! ! ! !
scambiando la quarta e la quinta colonna tra loro
UV UV
! * * ! ! * * ! VV d(j d( d * ! * * * ! ! ! * VV
SQS ** *
! *
!
*
*
!
! *
! *
!
!
! W h SQ
SST * *
! *
!
*
*
!
! *
! *
!
! Y u
! W I
TS
* * * ! * ! ! ! * * * ! * ! ! !
22
La matrice si scrive subito come
UV
! ! ! * ! * * * VV
Y !u I XQSS !! *
! *
!
!
!
*
* *
! *
!
*
* W
ST
* ! ! ! * * * !
Si noti che, detta 2M: la matrice generatrice in forma sistematica, vale la relazione
2 : úd
2
dove d è una matrice l non singolare e una matrice di permutazione mL .
5.2 Problema
Scrivere la matrice generatrice in forma sistematica del codice di Hamming !Qüln!!l#
Soluzione — Partiamo dalla matrice di parità , ottenuta scrivendo per colonne tutte i vettori
binari distinti e non nulli di lunghezza (kGv . Essi sono esattamente 15. può essere ottenuta
direttamente in forma sistematica come þ
UV
!&!+*)!!+*R!+*)!+*)! !+*** VV
ý SQS *R!n*)!!!!+!+*)**&!&*)!+*!*)!!!!! )** *)!+*!+** W
TS
*&***)!!&!!!!! * **)!
Dalla relazione fra 2 e in forma sistematica, otteniamo immediatamente
U VV
+! ****&*****&* !!+** VV
QSS *)!+***&*****&* !+*)!+* VV
SS **)!+**&*****&* *)!!+* VV
SS ***)!+*&*****&* !!!+* VV
SS ****)!n*****&* !+**)! VV
SS VV
2X *****R!+****&* *)!+*)! VV
SS *****&*)!+***&* !!+*)! VV
SS VV
SS *****&**)!+**&* **)!!
SS *****&***)!+*&* !+*)!!
SST *****&****)!n* *)!!! W
*****&*****R! !!!!
5.3 Problema
La matrice UV
+! ** !!+*
2p QST *)!+* !+*)! W
**)! *)!!
23
6
è la matrice di un codice con I e L=# . Trovare la matrice 2 Þ del codice esteso (cioè del
`
codice ottenuto aggiungendo a ciascuna parola un bit di parità) e trovare la distanza minima del
codice esteso.
Soluzione — La matrice del codice esteso sarà una matrice #mn . Occorre quindi aggiungere
una colonna a 2 . Poiché le righe di 2 sono parole di codice, la colonna da aggiungere può essere
ottenuta aggiungendo, in coda a ciascuna delle righe di 2 , un simbolo di parità. Otteniamo:
UV
6 n! ** !!+*)!
2 Þ QST *R!+* !+*)!! W
*&*)! *)!!!
La matrice di parità del codice esteso si può scrivere immediatamente come
UV
!!+* +! *&** VV
6
Þ SQS *)!+*)!!! *)!n**
**R!+* W
TS
!!! **&*)!
La regola generale è che se la minima distanza di Hamming un codice è dispari, il codice esteso
6 6 6
ha Þ A Ç! . Se invece è pari, Þ A . Poiché in questo caso
# (perché?), allora Þ .
þ
5.4 Problema
Consideriamo il polinomio AÈ1=HC= ! . Per quali valori di , AÈ1=H è il generatore di un codice
ciclico di lunghezza ? Con quali parametri? Scegliere un dato valore di e scrivere la matrice
generatrice del codice ciclico generato da A
@=H . 9
Soluzione Per generare un codice ciclico di lunghezza , 9 A
1=H deve dividere = t! . Si verifica
facilmente per induzione che per ogni mbp! , AÈ1=H divide = 9 ! . Infatti,
9 per îÐ!>@=C 9 !QT@=C
!QY! . Supponiamo che sia vero per kC! , allora, poiché = Á!VC7= , } @=^Ç!Që @= , } Ç!+ ,
è vero anche per . La distanza minima del codice è
, poiché = non è divisibile per =ÐA! .
Dunque i parametri del codice generato da =EX! sono OliLk^!l@ . Riconosciamo quindi i
parametri del codice di parità di lunghezza . Se scegliamo, per esempio, # otteniamo la
matrice generatrice in forma sistematica
ÿ
2X ! * !
* ! !
5.5 Problema
Siano m} e due codici ciclici della stessa lunghezza, aventi polinomi generatori Ar}+1=H e A @=H ,
. 4 7 .
rispettivamente. Si considerino i codici unione ^m}eo e intersezione pm}'q . Sono
. .
codici lineari? Sono codici ciclici? Cosa possiamo dire sulla loro distanza minima? E sul loro
polinomio generatore?
4
Soluzione Il codice unione non è generale un codice lineare (quindi tantomeno ciclico),
anche se lo shift ciclico di qualsiasi parola di codice è ancora una parola di codice. La distanza
24
minima è certamente minore o uguale del minimo fra le distanze minime R} e , di m} e . Il
7 . .
codice intersezione è invece un codice ciclico. Infatti, esso è l’insieme di tutte le parole @=¬
divisibili sia per A}n1=H che per A 1=H , dunque tutte le parole @=H divisibili per il minimo
9 comune
.
multiplo A
@=H di A}n1=H e A 1=H . Poiché Ar};@=H e9 A @=H sono entrambi divisori di = ^
! , anche
. . 7
il loro minimo comune multiplo A
@=¬ divide = Ð! . Dunque il codice , generato da A
@=H è
7
ciclico. La distanza minima di è certamente maggiore o uguale al massimo di R} e .
.
25
Capitolo 6
Codici convoluzionali
Gli argomenti di questa esercitazione corrispondono alle lezioni in videocassetta 11-13, e al para-
grafo 10.7 del libro di testo consigliato.
26
Si noti che in pratica vengono utilizzati codici convoluzionali troncati le cui prestazioni pos-
sono essere analizzate con buona approssimazione supponendo che le sequenze di codice siano di
lunghezza infinita.
27
% R = 1/2 binary convolutional code (5,7)oct
% - encoder
% - 2-PSK modulation
% - soft decoding with Viterbi
% EbN0db: Signal-to-Noise Ratio in dB
% Ninfobits: Packet length in information bits
% dbg: Optional to show info/coded/output bits
% Examples: viterbi(1,100)
% viterbi(1,100,’show’)
% Author: Emanuele Viterbo Date: Apr. 1999
% ---------------------------------------------------
rand(’seed’,0); randn(’seed’,0);
% -------------------- Source ------------------
infobits = (rand(1,Ninfobits)>0.5);
%infobits = zeros(1,Ninfobits);
if nargin == 3, char(48+infobits), end;
N=2;
Rate = 1/N; % code rate
gpol1 = [1,0,1]; % generator polynomials
gpol2 = [1,1,1];
Ncodedbits = Ninfobits/Rate;
codedbits = zeros(1,Ncodedbits);
outbits = -1*ones(1,Ninfobits);
Memory = length(gpol1)-1; % code memory
Nstates = 2ˆMemory; % number of states
Lwindow = 5*Memory; % decoding window length
28
IBtrellis = -ones(Nstates,Nstates); % info bit branch label {0,1}
for k = 1:Nstates
state = double(dec2bin(k-1,Memory))-48;
for ibit = 0:1
shiftreg = [ibit,state];
cbit1 = rem(shiftreg*gpol1’,2);
cbit2 = rem(shiftreg*gpol2’,2);
newstate = bin2dec(char(shiftreg(1:Memory)+48)) + 1;
oldstate = bin2dec(char(state+48)) + 1;
trellis(oldstate,newstate,1) = (1-2*cbit1);
trellis(oldstate,newstate,2) = (1-2*cbit2);
IBtrellis(oldstate,newstate) = ibit;
end;
end;
prevstate = zeros(Nstates,2); % previous states
for k = 1:Nstates
prevstate(k,:) = find(IBtrellis(:,k) >= 0)’;
end;
% -------------------- Decoder -------------------
Pathmetrics = 1e6*ones(Nstates,1);
Pathmetrics(1) = 0;
Newpathmetrics = zeros(Nstates,1);
Pathmemory = zeros(Nstates,Lwindow); % circular buffer
for n = 1:Ninfobits
% Add-Compare-Select
for k = 1:Nstates
oldstate1 = prevstate(k,1);
label = [trellis(oldstate1,k,1),trellis(oldstate1,k,2)];
bm1 = sum((recsymb(2*n-1:2*n)-label).ˆ2);
oldstate2 = prevstate(k,2);
label = [trellis(oldstate2,k,1),trellis(oldstate2,k,2)];
bm2 = sum((recsymb(2*n-1:2*n)-label).ˆ2);
pm1 = Pathmetrics(oldstate1) + bm1;
pm2 = Pathmetrics(oldstate2) + bm2;
if pm1 < pm2
Newpathmetrics(k) = pm1;
Pathmemory(k,rem(n-1,Lwindow)+1) = oldstate1;
else
Newpathmetrics(k) = pm2;
Pathmemory(k,rem(n-1,Lwindow)+1) = oldstate2;
end;
end;
Pathmetrics = Newpathmetrics;
% Traceback
29
if n>=Lwindow % initial delay
[tmp,state0] = min(Pathmetrics); % select best path
for p = 0:Lwindow-1
backstate = Pathmemory(state0,rem(n-1-p,Lwindow)+1);
state = state0;
state0 = backstate;
end;
outbits(n-Lwindow+1) = IBtrellis(backstate,state);
end;
end;
% Empty decoding window
[tmp,state] = min(Pathmetrics);
for p = 0:Lwindow-2
backstate = Pathmemory(state,rem(n-1-p,Lwindow)+1);
outbits(Ninfobits-p) = IBtrellis(backstate,state);
state = backstate;
end;
if nargin == 3, char(48+outbits), end;
% ----------------- Error counter --------------------
Nerr = length(find((infobits-outbits)˜=0));
BER = Nerr/Ninfobits;
30
{ {L}M|
|
{ | {|
~
{ | ( )
[9
| (
{ [
~
Figura 6.1: Regole per la semplificazione del grafo per il calcolo della funzione di trasferimento
nelle due indeterminate = e , dunque può essere scritta come una serie del tipo:
g g 7
Å1=Gl> f 7 f ì|li¡¸s = z
hz zw
Da h}
Ciascun termine della serie corrisponde ad un insieme di percorsi (ovvero di sequenze di codice).
Per esempio, il termine: 7
o|li¡¸s = z
ci dice che esistono ì|li¡¸ percorsi aventi peso di Hamming , e peso di informazione ¡ (cioè
numero di 1 nella corrispondente sequenza di ingresso che ha prodotto ). Nella figura 6.1 sono
riassunte le regole di semplificazione per il calcolo della funzione di trasferimento di un grafo
diretto.
La probabilità di errore, o meglio, un limite superiore alla probabilità di errore può essere facil-
mente calcolato dalla funzione (@=Gl?R . Nel caso del canale AWGN, la probabilità di decodificare
la sequenza a distanza = dalla sequenza di tutti zeri, quando avevamo trasmesso la sequenza di
tutti zeri, vale: ± Õ ¨
&Ë !
@; 8eÜ 7#>@Kl< µ ,g zw -
ÙTÝ B Û
±
dove Ë è l’energia per bit di informazione trasmesso e è il rate del codice.Dunque, poiché la
probabilità di commettere un errore sulla sequenza è minore o uguale alla somma delle probabilità
31
@; 8 , per ogni diversa da (Union Bound), abbiamo il limite superiore
!
3 1=H @Õ
(
h [
dove Å1=H può essere calcolata direttamente dal diagramma di stato modificato, oppure può essere
calcolata come:
(1=Hú(@=îl>Qu h}
7 la probabilità di errore sul bit, notiamo che ogni percorso che corrisponde ad un
Per calcolare
termine = z nella serie che definisce (@=Gl> , dà un numero medio di errori sul bit pari a:
Õ
!
1 ¡¸µ , z
Allora il numero medio totale di errori sul bit per passo nel trellis vale:
ÿ
6 3?6 !
1
(@=Gl?R
h} Õ
h
[
Per codici di rate !+ , che sono gli unici che vengono considerati qui, poiché abbiamo un bit
di informazione per passo nel trellis, la probabilità di errore sul bit, data dal rapporto fra il numero
di bit errati e il numero di bit trasmessi per passo nel trellis è data da:
ÿ
8± 6 3?6 !
1 (@=îl> Õ1
h} h [
Due approssimazioni molto usate sono le seguenti:
± Õ
d0?
&Ë d0?
µ,
! ) z - ¨
3 5 ì| ¹ Ü
ÙTÝ
¹
Û
± Õ
±
5
0d ?
1¬| ¹ Ü
&Ë ¸d ?
¹ µ,
! ) z - ¨
Ù)Ý Û
d05 d0?
dove o|
¹ è il numero di sequenze aventi peso pari alla distanza d0? libera del codice ¹ (un
concetto simile alla distanza minima dei codice a blocco) e 1¬|
¹ è il peso totale dei bit di
d0?
informazione che corrispondono a tali sequenze. Questi due coefficienti possono essere ricavati
rispettivamente dagli sviluppi in serie di Å1=H e di (@=Gl> . Infatti ì|
¹ d05 è il coefficiente della
potenza di = di grado più basso nello sviluppo di Å1=H , mentre 1H
¹ è il coefficiente della
potenza di = di grado più basso nello sviluppo della derivata di (@=Gl?R rispetto a , valutata per
p! . ± d0?
Poiché il rapporto Ë ; viene moltiplicato per
¹ , sid05dice
che il codice ha un guadagno
asintotico (ACG: asymptotic coding gain) pari a !+*
ý }? 5
¹ nei confronti della modulazione
2-PAM (o 4-PSK) non codificata.
32
Capitolo 7
7.1 Problema
Un codice convoluzionale ha generatori (in ottale) A}Í l+A . Xü e A / pn . Disegnare il codifica-
tore. Disegnare il diagramma di stato e il trellis. Trovareþ la funzione di trasferimento, la distanza
libera e l’ACG.
Soluzione — Osservando il diagramma a blocchi del codificatore in figura 7.1 è possibile
scrivere le equazioni di stato e le relazioni ingresso-uscita
P } 2B
. 2¡ë}
}&B
&BJ¡
. .
/ &BJ¡ë}8J¡ .
dove ¡X a¡ë};l?¡ rappresenta lo stato presente del codificatore, };l lo stato futuro, B
. .
il bit di ingresso e Ð } la terna di bit di uscita. Talvolta può essere conveniente una
. /
rappresentazione matriciale delle suddette equazioni
d¢¡¬M1£B
GA
^Ë¡tMWB
dove
* * ! * * !
d 1 Ëp ¤ñó * ! Wp ¤ñó !
Ù ! * Û Ù * Û ! ! xôõ ¥ ! xôõ ¥
Dalle suddette equazioni possiamo completare la seguente tabella che permette di disegnare facil-
mente il diagramma di stato ed il traliccio.
33
¦ å
¦ é
¦g§
B 1¡ë};l?¡ . ;} l . } . /
0 00 00 000
1 00 10 111
0 01 00 011
1 01 10 100
0 10 01 001
1 10 11 110
0 11 01 010
1 11 11 101
Nel seguente diagramma di stato le etichette dei rami sono BS} ed i rami con BH^* sono
. /
in tratto continuo mentre quelli con BHÐ! tratteggiati.
01
0/011 0/010
0/000 1/101
00 0/001 1/100 11
1/111 1/110
10
34
00 0/000 00
1/111
0/011
01 01
1/100
0/001
10 10
1/110
0/010
11 11
1/101
Il diagramma di stato modificato, per calcolo di (@=¬ è:
© é
11
© é ©
© § © © é
00 10 01 00
©
7.2 Problema
d0?
Il diagramma a blocco del codificatore di un codice convoluzionale è dato in figura 7.2. Disegnare
il diagramma di stato, trovare (@=H e calcolare . Supponendo che la sequenza ricevuta dopo
¹
35
¦ å
¦é
¦ §
la trasmissione su canale BSC sia ¬» 110 110 110 111 010 101 101, trovare la sequenza trasmessa
usando l’algoritmo di Viterbi, supponendo che la sequenza di informazione sia composta da 5 bit
incogniti seguiti da 2 zeri. Trovare un’approssimazione della probabilità di errore sul bit del codice
in
01
0/011 0/110
0/000 1/001
00 0/101 1/100 11
1/111 1/010
10
00 0/000 00
1/111
0/011
01 01
1/100
0/101
10 10
1/010
0/110
11 11
1/001
37
©
11
© © é
© § © é © é
00 10 01 00
©
La (@=Gl> risultante è
= ®?
Å1=Gl>
!mk¯=Gk¯= /
Da cui (1=H risulta:
= ®
(@=H = ® J=GªH=G±OA'+'+'
d05 ! k°=Ek°= / d¸?
Dunque
¹ ²n . Il peso di±informazione dell’unica (perché unica?) parola di peso ¹ è 1,
dunque l’approssimazione di è data da:
±
8± &Ë n
5Ü '
Ù)Ý B # Û
Per ricavare la sequenza di informazione dobbiamo eseguire l’algoritmo di Viterbi sulla se-
quenza ricevuta ¬ . A tale scopo consideriamo sette passi del diagramma a trellis su cui riportiamo
le metriche di ramo che corrispondono alla distanza di Hamming tra la terna di bit ricevuti in cia-
scun passo e l’etichetta del ramo corrispondente. Nella tabella troviamo le corrispondenze tra i
rami (individuati da coppie di stati) e le rispettive etichette di bit codificati e di bit di informazione.
Ad ogni sezione del trellis e per ogni stato riportiamo la metrica di cammino accumulata mediante
le operazioni di ACS (vedi figura 7.3).
Per ogni passo nel trellis e per ogni stato e necessario memorizzare il ramo entrante che cor-
risponde al cammino con minima metrica accumulata selezionato con ACS. A questo scopo è
sufficiente memorizzare lo stato precedente, nella figura il ramo vincente (o percorso sopravvissu-
to) viene individuato da un puntino nero. Questa informazione viene utilizzata una volta terminata
la scansione del trellis, infatti per risalire ai bit di informazione trasmessi e sufficiente ripercorrere
a ritroso il percorso che ha ottenuto la minima metrica di cammino. In generale, questo va scelto
fra tutti i possibili stati di arrivo, ma in questo caso, poiché gli ultimi due bit di informazione sono
zero, sappiamo che lo stato finale è 00 e dobbiamo scegliere solamente tra i due cammini che arri-
vano a tale stato quello di metrica minore. Seguendo il percorso sopravvissuto oteniamo la stima a
massima verosimiglianza della sequenza di bit trasmessa, ovvero: 1 1 0 0 1 0 0.
38
110 110 110 111
00 2 2 2 3
0 2 2 3 3
1 1 1 0
2 2 2 1 0
01 0 1 0 1 2 3
1 1 1 2
2 2 2 1
10 0 1 1 2 3
1 1 1 0 2
1
0 0 0 1
11 0 1 2 3 5
3 3 3 2
3 0 0 0
3 5 5 6
0 3 3
1 2 2
5 3 4 5
2 1 1
La tecnica di trasmettere dei bit a zero è nota come terminazione del trellis e permette di
migliorare le prestazioni del decodificatore di Viterbi quando il codice viene troncato. Questo
vantaggio è ottenuto sacrificando alcuni bit di informazione del pacchetto.
Notiamo infine che normalmente la memorizzazione dei cammini sopravvissuti viene fatta so-
lamente in una finestra temporale pari a circa 5 volte la memoria del codificatore. Questo permette
di ridurre la quantità di memoria richiesta dall’algoritmo di Viterbi senza diminuire sensibilmente
le prestazioni. Il programma presentato nel capitolo precedente utilizza questa tecnica di decodifica
a finestra.
7.3 Problema
d0?
Il diagramma a blocco del codificatore di un codice convoluzionale è dato in figura 7.4. Dise-
gnare il diagramma di stato, trovare (@=H e calcolare
d0? ¹ . Disegnare sul trellis il percorso che
corrisponde alla sequenza
¹ . Supponendo che i bit aB}~l?B . l?B / l+B I l*)l*r vengano codificati e
trasmessi su un canale BSC e che la sequenza ricevuta sia ¬´³T 111 111 111 111 111 111, trovare
mediante l’algoritmo di Viterbi la sequenza a massima verosomiglianza.
Soluzione — Seguendo la procedura descritta nel primo esercizio possiamo ricavare la seguen-
te tabella
39
¦ å
¦é
¦ §
B 1¡ë};l?¡ . ;} l . } . /
0 00 00 000
1 00 10 101
0 01 00 011
1 01 10 110
0 10 01 111
1 10 11 010
0 11 01 100
1 11 11 001
Da cui si ricava il diagramma di stato ed il trellis:
01
0/011 0/100
0/000 1/001
00 0/101 1/100 11
1/101 1/010
10
40
00 0/000 00
1/101
0/011
01 01
1/110
0/111
10 10
1/010
0/100
11 11
1/001
©
11
© © é
© é © § © é
00 10 01 00
© é
= F H=®ek¯= ª
(1=H =FOÇ= ® H=ªOú'+'+'
!mk°==k°= I k°= Y H= F
d0?
Dunque
¹ `.
Riportiamo infine nella figura 7.5 il trellis che lo studente può utilizzare per la decodifica della
sequenza ricevuta.
7.4 Problema
Il diagramma a blocco del codificatore di un codice convoluzionale è dato in figura 7.6. Disegnare
41
111 111 111
00 0
01 0
10 0
11 0
Figura 7.5: Trellis per la decodifica hard di una sequenza per il codice (6,3,7)
¨ ¦ å
¦ é
42
d0? ±
il diagramma di stato, trovare Å1=Gl> e calcolare
¹ . Trovare un limite superiore alla se
il codice viene usato su un canale AWGN con densità spettrale di potenza di rumore , con
modulazione 2-PAM.
Soluzione — Seguendo la procedura descritta nel primo esercizio possiamo ricavare la seguen-
te tabella
B a¡ë};l?¡ . ;} l . } .
0 00 00 00
1 00 10 01
0 01 00 10
1 01 10 11
0 10 01 01
1 10 11 00
0 11 01 11
1 11 11 10
Da cui si ricavano il diagramma di stato ed il trellis:
01
0/10 0/11
0/00 1/10
00 0/11 1/01 11
1/01 1/00
10
43
00 0/00 00
1/01
0/10
01 01
1/11
0/01
10 10
1/00
0/11
11 11
1/10
Il diagramma di stato modificato, per il calcolo di (@=îl> è:
©
11
© é
© © ©
00 10 01 00
© é
44
Capitolo 8
Questa esercitazione tratta il calcolo del bilancio di tratta (link budget) di un canale via satellite. I
dati fondamentali di un canale via satellite sono:
7. L’assorbimento atmosferico ¸ ® .
3· w4 · 3· 3 9
8. Le temperature operative del ricevitore sul satellite e del ricevitore a terra .
, , z 3
9. La potenza trasmessa da terra , e la potenza trasmessa dal satellite ª .
6 d¹56
10. Il valore desiderato di bit rate (BER ® ).
Calcolare il link budget, nel caso di trasmissione non codificata, significa trovare i valori minimi
8± 6 d@¹|6 8±
di e di ª che garantiscono BER ® , dove è la probabilità di errore sul bit della
modulazione numerica usata dal sistema. Per fare ciò occorre trovare il rapporto segnale rumore
( Jî ) in funzione di e di ª , ed imporre la condizione che l’ JG trovato sia maggiore o
± 6 d¹|6
uguale al minimo JG che garantisce che la sia in effetti minore della BER ®
6 ® d¹56 desiderata. I
passi necessari per calcolare il valore di JG che si deve garantire sono:
45
± ±
1. Esprimere come una funzione di Ë ;B . Per esempio nel caso di una modulazione PSK
con etichettamento di Gray, su canale AWGN, si ha:
±
± &Ë
Ü
ÙTÝ Û
± ± ± 6 d¹56
2. Dall’espressione di , trovare il minimo Ë ; necessario affinché Ñ 1ÅË ®
±
3. La relazione fra Ë ; e JG , per una modulazione con efficienza spettrale º è:
±
Ë
Jeî º (8.1)
B
Ricordiamo che l’efficienza spettrale º , per una modulazione di tipo M-PSK con roll-off ¶ è
data da:
§½« . x
º
!PMa
± 6 d¹56
Allora, dal valore di Ë ;B trovato al punto 2) e della relazione (8.1) troviamo il valore JG ®
che dobbiamo soddisfare.
Nel seguito, riportiamo i passi necessari per calcolare Jî di una singola tratta (uplink o
downlink). Poiché questo calcolo vale sia per l’uplink sia per il downlink, non indichiamo più
esplicitamente il pedice up o down.
1. La potenza di segnale all’ingresso del ricevitore è data da:
d Þ 86 Þ 6 Þ d Þ. !
2 2
ÙE¿K» Û ¸ ®
86 þ
dove Þ indica la potenza trasmessa (cioè vale nel caso dell’uplink e ª nel caso del
dowlink). Il guadagno di antenna 2 , per un’antenna parabolica, è legato al raggio ¼ dalla
relazione:
¿ .¼.
2p
þ .
dove il fattore è detto efficienza dell’antenna» e vale di solito 0.6. La lunghezza d’onda è
legata alla frequenza di portante dalla relazione p½~\ , dove ½VÐ#Ï'-!+* ª m/s è la velocità
»
di propagazione della luce nel vuoto. »
2. La potenza di rumore all’ingresso del ricevitore è data da:
<9n3?7 N5 3·
)1
dove 1 è la banda del ricevitore, che per una modulazione x k Jgu con roll-off ¶ vale
circa: ±
1Ð
º
3·
e
Y!"Ä#%
¾!+*,.0/ J/K è la costante di Boltzman. La temperatura operativa del ricevitore
è data dalla somma di due termini, la temperatura di antenna ® e la temperatura equivalente
46
¿
del ricevitore . ® è un dato del problema e dipende dall’angolo di elevazione e dai corpi
irradianti che compaiono nel raggio ({µna ² ) dell’antenna ricevente, mentre può essere
calcolata sapendo le temperature equivalenti (o le cifre di rumore) e i guadagni dei dispositivi
che compongono la catena di ricezione.
3. Finalmente, possiamo scrivere JG come:
ed Þ
JG^ 89;3?7 N5
<6 Þ
Se si richiede il link budget di una sola tratta, allora basta calcolare dalla relazione:
6 d@¹|6
Jî^Jî ® (8.2)
Se invece si deve considerare il link budget complessivo, nel caso di un transponder non rige-
4w· 3 9
nerativo, usiamo la seguente formula che ci dà l’ JG complessivo sapendo Jî e JG .
z 3
ÿ
6 3?6
! !
Jî 4w· 3 9
JG JG z 3
6 3?6
Notare che se usiamo Jeî al posto di Jeî nella (8.2) otteniamo una equazione con due
incognite e ª . Dunque esiste una relazione fra e ª . Occorre dunque scegliere una
coppia di valori di e ª che soddisfa tale relazione, tenendo conto che una scelta ”ragionevole”
tende solitamente a massimizzare e a minimizzare ª , in quanto la potenza del transponder
sul satellite è molto costosa, mentre la potenza in trasmissione da terra, specialmente per grosse
stazioni, non è un grosso problema.
47
8.1.1 Caso del satellite non rigenerativo
Determiniamo i rapporti segnale-rumore nell’uplink e nel downlink in funzione di e di ª . Per
l’uplink abbiamo
6 4 d Þ 4ÁÀÃÂ .
4w· 2 Þ 2 º
JG ± I 3· ·z4 Ä ut}
¸ ® )
4 4 3 ·4 4 |4
dove abbiamo definito
± Ž~\ l ® , ºÁû&T!V¶
e dove abbiamo usato la
» la banda del segnale con l’efficienza spettrale º .
relazione 1Y che lega
Analogamente, per il downlink abbiamo
6 d ÀÃÂ .
3 9 2 Þz2 Þz º
JG z 3 ª ± I 3· · z Ä ª u .
¸ ® ) z
3·
dove abbiamo definito C
z ½;\ z l z ú ® z z , e dove la temperatura equivalente del ricevitore
z è data da »
1¸k !Q0
. ¸
z ú }8
2} 2 !
Per un satellite non rigenerativo, l’ JG totale è dato dalla formula
ÿ
6 3?6 ! ! 6 d¹56
JG 4w· 3 9 ^JG ®
Jî Jeî z 3
±
Con una modulazione QPSK coerente abbiamo bisogno di Ë ;P^ZR" dB per avere 1ÅË( uguale
a !+* Y . Dunque il rapporto segnale rumore target che dobbiamo ottenere è dato da
`
6 d¹56
49
Capitolo 9
1. Ad ogni gruppo di transizioni parallele vanno assegnati i segnali appartenenti alla stessa
sotto-costellazione del set partitioning, scelta fra le sotto-costellazioni che hanno esattamente
z , z Í segnali. (Nota: se non ci sono transizioni parallele, cioè se ² : ² , questa regola
è superflua e si scelgono i segnali dalle sottocostellazioni all’ultimo livello dell’albero, che
contengono un singolo segnale ciascuna).
2. A transizioni adiacenti vanno assegnati segnali appartenenti alla stessa sotto costellazione
50
S2
S3 S1
S4 S0
S5 S7
S6
½/ ^
* ½/ Y
!
S2
S3 S1
S4 S0
S5 S7
S6
½. ^
* ½. Ð
! ½. A
* ½. Ð
!
S2
S1 S3
S4 S0
S5 S7
S6
½;}^* 1 0 1 0 1 0 1
S2
S1 S3
S0 S4
S5 S7
S6
51
{;} ½~}
{. ½.
½/
00 (000,100) 00 (0,4)
(010,110) (2,6)
(010,110) (0,4)
01 01
(000,100) (2,6)
(001,101) (1,5)
10 10
(011,111) (3,7)
(011,111) (3,7)
11 11
(001,101) (1,5)
3. I segnali devono essere usati lo stesso numero di volte (cioè il numero di rami etichettati da
un certo segnale è una costante che non dipende dal singolo segnale).
52
½~}?½ . ½ / segnale
000 j
001 j}
010 j
011 j.
100 j/
101 jI
110 jY
jF
111
®
Tabella 9.1: Tabella di etichettamento dei segnali dell’8-PSK
zione dell’informazione di traceback bisogna non solo memorizzare lo stato precedente ma anche
selezionare una particolare transizione tra quelle parallele.
Il parametro fondamentale che esprime il guadagno di codifica di una modulazione TCM è la
d¸?
distanza libera euclidea al quadrato (SED Squared Euclidean Distance) . . Il calcolo di .
d0? è
¹ ¹
in generale abbastanza complesso. Esiste però un caso in cui esso si può fare facilmente: è il caso
di schemi TCM uniformi. L’uniformità è data dalle due condizioni:
1. Le due sotto-costellazioni al primo livello di partizione sono legate da una isometria (cioè
una si può ottenere dall’altra mediante la combinazione di traslazioni, rotazioni e riflessioni).
2. Le etichette binarie di punti che si corrispondono, data questa isometria, differiscono sola-
mente per un bit in una posizione fissa.
Per esempio, vediamo che lo schema TCM definito dal trellis di figura 9.2 e dalla tabella di
etichettamento 9.1 è uniforme. La proprietà di uniformità permette di valutare la minima distanza
euclidea tra le sequenze codificate prendendone una qualsiasi come riferimento in modo analogo a
quanto si fa per i codici lineari.
In questo caso, se indichiamo con Î=1½;}~l?½ l?½ l’etichetta binaria di riferimento (per esempio
. /
(0,0,0)) di un segnale e con \O@Î- il segnale corrispondente, definiamo il “peso euclideo” di un
pattern di errore / come:
:7 9
" Ô z ¤vÏ ¥§¦ u \O@Î-kM\1ÎÁJ/)+u .
dove / è una stringa binaria di lunghezza ² , cioè è esso stesso una delle possibili etichette, e
il minimo è preso su tutte le possibili etichette Î . Finalmente, possiamo calcolare la cosidetta
distanza minima Euclidea al quadrato .
7:9 dello schema Áx uniforme mediante la tecnica
z
della funzione di trasferimento (@=H . Etichettando il diagramma degli stati del codificatore binario
secondo la regola:
Se nel diagramma degli stati c’è una transizione con etichette / , l’etichetta simbolica da usare
nel grafo per il calcolo di (@=¬ è semplicemente = 3
ÉÐ Ñ4Ò Z a/) . Se ci sono transizioni parallele, ad
ogni fascio di transizioni parallele si sostituisce una sola transizione con etichetta corrispondente
al minimo peso euclideo fra tutti i pesi delle transizioni parallele del fascio.
Nel nostro esempio, il grafo per il calcolo della minima distanza euclidea al quadrato è rappre-
sentato in figura 9.3 e la Å1=H risultante è:
53
©ÔÓ)Õ Ö\×\Ø
11
© éØ ©ÔÓÕ!ÖÙ×ËØ © éØ
00 01 10 00
1
Figura 9.3: Diagramma degli stati per il calcolo della .¹ d0?
Ô Ô
= I?Æ Y ª Ô
(@=H p
5
= ?
I Æ Y ª '+'+'
!mkC= Æ Y ª
da cui si ottiene il valore : .
d0? ":ü&%&Ë . Poiché esistono transizioni parallele, da . 7$9 sarà data
dal minimo fra -.
¹
d0? e la minima z
¹ þ
distanza fra segnali delle transizioni parallele, che in questo caso
è Ë . Dunque:
þ .¹ d¸? ² ¡5`Q :¹ . d0? li · . ® d ®sÚÚ Ú c» Ë
Il guadagno asintotico di codifica (dÁ2 ) rispetto ad una modulazione þ non codificata che ha la
stessa efficienza spettrale a è dato da:
z. :7 9 & Ë
d
2XY!n*g§½« }?
: . &Ë :
dove ËM: e . sono l’energia e la minima distanza Euclidea al quadrato della modulazione non
codificata. Nel nostro caso, se prendiamo come modulazione non codificata il 4-PSK avente la
stessa efficienza spettrale di 2 bit/simbolo, abbiamo
ËÅ&Ë
d
2pÐ!n*g§½« ?} A#&1
& þ Ë : &Ë :
54
binario dei segnali. Inoltre, determinare il guadagno asintotico di codifica |dÁ2 del codice
ottenuto rispetto alla modulazione 8-AM-PM non codificata.
Soluzione — Riportiamo nella seguente tabella i dati necessari alla costruzione del trellis
B a¡ë};l?¡ . ;} l . } .
0 00 00 00
1 00 10 11
0 01 00 11
1 01 10 00
0 10 01 01
1 10 11 10
0 11 01 10
1 11 11 01
Lasciamo al lettore completare i seguenti schemi con gli opportuni dati richiesti dal problema
00 00
01 01
10 10
11 11
55
Capitolo 10
Interferenza intersimbolica ed
equalizzazione
Questa esercitazione si riferisce a parte del capitolo 8 del libro di testo consigliato.
10.1 Introduzione
Per trattare in modo semplice l’interferenza intersimbolica assumiamo che il segnale trasmesso sia
un 2-PAM in banda base, dato da
g
e ab ' j OkMV
b
dove ab prende valori nell’insieme `-k>dl@
dc e dove j è un impulso avente energia unitaria.
Il segnale viene trasmesso da un canale con risposta all’impulso Û< e rumore gaussiano bianco
additivo avente densità spettrale di potenza B . Il segnale ricevuto è
g
a-b ' j OkCVe¾$Û<
b
Indichiamo con ² la risposta all’impulso del filtro di ricezione. Dopo tale filtro il segnale è
g g
P ² e¾ È ² '¾$Û<e¾ j kMVK ² e¾e a-b '-Ü)kMVKHÝK
Ú b b
dove Ü)¬ j Þ¾iÛ<ß¾ ² è la risposta complessiva della cascata trasmettitore + canale +
ricevitore e dove ÝK è un rumore gaussiano con funzione di autocorrelazione
B
áà e
' f ² @â ² @â»k )%â
,
f
L’uscita del filtro di ricezione viene campionata al tempo -MMU , dove U è un opportuno istante
di campionamento. Il canale tempo-discreto risultante è
g g
bÆ UÇV a ¶ TÜ UÁÁkÀrVÈJÝKUÁVCÜ~ia-b Ü -a b JãSb
Ú Ú
¶ h¶ T* ¶ , ¶
56
dove abbiamo definito i campioni Ü~bCRÜTU>YV della risposta all’impulso complessiva del
canale e i campioni di rumore Ý bÆÝKUÇV .
Nell’equazione riportata sopra sono evidenziati tre termini che contribuiscono a campione b :
Ú
1. il termine utile Ü;a-b , che porta l’informazione relativa ad a-b .
10.3 Equalizzazione
In questo paragrafo trattiamo l’equalizzazione lineare ottenuta mediante l’inserzione di un filtro
trasversale FIR dopo il filtro di ricezione. La funzione dell’equalizzatore è quella di correggere
gli effetti del canale in modo da minimizzare gli effetti dell’ISI e permettere la trasmissione di
dati anche in presenza di un canale distorcente. La figura di un equalizzatore basato su un filtro
trasversale FIR si trova sul libro di testo a pagina 581. Assumiamo che la lunghezza del FIR sia
¸ o! , con ¸ intero non negativo. I ritardi della linea di ritardo del FIR valgono $: . Il valore di $:
può essere scelto secondo le esigenze di progetto. Due scelte tipiche sono $:)ú (equalizzazione
con spaziamento di simbolo) oppure : û!Q)?«ëp , dove ë è la banda (unilatera) del segnale,
per rispettare il teorema del campionamento (equalizzazione con spaziamento frazionario). Per
modulazioni PAM/QAM una scelta molto comune è $:8E . I coefficienti del filtro FIR sono
raccolti nel vettore Ît@½
,%ì l?½ ,%ì }ln"n";"?½ ì, };l>½ ì di lunghezza ¸! . La risposta all’impulso
dell’equalizzatore è data da
g ì
½& ½ Ú ' k¯í :
Úh ê
%, ì
La risposta all’impulso complessiva del canale equalizzato è
g ì
A
½ e¾ÞÜ) ½ Ú '9Ü)k¯í :
Úh
,%ì
Per progettare il valore dei coefficienti Î ci sono vari criteri. I piú comuni e semplici da trattare
matematicamente sono il criterio di zero-forcing (ZF) e il criterio di minimo errore quadratico
medio (MMSE = Minimum mean square error).
58
Con il criterio ZF, ci si propone di controllare ¸]Á! valori dei campioni della risposta all’im-
pulso A
campionata in . Chiaramente, per minimizzare la distorsione di picco vogliamo che
A
5*rîA& e che A
?-
(y* per tutti i Ç k¢¸ lnk¢¸CY!ln"n";";l>¸ . Imponendo queste condizioni
otteniamo g ì
A
?V ½ Ú '-Ü)?- k¯í : eE * ! ^ ^
°
*
*
Úh
,%ì
che si può scrivere come il sistema lineare con ¸GA! equazioni in ¸ A! incognite
UV
* VV
.. VV
ï Q S . V
ÎÅ SS ! VS
SS ... W
ST
*
ï
dove abbiamo definito la matrice avente elemento ?l0À pari a Ü)?-=kúÀV . Il sistema ha
soluzione (normalmente Ü è invertibile).
UV
* VV
.. VV
S
ï } S . VV Q ï
δð%ñ , SS ! colonna centrale di , }
SS ... W
ST
*
Con il criterio MMSE ci si propone di minimizzare l’errore quadratico medio fra il campione di
uscita dell’equalizzatore al tempo e la variabile di informazione a-b . L’errore quadratico medio
(MSE = Mean square error) si può scrivere come
UV
g ì . g ì
g ì ² g ì
xJËYË STQ ½ Ú ' 5 k0í : koa-b
W Ú
½ ½ z ÁòS k0íkC ½ ÚÁ
ò ® óíCd .
Ú h Ú Ú h Ú h Ú h
,%ì %, ì z ,%ì ,%ì
dove abbiamo definito le funzioni di autocorrelazione ÁòS di 5V e di cross-correlazione Áò ® Ä
di ?V con ab . L’MSE si può scrivere in forma compatta come
Ú
Ú 6õô
xJËYCÎ ÎÏkCÎ ¬ Cd .
ô
dove abbiamo definito la matrice avente elemento ² l0À pari a ¢òS ÀÅk ² e il vettore ¬ avente
elemento ² -esimo Áò ® ² . Minimizzando l’ xJË rispetto al vettore Î otteniamo la soluzione
ô
Î èLè ª Ô , } ¬
Nella realtà, poiché la risposta all’impulso e/o le caratteristiche statistiche del canale non si
conoscono esattamente e poiché il canale può essere tempo-variante, si usano degli algoritmi adat-
tativi che stimano le soluzioni ottime riportate qui sopra in modo iterativo. Uno di questi algoritmi
(forse il piú usato, per la sua semplicità) è l’algoritmo del gradiente stocastico, detto anche ¸xJ .
59
10.4 Esempio di calcolo della distorsione di picco con e senza
equalizzatore
Consideriamo il sistema 2-PAM con forma d’onda elementare j definita da
} k Í
j ö Ó . altrove .
*
e dove le variabili di informazione assumono i valori k>d e »d . Il canale di trasmissione ha
risposta all’impulso Û<ep!M*)"$ü Oko e il filtro di ricezione è adattato a j .
ê
÷ Si determini la distorsione di picco.
÷ Nel caso si inserisca un equalizzatore ZF di lunghezza 3 (con $:)ú ), si determini il nuovo
valore della distorsione di picco e si confronti con il valore precedentemente ottenuto.
Soluzione — Per prima cosa dobbiamo calcolare la risposta all’impulso del canale ÜTG
j ¾¢Û<¾ j km . Per la proprietà commutativa del prodotto di convoluzione possiamo scrivere
Ü)e j e¾ j U kƾßÛ< . Definiamo la funzione triangolare
ø
j e¾ j km !mk* u +uwS kmX Í
altrove
Allora
ø ø ! ø
Ü) e¾ßÛ<e K Oko
Il campione utile è Ü; PÜ)5*r ü , mentre l’unico campione interferente non nullo è Ü+}L
Ü)VY!Q . Quindi abbiamo þ
þ u Ü+} u !Q ! ·
=
u Ü;u ü þ ü
La matrice che definisce il sistema lineare ## la cuiþ soluzione è il vettore di coefficienti dell’e-
qualizzatore ZF di lunghezza 3 è
UV UV UV
ï Ü
; ù
Ü ,
} Ü ,. ü * * ï } ü * *
STQ Ü+} Ü~ Ü , } Wî STQ !Q þ &ü * W , STQ k þ &ü ü * W
Ü . Ün} Ü~ *þ !+ þ ü Rþ !Qü k þ ü &ü
þ þ þ þ þ
Una soluzione del sistema
ï
' Î(=|*)l+A ;l*
con A costante arbitraria positiva è Î ù5*)lüRlnkB!Q . Si noti che qualsiasi vettore proporzionale
a Î è una soluzione del sistema per qualche valore di A& . Quindi non esiste una unica soluzione,
ma infinite soluzioni tutte proporzionali fra loro, che corrispondono a equalizzatori ZF equivalenti,
nel senso che danno la stessa distorsione di picco in uscita e la stessa probabilità di errore. Con la
soluzione trovata otteniamo
A
^üÜTOk0Ü)ko
60
Il campione utile ora è A C A
5*r ü mentre l’unico campione interferente non nullo è
A úAÈ5SVÐkB!Q . La distorsione di piccoþ risultante è
.
þ
· uÜ . u !+ !
=
u Ü;u ü& þ ü
þ
che è molto minore di quella ottenuta senza equalizzatore. Queso indica che l’uso degli equalizza-
tori può infatti migliorare di molto le prestazioni di un sistema di trasmissione numerica su canali
con distorsione lineare.
61
Capitolo 11
W ® ò
W ® . U!ÆkCµ , . B
Ñ Ú Ú Ú
e quindi
±
&Ë
f Ü
U! kCµ , ò .
Ù Ú Ý B Û
± ±
infine ponendo ^Ë ; e usando ancora la regola di integrazione per parti otteniamo
ü ± Õ ÿ ± ±
8 ò ÿ ò ò !
f È µ , U!ÆkI&µ , Mµ ,. ) !mkM ±Í ±
ü¿ Ú Ý ! ü Ý m ü
ü ü
64
11.4 Confronto selection combining e maximal-ratio combining
Supponiamo di osservare due segnali
r } aR}
CK}
. a .
C .
±
dove può assumere i valori 8(Î Ë , È } e . sono rumori gaussiani indipendenti con varianza
e aR} e a sono variabili casuali indipendenti che possono assumere i valori 0 o 1 con probabilità
.
0.1 e 0.9, rispettivamente.
Nel caso di selection combining il ricevitore decide sul valore di usando } se a)} bùa ,
oppure se a
Ò aR} . Dunque, come abbiamo già fatto in precedenza, il canale equivalente . è
. .
úa z ®UÞ
M . La probabilità di errore media vale perciò
± ± ±
8 &Ë Ë &Ë
^*)"Ä*)! 'QÜ *»' Ç*)"ÄZZ
'QÜ ^*)"Ä**rü M*)"$Z&ZÏ'QÜ
Ù Ý Û ÙTÝ Û Ù)Ý B Û
dove abbiamo usato il fatto che Üv5*rÐ!Q .
Ora supponiamo di usare un ricevitore che combina i segnali } e secondo la regola C
.
A} r}ÍCA . . , dove i coefficienti Ar} e A . sono scelti in modo da massimizzare il rapporto segna-
le/rumore nel segnale combinato . Vogliamo trovare i coefficienti Ar} e A e calcolare la
.
risultante.
Il segnale combinato si può scrivere come
dove dîA}aR}&A a e dove è un rumore gaussiano con varianza ¡È . a A}. 2A. . Il
. . .
rapporto segnale/rumore risultante è
± ±
a .Ë õAr}a)}8°A . a . . &Ë
Jî
Ëtu Mu . õA }. ¯A .. B
Osserviamo che al numeratore abbiamo il quadrato del prodotto scalare fra il vettore rßõAr}l+A
.
e il vettore ß|aR};lia , mentre al denominatore abbiamo la norma al quadrato r . Allora usiamo
.
la diseguaglianza di Cauchy-Schwartz, secondo cui, dati due vettori e si ha
u |l Qu . « « . « « .
dove l’eguaglianza è ottenuta quando N¶ , cioè quando i due vettori sono proporzionali fra
loro.
Otteniamo così che il rapporto segnale/rumore è massimizzato dalla scelta rG2¶ , per ogni ¶
reale non nullo. Per esempio, scegliamo rL , cioè Ar}P^aR} e A ^a . In questo modo, il canale
. .
equivalente è dato dalla 11.1 con dßòa .} a . e dove la varianza di è ¡ . a .} a . & .
Mediando otteniamo la probabilità di errore
. .
± ±
8 &Ë Ë
*)"Ä**rümÇ*R"§!+%
'QÜ *)"$%R! 'QÜ
M
ÙïÝ B Û ÙTÝ þ B Û
65
Si noti che sia nel caso di selection combining che nel caso di maximal-ratio combining le proba-
bilità di errore non sono mai inferiori a ü('T!+* ,/ , perché con probabilità 0.01 non si riceve alcun
segnale e il ricevitore è costretto ad indovinare il valore di in modo casuale. Tuttavia, il ri-
cevitore con maximal-ratio combining sfrutta meglio i due segnali a disposizione quando sono
entrambi presenti, e ottiene una probabilità di errore che è sempre piú bassa di quella del selection
combining.
Si noti infine che il risultato r per il maximal-ratio combining è un risultato generale
indipendente dalla statistica dei guadagni e può essere esteso a qualsiasi ordine di diversità =îbA .
66
Capitolo 12
12.1 Problema 1
±
Un sistema di trasmissione numerica impiega la modulazione 4-PSK per trasmettere !+*
d
kbit/s. La potenza ricevuta all’ingresso del ricevitore Y!" ë e la densit spettrale del rumore
}0} `
vale BÏ
'!+*, W/Hz. Calcolare la probabilità di errore sul bit nei casi:
2. Trasmissione con codifica di Hamming (15,11,3) e hard decoding (usare ogni approssima-
zione ragionevole).
12.2 Problema 2
d0?
Disegnare il diagramma degli stati e calcolare la ¹ del codice convoluzionale di rate 1/2 con
generatori (5,7) (in ottale).
12.3 Problema 3
Il downlink in un sistema di trasmissione via satellite caratterizzato da:
÷ Distanta fra Tx ed Rx, ^#%&*** km.
÷ 6Þ
Guadagno di antenna di trasmissione 2 * dB.
`
÷ dÞ
Guadagno di antenna di ricezione 2 * dB.
÷ 3 9 þ
Frequenza di portante \z 3 GHz.
÷ þ
Modulazione 4-PSK con roll-off ¶^*R":ü .
÷ ±
Velocità di trasmissione * Mbit/s.
÷ Assorbimento atmosferico massimo ¸
þ ®6 ^
z ü dB.
67
)å
å
ré
é
§
÷ Temperatura di antenna ® * K.
`
Il ricevitore composto dalla catena: antenna + amplificatore a basso rumore (LNA) + linea
attenuante + amplificatore di potenza (HPA). Questi componenti hanno le seguenti caratteristiche:
3. HPA: guadagno 2
. `* dB, cifra di rumore WÐ! dB.
`
N
Calcolare la potenza trasmessa dal satellite affinchè la BER, nel caso di trasmissione non
codificata, sia X!n* , Y .
12.4 Problema 4
Uno schema ¢(x usa la modulazione 8-PAM, rappresentata dai segnali unidimensionali
`-kÁnRlnkVüRlnk>#)lnkB!ln!l#Rl@üRlÙnc e il codificatore binario di rate 2/3 rappresentato in figura 12.1.
1. Fare il set-partioning dell’8-PAM fino ad ottenere 4 sotto-costellazioni di 2 segnali ciascuna.
2. Disporre i segnali sulle transizioni del trellis del codificatore rispettando le tre regole di
Ungerboeck.
68
d
0 1 2 3 4 5 6 7
2d 2d
0 2 4 6 1 3 5 7
4d 4d 4d 4d
0 4 2 6 1 5 3 7
c2c1 00 11 01 10
69
00 0/00 00 00 (0,4) 00
1/11 (2,6)
0/11 (2,6)
01 01 01 01
1/00 (0,4)
0/10 (3,7)
10 10 10 10
1/01 (1,5)
0/01
(1,5)
11 11 11 11
1/10 (3,7)
70