Reed-Solomon kód

A VIK Wikiből
A lap korábbi változatát látod, amilyen Unknown user (vitalap) 2012. október 21., 21:02-kor történt szerkesztése után volt. (Új oldal, tartalma: „{{GlobalTemplate|Infoalap|KodElmZHReedSolKod}} __TOC__ ==Konstrukció== * <math>\overline{u}= (u_0, u_1,\ldots , u_{n-1}) \quad u_i \in GF(q)</math> * <math>u(x)=u_0x…”)
(eltér) ← Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)

Ez az oldal a korábbi SCH wikiről lett áthozva.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor, kérlek, javíts rajta egy rövid szerkesztéssel!

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót.


Konstrukció

  • u=(u0,u1,,un1)uiGF(q)
  • u(x)=u0x+u1x++un1xk1deg(u(x))=k1
  • α a legkisebb primitív elem GF(q)-ban (rendje q1)
  • n=q1 (nem rövidített R-S kód)
  • ci=u(x)|x=αi=u0+u1αi+u2(αi)2++uk1(αi)k1
  • cT=(c0c1ck1)
  • c=uG
  • Gk×n=(11111αα2αn11α2α4α2(n1)1αk1α2(k1)α(k1)(n1)) generátormátrix

Alternatív konstrukció

  • c=(c0,c1,,cn1)
  • c(x)=c0x+c1x++cn1xk1
  • c(x)|x=αi=c0+c1αi+c2(αi)2++ck1(αi)i(n1),i=1,2,,nk
  • HTcT=0
  • H(nk)×n=(1αα2αn11α2α4α2(n1)1αnkα2(nk)α(k1)(nk)) paritásellenőrző-mátrix


Általános módszer G és H gyors felírására

Kódolás

  1. c=uG
  • u az üzenet
  • Gk×n a generátormátrix

Dekódolás

1.szindrómavektor kiszámítása: s=vH

  • v=c+e a vett vektor
  • e a hibavektor
  • H(nk)×n a paritásellenőrző-mátrix
  1. detekció PGZ-algoritmussal
  2. levágás
  3. szorzás az inverzmátrixszal u=Gk×k1c

PGZ-algoritmus

  • Peterson-Gorenstein-Zierler
  • ábra kellene

Az algoritmus lépései

  1. Ur×r=(s1s1srs2s3sr+1srsr+1s2r1) mátrixból kell kiválasztani a legnagyobb olyan t×t típusú almátrixot, amelyre det(Ut×t)0 modulo n.
  2. Ut×tL=V, ahol V=(st+1st+2s2t) és L=(LtLt1L1).

Ezt a lineáris egyenletrendszert modulo n megoldva kapjuk L1,L2,,Lt értékeket.

  1. L(x)=1+L1x+L2x2++Ltxt egyenlet gyökei adják X11,X21,,Xt1 értékeket, melyeknek ki kell számolni a multiplikatív inverzét modulo n, így kapjuk X1,X2,,Xt értékeket.
  2. Az előző lépésben kapott Xj értékek α alapú logarimtusát modulo n véve kapjuk a ijhibahelyeket: logαXj=ij. (A logaritmus számításhoz fel kell írni α hatványait modulo n.)
  3. At×tY=s, ahol At×t=(X1X2XtX12X22Xt2X1tX2tXtt) és Y=(Y1Y2Yt) Ezt a lineáris egyenletrendszert megoldva kapjuk Y1,Y2,,Yt értékeket. Ezek az Yj hibaértékeket.

Reed-Solomon kódok ciklikus generálása

Reed-Solomon kódok "gyorsítása" -- spektrális kódolás

Példák

  • példa

-- adamo - 2006.05.01. -- RebeliSzaboTamas - 2008.01.21.