Ciklikus, lineáris kódok megvalósítása shift-regiszterekkel

Slides:



Advertisements
Hasonló előadás
Készítette: Nagy Mihály tanár Perecsen, 2006.
Advertisements

A polinomalgebra elemei
Lineáris egyenletrendszerek megoldása Gauss elimináció, Cramer-szabály Dr. Kovács Sándor DE GVK Gazdaságelemzési és Statiszikai Tanszék.
Természetes számok 0, 1, 2, 3, ..., 24, 25, ..., 1231, 1232, ..., n, ...  = {0, 1, 2, 3, ..., n,...} a természetes számok halmaza Műveletek: összeadás.
Elemi algoritmusok Páll Boglárka.
Kódelmélet.
Az előadásokon oldandók meg. (Szimulációs modell is tartozik hozzájuk)
Diszkrét idejű bemenet kimenet modellek
9. Diszkrét wavelet transzformáció, szűrők, sokskálás felbontás, operátor tömörítés Speciálkurzus 2009 tavasz.
Vektormező szinguláris pontjainak indexe
Digitális képanalízis
Euklidészi gyűrűk Definíció.
Egy f  R[x] polinom cS -beli helyettesítési értéke
1.
Az összehasonlító rendezések
Algebra a matematika egy ága
Advanced Encryption System
Algebrai törtek.
Radványi Mihály Gergely Sándor Alpár Antal 2006
Adaptív jelfeldolgozás Rádiócsatorna kiegyenlítése
Szűrés és konvolúció Vámossy Zoltán 2004
A TERMÉSZETTUDOMÁNYOK ALAPJAI 1. Matematika
Lineáris algebra Mátrixok, determinánsok, lineáris egyenletrendszerek
x2 x2 – 5x + 6 x(x ) + x(–2)+ (–3)(x) + (–3)(–2) = (x – 3)(x – 2) = Végezzük el a következő szorzást: (x-3)(x-2) =
Reprezentációs függvény. Adva egy adattípus absztrakt és konkrét specifikációja: d a = ( A, F, E a ); d c = ( C, G, E c ); A = {A 0,..., A n };C = {C 0,...,
Számítógépes Hálózatok GY
Lineáris egyenletrendszerek megoldása
Lineáris transzformáció sajátértékei és sajátvektorai
MATEMATIKA ÉS INFORMATIKA I.
Exponenciális egyenletek
Előrendezéses edényrendezés – RADIX „vissza”
Befektetési döntések Bevezetés
Készítette: Gergó Márton Konzulens: Engedy István 2009/2010 tavasz.
Gráfelmélet: Fák.
Másodfokú egyenletek megoldása
Kétismeretlenes elsőfokú (lineáris) egyenletrendszerek
AAO Csink László november.
Programozási feladatsor ciklusok gyakorlására Készítette: Rummel Szabolcs Elérhetőség:
Végezd el a kiemeléseket! (Alakítsd szorzattá!)
Rendszerek stabilitása
Nagy Szilvia 3. Konvolúciós kódolás
Lineáris algebra.

Jelfeldolgozás alapfogalmak
Nagy Szilvia 13. Konvolúciós kódolás
Kommunikációs Rendszerek
Nagy Szilvia 7. Lineáris blokk-kódok
Nagy Szilvia 9. Ciklikus kódolás
2005. Információelmélet Nagy Szilvia 12. A hibacsomók elleni védekezés.
Átváltás a számrendszerek között
A természetes számok szorzása
A természetes számok osztása, az osztás tulajdonságai
2005. Információelmélet Nagy Szilvia 14. Viterbi-algoritmus.
T.5. tétel (minimálpolinom egyértelmű létezése)
Az alhálózatok számítása
Edényrendezés Név: Pókó Róbert Neptun: OYJPVP. Példa RADIX „előre” algoritmusra d=3 hosszú bináris számokra (r=2) Ekkor egy tömbbel meg lehet oldani a.
Nagy Szilvia 2. Lineáris blokk-kódok II.
Szállításszervezés.
Nagy Szilvia 10. Reed—Solomon-kódok
Kontinuum modellek 1.  Bevezetés a kontinuum modellekbe  Numerikus számolás alapjai.
Számtani alapműveletek
Adaptív jelfeldolgozás Rádiócsatorna kiegyenlítése
óra Műveletek a racionális számok halmazán
137. óra - Ismétlés Számok és műveletek
Lineáris egyenletrendszerek megoldása Gauss elimináció, Cramer-szabály Dr. Kovács Sándor DE GVK Gazdaságelemzési és Statiszikai Tanszék.
Lineáris egyenletrendszerek
Algebrai geometriai számítások
Matematika I. BGRMA1GNNC BGRMA1GNNB 7. előadás.
Bevezetés a mély tanulásba
Előadás másolata:

Ciklikus, lineáris kódok megvalósítása shift-regiszterekkel

Nem szisztematikus generálás Adott egy C(n,k) lineáris ciklikus kód. Az u(x) üzenetpolinomból a c(x) kódpolinomot legegszerűbben úgy kapjuk, hogy az üzenetet megszorozzuk a g(x) generátorpolinommal:

Végezzük el a szorzást! Vegyük észre, hogy a kódpolinom együtthatók a jól ismert konvolúciós formulával számíthatóak ki. A diszkrét konvolúciót megvalósító HW a FIR-szűrő (vagy súlyozott előrecsatolt shift-regiszter)

Polinomszorzás FIR-szűrővel Tekintsünk egy konkrét (bináris) példát: n=8 k=6 g(x)=1+x2 (Gyakorlásként leellenőrizhetjük, hogy g(x) tényleg lehet-e n=8 hosszú ciklikus kód generátorpolinomja: Azt kell megvizsgálni, g(x) osztja-e az x8-1 polinomot.) Legyen az üzenet például u(x)=1+x+x5

A FIR-szűrő kimenete az első időrésben a c0 együtthatót adja: (az induláskor a belső álapotok mindig 0-k) u0=1 D D g0=1 g1=0 g2=1 S c0=1

a 2. időrésben a c1 együtthatót kapjuk: D D g0=1 g1=0 g2=1 S c1=1

a 3. időrésben a c2 együtthatót kapjuk:

néhány lépést kihyagva, az utolsó, 8 néhány lépést kihyagva, az utolsó, 8. időrésben a c7 együtthatót kapjuk: u5=1 D D g0=1 g1=0 g2=1 S c7=1

Szisztematikus generálás polinomosztással Lineáris, ciklikus C(n,k) kódok szisztematikus generálásának egyik legegyszerűbb módszere a következő: Ebben az esetben az u(x) üzenet „eltoltjának” g(x)-szel való osztását kell implementálnunk, és az osztás maradékát használjuk föl paritásszegmensként. Az előbbi példában láttuk, hogy a csupa zérussal rendelkező diszkrét szűrő, a FIR-szűrő alkalmas polinomszorzás implementálására. A csak pólusokat tartalmazó diszkrét IIR szűrő pedig az osztás megvalósítására lesz alkalmas.

Példa Itt az utolsó sorban az euklideszi osztás eredményét adtuk meg. Ezek szerint a kód a következő: Most azt mutatjuk meg, hogyan implementálható ez a számítás visszacsatolt shift-regsizter segítségével.

Az általános „recept” a következő: 0,..,0, u1,…,uk-1 -g0 -g1 -gn-k-1 A szűrő bemenetére az n-k számú 0-val kiegészített üzenetet tesszük (ez megfelel az xn-k-val való szorzásnak) . A szűrő súlyait (karakterisztikus polinom) az osztó g(x) polinom együtthatóiból vesszük (mivel g(x) főpolinom, így gn-k=1). A regiszter n lépés után a maradékot fogja tartalmazni. Az inicializálás 0-kkal történik.

Példánk esetében ez a következő kapcsolást jelenti: 00110001 a b a b kezdőállapot x7 lépés 1 x6 2. x5 3. 4. 5. 6. x 7. 8. maradék: a+bx

Példa GF(3)-beli osztásra Oldjuk meg shift-regiszterrel az alábbi polinomosztási feladatot:

1002 a b -2=1 -1=2 a b kezdőállapot x3 lépés 2 x2 2. x 3. 1 4. x3 lépés 2 x2 2. x 3. 1 4. maradék: a+bx

Kódgenerálás paritásellenőrző polinommal uk-1 uk-2 u0 -h0 -hk-1 -hk-2 -h1

Példa

2. lépés 0 1 1 0 0 0 1. lépés 1 1 0 0 0 1 inicializálás 1 1 1 Megjegyzés: most elég két ütemig működtetni a szűrőt, hiszen két paritásbitet kell csak generálnunk. Ez a két paritásbit a 2. lépésben az első két regiszter tartalma, azaz 01, (hiszen az üzenettel inicializáltuk a regisztert, így először az üzenetbitek lépnek ki a kimeneten.