RU2562435C1 - Способ кодирования-декодирования информации в системах передачи данных - Google Patents

Способ кодирования-декодирования информации в системах передачи данных Download PDF

Info

Publication number
RU2562435C1
RU2562435C1 RU2014105949/08A RU2014105949A RU2562435C1 RU 2562435 C1 RU2562435 C1 RU 2562435C1 RU 2014105949/08 A RU2014105949/08 A RU 2014105949/08A RU 2014105949 A RU2014105949 A RU 2014105949A RU 2562435 C1 RU2562435 C1 RU 2562435C1
Authority
RU
Russia
Prior art keywords
code
bits
block
crc
information
Prior art date
Application number
RU2014105949/08A
Other languages
English (en)
Other versions
RU2014105949A (ru
Inventor
Сергей Эрикович Сараджишвили
Юрий Сергеевич Хвостунов
Валентин Васильевич Хромов
Original Assignee
Открытое акционерное общество "Научно-производственное объединение "Импульс" (ОАО "НПО "Импульс")
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Открытое акционерное общество "Научно-производственное объединение "Импульс" (ОАО "НПО "Импульс") filed Critical Открытое акционерное общество "Научно-производственное объединение "Импульс" (ОАО "НПО "Импульс")
Priority to RU2014105949/08A priority Critical patent/RU2562435C1/ru
Publication of RU2014105949A publication Critical patent/RU2014105949A/ru
Application granted granted Critical
Publication of RU2562435C1 publication Critical patent/RU2562435C1/ru

Links

Images

Landscapes

  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

Изобретение относится к электросвязи и может быть использовано для передачи цифровой информации. Техническим результатом является снижение времени передачи сообщений. Способ заключается в том, что на передающей стороне к исходному сообщению добавляют циклическую контрольную сумму (CRC), полученный блок кодируют помехоустойчивым внешним кодом и внутренним кодом, первоначально в канал связи передают все информационные биты, затем передают биты CRC, после чего передают в канал результаты кодирования: проверочные биты внешнего кода и проверочные биты внутреннего кода БЧХ, после получения информационной последовательности бит на приемной стороне по ним вычисляют и проверяют CRC, в случае положительного результата сообщение передают получателю, в противном случае исправляют ошибочные блоки внешним кодом, в качестве которого используют блок контроля на четность, для этого восстанавливают j-ый блок из k бит посредством блока четности, после чего полученную последовательность проверяют по CRC, при положительном результате проверки принятое сообщение передают получателю, а при отрицательном - повторяют процедуру восстановления блоков, пока не будут проверены все J блоков, при отсутствии положительного результата выполняют операцию исправления ошибок внутренним кодом, для чего объединяют j-ю информационную k- битную последовательность с j-ой проверочной последовательностью кода БЧХ, декодируют j-ый блок, при исправлении выявленных ошибок вновь выполняют процедуру проверки CRC, а при отрицательном результате продолжают операцию исправления ошибок в последующих блоках до j=J. 2 ил.

Description

Изобретение относится к электросвязи и может быть применено для передачи цифровой информации управления по радиоканалу, например, в KB или УКВ диапазоне частот.
В подобных системах актуальными являются как задачи защиты передаваемых сообщений от случайных одиночных и длинных пакетов ошибок, вызванных различными помехами в канале связи, так и минимизация времени доставки сообщений до получателя.
Известен способ поблочной передачи слов цифровой информации (патент ЕПВ N0204635, 1986), включающий в себя на передающей стороне: кодирование каждого передаваемого К-символьного слова внешним блоковым кодом (N, К), где N-K число проверочных символов этого кода; перемежение символов каждых w(w>1) кодовых слов внешнего блокового кода (N, К); кодирование перемеженных символов w кодовых слов внешнего блокового кода (N, К) внутренним кодом (n, k), где n-k число проверочных символов этого кода; формирование кодового кадра из кодовых слов внутреннего кода (n, k); модуляцию сформированным кодовым кадром сигнала несущей частоты и передачу его по радиоканалу; на приемной стороне: прием на каждом приемнике передаваемого сигнала, его демодуляцию и выделение синхропосылок; декодирование кодовых слов внутреннего кода (n, k) с исправлением и/или обнаружением ошибок; деперемежение декодированных символов w кодовых слов внешнего блокового кода (N, К); декодирование w кодовых слов внешнего блокового кода (N, К) с исправлением и/или обнаружением ошибок; выдачу декодированного сообщения получателю.
Недостатком данного способа является ориентация его на передачу потока данных и большая задержка приема по причине перемежения.
Известен также способ кодирования-декодирования информации, описанный в патенте США №6374382, 2002 г., где используется каскадный код, внешний код которого - код PC, формирующий внешнюю кодовую последовательность на основе исходных данных, внутренний код - сокращенный блочный код (n, k), Способ передачи данных заключается в следующем. В режиме кодирования информация от источника данных поступает на внешний кодер PC, который обеспечивает внешнее кодирование данных. Данные от кодера PC поступают на внутренний кодер, который обеспечивает внутреннее кодирование данных. Закодированные данные поступают на модулятор и передаются по каналу связи как каскадный сигнал. В соответствии с первым вариантом реализации данного изобретения внутренний код представляет собой модифицированный код Хэмминга. В соответствии со вторым вариантом реализации данного изобретения внутренний код сформирован из двух сокращенных блочных последовательностей. Первая последовательность блочного кода состоит из восьми информационных бит и из контрольного бита четности. Вторая последовательность блочного кода формируется из остальных информационных бит и трех контрольных бит четности. В режиме декодирования информация поступает с демодулятора на внутренний декодер, который производит декодирование принятого внутреннего кода, далее декодер PC производит декодирование внешнего кода. В данной системе используется в качестве внутреннего кода короткий двоичный код, исправляющий однократные ошибки, но если в принятых словах появятся две или более ошибок, то декодер не сможет декодировать данные слова, что приведет к появлению ошибочных и стертых символов в кодовых словах внешнего кода. Внешний код - код Рида-Соломона с минимальным расстоянием d позволяет декодировать любую конфигурацию, содержащую v ошибок t стираний, при условии что в случае невыполнения этого неравенства PC декодер не сможет правильно декодировать информационную последовательность. Это приведет к потере информации, что недопустимо в системе передачи данных без обратной связи.
Недостатком данного способа является относительно невысокая вероятность правильного приема сообщений и большая задержка их приема.
Наиболее близким к заявляемому способу является способ кодирования-декодирования, представленный в патенте РФ на ИЗ №2310273, 2007 г. В этом способе на передающей стороне к блоку исходной информации добавляют циклическую контрольную сумму, полученный блок кодируют внешним кодом Рида-Соломона (PC) и затем внутренним кодом. Закодированный блок модулируют и передают в канал. После демодулятора принятый блок информации декодируют внутренним кодом. Последовательность декодированных и стертых кодовых слов внутреннего кода запоминают. Если декодирование кодового слова внутреннего кода невозможно, то это некорректируемое кодовое слово сохраняют. Далее декодируют внешний код PC последовательности декодированных и стертых кодовых слов внутреннего кода и вычисляют и проверяют циклическую контрольную сумму упомянутой информационной последовательности. При положительном результате проверки CRC информацию выдают получателю сообщений. При отрицательном результате проверки производят восстановление стертых слов внутреннего кода последовательности. Восстановление стертых слов внутреннего кода и декодирования внешнего кода повторяют до тех пор, пока проверка CRC не даст положительный результат.
Недостатком ближайшего аналога является сложность технической реализации и большая задержка приема блока данных, последнее при передаче сообщений в виде команд управления недопустимо.
Технической задачей изобретения является снижение времени передачи сообщений за счет использования комбинации трех кодов, снижающих вероятность ошибочного приема и изменения очередности передаваемых в канал информационных и проверочных бит.
Поставленная задача решается способом кодирования-декодирования информации в системах передачи данных, заключающимся в том, что на передающей стороне к исходному сообщению из К бит добавляют циклическую контрольную сумму (CRC) из R бит, полученный блок из N=K+R бит кодируют помехоустойчивым внешним кодом Рида-Соломона в поле GF(q), где q - алфавит кода, и внутренним кодом Голея, закодированный блок информации (сообщение) направляют в канал связи, принятое сообщение декодируют, причем первоначально декодируют внутренний код, а затем внешний код, вычисляют и проверяют CRC, в случае положительного результата проверки сообщение передают получателю, а при отрицательном повторяют процедуру декодирования с исправлением ошибок, отличающимся тем, что после кодирования блока из N бит первоначально в канал связи передают все информационные биты, затем передают биты CRC, после чего передают в канал результаты кодирования проверочные биты внешнего кода и проверочные биты внутреннего (n, k) кода Боуза - Чоудхури - Хоквингема (БЧХ), где n - длина кода в битах, k - число информационных бит, после получения информационной последовательности бит на приемной стороне по ним вычисляют и проверяют CRC, в случае положительного результата сообщение передают получателю, в противном случае исправляют ошибочные блоки внешним кодом, в качестве которого используют k-битный блок контроля на четность по модулю два m J + 1 = j = 1 J m j mod 2
Figure 00000001
, где mj=(a j,1 a j,2a J,sa j,k), a j,k - информационные биты внутреннего кода, j=1, 2, …J, J=N/k - число блоков внутреннего кода, составляющих принятое сообщение, для чего восстанавливают j-ый блок из k бит посредством блока четности m j * = m J + 1 + s j J m s
Figure 00000002
, после чего полученную последовательность из N бит проверяют по CRC, при положительном результате проверки принятое сообщение передают получателю, а при отрицательном - повторяют процедуру восстановления блоков, пока не будут проверены все J блоков, а при отсутствии положительного результата выполняют операцию исправления ошибок внутренним кодом БЧХ от j=1 до j=J, для чего объединяют j-ю информационную k-битную последовательность с j-ой проверочной последовательностью кода БЧХ, декодируют j-ый блок, при исправлении выявленных ошибок вновь выполняют процедуру проверки CRC, а при отрицательном результате продолжают операцию исправления ошибок в последующих блоках до j=J.
Заявленный способ поясняется чертежами, на которых показано: на фиг. 1. - структура системы кодирования-декодирования информации, на фиг. 2. - возможные моменты приема сообщения и формулы, посредством которых вычисляются вероятности приема в эти моменты времени. Система состоит из последовательно соединенных блока вычисления и добавления циклической контрольной суммы CRC 1, блока кодирования информации внешним кодом 2, блока кодирования внутренним кодом 3, модулятора 4, канала связи 5, демодулятора 6, блока вычисления и проверки циклической контрольной суммы CRC 7, блока декодирования внешнего кода 8, блока декодирования внутреннего кода 9. Блок вычисления и проверки циклической контрольной суммы 7 имеет три выхода, второй выход задействуется после приема бит информации и проверочных бит внешнего кода, а третий выход - по мере приема проверочных бит внутреннего кода.
Предлагаемая система обеспечивает кодирование информации тремя кодами, кодом CRC для обнаружения ошибок в сообщении, внешнего кода (N, К) и внутреннего (n, k), где n и N - общее число символов; k и K - число информационных символов.
Для вычисления CRC применяют алгоритм Cyclic Redundancy Codes (Росс Н. Вильямс. Элементарное руководство по CRC-алгоритмам обнаружения ошибок. FTP: ftp.adelaide.edu.au/pub/rocksoft/crc_v3.txt_1993). Этот алгоритм представляет собой высокоэффективное средство обнаружения ошибок. Благодаря использованию CRC возможно определение искажений данных, так как изменение данных приводит к изменению CRC. В качестве примера в предлагаемом способе предлагается CRC-16-CCITT. Контрольная сумма 16-ти битовая является остатком от деления сдвинутой на 16 разрядов информационной последовательности на образующий полином 16-ой степени (1).
В качестве внутреннего кода используется код БЧХ (например - Голея (23, 12, 7), исправляющий все ошибки веса три и менее на кодовом слове из 23-х бит). Алгоритмы кодирования и декодирования кодами БЧХ известны, их осуществляют как аппаратными средствами, так и программно. Декодирование производят, например, с помощью декодера Меггитта, который подробно описан (Блейхут Р. Теория и практика кодов, контролирующих ошибки. М.: Мир, 1986).
Внешний код - контроль на четность (наиболее простой вариант кода PC над полем GF()), - позволяет исправлять любую пачку ошибок длиной не более k бит. Исправление j-го k-битного слова внешнего кода посредством (J+1)-го производится следующим образом: j-ый блок из k бит заменяется на k-битный блок по mod2, где k - информационные биты внутреннего кода s-го слова. Полученная последовательность из N бит проверяется по CRC посредством деления на образующий полином 16-ой степени (1). Если результат деления - без остатка, то это означает, что ошибки в блоке исправлены.
На Рис.2 приведены временные моменты возможного приема сообщения и формулы, согласно которым вычисляются вероятности приема сообщения именно в этот момент.
Минимальная задержка приема составляет J*k бит и происходит в момент времени J, если на интервале длиной J*k бит нет ошибок. Вероятность такой ситуации равна P J = p 0 J
Figure 00000003
, р0=(1-p)k, где p - вероятность ошибки бита, р0 - - вероятность отсутствия ошибок на блоке из k бит. Следующий момент приема (через k бит) происходит, если ошибки имеются в одном из первых J блоков по k бит и нет ошибок в (J+1)-ом блоке. Вероятность такой ситуации P J + 1 = J * p 0 J 1 * ( 1 p 0 )
Figure 00000004
. Последующие (J+1) моментов приема происходят через каждые r бит за счет исправления ошибок кодом БЧХ. Вероятность приема сообщения в момент времени rj равна P r j = ( j 1 ) * p л * ( p 0 + p и ) j 2 * p J + 1 j * p и + ( J + 1 j ) * ( p 0 + p и ) j 1 * ( 1 p 0 ) J j * p 0 * p л
Figure 00000005
. Максимальная задержка приема составляет - k*(J+1) бит, вероятность приема с такой задержкой равна PrJ+1=J*(p0+pи)J-2*pи*pи, где pи - вероятность того, что на блоке из k бит ошибки есть, но они исправлены кодом БЧХ, pл=1-p0-pи - вероятность того, что на блоке из k бит ошибки есть, но они не исправлены кодом БЧХ.
Пусть сообщение является командой из 128 бит, в качестве кода БЧХ используется код Голея. Тогда с учетом контрольной суммы CRC-16 - это 12 блоков по 12 бит, к ним добавляется 13-ый блок, равный сумме по модулю 2 предыдущих 12-ти блоков. Каждый из 13-ти блоков последовательно кодируется кодом Голея, проверочные биты (их 11*13=143) передаются после информационных. Для реальных коротковолновых каналов вероятность ошибочного приема бита p часто равна 0,01-0,05. При использовании предлагаемого способа возможен прием сообщения с указанными ниже задержками и вероятностями.
Figure 00000006
Расчет вероятностных характеристик показывает преимущество данного способа над другими подобными. Можно констатировать, что особенно эффективным является применение предлагаемого способа кодирования с восстановлением блоков внутреннего кода по блоку четности и исправлением независимых ошибок кодом Голея при передаче коротких команд управления по каналам, в которых вероятность ошибки бита сообщения меньше 0,03, позволяющее иметь распределенный по времени прием.

Claims (1)

  1. Способ кодирования-декодирования информации в системах передачи данных, заключающийся в том, что на передающей стороне к исходному сообщению из K бит добавляют циклическую контрольную сумму (CRC) из R бит, полученный блок из N=K+R бит кодируют помехоустойчивым внешним кодом Рида-Соломона в поле GF(q), где q - алфавит кода, и внутренним кодом Голея, закодированный блок информации (сообщение) направляют в канал связи, принятое сообщение декодируют, причем первоначально декодируют внутренний код, а затем внешний код, вычисляют и проверяют CRC, в случае положительного результата проверки сообщение передают получателю, а при отрицательном повторяют процедуру декодирования с исправлением ошибок, отличающийся тем, что после кодирования блока из N бит первоначально в канал связи передают все информационные биты, затем передают биты CRC, после чего передают в канал результаты кодирования проверочные биты внешнего кода и проверочные биты внутреннего (n, k) кода Боуза - Чоудхури - Хоквингема (БЧХ), где n - длина кода в битах, k - число информационных бит, после получения информационной последовательности бит на приемной стороне по ним вычисляют и проверяют CRC, в случае положительного результата сообщение передают получателю, в противном случае исправляют ошибочные блоки внешним кодом, в качестве которого используют k битный блок контроля на четность по модулю два m J + 1 = j = 1 J m j mod 2
    Figure 00000001
    , где mj=(a j,1 a j,2a J,sa j,k), a j,k - информационные биты внутреннего кода, j=1, 2, …J, J=N/k - число блоков внутреннего кода, составляющих принятое сообщение, для чего восстанавливают j-ый блок из k бит посредством блока четности, после чего полученную последовательность из N бит проверяют по CRC, при положительном результате проверки принятое сообщение передают получателю, а при отрицательном - повторяют процедуру восстановления блоков, пока не будут проверены все J блоков, а при отсутствии положительного результата выполняют операцию исправления ошибок внутренним кодом БЧХ от j=1 до j=J, для чего объединяют j-ю информационную k-битную последовательность с j-ой проверочной последовательностью кода БЧХ, декодируют j-ый блок, при исправлении выявленных ошибок вновь выполняют процедуру проверки CRC, а при отрицательном результате продолжают операцию исправления ошибок в последующих блоках до j=J.
RU2014105949/08A 2014-02-18 2014-02-18 Способ кодирования-декодирования информации в системах передачи данных RU2562435C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2014105949/08A RU2562435C1 (ru) 2014-02-18 2014-02-18 Способ кодирования-декодирования информации в системах передачи данных

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2014105949/08A RU2562435C1 (ru) 2014-02-18 2014-02-18 Способ кодирования-декодирования информации в системах передачи данных

Publications (2)

Publication Number Publication Date
RU2014105949A RU2014105949A (ru) 2015-08-27
RU2562435C1 true RU2562435C1 (ru) 2015-09-10

Family

ID=54015315

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2014105949/08A RU2562435C1 (ru) 2014-02-18 2014-02-18 Способ кодирования-декодирования информации в системах передачи данных

Country Status (1)

Country Link
RU (1) RU2562435C1 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2617929C1 (ru) * 2015-12-01 2017-04-28 Акционерное общество "Акустический институт имени академика Н.Н. Андреева" Способ помехоустойчивого кодирования и декодирования подлежащих передаче цифровых данных

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110576884B (zh) * 2019-09-05 2021-09-28 阿纳克斯(苏州)轨道系统有限公司 一种用于轨道交通的车辆rs485级联通讯方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374382B1 (en) * 1998-12-15 2002-04-16 Hughes Electronics Corporation Short block code for concatenated coding system
GB2396786A (en) * 2002-12-27 2004-06-30 Phyworks Ltd Data encoding/decoding for fibre optic communication
RU2310273C2 (ru) * 2005-10-24 2007-11-10 Открытое акционерное общество "Российский институт мощного радиостроения" Способ кодирования-декодирования информации в системах передачи данных
RU2420870C1 (ru) * 2009-12-28 2011-06-10 Открытое акционерное общество "Российский институт мощного радиостроения" Способ кодирования-декодирования каскадной кодовой конструкции в системах передачи данных

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374382B1 (en) * 1998-12-15 2002-04-16 Hughes Electronics Corporation Short block code for concatenated coding system
GB2396786A (en) * 2002-12-27 2004-06-30 Phyworks Ltd Data encoding/decoding for fibre optic communication
RU2310273C2 (ru) * 2005-10-24 2007-11-10 Открытое акционерное общество "Российский институт мощного радиостроения" Способ кодирования-декодирования информации в системах передачи данных
RU2420870C1 (ru) * 2009-12-28 2011-06-10 Открытое акционерное общество "Российский институт мощного радиостроения" Способ кодирования-декодирования каскадной кодовой конструкции в системах передачи данных

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2617929C1 (ru) * 2015-12-01 2017-04-28 Акционерное общество "Акустический институт имени академика Н.Н. Андреева" Способ помехоустойчивого кодирования и декодирования подлежащих передаче цифровых данных

Also Published As

Publication number Publication date
RU2014105949A (ru) 2015-08-27

Similar Documents

Publication Publication Date Title
CN108702161B (zh) 用于极化编码和解码的系统和方法
US10992416B2 (en) Forward error correction with compression coding
US20170155405A1 (en) Signature-enabled polar encoder and decoder
JPS61500884A (ja) 多数のソ−スからのメッセ−ジの受信を改良する方法
WO2004068715A2 (en) Systems and processes for fast encoding of hamming codes
RU2310273C2 (ru) Способ кодирования-декодирования информации в системах передачи данных
US8032812B1 (en) Error correction decoding methods and apparatus
KR20010057145A (ko) Xor 코드, 이를 이용한 직렬 연접 부호기 및 복호기
CN102301603B (zh) 使用ldpc准循环码进行编码和解码
RU2562435C1 (ru) Способ кодирования-декодирования информации в системах передачи данных
RU2295196C1 (ru) Способ контроля качества канала связи
Potey et al. Error Detection and Correction Capability for BCH Encoder using VHDL
RU2500074C1 (ru) Способ кодовой цикловой синхронизации с мягкими решениями
CN113225157B (zh) 用于无线局域网络的编码方法、相关发送装置及接收装置
RU2295198C1 (ru) Способ кодовой цикловой синхронизации
Mergu Performance analysis of Reed-Solomon codes concatenated with convolutional codes over AWGN channel
Dong et al. Implementation of error-correcting encoded SAW RFID tags
RU2419966C2 (ru) Способ декодирования помехоустойчивых каскадных кодов по наиболее достоверным символам внешнего кода
CA3072857C (en) Forward error correction with compression coding
RU2420870C1 (ru) Способ кодирования-декодирования каскадной кодовой конструкции в системах передачи данных
Di The evaluation and application of forward error coding
RU2759801C1 (ru) Способ кодовой цикловой синхронизации для каскадного кода при применении жестких решений
RU2797444C1 (ru) Способ устойчивой кодовой цикловой синхронизации при применении жестких и мягких решений
RU2210870C2 (ru) Способ адаптивной кодовой цикловой синхронизации
RU2664409C1 (ru) Способ кодовой цикловой синхронизации с мягкими решениями