Reed-Solomon: diferència entre les revisions

De la Viquipèdia, l'enciclopèdia lliure
Contingut suprimit Contingut afegit
m Robot modifica: he:קוד ריד-סולומון; canvis cosmètics
Línia 10: Línia 10:
La versió pensada per Irving S.Reed i Gustave Solomon era molt senzilla. Però tenia un problema, es va comprovar que a la pràctica era ineficient si els valors dels paràmetres eren grans.
La versió pensada per Irving S.Reed i Gustave Solomon era molt senzilla. Però tenia un problema, es va comprovar que a la pràctica era ineficient si els valors dels paràmetres eren grans.


===Definició Original===
=== Definició Original ===
La idea és que a partir d'un informació, creem un polinomi. Inicialment fixem un cos finit C<sub>q</sub>, un element primitiu α∈C<sub>q</sub> i finalment un enter 1≤N≤q-1. Considerem la paraula
La idea és que a partir d'un informació, creem un polinomi. Inicialment fixem un cos finit C<sub>q</sub>, un element primitiu α∈C<sub>q</sub> i finalment un enter 1≤N≤q-1. Considerem la paraula


Línia 29: Línia 29:
RS<sub>q</sub>(N)={(m(α<sup>0</sup>),m(α<sup>1</sup>),m(α<sup>2</sup>),...,m(α<sup>q-2</sup>))∈ C<sub>q</sub><sup>q-1</sup>}
RS<sub>q</sub>(N)={(m(α<sup>0</sup>),m(α<sup>1</sup>),m(α<sup>2</sup>),...,m(α<sup>q-2</sup>))∈ C<sub>q</sub><sup>q-1</sup>}


== Definició Actual==
== Definició Actual ==
La definició inicial de Irving Reed i Gustave Solomon necessitava moltes interpolacions per tal de poder corregir la informació ja que per exemple si utilitzem els valors q=16 i N=7, és necessari realitzar 6435 interpolacions, fet que treu eficiència al codi inicial.
La definició inicial de Irving Reed i Gustave Solomon necessitava moltes interpolacions per tal de poder corregir la informació ja que per exemple si utilitzem els valors q=16 i N=7, és necessari realitzar 6435 interpolacions, fet que treu eficiència al codi inicial.


Per aquesta raó es va decidir utilitzar un mètode més eficient, mitjançant la [[Transformada Discreta de Fourier]]. Considerem C<sub>q</sub> un cos finit, un element primitiu α∈C<sub>q</sub> i finalment imposem N=q-1. Consideri un altre cop la paraula '''m''' i l'avaluació en totes les potències de α, tal i com s'ha fet en el cas original. Ara definim una matriu tal i que el nombre de files i columnes van de 0 a N-1. Per exemple: Considerem N=5
Per aquesta raó es va decidir utilitzar un mètode més eficient, mitjançant la [[Transformada Discreta de Fourier]]. Considerem C<sub>q</sub> un cos finit, un element primitiu α∈C<sub>q</sub> i finalment imposem N=q-1. Consideri un altre cop la paraula '''m''' i l'avaluació en totes les potències de α, tal i com s'ha fet en el cas original. Ara definim una matriu tal i que el nombre de files i columnes van de 0 a N-1. Per exemple: Considerem N=5


:<math>C_\alpha=
:<math>C_\alpha=
Línia 59: Línia 59:




==Vegeu També==
== Vegeu També ==
* [[Detecció d'errors]]
* [[Detecció d'errors]]
* [[Teoria de la informació]]
* [[Teoria de la informació]]
Línia 71: Línia 71:
[[fa:تصحیح خطای رید-سالامون]]
[[fa:تصحیح خطای رید-سالامون]]
[[fr:Code de Reed-Solomon]]
[[fr:Code de Reed-Solomon]]
[[he:קוד ריד-סלומון]]
[[he:קוד ריד-סולומון]]
[[it:Codice Reed-Solomon]]
[[it:Codice Reed-Solomon]]
[[ja:リード・ソロモン符号]]
[[ja:リード・ソロモン符号]]

Revisió del 00:21, 5 set 2010

Reed-Solomon és un algorisme de correcció d'errors. Aquest codi està dintre dels codis anomenats FEC(Forward Error Correction), això vol dir que és el receptor el que s'encarrega de corregir els errors, no pas el emissor. Per dur a terme aquesta tasca, utilitza bytes de redundància. S'utilitza en transmissions digitals.

Una manera fàcil per definir que fa aquest codi seria: La informació és divideix en parts. Dins de cada paquet introduïm bytes d'informació redundant(X). Aixó permet al receptor poder recupera X/2 bytes d'informació útil.

Per exemple, en DVB dividim la informació en 188bytes. A cada paquet de 188 bytes, introduïm 16 bytes d'informació redundant. Això vol dir que el receptor pot recuperar fins a 8 bytes d'informació útil.

El codi va ser inventat per Irving S. Reed i Gustave Solomon l'any 1960.

Reed-Solomon Original

La versió pensada per Irving S.Reed i Gustave Solomon era molt senzilla. Però tenia un problema, es va comprovar que a la pràctica era ineficient si els valors dels paràmetres eren grans.

Definició Original

La idea és que a partir d'un informació, creem un polinomi. Inicialment fixem un cos finit Cq, un element primitiu α∈Cq i finalment un enter 1≤N≤q-1. Considerem la paraula

m= (m0,m1,m2,...mαq-2) la qual identificarem amb el polinomi


A partir d'aquí, es tracta de codificar m pel vector que conté les avaluacions de m(x)en cadascun dels elements Cq:

Vector-> V=(m(α0),m(α1),m(α2),...,m(αq-2))

Si considerem el teorema d'interpolació només existeix un únic polinomi de grau ≤N-1 que passi per N punts donats de Cq2d'abcisses. Qualsevol Ncoordenades de la paraula codificada V són suficients per recuperar la informació inicial m. Llavors, encara que es perdin alguns símbols o s'hagin corromput alguns, la paraula m es podrà recuperar sempre i quan en quedin com a mínim N símbols correctes.

La finalitat és que, si el nombre d'errors és prou peti, a partir d'aquest métode podrem decodificar la informació rebuda al receptor i alhora corregir-la, recuperant la informació enviada per l'emissor tal i com ha estat enviada.

Per tant, finalment definim el codi Reed-Solomoncom:

RSq(N)={(m(α0),m(α1),m(α2),...,m(αq-2))∈ Cqq-1}

Definició Actual

La definició inicial de Irving Reed i Gustave Solomon necessitava moltes interpolacions per tal de poder corregir la informació ja que per exemple si utilitzem els valors q=16 i N=7, és necessari realitzar 6435 interpolacions, fet que treu eficiència al codi inicial.

Per aquesta raó es va decidir utilitzar un mètode més eficient, mitjançant la Transformada Discreta de Fourier. Considerem Cq un cos finit, un element primitiu α∈Cq i finalment imposem N=q-1. Consideri un altre cop la paraula m i l'avaluació en totes les potències de α, tal i com s'ha fet en el cas original. Ara definim una matriu tal i que el nombre de files i columnes van de 0 a N-1. Per exemple: Considerem N=5

El procés d'avaluació coincideix amb la multiplicació per C_α. Llavors ho podem expressar com:

D'aquesta manera és molt més fàcil i més eficient.


On s'utilitza?

S'utilitza aquest codi:

  • DVB (Digital Video Broadcasting).
  • TDT.
  • En sistemes d'emmagatzematge com el DVD.
  • DAB+ (Digital Audio Broadcasting plus).


Vegeu També