Teoria codurilor, chestiute sper sa ma lase acum sa downloadez ceva

33
MODULUL 3 CODURI DETECTOARE ŞI CORECTOARE DE ERORI În cazul transmisiilor la distanţe relativ mari, prin apariţia inerentă a perturbaţiilor, o parte din simbolurile din alfabetul codului, ce formează cuvintele de cod ataşate mesajelor, pot fi modificate, astfel încât ceea ce se recepţionează nu mai corespunde cu ceea ce s-a transmis. Deoarece în marea majoritate a situaţiilor practice se foloseşte ca alfabet al codului numai 0 şi 1 (uşor de realizat) vom considera în continuare doar acest caz. În situaţia în care alfabetul codului este numai 0 şi 1, datorită perturbaţiilor codului, un 0 transmis poate deveni 1 şi invers. Din această cauză se spune că perturbaţiile care apar au un caracter aditiv. 0 1 0 1 0 1 1 0 Dacă se transmite 0 şi se recepţionează 1 perturbaţia 0 ⊕ 1 = 1. Din codarea mesajelor (surselor) pentru canale cu perturbaţii se pun două probleme: 1. detecţia erorilor 2. corecţia automată a erorilor 41

description

bla bla very important stuff bla

Transcript of Teoria codurilor, chestiute sper sa ma lase acum sa downloadez ceva

MODULUL 3CODURI DETECTOARE I CORECTOARE DE ERORI

n cazul transmisiilor la distane relativ mari, prin apariia inerent a perturbaiilor, o parte din simbolurile din alfabetul codului, ce formeaz cuvintele de cod ataate mesajelor, pot fi modificate, astfel nct ceea ce se recepioneaz nu mai corespunde cu ceea ce s-a transmis. Deoarece n marea majoritate a situaiilor practice se folosete ca alfabet al codului numai 0 i 1 (uor de realizat) vom considera n continuare doar acest caz. n situaia n care alfabetul codului este numai 0 i 1, datorit perturbaiilor codului, un 0 transmis poate deveni 1 i invers. Din aceast cauz se spune c perturbaiile care apar au un caracter aditiv. 0 1

0 1 0 1

1 0

Dac se transmite 0 i se recepioneaz 1 perturbaia 0 1 = 1.Din codarea mesajelor (surselor) pentru canale cu perturbaii se pun dou probleme:1. detecia erorilor2. corecia automat a erorilor1 codarea trebuie astfel efectuat nct la recepie s putem decide dac ceea ce s-a recepionat este corect sau eronat, fr pretenia de a stabili i locurile n cuvntul de cod n care s-au introdus erori. 2 codarea trebuie astfel efectuat, nct la recepie s avem posibilitatea nu numai a decide dac ceea ce s-a obinut este corect, ci i de a corecta automat erorile care au aprut pe canal.Problema deteciei erorilor este mai simpl, n schimb necesit un canal de transmisiuni cu dublu sens, deoarece, ori de cte ori la recepie se detecteaz prezena erorilor, s existe posibilitatea cererii de retransmisie a cuvntului recepionat eronat. Se cere transmiterea cuvntului recepionat eronat pn ce acesta este recepionat corect ; rezult o ntrziere la recepionarea informaiei. n scopul ntocmirii codurilor detectoare de erori sau corectoare de erori, se folosesc o serie ntreag de coduri, bazate pe diferite teorii matematice, o prim clasificare constnd n : coduri bloc la care fiecare cuvnt de cod are aceeai lungime coduri nonbloc (sau recurente) la care transmisia se face cursiv, fr o delimitare precis a cuvntului de cod.

MODULUL 3CAPITOLUL 1

CODURI DETECTOARE I CORECTOARE DE ERORI

3.1. Codarea si decodarea pe canale perturbate

S-a aratat anterior ca performanta globala a unui sistem de transmitere de date este probablitatea de eroare. Transmiterea n banda de baza sau modulatia sunt afectate de o serie de constrngeri care fac uneori imposibila obtinerea unei probabilitati de eroare prescrise.Calea prin care se poate obtine probabilitatea de eroare prescrisa este folosirea redundantei controlate. Blocurile functionale care efectueaza aceasta sarcina sunt codorul si decodorul canalului. Codorul canalului adauga n mod sistematic biti la mesajul transmis. Acesti biti aditionali, desi nu transporta informatie, fac posibili detectia si corectia erorilor. Detectia erorilor si/sau corectia lor coboara probabilitatea de eroare.Problema codarii pe canale perturbate poate fi formulata astfel. Referindu-ne la figura 5.1 sistemul digital de comunicatie urmareste transmiterea iesirii codorului sursei cu un debit pe un canal zgomotos. Datorita zgomotului fluxului de date receptionate difera uneori de secventa transmisa . Se impune ca probabilitatea de eroare sa fie mai mica dect o anumita valoare. Codorul canalului si decodorul canalului au ca scop reducerea probabilitatii globale de eroare. Codorul mparte biti mesajului n blocuri de cte biti si nlocuieste fiecare bloc cu un cuvnt de cod de biti, adaugnd biti. Decodorul primeste cuvntul de cod, care este uneori alterat si ncearca sa decodeze cei biti ai mesajului. Desi biti de control nu aduc nici o informatie receptorului, ei permit decodorului sa detecteze si sa corecteze erorile de tramsmitere reducnd prin aceasta probabilitatea de eroare. Proiectarea unui codor/decodor consta n selectarea regulilor de generare a cuvintelor de cod pornind de la blocurile mesaj si apoi de extragere a blocurilor mesaj din versiunea receptionata de cuvnt de cod. n figura 3.1 este prezentata schema bloc pentru un sistem de codare/decodare.

Codurile care efectueaza controlul erorii sunt clasificate n: coduri bloc si coduri convolutionare. Din codurile bloc, unui mesaj de biti i se asocieaza un cuvnt de cod de biti care actioneaza biti pe baza celor biti cu continut informational. La receptie biti de control sunt utilizati pentru a verifica biti de informatie din blocul precedent. Pentru codurile convolutionare, biti de control sunt n mod continuu inserati ntre biti de informatie; biti de control verificnd nu numai biti de informatie din blocul precedent ci si din alte blocuri anterioare.Distanta Hamming. Distanta ntre doua cuvinte binare de lungime $ este numarul pozitiilor de acelas rang n care doua cuvinte difera (3.1)ObservatieNumarul natural verifica axiomele distantei (3.2)

O reprezentare geometrica a lui poate fi un punct de coordonate In . Cele combinatii de biti sunt vrfurile unui hipercub de latura 1. In figura urmtoare este reprezentat un astfel de cub pentru .

Daca toate cuvintele de cod au sens, atunci orice eroare conduce la un alt cuvnt de cod si nu poate fi depistata. Daca nsa separam din cele cuvinte de cod, numai atunci este posibil sa se depisteze unele erori singulare deoarece combinate nu au sens. n general, fie un cod n care toate cuvintele sunt la distante mutuale de cel putin egale cu .

Cazul 1

Conditia necesara si suficienta ca un cod binar sa poata corecta cel mult erori este ca

Cazul 2

Daca se pot corecta cel mult erori.

3.2. Coduri Bloc Liniare

Se considera coduri bloc, n care fiecare, n fiecare bloc de biti mesaj este codat ntr-un bloc de biti prin adaugarea de biti de control. Bitii de control sunt obtinuti pe baza celor biti mesaj, asa cum este ilustrat n figura 3.3.

Blocurile de biti de la iesirea codorului canalului sunt numite cuvinte de cod si codurile pentru care biii mesaj apar la nceputul cuvntului de cod sunt numite coduri sistematice. n plus daca fiecare di cele cuvinte de cod poate fi exprimat ca o combinatie lineara de vectori independenti, atunci codul este si linear.

Codarea consta n doua etape:(1) secventa de biti informationali este segmentate n blocuri mesaj de cte biti.(2) codorul transforma fiecare bloc mesaj ntr-un bloc mai mare de biti n conformitate cu anumite reguli. Acesti biti aditionali sunt generati printr-o combinatie lineara de biti mesaj si operatiile pot fi descrise folosind matrice.Blocul mesaj este reprezentat printr-un vector linie avnd componente

(3.3)

Fiecare bloc mesaj este transformat ntr-un cuvnt de cod de lungime Se observa ca eficienta acestui cod este .Pentru un cod linear, sistematic primii biti ai cuvntului de cod sunt bitii mesaj adica

(3.4)

Ultimii biti ai cuvntului de cod sunt bitii de control generatii pe baza celor biti ai mesajului n conformitate cu anumite reguli predeterminate:

(3.5)

Coeficientii din ecuatiile (3.5) sunt booleene iar sumarea se face modulo -2. Ecuatiile (3.4) si (3.5) pot fi combinate sub o forma matriceala

(3.6)

sau

(3.7)

unde este o matrice de tip numita matricea generatoare a codului si are forma (3.8)

Matricea este matricea unitate de ordinul iar este o matrice arbritara . Sa remarcam ca specificarea lui defineste complet codul bloc .Proiectarea unui cod bloc prin selectarea unei matrici trebuie sa aiba n vedere urmatoarele proprieteti- comoditatea implementarii- capacitatea de a corecta erorile singulare si pachetele de erori (burst errors)- eficienta codului da fie ridicataPrin eficienta codului se Intelege raportul pentru o anumita capacitate de detectie/corectie.Trebuie mentionat ca nu exista o procedura de selectie a matricei care sa satisfaca toate proprietatile de mai sus.

3.3. Exemple de coduri liniare

Codul Hamming Cele mai cunoscute coduri liniare sint codurile binare Hamming . Ele se dau cu ajutorul matricei de control H, care este formata din m linii si - 1 coloane, lar coloanele sunt toate elementele nenule de lungime m. Spatiul nul al acestei matrice are distanta minima egala 3, adica este un cod (n k) ce corecteaza o eroare si are urmatoarele caracteristici:- lungimea combinatiilor de cod este n = 2m -1;- numarul simbolurilor de control este r=n - k ; -numarul simbolurilor informationale este k

Codul Reed-MullerReprezinta o categorie de coduri liniare care se deosebesc in mod esential de clasa codurilor liniare prin algoritmul de codificare si decodificare (codul Hamming , coduri simetrice pe k pozitii) .La acest cod, spre deosebire de codurile simetrice algoritmul de decodificare nu poate fi etapizat, atat detectia, corectia, cat si decodificarea propriu-zisa se produc simultan, rezultand in urma algoritmului, in mod direct simbolurile informationale continute in cuvantul de cod receptionat. Lungimea n a codului este o putere a lui 2, adic n=2m. Pentru r, numr ntreg pozitiv, numrul poziiilor informaionale este (3.8)Numrul simbolurilor de control este dat de relaia (3.9)Distana minim Hamming este d=2m-rLa codul Reed-Muller, spre deosebire de cele sistematice, algoritmul de decodificare nu poate fi etapizat, adica atat detectia cat si corectia si decodificarea propriu-zisa, se produc simultan, rezultand in urma algoritmului in mod direct simbolurile informationale detinute din codul receptionat. Fie Vn un spatiu vectorial peste GF(2), ndimensionali avand componentele 0 sau 1. Fie u=(a1,a2,a3,,an) si v=(b1,b2,b3,,bn), pe spatiul vectorial Vn se poate defini produsul vectorial u x V=(a1*b1, a2*b2,an*bn) si produsul scalar si .Se pot observa urmatoarele: produsul scalar este nul daca ponderea produsului vectorial este un numar par; fata de operatiile descrise, multimea vectorilor de n elemente formeaza o algebra liniara, asociativa si comutativa.

Codul Reed-Muller se poate defini cu urmatorii parametrii: n=2m, unde n este dimensiunea vectorilot cuvintelor de cod; , unde k este numarul de simboluri informationale din cod; d=2m-r, unde d este distanta minima a codurilor; , pentru care se defineste codul RM(m,r); unde t este numarul de erori pe care il poate corecta codul RM(m,r).

Un cod Reed-Muller de ordinul r avand lungimea cuvintelor de cod 2m este un subspatiu vectorial, generat de urmatorii vectori liniari independenti care constituie matricea generatoare:V0=1111 1111 1111 ..1111Vm=0000 0000 0000 ..1111Vm-1=0000 1111 0000 . 1111Vm x Vm-1= . (3.10).V2 x V1= ....Vr x Vr-1 x V1= .Algoritmul de codificare presupune produsul dintre mesajul informational X=a1xk x Gkxn.

Codul Reed-Muller (5,2)Folosind relatiile generale ale codului Reed-Muller(m,r) ne rezulta urmatoarele valori:m=5; r=2; n=32; k=16; n-k=16; d=8; t=3, de aici rezulta ca putem corecta maxim 3 erori pe cuvant.Matricea V pentru RM(5,2) este:

(1111 1111 1111 1111 1111 1111 1111 1111){V0} (0000 0000 0000 0000 1111 1111 1111 1111){V5} (0000 0000 1111 1111 0000 0000 1111 1111){V4} (0000 1111 0000 1111 0000 1111 0000 1111){V3} (0011 0011 0011 0011 0011 0011 0011 0011){V2} (0101 0101 0101 0101 0101 0101 0101 0101){V1} (0000 0000 0000 0000 0000 0000 1111 1111){V54} (0000 0000 0000 0000 0000 1111 0000 1111){V53} (3.11) (0000 0000 0000 0000 0011 0011 0011 0011){V52} (0000 0000 0000 0000 0101 0101 0101 0101){V51} (0000 0000 0000 1111 0000 0000 0000 1111){V43} (0000 0000 0011 0011 0000 0000 0011 0011){V42} (0000 0000 0101 0101 0000 0000 0101 0101){V41} (0000 0011 0000 0011 0000 0011 0000 0011){V32} (0000 0101 0000 0101 0000 0111 0000 0101){V31} (0001 0001 0001 0001 0001 0001 0001 0001);{V21}

Se defineste unde m=(a0 a5 a4 a3 a2 a1 a54 a53 a52 a51 a43 a42 a41 a32 a31 a21).Algoritmul de decodificare se bazeaza pe relatii de control. Pentru a scrie relatiile de control pentru fiecare componenta a vectorului mesaj informational, se va analiza V, incepand de la ultima linie V21, spre prima linie V0, pentru a identifica numarul componentelor diferite de zero din fiecare linie a matricii. Pentru fiecare componenta nenula din liniile matricii vom scrie cate un set de relatii de control corespunzator componentei informationale din mesajul transmis care are acelasi indice cu vectorul analizat.Mesajul informational este:a1xk=(a0 a5 a4 a3 a2 a1 a54 a53 a52 a51 a43 a42 a41 a32 a31 a21).Pentru determinarea lui aij se folosesc urmatoarele sisteme, apeland la logica majoritara. Sumele din sistem sunt modulo2. Se calculeaza valoarea pentru fiecare aij si aij este valoarea majoritara din sistem:

Iar a21 este valoarea majoritara a sistemului.

Iar a31 este valoarea majoritara a sistemului.

Iar a32 este valoarea majoritara a sistemului.

Iar a41 este valoarea majoritara a sistemului.

Iar a42 este valoarea majoritara a sistemului.

Iar a43 este valoarea majoritara a sistemului.

Iar a51 este valoarea majoritara a sistemului.

Iar a52 este valoarea majoritara a sistemului.

Iar a53 este valoarea majoritara a sistemului.

Iar a54 este valoarea majoritara a sistemului.

Dupa ce au fost scrise relatiile de control corespunzatoare vectorilor compusi, se procedeaza in felul urmator: se elimina influenta din relatiile de control a componentelor corespunzatoare vectorilor compusi; se scriu numarul de relatii de control pentru vectorii simpli, in numar de cate componente diferite de zero sunt pe fiecare din liniile lui V (pentru vectorii simpli).

Urmatorul pas este determinarea lui y:y=y-(a54*V54+a53*V53+a52*V52+a51*V51+a43*V43+a42*V42+a41*V41+a32*V32+a31*V31 +a21*V21);

Pentru a vedea valoarea componentei mesajului informational: (a54 a53 a52 a51 a43 a42 a41 a32 a31 a21)se procedeaza pe baza logicii majoritare.

Iar a1 este valoarea majoritara a sistemului.

Iar a2 este valoarea majoritara a sistemului.

Iar a3 este valoarea majoritara a sistemului.

Iar a4 este valoarea majoritara a sistemului.

Iar a5 este valoarea majoritara a sistemului.

Dupa ce au fost evaluate componentele de la a1 la a5, se elimina influenta vectorilor simpli din vectorul y:y=y-(a1*V1+ a2*V2+ a3*V3+ a4*V4+ a5*V5)

Pentru a evalua pe a0, observam numarul majoritar de componente din y iar valoarea celor mai multe componente va fi valoarea lui a0. Mesajul corectat este:m=(a0 a5 a4 a3 a2 a1 a54 a53 a52 a51 a43 a42 a41 a32 a31 a21)

Codul BHCCodurile Bose-Chadhuri-Hocquenghem (BCH) constituie o clas de coduri ciclice cu o deosebit capacitate de corecie a erorilor, care generalizeaz codurile Hamming pentru corecia erorilor multiple.Un cod ciclic binar, corector de t erori, avnd Lungimea blocului n=, cu m, ntreg Numrul simbolurilor de control n-kmt, t, Distana d,se numete cod BHC dac are drept polinom generator g(x) polinomul de cel mai mic grad peste cmpul GF(2) care are ca rdcini elementele ale cmpului Galois GF().Prin urmare g()=0, i=Fie polinomul minimal al lui , adic polinomul de cel mai mic grad peste GF(2) astfel nct =0. Atunci polinomul generator g(x) trebuie s fie cel mai mic multiplu comun (c.m.m.m.c) al polinoamelor , i anume: g(x)= (c.m.m.m.c){, }.Un numr par i poate fi exprimat sub forma i=k*, k, impar. Atunci = este conjugatul elementului . Dar un polinom care admite rdcinile admite drept rdcini i conjugatele acestora. Prin urmare, i au acelai polinom minimal i deci . Atunci polinomul generator este de forma g(x)= (c.m.m.m.c){, }. (3.12)Grdul fiecrui polinom minimal fiind cel mult egal cu m , polinomul g(x) va fi de grad cel mult egal cu mt , astfel nct numrul simbolurilor de control, n-k , va fi cel mult egal cu mt : n-k mt. La limit, n cazul coreciei unei singure erori, t=1, rezult n-k mt.Codul BCH de lungime , cu m10 , se numesc coduri BCH n sens restrns (sau primitive). Aceste coduri sunt generate de elemente primitive de ordin mai mic dect din GF().Un cod BCH de lungime corector de o singur eroare este generat de polinomul g(x)=.Polinoamele minimale ale elementelor din GF() generate de g(x)=1+x+

Exemplu. trebuie s fie de grad m=4 , deci de forma =1+ (3.13)Deoarece =1+ (3.14)Conform tabelului 3.3 nseamn c (3.15)i rezult

Deci = 1+x+ (3.16)Deoarece din 2t-1=3 rezult t=2, se deduce un cod BCH corector de dou erori i de lungime n= = 15 este generat de g(x)= (c.m.m.m.c){, }=(x)=1+.Fie v(x) un polinom de cod cu coeficienii n GF(2), asociai unuo cuvnt de cod v(x)=. Polinomul de cod admite rdcinile din GF().Dac este o rdcin a lui v(x) pentru 1, atunci + (3.17)Se introduce matricea (3.18)astfel nct v =0.Rezult c v este n spaiul nul al matricei H i deci H este matrice de control a codului.

Aplicaii

Simularea cu ajutorul programului MATLAB a codului BCH

Codurile BCH fac parte din categoria codurilor ciclice. Se va implementa n programul MATLAB schema prezentat n figura urmtoare.Se vor utiliza urmtoarele blocuri:- Random-Integer Generator: genereaz numere ntregi distribuite n intervalul [0, M-1]. Parametrii blocului sunt:- M-ary number este 2^7 deoarece codul BCH utilizat este BCH(15,7)i numerele generate sunt reprezentate n binar pe 7 bii.- Initial seed este [1458]. Modificnd acest parametru se modifica secvena de numere generate.- Sample time este 1. Genereaz cte un numr la fiecare secund.- Integer to Bit Converter: transform un vector de ntregi ntr-un vector de bii. Parametrul blocului este:- Number of bits per integer este 7. Se lucreaz pe 7 bii.- BCH Encoder: creaz un cod BCH din datele vectorului binar. Parametrii blocului sunt:- Codeword length N este 15.- Message length K este 7 deoarece se utilizeaz codul BCH(15,7).- Binary Symmetric Channel: introduce erori binare. Parametrii blocului sunt:- Error probability este 0.1, pentru a nu introduce erori.- Input vector length este 15 deoarece cuvntul de cod cu care se aduneste reprezentat pe 15 bii.- Initial seed este 12345.- Sample time este 1 pentru a se genera un eantion la fiecare secund.- BCH Decoder: decodeaz un cod BCH pentru a reface vectorul binar transmis. Parametrii blocului sunt:- Codeword length N este 15 .- Message length K este 7 deoarece se utilizeaz codul BCH(15,7).- Bit to Integer Converter: transform un vector de bii ntr-un vector de ntregi. Parametrul blocului este:- Number of bits per integer este 7.- Error Meter: compar semnalele de la intrare, le afieaz i evalueaz rata de eroare. Parametrii blocului sunt:- Bit per symbol este 7 deoarece utilizeaz 7 bii pentru fiecare simbol transmis.- Number of digits on display este 20 deoarece afieaz 20 desimboluri.- Delay between input (1st port) and output (2nd port) este 0.- Sample time este 1 deoarece se consider un eantion la fiecare secund.- Sum: afieaz suma elementelor de la intrare. Parametrii blocului sunt:- Icon shape este rectangular.- List of signs este +.- Graph Scope: afieaz numrul de erori. Parametrii blocului sunt:- Time range este 10.- y-min este -1.- y-max este 5.- Line type este 'ro/b*'- Mux: multiplexeaz semnalele de la intrare.- Display: afieaz valoarea de la intrare. Se va realiza schema bloc aratat i se va rula pentru diferite valori ale probabilitatii de eroare si se vor analiza rezultatele.

Simularea cu ajutorul programului MATLAB a codului Hammingn cadrul lucrrilor de laborator va fi pus la dispoziie o aplicaie software care implemeneaz algoritmul de compresie Shannon-Fano. Ecranul aplicaiei este prezentat n figura urmtoare.

Exerciii rezolvate.Un numr de 8 simboluri se transmit cu ajutorul unui cod Hamming grup corector de o eroare i detector de erori duble. Se cere:a. s se determine numrul simbolurilor de informaie k, al celor de control m, i lungimea cuvntului de cod n;b. s se scrie matricea de control H a codului;c. s se stabileasc expresia corectorului corespunztor eronrii simbolului ;d. s se determine corectorul corespunztor eronrii simbolurilor i ;e. s se determine cuvintele de cod;f. s se precizeze dac este un cuvnt al acestui cod.

Soluie a). Numrul simbolurilor de informaie k se determin cu relaia i rezult k=3.Marginea Hamming d pentru numrul simbolurilor de control: , din care rezult c m=3.La aceste simboluri de control, care permit corecia unei erori, trebuie adugat simbolul de verificare la paritate, aa nct numrul total al simbolurilor de control va fi:=m+1=3+1=4Structura cuvntului de cod va fi:

Unde este simbolul de verificare a paritii, iar - simbolurile de control pebtru codul corector de o eroare.b). Matricea H a codului corector de o eroare este de forma:H=[]respectiv:H=Cu relaia (2.33) se obine pentru matricea expresia:=c). Pentru acest caz cuvntul de eroare este de forma:

Cu relaia (2.34) rezult pentru expresia corectorului

Din expresia corectorului rezult c apare o eroare corectabil ( pe poziia a 2-a (z=).d). Pentru acest caz cuvntul eroare este de forma:

i rezult:=Corectorul arat c apar dou erori detecctabile ().e). Cuvintele de cod se pot scrie calculnd simbolurile de control din cele de informaie cu relaia , din care rezult:

Cuvintele de cod se gsesc n tabelul urmtor.SimboluriCuvinte

0000000

1010101

1100110

0110011

1111000

0101101

0011110

1001011

f). Se calculeaz corectorul astfel:==Deoarece iar z=0 cuvntul dat este un cuvnt al acestui cod, ceea ce era usor de constatat i prin inspectarea tabelului anterior, n care l regsim sub forma cuvntului .

Teste de autoevaluare i teme de control

Testul nr. 1Se consider un cod grup cu matricea de control de forma:

a. s se determine proprietile de corecie ale codului. Codul este perfect?b. s se stabileasc dac matricea:

poate s fie matricea generatoare a codului.c. s se scrie cuvintele de cod utiliznd matricele H i G.

Bibliografie recomandat la modulul 3:[1] A. Sptaru: Teoria Transmisiunii Informaiei, Ed. Didactic i Pedagogic, Bu- cureti, 1983.

[2] A. T. Murgan, I. Spnu, I. Gavt, I. Sztojanov, V. E. Neagoe, A. Vlad: TeoriaTransmisiunii Informaiei - probleme, Ed. Didactic i Pedagogic, Bucureti,1983

[3] I. Angheloiu, Teoria codurilor, Ed. Militar, Bucureti, 1972.

[4] J.C. Moreira, P.G. Farrell, ESSENTIALS OF ERROR-CONTROL CODING, John Wiley & Sons Ltd, The Atrium, Southern Gate, Chichester, West Sussex PO19 8SQ, England,2006.