Ви́явлення помилок в техніці зв'язку — дія, спрямована на контроль цілісності даних при запису / відтворенні інформації або при її передачі по лініях зв'язку. Виправлення помилок (корекція помилок) — процедура відновлення інформації після читання її з пристрою зберігання або каналу зв'язку.
Для виявлення помилок використовують коди виявлення помилок, для виправлення — коригувальні коди (коди, що виправляють помилки, коди з корекцією помилок, завадостійкі коди).
К. Шеннон сформулював теорему для випадку передачі дискретної інформації з каналу із завадами, яка стверджує, що ймовірність помилкового декодування прийнятих сигналів може бути забезпечена як завгодно малою шляхом вибору відповідного способу кодування сигналів.
Під завадостійкими кодами розуміють коди, що дозволяють виявляти або виявляти і виправляти помилки, які виникають у результаті впливу завад.
Завадостійкість кодування забезпечується за рахунок введення надмірності в кодові комбінації, тобто за рахунок того, що не всі символи в кодових комбінаціях використовуються для передачі інформації.
Способи боротьби з помилками
У процесі зберігання даних і передачі інформації з мереж зв'язку неминуче виникають помилки. Контроль цілісності даних і виправлення помилок — важливі завдання на багатьох рівнях роботи з інформацією (зокрема, фізичному, канальному, транспортному рівнях мережевої моделі OSI).
У системах зв'язку можливі кілька стратегій боротьби з помилками:
- Виявлення помилок у блоках даних і автоматичний запит повторної передачі пошкоджених блоків — цей підхід застосовується, в основному, на канальному і транспортному рівнях;
- Виявлення помилок у блоках даних і відкидання пошкоджених блоків — такий підхід іноді застосовується в системах потокового мультимедіа, де важлива затримка передачі і немає часу на повторну передачу;
- Виправлення помилок (англ. forward error correction) застосовується на фізичному рівні.
Коди виявлення та виправлення помилок
Коригувальні коди — коди, які слугують для виявлення або виправлення помилок, що виникають при передачі інформації під впливом завад, а також при її зберіганні.
Для цього при запису (передачі) у корисні дані додають спеціальним чином структуровану надлишкову інформацію (контрольне число), а при читанні (прийомі) її використовують для того, щоб виявити або виправити помилки. Природно, що число помилок, яке можна виправити, обмежена і залежить від конкретного застосовуваного коду.
З кодами, які виправляють помилки, тісно пов'язані коди виявлення помилок. На відміну від перших, останні можуть тільки встановити факт наявності помилки в переданих даних, але не виправити її.
В дійсності, використовувані коди виявлення помилок належать до тих же класів кодів, що і коди, що виправляють помилки. Фактично будь-який код, що виправляє помилки, може бути також використаний для виявлення помилок (при цьому він буде здатний виявити більше число помилок, ніж був здатний виправити).
Всі завадостійкі коди можна розділити на два основних класи: блокові і неперервні (рекуррентні або ланцюгові).
Як блокові, так і неперервні коди в залежності від методів внесення надмірності розділяються на роздільні і нероздільні.
Більшість відомих роздільних кодів складають систематичні коди. У цих кодів перевірні символи визначаються в результаті проведення лінійних операцій над певними інформаційними символами. Для випадку двійкових кодів кожний перевірний символ вибирається таким, щоб його сума за модулем два з певними інформаційними символами стала рівною нулю. Декодування зводиться до перевірки на парність певних груп символів. У результаті таких перевірок дається інформація про наявність помилок, а в разі потреби — про позицію символів, де є помилки.
Блокові коди
Нехай кодована інформація поділяється на фрагменти довжиною k біт, які перетворюються в кодові слова довжиною n біт, де n > k. Тоді відповідний блоковий код зазвичай позначають (n, k). При цьому число R = k/n називається швидкістю коду.
Якщо вихідні k біт код залишає незмінними, і додає n — k перевірочних, такий код називається систематичним, інакше несистематичним.
Задати блоковий код можна по-різному, в тому числі таблицею, де кожній сукупності з k інформаційних біт зіставляється n біт кодового слова. Проте хороший код повинен задовольняти як мінімум таким критеріям:
- Здатність виправляти якомога більше число помилок,
- Якомога менша надмірність,
- Простота кодування і декодування.
Неважко бачити, що наведені вимоги суперечать один одному. Саме тому існує велика кількість кодів, кожен з яких придатний для свого кола завдань.
Практично всі використовувані коди є лінійними. Це пов'язано з тим, що нелінійні коди значно складніше досліджувати, і для них важко забезпечити прийнятну легкість кодування та декодування.
Згорткові коди
Згорткові коди, на відміну від блокових, не ділять інформацію на фрагменти і працюють з нею як із суцільним потоком даних.
Згорткові коди, як правило, породжуються дискретною лінійною інваріантною в часі системою. Тому, на відміну від більшості блокових кодів, згорткове кодування — дуже проста операція, чого не можна сказати про декодування.
Кодування зготковим кодом проводиться за допомогою регістра зсуву, відводи від якого підсумовуються по модулю два. Таких сум може бути дві (найчастіше) або більше.
Декодування зготкових кодів, як правило, проводиться за алгоритмом Вітербі, який намагається відновити передану послідовність згідно з критерієм максимальної правдоподібності.
Примітки
- Архів оригіналу за 31 травня 2017. Процитовано 12 квітня 2013.
- Блейхут, Ричард (1986). Теория и практика кодов, контролирующих ошибки (рос.). Москва: "МИР". с. 16—17.
Посилання
Це незавершена стаття про телекомунікації. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Vi yavlennya pomilok v tehnici zv yazku diya spryamovana na kontrol cilisnosti danih pri zapisu vidtvorenni informaciyi abo pri yiyi peredachi po liniyah zv yazku Vipravlennya pomilok korekciya pomilok procedura vidnovlennya informaciyi pislya chitannya yiyi z pristroyu zberigannya abo kanalu zv yazku Dlya viyavlennya pomilok vikoristovuyut kodi viyavlennya pomilok dlya vipravlennya koriguvalni kodi kodi sho vipravlyayut pomilki kodi z korekciyeyu pomilok zavadostijki kodi K Shennon sformulyuvav teoremu dlya vipadku peredachi diskretnoyi informaciyi z kanalu iz zavadami yaka stverdzhuye sho jmovirnist pomilkovogo dekoduvannya prijnyatih signaliv mozhe buti zabezpechena yak zavgodno maloyu shlyahom viboru vidpovidnogo sposobu koduvannya signaliv Pid zavadostijkimi kodami rozumiyut kodi sho dozvolyayut viyavlyati abo viyavlyati i vipravlyati pomilki yaki vinikayut u rezultati vplivu zavad Zavadostijkist koduvannya zabezpechuyetsya za rahunok vvedennya nadmirnosti v kodovi kombinaciyi tobto za rahunok togo sho ne vsi simvoli v kodovih kombinaciyah vikoristovuyutsya dlya peredachi informaciyi Sposobi borotbi z pomilkamiU procesi zberigannya danih i peredachi informaciyi z merezh zv yazku neminuche vinikayut pomilki Kontrol cilisnosti danih i vipravlennya pomilok vazhlivi zavdannya na bagatoh rivnyah roboti z informaciyeyu zokrema fizichnomu kanalnomu transportnomu rivnyah merezhevoyi modeli OSI U sistemah zv yazku mozhlivi kilka strategij borotbi z pomilkami Viyavlennya pomilok u blokah danih i avtomatichnij zapit povtornoyi peredachi poshkodzhenih blokiv cej pidhid zastosovuyetsya v osnovnomu na kanalnomu i transportnomu rivnyah Viyavlennya pomilok u blokah danih i vidkidannya poshkodzhenih blokiv takij pidhid inodi zastosovuyetsya v sistemah potokovogo multimedia de vazhliva zatrimka peredachi i nemaye chasu na povtornu peredachu Vipravlennya pomilok angl forward error correction zastosovuyetsya na fizichnomu rivni Kodi viyavlennya ta vipravlennya pomilokKoriguvalni kodi kodi yaki sluguyut dlya viyavlennya abo vipravlennya pomilok sho vinikayut pri peredachi informaciyi pid vplivom zavad a takozh pri yiyi zberiganni Dlya cogo pri zapisu peredachi u korisni dani dodayut specialnim chinom strukturovanu nadlishkovu informaciyu kontrolne chislo a pri chitanni prijomi yiyi vikoristovuyut dlya togo shob viyaviti abo vipraviti pomilki Prirodno sho chislo pomilok yake mozhna vipraviti obmezhena i zalezhit vid konkretnogo zastosovuvanogo kodu Z kodami yaki vipravlyayut pomilki tisno pov yazani kodi viyavlennya pomilok Na vidminu vid pershih ostanni mozhut tilki vstanoviti fakt nayavnosti pomilki v peredanih danih ale ne vipraviti yiyi V dijsnosti vikoristovuvani kodi viyavlennya pomilok nalezhat do tih zhe klasiv kodiv sho i kodi sho vipravlyayut pomilki Faktichno bud yakij kod sho vipravlyaye pomilki mozhe buti takozh vikoristanij dlya viyavlennya pomilok pri comu vin bude zdatnij viyaviti bilshe chislo pomilok nizh buv zdatnij vipraviti Vsi zavadostijki kodi mozhna rozdiliti na dva osnovnih klasi blokovi i neperervni rekurrentni abo lancyugovi Yak blokovi tak i neperervni kodi v zalezhnosti vid metodiv vnesennya nadmirnosti rozdilyayutsya na rozdilni i nerozdilni Bilshist vidomih rozdilnih kodiv skladayut sistematichni kodi U cih kodiv perevirni simvoli viznachayutsya v rezultati provedennya linijnih operacij nad pevnimi informacijnimi simvolami Dlya vipadku dvijkovih kodiv kozhnij perevirnij simvol vibirayetsya takim shob jogo suma za modulem dva z pevnimi informacijnimi simvolami stala rivnoyu nulyu Dekoduvannya zvoditsya do perevirki na parnist pevnih grup simvoliv U rezultati takih perevirok dayetsya informaciya pro nayavnist pomilok a v razi potrebi pro poziciyu simvoliv de ye pomilki Blokovi kodiDokladnishe Blokovij kod Nehaj kodovana informaciya podilyayetsya na fragmenti dovzhinoyu k bit yaki peretvoryuyutsya v kodovi slova dovzhinoyu n bit de n gt k Todi vidpovidnij blokovij kod zazvichaj poznachayut n k Pri comu chislo R k n nazivayetsya shvidkistyu kodu Yaksho vihidni k bit kod zalishaye nezminnimi i dodaye n k perevirochnih takij kod nazivayetsya sistematichnim inakshe nesistematichnim Zadati blokovij kod mozhna po riznomu v tomu chisli tabliceyu de kozhnij sukupnosti z k informacijnih bit zistavlyayetsya n bit kodovogo slova Prote horoshij kod povinen zadovolnyati yak minimum takim kriteriyam Zdatnist vipravlyati yakomoga bilshe chislo pomilok Yakomoga mensha nadmirnist Prostota koduvannya i dekoduvannya Nevazhko bachiti sho navedeni vimogi superechat odin odnomu Same tomu isnuye velika kilkist kodiv kozhen z yakih pridatnij dlya svogo kola zavdan Praktichno vsi vikoristovuvani kodi ye linijnimi Ce pov yazano z tim sho nelinijni kodi znachno skladnishe doslidzhuvati i dlya nih vazhko zabezpechiti prijnyatnu legkist koduvannya ta dekoduvannya Zgortkovi kodiZgortkovi kodi na vidminu vid blokovih ne dilyat informaciyu na fragmenti i pracyuyut z neyu yak iz sucilnim potokom danih Zgortkovi kodi yak pravilo porodzhuyutsya diskretnoyu linijnoyu invariantnoyu v chasi sistemoyu Tomu na vidminu vid bilshosti blokovih kodiv zgortkove koduvannya duzhe prosta operaciya chogo ne mozhna skazati pro dekoduvannya Koduvannya zgotkovim kodom provoditsya za dopomogoyu registra zsuvu vidvodi vid yakogo pidsumovuyutsya po modulyu dva Takih sum mozhe buti dvi najchastishe abo bilshe Dekoduvannya zgotkovih kodiv yak pravilo provoditsya za algoritmom Viterbi yakij namagayetsya vidnoviti peredanu poslidovnist zgidno z kriteriyem maksimalnoyi pravdopodibnosti PrimitkiArhiv originalu za 31 travnya 2017 Procitovano 12 kvitnya 2013 Blejhut Richard 1986 Teoriya i praktika kodov kontroliruyushih oshibki ros Moskva MIR s 16 17 PosilannyaCe nezavershena stattya pro telekomunikaciyi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi