- Свёрточные коды
-
Свёрточный код — это корректирующий ошибки код, в котором (a) на каждом такте работы кодера k символов входной полубесконечной последовательности преобразуются в n > k символов выходной, и (b) в преобразовании также участвуют m предыдущих символов; вдобавок к этому, выполняется свойство линейности(если двум кодируемым последовательностям и соответствуют кодовые последовательности и , то кодируемой последовательности соответствует ).
Свёрточный код является частным случаем древовидных и решетчатых кодов.
Определения и общая схема нерекурсивного кодера
Схема кодера нерекурсивного свёрточного кода представлена на Рис.1. Он состоит из k q-ичных регистров сдвига с длинами m1.m2,...,mk. Некоторые (может и все) входы регистров и выходы некоторых ячеек памяти соединены с несколькими n сумматорами по модулю q. Число сумматоров больше числа регистров сдвига: n > k
На каждом такте работы кодера на его вход поступает k информационных символов, они вместе с хранящимися в регистрах сдвига символами поступают на входы тех сумматоров, с которыми имеется связь. Результатом сложения является n кодовых символов, готовых к передаче. Затем в каждом регистре сдвига происходит сдвиг: все ячейки сдвигаются вправо на один разряд, при этом крайне левые ячейки заполняются входными символами, а крайне правые стираются. После этого такт повторяется. Начальное состояние регистров заранее известно, и обычно нулевое.
- Суммарная длина всех регистров сдвига называется кодовым ограничением, а максимальная длина w = max{m1,...,mk} — задержкой.
- Значения регистров сдвига в каждый момент времени называется состоянием кодера.
См. также
Wikimedia Foundation. 2010.