Пример кодирования данных в символах версии ЕСС 000-140 с использованием кода исправления ошибок уровня ЕСС 050
Q.1 Пример кодирования
Данными пользователя, подлежащими кодированию, является последовательность "АВ12-Х". Эти данные кодируют по основанию 41 (идентификатор формата равен 3)
Этап 1. Кодирование данных:
Первая последовательность знаков | Вторая последовательность знаков | |||
а) подразделение данных на четырехзнаковые последовательности: | ||||
А В 1 2 | -X | |||
b) преобразование к кодовым значениям по основанию 41: | ||||
1 2 28 29 | 39 24 | |||
с) использование уравнений преобразования: | ||||
2045860 | 1023 | |||
d) преобразование в двоичный поток битов: | ||||
0111110011011110100100 | 01111111111 | |||
е) преобразование каждой последовательности для создания окончательного потока кодированных битов: | ||||
0010010111101100111110 | 11111111110 |
Этап 2. Построение префикса данных:
a) поле идентификатора формата для основания 41 выбирают по таблице 11 (раздел 6.5.1*):
00010;
b) поле контроля циклической избыточности CRC вычисляют как указано в Q.2**, а затем меняют местами старшие и младшие биты:
1001 1010 1010 1110;
c) поле длины должно быть равно шести в двоичном виде с перестановкой старших и младших разрядов (MSB/LSB):
011000000;
d) окончательный незащищенный двоичный поток приведен на рисунке Q.1.
________________
* В ИСО/МЭК 16022 ошибочно указана ссылка на 5.4.1.
** Результат вычислений - 0111 0101 0101 1001.
Этап 3. Обнаружение и исправление ошибок:
Незащищенный двоичный поток подразделяют на блоки по три бита при подготовке к вводу в конечный автомат уровня ЕСС 050. К перечню входных блоков добавляют три дополнительных заполненных нулями блока, что дает в целом 24 входных блока (рисунок Q.1). Число дополнительных блоков (с нулями) равно наибольшей длине регистра сдвига для используемого конечного автомата ЕСС; для уровня ЕСС 050 добавляют три блока. Основными операциями всех конечных автоматов уровней ЕСС 050-140 являются следующие:
a) обнуляют регистры конечного автомата;
b) вводят очередной входной блок (MSB находится в позиции 1);
c) проводят вычисления на выходах всех вентилей "исключающее ИЛИ";
d) производят запись в выходной поток (MSB находится в позиции 1).
В таблице Q.1 указаны значения всех регистров конечного автомата в ходе сверточного кодирования 24 входных блоков.
Окончательный защищенный двоичный поток длиной 96 битов представляет собой:
0000 1010 1011 1111 1010 1010 1010 0000 0100 0011 0110 1000 0101 0001 1000 0000 1110 1010 1001 1010 1001 1000 0100 1010.