Способ передачи и приема сообщений в системе связи
Способ передачи и приема сообщений в системе связи относится к области техники связи и может быть использован для достоверного и помехоустойчивого доведения сообщений, защищенных помехоустойчивым кодом. Технический результат предлагаемого способа заключается в повышении помехоустойчивости сообщений, передаваемых в системе связи. Технический результат достигается за счет того, что на передающей стороне выходную последовательность, представляющую собой поразрядную сумму по модулю два помехоустойчивого кода и синхронизирующей последовательности, рекуррентно продолжают. На приемной стороне для принятой последовательности вычисляют синдром, обнаруживают синхронизирующую последовательность и устанавливают цикловую синхронизацию помехоустойчивого кода. Затем вычисляют поразрядную сумму по модулю два принятой и синхронизирующей последовательностей, выделяют помехоустойчивый код и его рекуррентное продолжение. Далее продолжают вычисление синдрома для остальных символов кода и его рекуррентного продолжения, предшествующих скользящему окну и следующих за скользящим окном. При количестве нулевых компонент синдрома для остальных символов кода и его рекуррентного продолжения превышающем пороговое значение, восстанавливают информацию и выдают ее получателю. Если пороговое значение не превышено, то скользящее окно смещают на один символ и вычисления повторяют сначала. 1 з.п. ф-лы, 1 табл.
Реферат
Изобретение относится к области техники связи и может быть использовано для передачи и приема сообщений, защищенных помехоустойчивым кодом.
Одним из основных способов повышения вероятности приема сообщений в каналах связи с ошибками является помехоустойчивое кодирование. В предлагаемом способе передачи и приема сообщений в системе связи выполняют цикловую синхронизацию и декодирование помехоустойчивого кода. При декодировании рассматриваемый способ позволяет обнаруживать и исправлять ошибки, кратность которых превосходит корректирующую способность кода. Для этого необходимо, чтобы в коде был принят хотя бы один неискаженный участок символов, длина которого превосходит информационную длину кода и небольшое число произвольно расположенных правильных символов (1-2 байта). Наиболее эффективно предлагаемый способ может применяться в каналах связи с группированием ошибок.
Известен способ передачи и приема сообщений в системе связи, в соответствии с которым на передающей стороне системы связи исходную информацию кодируют помехоустойчивым кодом, далее к помехоустойчивому коду добавляют синхронизирующую последовательность и полученную последовательность символов передают в канал связи, на приемной стороне системы связи сначала осуществляют цикловую синхронизацию принятой из канала связи последовательности символов, для этого в принятой последовательности символов обнаруживают синхронизирующую последовательность, далее выделяют помехоустойчивый код, затем осуществляют декодирование этого помехоустойчивого кода с обнаружением и исправлением ошибок в помехоустойчивом коде и далее восстановленную при декодировании кода информацию выдают получателю (Лагутенко О.И. Модемы. Справочник пользователя. Оформление А.Лурье. Спб. Лань. 1997, стр.184).
Недостатком этого способа является низкая помехоустойчивость, особенно в каналах связи с группированием ошибок, обусловленная тем, что количество ошибок, обнаруживаемых и исправляемых при декодировании кода, ограничено корректирующей способностью кода.
Наиболее близким к предлагаемому способу является способ (прототип) передачи и приема сообщений в системе связи, в соответствии с которым на передающей стороне исходную информацию кодируют помехоустойчивым кодом, формируют выходную последовательность, представляющую собой поразрядную сумму по модулю два помехоустойчивого кода и синхронизирующей последовательности. На приемной стороне для принятой последовательности символов вычисляют синдром, обнаруживают синхронизирующую последовательность и устанавливают цикловую синхронизацию помехоустойчивого кода. Затем вычисляют поразрядную сумму по модулю два принятой и синхронизирующей последовательностей, выделяют помехоустойчивый код, декодируют помехоустойчивый код и восстановленную в результате декодирования кода информацию выдают получателю (Болховитин Л.М., Журкин С.П., Квашенников В.В., Сосин П.А. Передача формализованных сообщений самосинхронизирующимся кодом с переменными параметрами. Техника средств связи, сер. ТПС, вып.8, 1990, стр.39).
Недостатком этого способа является низкая помехоустойчивость, поскольку при декодировании обнаруживают и исправляют ошибки в пределах, ограниченных корректирующей способностью кода. Корректирующая способность кода связана с минимальным кодовым расстоянием кода формулой
где to - количество ошибок, которые может обнаружить код,
tu - количество ошибок, которые может исправить код,
dmin - минимальное кодовое расстояние кода.
Для используемых на практике кодов dmin небольшое (<11), поэтому и корректирующая способность кода согласно формуле (1) будет небольшой (tu<6, to<10).
Цель изобретения - повышение помехоустойчивости приема информации за счет того, что количество ошибок в символах помехоустойчивого кода может превосходить его корректирующую способность.
Для достижения цели предложен способ, заключающийся в том, что на передающей стороне исходную информацию кодируют помехоустойчивым кодом, формируют выходную последовательность, представляющую собой поразрядную сумму по модулю два помехоустойчивого кода и синхронизирующей последовательности. На приемной стороне для принятой последовательности символов вычисляют синдром, обнаруживают синхронизирующую последовательность и устанавливают цикловую синхронизацию помехоустойчивого кода. Затем вычисляют поразрядную сумму по модулю два принятой и синхронизирующей последовательностей, выделяют помехоустойчивый код, декодируют помехоустойчивый код и восстановленную в результате декодирования кода информацию выдают получателю. Новым является то, что на передающей стороне системы связи выходную последовательность, представляющую собой поразрядную сумму по модулю два помехоустойчивого кода и синхронизирующей последовательности, рекуррентно продолжают. На приемной стороне системы связи вычисление синдрома для принятой последовательности символов выполняют в скользящем окне, длина которого больше длины информационной части кода. При обнаружении заранее известной комбинации синдрома определяют начало и конец помехоустойчивого кода, выделяют помехоустойчивый код и его рекуррентное продолжение и вычисляют синдром для остальных символов кода и его рекуррентного продолжения, предшествующих скользящему окну и следующих за скользящим окном. При необнаружении заранее известной комбинации синдрома скользящее окно смещают на один символ и вычисления повторяют сначала. При количестве нулевых компонент синдрома для остальных символов кода и его рекуррентного продолжения, предшествующих скользящему окну и следующих за скользящим окном, превышающем пороговое значение, восстанавливают информацию и выдают ее получателю. При количестве нулевых компонент синдрома для остальных символов кода и его рекуррентного продолжения, не превышающем пороговое значение, скользящее окно смещают на один символ и вычисления повторяют сначала. Причем для передачи сообщений используют помехоустойчивый циклический код, для рекуррентного продолжения кода применяют рекуррентные соотношения, задаваемые проверочным многочленом помехоустойчивого циклического кода, а для рекуррентного продолжения синхронизирующей последовательности - проверочные многочлены синхронизирующей последовательности.
В таблице приведена последовательность операций, иллюстрирующая процесс обработки исходной информации на передающей и входной информации на приемной сторонах системы связи.
Таблица | |
Передающая сторона | |
Кодирование информации | a1a2…ak→b1b2…bn |
Сложение кода и синхронизирующей последовательности | b1b2…bn ⊕ c1c2…cn→d1d2…dn |
Рекуррентное продолжение кода | d1d2…dn→d1d2…dn1 |
Канал связи | |
Наложение ошибок в канале связи | d1d2…dn1 ⊕ e1e2…en1→f1f2…fn1 |
Приемная сторона | |
1. Вычисление синдрома в скользящем окне длины k+r1 | f1f2…fk+r1→S1S2…Sr1 |
2. Проверка комбинации синдрома | Если S1S2…Sr1={Si}, to идти к 3, иначе идти к 1 |
3. Выделение кода | f1f2…fn1 ⊕ c1c2…cn→V1V2…Vn1 |
4. Вычисление синдрома для остальных символов кода | V1V2…VkVk+r1+1…Vn1→Sk+r1+1…Sn1 |
5. Подсчет числа нулевых компонент синдрома | Если Si=0, то j:=j+1, i=k+r1+1…n1 |
6. Сравнение числа нулевых компонент синдрома с пороговым значением | Если j>р1, то идти к 7, иначе идти к 1 |
7. Восстановление информации и выдача ее получателю | gmgm+1…gm+k-1 |
Предлагаемый способ передачи и приема сообщений в системах связи реализуется следующим образом.
На передающей стороне формируют помехоустойчивый код, например помехоустойчивый систематический двоичный циклический код. Для этого вначале исходное сообщение длины k двоичных символов, используя проверочные соотношения кода, преобразуют в помехоустойчивый код длины n двоичных символов.
Для описания процедуры кодирования исходную информацию представляют в виде информационного полинома а(х), коэффициентами которого являются двоичные символы исходной информационной последовательности.
Проверочную часть r(х) помехоустойчивого кода в полиномиальной форме записи записывают в виде
где g(x) порождающий полином помехоустойчивого циклического кода,
n - блоковая длина,
k - информационная длина кода.
Выражение (1) задает проверочные соотношения кода, с помощью которых вычисляют символы помехоустойчивого кода.
Помехоустойчивый циклический код b(х) длины n символов в полиномиальной форме, после вычисления проверочной части, записывают в виде
Далее помехоустойчивый циклический код b(х) рекуррентно продолжают до длины n1>n с помощью соотношения
где hj - коэффициенты проверочного многочлена
Затем символы рекуррентно продолженного помехоустойчивого циклического кода поразрядно складывают с символами рекуррентно продолженной синхронизирующей последовательности с(х).
В качестве синхронизирующей последовательности с(х) выбирают последовательность подходящей длины n1 с хорошими синхронизирующими свойствами, например, последовательность максимальной длины (код Рида - Маллера 1-го порядка). Хорошие синхронизирующие свойства означают, что последовательность имеет автокорреляционную функцию типа δ - функции. Рекуррентное продолжение синхронизирующей последовательности выполняют с помощью соотношений, аналогичных соотношениям (3).
Выходной последовательностью передающей части системы связи будет последовательность двоичных символов, представляющих собой поразрядную сумму по модулю два рекуррентно продолженного помехоустойчивого циклического кода и рекуррентно продолженной синхронизирующей последовательности.
Далее символы выходной последовательности d(x), преобразованные в сигнал, поступают в канал связи. В канале связи из-за помех возможно искажение передаваемого сигнала. Это может привести к тому, что в зависимости от величины уровня этих помех передаваемая последовательность будет принята с ошибками
На приемной стороне системы связи для последовательности f(x), поступающей на вход приемной части, вычисляют синдром помехоустойчивого циклического кода. Синдром вычисляют в скользящем окне приема, длина которого превышает информационную длину помехоустойчивого циклического кода. Для компонент синдрома справедливы соотношения, аналогичные соотношениям (3). Обозначим f0f1…fk-1fk…fk+r1-1 - символы последовательности, принятые в скользящем окне приема длины k+r1. Компоненты синдрома вычисляют по формуле
Для безошибочного участка приема ei=0 и fi=bi+ci и (6) запишется в виде
С учетом равенства (3) из (7) следует
Поэтому компоненты синдрома зависят только от символов синхронизирующей последовательности. Поскольку синхронизирующая последовательность является постоянной последовательностью для всех помехоустойчивых кодов, то и компоненты синдрома для безошибочной последовательности будут принадлежать некоторому множеству {si} заранее определенных синдромов. При необнаружении заранее известной комбинации синдрома скользящее окно приема сдвигают на один символ, то есть ожидают приема из канала нового символа и вычисления повторяют сначала. При обнаружении заранее известной комбинации синдрома {si}, в зависимости от этой комбинации, определяют начало и конец помехоустойчивого циклического кода и выделяют помехоустойчивый циклический код. Для этого по заранее составленной функциональной зависимости (функции решений) комбинации синдрома {si} и положения начала и конца кода и его рекуррентного продолжения определяют местоположение кода в принятой последовательности. Затем складывают принятую последовательность с рекуррентно продолженной синхронизирующей последовательностью
Далее вычисляют компоненты синдрома для остальных символов выделенного кода и его рекуррентного продолжения, предшествующих скользящему окну и следующих за скользящим окном. Для этого, считая первые k символов принятой в скользящем окне последовательности информационными, рассчитывают предполагаемые проверочные символы помехоустойчивого циклического кода, следующие за скользящим окном
где wi=νi для i=0…k-1.
В силу цикличности помехоустойчивого кода символы кода, которые предшествуют скользящему окну, будут совпадать с символами рекуррентного продолжения, следующими за скользящим окном, и отдельно их вычислять не требуется.
Компоненты синдрома вычисляют как поразрядную сумму по модулю два предполагаемых проверочных символов кода и принятых проверочных символов кода
После этого подсчитывают количество j нулевых компонент синдрома. Если количество j нулевых компонент синдрома больше порогового значения p1(j>р1), то восстанавливают информацию и выдают ее получателю. Символы wi получают на основе вычислений с неискаженными символами скользящего окна, а значит, эти символы являются неискаженными. Поэтому теперь для восстановления информации достаточно выделить информационные символы в последовательности wi. Местоположение информационных символов в последовательности wi определяют по величине комбинации синдрома {si}.
Если количество j нулевых компонент синдрома не больше порогового значения p1(j≤р1), то скользящее окно приема сдвигают на один символ и все описанные вычисления повторяют сначала.
Таким образом, для декодирования кода достаточно иметь неискаженный отрезок символов длины k+r1 и небольшое число j неискаженных символов (обычно 1-2 байта), дающих нулевые синдромы, число которых превосходит пороговое значение р1. Для реализации предлагаемого способа немаловажное значение имеет выбор оптимальных значений длины исходного неискаженного отрезка символов k+r1 и величины порогового значения p1. От этих величин зависит достоверность и помехоустойчивость способа. При увеличении r1 достоверность приема увеличивается, однако при этом одновременно уменьшается помехоустойчивость, поскольку увеличивается длина необходимого неискаженного окна приема. Аналогичное влияние на достоверность и помехоустойчивость оказывает величина порогового значения р1. Исходя из условия обеспечения необходимой достоверности приема не менее Рд величину суммы r1+р1 можно определять из равенства
Для РД=10-4 из формулы (12) получим r1+р1=14. Если r1=р1, то условием приема можно считать неискаженный прием в скользящем окне длины k+r1=k+7 и обнаружение 7 нулевых компонент синдрома, то есть почти 1 байт. На остальных местах помехоустойчивого циклического кода и его рекуррентного продолжения могут быть ошибки. Их максимальное число может достигать величины t=n1-k-r1-p1, что значительно превосходит число ошибок, которое задается минимальным кодовым расстоянием помехоустойчивого циклического кода. Тем более, что за счет рекуррентного продолжения помехоустойчивого циклического кода величину n1 можно увеличить и обеспечить необходимое число исправляемых кодом ошибок, а значит, необходимую помехоустойчивость.
В качестве примера рассмотрим систему связи, в которой передают сообщения, состоящие из 8 байт информации. Сообщения защищены помехоустойчивым циклическим кодом БЧХ(64,32) n=64, k=32, порождающим многочленом которого является многочлен 32-ой степени. В шестнадцатеричном коде этот многочлен представляют в виде g(x)=104C11DB7H. Минимальное кодовое расстояние кода равно 11, что позволяет исправлять только 5 случайных ошибок. На передающей стороне помехоустойчивый циклический код рекуррентно продолжен до длины n1=80. Поэтому для рассматриваемого способа количество ошибок может достигать величины t=n1-k-r1-p1=80-32-14=34. Однако при таком количестве ошибок для правильного приема должен быть один неискаженный участок символов длины 39 и еще по крайней мере 7 произвольно расположенных неискаженных символов.
Предлагаемый способ в отличие от прототипа обеспечивает обнаружение и исправление значительно большего числа ошибок в циклическом помехоустойчивом коде. Наиболее эффективно этот способ может использоваться в каналах связи с группированием ошибок. В таких каналах чаще появляются неискаженные участки последовательности символов, необходимые для реализации способа.
Достигаемым техническим результатом предлагаемого способа передачи и приема сообщений в системах связи является повышение помехоустойчивости принимаемой информации.
1. Способ передачи и приема сообщений в системе связи, заключающийся в том, что на передающей стороне исходную информацию кодируют помехоустойчивым кодом, формируют выходную последовательность, представляющую собой поразрядную сумму по модулю два помехоустойчивого кода и синхронизирующей последовательности, на приемной стороне для принятой последовательности символов вычисляют синдром, обнаруживают синхронизирующую последовательность, и устанавливают цикловую синхронизацию помехоустойчивого кода, затем вычисляют поразрядную сумму по модулю два принятой и синхронизирующей последовательностей, выделяют помехоустойчивый код, декодируют помехоустойчивый код и восстановленную в результате декодирования кода информацию выдают получателю, отличающийся тем, что сформированную на передающей стороне системы связи выходную последовательность, представляющую собой поразрядную сумму по модулю два помехоустойчивого кода и синхронизирующей последовательности, рекуррентно продолжают, на приемной стороне системы связи вычисление синдрома для принятой последовательности символов выполняют в скользящем окне, длина которого больше длины информационной части кода, при обнаружении заранее известной комбинации синдрома определяют начало и конец помехоустойчивого кода, выделяют помехоустойчивый код и его рекуррентное продолжение, вычисляют синдром для остальных символов кода и его рекуррентного продолжения, предшествующих скользящему окну и следующих за скользящим окном, при необнаружении заранее известной комбинации синдрома скользящее окно смещают на один символ и вычисления повторяют сначала, при количестве нулевых компонент синдрома для остальных символов кода и его рекуррентного продолжения, предшествующих скользящему окну и следующих за скользящим окном, превышающем пороговое значение, восстанавливают информацию и выдают ее получателю, при количестве нулевых компонент синдрома для остальных символов кода и его рекуррентного продолжения, не превышающем пороговое значение, скользящее окно смещают на один символ и вычисления повторяют сначала.
2. Способ по п.1, отличающийся тем, что для передачи сообщений используют помехоустойчивый циклический код и для рекуррентного продолжения кода применяют рекуррентные соотношения, задаваемые проверочным многочленом помехоустойчивого циклического кода, а для рекуррентного продолжения синхронизирующей последовательности - проверочные многочлены синхронизирующей последовательности.