7.5. ПОНЯТИЕ ОБ ИТЕРАТИВНЫХ И КАСКАДНЫХ КОДАХ [7.1]
Различные коды обладают разными корректирующими способностями. Для получения более совершенных кодов можно использовать комбинации двух и более кодов. Одним из таких классов кодов являются итерированные коды. Они получаются путем расположения информационных символов в виде таблицы (рис. 7.4). Каждая строка этой таблицы кодируется каким-либо кодом, а затем кодируется каждый столбец, причем не обязательно тем же кодом. Символы, расположенные в правом нижнем углу таблицы, получаются в результате проверки проверочных символов. Они могут быть построены на основе проверки по строкам и тогда будут удовлетворять проверке по столбцам, и наоборот.
В качестве примера рассмотрим итерированные коды (рис. 7.5) с одной проверкой на четность для каждого столбца и строки. Такой код имеет большую корректирующую способность по сравнению с кодом с одной проверкой на четность, который позволяет только обнаруживать одиночные и нечетнократные ошибки. Итерированный код позволяет исправить все одиночные ошибки, так как пересечение строки и столбца, содержащих ошибку, однозначно указывает ее место.
Минимальное кодовое расстояние итерированного кода равно произведению кодовых расстояний итерируемых кодов.
Рис. 7.4. Расположение символов итерированного кода
Рис. 7.5. Пример итерированного кода
Действительно, если минимальный вес одного кода равен а другого , то кодовое слово, соответствующее произведению кодов, должно иметь, по крайней мере, ненулевых элементов в каждой строке, которая содержит ненулевые элементы и, по крайней мере, ненулевых элементов в каждом столбце, который содержит ненулевые элементы. Следовательно он должен иметь амюг ненулевых элементов. Поскольку минимальное кодовое расстояние равно минимальному весу, то кодовое расстояние рассматриваемого кода Поэтому простейший итерированный код позволяет обнаруживать все ошибки кратностью до трех. Он также обнаруживает все ошибки нечетной кратности, а также любые пакеты ошибок длиной не более где l — длина строки.
Итерированные коды благодаря простоте реализации (особенно при использовании ЭВМ) нашли широкое применение в низкоскоростных системах ПД.