Көпмүшеліктерді көпмүшеліктерге бөлу процедурасы



Жұмыс түрі:  Дипломдық жұмыс
Тегін:  Антиплагиат
Көлемі: 40 бет
Таңдаулыға:   
Рид-Соломон коды
МАЗМҰНЫ
1 ТЕЛЕМЕХАНИКАЛЫҚ АҚПАРАТТЫ ЖІБЕРУ 2
1.1. Ақпаратты жіберу және қабылдау процесінде ақпараттың маңызы 2
2. АҚПАРАТТАРДЫ ЖІБЕРУ ЖӘНЕ ҚАБЫЛДАУ ҚОЛДАНАТЫН КОДТАР 3
2.1. Ақпараттарды жіберудегі және қабылдаудағы негізгі анықтамалар. 3
2.2 БҰРМАЛАНБАҒАН КОДТАР 6
2.3 БҰРМАЛАНҒАН КОДТАР 6
2.4 АЙНЫМАЛЫ КОДТАР 8
3. ЕКІЛІК ЕМЕС АЙНЫМАЛЫ РИД-СОЛОМОН КОДЫНДА У АРҚЫЛЫ АҚПАРАТТЫ ЖІБЕРУ
11
3.1. Рид- Соломон кодтарының сипаттамасы 19
3.2 Көпмүшелікті құрайтын символдарды таңдау 20
3.3 Кодалау 22
3.4 Кері кодалау 23
4. РИД-СОЛОМОН КОДАНЫҢ ФУНКЦИЯНАЛДЫ СҰЛБАСЫН ЖҮЗЕГЕ АСЫРУ 24
4.1. Сызықты қайта қосу сұлбалары 24
4.2.Бөлу сұлбасы 26
5. РИД-СОЛОМОН КОДЫНЫҢ ҚАҒИДАЛЫ СҰЛБАЛАРЫН ЖАСАУ. 31
5.1 Кодтаушы құрылғының қағидалы сұлбасы. 31
5.2. Рид - Соломон кодының керікодтау құрылғысының қағидалы сұлбасы. 36
6. ДАЙЫНДАУ ТЕХНОЛОГИЯСЫ МЕН КОНСТРУКЦИЯСЫ. 38
7. БАҒДАРЛАМАЛЫ ҚАМТАМАСЫЗ ЕТУ 39
7.1 Модуль екі бойынша логикалық элементтің қосындылауышы 39
7.2 Рид-Соломон кодтарын көбейту процедурасы. 42
7.3.Көпмүшеліктерді көпмүшеліктерге бөлу процедурасы 44
7.4. Кодтаудың ішкі бағдарламасы 46
7.5. Керікодтаудың ішкі бағдарламасы 48
ҚОРЫТЫНДЫ 50

АННОТАЦИЯ
Дипломдық жұмыста айналмалы кодтар қарастырылған, оның ішінде екілік
емес айнымалы Рид-Соломон кодтарын қолдану негізінде телемеханикалық
ақпараттарды беру әдістері мен құралдарын жобалау проблемаларын көрсеткен.
Арналар желісі мен ақпараттарды сақтаудың кеңінен таратылуынан, 2а
көлемді алфавит символдарының пайдалануы компьютерлі ЭВМ көмегімен
ақпараттарды өңдеу құралдарының дамуымен түсіндіріледі.
Ақпаратты жіберу және қабылдау процесін басқару кезінде, өндірістік
процестерде хабар пайда болады, яғни құрылғының бір үзбесінен басқасына
беру қажет. Бұл хабар, әртүрлі хабарлармен туындалады, мысалы берілетін
шикізаттың құрамының өзгерісі, қоршаған ортаның температурасының
жоғарлауымен байланысты, хабарды жоғары эффектілікпен беру үшін, сигналды
жақсы жағынан, байланыс желісінің өтімділігінің максималдығын қамтамасыз
ету керек, яғни ақпараттың санын бөгеуілсіз беру қажеттігі туады, сондықтан
да осы дипломдық жобадағы қарастырылған Рид-Соломон кодтары келешекте
кеңінен пайдаланылады.
Жасалған дипломдық жобаның тапсырмасы бойынша Рид-Соломон кодтарын
қолдану негізінде телемеханикалық ақпараттарды беру әдістері мен құралдарын
жобалау. Жұмыста әртүрлі мәселелерді қарастырады, басқаша айтқанда,
кодтармен танысу, көпмүшеліктердің жасаушыларын таңдау,түзгіштердің және
кері түзгіштердің сұлбаларын жобалау, түзгіштердің және керітүзгіштердің
функционалдық және қағидалық сұлбаларын, конструкциясын жобалау, еңбекті
қорғау және экономикалық сұрақтары қарастырылады.

1 ТЕЛЕМЕХАНИКАЛЫҚ АҚПАРАТТЫ ЖІБЕРУ

1.1. Ақпаратты жіберу және қабылдау процесінде ақпараттың маңызы

Ақпаратты жіберу және қабылдауда процестерді басқару, өндірістік
процестерде хабар пайда болады, яғни құрылғының бір үзбесінен басқасына
беру қажет. Бұл хабар, әртүрлі хабарлармен туындалады, мысалы берілетін
шикізаттың құрамының өзгерісі, қоршаған ортаның температурасының
жоғарлауымен байланысты, хабарды жоғары эффектілікпен беру үшін, сигналды
жақсы жағынан, байланыс арнасының өтімділігінің максималдығын қамтамасыз
ету керек, яғни ақпараттың санын бөгеуілсіз беру қажет.
Арна желісі арқылы ақпаратты беру үшін, мынадай физикалық процесті
қолдану қажет, яғни біріншіден ол эфир және байланыс арнасы арқылы таратылу
керек және екіншіден, өздерінің параметрлерін өзгерту қажет. Телемеханикада
көбінесе ақпаратты алып жүрушілер ретінде электрлі толқындар, импульстер
және айнымалы ток түрінде қолданылады.
Өзгерулі кернеу айнымалы ток, амплитудамен, жиілік пен фазамен
сипатталады. Бұл айнымалы ток параметрлерінің өзгерулері модуляция
көмегімен жүзеге асады. Телемеханикада импульс мағынасы электрлік схемаға
әсер ететін қысқа уақыттық электрлік ток және кернеуді түсінуге болады.
Яғни ақпаратты алып жүрушілер деп аталады. Алып жүрушілер өзінің пішінін
өзгерту күйімен немесе әртүрлі түрдегі хабардың әсерінен параметрлерін
өзгертуі қажет. Өздігінен алып жүрушілер сигналдар болып табылмайды. Бірақ,
егер алып жүрушілерге хабар әсер етпесе, онда ол сигналға айналады.
Сигнал-бұл хабардың әсер етуіндегі алып жүрушілер немесе ақпараттың
әсер етуіндегі алып жүрушілер. Яғни хабар көп болса, сигналдар бір-бірінен
өзгеше болуы керек және берілетін хабарға сәйкес келуі керек. Сигналдардың
жіберілу мен анықталуы анықталған заң бойынша шығады.

2. АҚПАРАТТАРДЫ ЖІБЕРУ ЖӘНЕ ҚАБЫЛДАУ ҚОЛДАНАТЫН КОДТАР

2.1. Ақпараттарды жіберудегі және қабылдаудағы негізгі анықтамалар.

Код - анықталған ақпаратты алып жүретін және анықталған алгоритм
бойынша қарастырылған бүтін рационал сандардың шекті көпмүшелігі.
Мысалы, 100110; 2367; АВ34С.
Кодтың алфавиті - символдар жиыны немесе кодты құрайтын сандар.
Кодтау - код комбинациясы түріндегі хабарды үздікті сигналға
айналдыру.
Кері кодтау - үздікті сигналды хабарға түрлендіру.
Түзгіш - құрылғы, ақпаратты кодқа түрлендіреді.
Керітүзгіш - кодты ақпаратқа түрлендіретін құрылғы.
Кодтардың келесі сипаттамасы бар:
1. m - түзбенің негізі, ол алфавиттегі символдарына тең;
2. n - код ұзындығы, яғни код сөзіндегі белгілер саны.
Кодтардағы n- әрқашанда біркелкі деп атайды, кері жағдайда біркелкі
емес деп атайды.
3. Код қуаты - берілген кодтағы мүмкін код сөзінің саны.
4. d-код ара-қашықтығы, әртүрлі екі жақын тұрған код сөзінің санымен
анықталады, әртүрлі код сөздерінің бір позициясындағы символдардың
санымен өрнектеледі.
Код ара-қашықтығы, кодтаудың коррекциялаушы күйін анықтайды. Мысалы:
00-1;
01-2;
10-3;
11-4.
Бұл кодтың ара-қашықтығы бірге тең “00” себебі “01”-ден бір позицияға
өзгеше болып тұр. Байланыс арқылы біз “1” жіберуіміз қажет деп
қарастырайық, яғни байланыс арнасына “00” сигналы келіп түседі, егер кіші
разрядтағы байланыста бөгеу болатын болса, онда қабылдағыштың соңында “01”
сигналы қабылданады, ол екіге сәйкес келеді [1].
Көрініп тұрғандай, бөгеуіл ақпараттың бөгеуіне әкеліп соғады, яғни
ақпараттың дұрыс қабылданбауына бір ғана қате жеткілікті.
Басқа мысалды қарастырайық. Келесі код берілсін:
00-1;
11-2.
Көрініп тұрғандай, “00” бір сәйкес , ал екіге “11” сәйкес , яғни
код ара-қашықтығы екіге тең. Егер разрядтың біреуінде бөгеу бар болатын
болса, “01” немесе “10” комбинациясы жалған, бірақ берілген комбинацияны
анықтау өте қиын, себебі “01” немесе “10” “00”-ден “11” тең алшақты.
Бұл кодтар тек қана бірлік қателерді таба алады. Бұл кодтар өте нәзік және
кең қолданылмайды.
d=3 кодын құрайық.
Мысалы: 000-1;
111-2.
“001” комбинациясы қабылданды дерлік, көрініп тұрғандай жіберу
кезінде қате кетті. Берілген комбинация “000” тең ықтималды, яғни біз
бірлік қатені таптық және оны түзетуімізге болады. Басқа жағынан екілік
қате кетті деуге нақтылы айтуға болмайды, яғни код тек қана бірлік қатені
жөндейді немесе екілік қатені табады. Бірақ, мұндай жол қолайсыз, себебі
код ара-қашықтығын үлкейту, оның өсуіне және қуаты мен ақпарат
тығыздығының, код ұзындығының өсуіне әкеліп соғады. Бұның шешімі, арнайы
кодтау, яғни кодтар математикалық заңдылық бойынша қарастырылады.
К.Шеннон теоремасына сейкес әрбір арна, жіберудің жылдамдығы
қажеттіліктен үлкен болса, онда кодты арнадағы болатын ықтимал қатені
минималға жеткізуге болады.
Мұндай кодтарды табу өте күрделі.
Жұптылыққа түзетілген, қайталанатын Хэмминг түзбелері құрылды. Осы
қатені кодтар ашылғаннан кейін бақылайтын кодтар қарастырлады. Боуз және
Чоудхури кодтары шықты, еселі қатені түзететін және екілік емес Рид-
Соломон кодтары ашылды.
Басқа зерттеулершілер ықтималдық теоремасынан бас тартып, өте дәл
кодтарды ашты, яғни олар үздіксіз және блоктар құрылды.
Бақыланған шамалардың үздікті мәнін беру үшін әртүрлі кодтар
қолданылады. Бірақ көпшілік жағдайда сандық кодтар қолданылады. Сандық
кодтар, ол импульстар тогы, оның әрбіреуі кодталанатын n – разряд саны
разрядына сәйкес. Әрбір m- импульстер параметрлерінің мүмкін мәндер саны
санауыштың негізіне тең. Импульстерге берілетін параметрлер мәні 0-ден m-1,
түзбелер ансамбілін аламыз, 0-ден Nm сандарына эквивалентті, мұндағы Nm n
– разряд саны бар m санағыштың негізі.
Nm= mn - 1
(1)
Көп тараған екілік сан жүйесіндегі сигналдар түзбесі
Nm= 2n - 1
(2)
Беруді ыңғайлататын біркелкі кодтар қолданылады [2].

2.2 БҰРМАЛАНБАҒАН КОДТАР

Бұрмаланбаған кодтардың ерекшелігі, олардың құрамында болатын түзбе
комбинациялары, бір-бірінен бір разрядқа ғана өзгешелігінде болып табылады,
яғни d=1.
Мұндай түзбелер ақпаратты алып жүрушілердің арасындағы ең кең
тараған түрі болып табылады.
Мысалы, төртразрядты екілік түзбе:
0000 – (0); 1000 – (8);
0001 – (1); 1001 – (9);
0010 – (2); 1010 – (10);
0011 – (3); 1011 – (11);
0100 – (4); 1100 – (12);
0101 – (5); 1101 – (13);
0110 – (6); 1110 – (14);
0111 – (7); 1111 – (15).
Көрініп тұрғандай, екі код немесе код сөздерінің арақашықтығы бірге
тең, яғни d=1, сәйкесінше екілік код үшін Хэмминг ара-қашықтығы бірге тең.
Осыдан шығатыны, бөгелуге тұра алмайтын екілік кодтарды телемеханикалық
ақпараттарды байланыс арнасы арқылы жіберу абсолютті түрде мүмкін емес.
Жоғарыда айтылған кемшіліктер бойынша телемеханикада бұрмаланбаған
кодтар қолданылмайды. Бұрмаланбаған кодтар кәдімгі кодтар деп аталады. Бүл
кодтарға жататындар: екілік кодтар, Грей коды, бірлік-ондық код, екілік-
ондық код, санды импульсті код Морзе коды. Бодо коды, халықаралық телеграф
коды.

2.3 БҰРМАЛАНҒАН КОДТАР

Қазіргі кезде қателерді табатын кодтардың бірнеше түрі белгілі.
Көбінесе олар блок кодтар болып табылады, яғни n- символдан тұратын
блоктар берілген, соның ішінде r-бақыланатын және k-ақпараттық символдар.
Блоктық кодтарды қолдану өте ыңғайлы, себебі егер қате кететіндей
болса және ол табылып, бірақ түзетілмеген болса, онда бұл берілген блокты
“жарамсыз” деп, қатені блоктың шегінен тыс шығарылмайды.
Жұптылыққа тексеруші түзбе.
Мұндай к- ақпарат символдарынан тұратын ақпаратты толықтыру жолымен
жүзеге асады, бірақ m – (0 немесе 1) бақыланатын символдағы жалпы бірлер
болу керек.
Қабылданатын жағында модул екі бойынша келіп түсетін символдарды
қосындылауышы жүргізіледі. Егер символдар соммасы нөлге тең болса, онда
қате жоқ немесе жұп сан қате кетті.
Комбинациядағы тұрақты нөлдер мен бірлер бар кодтар. Мұндай кодтарды
тұрақты салмағы бар түзбелер деп атайды. Мұндай кодтардағы әрбір блоктың
ішінде қатаң түрде орналасқан тұрақты нөлдер және бірлер сандары бар.
Мысалы, екілік бірдер бар бірразрядты код. Бұл кодтар бөгеуге тұра
алады және көптеген бөгеулер санын таба алады.
00011 – (1);
00101 – (2);
01001 – (3);
10010 – (4);
11000 – (5);
Кодтағы кодтар комбинацияларын дұрыс қабылдануы, бірлердің мөлшерін
санау арқылы анықталады және егер, мысалы кодтағы екі бір саны қабылданса,
онда жіберуде қате кеткен. Код ара-қашықтығы екіге тең, яғни ол барлық
бірлік қателерді таба алады.
Сонымен қатар, бұл код көпшілік бөлімдерін таба алады, егер бір нөлге
ауысса, ал нөльдің біреуі бірге ауысатын болса, онда ол қателердің
бөлімдерін таба алмайды. Аралас бөгеу жағдайда да табылмайды.
Таратылатын код та позициялық деп аталады. Фактілі түрде ол тұрақты
салмақты деп саналады, ондағы бірлер саны бірге тең, ал басқа символдар
нөлге тең. Бұл кодтар қатеден жақсы қорғалған және қодануға ыңғайлы, бірақ
ақпарат тығыздығы өте төмен.
Жіберу кезінде ақпарат блогы қайталанады, 110 110110. Бұл кодтың
жақсы коррекциялаушы мүмкіндігі бар, бірақ көп шығындалады, сондықтан оны
өте жоғары нақтылы ақпарат үшін қолданады, ал разрядтың мәні ескерілмейді
[1].
Бұрмаланған кодтарға инверсиялы кодтар жатады. Бұл кодтардың
бұрмаланған қабілетін жоғарылату үшін n- разрядты комбинациядағы
анықталған ереже бойынша, тағы да n- разрядтар қосылады. Нәтижесінде
сызықты еселенген символдар саны жіберіледі.
Түзбенің орналасу ережесі келесі: егер берілген комбинацияларда
бірдің саны жұп болса, онда комбинация берілгенді қайталайды, егер тақ
болса, онда қосылатын разрядтағы барлық нөлдер нөлге айналады, ал бірлер
нөлге айналады.

2.4 АЙНЫМАЛЫ КОДТАР

Ұсынылып отырған Рид-Соломон коды айнымалы кодтар болып табылады.
Нақты, Рид-Соломон кодының ақпараттық және бағдарламалық жүзеге асуы,
екілік айнымалы кодтармен көптеген байланыстары бар. Сондықтан да оларды
терең қарастырамыз.
Айнымалы кодтар теориясы, топтар теориясы мен Галуа өрісіндегі
көпмүшелік алгебрасына (базаланады, сүйенеді) негізделеді.
Айнымалы кодтар блокты жүйелі кодтар қатарына жатады, ондағы әрбір
комбинация өздігінен түзбеленеді, яғни к - ақпарат және m – бақыланатын
символдар анықталған орындарда орналасқан. Сонымен қатар, әрбір қатені
жөндей алу мүмкіндігі жоғары және аппаратураны жүзеге асыру сызбасының
қарапайымдылығы, осы кодтарды қолдануға мүмкіндік береді.
Белгілі жағдайда, көпмүшелік берілген өрістегі коэфициенттері бар
төменгі дәрежелі көпмүшеліктің жасаушысы түрінде көрсетуге болыды және оны
келтірілген деп атайды. Керісінше жағдайда, келтірілмеген деп атайды.
Бұл келтірілмеген көпмүшелікті Р(x) екілік немесе ондық сандар
түрінде жазуға болады немесе алгебралық көпмүшелік түрінде, төменде
айналмалы кодтарды құру үшін қолданылатын келтірілмеген көпмүшеліктер үшін
кесте келтірілген. Екілік сан өрісіндегі көпмұшелікті келтірілмеген деп
атайды, егер ол қалдықсыз бөлінетін болса.
Айналмалы кодтау негізінде Р(x) келтірілмеген көпмүшелікті қолдану
жатқызылады, яғни айналмалы кодтарда қолданылатын осы көпмүшеліктің
дәрежесі бақыланатын символдар санынан кіші болмау керек және нөлдік емес
мүшелер саны код ара-қашықтығынан көп қажет. Сонымен қатар, яғни қалдықсыз
бөлінетін. Кейбір көпмүшеліктер кесте 1-де көрсетілген.
Айнымалы кодтың кодтау комбинациясының берілген кодтау
комбинациясының көпмүшелігін бөлу арқылы орындалады, немесе көбейту арқыыл.
Кері кодтау сол сияқты көбейту немесе бөлу арқылы жүзеге асады. Егер қалдық
жоқ болса, онда қабылдау және кері кодтау дұрыс орындалады, егер қалдық
нөлге тең болса, онда оның мәнінде қате бар деп саналады, олардың санында
және дислокациясында деп аталады.
Телемеханикадағы айнымалы кодтар өте ыңғайлығ яғни аппараттық жүзеге
асыру кезінде кодтар тізбекті болуы керек. Сол себептен байланыс саны
азаяды [2].

Кесте 1 – Ондық дәрежеге дейінгі қарапайым көпмүшеліктер
Көпмүшелік Екілік сан Ондық сан
11 3
111 7
1011 11
1101 13
100011 19
110001 25

111111 31
100101 37
101001 41
101111 47
110111 55

Кесте 1.жалғасы – Ондық дәрежеге дейінгі қарапайым көпмүшеліктер
111011 59
111101 61
1000011 67
10001001 137
100011101 285
1000010001 1057
10000001001 2037

3. ЕКІЛІК ЕМЕС АЙНЫМАЛЫ РИД-СОЛОМОН КОДЫНДА У АРҚЫЛЫ АҚПАРАТТЫ ЖІБЕРУ

Қатені түзейтін екілік кодтардың жетіспеушілігі – байланыс сызығының
аз толықтырылуы. Байланыс сызығы арқылы екі сигнал ғана өтеді, 0 және 1
сигналы, ал осы мүмкін уақытта сызықтың мүмкіндігі кіші үзділікті және көп
үздікті деңгейдің саны қабылданады.
Байланыс арасындағы бөгеуілдерден болатын қателер және сақтау
арнасындағы алып жүрушілердің яизикалық жараққаттануы салдарынан көп
ақпаратты енгізу қажет етіледі және олар сақталуы керек. 2а негізі бар
кодтары екілікті ақпаратты кодтарды өңдеу, құрылғының кодтау және
керікодтауының жүзеге асуына қарапайым мүмкіндік беру.
Оларға 2а негізі бар сызықты блокты кодтар жатады.
Кодтау әдісі және жалпы сипаттамасы.
Егер әрбір 2а екілік емес векторлардың а- ұзындығы бар екілік емемс
алфавиттен символдардың біреуін алып салыстырсақ, онда к( а ұзындықты
екілік тізбектің орнына к- ұзындықты эквивалентті екілік тізбекті
қарастыруға болады. Мұндай ақпаратты өңдеу орнықтылықты бөгеу к=2а негізі
бар әртүрлі түзбелер көмегімен мүмкін.
(n,k) сызықты блоктың кодтар жағдайында, берілген ақпарат векторын
k –ұңғымалар ұзындығы, кдты векторына ұзындығы
түрлендіруі сызықты операция көмегімен жүзеге асады.

(3)
мұндағы жасаушы матрицаның жатық жолы k және n өлшемді, олар кодтың
базистік векторы болып табылады. Бұл векторлар сызықты тәуелсіз болуы
керек, яғни әрбір қосындысы базистік векторы болуы керек, яғни әрбір
қосындысы базистік векторы болмауы қажет.

(4)
коэффициентттері матрицасын құрайды өлшемдері
.
(3) және (4) қатынастарының өрнегі G үшін каноникалық түрде былай
жазуға болады:

(5)
мұндағы - өлшемді бірлік матрица. Сонымен қатар, R матрицасы
тексерілетін матрица Н құрамына кіреді, яғни оның каноникалық түрдегі
қатынасы (4) мына түрде:
(6)
- өлшемді бірлік матрица.
А код векторлары Н матрицасының нөлдік кеңістігін құрайды.

(7)
коэффициентттері қарстырылып отырған екілік емес алфавиттің
символдары болып табылады, көлеміне а- ұзындықты екілік векторларға
сәйкес келеді немес екілік коэффициенттері бар фиктивті айнымалы
көпмүшеліктерге сәйкес келеді. Мысалы, (010111) векторына көпмүшелік
сәйкес.
Екілік емес алфавитті қосу.
Екілік емес алфавитті қосуоперациясы, сәйкес векторларды разряд
бойынша (модул екі бойынша) қосу арқылы орындалады.
Мысалы:
(1011)+(0110)=(1101)
Барлық к- екілік емес ақпараттық символдары мультипликативті топты
құрайды, ол өзінде 0 элементін қосады, оған сәйкесінше (00...0) векторы
сәйкес, бірлік элементке (00...010) векторы сәйкес. Сонымен қатар барлық (
- бүтін дәрежеден к-2 дейін сәйкес.
Сонымен қатар, барлық мультипликативті топқа айналымдық талап
қойылады.

Екілік емес алфавитті көбейту.
Топтың элементтерін көбейту, эквивалентті векторлардың сақтау үшін,
кейбір а дәрежесі бар көпмүшелікті модул бойынша сәйкес көпмүшелікке
көбейту арқылы орындалады, яғни үшін 2 кестеде берілген. Яғни көбейту
ережесі, кодттың разрядтылығы толып кетпеуі үшін қажет, яғни

- ге бөлу - көбеткенге эквиваленттті.
Мультипликативті топты құру үшін мысалын қарастырайық.
үшін мультипликативті топты құрайық.
модул бойынша операция, білдіреді, сондықтан (2
элементіне векторы және (11) векторы сәйкес, бөлек элементтер мәндері
кесте 3 көрсетілген.

Кесте-2- үшін көпмүшеліктері.
а F(x) түріндегі F(x) сандық түрін
көпмүшелік дегі көпмүшелік
2 111
3 1011
4 10011
5 100101
6 1000011
7 10000011
8 100001111

Кесте-2- жалғасы. үшін көпмүшеліктері.
9 1000010001
10 10000001001

Векторлар арасындағы Хэмминг ара-қашықтығы, бөлек элементтеріндегі
әртүрлі санмен анықталады. Мысалы, (10,() және ((21() векторларыдң ара-
қашықтығы екіге тең.
Барлық кодтар векторларының көпмүшеліктері минимал Хэмминг ара-
қашықтығын, d- түзбе ара-қашықтығы деп атайды. Мұндай код көмегімен t қате
түзетіліп және y өшіру қалпына келтіріледі, d2t+y.
Кесте 3- Екілік емес алфавиттің бөлек элементтер мәні
Топтар элементтеріКөпмүшеліктер Векторлар
элементтері Элементтері
0 - 00
1 1 01
( Х 10
(2 x2=x+1 11

Арна арқылы өтетін А векторы мына түрде келтірілген
А+Е=A*,
(8)
Мұндағы А* - арна шығысындағы вектор,

А вектор арнасынан алынған әртүрлі кері кодтау әдістері бар. Кең
тараған әдістің біреуі ол синдромды кері кодтау, S синдромды есептеуге
негізделген, r- векторлар ұзындығы.
(9)

Мұндағы матрицаның баған векторлары. (7) ,(8) , (9) өрнектерін
ескере отырып

(10)
S cиндромның мәні, қате векторларының және тексеруші матрицасына
тәуелді S=0, A* және Е векторлары-кодтылықты білдіреді, арнадан кодты
емес векторлар алынған, яғни ақпарат қате қабылданған. Бұл жағдайда d-1
қателерін табумен шектелуге болады және векторды алып тастауға болады. Егер
әрбір оларға синдромның түрі сәйкес келсе , қателерді түзетуге болады. Егер
символдардың біреуі қате қабылданса, онда және қателердің
әрбір үлгісі синдромдар әртүрлі болуы керек, барлық және үшін
қажет, яғни синдормның кn жалпы саны жетерліктей болуы қажет, к-1 қателер
үлгісінен әрбіреуін түзету үшін, n – вектор арнасынан алынған позициялар,
қателер фактілерінен табу үшін керек.

(11)
Бір қатені жөндеу үшін, кодтың максимал ұзындығы:

(12)
Мысалды қарастырайық.
және үшін кодтардың максимал ұзындығы, осыдан
(5,3)- сызықты кодты, бір қатені кепілді жөндеу үшін құруға болады. Тексеру
матрицасы Н, 2х5 өлшемді болуы керек. Бірінші баған ретінде мынаны таңдап
аламыз:
,
сондықтан

онда егер
Қаншылықты сонда таңдаймыз және таңдаймыз және
және тексеруші матрицаның каноникалық пішін түрінде болады:

(13)
Мұндағы ,

сонда өрнегін аламыз.

және

Жалпы үшін тексеруші матрицаның түрі мынадай:

Түрлендіруші кодтар.
Кодты вектор екілік пішінге түрлендіреміз, жоғарыда
қарастырылған қорытындыларға сүйенеміз.

(11) матрицаны екілік пішінге түрлендіреміз, жоғарыда қарастырылған
қорытындыларға сүйенеміз.

Мұндағы Ті- аха өлшемді матрица.
Тексеруші және жасаушы матрицалардың түрлері мынадай болады.
Тексеруші (11) сәйкес:

Жасаушы матрица

Ақпаратты векторларға екілік вектор сәйкес. Кодты
векторды екілік пішінде алуға болады және ол мына түрде келтіріледі:

Сәйкесінше және екінші мысал қорытындысымен дәл келеді.
Қатені түзететін кері кодтаушы түрлендіргіштер.
негізді сызықты кодтардың көмегімен бірлік қатені түзету үшін
қарапайым алгоритмдер қарастырылған және
- есептеу;
- егер S=0, онда қабылдайтынға векторын беру;
- егер S=0, онда үшін есептеу
- j мәні кезінде, бір қатені сәйкесінше, оның үлгісіне
коррекцияны жүргізу;
- қабылдап алушыға коррекцияланған ақпаратты векторды беру .
Мысалы, (5,3) коды үшін, (11) тексеруші матрица бар,
арнасынан қабылданған, векторды кері кодалаймыз.
Сәйкесінше қарастырылған алгоритм:
1.
2.
3.
4.
5.
Бірлік қателерді түзету үшін, екі тексеру символдары бар кодтар
көмегімен орындалады, тексеруші матрицаның түрі мынадай:

Н матрицаны жадыда сақтау міндетті емес.

3.1. Рид- Соломон кодтарының сипаттамасы

Рид- Соломон кодын айнымалы код деп атайды және оның негізгі екіге
тең емес, к санына тең.

Сонымен алфавиттің символдырының саны 2а тең, яғни а- рет байланыс
сызығынан өтетін ақпараттың өту жылдамдығын жоғарылатады, сондықтан к
ұзындықты кодын аламыз. Код алфавиті 0 элементі бар мультипликативті топ
ретінде болады, сонымен қатар 1 элементі және ( примитивті элемент, (- ден
к-2 дейінгі барлық бүтін оң дәрежелері бар.
Мұндай топта міндетті түрде қосынды мен көбейту анықталған болу
керек.
Мультипликативті топтардың элементтерін қосылуының орындалуы модул
екі бойынша фиктивті айнымалысы бар көпмүшеліктерді немесе екілік
векторларды сәйкесінше қосқан сияқты [3],[4].
Екілік емес алфавиттің бақыланатын символдары к- мультипликативті
топты құрайды. (00...0) векторына сәйкес 0 элементі бар, (00...01)
векторына 1 бірлік элементі сәйкес, (-ға (00...10) сәйкес. Сонымен қатар
барлық бүтін оң дәрежелер жатады.
Топ айнымалы, сондықтан да
Рид-Соломон кодының ұзындығы тең, көпмүшелікпен жасаған

мұндағы d- код арақашықтығы (тақ), ал (- мультипликативті топтың
примитивті элементі, ол барлық екілік емес алфавиттің к- символдарын
біріктіреді.
Мүмкін
g(x) түбірі болып табылады, яғни
Әрбір айнымалы код үшін, бақыланатын символдар саны көпмүшеліктің
дәрежесіне тең.

Ақпарат символдар саны . Рид-Соломон кодтары сызықты кодтардың
барлық күйі бар, яғни тексеруші матрицаны құруға болады. Оларды
таңдалған көпмүшелікке нөлдері бар бірге бөлу арқылы табуға болады және
қалдықтар жазылып отырады.
Сол себептен мына шарттар орындалуы қажет:
- қалдықтар саны ақпараттар символдар саны к-тең болуы керек;
- тексеруші матрица үшін W салмақтықалдықтар жарамды, табылатын
қателер санынан кіші болмауы керек, яғни екіден кіші болмауы
керек.

3.2 Көпмүшелікті құрайтын символдарды таңдау

Мысалы, қандайда бір объектіде байланыс сызығы бар телемеханика
жүйесі бар дерлдік, сондағы теңдеудің үзділігі сегізге тең, сондықтан да
екілік және бірлік қателерді түзететін мүмкіндікті болуы қажет, яғни түзбе
ара-қашықтығы үшке тең болуы керек.
d=3
Басқа жағынан, сегіз деңгейлі ақпаратты жүйесімен жұмыс істеу үшін:
яғни сонда
Кодты құрудың келесі этапы, екілік емес символдарды табу керек, ал
а=3 үшін 3 кестеден табатынымыз:

Сонымен, топтың бірінші элементі нөль болуы керек, яғни екінші
элемент бір (001). Үшінші элемент . Төртінші элемент . Бесінші
элемент мына шарттан синтезделеді:

Болғандықтан

Алфавиттің элементтері табылғаннан кейін 5 кестесіне жазамыз.
Ендігі кезде көпмүшеліктерді құру қажет. Жасаушы көпмүшеліктің
формуласын қолдана отырып.

Сонымен

Сонымен қатар

g(x) табылғаннан кейін кодалауға кірісеміз.

Кесте 5- Рид-Соломонның екілік алфавиті
Символ Көпмүшелік Вектор
0 - 000
1 1 001
( Х 010
(2 х2 100
(3 х+1 011
(4 х2+х 110
(5 х2+х+1 111
(6 х2+1 101

3.3 Кодалау

Алғашқыда айтылғандай, аппаратты жүзеге асуы үшін, кодалау әдісінің
ыңғайлығынан бөлінетін түзбелер алынады. Яғни берілген комбинацияны
көбейтіп, содан кейін комбинация бөліндіден алынған қалдықтар қосылады.

(14)
Яғни, бөлеміз. Төменде қарастырылған мысалда
аппараттардың кодалануы көрсетілген.
Мысалы, 10000 комбинациясы берілген. х2 көбейтіп және 1000000
комбинациясын аламыз.
Ендігі кезде бұл комбинацияны жасаушы көпмүшелікке бөлеміз және біз
бақылаушы символдарды табамыз.

1 0 0 0 0 0 0 1 (4 (3
1 (4 (3 1 (4 1 (5 (5
(4 (3 0
(4 ( 1
1 1 0
1 (4 (3
(5 (3 0
(5 (2 (
(5 ( 0
(4 (2 (
(4 (
Осы мәндерді аламыз.
Сонымен біз бақыланатын символдарды таптық: (4( және барлық
комбинация мына түрде болады:
10000(4(

мысалы үшін:

(14) кодалау әдісіне сәйкес келеді.

3.4 Кері кодалау

Рид-Соломон кодасын керікодалау айнымалы кодаларды керікодалау
сияқты жүргізіледі, яғни қабылданған комбинация g(x) көпмүшелікке бөлінеді,
қатені түзету келесі түрде орындалады.
Байланыс сызығынан қабылданған А*(х) көпмүшелік g(x) бөлінеді, әрбір
қадамдағы А(х)-ке і-1 жазылып отырады.
түріндегі қалдықты алған кезде, мұндағы і- позиция номері, қате
кеткенде, қате түрі. Оны түзетуге болады:

Егер бөлген кезде қалдық болмаса, онда қабылданған кодта қате
жоқтығын білдіреді. Жоғарыда келтірілген мысалы үшін, ол мына түрде болады:
1 0 0 0 0 (4 ( 1 (4 (3
1 (4 (3 1 (4 1 (5 (5
(4 (3 0
(4 ( 1
1 1 0
1 (4 (3
(5 (3 (4
(5 (2 (
(5 (2 (
(5 (2 (
0 0

Төменде көрсетілген мысалда, біз оның қалай орындалатындығын көре
аламыз.
Жоғарыда құрылған комбинация төртінші символда қате кетті дерлік,
яғни 10000(4( орнына 100(30(4( комбинация қабылданған.
Алынған комбинация жасаушы көпмүшелікке бөлуді орындаймыз.
Осыдан көініп тұрғандай, төртінші символда қате кеткен, берілген
символ 0 болған, (3+(3=0. Егер қалдықта екі символдар болса, онда бірден
көп қате кеткен, яғни түзету мүмкін емес [5].

4. РИД-СОЛОМОН КОДАНЫҢ ФУНКЦИЯНАЛДЫ СҰЛБАСЫН ЖҮЗЕГЕ АСЫРУ

Қаншалықты Рид-Соломон коды айналмалы болғандықтан, оларды
аппараттық жабдықпен жүзеге асуы үшін, функционалды сызбасын жұмысқа
қосуымыз керек, яғни көпмүшеліктер бір-біріне көбейтіліп және көпмүштерді
бөлгеннен кейінгі қалған қалдықты есептеу қажет. Сонымен қатар бұл сызбалар
автоматты режимде жұмыс істеуі қ ажет. Кодтаушы жабдықта үшзарядты
векторлар келіп түсуі керек, шығысындағы жеті тактіден кейін үшзарядты
векторлар алынуы керек. Бес ақпарат символдарға тағы да екі бақылаушы
символдарды қосу керек. Кері код сол сияқты автоматты жұмыс істеуі қажет,
ол бірлік қателерді жөндейді немесе жөндей алмайтындығы туралы сигнал
береді.

4.1. Сызықты қайта қосу сұлбалары

Көбейту және бөлу операцияларын синтездеу үшін сызықты қайта қосу
сұлбалары қолданылады. Олардың негізгі блоктарына жататындар: Қосындылауыш
– екі шығысы және бір кірісі бар , ол модул екі бойынша қосындылайды.
Оның кестесі 6 - кестеде көрсетілген.
Кесте 6-модул екі бойынша екілік қосындылауыш кестесі
Кіріс Х Кіріс У Кіріс Z
0 0 0
0 1 1
1 0 1
1 1 0

Бірақ, ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Теңдеулер жүйесін шешу
Үш айнымалыға тәуелді симметриялы және антисимметриялы көпмүшеліктер
Келтірімсіз көпмүшеліктер
Келтірімді көпмүшеліктер
Элементарлық алгебрада қолданылуы
Көпмүшеліктер мен комплекстік сандар
Коэффиценттері тұрақты сызықтық теңдеулерді талдау
Анықталмаған интеграл және интегралдаудың негізгі әдістері
Телемеханикалық жүйелердегі кодтар
Математикадан өткізілетін деңгейлік олимпиядалар және олимпияда есептері
Пәндер