165
 VIM\@G FIJJ@KNM\CGR@MKI I EMF@E@ Ugkfrm Lijj`k` Xmj`tiek`em f` C`jgkm

Teoria dell' Informazione e dei Codici - Bellini - Politecnico di Milano

Embed Size (px)

DESCRIPTION

Apprendimento sistematico dei fondamenti della teoria dell’informazione e dei codici, mettendo in evidenza come i maggiori progressi nelle tecniche di codifica abbiano sempre avuto come guida e ispirazione la teoria dell’informazione.

Citation preview

TEORIADELLINFORMAZIONEECODICISandroBelliniPolitecnicodiMilanoPrefazioneQuestebrevi notesonostatescrittepergli studenti del corsodi TeoriadellinformazioneecodicidametenutopressolaFacolt`adiIngegneriadelPolitecnicodiMilano. Partedelmaterialequi presentatosi trovasutesti classici, manonmancanomodi di vederepi` umoderni reperibili solo in articoli recenti. Lo scopo principale `e di fornire una sintesi, senzachesidebbaestrarrelinformazionedapi` ufontie,inevitabilmente,connotazionidiverse.Il primo capitolo `e dedicato alla teoria dellinformazione, creata da Shannon e resa pubblicanel 1948. Sonoriassunti i pi` usemplici, maanchepi` uimportanti, risultati sullacodicadi sorgenteedi canale. Si pu`oaermarechesenzaquesti riferimenti leapplicazioni eglisviluppipraticineidecenniseguentienoadoggisarebberostatimoltopi` ulenti.Si assume che il lettore abbia gi`a una conoscenza adeguata della teoria delle probabilit`a, esiastatoalmenoparzialmenteespostoaiproblemidellatrasmissionenumerica.Il secondocapitolopresentaunaintroduzionemoltosempliceallacodicaablocco, i cuiprimi passi sono riferibili agli stessi anni in cui nacque la teoria dellinformazione. Si mostracomemolti dei codici di interessepraticosianosinteticamentedescritti daunpolinomiogeneratore,senzatuttaviaentrarenelprogettodelcodice(salvomostrare,comegi`aShan-non aveva aermato, che se non vi fossero problemi di complessit`a il caso sarebbe un buonalleatonellacostruzionedicodiciecienti).Icodici convoluzionali, chehannodominatolascenapermolti anni, sonopresentati nelterzo capitolo. Nonoccorrono particolari strumenti matematici per capire, o addirit-turaprogettare, codici convoluzionali. Il capitolo`equindi abbastanzaagevole, comeilprecedente.Nel quarto capitolo sono riferiti gli elementi fondamentali della teoria dei campi niti, cio`edellabasematematicadei codici abloccopi` unoti epi` ufrequentementeusati. Lastessamatematica `eindispensabilepercomprendereladecodicaalgebricaditalicodici.Ilcapitolosuccessivod`aglielementiperlacostruzionedeicodiciBCHeReed-Solomoneper la loro decodica. Oggi le occasioni in cui si scelgono tali codici non sono pi` u frequenticomeinpassato,benchesoprattuttoiReed-Solomonsidifendanoancorabene. Lascarsaadattabilit`a delle tecniche algebriche alla decodica softfa preferire altri codici quando taleinformazione `e disponibile alluscita del canale di trasmissione. Tuttavia la matematica deicampi niti `e talmente interessante e aascinante che vien voglia di augurare ancora lungavitaallesueapplicazioni(fracuioggioccorrecitarealcunetecnichedicrittograa).Ilsestocapitolo`ededicatoadapprofondimentisuicodiciablocco, einparticolareadueimportanti applicazioni della trasformata di Hadamard: le relazioni tra pesi di un codice edel suo duale, ed il calcolo delle probabilit`a a posteriori dei bit dinformazione basato sulleparoledelcodiceduale.Il capitolosuccessivointroducei turbocodici, chehannorivoluzionatolostatodellartedella codica negli ultimi anni (sempre che siano tollerabili i ritardi nella trasmissione pro-dotti dablocchidi grande dimensione). Comincianoadessere disponibilialcunistrumentiiiperlaprevisionedelleprestazionideiturbocodici,chevengonosinteticamentepresentati.Nellultimocapitolosiarontailproblemadeicodiciadattiallecostellazionimultilivello,esipresentailpuntodivistapi` umodernosullargomento. Simostracomeicodicibinari(e quindi in particolare i turbo codici) possano essere utilizzati anche con tali costellazioni.Tuttaviasi accennaancheallatecnicachehadominatotali applicazioni per ventanni,ancheseorasembrerebbedestinataadunrapidodeclinoperlomenonelleapplicazionichepossonosopportareiconsiderevoliritardideiturbocodici.Duebrevi appendici riportanogli elementi essenziali dellarappresentazionedei segnali edei fondamenti di trasmissionenumerica, perchi gi`anonconoscaquesti temi, nonindi-spensabili perlacomprensionedellateoriamachepossonoesseredi unaqualcheutilit`aperinquadrareicodiciinuncontestoapplicativo.Questotestonon`epensatoperunarapidaconsultazione, mapiuttostoperunapprendi-mento pi` u sistematicodei fondamenti dellateoriadellinformazione e dei codici,mettendoin evidenza come i maggiori progressi nelle tecniche di codica abbiano sempre avuto comeguidaeispirazionelateoriadellinformazione.E sempremoltodicileresistereallatentazionedi includerequael`adivagazioni eap-profondimenti, forsenonstrettamenteindispensabili machetuttaviapossonoincuriosirequalche lettore. In genere si cede alleleganza formale di un risultato, tendendo a trascurareil fattochenontutti gli utilizzatori netrarrannolostessopiacere. Durantelelezioni sitornarapidamenteallarealt`a.Allo stesso modo la tentazione in cui non deve cadere un docente `e tramandare tutto quantoha studiato, indipendentemente dalla reale utilit`a. Occorre mettere nella giusta prospettivail vasto materiale disponibile, e in denitiva cancellare ampie porzioni del passato per darespazioalnuovo.E bene avvertire il lettore che per semplicare la notazione sono frequentemente sottintesigli estremi di integrali esomme, qualorasianoinniti oppurechiaramentededucibili dalcontesto.Ringrazioling. MarcoFerrari, concui collaborodatemponelleattivit`aistituzionali diricercaedidattica,inparticolare(manonsolo)perleguredelcapitolosuiturbocodiciepericommentisututtoiltesto.Le imprecisioni e gli errori sono inevitabili, e sono responsabilit`a solo dellautore. Spero chenonsianotropponumerosiecherisultifacileintuirecosaavreivoluto,edovuto,scrivere.CometuttiimieilavoridedicoanchequestoaIlia,miamoglie.SandroBelliniIndice1 Teoriadellinformazione 11.1 Introduzioneallateoriadellinformazione . . . . . . . . . . . . . . . . . . . 11.2 Codicadisorgente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2.1 Sorgenticontinueediscrete . . . . . . . . . . . . . . . . . . . . . . 21.2.2 Sorgentisenzamemoriaeconmemoria . . . . . . . . . . . . . . . . 31.2.3 Entropiadisorgentisenzamemoria . . . . . . . . . . . . . . . . . . 31.2.4 Codicadisorgentisenzamemoria . . . . . . . . . . . . . . . . . . 51.2.5 Entropiacondizionata . . . . . . . . . . . . . . . . . . . . . . . . . 81.2.6 Entropiadisorgenticonmemoria . . . . . . . . . . . . . . . . . . . 91.3 Modellidelcanaleditrasmissione . . . . . . . . . . . . . . . . . . . . . . . 111.4 Informazionemutuaecapacit`adicanale . . . . . . . . . . . . . . . . . . . 131.4.1 Informazionemutuaecapacit`anelcasocontinuo . . . . . . . . . . . 141.5 Teoremadellacodicadicanale . . . . . . . . . . . . . . . . . . . . . . . . 181.5.1 Maggiorazionedellaprobabilit`adierrore . . . . . . . . . . . . . . . 191.5.2 Canalisenzamemoria . . . . . . . . . . . . . . . . . . . . . . . . . 201.5.3 Esponentederrore . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.5.4 Considerazioninalisullacodicadicanale . . . . . . . . . . . . . 242 Introduzioneallacodica: codiciablocco 272.1 Codicadicanale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.1.1 Codicilineari . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.1.2 CodicidiHamming . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.1.3 Matricegeneratriceediparit`a. . . . . . . . . . . . . . . . . . . . . 302.1.4 Sindrome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312.1.5 Rappresentazionepolinomiale . . . . . . . . . . . . . . . . . . . . . 32iiiiv INDICE2.1.6 Decodicahardesoft . . . . . . . . . . . . . . . . . . . . . . . . . 332.1.7 Decodicaamassimaverosimiglianzaebitperbit. . . . . . . . . . 342.1.8 Codicigeneratiinmodocasuale . . . . . . . . . . . . . . . . . . . . 352.2 Codiciciclici. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392.2.1 CodiciBCH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402.2.2 CodiciReed-Solomon . . . . . . . . . . . . . . . . . . . . . . . . . . 402.2.3 Codicipererroriconcentratiapacchetti . . . . . . . . . . . . . . . 412.2.4 Codiciconcatenati . . . . . . . . . . . . . . . . . . . . . . . . . . . 422.2.5 Codiciprodotto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422.3 Prestazionideicodiciablocco . . . . . . . . . . . . . . . . . . . . . . . . . 433 Introduzioneallacodica: codiciconvoluzionali 453.1 Codiciconvoluzionali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453.2 Decodicaamassimaverosimiglianza . . . . . . . . . . . . . . . . . . . . . 473.3 Codiciconvoluzionalirecursivisistematici . . . . . . . . . . . . . . . . . . . 503.4 Decodicabitperbit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513.5 Codiciconvoluzionalitail biting . . . . . . . . . . . . . . . . . . . . . . . . 523.6 Prestazionideicodiciconvoluzionali . . . . . . . . . . . . . . . . . . . . . . 534 Algebradeicampiniti 594.1 Campiniti(odiGalois) . . . . . . . . . . . . . . . . . . . . . . . . . . . 594.1.1 Campiniticonunnumeroprimodielementi . . . . . . . . . . . . 604.1.2 Campiniticonunnumerodielementinonprimo . . . . . . . . . . 614.1.3 Rappresentazionedeglielementideicampiniti . . . . . . . . . . . 624.1.4 Elementiprimitivierappresentazioneesponenziale . . . . . . . . . 644.1.5 Calcolodiespressionialgebriche . . . . . . . . . . . . . . . . . . . . 654.1.6 Polinomiprimitivigeneratoridelcampo . . . . . . . . . . . . . . . 664.1.7 Sequenzepseudocasuali . . . . . . . . . . . . . . . . . . . . . . . . . 694.2 Propriet`aspecichedellalgebradeicampiniti . . . . . . . . . . . . . . . 714.2.1 RappresentazioniisomorfediGF(qm) . . . . . . . . . . . . . . . . . 734.2.2 RappresentazionediGF(2m)conaltrebasi . . . . . . . . . . . . . . 745 Codiciabloccoedecodicaalgebrica 775.1 TrasformatadiscretadiFourierneicampiniti . . . . . . . . . . . . . . . . 77INDICE v5.1.1 Denizionedellatrasformatadiscreta . . . . . . . . . . . . . . . . . 775.1.2 Propriet`adellatrasformatadiscreta. . . . . . . . . . . . . . . . . . 795.2 Codiciciclici. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 805.2.1 Polinomiogeneratore . . . . . . . . . . . . . . . . . . . . . . . . . . 805.2.2 Polinomiodiparit`a . . . . . . . . . . . . . . . . . . . . . . . . . . . 815.2.3 Codiceduale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815.2.4 Strutturadelcodicatore . . . . . . . . . . . . . . . . . . . . . . . . 825.2.5 Modicazionideicodici(binari) . . . . . . . . . . . . . . . . . . . . 845.2.6 Alcunepropriet`adeicodiciciclici . . . . . . . . . . . . . . . . . . . 845.3 CodiciBCH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845.3.1 CodiciBCHbinari . . . . . . . . . . . . . . . . . . . . . . . . . . . 855.3.2 CodicidiHamming . . . . . . . . . . . . . . . . . . . . . . . . . . . 855.3.3 CodiciBCHnonprimitivi . . . . . . . . . . . . . . . . . . . . . . . 865.3.4 CodiciBCHnonbinari . . . . . . . . . . . . . . . . . . . . . . . . . 865.4 CodiciReed-Solomon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875.5 Decodicaalgebrica(codiciBCHeRS) . . . . . . . . . . . . . . . . . . . 885.5.1 Polinomiolocatoredeglierrori . . . . . . . . . . . . . . . . . . . . . 885.5.2 UnadimostrazionealternativadelBCHbound . . . . . . . . . . . . 905.5.3 Valutazionedeivalorideglierrori . . . . . . . . . . . . . . . . . . . 905.5.4 Alcuneconsiderazionipratiche. . . . . . . . . . . . . . . . . . . . . 925.5.5 Unsempliceesempio . . . . . . . . . . . . . . . . . . . . . . . . . . 935.6 Soluzionedellakeyequation . . . . . . . . . . . . . . . . . . . . . . . . . . 945.6.1 AlgoritmodiEuclide . . . . . . . . . . . . . . . . . . . . . . . . . . 955.6.2 AlgoritmodiBerlekamp-Massey . . . . . . . . . . . . . . . . . . . . 985.6.3 Possibilicontrollinalisullasoluzione . . . . . . . . . . . . . . . . . 995.6.4 Correzionedierroriecancellazioni . . . . . . . . . . . . . . . . . . 996 Complementisuicodiciablocco 1016.1 Decodicaamassimaverosimiglianzadeicodiciablocco . . . . . . . . . . 1016.2 TrasformatadiHadamard . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026.3 TeoremadiMacWilliams. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1036.3.1 Esempi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056.3.2 Distribuzioneapprossimatadeipesi . . . . . . . . . . . . . . . . . . 1056.3.3 DistribuzionedeipesideicodiciReed-Solomon. . . . . . . . . . . . 106vi INDICE6.3.4 Codicibinariutilizzaticomerivelatori . . . . . . . . . . . . . . . . 1076.3.5 Codiciutilizzaticomerivelatoriecorrettori . . . . . . . . . . . . . 1086.3.6 Probabilit`aderrorealluscitadeldecodicatore . . . . . . . . . . . 1096.4 AlgoritmodiHartmanneRudolph . . . . . . . . . . . . . . . . . . . . . . 1107 Turbocodici 1157.1 Decodicaiterativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1167.1.1 Concatenazioneparallela . . . . . . . . . . . . . . . . . . . . . . . . 1167.1.2 Concatenazioneserie . . . . . . . . . . . . . . . . . . . . . . . . . . 1177.2 Codicicomponentiepermutazione . . . . . . . . . . . . . . . . . . . . . . 1187.2.1 Perforazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1207.2.2 Concatenazionedipi` ucodici . . . . . . . . . . . . . . . . . . . . . . 1207.3 Convergenzadelladecodicaiterativa . . . . . . . . . . . . . . . . . . . . 1247.4 Prestazioniasintotichedeiturbocodici . . . . . . . . . . . . . . . . . . . . 1307.5 Altreapplicazionidellaelaborazioneiterativa . . . . . . . . . . . . . . . . 1318 Codicipercostellazionimultilivello 1338.1 Capacit`adellecostellazionimultilivello . . . . . . . . . . . . . . . . . . . . 1348.1.1 Esempidicapacit`adicostellazionimultilivello . . . . . . . . . . . . 1368.1.2 Demodulazionebitperbit . . . . . . . . . . . . . . . . . . . . . . . 1368.1.3 Bitinterleavedcodedmodulation. . . . . . . . . . . . . . . . . . . . 1408.2 Trelliscodedmodulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141ARappresentazionedeisegnali 147A.1 Rappresentazionegeometricadeisegnali . . . . . . . . . . . . . . . . . . . 147A.2 Rappresentazionegeometricadelrumore . . . . . . . . . . . . . . . . . . . 149BFondamentiditrasmissionenumerica 153B.1 Probabilit`aaposteriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153B.2 Probabilit`aderrore. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155B.3 Calcoloapprossimatodellaprobabilit`a derrore . . . . . . . . . . . . . . . 156Capitolo1Teoriadellinformazione1.1 IntroduzioneallateoriadellinformazioneLeprincipalidomandeacuid`arispostalateoriadellinformazionesonoleseguenti:data una sorgente che emette messaggi da inviare ad un destinatario, quale sia il modopi` u economico per rappresentare, con qualit`a pressata, linformazione da trasmettereodamemorizzaresuunqualchesupportosicodato un canale non ideale, la cui uscita sia una replica distorta (rumorosa) dellingres-so, come si possa trasmettere o memorizzare linformazione in modo sucientementeadabilePer entrambi i tipi di questioni si hanno almeno due aspetti da considerare: uno relativo alletecniche utilizzabili in pratica per codicare una sorgente e per trasmettere linformazione;laltro, pi` u teorico, su quali siano le migliori prestazioni ottenibili con vincoli pressati sullacomplessit`adellelaborazione: ilcasopi` usemplice,epi` uspessoconsiderato,`eaddiritturasenzavincolidicomplessit`a.Lateoriadellinformazionesiconcentrasoprattuttosuilimititeoricialleprestazionidellacodica di sorgente e della trasmissione in presenza di disturbi. Tuttavia le indicazioni chela teoria fornisce non sono solo uno stimolo a ricercare metodi pratici che si avvicinino allemigliori prestazioni possibili, ma spesso danno anche utili suggerimenti per orientarsi nellaricerca.Iproblemi pi` usemplici, epi` unoti, arontati dallateoriadellinformazionerelativamentealla codica di sorgente riguardano la codica senzaperditadiinformazione, ovvero inver-tibilesenzaalcunadegradazione. Quandoadesempiosicomprimeunledicalcolatoresipretende di poterlo riottenere senza alcun bit o byte sbagliato. Quando invece si rappresen-tainformacompressaunimmagineounsegnalevocalesolitamentesitolleraunaqualchedegradazione, purchequestasianotaapriori. Evidentementeladisponibilit`aatollerare12 CAPITOLO1. TEORIADELLINFORMAZIONEimprecisioni nellaricostruzione`eanchefortementecondizionatadallentit`adel risparmiocos`ottenibilenellacodicadisorgente.Analogamente quandosi trasmette informazione, soprattuttose`e stataeettuataunacodicadisorgenteequindiognisimbolohaormaibenpocaridondanza,sipretendeunaprobabilit`aderroremoltopiccola: sesipotesse,lasivorrebbeaddiritturanulla. Tuttaviala teoria si occupa anche di situazioni meno comuni ma pi` u complesse, in cui ci si accontentiadesempiodiunaprobabilit`aderrorepressata(magarinonpiccola).1.2 CodicadisorgenteIl primoproblemadellateoriadellinformazione`e come si possadenire, e quindi mi-surare, laquantit` adi informazione emessadaunasorgente, dettaancheentropia dellasorgente. Sidesiderachequestagrandezzasiastrettamentelegataalcostominimoperlarappresentazionedellasequenzadimessaggiemessidallasorgente.Occorre subitodire che ogni aspettosemantico viene totalmente ignorato dalla teoriadellinformazioneformulatadaShannonversolanedeglianni40. Siimmaginididovertrasmetterelasequenzadi testeecroci ottenutenel lanciodi unamonetanontruccata,medianteunasuccessionebinariadizerieuni. Linformazioneemessadaquestasorgente`eraramentedi unqualchevaloreperunpossibiledestinatario. Tuttaviasi vedr`aprestochefralesorgenti binariequestahail massimodi informazione: se davverooccorrefarconoscere il risultatodi unlancio`e inevitabile trasmettereunbit, essendoogni lancioindipendente da tutti gli altri e non avendo la sorgente alcuna preferenza per le teste o perlecroci, ovveroperzeri ouni. Linformazione, corrispondenteadunbitperlancio, nonmisura dunque lutilit`a del messaggio ma il costo della rappresentazione con cifre binarie1.1.2.1 SorgenticontinueediscreteNel seguito si considerano solo sorgenti discrete, che emettono successioni di cifre, binarie onon binarie. Sorgenti continue nel tempopossono essere rese discrete nel tempo mediante ilcampionamento,condegradazionetrascurabileselafrequenzadicampionamento `esceltaopportunamente.Sorgenti continue nelle ampiezzeottenute campionando sorgenti analogiche vengono solita-mentediscretizzatemediantelaquantizzazione. Sitrattadiunaoperazionecheintroduceunerrore, di entit`afacilmenteprevedibile2. Si assumer`aquindi chelasorgentesiagi`adiscretaneltempoenelleampiezze.1nelmondosiscambianotantimessaggiapparentementeinutili,manon `ecertocompitodichiprogettaegestisceisistemiditrasmissionesindacaresucosavienerichiestoditrasmettere2quellapartediteoriadellinformazione,quinonconsiderata,chesioccupadellacodicadisorgenteconperdita di informazioned` a indicazioni su quale sia il modo migliore per discretizzare le ampiezze (chenon`elausualequantizzazione, maunaqualcheformadi quantizzazionevettoriale)esuqualesiail numerominimodibitpercampionenecessarioperottenerelaprecisionedesiderataS.Bellini 1.2. Codicadisorgente 31.2.2 SorgentisenzamemoriaeconmemoriaLepropriet`astatistichedellasorgentesonoevidentementeimportanti per lapossibilit`adi codicaeconomica: si vedr`acheoccorresfruttaresialaeventualenonequiprobabilit` adei messaggi sialaeventualenonindipendenzadei simboli successivamenteemessi dallasorgente (memoriadellasorgente), assegnandostringhe codicate pi` ulunghe (cio`e pi` ucostose)aimessaggiosequenzedimessaggimenofrequenti.Le sorgenti senzamemoriasonopi` usemplici datrattare teoricamente, e pi` ufacili dacodicare: `eunveropeccatochesianocos`rareinpratica! Perunadescrizionecompletadi unasorgentesenzamemoria, chesi supponestazionaria, bastadareleprobabilit`adeipossibilimessaggixi,trattidauninsiemeX,dettoalfabeto.Lesorgenti conmemoriasonocaratterizzateanchedalleprobabilit`acongiunte, dei variordini, di messaggi successivi. Spessoquestaconoscenzanon`edisponibile, ocomunquenon si hanno stime sucientemente adabili di tali probabilit` a. Ad esempio `e evidente chevolendoanalizzareinuntestoscrittolefrequenzedei caratteri, dellecoppiedi caratteri,delleterne, . . . il compitodiventaviaviapi` udicile: occorronosegmenti semprepi` ulunghi di testo, al puntodacominciareadubitarechelasorgentepossaessereritenutadavverostazionaria.Spessononsononoteapriorineppureleprobabilit`adeisingolimessaggi. Tuttaviaanchein questo caso esistono tecniche di codica di sorgente che danno prestazioni vicine ai limititeorici,pursconosciuti,qualunqueessisiano.1.2.3 EntropiadisorgentisenzamemoriaImponendoduesemplici condizioni, intuitivamentedesiderabili, ovverochelinformazio-neportatadaunmessaggiosiatantomaggiorequantomenoil messaggio`eatteso(cio`eprobabile)echelinformazionediunacoppiadimessaggiindipendentisialasommadellerispettivequantit`adiinformazione,Shannonriconobbechesidevedenirelinformazionediunospecicomessaggioxiaventeprobabilit`aP(xi)comelaquantit`a,nonnegativa,I(xi) = log1P(xi)(1.1)Volendodenirelinformazione, oentropia, dellasorgentesi considerail valormedio, sututtolalfabeto,diI(xi):H(X) = E [I(xi)] =

iP(xi) log1P(xi)(1.2)Si ha evidentemente H(X) 0. La base dei logaritmi `e arbitraria, ma solo due scelte sonodi usocomune: i logaritmi naturali, nobili eprivilegiati dal puntodi vistamatematico,oppure i logaritmi in base 2. Nel secondo caso il risultato del lancio di una moneta onesta,rappresentatoconzerooppureuno, d`aI(0)=I(1)=1equindiH(X)=1: chiaramente4 CAPITOLO1. TEORIADELLINFORMAZIONEunbit dinformazioneper ciascunlancio(messaggio). Seinvecesi usasseroi logaritminaturali si avrebbeH(X)=0.693nat permessaggio. Nel seguitoi logaritmi sarannoinbase2,amenochesiadiversamentespecicato.Con quattro messaggi xi equiprobabili si ottiene H(X) = 2 bit per messaggio. Il risultato `econfortante se si pensa che quattro messaggi equiprobabili possono essere ottenuti mediantecoppiedibitindipendentiedequiprobabili.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 100.10.20.30.40.50.60.70.80.91pH(p)Figura1.1: Entropiadiunasorgentebinaria,conprobabilit`ape1 pUnamonetatruccata(masenzamemoria) chediatesteecroci nonequiprobabili, conprobabilit`ape1 p,haentropia(mostratainFig. 1.1)H(X) = p log 1p+ (1 p) log11 p(1.3)Il caso peggiore, dal punto di vista della codica di sorgente, `e lequiprobabilit`a dei risultaticome`efaciledimostrareancheingenerale. Bastautilizzarelasemplicediseguaglianzalogex x 1,validaperogni x > 0,equindilog x log e (x 1). Sihauguaglianzasoloperx = 1. PerunalfabetodiMsimbolisihaH(X) =

iP(xi) log1P(xi)= log M+

iP(xi) log1MP(xi) log M+ log e

iP(xi)_1MP(xi) 1_ = log M(1.4)conuguaglianzasoloseP(xi) = 1/Mperognii.S.Bellini 1.2. Codicadisorgente 51.2.4 CodicadisorgentisenzamemoriaDenitalentropiadiunasorgentesenzamemoria,sipu`odimostrarecheilnumeromediodi bit strettamente necessari per codicare la sorgente coincide con lentropia: non esistonocodiciconlunghezzamediainferiore. Esistonotuttaviacodiciconlunghezzamediavicinaquanto si vuole allentropia, purche non si ponga alcun vincolo sulla complessit`a del codice.Lalunghezzamediadiuncodice `edenitacomeilvalormediodelnumerodibitnispesipercodicareilgenericomessaggioxi: n =

iP(xi)ni(1.5)Si dimostraabbastanzafacilmentecheesistealmenouncodicedecodicabile3sevaleladiseguaglianzadiKraft4

i2ni 1 (1.6)La stessa condizione `e necessaria per qualsiasi codice decodicabile, anche non istantanea-mente5. InfattiperunalfabetoXdiMsimbolieperNinteroqualsiasisiha6_M

i=12ni_N=

i1. . .

iN2(ni1+...+niN)=Nnmax

n=NnminAn2n Nnmax(1.7)doven = ni1 + . . . + niN`elalunghezzacomplessivadelleparoleconcuisonocodicatiNmessaggi consecutivi xi1, . . ., xiNemessi della sorgente, An `e il numero di messaggi distinticodicaticonnbit,enmax= max(n1, . . . , nN). Si`eancheutilizzatoilfattochepercheilcodicepossaesseredecodicabiledeveessereAn 2n: esistonoinfatti solo2nsequenzedistintedinbit. PoicheN`earbitrario,lasciandotendereNallinnitosiottieneM

i=12ni (Nnmax)1/N1 (1.8)Dallanecessit`adelladiseguaglianzadi Kraft si ricavafacilmentechelalunghezzamedia3condizioneevidentementeirrinunciabile4bastaordinaregliniperlunghezzecrescenti,scegliereunbloccoarbitrariodin1bitcomeprimocodice,depennaretutteleparoledi codicecheinizinoconquestecifrebinarie(senescartalafrazione2n1), eprocedereinmodoanalogoperlesuccessiveparole; seladiseguaglianza`evericatail procedimentopu` oesserecondottonoinfondo; ilcodicehalagradevolepropriet` achenessunaparola`eugualealliniziodiunaltra,equindi `edecodicabileistantaneamenteovveroappenalagenericaparola `eterminata5ci`otoglieogniinteresseaicodicinonistantaneamentedecodicabili,poichenonoronoalcunvantaggio6la codica di sorgente potrebbe non essere eettuata simbolo per simbolo; prima di codicare si potrebberoraggruppare in un unico simbolo pi` u simboli emessi dalla sorgente; in tal caso lalfabeto X`e quello eettivoacuivieneapplicatalacodicadisorgente6 CAPITOLO1. TEORIADELLINFORMAZIONEdelcodicenonpu`oessereminoredellentropiadellasorgente. InfattiH(X) n =

iP(xi)_log1P(xi) ni_ =

iP(xi) log2niP(xi) log e

iP(xi)_2niP(xi) 1_ 0(1.9)Si noti che il risultato vale anche se si codicano blocchi di messaggi elementari: il numeromediodibitpercodicarelaN-planonpu`oessereminoredellentropiadellaN-pla,datadaNH(X): sispendonoquindialmenoH(X)bitperciascunmessaggio.Sinotichesepercasoleprobabilit`aP(xi)sonotuttepotenze(negative)di2sipu`oaveresenzafatica n = H(X): bastascegliereni= log1P(xi).Ingeneralesi pu`oscegliereperciascunnilinteroimmediatamentesuperiore log1P(xi).SidimostrafacilmentecheinquestomodosiottieneH(X) n < H(X) + 1 (1.10)cio`e che si sprecaal pi` u un bit. Se si codicano N-ple di messaggi elementari si spreca, nelcaso peggiore, ancora non pi` u di un bit e quindi in media non pi` u di 1/Nbit per messaggio.ScegliendoNsucientementegrandeilgioco `efatto.Lassegnazione delle lunghezze delle parole ni=log1P(xi) non`e ottima: il codice diHumanindicalaproceduraperrendereminimo n,peruninsiemepressatodimessaggi(elementari onon) di cui sianonoteleprobabilit`a. Non`etuttaviail casodi insisteresullargomento sia perche le sorgenti senza memoria sono rare in pratica sia perche esistonotecnichedi codicauniversale chenonrichiedonodi conoscereleprobabilit`aP(xi) deimessaggi.Alcuneconseguenzenontrascurabilidiunaecacecodicadisorgentesonoleseguenti:dalla sequenza binaria codicata, e inviata al sistema di trasmissione, `e stata rimossaquasi ogni ridondanza e non `e possibile comprimere ulteriormente i messaggi;quindilasequenzacodicatacontienezerieunipressocheequiprobabilierrorinellatrasmissionedeibitcodicatisonopi` ugravidierroricommessitrasmet-tendounasorgentefortementeridondante(comegli errori di stampainuntestoscritto,fastidiosimaspessoinnocui);se si `e ricercatalamassimacompressione dellasorgenteilsistemaditrasmissionedeveesseremoltoadabileCodicauniversalepersorgentisenzamemoriaSequattromessaggi hannoprobabilit`ap1=1/2, p2=1/4ep3=p4=1/8uncodiceadatto, e istantaneamente decodicabile7, `e 0, 10, 110, 111. Questoper`osarebbe un7siproviascrivereunaqualunquesequenzadizerieunieadinterpretarlacomesequenzadimessaggiS.Bellini 1.2. Codicadisorgente 7pessimocodiceseleprobabilit`afosseromoltediversedaquelleattese. Eseaddiritturaleprobabilit`adei quattromessaggi nonfosseronoteapriori comesi potrebbecodicarelasorgente? Sorprendentementeesistonotecnichedi codicauniversalechenonrichiedonola conoscenza delle probabilit`a e che danno prestazioni prossime allentropia della sorgente(sconosciuta!) purchesicodichinoN-plesucientementelunghe.Si consideri comeesempiounasequenzadi lanci di monetatruccata(testaecrocenonequiprobabili). Indichiamocon1e 0i possibili messaggi, e conpe 1 ple relativeprobabilit`a.Il singolomessaggio`ecasuale, cio`eimpredicibile. Inunbloccodi Nmessaggi, conNgrande, lasequenza`eugualmenteimprevedibile, mail numerocomplessivodi uni ezeri`equasi prevedibile, per laleggedei grandi numeri: circaNpuni eN(1 p) zeri. PerNgrandeloscartoquadraticomedio_Np(1 p), cio`elincertezzasul numerodi uni, `etrascurabilerispettoaivalorimedi.Un semplice metodo di codica universale per sorgenti binarie senza memoria `e il seguente.Presa una N-pla si contano gli uni e se ne codica il numero con log(N +1) bit. Il fattonotevole `e che il costo per messaggio log(N +1)/N`e trascurabile se N`e grande e tendeazeroperNtendenteallinnito.Notoilnumerokdiuni, questipossonopresentarsiin_Nk_modicherichiedono log_Nk_bitperlacodica.Ilcostoaddizionalepermessaggio`eprossimoaH(X),comesipu`omostrareconqualchecalcolo. Lingredienteprincipale `elasempliceapprossimazionediStirlingn! 2n(n/e)n(1.11)dacuisiottiene_Nk_ =N!k!(N k)! 2N(N/e)N2k(k/e)k_2(N k)((N k)/e)NkNNkk(N k)Nk NN(Np)Np(N(1 p))N(1p)= pNp(1 p)N(1p)(1.12)NegliultimipassaggisisonotrascuratiitermininonesponenzialiinNesi`eutilizzatoilfattochek Np.Ilcostoperciascunmessaggio `equindi1Nlog2_Nk_ p log p (1 p) log(1 p) = H(X) (1.13)Si deve osservare che tale costo varia automaticamente con p! Se p = 1/2,_Nk_`e il massimopossibile. Persorgentifortementesbilanciate_Nk_ `einvecemoltopi` upiccolo.Siconsideriilseguenteesempionumerico:p = 0.1 N= 100 Np = 10_Np(1 p) = 38 CAPITOLO1. TEORIADELLINFORMAZIONEPoichekpu`oavere101valoridiversi,percodicareilvaloredikbastano7bit. Poisiha_Nk__NNp_ =_10010_ = 1.73 101344bitSiosservichepotrebbecapitare,adesempio,k = 13;intalcaso_Nk_ =_10013_ = 7.11 101553bitmaconcircalastessaprobabilit`asi hak=7, ebastano34bit; il numeromediodi bitspesirestaquasiinvariato.Il codiceperil casok=10contienepi` udi 1013parole. Inoltreoccorreprevederecodicidiversiperciascunvaloredik. Lacomplessit`a `equindimoltoelevata.Intotalesispendonoinmediacirca51bitper100messaggiequindi0.51bit/messaggio8.Il lettorepu`ofacilmentevericarecheconblocchi di soli 15bitsi sarebbeottenutouncostomediodi 0.60bit/messaggio, mentre conblocchi di 1000bit basterebbero0.475bit/messaggio,valoremoltovicinoallimiteteoricodatodallentropiadellasorgenteH(X) = p log 1p+ (1 p) log11 p= 0.469bit/messaggio (1.14)Lanonequiprobabilit`ariducequindi il costodellacodica. Sep 1/2`einveceinutiletentaredicomprimerelasorgente: ognimessaggiocostaunbit.1.2.5 EntropiacondizionataSe si considerano le probabilit`a P(xi/yj) dei messaggi xi emessi dalla sorgente, condizionateadunospecicoeventoyjsipotrebbedenirelentropiacondizionataalleventoyjH(X/yj) =

iP(xi/yj) log1P(xi/yj)(1.15)Ingenereyj`easuavoltatrattodaunalfabetoY , conprobabilit`aP(yj). Risultaquindipi` uutiledenirelentropiacondizionatacomevalormediorispettoaglieventiyj,datodaH(X/Y ) =

jP(yj)

iP(xi/yj) log1P(xi/yj)=

i

jP(xi, yj) log1P(xi/yj)(1.16)Sivericafacilmentecheilcondizionamentononpu`oaumentarelentropia. InfattisihaH(X/Y ) H(X) =

i

jP(xi, yj) logP(xi)P(xi/yj) log e

i

jP(xi, yj)_P(xi)P(xi/yj) 1_ = 0(1.17)8ilcalcoloesattod` a0.507bit/messaggioS.Bellini 1.2. Codicadisorgente 9conuguaglianzaseesoloseP(xi/yj)=P(xi)perogni iej, cio`esei messaggi xisonostatisticamenteindipendentidaglieventiyj.Inmododeltuttoanalogo,sesiintroduceunulteriorecondizionamentosiottieneH(X/Y, Z) H(X/Y ) (1.18)EntropiacongiuntaSesi consideranocongiuntamentecoppiedi messaggi xieyj, aventi probabilit`aP(xi, yj)sipu`oevidentementedenirelentropiacongiuntaH(X, Y ) =

i

jP(xi, yj) log1P(xi, yj)(1.19)Dallepropriet`adelleprobabilit`acongiunteecondizionaterisultaevidentecheH(X, Y ) = H(X) + H(Y/X) = H(Y ) +H(X/Y ) (1.20)Pi` uingeneralevalgonorelazionicomeH(X, Y, Z, . . .) = H(X) + H(Y/X) + H(Z/X, Y ) + . . . (1.21)1.2.6 EntropiadisorgenticonmemoriaSia {xk} la successione di messaggi emessi da una sorgente stazionaria con memoria. Se lasorgentenonavessememorialentropiaH(Xk)verrebbecalcolatadalleprobabilit`amargi-nali dei messaggi. Tuttaviaacausadellamemoriail messaggioxkallistantek`emeglioprevedibiledi quantoindicatodallesoleprobabilit`amarginali P(xk). Infatti `egi`ano-toilmessaggioprecedentexk1. Lentropiacondizionataalmessaggioprecedente `einfattiH(Xk/Xk1) H(Xk). Se la memoria della sorgente si estende ad altri messaggi precedentisiconsideranoH(Xk/Xk1, Xk2) H(Xk/Xk1),. . .LentropiadellasorgenteH(X) `edenitacomelimiteditalesuccessionenoncrescentedientropie condizionate,per osservazione tendente allinnito. Il calcolo dellentropia risultasemplicenel casodi sorgenti di Markov perchenonoccorreprocedereoltrelalunghezzanitadellamemoria. Ingeneraleil calcolonon`esemplice, espessonon`epraticamentepossibilemisuraretutteleprobabilit`acondizionatechesonorichieste.Una denizione alternativa di entropia, equivalente alla precedente, `e ottenuta consideran-doblocchidiLmessaggiefacendotendereLainnito:HL(X) =1LH(Xk, Xk1, . . . , XkL+1) (1.22)H(X) =limLHL(X) (1.23)10 CAPITOLO1. TEORIADELLINFORMAZIONERicordando che il condizionamento non aumenta lentropia, e che la sorgente `e stazionaria,sihaHL(X) =1L_H(XkL+1) +H(XkL+2/XkL+1) +. . .+H(Xk/Xk1, . . . , XkL+1)_ H(Xk/Xk1, . . . , XkL+1)(1.24)ma `eancheevidentecheleduesuccessionitendonoallostessolimite.Conquestasecondadenizionedientropia`eimmediatodimostrarecheanchenelcasodisorgenti con memoria la lunghezza media di qualsiasi codice non pu`o essere minore dellen-tropia,mapu`oavvicinarvisiquantosivuole. Ladimostrazione `einfattideltuttoanalogaaquelladel casosenzamemoria; bastaconsideraresequenzedi messaggi di lunghezzaLtendenteainnito.CodicadisorgenticonmemoriaSesi consideranosorgenti conmemoria, ingeneraleunacoppiadi messaggi consecutivix1x2haprobabilit`aP(x1, x2) =P(x1)P(x2). Si pu`oconsideraremessaggioelementarelacoppia(intuttelepossibilicongurazioni). AdesempiosisuppongachesiaP(0, 0) = 0.4P(0, 1) = 0.1P(1, 0) = 0.1P(1, 1) = 0.4SihaP(x1= 0) = P(0, 0) +P(0, 1) = 0.5P(x1= 1) = P(1, 0) +P(1, 1) = 0.5eanalogamenteP(x2= 0) = P(x2= 1) = 0.5,maP(0, 0) = P(x1= 0)P(x2= 0).Questasorgenteemettezerieuniequiprobabili. Tuttaviacodicandolecoppieilcosto `e0.4 log2 0.4 0.1 log2 0.1 0.1 log2 0.1 0.4 log2 0.42= 0.86bit/messaggio (1.25)Considerandoterne, quaterne, ecc. di messaggi il risultatopu` omigliorare, manonpeg-giorare. Il limiteperlunghezzandel messaggioelementaretendenteainnito`eil costoineliminabileperlatrasmissione. Si pongaattenzioneanonsi confonderenconN. Ilsuggerimentodellateoria`echeil codicedebbatrattarelunghi blocchi (lunghezzaN)dimessaggi, costituiti a loro volta da blocchi sucientemente lunghi (lunghezza n) di messaggielementariemessidallasorgente.S.Bellini 1.3. Modellidelcanaleditrasmissione 11Se nellesempio precedente si codicassero le terne (n = 3) ci si potrebbe avvicinare, con Nsucientemente elevato,a 0.815 bit/messaggio. Aumentando n si tenderebbe allentropia,ilcuivalore `eH= 0.722bit/messaggio.Anchepersorgenti conmemoriaesistonotecnichedi codicauniversale, chenonrichie-donolaconoscenzaapriori dellastatisticadellasorgente. Attualmenteletecnichepi` udiusesono, conqualchevariante, quellediZiv-Lempel. Ilprincipio`ediformareviavia,mentre si codica la sorgente, un dizionario di dimensione crescente di blocchi di messaggigi`aincontrati edi relativi blocchi codicati. Procedendonellacodica, alleparoledin-formazionegi`ainclusenel dizionariovengonoappesi unozerooppureununo, secondolasequenzaemessadallasorgente. Ildizionariotendeadarricchirsisolodisequenzetipiche(le pi` u frequenti). Le sequenze mai incontrate,perche impossibili o molto rare,non hannouncodice.Lacodicasi adattaautomaticamentealleprobabilit`acongiuntedellasorgente: si pu`odimostrare che per sequenze di lunghezza Ntendente allinnito il costo tende allentropiadellasorgente. Ladimostrazione `etuttaviamoltolunga.Perconcludere, `eevidentecheunabuonacompressionedi sorgenteeliminaquasi total-menteladipendenzastatisticatramessaggi successivi: lasequenzacodicataappare, altrasmettitore,pressochesenzamemoria.1.3 ModellidelcanaleditrasmissioneOgni canaledi trasmissionecontinuonel tempopu`oesseredescrittodaunequivalentecanale discreto nel tempo. Ad esempio nella trasmissione numerica in banda base la cascatadi generazionedellaformadonda, inviosul mezzotrasmissivo, aggiuntadellinevitabilerumore (termico, elettronico, ecc.), ltraggio in ricezione e campionamento in un opportunoistante di lettura produce in uscita la somma dellampiezza trasmessa e di un campione dirumore. Seisimbolitrasmessisuccessivamentenoninterferisconotralorolatrasmissionedi unasuccessionedi simboli equivaleariusarealtrettantevoltequestosemplicecanalediscreto.Nellatrasmissionenumericamultilivelloinbandapassanterisultaconvenientevedereleduecomponentitrasmesseeleduericevutecomecoppiedinumerireali,oppureinmodoequivalentecomenumericomplessi9.Perquantoriguardaleampiezze,nellatrasmissionenumericalasuccessionedeisimboliiningresso `e gi`a discreta (nel caso pi` u semplice a soli due valori). In tal caso ingresso e uscitasonodiscreti nel tempo, masololingresso`ediscretonelleampiezze. Infatti acausadelrumore luscita pu`o assumere valori continui nelle ampiezze. In alcuni casi luscita continua9concostellazioniQPSKeQAM,purchenonvisiainterferenzatraisimboli,latrasmissionedellacoppia`edel tuttoequivalenteaduesuccessivetrasmissioni inbandabase, equindi si ragionacomesesi fosseinbandabase;ci`onon `epi` uveroseleampiezzetrasmesseconleduecomponentinonsonoindipendenti,comeadesempioconcostellazioni8PSK12 CAPITOLO1. TEORIADELLINFORMAZIONE`e inviata ad un decisore e quindi `e disponibile solo un simbolo deciso, tratto da un alfabetonito.Limitandosi al caso di canali senza memoria, la descrizione statistica del canale di trasmis-sionerichiedelaconoscenzadialfabetoXiningresso(adesempiobinario: xi= 0, 1)alfabetoY inuscita(adesempiounnumerorealey, ounacoppiadi numeri reali,oppureunbitdecisoyj= 0, 1)probabilit`a di transizione tra ingresso e uscita: densit`a di probabilit`a p(y/xi) nel casocontinuo,oprobabilit`aP(yj/xi)nelcasodiscretoPervalutareilcomportamentodelcanale `eancheutileconoscereprobabilit`aP(xi) di ciascuningresso(e se vi fosse memoriaanche le probabilit`acongiuntediingressisuccessivi)analoghe probabilit`a P(yj), o densit`a di probabilit`a p(y), alluscita; queste sonocalcolabilidaidatiprecedentiAlcunisempliciesempidicanalisono:canale gaussiano (o canale additivo gaussiano): luscita `e la somma dellingresso e diunavariabilecasualegaussianaavalormedionulloeconvarianza2; `eil modellotipico di un sistema di trasmissione in presenza di rumore additivo gaussiano bianco,adesempioconingressobinario,senon`epresenteundecisorehardcanale binario simmetrico (BSC: Binary Symmetric Channel ): alfabeto binario {0,1}siainingressosiainuscita;probabilit`adierroreP(1/0) = P(0/1) = indipendentedallingresso; `e il modello tipico di un sistema di trasmissione binario che includa undecisorehardcanalebinarioconcancellazione(BEC: BinaryErasureChannel ): alfabetobinarioin ingresso e ternario in uscita {0,1,E} dove Eindica incertezza completa; P(E/0) =P(E/1)=; P(0/0)=P(1/1)=1 ; si noti cheinquestosemplicemodellosiassumecheglizerieuniricevutisianosemprecorrettiSi considererannodapprimai canali coningressoeuscitadiscreta. Si potrannodenirelentropiasiadellingressoH(X) =

iP(xi) log1P(xi)(1.26)siadelluscitaH(Y ) =

jP(yj) log1P(yj)(1.27)S.Bellini 1.4. Informazionemutuaecapacit`adicanale 131.4 Informazionemutuaecapacit`adicanaleSesiconsideraadesempiouncanalebinariosimmetricoconingressiequiprobabili,`eim-mediato vericare che sono equiprobabili anche le uscite. Si ha quindi H(X) = H(Y ) = 1.Questorisultatovalesianelcasodicanaleideale,chenoncommetteerrori,siaincasodierroriepersinoperilpeggiorcanalepossibileconprobabilit`aderrore = 1/2. NelprimocasoH(Y )`einformazioneeettivamentetrasmessa, nellultimoH(Y )`einformazionedeltutto inutile. Per distinguere tra questi casi occorre considerare anche lentropia congiunta,ovverolentropiadellacoppia(xi, yj)H(X, Y ) =

i

jP(xi, yj) log1P(xi, yj)(1.28)eleentropiecondizionateH(Y/X) =

i

jP(xi, yj) log1P(yj/xi)(1.29)H(X/Y ) =

i

jP(xi, yj) log1P(xi/yj)(1.30)che sono le quantit`a di informazione occorrenti per determinare luscita noto lingresso10elingressodataluscita11.PerilcanaleidealerisultaH(Y/X) = H(X/Y ) = 0mentreperilcanalepessimo,cio`edeltuttoinutile,sihaH(Y/X) = H(Y )eH(X/Y ) = H(X). Si `egi`avistocheinognicasoH(X, Y ) = H(X) + H(Y/X) = H(Y ) +H(X/Y ) (1.31)Inoltre,poicheilcondizionamentononpu`oaumentarelentropia,sihaH(Y/X) H(Y ) (1.32)H(X/Y ) H(X) (1.33)Poiche H(X) `e linformazione allingresso del canale e lequivocazione H(X/Y ) ha il signi-cato di informazione persa nel canale,linformazione che attraversa il canale `e data dalladierenzatraledueentropieI(X, Y ) = H(X) H(X/Y ) 0 (1.34)ed `edettainformazionemutua. Dallepropriet`agi`avistesiottieneancheI(X, Y ) = H(X) + H(Y ) H(X, Y ) = H(Y ) H(Y/X) (1.35)10nonunospecicoingressoxi,madivoltainvoltalingressoeettivo! infattisicalcolalamediarispettoaipossibiliingressixi11linformazione ancoranecessariaper specicare lingressounavoltanotaluscitahail signicatodiinformazionepersanelpassaggioattraversoilcanale,ed `eanchedettaequivocazione14 CAPITOLO1. TEORIADELLINFORMAZIONELinformazione mutua dipende non solo del canale ma anche dalla statistica della sorgente.Se infatti si trasmettesse una sorgente con entropia H(X) = 0 si vede dalla (1.34) che lin-formazione mutua I(X, Y ) sarebbe nulla anche se il canale fosse ideale. Si denisce capacit`adelcanalelamassimainformazionemutuapossibile,ottenutaconlamigliordistribuzionediprobabilit`adellingresso:C= maxP(x)I(X, Y ) (1.36)Unesempiomoltosemplice, emoltonoto, `elacapacit`adel canalebinariosimmetrico.Poiche12H(Y/X) = log 1+ (1 ) log11 (1.37)eilmassimodiH(Y ),ottenutoconingressiequiprobabiliequindiusciteequiprobabili,`eparia1lacapacit`a `edatadaC= 1 + log + (1 ) log(1 ) (1.38)Adesempiose =0.1si haC=0.53: ogni bit uscentedal canalevalesolo0.53bitdinformazione. Nondevesorprenderechequasi met`adellinformazionesiapersaconil10%degli errori; il problemaperlatrasmissioneadabiledellinformazione`elocalizzareglierrori.Lespressione I(X, Y ) =H(Y ) H(Y/X) `e spessolapi` ucomodaper il calcolodellacapacit`a. Infunzionedelleprobabilit`aP(xi)degliingressiedelleprobabilit`aP(yj/xi)ditransizionelespressionedellacapacit`a `eC= maxP(x)

i

jP(xi)P(yj/xi) logP(yj/xi)

iP(yj/xi)P(xi)(1.39)doveperP(yj)si `eusatalespressione

iP(yj/xi)P(xi).1.4.1 Informazionemutuaecapacit`anelcasocontinuoVolendogeneralizzareal casocontinuo13, si pu`opensaredi discretizzarelevariabili con-tinueinmodoviaviapi` utto, conunprocedimentodilimite. Tuttavialentropiaperdeogni signicatosico: leprobabilit`aP(yj)diventanogli innitesimi p(y) dyelasommadiventerebbe un integrale, ma il termine dynel logaritmo fa divergere il risultato. Dunque12evidentementesiaH(Y/x=0)siaH(Y/x=1), entropiedelluscitacondizionataagli specici ingressix=0ex=1,valgono log1+ (1 ) log11; questo`equindiancheilvalormediorispettoallingressox. Sinoticheilrisultatonondipendedalladistribuzionedix13spessolingresso `ediscretoeluscita `econtinuaS.Bellini 1.4. Informazionemutuaecapacit`adicanale 15lentropiacresce, etendeallinnito. Tuttavialeespressioni checontengonoladierenzadi due entropie, come quelle dellinformazione mutua e della capacit`a di canale, non hannoquestoproblema: illogaritmodelpassodidiscretizzazionesicancella. Ignorandodunqueilpassodidiscretizzazioneneilogaritmi,bastadenireconvenzionalmenteH(Y ) =_yp(y) log1p(y) dy (1.40)einmodoanalogolealtrequantit`a. Sex `eunavariabilediscretasihaC= maxP(x)

i_yP(xi)p(y/xi) logp(y/xi)

ip(y/xi)P(xi)dy (1.41)Seanchex `econtinuosihaC= maxp(x)_x_yp(x)p(y/x) logp(y/x)_xp(y/x)p(x) dx dxdy (1.42)Capacit`anelcasodirumoreadditivoindipendenteSeil rumore`eadditivoeindipendentedal segnaleluscita`ey =x + n, conxenva-riabili casuali indipendenti. Nel casodi ingressodiscretosi vericasubitochelentropiacondizionataH(Y/X) `edatada

iP(xi)_yp(y/x) log1p(y/x) dy=

iP(xi)_np(n) log1p(n) dn = H(N) (1.43)ed `eindipendentedax. QuindiC= maxP(x)H(Y ) H(N) (1.44)Nelcasocontinuo `efacilevericarecheilrisultato `eanalogo:C= maxp(x)H(Y ) H(N) (1.45)Capacit`adelcanalegaussianoconingressocontinuoPercalcolarelacapacit`aconlespressioneappenavistabastadunquecercareil massimodellentropiaH(Y ).Sep(y)`eladensit`adiprobabilit`adiunagenericavariabilecasualeyconvalormediomyevarianza2yeseZ(y) `eladensit`agaussianadiparivalormedioevarianza,siha_yp(y) log1Z(y) dy=_yp(y)_log_22y +(y my)222ylog e_dy== log_22y +12 log e =12 log(2e2y)(1.46)16 CAPITOLO1. TEORIADELLINFORMAZIONESe come casoparticolare si pone p(y) =Z(y) si ottiene il valore dellentropiadi unavariabilecasualegaussianaconvarianza2yH(Y ) =12 log(2e2y) (1.47)Seinvecey`eunagenericavariabilecasuale,condensit`ap(y)evarianza2y,sihaH(Y ) 12 log(2e2y) =_yp(y) log Z(y)p(y)dy log e_yp(y)_Z(y)p(y) 1_dy= 0 (1.48)conuguaglianzaseesolosep(y) =Z(y), cio`enel casogaussiano. Fissatalavarianza2y,lentropiaH(Y ) `equindimassimanelcasodidensit`adiprobabilit`agaussiana. Poich`ey=x + n, dovenhadensit`agaussiana, anchex`eunavariabilecasualegaussiana. Ladensit`ap(x)dellingressocherendemassimalinformazionemutuaepermettediottenerelacapacit`adelcanale `edunquegaussiana.Senonsi ponessealcunvincolosullingressoxbasterebbeevidentementeaumentarnelavarianza 2x per far crescere 2y= 2x+2n, quindi H(Y ) e inne anche la capacit`a. Se invecesissalavarianza2xdellingresso,lacapacit`a `edatadaC= H(Y ) H(N) =12 log_2e(2x + 2n)_12 log(2e2n) =12 log_1 +2x2n_(1.49)Si pu`o ottenere un canale discreto nel tempo trasmettendo 2B impulsi al secondo, modulatiin ampiezza senza interferenza reciproca, in una banda B. In presenza di rumore gaussianocon densit`a spettrale di potenza bilatera N0/2 si ha 2n= N0/2. Moltiplicando 2xe 2nper2B si ottengono rispettivamente la potenza Pdel segnale e la potenza N0B del rumore nellabanda B. Poiche il canale trasmette 2Bmessaggi al secondo si ha la notissima espressionedellacapacit`a,espressainbitalsecondo,C= Blog_1 +PN0B_(1.50)Capacit`adelcanalegaussianoconingressodiscretoSe lingresso `e binario antipodale (x = 1) lentropia H(Y ) delluscita deve essere calcolatanumericamente. Si pu`o vericare che il massimo si ha per ingressi equiprobabili. Si ottieneC=_np(n 1) log2p(n 1) +p(n + 1) dn 12 log(2e2n) (1.51)Nelcasoditrasmissioneaquattroopi` ulivelliilmassimodiH(Y )siottieneconingressinonequiprobabili. Il problema di maggior interesse ingegneristico, anche in questo caso, `eS.Bellini 1.4. Informazionemutuaecapacit`adicanale 17la ricerca del massimo di H(Y ) e quindi dellinformazione mutua, a parit`a di energia mediaspesaperciascunsimbolo14Es= 2x=

x2iP(xi) (1.52)Tuttavia le probabilit`a che danno il massimo valore di H(Y ) dipendono dal rapportosegnale-rumore, per cui per semplicit`a di solito si eettua il calcolo assumendo livelliequiprobabili,commettendounpiccoloerroreperdifetto15.10 5 0 5 10 15 20 25 3000.511.522.533.54 2x/2n (dB)C (bit per simbolo)M=2M=4M=8M=16Figura1.2: Capacit`anellatrasmissioneaM=2, 4, 8e16livelli equiprobabili (curvecontinue)econingressocontinuogaussiano(curvatratteggiata)InFig. 1.2`emostratoil risultatodel calcolo, conM=2, 4, 8e16livelli equiprobabili.Per capacit`anoacirca0.5bit per simbolononoccorronopi` udi 2livelli, mentreadesempio4livelli sonosucienti noacirca1.5bitpersimbolo. EvidentementeconMlivelli la capacit`a non pu`o superare log Mbit per simbolo, per quanto grande sia il rapportosegnale-rumore.PerconfrontoinFig. 1.2`emostrataanchelacapacit`anel casodi ingressocontinuocondensit`adi probabilit`agaussiana. Poiche, soprattuttoadaltorapportosegnale-rumore, sipossonoottenereinteressanti guadagni, nei sistemi di trasmissionepi` uranati si usaunnumeroelevatodilivellieuncodicecheliutilizzaconprobabilit`anonuniformi.14adesempionellatrasmissioneaquattrolivelli i pi` uesterni sonopi` uprotetti dal rumore, mail costodellalorotrasmissione `eelevato;convieneutilizzareilivelliesternimenofrequentementediquelliinterni;ssatoiltipodicostellazioneelenergia2xsitrasmettonoilivelliAxi,conA2= 2x/

x2iP(xi)15a rigore `e scorretto chiamare capacit` a i valori di informazione mutua ottenuti senza ottimizzare leprobabilit` adellingresso18 CAPITOLO1. TEORIADELLINFORMAZIONE10 5 0 5 10 15 20 25 300123456 2x/2n (dB)C (bit per simbolo)64QAM16QAM4PSK8PSK32CRFigura 1.3: Capacit`a di costellazioni bidimensionali con punti equiprobabili (curvecontinue)econingressocontinuogaussiano(curvatratteggiata)InFig. 1.3`emostratalacapacit`adi alcunecostellazioni bidimensionali PSK, QAMeCR16.Ancheinquesticasiipuntisonoequiprobabili. Inascissa2xe2nsonolevarianzedi segnale e rumore misurate entrambe in una sola dimensione (oppure entrambe nelle duedimensioni). Sinoti chelecostellazioni 4PSK, 16QAMe64QAMhannocapacit`adoppiadellecorrispondenti PAMa2, 4e8livelli. Sonoinfatti equivalenti adueusi del canalemonodimensionale. AncheinFig. 1.3 `emostratalacapacit`anelcasodiingressocontinuocondensit`adiprobabilit`agaussiana.1.5 TeoremadellacodicadicanaleSianoxeygenericheN-pleiningressoeinuscitadalcanale. Sisupporr`acheglialfabetixeysianodiscreti. Lestensionealcasocontinuorichiedesolodisostituireleprobabilit`aconcorrispondentidensit`adiprobabilit`aelesommeconintegrali.Si generino M= 2NRparole di codicexm formate da N-ple di simboli elementari. Le paroledel codicesianoscelteindipendentementeconprobabilit`aP(x). Si noti chesi potrebbeesserecos`sfortunatidasceglieredueopi` uvoltelastessaparoladicodice. TuttaviaperNgrandeci`o `eestremamenteimprobabile.16le costellazioni CR sono ottenute dalle QAM eliminando alcuni dei punti di maggiore energia: ad esempiolacostellazione32CR `eunaQAM6x6senzaiquattrospigoliS.Bellini 1.5. Teoremadellacodicadicanale 191.5.1 Maggiorazionedellaprobabilit`adierroreSi utilizzi un ricevitore a massima verosimiglianza, che decide a favore di xm se P(y/xm) >P(y/xm ) per ogni m= m. In caso di pareggio il ricevitore decide a caso. Fissate tutte leparoledicodice,esupponendodiavertrasmessoxm,laprobabilit`aderrore `emaggioratadaPem

yP(y/xm)____

m=mP(y/xm )1/(1+)P(y/xm)1/(1+)____(1.53)per ogni 0. Infatti il termine che moltiplica P(y/xm) non `e mai negativo, ed `e maggioreougualea1perogniycheproduceerrore. SiottienequindiPem

yP(y/xm)1/(1+)_ m=mP(y/xm )1/(1+)_(1.54)Il valor medio di Pem, rispetto alla scelta casuale delle parole di codice, si calcola utilizzandolindipendenzadixmdatuttiglixm :E [Pem]

yE_P(y/xm)1/(1+)E__ m=mP(y/xm )1/(1+)__(1.55)Se si impone lulteriore vincolo 1 si pu`o utilizzare uncaso particolare della di-seguaglianzadi Jensen (validaingenerale per funzioni convesse) E [z](E [z])perottenereE [Pem]

yE_P(y/xm)1/(1+)E_ m=mP(y/xm )1/(1+)_(1.56)SihapoiE_P(y/xm)1/(1+) = E_P(y/xm )1/(1+) =

xP(x)P(y/x)1/(1+)(1.57)equindi laprobabilit`amediaderroredatadalla(1.56) risultaindipendentedam, esiottieneE [Pe] (M 1)

y_

xP(x)P(y/x)1/(1+)_1+(1.58)Allostessorisultatosi sarebbepotutoarrivareancheper altravia: dettaxmlaparola(casuale)dicodicetrasmessa,ilvalormediodellaprobabilit` aderrore `edatodaE [Pe] =

xm

yP(xm)P(y/xm)P(errore/xm, y) (1.59)20 CAPITOLO1. TEORIADELLINFORMAZIONESiaAm leventoP(y/xm ) P(y/xm). Siha,per0 1,P(errore/xm, y) _ m=mP(Am )_(1.60)Infatti laprobabilit`adellunionedi eventi nonsuperalasommadellesingoleprobabilit`a;lelevamento a potenza aumenta il termine tra parentesi, se minore di 1; lo lascia maggioredi1segi`aloera. SihaancheP(Am )

xm :P(y/xm )P(y/xm)P(xm )

xmP(xm )_P(y/xm )P(y/xm)_1/(1+)(1.61)Bastainfatti osservarechetutti i termini daincluderenellasommasonoconsiderati conpeso maggiore o uguale a 1 (anche dopo lelevamento a potenza) e che si sono aggiunti altritermininonnegativi. Sinotianchecheilrisultatonondipendedam, percuiinseguitosi pu`oindicarexm conungenericox. Combinandolediseguaglianze(1.60)e(1.61)siottieneP(errore/xm, y) (M 1)P(y/xm)/(1+)_

xP(x)P(y/x)1/(1+)_(1.62)equindi,sostituendonella(1.59),E [Pe] (M 1)

y_

xP(x)P(y/x)1/(1+)_1+(1.63)1.5.2 CanalisenzamemoriaSisuppongaoracheilcanalesiasenzamemoria:P(y/x) =N

n=1P(yn/xn) (1.64)S.Bellini 1.5. Teoremadellacodicadicanale 21Si suppongaanche che gli Nsimboli che costituisconole parole di codice sianosceltiindipendentemente,conprobabilit`aP(x). SihaE [Pe] < M

y_

x1

x2

xNN

n=1P(xn)P(yn/xn)1/(1+)_1+= M

y_N

n=1

xnP(xn)P(yn/xn)1/(1+)_1+= M

yN

n=1_

xnP(xn)P(yn/xn)1/(1+)_1+= M

y1

y2

yNN

n=1_

xnP(xn)P(yn/xn)1/(1+)_1+= MN

n=1

yn_

xnP(xn)P(yn/xn)1/(1+)_1+(1.65)Si osservi che tutti i termini del prodotto nale non dipendono da n, e sono quindi uguali.Enumerando con gli indici i e j rispettivamente gli alfabeti in ingresso e in uscita, indicandocon pile probabilit`a in ingresso e con pijle probabilit`a di transizione del canale,si ottieneE [Pe] < M__

j_

ipip1/(1+)ij_1+__N(1.66)1.5.3 EsponentederroreRicordandocheM= 2NRedenendoE0(, pi) = log

j_

ipip1/(1+)ij_1+(1.67)e inne scegliendo le piin modo da garantire la minor probabilit`a derrore, ovvero ponendoE0() = maxpiE0(, pi) (1.68)siottieneE [Pe] < 2N[R+E0()](1.69)Innesipu`oottimizzareilvaloredi,edenirelesponentederroreE(R) =max01E0() R (1.70)22 CAPITOLO1. TEORIADELLINFORMAZIONEequindiE [Pe] < 2NE(R)(1.71)da cui si vede che `e possibile ridurre la probabilit`a media derrore a valori piccoli a piacere,scegliendoNsucientementegrande,purchesiaE(R) > 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.800.10.20.30.40.50.60.7R (bit)E(R) (bit)segnalazione binaria antipodale Es/N0 = 0 dBFigura1.4: EsponentederroreE(R)ottenutocomeinviluppodirettedipendenza Poiche il risultato vale per la media di tutti i codici, esiste almeno un codice con probabilit`aderrore non peggiore della media. Anzi con qualche altro calcolo `e possibile dimostrare chesipotrebberoteoricamentescegliereleparoledelcodiceinmodocheperciascunarisultiPem< 4 2NE(R)(1.72)E(R)`einterpretabilecomeinviluppodellerette(1.70), mostrateinFig. 1.4. E facilevericarechein = 0lafunzioneE0()siannulla. Inoltreladerivata `epariallacapacit`adel canale: infatti consemplici calcoli si vedecheladerivatadi E0(, pi)`epari allinfor-mazione mutua tra ingresso e uscita del canale, quando si utilizzi lalfabeto in ingresso conprobabilit`api. Epoiimmediatoriconoscere(sivedalaFig. 1.4)chelafunzioneE(R)siannullainR = lim0E0()/ =dE0(0)d= C (1.73)Sihaquindiilfondamentalerisultatoche`epossibiletrasmettereconprobabilit`aderrorepiccolaapiacereaqualunqueritmominoredellacapacit`adelcanale.S.Bellini 1.5. Teoremadellacodicadicanale 230 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.900.10.20.30.40.50.60.70.8R (bit)E(R) (bit)segnalazione binaria antipodale Es/N0 = 2 dBFigura1.5: Esponente derrore E(R) consegnalazione binariaantipodale e uscitasoft(canalegaussiano;curvacontinua)ehard(BSC;curvatratteggiata)ComeesempiolaFig. 1.5mostraE(R), conEsN0=2dB, doveEs`elenergiapersimboloe N0/2`eladensit`aspettrale(bilatera) del rumore, utilizzandolasegnalazione binariaantipodale. Lenergia per bit dinformazione Eb= Es/R dipende dal ritmo di trasmissionedellinformazionechesi sceglie(comunqueminoredellacapacit`a). Nel casodellacurvacontinuay`e luscitasoft del canale gaussiano; nel casotratteggiatoy`e luscitahard,ottenutadal segnodel campionericevuto: si hauncanaleBSCconprobabilit`aderrorep = Q(_2EsN0). Eevidentelaperditadicapacit`aeprestazionidovutaalledecisionihard.La Fig. 1.6 mostra,in funzione del rapporto segnale-rumore 2x/2n,la probabilit`a derroreper codici di lunghezza N= 511 con M= 2484parole (cio`e R = 484/511 0.95). La curvacontinuamostraleprestazioni dellamediadi tutti i codici scelti casualmente, valutatecalcolandolesponentederroreperognirapportosegnale-rumore. Laprobabilit`aderrorenon nulla anche in assenza di rumore `e dovuta alla possibilit`a di selezionare due o pi` u voltelastessaparoladi codice: laparolatrasmessahaalmenounconcorrentecoincidenteconprobabilit`a1 (1 2N)M12N(1R)=227=7.5 109. AumentandoN(oanchediminuendoR)laprobabilit`adiquestoeventodiventatrascurabile.La curva tratteggiata di Fig. 1.6 mostra le prestazioni di un buon codice, il BCH(511,484),valutataconilmigliorbounddisponibileperuncodicespecico. NelcalcolodiP(E)si `eusataladistribuzioneesattadelledistanzetraleparoledicodice. Questa `eapprossimati-vamentebinomiale;tuttaviailcodice `ecostruitoinmodotalecheleparoleconcorrentidiquellatrasmessadieriscanoinalmeno7posizioni(cenesono1.3 107adistanza7),conunnettomiglioramentoadaltorapportosegnale-rumore. Ilcomportamento(lievemente)24 CAPITOLO1. TEORIADELLINFORMAZIONE6 7 8 9 10 11 12 13101210101081061041021002x/2n (dB)P(E)segnalazione binaria antipodale N = 511K = 484Figura1.6: Probabilit`aderrore, sucanalegaussiano, di codici binari (N=511; M=2484; R=484/511): maggiorazioneperlamediadei codici mediantelesponentederrore(curvacontinua)emaggiorazioneperil codiceBCH(511,484)medianteil migliorbounddisponibile(curvatratteggiata)miglioreancheabassi emedi rapporti segnale-rumore`edaattribuirealladistribuzionequasibinomialedelledistanzetraleparoledicodice17.1.5.4 ConsiderazioninalisullacodicadicanaleIl teorema della codica di canale mostra che si pu`o ridurre la probabilit`a derrore in diversimodi,pi` uomenoranati. Sipu`oaumentare il rapporto segnale-rumore (maggior potenza trasmessa o minor rumore);soluzionebanaleconcuisiaumentanolacapacit`aCelesponentederroreE(R)ridurre il ritmo di trasmissione; altra soluzione banale con cui si aumenta lesponentederrore E(R) in modo che sia possibile ottenere buone prestazioni anche con blocchididimensioneNpiccola,cio`econcodicisempliciaumentare N, cio`e la complessit`a del codice (e il ritardo nelle operazioni di codica e17codici costruiti casualmentehannounadistribuzionebinomialedelledistanzesoloinmedia; i codicichedevianotroppodallamediapenalizzanoleprestazioni dellinsieme; perNsucientementeelevatoilteoremalimitecentraleassicuracheladistribuzionedel singolocodicetendaallamedia: tutti i codicitendonoadaverelestesseprestazioniS.Bellini 1.5. Teoremadellacodicadicanale 25decodica);occorreper`ochelemaggioripotenzialit`adelcodicesianomesseafruttodaricevitorinonlontanidallottimoevitare,perquantopossibile, didistruggereleventualeinformazionesoft contenutanei simboli ricevuti; decisioni hardproducono danni rilevanti, come mostra lesempiodiFig. 1.5Evidentemente non si possono costruire codici con Ngrande adandosi al caso, non percheleprestazioninonsarebberobuonemaperchecodicaedecodicaavrebberocomplessit`adel tuttoinaccettabile. Occorreunasolidastrutturamatematicadel codicecheriducaenormementelacomplessit`adelleoperazionirichieste,inparticolareinricezione.26 CAPITOLO1. TEORIADELLINFORMAZIONECapitolo2Introduzioneallacodica: codiciablocco2.1 CodicadicanaleQuesto capitolo introduttivo presenta, in modo volutamente semplicato, i concetti basilaridella codica di canale che verranno ampliati nel seguito. Il modo pi` u tradizionale di vedereuncodicecorrettoreconsistenel considerareuncanalebinariosimmetricochecommettaerrori conprobabilit`amaggioredi quellaaccettabile. Seil canale`estazionarioenonhamemorialeposizioni degli errori sonocasuali eleprestazioni dei codici sonomoltopi` ufacili daanalizzare. Canali pi` ucomplessi, conmemoriaoppure conrapportosegnale-rumorevariabilenel tempo, tendonoaprodurreerrori apacchetti (oburst). Intal casosialasceltadelcodicesialavalutazionedelleprestazionirisultanopi` udicili.Volendosemplicarealmassimo,econsiderandosolocanaliconingressoeuscitadiscreti,sonopossibilileseguentistrategienellusodeicodici:correzionedegli errori, quandoil loronumerononsuperi lacapacit`adi correzionedel codice;naturalmente si deve accettare il rischio, di cui si calcoler`a la probabilit`a,di nonriconoscereerrori commessi dal canaleoppuredi correggereinmodoerrato,introducendoaltrierrorioltreaquellidovutialcanalerivelazione degli errori e richiesta di ritrasmissione, purche esista un canale di ritornoei ritardi cos` introdotti sianoaccettabili; ancheinquestocasopossonosfuggireblocchi errati, usualmente con probabilit`a molto minore rispetto al caso di correzione(usandoglistessicodici)strategie miste di correzione parziale, limitata ad un numero di errori minore di quellicorreggibilidalcodice,edirivelazionedeglierrorineirestanticasi;laprobabilit`adiavereunbloccoerratoinuscitadal decodicatore`eintermediatraquelledei casiprecedenti2728 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCOSemprerestandonelcasodiscretosipotrannoaverecodicibinarienonbinari,ovveroconcifredinformazioneedicodicebinarieononbinarie.Volendounaclassicazionedeitipidicodicipi` ucomunisiavranno:codiciablocco,neiqualiadesempioKcifredinformazionesonoseguitedaN Kcifrediparit`a,calcolateinmododeterministicodalleKcifredinformazionecodici convoluzionali, incui adesempiounacifradinformazione`eseguitadaunadi parit`a, inmodoalternato; ogni cifradi parit`adipendedaunnumeropressato(solitamentenongrande)dicifredinformazioneprecedenticodici composti: codici concatenati; codici prodottoeturbo-codici (contecnichedidecodicaiterativa)In questo capitolo introduttivo verranno considerati i codici a blocco: date Kcifre dinfor-mazioneleregoledelcodicedeterminanolaN-pladicifredainviaresulcanale(N> K).Il codice `e solitamente indicato come codice a blocco (N, K). Il rapporto K/N`e detto ratedelcodice1.2.1.1 CodicilineariSi `e osservato nel capitolo sulla teoria dellinformazione che per ridurre la complessit`a del-lacodica, esoprattuttodelladecodica, occorreintrodurreunaecacestrutturanelladenizione delle regole del codice. Per questo motivo in pratica si utilizzano quasi esclusiva-mente codicilineari: lecifretrasmesse sonocombinazionilinearidellecifredinformazione(conalgebraopportuna,adesempiobinaria).SolitamenteleprimeKcifredel bloccocodicatocoincidonoconquelledinformazione.Intalcasoilcodice `edettosistematico: leKcifredinformazionesonoseguitedaN Kcifrediparit`a2.Si deniscedistanzadi HammingtradueN-pleil numerodi posizioni incui essedieri-scono.Peruncodicelineare`eevidentechelasommadidueparoledicodice`eparoladicodice.Inparticolarelaparoladituttizeri `esempreparoladicodice.La distanza di Hammingtra due parole `e pari al numero di elementi non nulli della paroladi codicechene`esomma. Escludendo, perchedi nessuninteresse, il confrontodi unaparolaconsestessalinsiemedellepossibili distanzetraparoledi codicediversecoincideconlinsiemedelnumerodielementinonnullidelleparoledicodicenonnulle.Suuncanaleditrasmissionebinario,lacapacit`adicorrezioneedirivelazionedeglierroridipendonodalladistanzaminimadi Hamming traleparoledi codice. Seadesempiola1rate`eunterminedicilmentetraducibile,enelseguitononsitenter` adifarlo2non `efondamentale,ovviamente,lordineconcuilecifrevengonotrasmesse;solitamentelecifredipari` aseguonoquelledinformazioneS.Bellini 2.1. Codicadicanale 29distanza minimadi Hammingtra parole di codice `e d = 3, il codice pu`o essere usato comecorrettorediunerrore(inposizionequalsiasinellaN-pla): unsoloerrorelascialaN-plaricevutaadistanzaminoredallaparolatrasmessachedatuttelealtre.Lostessocodicepu`oessereusatocomerivelatore di dueerrori: questi nonproduconocomunqueunaparoladicodice3.Analogamentesed=4il codicepu`oessereusatocomecorrettoredi unerrore(condueerrori si pu`onire amezzastradatradue parole di codice concorrenti), oppure comerivelatoreditre;sed = 5ilcodicepu`ocorreggeredueerrorioppurerivelarnequattro. Laregolageneralediscendeinmodoevidentedaquestiesempi.Si pu`orinunciareadunapartedellacapacit`adi correzioneperridurrelaprobabilit`adicorrezioneerrata. Adesempiosed=5ci si pu`olimitareacorreggereunsoloerrore,lasciandolacapacit`adirivelarnealtridue.Lesempio pi` u semplice di codice binario ha N= K+1: lultimo bit `e la somma (nellalgebrabinaria, cio`e modulo2) di tutti i Kbit dinformazione4. Adesempiose K=7i bitdinformazione1010001dannolaparoladicodice10100011.Laparoladi codicehasempreunnumeropari di uni (dacui derivail nomedatoal bitdiparit`a). Qualunqueerroresingolo,cio`einunasolaposizionetraleotto,vienerivelato.Vengono rivelate tutte le congurazioni con un numero dispari di errori, ma non quelle connumeropari. Evidentementeilcodicenonpu`ocorreggerealcunerrore,poiched = 2.2.1.2 Codicidi HammingUnaltrocodicemoltosemplice`eil codicedi Hamming (7,4)incui letrecifredi parit`asonocombinazionidiversedellequattrocifredinformazione5:p1= i2 +i3 + i4p2= i1 +i3 + i4p3= i1 +i2 + i4Siottengonoquindilesediciparoledicodiceseguenti:0000 00000000001 00011110010 00101100011 00110010100 01001013evidentementevengonorivelateanchemoltecongurazioniditreopi` uerrori,manontutte4sarebbebenstranotralasciarenellunicobitdiparit` aqualcunodeibitdinformazione5ndai primi tentativi di costruzione di codici risult` o evidente che trasmettere pi` uvolte una stessacombinazionedicifredinformazionenon `eunasoluzionebrillante30 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCO0101 01010100110 01100110111 01111001000 10000111001 10011001010 10101011011 10110101100 11001101101 11010011110 11100001111 1111111In totale si utilizzano 2K= 16 delle 2N= 128 congurazioni di 7 bit. Si pu`o vericare che le15 parole non nulle contengono almeno tre uni, e quindi che le parole di codice dierisconoinalmenotreposizioni. Quindi d=3eil codicepu`orivelaretutti gli errori semplici edoppi(edaltridipesomaggiore)ed`eingradodicorreggeretuttiglierrorisemplici: perlacorrezionebastacercarelaparolachedierisceinunsolobitdaquellaricevuta.2.1.3 Matricegeneratriceediparit`aSipu`orappresentarelacodicanellaformac = iG (2.1)dovec`eil vettoredi 7elementi trasmesso(paroladi codice), i`eil vettoredi 4elementidellecifredinformazione,G `elamatricegeneratricedidimensione4 7:G =__1 0 0 0 0 1 10 1 0 0 1 0 10 0 1 0 1 1 00 0 0 1 1 1 1__Le parole di codice sono tutte le combinazioni linearidelle righe della matrice generatrice.Letreequazionidiparit`ac5= c2 +c3 + c4c6= c1 +c3 + c4c7= c1 +c2 + c4S.Bellini 2.1. Codicadicanale 31possonoesserescrittecomecH= 0 (2.2)doveH`eunamatrice7 3dettamatricediparit`a6:H=__0 1 11 0 11 1 01 1 11 0 00 1 00 0 1__2.1.4 SindromeRicevutalaN-play= c +edovee `eilvettoreerrore,sicalcolalasindromes = yH= cH + eH= eH (2.3)La sindrome `e un vettore di N K= 3 componenti, che dice se le tre regole di parit`a sonoomenosoddisfatte.Lasindromepu`opresentarsi in23=8modi, mentrelepossibili congurazioni derrore(inclusa la mancanza di errori) sono 27= 128. Si verica facilmente che la stessa sindromecorrispondea128/8=16diversecongurazioni derrore. Fraquesteinricezionesi sceglielapi` uprobabile,cio`equellaconilminornumerodierrori.Peri codici semplici (maspessotropposemplici, equindi di nessuninteresse)laricercapu`oesserefattaaprioriememorizzata. Nelcasoinesamesiha:000 0000000001 0000001010 0000010011 1000000100 0000100101 0100000110 0010000111 0001000Risultano correggibili tutti e soli gli errori singoli. Infatti con un errore in una sola posizionelasindromecoincideconlacorrispondenterigadellamatricediparit`a. Poichelerighedi6in altri testi le matrici generatrice o di parit` a possono essere denite come trasposte di quelle qui utilizzate32 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCOHsonotuttediverse, einnumeropari ai possibili errori singoli (cio`eN)tutti gli errorisingolisonocorreggibili. Ingeneralesihannoinniticodici diHammingconparametriNeKlegatidallarelazioneN= 2NK1 (2.4)Alcuniesempisono:N= 3,K= 1(codicebanale: 000,111)N= 7,K= 4N= 15,K= 11N= 31,K= 26. . .N= 1023,K= 1013. . .Si noti cheil rateK/Ntendea1perN , masi correggecomunqueunsoloerrore.Quindi Ngrandevabenesolopercanali conprobabilit`aderroregi`amoltopiccola, chevieneulteriormenteridottadalcodice. Intuttiglialtricasioccorronocodicicorrettoridipi` udiunerrore.A parit`a di ridondanza, codici con blocco lungo e correttori di molti errori sono migliori dicodici con blocco corto e correttori di pochi errori, o di un solo errore. Per`o la complessit`adeldecodicatoreaumentafortementeallaumentaredelnumerodierroricorreggibili.Inricezione,inlineadiprincipiobastacalcolarelasindromes = yHeseilcodice `eusatosolocomerivelatorebastavericareses=0. Seinveceilcodice`eusatocomecorrettoredalla sindrome si ricava la N-pla derrore pi` u probabile, e si provvede a correggere la parolaricevuta.Se N K`e elevato, la correzione diventa molto pesante. E diventa addirittura troppo pe-sante il calcolo di yH. Le matrici generatrice e di parit`a sono concettualmente semplici, mararamenteutiliinpraticaesolopercodicidipiccoladimensione. Occorreunadescrizionedelcodicepi` usintetica,conunastrutturaalgebricapi` upotente.2.1.5 RappresentazionepolinomialeAlla parola cN1cN2. . . c0di lunghezza Nsi pu`o associare il polinomio cN1xN1+cN2xN2+ . . . + c0. Lavariabilexnonhaalcunsignicatoparticolare: individuasololaposizionedellacifra.Analogamente a Kcifre dinformazione iK1iK2. . . i0 `e associato il polinomio iK1xK1+iK2xK2+ . . . + i0.S.Bellini 2.1. Codicadicanale 33Anchelamatricegeneratrice`esostituitadaunpolinomiogeneratoredel codiceg(x), digradoN K. InnesistabiliscechecN1cN2. . . c0siaunaparoladicodiceseesoloseilcorrispondentepolinomioc(x) `edivisibileperg(x).Si noti chementrelamatricegeneratricedi uncodice(N, K) contieneK Nelementibinari, il polinomiogeneratorehasoloN K+ 1coecienti binari. Si vedr`ainseguitocheanchelamatricediparit`apu`oavereunequivalentepolinomiodiparit`a,digradoK.2.1.6 DecodicahardesoftLadecodicaalgebrica(hard)dei codici BCH`etotalmenteincomprensibilesenzabuonenozionidialgebradeicampiniti(campidiGalois). Tuttavianonrisultaeccessivamentecomplessa,percodicicorrettoridi,adesempio,5 20errori.Seilcanaleditrasmissionehauscitacontinua,siprendonodecisioniindipendenti bitperbit. Poi si eettualaricercadi quellunicaparoladi codicechenondistadallaricevutapi` udelpoterecorrettoret. Sesonoavvenutipi` uditerroriladecodicapu`ofallireinpi` umodi:nonsi trovaunaparolachedisti menodi t; si rinunciaallacorrezione(malerrorevienerivelato)si trova una parola, ma non `e quella trasmessa (si accetta una parola con errori, nonrivelati)Perridurrelaprobabilit`adi errori nonrivelati si pu`olimitarelacorrezioneamenodi terrori.Sealluscitadelcanale `edisponibilelinformazionesoft ynsullivelloricevuto(enonsoloil segno)si distruggeinformazioneprendendodecisioni hardbitperbit. Lacapacit`adelcanale e lesponente derrore ne risultano degradati. Si dovrebbe preferire la decodica soft,adesempioamassimaverosimiglianza(ML).Inpresenzadirumoreadditivogaussianosidovrebbecalcolareperciascunaparoladel codicelacorrelazioneN

n=1yncn(2.5)escegliereil massimo. Lesperienzamostracheladecodicasoft guadagnacirca2dBrispettoallahard. Il problema`echeleparoledi codicesono2K, eseK=100si hanno21001030parole! Senonsi trovaunascorciatoiapernoncalcolaretuttelecorrelazioninonc`esperanza. Esistonometodi esatti di complessit`aproporzionaleaN 2NK, gi`atroppoelevatapergranpartedeicodici.Sono stati proposti metodi approssimati (Chase) basati sulla ricerca di un piccolo numero diparoledicodicecandidate,individuatedecodicandoinmodoalgebricolaparolaricevuta34 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCOed altre con alcuni bit (i meno adabili) complementati. Entro questo insieme si determinalaparolaconcorrelazionemigliore.Traletecnichedidecodicasoft vi`eanchequellaamassimaprobabilit`aaposterioribitper bit: si calcola, per ciascun bit dinformazione, la probabilit`a che sia pari a 0, e si decideperlozeroselaprobabilit`asupera0.5. Esistonoduemetodi esatti (Hartmann-Rudolph;Bahl etal.) dicomplessit`aproporzionaleaN 2NK,proibitivapermolticodici.2.1.7 DecodicaamassimaverosimiglianzaebitperbitPer chiarire ladierenzatrai due criteri bastail semplicissimoesempiodi uncodiceasingolaparit`adi dimensioni (3,2). Lequattroparoledi codicesono000, 011, 101e110. Si suppongache i tre campioni ricevuti ynsianotali che P(0/yn) (n =1 . . . 3)valgarispettivamente0.4,0.7e0.7. Sesiprendesserodecisioniindipendentisuitrebitsiotterrebbe100, chenon`eparoladi codice, nesi saprebbepoi individuarelaparolapi` uprobabile.Le probabilit`a delle quattro parole sono proporzionali rispettivamente a 0.40.70.7 = 0.196,0.40.30.3 = 0.036, 0.60.70.3 = 0.126 e 0.60.30.7 = 0.126 (la costante di proporzionalit`apu`oessereignorata). Ladecodicaamassimaverosimiglianzasceglietralequattrolaparolapi` uprobabile, ovvero000. Iduebitdinformazionedecodicati sonoquindi 00(ilterzobit `ediparit`a).Se si vuol calcolare la probabilit`a a posteriori che il primobit sia 0 o 1, tenendo conto delleregoledelcodice,occorresommareleprobabilit`adelledue parole000e011,econfrontareconlasommadelleprobabilit`adeglialtriduecasi(dinuovosipu`oignorareunacostantedi proporzionalit`acomuneatutteleparole). Il risultato`e0.232contro0.252, equindiladecisione`eafavoredi 1. Analogamentesi decodicail secondobit, ottenendo0. Ecuriosoosservarechesesidecodicasseallostessomodoancheilterzobitsiotterrebbe0:100non `eunaparoladicodice,eppurequestisonoivaloripi` uprobabiliperitrebit.La decodica a massima verosimiglianza, scegliendo la parola pi` u probabile, rende minimala probabilit`a che il bloccodi bit decisi sia sbagliato7. La decodica bit per bit invece rendeminimalaprobabilit`achei bit decodicati sianoerrati8. Ledierenzenelleprestazionisonotuttaviaspessodi benpocorilievo. AdesempiolaFig. 2.1mostralaprobabilit`aderrorenelladecodicadel codicedi Hamming (31,26). InascissaEb/N0`eil rapportotralenergiaEbspesaper ciascunbit di informazione eladensit`aspettraledi potenzaunilateraN0delrumoregaussiano9.Sono mostrate anche le prestazioni, molto peggiori, del decodicatore hardche prima decide7una buona strategia se un blocco contenente errori deve essere eliminato, come avviene nella trasmissioneapacchetti8strategiaottimasesi devonoaccettaretutti i bit, giusti osbagliati chesiano, esi vuoleminimizzareilnumeromediodierrori9il rapportosegnale-rumorepu` oesseredenitoinvari modi; Eb/N0`eil pi` ucomunenellatrasmissionenumerica;sinotichelenergiaEsspesapertrasmettereunsimbolo `ediversadaEb: infattiEs= EbK/NS.Bellini 2.1. Codicadicanale 353 2 1 0 1 2 3 4 5 6103102101100Eb/N0 (dB)Pb(E)Figura2.1: Probabilit`acheibitdecodicatisianoerraticondecodicaamassimaverosi-miglianzaebitperbit(curvecontinue)econdecodicahard(curvatratteggiata)perilcodicediHamming(31,26)bitperbitignorandoil codiceepoi individuatraleparoledi codicequellaallaminimadistanzadiHamming.LaFig. 2.2mostraanaloghi risultati per uncodice di maggiorecomplessit`a, e quindimigliori prestazioni: il codice convoluzionale a 256 stati con rateR = 1/2 che sar`a descrittoinunsuccessivocapitolo.La decodica bit per bit `e generalmente pi` u complessa di quella a massima verosimiglianza.Se talvolta viene preferita non `e per le prestazioni,ma perche fornisce non solo i bit decisimaanchelaprobabilit`achetali bitsianocorretti. Questainformazione`epreziosaneglischemi di codica concatenata, in cui un decodicatore utilizza linformazione softprodottadaunaltrodecodicatore.2.1.8 CodicigeneratiinmodocasualeSi `egi`aosservatocheinlineadi principiopercostruirebuoni codici condimensionedelbloccoNgrandebasterebbeadareal casolagenerazionedelleparoledel codice. Pu`oessereinteressantevederequali risultati si otterrebbero, econfrontarecodici costruiti ca-sualmente con i migliori codici conosciuti. Ci`o risulta possibile solo per valori di Npiuttostopiccoli.Se davvero si generassero casualmente tutte le parole del codice si otterrebbe un codice nonlineare. Lacomplessit`adi codicatoreedecodicatorenesarebbeenormementeaumen-36 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCO1 0.5 0 0.5 1 1.5 2 2.5 3 3.5 4103102101100Eb/N0 (dB)Pb(E)Figura2.2: Probabilit`acheibitdecodicatisianoerraticondecodicaamassimaverosi-miglianzaebitperbit(curvecontinue)econdecodicahard(curvatratteggiata)perilcodiceconvoluzionalea256staticonrateR = 1/2tata, senzavantaggio. Si potrebbeinfatti dimostrarechecodici abloccolineari generaticasualmente ottengono le stesse prestazioni dei non lineari. In pratica basta generare, sce-gliendolecasualmente, Kparoledi codicedaporrenellerighedellamatricegeneratrice.Tutteleparoledicodicesonoottenutedalle2Kcombinazionilinearidiquestabase.La Fig. 2.3 mostra un primo esempio, con N= 20 e K= 4. La costruzione casuale `e stataripetuta100volte, eingura`emostratalaprobabilit`aderroreinfunzionedel rapportosegnale-rumoreEb/N0perciascunodeicodici10. LaFig. 2.4mostraanaloghirisultatiperbloccodilunghezzaN= 100,aparit`adiridondanza(K/N= 0.2).Le Fig. 2.5 e 2.6 mostrano i risultati con K/N= 1/2, per N= 24 e N= 48. Sono mostrateperconfrontoleprestazionideimiglioricodicidiugualidimensioni. Sipu`oosservarechela dispersione delle prestazioni si riduce allaumentare di N; le dierenze tra le sceltepi` u o meno fortunate diventano trascurabili, a probabilit` a derrore di interesse praticoleprestazioni miglioranoallaumentaredi N; laprobabilit`aderroredecrescecircaesponenzialmente con Ne il valore di Eb/N0 necessario per una pressata probabilit`aderroresiriducea basse probabilit`a derrore le prestazioni sono determinate soprattutto dalla distanza10ladecodica `eamassimaverosimiglianzaelaprobabilit` aderrore `eapprossimatapereccessomediantelounionboundS.Bellini 2.1. Codicadicanale 373 4 5 6 7 8 9 10108107106105104103102101 Eb/N0 (dB)P(E)N = 20; K = 4Figura2.3: Probabilit`aderrore(unionbound)di 100codici lineari generati casualmente(N= 20;K= 4)3 4 5 6 7 8 9 101025102010151010105 Eb/N0 (dB)P(E)N = 100; K = 20Figura2.4: Probabilit`aderrore(unionbound)di 100codici lineari generati casualmente(N= 100;K= 20)38 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCO3 4 5 6 7 8 9 1010121010108106104102100 Eb/N0 (dB)P(E)N = 24; K = 12Figura2.5: Probabilit`aderrore(unionbound)di 100codici lineari generati casualmente(N= 24;K= 12)edelmigliorcodicedellestessedimensioni(curvatratteggiata)3 4 5 6 7 8 9 1010151010105100N = 48; K = 24P(E)Eb/N0 (dB)Figura2.6: Probabilit`aderrore(unionbound)di 100codici lineari generati casualmente(N= 48;K= 24)edelmigliorcodicedellestessedimensioni(curvatratteggiata)S.Bellini 2.2. Codiciciclici 39minimadelcodice; lasuddivisioneinclassicondiversedistanzeminime`epiuttostoevidenteadesempionelleFig. 2.5e2.6, incui si vedeanchechei codici prodottidallateoriahannodistanzaminimamigliorediquellicasuali11`e sorprendente che gi`a per valori di Ndi poche decine il caso dia risultati cos` buoni,non solo in media ma anche nei casi peggiori;tuttavia una buona teoria `e preferibilealcasoSe si aggiunge che la complessit`a di decodica di un codice casuale potrebbe essere maggioredi quella di un codice con una solida struttura matematica si comprende perche alla teoriadeicodicisiastatadedicatapermoltidecenniunacos`grandeattenzione. Tuttaviasenzalostimolodellestraordinariepromessedellateoriadellinformazionelateoriadei codicinonavrebbeappassionatotantiricercatorienonavrebberaggiuntoilivelliattuali.2.2 CodicicicliciSono codici polinomiali in cui g(x) `e un divisore di xN+1. Ad esempio il codice di Hamming(15,11),inversioneciclica,haN= 15K= 11N K= 4g(x) = x4+x + 1g(x)(x11+ x8+ x7+ x5+ x3+ x2+ x + 1) = x15+ 1Icodiciciclicihannolapropriet`a,dacuiderivailnome,chesecN1cN2. . . c0`eparoladicodiceanchecN2cN3. . . c0cN1lo`e. Codicatori edecodicatori dei codici ciclici sonounpopi` usemplicidiquellipercodicinonciclici.EsempiodiparoladelcodicediHamming(15,11):i = 11000000001i(x) = x10+ x9+ 1c(x) = g(x)i(x) = (x4+ x + 1)(x10+ x9+ 1) == x14+ x13+ x4+ x11+x10+ x + x10+ x9+ 1 == x14+ x13+ x11+x9+x4+x + 1c = 11010100001001111in passato si `e data grande unimportanza forse esagerata alla distanza minima dei codici;tuttavia restaverocheseinteressanoprobabilit` aderroremoltobasseladistanzaminima `eilparametrodominante40 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCOIn questa forma il codice non `e sistematico. Si ottiene la versione sistematica trasmettendodapprimalecifredinformazioneiK1, . . . , i0, cio`eil polinomioi(x)xNKchehaN Kzeri nelleultimeposizioni, doveverrannopostelecifredi parit`a. Questesonoscelteinmodocheil polinomiotrasmessosiadivisibileperg(x). Bastasottrarredai(x)xNKilrestodelladivisioneperg(x)(seunadivisioned`arestobastasottrarlodal dividendo, enonvisar`api` uresto!):c(x) = i(x)xNKRg(x)_i(x)xNK(2.6)doveRg(x)[]`eil restodelladivisioneperg(x), di gradomassimoN K 1. Inalgebrabinarialadierenza`eugualeallasomma. Il quozientedelladivisionenoninteressa. Ilcodicatorehaunastrutturamoltosemplice,chesar`amostratainunsuccessivocapitolo.Ancheilcircuitoperilcalcolodellasindromeinricezione `emoltosemplice.2.2.1 Codici BCHSonocodicibinaricorrettoridipi` uerrori,cheincludonocomecasoparticolareicodicidiHamming. Non si conosce una spiegazione elementare delle propriet`a di distanza dei codiciBCH: `enecessarialalgebradeicampiniti,percuisirimandaalseguito.Fralepossibilimodicazionideicodici,equindianchedeiBCH,lepi` usempliciecomunisono:estensione: aggiuntadi cifredi parit`a; lesempiopi` ucomune`elaggiuntadi unbitdiparit`acomplessivaaccorciamento: si possono modicare i valori di Ne K, quando non siano convenienti,ponendoazeroeovviamentenontrasmettendoleprimebcifredinformazione. Inquesto modo si ottiene un codice (Nb, Kb). La distanza non diminuisce (potrebbeaumentare, madi solitoci`ononavviene). Nel casodei codici ciclici bastasaltareiprimibpassidellacodica. Ilcodiceottenutoperaccorciamentonon `eciclico.2.2.2 Codici Reed-SolomonFra i codici non binari di gran lunga pi` u importante `e la classe dei Reed-Solomon. Lalfabetodellecifredinformazionehaqelementi,doveq`eunnumeroprimooppureunapotenzadiun numero primo. Il caso pi` u comune `e q= 2m. In tal caso una cifra q-aria `e rappresentabileancheconunbytedimbit.IcodiciReed-SolomonhannoparametriN= q 1K< Nqualsiasid = N K + 1S.Bellini 2.2. Codiciciclici 41Unsempliceesempio `e:m = 8(bytedi8bit)N= 281 = 255K= 239d = 17Ilcodice corregge 8errori,cio`e no a8byte errati (nonimporta quantibit errati contieneunbyteerrato).Se lo si vuol considerare come uncodice binario si hanno intotale 239 8=1912 bitdinformazionee255 8=2040bittotali.Ilcodicepu`oovviamenteessereaccorciato(esempio: N= 204;K= 188).2.2.3 CodicipererroriconcentratiapacchettiEsistonomolteclassidicodicipererroriconcentrati;solitamenteladecodica `eagevole.Ilprincipaleproblema`eavereunbuonmodellodelcanale,ovveroconoscerebenequantopossonoconcentrarsi gli errori. Uncodicenonadattopu`oaddiritturafarepeggiodellatrasmissionenoncodicata.NBFigura2.7: InterleavingablocchiUna semplice tecnica di codica per canali con errori a pacchetti (burst), non raccomandatadallateoriamausatamoltospessoinpratica, `elinterleaving, adesempioablocchi: intrasmissione si scrive in memoria per righe in una matrice B Ne si rilegge per colonne. Inricezione si eettua loperazione opposta. Eventuali errori consecutivi commessi dal canalevengono quindi separati di almeno Nsimboli, purche la lunghezza del burst non superi B.42 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCOUsandouncodiceabloccodi lunghezzaNgli errori cadonoinparolediverseeil codicepu`oessereprogettatopererroricasuali.Esistonoancheinterleaverconvoluzionali. Aparit`adiprestazionirichiedono(circa)met`amemoria,edintroducono(circa)met`aritardo.2.2.4 Codiciconcatenati codif.interno codif.esternodecodif.esternodecodif.internocanalecanale equivalente internoFigura2.8: CodicaconcatenataLagura2.8mostraunesempiosemplicedi concatenazionedei codici (concatenazionetradizionale, oggi detta concatenazioneserie): codice interno Hamming(7,4) correttore diunerrore;codiceesternoReed-Solomon(15,11)correttoredidueerrori,cheoperasubytedi4bit. Unbloccoha44bitdinformazione,suddivisiin11bytedi4bit. Ilcodicatoreesternoaggiunge4bytedi parit`a(16bit). Adogni bytedi 4bitil codicatoreinternoaggiunge3bitdiparit`a. Iltuttoequivaleaduncodice(15 7,11 4)=(105,44).Le prestazioni sono inferiori a quelle di un BCHaccorciato (106,43), correttore di 10 errori,maladecodica `emoltopi` usemplice.Nei codici concatenati tradizionali il codiceesterno`esempreunReed-Solomon. Il codiceinterno`e unsemplice codice ablocco(condecodicahard osoft), oppure pi` uspessounconvoluzionalecondecodicadi Viterbi (soft). Inquestocasooccorreintrodurreundeinterleaverpersparpagliareiblocchidierroriprodottidaldecodicatoreinterno,eduncorrispondenteinterleaver traiduecodicatori. Altrimentiverrebbefacilmentesuperatoilpoterecorrettoredelcodiceesterno.2.2.5 CodiciprodottoUntipoparticolaredicodiceconcatenato `eilprodottodicodici. Sisuppongadidisporrein una matrice con K1colonne e K2righe le cifre di informazione e di completare ciascunarigaconN1 K1cifredi parit`acalcolatesullabasedi uncodiceorizzontale ablocco.Poi si completinole N1colonne, che contengonosiacifre dinformazione siadi parit`a,conN2 K2cifredi parit`adi uncodiceverticale. Si sonoottenuteinquestomodoleparit`aorizzontali everticali delleK1K2cifredinformazione, organizzaterispettivamenteperrigheepercolonne, noncheleparit`averticali delleparit`aorizzontali. QuesteultimeS.Bellini 2.3. Prestazionideicodiciablocco 43sono dette pi` u semplicemente parit`adelleparit`apoiche `e facile vericare che si otterrebbelostessorisultatocodicandoprimapercolonneepoiperrighe. IntotalesihannoN1N2bitdicodice,eilratecomplessivodelcodice `eilprodottodeiratedeicodicicomponenti.Inognirigaeognicolonnavi `eunaparoladicodice(orizzontaleeverticale).Non`edicilemostrarecheleparoledel codiceprodottodi pesominimosi ottengonodisponendo una stessa parola orizzontale di peso minimo nelle righe corrispondenti ad unaparolaverticaledipesominimo, echequindiladistanzaminimadelcodice`eilprodottodelledistanzeminimedeicodicicomponenti.La costruzione pu`o essere estesa a tre o pi` u dimensioni, disponendo matrici bidimensionalisu pi` u strati. Si possono quindi raggiungere distanze minime elevate con codici componentisemplici.Icodiciprodottosononotidalungotempo,manonavevanotrovatoapplicazionepraticaper ladicolt`adi decodicarli inmodoeciente. Lideapi` usemplice`e ladecodicahardriga per riga con correzione degli errori cos` individuati, poi per colonne con ulteriorecorrezione, poi per strati (nel caso di tre dimensioni), ecc. ma non d`a risultati soddisfacenti.Leprestazionimiglioranomoltoseladecodica `esoft eiterativaconunatecnicasimileaquellausataperiturbocodici.2.3 PrestazionideicodiciabloccoLaprobabilit`adi decisionecorretta, peruncodiceutilizzatopercorreggerenoadCerrori12`ePcd=C

i=0_Ni_pi(1 p)Ni(2.7)dovep`elaprobabilit`acheil singolosimbolosiaricevutoerrato. Adesempioconsegnalazionebinariaantipodaleerumoregaussianop = Q__2EbN0KN_(2.8)equindipaumentadiminuendoilrateK/N.Per un codice binario,la probabilit`a che ibit a valle del decodicatore siano errati `emaggioratadaPb 1NN

i=dC(i + C)_Ni_pi(1 p)Ni(2.9)Infatti la decodica pu`o essere errata solo per parole che contengano gi`a almeno dCerrori;ildecodicatorenepu`oaggiungerealmassimoC.12C`euninterochenonhanullaachefareconlacapacit` a;ovviamenteC t44 CAPITOLO2. INTRODUZIONEALLACODIFICA:CODICIABLOCCOPer codici utilizzati solo come rivelatori di errori, se si conosce il numero Aidi paroledi codice di peso i per ogni i, `e facile calcolare la probabilit`a Picd di errori non rivelati:Picd=

i=0Aipi(1 p)Ni(2.10)Anchepercodiciutilizzaticomecorrettoridierrori`epossibile(manonfacilissimo)calcolarelaprobabilit`aPicddidecisioneerratanonrivelata.Capitolo3Introduzioneallacodica: codiciconvoluzionali3.1 CodiciconvoluzionaliFigura3.1: SemplicecodicatoreconvoluzionaleLa struttura di un semplice codicatore convoluzionale `e mostrata in Fig. 3.1. La lunghez-zaKdel registroa scorrimento(K= 3nellesempio) `e detta constraintlength. Allinizioiregistri sono azzerati. Entra un bit dinformazione per volta e ne escono due, combinazionilineari del bitattualeedi alcuni precedenti (due, ingura). Ibitcodicati sonoconvo-luzioni (inalgebrabinaria)dellasequenzainingressoconduediverserisposteimpulsive:indicandoconi(D)latrasformatazetadellasequenzadeibitdinformazione1i(D) = i0 + i1D + i2D2+ . . . (3.1)1Dstaperdelay; ogni altravariabile(x, z, Z, . . . ) sarebbeequivalente, maD`eil simbolopi` uspessousatoinquestocontesto4546CAPITOLO3. INTRODUZIONEALLACODIFICA:CODICICONVOLUZIONALIeconc1(D)ec2(D)leduesequenzeinuscitasihac1(D) = i(D)(1 +D + D2)c2(D) = i(D)(1 +D2)(3.2)Perquantolungasialasequenzainingresso,ungenericobitdinformazionehaeettosuibitcodicatisoloinunintervallomoltolimitato,contrariamenteaicodiciablocco.Convienedistinguere, nel contenutodel registroascorrimentodi lunghezzaK=3, unaparteriservataal bitattualeedunacontenentei K 1=2bitdel passatoancorame-morizzati, checostituisconolostatodel codicatore. Sonopossibili 2K1stati. Leusciteattualidipendonosiadallostatosiadaldatoattuale. Lostatoalpassosuccessivo,corri-spondenteallingressodi unnuovobitdinformazione, `eanchessofunzionedellostatoedeldatoattuale.Figura3.2: TralicciodelletransizionidistatodelcodiceconvoluzionalediFig. 3.1Letransizioni di statopossibili peri primi passi sonoindicateinFig. 3.2, dovegli statisonoenumeratisecondoilcontenutodellacoppiadiregistridimemoria,nellordineincuiappaionoinFig. 3.1. Si osservi chedaogni statosenepossonoraggiungeresolodue,corrispondenti ai duevalori del bitdinformazionechesi spostadallaprimaallasecondacella, cos` come ogni stato `e raggiungibile solo da due, poiche viene scartato un solo bit dalregistroascorrimento. Induepassi(K 1,ingenerale)`epossibileraggiungerequalsiasistato, dopodi cheil diagrammadi Fig. 3.2, dettotraliccio(trellis), si ripeteinvariato.Quandoeventualmentelasequenzadibitdinformazionetermina,risultaconvenientepermotivi chesi vedrannoinseguitoforzarelostatonaleadunonoto, adesempioquellonullo,terminandolasequenzaconK 1zeri.Si noti cheletransizioni di stato, mostrateinFig. 3.2, dipendonosolodallaparticolarestruttura a registro a scorrimento, e non dalle connessioni tra celle del registro e sommatorimodulo 2. Inoltre ciascuna transizione di stato individua non solo il contenuto attuale dellecelledi memoria(statoiniziale), maancheil bitdinformazioneattuale(che`edatodalS.Bellini 3.2. Decodicaamassimaverosimiglianza 47primobit dellostatonale). Ogni sequenzadi bit dinformazione`eincorrispondenzabiunivoca con una successione di transizioni di stato, cio`e con un percorso nel traliccio. Adogni biforcazione il percorso superiore corrisponde allingresso di uno zero e quello inferioreadununo. Nederivaanchechesesinumeranoprogressivamenteglistatiapartireda0a2K11 (o da 1 a 2K1) tutti gli stati pari (o dispari) corrispondono al bit dinformazionezero.I bit codicati, e di conseguenza la forma donda trasmessa, dipendono sia dal contenuto deiregistri sia dalle connessioni con i sommatori modulo 2. Per tutti i valori di Kdi interessepraticolaricercadi buoni codici `estataeettuatainmodoesaustivoprovandotuttelepossibili connessioni, conqualcheregolaperscartareal pi` uprestolecattivesoluzioni. Irisultatisonotabulatisuilibridicodici.011100111001000111001110010001110011100100011100111001000111001110010000111001001110 10 10 10 10Figura3.3: TralicciodelcodicatorediFig. 3.1;sonomostratiancheibitcodicatiIl codicedi Fig. 3.1`e, adesempio, il migliorefraquelli aquattrostati2. InFig. 3.3`eriprodotto il traliccio, con laggiunta delle coppie di bit codicati corrispondenti a ciascunatransizione di stato (gi`a per otto stati la gura risulterebbe quasi illeggibile, e converrebbesostituirla