|
|
|||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||
| Вход | |||||||||||||||||||||||||||||||||
|
Раздел "Обработка сигналов и изображений\Communications Toolbox"
Список функций CommunicationsToolbox: Помехоустойчивое кодирование и декодирование В оглавление \ К следующему разделу \ К предыдущему разделу
Синтаксис: t = syndtable(parmat); Описание: t = syndtable(parmat) Возвращает таблицу декодирования для двоичного корректирующего кода с длиной кодового слова n и длиной сообщения k. Параметр parmat — проверочная матрица кода, имеющая (n – k) строк и n столбцов. Результат t — двоичная матрица, содержащая 2n – k строк и n столбцов. r-я строка матрицы t представляет собой вектор ошибок для принятого двоичного кодового слова, синдром декодирования которого имеет десятичное целочисленное значение r – 1. (Синдром декодирования равен произведению принятого кодового слова и транспонированной проверочной матрицы.) Иными словами, строки матрицы t представляют собой лидеры смежных классов (coset leaders) из стандартного расположения (standard array) для данного кода. При преобразовании десятичных величин в двоичные и наоборот левый столбец двоичных матриц интерпретируется как двоичная цифра старшего разряда. Это отличается от соглашения, которое по умолчанию используется функциями bi2de и de2bi. Примеры: Приведенные ниже команды вычисляют таблицу декодирования для кода Хэмминга (7, 4). Данный код имеет кодовое расстояние 3 и, следовательно, позволяет обнаруживать двукратные и исправлять однократные ошибки. m = 3; n = 2^m-1; k = n-m; 0 0 0 0 0 0 0 Первая строка таблицы декодирования соответствует случаю отсутствия ошибок при приеме. Остальные строки содержат все семь возможных векторов однократных ошибок, исправляемых данным кодом. Декодирование с использованием данной таблицы осуществляется следующим образом. Сначала путем умножения принятого кодового слова на транспонированную проверочную матрицу вычисляется синдром декодирования. Пусть он оказывается равным, например, [0 1 0]. Десятичное значение синдрома равно 2. Соответствующий вектор ошибок, таким образом, следует брать из третьей (2 + 1) строки таблицы декодирования: trt(3,:) 0 1 0 0 0 0 0 Полученный вектор ошибок необходимо прибавить (по модулю два) к принятому кодовому слову. Итак, в данном примере для исправления однократной ошибки следует инвертировать второй разряд принятого кодового слова. |
|
Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
|
||
| На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro | ||
| E-mail: | ||
| Информация на сайте была обновлена 11.05.2004 |
Copyright 2001-2004 SoftLine Co Наши баннеры |
|