Способ помехоустойчивого кодирования и декодирования
Реферат
Изобретение относится к радиосвязи, реализуемой посредством каналов с частотной модуляцией сигналов. Передаваемые данные преобразуют в последовательность блоков длиной k символов. Далее формируют проверочные блоки длиной k символов путем кодирования вышеупомянутых блоков с кодовой скоростью 1/2. Отличие данного способа от известных заключается в том, что перед частотной модуляцией осуществляют модифицированное относительное кодирование, при котором при передаче серий нулей или единиц любой продолжительности невозможны интервалы постоянной частоты более четырех символов. На приеме после частотной демодуляции формируют из принятого 2k-символьного модифицированного относительного кода k-символьные информационный и проверочный блоки. После этого вычисляют k-символьный синдром, находят по синдрому в таблице, сформированной по критерию максимума правдоподобия, соответствующий k-символьный локатор ошибок. Обнаруженные ошибки исправляют путем поразрядного суммирования по XOR символов локатора и символов принятого информационного блока. Способ обеспечивает повышенную помехоустойчивость связи в каналах с частотной модуляцией. 1 з.п.ф-лы.
Изобретение относится к радиосвязи и может быть использовано при помехоустойчивом кодировании каналов с частотной модуляцией (ЧМ).
Известен способ помехоустойчивого кодирования и декодирования каналов, по которому передаваемые данные преобразуют в последовательность информационных блоков длиной k символов, кодируют эти блоки кодом с кодовой скоростью 1/2, получая проверочные блоки длиной k символов, передают оба этих блока в канал, а на приемной стороне принимают оба k-символьных блока, синхронизируют их и формируют синдром, осуществляют последовательно несколько операций анализа синдрома и коррекции ошибок, каждая из которых приближает характеристики декодирования к оптимальному декодированию по максимуму правдоподобия. Этот способ называется оптимизированным пороговым декодированием (ОПД). Он выбран в качестве прототипа заявленного технического решения и описан в статье "Микросхема помехоустойчивого кодирования" ("Электросвязь", 10, 2002, с.43, Брауде-Золотарев Ю.М. и др.), а также в описании изобретения по патенту RU 646451, Н 04 L 1/10. Однако высокую помехоустойчивость в каналах с ЧМ при простых "одноточечных" синтезаторах частоты известный способ ОПД обеспечить не может и в таких каналах применения не находит, так как при передаче длинных (более 8 символов) последовательностей (серий) нулей или единиц, имеющихся в кодовых словах, в частотном демодуляторе (ЧД) возникают ошибки. Такие серии вызывают смещение частоты синтезатора, снижающие помехоустойчивость приема. При передаче нескольких таких слов, образующих еще более длинные серии нулей или единиц, возможны даже срывы связи. Другим недостатком известного способа является снижение исправляющей способности в больших шумах по сравнению со способом декодирования по критерию максимума правдоподобия даже при отсутствии длинных серий однородных символов. Эти недостатки являются платой за простоту оптимизированного порогового декодирования и за возможность работы при очень высоких (до 50 Мбит/с и выше) скоростях передачи информации. Задача изобретения - повышение помехоустойчивости связи в каналах с частотной модуляцией. Для этого в известном способе помехоустойчивого кодирования и декодирования, при котором передаваемые данные преобразуют в последовательность блоков длиной k символов, после чего формируют проверочные блоки длиной k символов путем кодирования с кодовой скоростью 1/2 вышеупомянутых блоков длиной k символов, перед частотной модуляцией осуществляют модифицированное относительное кодирование (МОК), при котором при передаче серий нулей или единиц любой продолжительности невозможны интервалы постоянной частоты более четырех символов, а на приеме после частотной демодуляции формируют из принятого 2k-символьного модифицированного относительного кода k-символьные информационный и проверочный блоки, вычисляют k-символьный синдром, находят по синдрому в таблице, сформированной по критерию максимума правдоподобия, соответствующий k-символьный локатор ошибок и исправляют обнаруженные ошибки путем поразрядного суммирования по XOR символов локатора и символов принятого информационного блока. Решению поставленной задачи способствует следующий частный существенный признак заявленного технического решения - при передаче инвертируют символ проверочного блока путем передачи "0" вместо "1" и "1" вместо "0". Использованная в предлагаемом способе дополнительная операция МОК позволяет устранить интервалы постоянной частоты при передаче длинных серий однородных символов (нулей или единиц), то есть серий, содержащих более 4-х символов. Такая модуляция ранее в радиоканалах не использовалась. Применение МОК делает невозможными продолжительные сигналы постоянной частоты при появлении серий однородных символов, что обеспечивает высокую помехоустойчивость приема в канале с ЧМ. Синдромный прием по критерию максимума правдоподобия также является отличительным признаком заявленного технического решения. Для его реализации требуются новые генераторные полиномы (ГП) кодов, ранее в технике связи не использовавшиеся. Эти ГП были получены предприятием-заявителем путем перебора на ЭВМ всех возможных ГП для длины кода k от 4 до 15 символов. Лучшими среди них оказались: код с k=8, исправляющий все двухкратные ошибки и более 20% ошибок большей кратности, и код с k=11, исправляющий все трехкратные ошибки и незначительную часть ошибок большей кратности. Для этих кодов по критерию максимума правдоподобия строят таблицы локаторов ошибок, обеспечивающие оптимальный прием. Работу предлагаемого способа рассмотрим на примере кода с k=11 и ГП (0, 1, 2, 4, 5, 7), исправляющего все трехкратные ошибки. На передающей стороне информационное слово "I" (11 бит) умножают на ГП. Для этого циклически сдвигают его на 0, 1, 2, 4, 5, 7 бит и эти 6 слов поразрядно суммируют по XOR, то есть по модулю 2 (0+0=0, 1+1=0, 1+0=1, 0+1=1). Результат суммирования Q = I0I1I2I4I5I7 = I*G называется проверочным словом. Умножение можно выполнить также при помощи таблицы, содержащей 11 строк (g0. . . g10), полученных циклическими сдвигами ГП, суммируя по XOR символы строк, соответствующих ненулевым разрядам информационного слова: Заметим, что для четного "веса" (количества единиц) в ГП при инверсии всех символов информационного блока синдромный блок не изменяется. Например, для I= 00000000 и для I=11111111 получим Q=00000000. Проверочные слова с большим "весом" образуют информационные слова со средними "весами". Поэтому поочередное следование символов проверочного и информационного слов позволяет сформировать "промежуточный код" длиной 22 символа, в котором серии однородных символов этих слов перед относительным кодированием перемешаны так, что синдромные и информационные символы следуют поочередно. В обычном относительном кодировании все изменения знака происходят на границе символов, причем 1 изменяет знак предыдущего символа, а нуль - сохраняет. Поэтому длинная последовательность нулей сохранится, что будет вызывать ошибки и сбои. Модифицированное относительное кодирование (МОК) изменяет знаки при передаче единиц и нулей. При передаче кодовых символов "1" знак символа канала изменяют на границах символов. В середине символа при передаче "1" знак никогда не изменяется. Для символа "0" знак символа канала всегда изменяют в середине символа и никогда не изменяют на границе символов. Если "1" следует после "0" или "0" следует после "1", то знак на границе символов сохраняют. МОК осуществляется при помощи так называемого тика, то есть разделения интервала символов промежуточного кода на две равные части. Перед началом передачи посылают два контрольных тика канала (например, тики "конца синхронизирующего маркера", или же тики "00"). При приеме эти первые тики считают условной "1" и декодер ее игнорирует. Если первый символ кода является "1", то в канал передают тики "11" (изменяем знак на границе символов). Если первый символ кода "0", то передают тики "01". Для информационного блока 00...0 получают блок синдрома 00...0, промежуточный код 0000...0000 и код канала Два тика символа канала отделены для наглядности запятыми. Для информационного блока 11...1 получают блок синдрома 00...0, промежуточный код 0101...0101 и код канала Благодаря МОК, серии и нулей, и единиц полностью уравновешены. Наихудшим случаем при передаче кодом МОК была бы периодическая последовательность символов 100, например 010010010...010, порождающая код канала или 10,00,01,10,00,01,10 с "сильным" (30%) преобладанием "единиц" или "нулей". Благодаря особенностям выбранных ГП и особенностям перемежения информационных и проверочных символов такие "неуравновешенные" участки могут возникнуть только на коротких участках кода канала. Поэтому в коде канала возможны преобладания знака (частоты) не больше 10% в малом подмножестве слов, что несущественно. Работа МОК подобна скремблеру (см. Электросвязь, 10, 2002, с. 43, Брауде-Золотарев Ю.М. др.), но не требует синхронизации, лучше разрушает серии однородных символов и поэтому более эффективна. При этом никогда не возникают символы канала (частоты) с длиной меньше 2-х и больше 4-х тиков. Поэтому короткий тик не требует расширения полосы частот канала или снижения скорости передачи. На приеме из МОК восстанавливают информационное и проверочное слова. Возможен и другой вариант МОК, при котором "0" может изменять знак только в начале символа, а "1" - только в середине, но никаких преимуществ по сравнению с рассмотренным этот вариант не имеет. Возможно усовершенствование этого способа путем ввода на передаче в символ проверочного блока на участке с остаточным преобладанием преднамеренной ошибки, которая осуществит предкоррекцию преобладания. При передаче данных в канале к коду добавляются ошибки. Для простоты будем считать, что их границы совпадают с границами символов информационного и проверочного слов. В результате к ним добавятся по XOR 11-ти символьные слова ошибок канала Ei и Eq соответственно. На выходе канала получают: Ic = IEi, Qc = QEq = I*GEq. На приемной стороне для принятого информационного слова Iс вычисляют контрольное проверочное слово декодирования Qd = Ic*G = I*GEi*G путем такого же, как на передающей стороне умножения на ГП кода. Затем поразрядно по XOR суммируют проверочные слова: контрольное слово Qd и принятое проверочное слово Qc. Результат S является синдромом. Очевидно, что I*GI*G = 0 и что S = EqEi*G. Ошибки информационного слова Ei умножены на ГП. Такое формирование синдрома является общеизвестным. На приеме для синдромного декодирования в предлагаемом способе, в отличие от известного, используют заранее подготовленную таблицу. При построении таблицы начинают с безошибочного синдрома, затем задают поочередно все возможные ошибки канала Ei и Eq, начиная с одиночных, затем двойных, тройных и т. д. Поиск прекращают после получения всех возможных 211 синдромов (т.е. заполнения всех 2048 строк в таблице 11-ти символьных локаторов). Локаторы ошибок для таблицы выбирают по критерию минимального "веса" ошибок, что соответствует критерию максимума правдоподобия (оптимальному декодированию). По синдрому S в таблице находят 11-ти символьное слово локатора ошибок L, которое поразрядно по XOR суммируют с принятым информационным словом Iс. В результате получают декодированное информационное слово Id = IcL, в котором при L=Ei все информационные ошибки будут исправлены. Ошибки проверочного слова не исправляют. При вводе на передаче преднамеренной ошибки в проверочный символ предкоррекции остаточного преобладания некоторых кодовых слов возможно исправление не трех ошибок, а двух, но общая характеристика помехоустойчивости при этом практически не снижается. Таким образом, заявляемая новая совокупность признаков позволяет решить поставленную задачу и может быть классифицирована как изобретение.Формула изобретения
1. Способ помехоустойчивого кодирования и декодирования, по которому передаваемые данные преобразуют в последовательность блоков длиной k символов, после чего формируют проверочные блоки длиной k символов путем кодирования вышеупомянутых блоков длиной k символов с кодовой скоростью 1/2, отличающийся тем, что перед частотной модуляцией осуществляют модифицированное относительное кодирование, при котором при передаче серий нулей или единиц любой продолжительности невозможны интервалы постоянной частоты более четырех символов, а на приеме после частотной демодуляции формируют из принятого 2k-символьного модифицированного относительного кода k-символьные информационный и проверочный блоки, вычисляют k-символьный синдром, находят по синдрому в таблице, сформированной по критерию максимума правдоподобия, соответствующий k-символьный локатор ошибок и исправляют обнаруженные ошибки путем поразрядного суммирования по XOR символов локатора и символов принятого информационного блока. 2. Способ по п.1, отличающийся тем, что на передаче инвертируют символ проверочного блока путем передачи 0 вместо 1 и 1 вместо 0.