199046. lajstromszámú szabadalom • Eljárás és berendezés hibajavító kódolárú kódjelek dekódolására
7 HU 193046 B 8 memóriában tároljuk a 16 óim vezérlő által meghatározott sorrendben. A 14 RAM memóriából kiolvasott kódjelek egy C2 kódot dekódoló 16 dekóderre jutnak, ahol a C2 kód szerinti dekódolásuk történik meg. A 16 dekóder megkapja a Ci pointer jelet a 13 memóriától. Mivel a Ci pointer jel közös a C2 kódolású kódjelek összes ki sorozatára, lehetőség van arra, hogy mindegyik sorozatban ugynazon eljárással dekódoljuk a C2 kódot. A 16 dekóder maximum (nz - k2>/2 szimbólum jel hibáját javítja és a C2 kódra vonatkozóan háromféle pointer jelet generál, amelyeket a pointer 17 memóriában tárol. Amikor a 16 dekóderben hibajavítás történik, az illető sorozattal kapcsolatos C2 pointer jeleket .0" értékre állítjuk be. Amikor a 16 dekóder nem tudja kijavítani a hibát és a Ci pointer jeleket másoljuk át azok nagy megbízhatósága miatt, a C2 pointer jeleket .1" értékűre állítjuk be. Amikor a 16 dekóder nem tudja kijavítani a hibát és a Ci pointer jelek kis megbízhatósága folytán az összes szimbólum jelet hibásnak tekintjük, a C2 pointer jeleket .2’ értékre állítjuk. Ennélfogva a C2 pointer jelek 2-bitesek és a 17 memória (2ki)-bites. A 13 és 17 memóriákat kialakíthatjuk attól a 14 RAM memóriától különválasztva, amelyik az információs szimbólum jeleket és a paritás adatokat tárolja a dekódolás sorén, avagy azok benne lehetnek a 14 RAM memóriában, felhasználva annak egy-egy memória területét. A Cl pointer jelet nem szükséges 1—hitesre korlátozni, igy az lehet két- vagy több-bites. Továbbá ki lehet terjeszteni a C2 kód szerinti hibajavító feldolgozást a Ci paritás adatokra is, ez esetben a Cz pointer jel 17 memóriája (2ni)-bites. A 16 dekóder kimenő jelei 18 kimenőegységre, az ábrázolt kivitelben egy interpolációs áramkörre kerülnek azon szimbólum jel hibák megszüntetése céljából, amelyek javítása nem történt meg. Az interpolációs áramkör pl. a középérték alapján végzi el az interpolációt. A 18 kimenóegységet egy jelölöjelet előállító 19 egység vezérli, amelyik megkapja a Cl és Cz pointer jeleket a 13 és 17 memóriákból. A 18 kimenőegység kimenő jelei 20 kimeneti kapcsolóról vehetők le. A 19 egység minden egyes információs szimbólum jel esetében eldönti a Cl és C2 pointer jelek alapján, hogy szükség van-e interpolációra. A 2. ábrán 13’ memóriában a Cx pointer jelek, 17’ memóriában a Cz pointer jelek kombinációit szerepeltettük. Amikor a C2 pointer jel .0' értékű, akkor függetlenül attól, hogy a Cl pointer jel .0" vagy .1" értékű, a 18 kimenőegység nem működik. Amikor a C2 pointer .1" értékű és a Cl pointer .0" értékű, mivel megállapítást nyert, hogy az információs szimbólum jel hibátlan, nem történik interpoláció. Amikor a C2 pointer jel .1" értékű és a Ci pointer jel is .1* értékű, mivel az nyert megállapítást, hogy a szimbólum jel hibás, interpolációra kerül sor. Továbbá amikor a C2 pointer jel értéke .2', akkor függetlenül attól, hogy a Cl pointer jel értéke .0" vagy .1", mivel az nyert megállapítást, hogy hibás szimbólum jelről van szó, az interpolációs művelet végrehajtásra kerül. A Ci pointer jelek megbízhatóságát a 16 dekóder értékeli ki. Például feltételezve, hogy a C2 kód legfeljebb két szimbólum jel hibát tud jevítani, ha a C2 kód révén nem lehet végrehajtani a javítást annak ellenére, hogy csak egy Ci pointer jel .1* értékű, az nyer megállapítást, hogy a Cl pointer jel megbízhatósága kicsi, mivel a fenti eset abnormális. Abban az esetben is, ha a C2 kód nem javítja a hibákat, elkerülhető az interpoláció a háromféle (0, 1, 2) C2 pointer jel alkalmazásával és a Cl pointer jelek másolatainak az összes hibától történő elkülönítésével. A fent említett 16 dekóderben a Ci pointer jelek átmásolásakor ott történik hibacsomó javítás, ahol a Ci pointer jelek száma kisebb vagy egyenlő mint (n2 - k2>, és amikor hibacsomó javításra kerül sor, a Cz pointer jel értékét .O'-ra állítjuk be. A fent leírlak szerint a Reed-Solomon kód dekódolása úgy történik, hogy mindegyik sorra vonatkozóan kiszámítjuk a d~(z) hibahely meghatározó polinomot és az wíz) hibakiértékeló polinomot, és felhasználjuk az egyes sorokban lévő n2 szimbólum jel révén nyert szindróma jelet. Hibacsomó javítás esetében, mivel azokat a helyeket, ahol a Ci pointer jelek értéke .1”, hibahelyekként értelmezzük, lehetőség van arra, hogy az Xi hibahelyből és az w(z) hibakiértékeló polinomból határozzuk meg az Yí hibaértéket. Vagyis z helyére Xi_1-et helyettesítve Yi meghatározható a (8) összefüggés segítségével: w (XrM Yt = (1 - XjXr1) j=i ahol i = 1, 2, 3,...s; s jelöli a szimbólum jelek számát. A fenti kifejezésben a nevezőt egyedül a hibahelyek határozzék meg. Például feltéve, hogy a Ci pointer jel által mutatott hibahelyek Xi, X2 és X3, a kifejezés nevezőjének alakja Yi, Y2 és Yí-ra vonatkozóan a következő: Yi nevezője: (1 - X2Xi_1l (1 - X3X1'1) Y2 nevezője: (] - X1X3'1) (1 - X2X3"1) Y3 nevezője: (1 - X1X2"1) (1 - X3X2"1) Itt a 13 memóriában tárolt pointer jelek azonosak a C2 kódolási! kódjelek összes ki sorozatára. Ezért, elegendő c.Bak egyszer elvégezni a számításokat, a hibaértéket meghatározó fenti kifejezés nevezőjére nézve a ki sorozatokra vonatkozóan. A 4. ábra a fent említett 12 és 16 dekóderrel felhasználható hibajavító dekóder felépítését mutatja. A vett kódjelek 21 bemeneti 5 10 15 30 35 30 35 10 15 50 55 60 65 6