Скляр Б. Цифровая связь (2003) (1151859), страница 104
Текст из файла (страница 104)
Коды Рида-Соломона (л,1) определены на е-битовых символах при всех л и 1, для которых Оси<и<2 +2, (8.1) где и — число информационных битов, подлежащих кодированию, а и — число кодовых символов в кодируемом блоке. Для большинства сверточных кодов Рипа-Соломона (л, 1) (8.2) (и, /с) = (2 — 1, 2 — 1 — 2г), где 1 — количество ошибочных битов в символе, которые может исправить код, а л— к =2г — число контрольных символов. Расширенный код Рида-Соломона можно получить при л = 2 или л = 2" + 1, но не более того.
Код Рида-Соломона обладает нииболыиим минимальным расстоянием, возможным для линейного кода с одинаковой длиной входных и выходных блоков колера. Для недвоичных кодов расстояние между двумя кодовыми словами определяется (по аналогии с расстоянием Хэмминга) как число символов, которыми отличаются последовательности.
Для кодов Рида-Соломона минимальное расстояние определяется следующим образом 11): (8.3) Код, который исправляет все искаженные символы, содержащие ошибку в ! или меньшем числе бит, где г приведено в уравнении (6.44), можно выразить следующим образом: (8.4) Здесь Ы означает наибольшее целое, не превышающее х. Из уравнения (8.4) видно, что коды Рида-Соломона, исправляющие 1 символьных ошибок, требуют не более 21 контрольных символов. Из уравнения (8.4) следует, что декодер имеет и — )с "используемых'* избыточных символов, количество которых вдвое превышает количество исправляемых ошибок.
Для каждой ошибки один избыточный символ используется для обнаружения ошибки и один — для определения правильного значения. Способность кода к коррекции стираний выражается следующим образом: р = Ы вЂ” 1 = и - lс. (8.5) Возможность одновременной коррекции ошибок и стираний можно выразить как требование (8.б) 2а + у < Ы < и — Е Здесь а — число символьных моделей ошибки, которые можно исправить, а у — количество комбинаций символьных стираний, которые могут быть исправлены. Преимущества недвоичных кодов, подобных кодам Рида-Соломона, можно увидеть в следующем сравнении.
Рассмотрим двоичный код (л,1) =(7,3). Полное пространство 8.1.1. Вероятность появления ошибок для кодов Рида-Соломона Коды Рида-Соломона чрезвычайно эффективны для ислравлеяия лакеглов ошибок, т.е. они оказываются эффективными в каналах с памятью. Также они хорошо зарекомендовали себя в каналах с большим набором входных символов. Особенностью кода Рида-Соломона является то, что к коду длины л можно добавить два информационных символа, не уменьшая при этом минимального расстояния. Такой расширенный код имеет длину я+ 2 и то жс количество символов контроля четности, что и исходный код.
Из уравнения (6.46) вероятность появления ошибки в декодированном символе, Р„можно записать через вероятность появления ошибки в канальном символе, р 12), (8.7) Здесь г — количество ошибочных битов в символе, которые может исправить код, а символы содержат е битов каждый. Для некоторых типов модуляции вероятность битовой ошибки можно ограничить сверху вероятностью символьной ошибки. Для модуляции МРВК с М=2 связь Рх и Рг выражается формулой (4.112) Р 2" ' а Рг 2 -1 (8.8) На рис. 8.1 показана зависимость Рв от вероятности появления ошибки в канальном символе р, полученная из уравнений (8.7) и (8.8) для различных ортогональных 32-ричцых кодов Рида-Соломона с возможностью коррекции г ошибочных бит в символе и я =31 (тридцать один 5-битовый символ в кодовом блоке). На рис.
8.2 показана зависимость Рв от Е,)ЛГ, для таких систем кодирования при ис- л-кортежей содержит 2"=2'= 128 л-кортежей, из которых 2" =2'=8 (или 1!16 часть всех л-кортежей) являются кодовыми словами. Затем рассмотрим недвоичный код (л, А) =(7, 3), где каждый символ состоит из аз =3 бит. Пространство л-кортежей содержит 2"" = 2" = 2 097 152 л-кортежа, из которых 2 = 2а = 512 (или 1/4096 часть все л-кортежей) являются кодовыми словами. Если операции производятся над недвоичными символами, кюкдый из которых образован е битами, то только незначительная часть (т.е.
2'" из большого числа 2 ) возможных л-кортежей является кодовыми словами. Эта часть уменьшается с ростом т. Здесь важным является то, что если в качестве кодовых слов используется незначительная часть пространства л-кортежей, то можно достичь большего 4 Любой линейный код дает возможность исправить л-1 комбинаций символьных стираний, если все л — А стертых символов приходятся на контрольныс символы.
Однако коды Рида-Соломона имеют замечательное свойспю, выражаюшееся в том, что они могут исправить любой набор л — /с символов стираний в блоке. Можно сконструировать коды с любой избыточностью. Впрочем, с увеличением избыточности растет сложность ее высокоскоростной реализации. Поэтому наиболее привлекательные коды Рида-Соломона обладают высокой степенью кодирования (низкой избыточностью). пользовании модуляции МгЯК и некогеренгной демодуляции в канале АФСгХ г2~. Для кодов Рида-Соломона вероятность появления ошибок является убывающей степенной функцией длины блока, и, а сложность декодирования пропорциональна небольшой степени длины блока [!). Иногда коды Рида-Соломона применяются в каскадных схемах. В таких системах внутренний сверточный декодер сначала осуществляет некоторую защиту от ошибок за счет мягкой схемы решений на выходе демодулятора; затем сверточный декодер передает данные, оформленные согласно жесткой схеме, на внешний декодер Рида-Соломона, что снижает вероятность появления ошибок.
В разделах 8.2.3 и 8.3 мы рассмотрим каскадное декодирование и декодирование Рида-Соломона на примере системы цифровой записи данных на аудиокомпакт-дисках (сошрасг гйзс — СР). то-' ю-3 о. 3 4 то-ь д то-' 8 $ зо-в ю-т то-' то-а то-' то-4 Ввроятность ошибочного приама канального символа, р Рис. Д1. Зависимость Рв от р для различных ортогональных 33-ричных кадое Рида-Соломона с возиохсностью коррекции ! бит в символе и л = 31.
(Лерелечатано с разрешения автора из !гата Сопапшпсабопз, !Чстчгот!с, апб Бунспи, ед. Тйотот С Вас!ее, Ноиап! Иг Затз Сотрапу, 1пд(опора!!з, !пд, 1985, р. 311. Ранее публиковалось в Х Р. ОделиаЫег, Епог Солт!о! Сейла Напбооо!с, Мгггт-СОМ 21ККАШТ, 1пс., Юап 1З!ебо, Са!»., уи!у, 15, 197б, р. 913 и-' 10-з 3 О 10-4 8 о а Ф а а Е 1О-ь И-г 5,5 4,0 4,5 5,0 5,5 6,0 6,5 7,0 Еь!Мь (а51 Рис.
82 Зависимость Ре от Ем%о дгя различная ортогональная кодов Рида-Соломона с возмоисностыо коррекции ! бит в символе и и = 31, при 32-раиной модуляции МГЯК в канале Апгбдг. (Лерелечатано с разрешения автора из (уага Сопгпшп!сабопз, Хееног)г, апд 8уыепгз, ед. 78оваз С Запев, Оогчап( йг. 5авз Сатрапу, !тйаларо!!з, 1лд., 1985, р. 312 Ранее публиковалось в 1. Р. Одепнга!бег, Еггог Сап!го( Сод!па НапдЬоой, М/А-СОМ 11дгКА311Т, 1лс., Яал О!еко, Са!д:, Уи!у, 15, 1975, р. 921 8.1.2. Почему коды Рида-Соломона эффективны при борьбе с импупьсными помехами Давайте рассмотрим код (и, к) =(255,247), в котором каждый символ состоит из гп= 8 бит (такие символы принято называть байтами).
Поскольку и -(1= 8, из уравнения (8.4) можно видеть, что этот код может исправлять любые 4-символьные ошибки в блоке длиной до 255. Пусть блок длительностью 25 бит в ходе передачи поражается помехами, как показано на рис. 8.3. В этом примере пакет шума, который попадает на 25 последовательных битов, исказит точно 4 символа. Декодер для кода (255, 247) исправит любые 4-символьные ошибки без учета характера повреждений, причиненных символу.
Другими словами, если декодер исправляет байт (заменяет неправильный правильным), то ошибка может быть вызвана искажением одного или всех восьми битов. Поэтому, если символ неправильный, он может быть искажен на всех двоичных позициях. Это дает коду Рида-Соломона огромное преимущеспю при наличии импульсных помех по сравнению с двоичными кодами (даже при использовании в двоичном коде чередования).
В этом примере, если наблкзаается 25- битовая случайная помеха, ясно, что искаженными могут оказаться более чем 4 символа (искаженными мо1уг оказаться до 25 символов). Конечно, исправление такого числа ошибок окажется вне возможностей кода (255, 247). 8.1.3. Рабочие характеристики кода Рида-Соломона как функция размера, избыточности и степени кодирования Для того чтобы код успешно противостоял шумовым эффектам, длительность помех должна составлять относительно небольшой процент от количества кодовых слов.
Чтобы быть уверенным, что так будет большую часп времени, принятый шум необходимо усреднить за большой промежуток времени, что снизит эффект от неожиданной или необычной полосы плохого приема. Следовательно, можно предвидеть, что код с коррекцией ошибок будет более эффективен (повысится надежность передачи) при увеличении размера передаваемого блока, по делает код Рида-Соломона более привлекательным, если желательна большая длина блока [3]. Это можно оценить по семейству кривых, показанному на рис.
8.4, где степень кодирования взята равной 7/8, при этом длина блока возрастает с л = 32 символов (при т =5 бит на символ) до л = 256 символов (при т = 8 бит на символ). Таким образом, размер блока возрастает с (60 бит до 2048 бит. аб-бнтовый пакет шума Норма Искажен Искажен Искажен Искажен Норма Рис. 8.3.
Блок данных, искозкенныб 25-битовым пакетом ошибок 1О з ж с Д $ В!О 1с $ 1О- зо 1О-в 1О-в 1О-ь Ю-з 1О-г Веввпнось появления случайной сшибки в бите Рис. 8.4. Характеристики декодера Рида-Соввмошз как Функнив размера символов (степень коднровомил = 7ссд) По мере увеличения избыточности кола (и снижения его степени кодирования), сложность реализации этого кода повышается (особенно для высокоскоростных устройств), При этом для систем связи реального времени должна увеличиться ширина полосы пропускания. Увеличение избыточности, например увеличение размера символа, приводит к уменьшению вероятности появления битовых ошибок, как можно видеть на рис.
8.5, где кодовая длина л равна постоянному значению 64 при снижении числа символов данных с /с = 60 до А = 4 (избьпочность возрастает с 4 до 60 символов). 10 О 3 Ь 1О-' К=ВО я Ю к= бв я э о 1О-1О к= ба Ф с о с Ь а Ш-15 К=44 К=а От ю- " ипк 1О-в ю-' 10 1 Вероятность появления случайной ошибки в бите Рас. 85. Характсрнстоки декодера Рида-Соломона (64, /с) как функция избытокноса1и На рис.
8.5 показана передаточная функция (выходная вероятность появления битовой ошибки, зависящая от входной вероятности появления символьной ошибки) гипотетических декодеров. Поскольку здесь не имеется в виду определенная система или канал (лишь вход-выход декодера), можно заключить, что надежность передачи является монотонной функцией избыточности и будет неуклонно возрастать с приближением степени кодирования к нулю.