Двійкові матричні коди


Основним недоліком описаних вище кодів є невиявлення спотворень парної кратності, тому такі коди знаходять застосування в тих ланках АС, де найбільш вірогідними є одиночні спотворення, наприклад в ланці ТКМ - ЕОМ. Якщо ж спотворення мають тенденцію до групування, то для виявлення групових спотворень БКС (кодові комбінації) записуються у вигляді матриці:

а11 а12 а13а1s

а21 а22 а23а2s

…………………

at1 аt2 аt3аts

______________

c1 c2 c3cs,

Потім здійснюється перевірка на парність (або на непарність) стовпців отриманої матриці. За наявності одного групового спотворення, завдовжки не більш s (s − число стовпців матриці), в кожну перевірку входитиме не більше ніж один спотворений символ (відбудеться декореляція спотворень). Якщо спотворення незалежні, то даний код є еквівалентним коду з перевіркою на парність по стовпцям, коли для кожного із s стовпчиків як і в коді з контролем на парність обраховуються значення своя контрольна ознака:

(mod Р),

при порозрядному додаванні і Р = 2, , для усіх значень і, j.

Якщо ж спотворення корельовані, то за рахунок перевірки символів, що рознесені (за рахунок декореляції спотворень), даний код буде більш завадостійким. Недоліком такого коду є деяке ускладнення кодуючих і декодуючих пристроїв. Декореляція спотворень здійснюється і в тому випадку, якщо перевірку на парність здійснювати по рядках чи по діагоналях матриці. З погляду завадостійкості цей код є аналогічним попередньому.

Для підвищення здатності із визначення наявності спотворень перевірка на парність (непарність) може бути проведена одночасно по стовпцях і діагоналях або по рядках і стовпцях.

Останній код називають матричним. У даному коді (при використанні контролю на парність) перевірочні символи формуються за наступними правилами:

а11 а12 а13а1s b1 bi = а1i а2i ……….аls

а21 а22 а23а2s b2 cj = а1j а2j ……….а2s

………………

аt1 аt2 аt3аts bt

c1 c2 c3 cs

де t − число рядків матриці; s − число стовпців матриці; m = st, n = st + s + t.

Для підвищення здатності по виявленню спотворень перевірці на парність піддається також послідовність перевірочних символів, одержаних при перевірці до рядкам або стовпцям. При такій побудові коду будуть знайдені всі одиночні, подвійні і потрійні спотворення, а також всі непарні спотворення і деякі парні спотворення більшої кратності.

Матричний код знаходить: спотворення до кратності l = 3 включно (одиночні, подвійні, потрійні), всі непарні спотворення і деякі парні спотворення більшої кратності (четверні, шестерні і т.д.) при умові, що кількість спотворень в одному й тому ж рядку чи стовпчику є непарною. Поодинокі спотворення гарантовано виправляються.

Іноді до перевірок по рядках і стовпцях додають перевірки по діагоналях. Це ще більше покращує здібності коду, що виявляє. Для боротьби з груповими спотвореннями довжина рядка матриці (кількість стовпців) повинна бути не менше половини довжини пакету спотворень bсп, тобто s ≥ bсп/2.

Недоліком коду є додаткова затримка в передачі інформації за рахунок часу формування матриці.

Матричні коди доцільно використовувати при кодових комбінаціях великої довжини.