2 2 procedura kodowania kodu rs OGMEYHZCLP77IJOGFRT2YXDUJRVYVF2KUZLUKWQ


2.2 Procedura kodowania kodu RS

Algorytm kodowania za pomocą kodu Reeda-Solomona jest taki sam jak inne algorytm kodowania jak dla innych kodów cyklicznych. Istnieją dwie możliwości kodowania. Pierwszą jest wykorzystanie wielomianu generującego kod, natomiast drugą jest macierz generująca kod. W niniejszej pracy dyplomowej została zastosowana pierwsza z metod tzn. wielomian generujący kod.

Wielomian informacyjny m(x) przyjmuje postać,

0x01 graphic

natomiast wielomian generujący kod jest stopnia r, gdzie r = n - k, wyznacza się ze wzoru:

0x01 graphic

Poszczególne operacje algorytmu wyglądają następująco:

  1. Na wstępie obliczamy wielomian generujący kodu:

0x01 graphic
,

  1. Odczytujemy wektor zawierający tekst jawny do zakodowania,

  2. Następnie mnożymy wielomian informacyjny m(x) przez wielomian xn-k otrzymując w ten sposób wielomian postaci

xn-k m(x)

  1. Kolejno dzielimy wyznaczonego wielomianu xn-k m(x) przez wyznaczony wcześniej wielomian generujący kod Reeda-Solomona g(x) i wyznaczenie reszty r(x) z tego dzielenia.

Resztę oblicza się ze wzoru:

0x01 graphic

gdzie q(x) jest częścią całkowitą, natomiast r(x) jest resztą z tego dzielenia,

Wielomian reszty to ma postać:

0x01 graphic

  1. Ostatnim krokiem jest wyznaczenie wektora kodowego kodu RS:

0x01 graphic

Wektor kodowy ma postać:

0x01 graphic

gdzie współrzędne m, są elementami informacyjnymi, natomiast współrzędne r, są elementami kontrolnymi.

Algorytmu powtarzamy tak długo, aż dla wszystkich odebranych bloków informacyjnych wyznaczymy kolejne wektory kodowe Cx(x). Liczba kroków zależy od rozmiaru kodowanej informacji oraz od wielkości bloków, na które dzielona jest kodowana informacja. Jeżeli ostatni blok informacyjny jest krótszy od założonej wielkości k, uzupełniany jest do odpowiedniej wielkości.

W przypadku niniejszej pracy dyplomowej wielomian informacyjny m(x) jest stopnia 125, a wielomian generujący kod g(x) jest stopnia 130. W związku z tym każdy .informacji, na który będzie dzielona kodowana informacja będzie miał rozmiar 125, każdy wektor kodowy Cx(x) będzie miał rozmiar 255, z czego pierwsze 125 elementów będzie informacją a pozostałe 130 będzie elementami kontrolnymi.

Schemat poglądowy algorytmu:

0x08 graphic

Procedura wykonująca kodowanie :

0x08 graphic

Obliczenie wielomianu generującego kod RS

Odczyt wektora wiadomości

Wyznaczamy wektor nadmiarowy, na podstawie wielomianu generującego

Sumujemy wektor wiadomości i wektor nadmiarowy

Otrzymujemy wektor o sumie długości obu wektorów

Tu następuje proces szyfrowania, który będzie omówiony dalej.

procedure Encode(n, r: Byte);

var

i, j, vv: Integer;

begin

for j:=-1 to r-1 do v[j]:=0;

for i:=n downto r do

begin

vv:=S(v[i], v[r-1]);

for j:=r-1 downto 0 do

v[j]:=S(v[j-1], P(pg[j], vv))

end

end; {Encode}



Wyszukiwarka

Podobne podstrony:
2 3 procedura uproszczonego?kodowania kodu rs VD6QCROCBKVDU5HUUQKD2I666CON6NW3RBNXL6Q
2 1 Wielomian generujący kodu RS
Procedury kodowań VW
kodowanie sterownikow Audi A4, auta, Diagnostyka dokumety, procedury diagnostyczne
Kodowanie lista VW Passat, auta, Diagnostyka dokumety, procedury diagnostyczne
Procedura wgrywania plik�w przez RS 232
kodowanie sterownikow Audi A4, auta, Diagnostyka dokumety, procedury diagnostyczne
PROCEDURA OLUP
06 pamięć proceduralna schematy, skrypty, ramyid 6150 ppt
LAB PROCEDURY I FUNKCJE
Wykład 6 6 kodowanie mowy
Kodowanie informacji
proces nbsp pomocy nbsp, nbsp strategie nbsp i nbsp procedury nbsp SWPS[1][1] 4
Historia stosunków międzynarodowych, RS
F1 15 Tablica kodu ASCII

więcej podobnych podstron