Систематический код
В теории кодирования систематический код — это любой код с исправлением ошибок , в котором входные данные встроены в закодированные выходные данные. И наоборот, в несистематическом коде выходные данные не содержат входных символов.
Преимущество систематических кодов заключается в том, что данные четности можно просто добавить к исходному блоку, и получателям не нужно восстанавливать исходные исходные символы, если они получены правильно – это полезно, например, если кодирование с коррекцией ошибок сочетается с хэш-функцией для быстрое определение правильности полученных исходных символов или в случаях, когда возникают ошибки при стирании и, таким образом, полученный символ всегда является правильным. Кроме того, для инженерных целей, таких как синхронизация и мониторинг, желательно получить достаточно хорошие оценки принятых исходных символов без прохождения длительного процесса декодирования, который может быть выполнен на удаленном объекте позднее. [1]
Характеристики
[ редактировать ]Любой несистематический линейный код можно преобразовать в систематический код с по существу теми же свойствами (т. е. минимальным расстоянием). [1] [2] Поэтому из-за упомянутых выше преимуществ линейные коды с исправлением ошибок обычно реализуются как систематические коды. Однако для некоторых алгоритмов декодирования, таких как последовательное декодирование или декодирование с максимальным правдоподобием, несистематическая структура может повысить производительность с точки зрения вероятности необнаруженной ошибки декодирования, когда минимальное свободное расстояние кода больше. [1] [3]
Для систематического линейного порождающая матрица кода , всегда можно записать как , где - единичная матрица размера .
Примеры
[ редактировать ]- Контрольные суммы и хэш-функции в сочетании с входными данными можно рассматривать как систематические коды обнаружения ошибок.
- Линейные коды обычно реализуются как систематические коды с исправлением ошибок (например, коды Рида-Соломона на компакт-дисках ).
- Сверточные коды реализуются как систематические или несистематические коды. Несистематические сверточные коды могут обеспечить лучшую производительность при декодировании с максимальным правдоподобием ( Витерби ).
- В DVB-H для дополнительной защиты от ошибок и повышения энергоэффективности мобильных приемников систематический код Рида-Соломона используется в качестве кода стирания пакетов в пакете данных , где каждый пакет защищен CRC : данные в проверенных пакетах считаются как правильно принятые символы, и если все они приняты правильно, оценку дополнительных данных четности можно опустить, и приемные устройства могут отключить прием до начала следующего пакета.
- Фонтанные коды могут быть систематическими или несистематическими: поскольку они не имеют фиксированной кодовой скорости , набор исходных символов уменьшается среди возможного выходного набора.
Примечания
[ редактировать ]- ^ Jump up to: а б с Джеймс Л. Мэсси , Дэниел Дж. Костелло-младший (1971). «Несистематические сверточные коды для последовательного декодирования в космических приложениях». Транзакции IEEE по коммуникационным технологиям . 19 (5): 806–813. дои : 10.1109/TCOM.1971.1090720 . S2CID 51650729 .
{{cite journal}}
: CS1 maint: несколько имен: список авторов ( ссылка ) - ^ Ричард Э. Блаут (2003). Алгебраические коды для передачи данных (2-е изд.). Кембридж. унив. Нажимать. стр. 53–54 . ISBN 978-0-521-55374-2 .
- ^ Шу Линь; Дэниел Дж. Костелло-младший (1983). Кодирование с контролем ошибок: основы и приложения . Прентис Холл . стр. 278–280 . ISBN 0-13-283796-Х .
Ссылки
[ редактировать ]- Шу Линь; Дэниел Дж. Костелло-младший (1983). Кодирование с контролем ошибок: основы и приложения . Прентис Холл . стр. 278–280 . ISBN 0-13-283796-Х .