Контрольные вопросы
Поясните понятия: блочные, непрерывные, разделимые, неразделимые, итеративные, линейные, циклические коды?
Блочные – заменяют каждый блок из m символов более длинным блоком из n символов, которые после передачи подлежат декодированию.
Непрерывные – коды, в которых введение избыточных символов в кодируемую последовательность информационных символов осуществляется непрерывно, без разделения ее на независимые блоки.
Разделимые – коды, кодовые комбинации которых состоят из двух частей: информационной и проверочной.
Неразделимые – коды, кодовые комбинации которых нельзя разделить на информационные и проверочные части.
Итеративные – эти коды характеризуются наличием двух или более систем проверок внутри каждой кодовой комбинации.
Линейные – типы блокового кода, использующиеся в схемах определения и коррекции ошибок.
Циклические – линейные, блочные коды, обладающие свойством цикличности, то есть каждая циклическая перестановка кодового слова также является кодовым словом.
Что такое расстояние Хемминга и кодовое расстояние?
Расстояние Хемминга между двумя кодовыми словами равно числу единиц в сумме этих слов по модулю 2, т.е. количеству разрядов, в которых различаются эти два кодовых слова.
Кодовое расстояние d, определяемое как наименьшее расстояние Хемминга между всеми возможными парами кодовых слов, в линейном коде равно минимальному весу ненулевого кодового слова.
Определение и основные свойства циклического кода.
Циклические – линейные, блочные коды, обладающие свойством цикличности, то есть каждая циклическая перестановка кодового слова также является кодовым словом.
Свойства:
циклический код обнаруживает все одиночные ошибки, если образующий полином содержит более одного члена. Если G(x)=x+1, то код обнаруживает одиночные ошибки и все нечетные;
циклический код с G(x)=(x+1)G(x) обнаруживает все одиночные, двойные и тройные ошибки;
циклический код с образующим полиномом G(x) степени r = n - k обнаруживает все групповые ошибки длительностью в r символов.
Какое правило кодирования циклическим кодом принято в лабораторной работе?
Смещение и умножение полинома v(x) на х по модулю (хn ⊕1).
Какое правило декодирования принято в декодере в режиме исправления ошибок?
Декодирование заключается в определении номера искаженного разряда и его автоматического исправления. А также отделения информационных разрядов от контрольных.
Какое правило декодирования принято в декодере в режиме обнаружения ошибок?
Процедура декодирования циклического кода с обнаружением ошибок, по аналогии с процессом кодирования основана на использовании свойства делимости без остатка кодового многочлена Р(x) циклического (n,m)-кода на порождающий многочлен g(x).
Как связаны кратности гарантированно исправляемых кодов ошибок t и гарантированно обнаруживаемых кодом ошибок σ с кодовым расстоянием d?
Количество (кратность) гарантированно обнаруживаемых (tобн) и гарантированно исправляемых (tисп) кодом ошибок зависит от степени различия разрешенных кодовых комбинаций – которые оцениваются кодовым расстоянием d.
Кодовое расстояние d связано с кратностью t исправляемых ошибок по формуле: d>=2t+1
Кодовое расстояние d связано с кратностью o обнаруживаемых ошибок по формуле: d>=o+1
Какие векторы ошибок не могут быть обнаружены линейным циклическим кодом?
Векторы ошибок, совпадающие с кодовыми словами, не могут быть обнаружены декодером циклического кода.
Сколько различных векторов ошибок может быть исправлено, не исправлено, обнаружено, не обнаружено кодом (7,4)?
Исправлено – 7 (т.к. длина 7), не исправлено – 15, обнаружено – 2, не обнаружено – 15.
Как рассчитать вероятность необнаружения ошибки при заданном канале?
Вероятность необнаруживаемой ошибки этим кодом равна вероятности появления в ДСК векторов ошибок, совпадающих с кодовыми словами, т.е.:
P = 7P7(4) + 7P7(3) + P7(7) = 7p04(1-p0)3 + 7p03(1-p0)2 +p07(1-p0)
Как рассчитать вероятность ошибочного декодирования при заданном канале?
Вероятность ошибочного декодирования будет равна вероятности Pn(>t) появления векторов ошибок веса t + 1 и больше в заданном канале. Для ДСК эта вероятность будет равна
Как по одной известной разрешенной комбинации циклического кода определить все остальные кодовые комбинации этого кода?
Получить все разрешенные комбинации циклического кода можно по одной известной кодовой комбинации (не нулевой). Для этого сначала надо циклически сдвинуть известную комбинацию k-1 раз. В результате получится n комбинаций. Затем сложить попарно по модулю 2 получившиеся комбинации в различных сочетаниях (по две, по три и.т.д). Нулевую комбинацию (все нули) можно получить, сложив по модулю 2 любую комбинацию саму с собой. Всего получится 2k кодовых слов.
Известна комбинация на входе кодера v1 и выходе декодера_2 v2. Как определить вектор ошибки E? (v1<>v2)?
В режиме исправления ошибок декодер вычисляет остаток S(x) от деления принятой последовательности P(x) на g(x). Этот остаток называют синдромом. Принятый полином P(x) представляет собой сумму по модулю два переданного слова V(x) и вектора ошибок E(x):
P(x) = V(x) ÅE(x)
Тогда синдром S(x)= P(x) mod g(x), так как по определению циклического кода V(x)mod g(x) =0.
Определенному синдрому S(x) может быть поставлен в соответствие определенный вектор ошибок E(x). Тогда переданное слово V(x) находят, складывая P(x)ÅE(x).
Дана длина кодовой комбинации n, вероятность ошибки в канале Рош. Как определить вероятность появления в кодовой комбинации ошибки кратностью t?
В таком канале каждый двоичный символ с некоторой фиксированной вероятностью (1 - p0) принимается правильно и с вероятностью p0 изменяется помехой на обратный.
Вероятность
того, что слово на выходе канала будет
отличаться от переданного слова в
заданных t разрядах, т.е. вектор, ошибок
содержит t единиц, равна
.
Как производится кодирование – декодирование при использовании кода с проверкой на четность (на нечетность)?
Берется число и остаток деления суммы всех единиц числа на 2 дописывается справа.
