Способ кодирования и декодирования данных для системы радиовещательной передачи цифровых сообщений

Реферат

 

Изобретение относится к вычислительной технике и технике связи. Его использование в системах массового обслуживания позволяет передавать групповую и индивидуальную цифровую информацию больших объемов с высокой достоверностью по радиоканалу. Этот результат достигается благодаря тому, что применяемая кодовая конструкция позволяет активно бороться с одиночными ошибками и длинными пакетами ошибок. А также осуществлять кадровую синхронизацию. Комбинации K1 символов остальных кодовых слов кадра используются для передачи индивидуального и/или группового адреса, необходимого для кодового разделения групп абонентов и соответствующего уникальному сочетанию локаторов позиций символов внешнего кода РС, применяемого для кодирования и декодирования информации, предназначенной определенной группе абонентов. 2 табл., 9 ил.

Изобретение относится к вычислительной технике и технике связи и может быть применено при создании систем массового обслуживания для передачи групповой и индивидуальной цифровой информации больших объемов по радиоканалу, например, в УКВ-диапазоне частот.

В подобных системах актуальными являются как вопросы кадровой синхронизации и кодового разделения групп абонентов, так и задачи защиты передаваемых сообщений от случайных одиночных и длинных пакетов ошибок, вызванных различными помехами в канале связи.

Известны системы кодирования и декодирования с исправлением ошибок, использующие сложные кодовые конструкции, такие коды-призведения двух линейных кодов с различными кодовыми расстояниями и сверткой части кодированной информации с третьим линейным кодом (патент ЕПВ N 0471085, кл. H 03 M 13/00, 1992), либо многоуровневое кодирование относительно слабым кодом с исправлением ошибок с последующим разделением избыточных символов на части и кодированием каждой из этих частей своим кодом с исправлением ошибок (патент ЕПВ N 0458468, кл. H 03 M 13/00, 1991). Все эти способы весьма сложны в реализации.

Наиболее близким к заявляемому является способ поблочной передачи слов цифровой информации (патент ЕПВ N 0204635, кл. H 03 M 13/00, 1986), включающий в себя на передающей стороне: - кодирование каждого передаваемого K-символьного слова внешним блоковым кодом (N, K), где N-K - число проверочных символов этого кода; - перемежение символов каждых W (W > 1) кодовых слов внешнего блокового кода (N, K); - кодирование перемеженных символов W кодовых слов внешнего блокового кода (N, K) внутренним кодом (n, k), где n-k - число проверочных символов этого кода; - формирование кодового кадра из кодовых слов внутреннего кода (n, k); - модуляцию сформированным кодовым кадром сигнала несущей частоты и передачу его по радиоканалу; на приемной стороне: - прием на каждом приемнике передаваемого сигнала, его демодуляцию и выделение синхропосылок; - декодирование кодовых слов внутреннего кода (n,k) с исправлением и/или обнаружением ошибок; - деперемежение декодированных символов W кодовых слов внешнего блокового кода (N,K); - декодирование W кодовых слов внешнего блокового кода (N,K) с исправлением и/или обнаружением ошибок; - выдачу декодированного сообщения получателю.

Недостатком данного способа является необходимость использования специальных синхропосылок в каждом блоке кодового кадра для обеспечения устойчивого приема и правильного декодирования передаваемой информации, а также специальных идентифицирующих посылок в каждом блоке кодового кадра. Это снижает объем передаваемой информации.

Для преодоления этого недостатка в способе кодирования и декодирования данных для системы радиовещательной передачи цифровых сообщений, включающем на передающей стороне: - кодирование каждого передаваемого K-символьного слова внешним блоком кодом (N, K), где N-K - число проверочных символов этого кода; - перемежение символов каждых W (W > 1) кодовых слов внешнего блокового кода (N, K); - кодирование перемеженных символов W кодовых слов внешнего блокового кода (N, K) внутренним кодом (n, k), где n-k - число проверочных символов этого кода; - формирование кодового кадра из кодовых слов внутреннего кода (n,k); - модуляцию сформированным кодовым кадром сигнала несущей частоты и передачу его по радиоканалу; на приемной стороне: - прием на каждом приемнике передаваемого сигнала, его демодуляцию и выделение синхропосылок; - декодирование кодовых слов внутреннего кода (n,k) с исправлением и/или обнаружением ошибок; - деперемежение декодированных символов W кодовых слов внешнего блокового кода (N,K); - декодирование W кодовых слов внешнего блокового кода (N,K) с исправлением и/или обнаружением ошибок; - выдачу декодированного сообщения получателю, на передающей стороне - в качестве внешнего блокового кода (N,K) используют код (N,K) Рида-Соломона (PC) в поле GF(q) (q - алфавит кода), определенное сочетание наборов локаторов символьных позиций которого соответствует индивидуальным и/или групповым адресам приемников, которым предназначено данное информационное сообщение, при этом осуществляется несистематическое кодирование каждого передаваемого слова; - при кодировании внутренним кодом (n,k) каждое полученное кодовое слово дополняют проверкой на четность; - в качестве внутреннего кода (n,k) используют код (n, k+k1) Боуза-Чоудхури-Хоквингема (БЧХ), k символами которого кодируют символы кода (N,K) PC, а k1 символов кода (n, k+k1) БЧХ соответствуют номеру смежного класса кода (n,k) БЧХ, вложенного в код (n,k+k1) БЧХ; - кодовый кадр формируют из N блоков по кодовых слов кода (n, k+k1) БЧХ, причем в первых р (p<mN) кодовых словах кодового кадра упомянутые k1 символов кода (n, k+k1) БЧХ соответствуют порядковым номерам этих кодовых слов в кодовом кадре, а в остальных mN-p кодовых словах кодового кадра упомянутые k1 символов кода (n, k+k1) БЧХ соответствуют индивидуальным и/или групповым адресам приемников, которым предназначено данное информационное сообщение, на приемной стороне: - после демодуляции принятого сигнала находят кодовые слова кода (n, k+k1) БЧХ с нулевыми синдромами; - декодируют порядковые номера таких кодовых слов по k1 символам кода (n, k+k1) БЧХ, определяющим на передающей стороне номера смежных классов кода (n,k) БЧХ, вложенного в код (n,k+k1) БЧХ; - измеряют временные интервалы между такими кодовыми словами; - сравнивают измеренные временные интервалы с заранее заданными интервалами между кодовыми словами с декодированными порядковыми номерами; - при несоответствии измеренных временных интервалов заранее заданным повторяют на приемной стороне вышеперечисленные действия; - при соответствии измеренных временных интервалов заранее заданным выделяют по кодовым словам с декодированными порядковыми номерами, используемым в качестве синхропосылки, начало данного кодового кадра, а также p первых кодовых слов данного кодового кадра; - находят среди остальных mN-p кодовых слов данного кодового кадра кодовые слова кода (n, k+k1) БЧХ с нулевыми синдромами; - декодируют индивидуальный или групповой адрес приемника путем определения для таких кодовых слов номеров смежных классов кода (n, k) БЧХ, вложенного в код (n, k+k1) БЧХ, по соответствующим k1 символам этого кода в кодовых словах с нулевыми синдромами; - сравнивают декодированный индивидуальный или групповой адрес приемника с набором адресов, доступных для данного приемника; - при совпадении декодированного адреса приемника с одним из адресов такого набора декодируют в N блоках данного кодового кадра каждые m кодовых слов кода (n, k) БЧХ, вложенного в используемый на передающей стороне код (n, k+k1) БЧХ, в смежных классах, номера которых определены для первых p кодовых слов в кодовом кадре их порядковыми номерами, а для остальных mN-p кодовых слов кодового кадра - декодированным адресом приемника; - при деперемежении декодированных символов W кодовых слов внешнего кода (N, K) PC стирает те из них, для которых при декодировании кода (n, k) БЧХ получены отказы от декодирования; - декодируют W кодовых слов внешнего кода (N, K) PC по нестертым позициям, используя то сочетание набора локаторов символьных позиций, которым соответствует декодированный индивидуальный или групповой код принятого сообщения, после чего и выдают декодированное информационное сообщение получателю.

Особенностью данного способа является то, что набор символов нестертых позиций для декодирования каждого из W кодовых слов внешнего кода (N, K) PC осуществляется по той группе из K позиций, символы которых были получены из слов БЧХ, принятых с меньшим количеством ошибок в слове.

Еще одной особенностью данного способа является метод декодирования внешнего кода (N, K) PC, заключающийся в предварительном отыскивании двух матриц размерностью K K, обратных соответственно двум частям, на которых разбита порождающая матрица PC кода, и перемножении принятого слова кода PC на ту из двух обратных матриц, для формирования которой использовались элементы поля, соответствующие нестертым позициям принятого слова кода PC.

Третья особенность данного способа заключается в применении кода с повторениями для передачи индивидуального или группового адреса, что на передающей стороне осуществляется кодированием каждой из групп кодовых слов, на которые разбиты (mN-p) кодовых слов кадра, символами индивидуального или группового кода, и в применении на приемной стороне мягкого декодирования переданного кода по всем группам кодовых слов, каждой из которых присваивается определенная надежность, величина которой зависит от количества стертых кодовых слов в данной группе.

Приведенная совокупность существенных признаков способа неизвестна из существующего уровня техники ни в целом, ни в своей отличительной от прототипа части. Поэтому данное предложение удовлетворяет, по мнению заявителя, условиям патентоспособности "новизна" и "изобретательский уровень".

На фиг. 1 показана организация группового кодирования для радиовещательной передачи цифровых сообщений; на фиг. 2 - структура кадров, из которых состоит пакет передаваемых сообщений; на фиг. 3 - способ формирования блоков кадра; на фиг. 4 - способ размещения кодовых слов в кадре, используемых для осуществления кадровой синхронизации; на фиг. 5 - способ формирования кодовых слов в кадре; на фиг. 6 - сдвиговый регистр для умножения принимаемой последовательности символов на проверочный многочлен кода (31, 16) БЧХ; на фиг. 7 - процесс поиска синхронизации по словам БЧХ (n, k+k1), имеющим нулевые синдромы; на фиг. 8 - структурная схема устройства кодирования и передачи цифровой информации; на фиг. 9 - структурная схема устройства приема и декодирования цифровой информации.

Для повышения достоверности передачи информации по радиоканалу используется помехоустойчивое кодирование. Применяется каскадный код с внешним кодом Рида-Соломона (РС) и внутренним кодом Боуза-Чоудхури-Хоквингема (БЧХ), причем слова кода БЧХ обеспечивают кадровую синхронизацию. Применяемая кодовая конструкция позволяет активно бороться как с независимыми одиночными ошибками, так и с длинными пакетами ошибок и рэлеевскими замираниями.

Предлагаемый способ позволяет передавать большие массивы информации как одному абоненту, так и группе абонентов. Информационные сообщения могут делиться по каким-либо признакам и видам информации и передаваться различным группам абонентов, состоящим из строго определенных совокупностей адресатов. Кодовое разделение абонентов по группам дает возможность осуществить прием определенного вида информации абонентам только той группы, которой она была предназначена, вызывая при этом доступ к ней всем другим абонентам системы. Каждый абонент системы может входить в одну, несколько или все группы абонентов в зависимости от необходимости получения им спектра информационных сообщений. За каждым видом передаваемой информации закреплен уникальный код, называемый групповым адресом, который передается в радиосообщении в закодированном виде, и является своеобразным ключом при декодировании данного сообщения на приемной стороне.

Для передачи информации по радиоканалу применяются сигналы сложной структуры, позволяющие осуществить пакетную передачу данных (фиг. 1). Пакет состоит из набора кадров, количество которых в пакете зависит от объема передаваемой информации. В кадрах содержится закодированная информация и групповой адрес, определяющий ту группу абонентов, которой предназначена данная информация.

Каждому индивидуальному или групповому адресу ставится в соответствие определенное сочетание набора локаторов позиций, используемого при кодировании символов информационного сообщения внешним кодом PC и представляющего собой некоторую порождающую матрицу из набора порождающих матриц соответствующих всевозможным индивидуальным или групповым адресам и определяющих вид передаваемой информации. Всего различных сочетаний наборов локаторов, а следовательно, и совокупности индивидуальных и групповых адресов в системе может быть до M = CNq, например, при использовании кода (96,48) PC в поле GF(28), где N и q принимают соответственно значения 96 и 256, число адресов в системе может доходить до M = C96256= 1073. В дальнейшей будем пользоваться только термином "групповой адрес", учитывая, что индивидуальным может быть любой групповой адрес, соответствующий единственному абоненту в данной группе.

Каждый абонент системы снабжается одной или несколькими, в зависимости от доступа к различным видам информационных сообщений, матрицами, обратными порождающим, каждой из которых соответствует определенный групповой адрес.

Приемниками абонентов выделяется групповой адрес переданного сообщения, сравнивается с имеющимся набором групповых адресов, и, если таковой находится, то происходит декодирование информации с использованием матрицы, обратной порождающей, соответствующей принятому групповому адресу. Так, сообщение с групповым адресом i2 (фиг. 1) получает группа, состоящая из первого и второго абонентов, сообщение с групповым адресом i5 получает группа, состоящая из первого и третьего абонентов, и т.д. В зависимости от объема передаваемой информации сообщение может в себя включать от одного до необходимого числа кадров.

Кадры пакета имеют одинаковую структуру (фиг. 2), каждая из которых состоит из N блоков. Каждый блок содержит m кодовых слов.

Кодирование символов информационного сообщения внешним кодом осуществляется следующим образом. Данные на передающей стороне разбиваются на порции по K w log2q бит в каждой, где K и q - соответственно количество информационных символов и алфавит внешнего кода PC кодовой конструкции, используемой для формирования одного кадра. Каждые K информационных символов из W групп кодируются внешним кодом (N, K) PC, причем сочетание набора локаторов позиций в порождающей матрице соответствует определенному групповому адресу абонентов, которым предназначена данная информация.

Применяемый для кодирования код PC используется в несистематическом виде, и алгоритм кодирования заключается в перемножении информационного вектора а = (A0, A1,..., АK-1), содержащего K информационных символов, на порождающую матрицу G, элементами которой являются степени локаторов позиций Z0, Z1, ..., ZN-1: (A0, A1, ..., AK-1) G = (U0, U1, ..., UN-1), (1) где Z0, Z1, ..., ZN-1 - различные ненулевые элементы поля GF(q); U0 , U1, ..., UN-1 - символы кодового слова.

Порождающая матрица G из (1) делится на две G1 и G2 по одинаковому количеству K локаторов в каждой, и для нахождения символов кодового слова u = (U0, U1, ..., UN-1), разделенных на две равные группы, составляющие вектора u1 = (U0, U1, ..., UK-1) и u2 = (UK, UK+1, ..., UN-1), информационный вектор а умножается на эти две матрицы G1 и G2, что эквивалентно умножению на матрицу G: aG1=u1, aG2=u2, (2) где Каждая из этих матриц G1 и G2 содержит степени K локаторов позиций символов кодового слова.

С целью защиты передаваемых сообщений от длинных пакетов ошибок и рэлеевских замираний, возникающих в канале связи, применяется перемежение символов W кодовых слов кода PC, из которых выделяются группы символов для формирования N блоков (табл. 1).

Каждая группа символов разбивается на m частей, каждая из которых используется для формирования m кодовых слов одного из блоков. На фиг. 3 показан способ использования символов групп из табл. 1 для формирования кодовых слов каждого из N блоков кадра. В качестве примера на фиг. 3 для формирования каждого кодового слова кадра берутся два символа внешнего кода PC.

Кодовые слова блоков получают кодированием одного или нескольких символов внешнего кода PC внутренним кодом БЧХ, позволяющим исправлять и обнаруживать несколько ошибок в слове.

В качестве внутреннего кода используется двоичный код БЧХ с блоковой длиной n, исправляющий t ошибок, который строится как циклический код, порождающий многочлен которого равен произведению различных минимальных многочленов для элементов , 2, ..., 2t. Для осуществления кадровой синхронизации применяется код (n,k+k1) БЧХ, где k информационных символов представляют собой символы внешнего кода PC, а k1 символов несут в себе информацию о порядковом номере кодового слова в кадре, причем кодом (n,k+k1) кодируются первые p=qm+r кодовых слов кадра, занимающие в общем случае целиком q блоков и часть q+1 блока (фиг. 4). Остальные кодовые слова блоков кадра получают кодированием символов внешнего кода PC кодом БЧХ (n,k+k1), где k1 символов используются для задания группового адреса.

В качестве примера рассмотрим код БЧХ с n=31, k=16 и g(x)= M1(x)M3(x)M5(x), где M1(x)=1+x2+x5, M3(x)=1+x2+x3+x4+x5, M5(x)= 1+x+x2+x4+x5 минимальные многочлены соответственно для элементов , 3, 5. Тогда синдромы S1, S3, S5 могут быть получены из следующих соотношений: где r1(x) - остаток от деления принятого кодового слова, записанного в виде полинома n-1 степени c(x) на минимальный многочлен M1(x), соответствующий одному из элементов , 3, 5; r1(x)=c(x)mod M1(x), r3(x)=c(x)mod M3(x), r5(x)=c(x)mod M5(x).

На передающей стороне для кодирования используется код БЧХ (31, 21), в который вложено 32 кода (31, 16), номера смежных классов которого используются как для передачи порядковых номеров кодовых слов в кадре, так и для передачи группового адреса, и определяются дополнительными информационными символами k1= 5 в коде (31, 21), k=16 информационных символов которого используются для кодирования двух восьмиразрядных символов внешнего кода. Причем кодирование кодом (31, 21) осуществляется таким образом, что лидеры смежных классов, определяющие номера смежных классов кода (31, 16), находятся по синдромам S1 из (3).

Первые p=30 кодовых слов кадра (фиг. 5) формируются путем прибавления к словам кода (31, 16) БЧХ d1, d2, ...d30 соответственно лидеров смежных классов v1, v2, ...v30, и таким образом полученные слова кода БЧХ (31, 21) c1= d1+v1, c1=d1+v1,...c1=d1+v1, дополненные проверкой на четность и имеющие в результате длину n'=32 символа, используются как p первых кодовых слов кадра, в рассмотренном выше формате сообщений. Причем каждому лидеру смежного класса v1, v2,...v30 ставится в соответствии порядковый номер кодового слова в кадре, т.е. v1 соответствует первому кодовому слову, v2 - второму кодовому слову в кадре и т.д.

Лидеры смежных классов v0 и v30 используются для кодирования остальных mN-p кодовых слов кадра, несущих в себе информацию о групповом адресе передаваемого сообщения. Для этого mN-p кодовых слов разбиваются на группы по слов в каждой. Количество таких групп в кадре определяется целым числом от деления (mN-p) на , т.е. На фиг. 5 показан пример кодирования группы из = 8 кодовых слов групповым адресом, представленным в виде двоичного вектора iJ= (I0, I1,...I7), где I0=1, I1=0, I2=1, I3=1, I4=0, I5=1, I6= 1, I7=0. Кодирование заключается в прибавлении к слову БЧХ (31, 16) одного из лидеров смежных классов v0 или v31, которым ставится в соответствие информационный символ вектора группового адреса 1 или 0. Полученные таким образом слова кода БЧХ дополняются проверками на четность до длины n'=n+1 и используются для передачи в кадре вслед за первыми p кодовыми словами кадра. Таким образом, при передаче группового или индивидуального адреса используется код с повторениями.

Оставшиеся кодовых слов кадра формируются путем кодирования символов внешнего кода PC кодом (31, 16) БЧХ с последующим дополнением каждого проверкой на четность, и используются при передаче в качестве последних кодовых слов кадра.

Закодированной рассмотренным выше способом информацией модулируют сигнал несущей частоты и передают его по радиоканалу. Для передачи по радиоканалу может быть использовано уплотнение УКВ ЧМ передачи одной или нескольких радиовещательных станций.

На приемной стороне каждым абонентским приемником принятый сигнал демодулируется и затем осуществляется поиск кадровой синхронизации, который заключается в нахождении точек синхронизации по нулевым значениям синдрома принимаемых слов кода (n,k+k1) БЧХ и сравнении физически измеренных временных интервалов между точками синхронизации с вычисленными временными интервалами. Нахождение синдромов осуществляется путем умножения принятых символов на проверочную матрицу, что равносильно вычислениям по формулам (3). Так как применяется циклический код БЧХ, данная процедура может быть реализована с помощью сдвигового регистра, связи которого задают коэффициенты при степенях проверочного многочлена h(x). Например, для рассмотренного (31, 16) БЧХ кода с приведенным ранее порождающим полиномом g(x) = M1(x)M3(x)M5(x) проверочный многочлен будет h(x) = (1+x)(1+x3+x5)(1+x+x3+x4 +x5)(1+x+x2+x3+x5)= x16+x12 x11+x10+x9+x4+x+1 и сдвиговый регистр будет иметь вид, показанный на фиг. 6. В сдвиговом регистре осуществляется перемножение на порождающий многочлен последовательности демодулированных символов, поступающих из канала связи на вход данного регистра. Фиксация точки синхронизации происходит по десяти друг за другом следующим нулям в регистре сдвига, соответствующим нулевым синдромам S3 и S5. Комбинация символов в сдвиговом регистре, соответствующих S1, будет определять один из тридцати лидеров смежного класса c v1 по v30. Каждому их этих лидеров при кодировании ставился в соответствие номер кодового слова в кадре, и, следовательно, вычислив S1 с учетом S3=S5=0, можно определить порядковый номер этого кодового слова в кадре.

Для первого принятого слова кода БЧХ, у которого S3=S5=0, по синдрому S1 определяется порядковый номер данного кодового слова в кадре и измеряется временной интервал до прихода следующего кодового слова с некоторым порядковым номером m2 в кадре, имеющего нулевые синдромы S3 и S5, путем подсчета принятых символов между этими кодовыми словами кадра (фиг. 7). Затем происходит сравнение количества этих подсчитанных символов с количеством символов, составляющих кодовые слова, стоящие между кодовыми словами с номерами m1 и m2 в кадре, т.е. определяется, выполняется ли следующее равенство: где n01 - количество принятых символов между кодовыми словами с порядковыми номерами в кадре m1 и m2; n' - количество символов в одном кодовом слове.

Если равенство (4) выполняется, то считается что кадровая синхронизация установлена и границы кодовых слов и всего кадра восстанавливаются путем несложных операций по группированию принятых символов в кодовые слова и блоки кадра.

Если же равенство (4) не выполняется, то находится следующее кодовое слово для которого S3=S5=0 с порядковым номером m3 в кадре и проводятся аналогичные вычисления точек синхронизации относительно этого вновь полученного слова с порядковым номером m3, используя два уравнения типа (4): Если установление синхронизации по этим двум парам точек не произошло, то ищется четвертое слово с порядковым номером слова в кадре m4, и в случае отрицательного результата поиск точек синхронизации продолжается по следующим кодовым словам с номерами m5, m6 и т.д. В случае заполнения списка номеров принятых кодовых слов с m1 по m8 для каждого вновь принятого кодового слова с нулевыми синдромами S3 и S5 список сдвигается, вытесняя номер наиболее давнего принятого слова, которое при поиске точек синхронизации не рассматривается, при этом решается 7 уравнений типа (4): Необходимо отметить, что во время поиска точек синхронизации одновременно с подачей символов в сдвиговый регистр для вычисления синдромов осуществляется накопление символов в буфере типа регистра сдвига длиной n'p для того, чтобы в случае установления синхронизации по двум последним p-1 и p или близким к последним кодовым словам, используемым для осуществления кадровой синхронизации, можно было восстановить информацию из всех ранее переданных p кодовых слов кадра.

После установления кадровой синхронизации принимаются все N блоков кодовых слов кадра. Из mN-p кодовых слов, следующих за первыми p кодовыми словами кадра, выделяется групповой адрес, декодирование которого осуществляется следующим образом. Согласно фиг.5 для кодирования группового адреса применяется код с повторениями, где каждое слово, содержащее групповой адрес, состоит из двоичных символов, а каждый символ передается одним из смежных классов кода (n, k) БЧХ.

Рассмотрим алгоритм декодирования группового адреса на примере формата передаваемого кадра с n = 96, m = 4, p = 30, в котором групповой адрес передается словами кода БЧХ, составляющими группы по слов в каждой. Число таких групп в кадре будет равно целому числу, полученному в результате деления (mN-p) кодовых слов кадра на длину вектора группового адреса, и для рассматриваемого примера будет [(4 96 - 30)/8)] = 44. Для всех этих 44 кодовых слов кадра находятся синдромы S3 и S5 и составляется список из 44-х векторов, каждый из которых представляет собой оценку группового адреса (табл.2). Причем если синдромы S3 и S5 принятого слова равны нулю, то по синдрому S1 определяется лидер смежного класса, и если это лидеры v0 или v31, то принимается решение, что передавался соответственно символ 1 или 0, если же это лидер какой-либо из v1, v2, ..., v30, то данный символ объявляется стертым. В табл.2 стертые символы отмечены знаком *. Для символов группового кода, переданных словами кода БЧХ, посчитанные синдромы S3 и S5 которых отличны от нуля, принимается решение о стирании.

Каждому из 44 оценочных векторов в табл.2 присваивается надежность, т.е. величина, зависящая от количества стертых позиций в этом векторе. Максимальная надежность для вектора, не имеющего ни одного стирания, - 8 и минимальная для вектора, имеющего одни стирания, будет 0. Для определения значения передаваемого символа вектора группового адреса надежности для каждого символа суммируются, причем надежности, соответствующие символу 0, прибавляются, а надежности, соответствующие символу 1, вычитаются. По знаку суммы i надежностей выносится решение о значении принятого в данной позиции символа. В табл.2 показан пример искажения символов адресного кода при передаче в канале с ошибками и стираниями, и по шести первым векторам дается оценка передаваемого группового адреса: В реальном случае оценка должна даваться по всем векторам, а для рассматриваемого примера по - 44 векторам.

После нахождения группового адреса осуществляется декодирование всех Nm кодовых слов кадра, представляющих собой слова кода (n, k+k1) БЧХ, причем декодирование осуществляется в смежных классах кода (n, k) БЧХ, при котором реализуется конструктивное расстояние кода (n, k) БЧХ. Для этого к каждому из первых p слов кода БЧХ прибавляются соответственно лидеры смежных классов с v1, v2, ..., v30, а к остальным mN-p кодовым словам, составляющим группы по кодовых слов, прибавляются соответственно лидеры смежных классов v0 или v31 в зависимости от символов вектора уже декодированного группового адреса.

Затем декодирование (n, k) БЧХ кода с исправлением ошибок может осуществляться традиционными методами (Берлекэмп Э. Алгебраическая теория кодирования. - М. : Мир, 1971, с.186 - 208). Так как каждое слово кода БЧХ дополнено проверкой на четность, при декодировании с исправлением и обнаружением ошибок происходит обнаружение ошибок более высокой кратности.

После декодирования слов БЧХ каждому полученному информационному вектору присваивается надежность, т.е. ставится в соответствие то количество исправленных ошибок, из которого был получен данный информационный вектор. Например, при декодировании с исправлением двух и обнаружением трех ошибок информационным вектором, полученным из кодовых слоев БЧХ с нулевыми синдромами, присваивается максимальная надежность 3, информационным векторам, полученным из кодовых слов БЧХ, которые декодировались с исправлением одной и двух ошибок и для слов с обнаруженными тремя ошибками присваиваются соответственно надежности 2, 1 и 0. При формировании кодовых слов, используя в качестве информационного вектора два восьмиразрядных символа внешнего кода PC (фиг. 3), каждому из этих символов, полученных из одного слова кода БЧХ, будут присваиваться одинаковые надежности. Символы, имеющие надежность 0, объявляются стертыми.

Далее осуществляется деперемежение символов внешнего кода PC, перемеженных по правилу согласно табл.1, и формируются W слов кода PC, после чего для каждого из W кодовых слов находятся K наиболее надежных позиций, по которым восстанавливается закодированная информация.

Выбор группы из K символов, по которым осуществляется восстановление информационного вектора a, происходит следующим образом. Рассматривается совокупность позиций с надежностью 3 и, если их число меньше K, то добавляются позиции с надежностью 2, и затем в случае необходимости с надежностью 1. Если же после этого число набранных позиций оказывается меньше K, то происходит отказ от декодирования. В противном случае декодирование осуществляется по K символам нестертых позиций, алгоритм которого описан ниже.

Необходимо отметить, что при выборе кода PC с информационной скоростью 1/2, т.е. и четной длины кода N алгоритм декодирования упрощается в случае использования кода в каналах, качество которых дает наибольшее число позиций стираний в кодовых словах. В этом случае рассмотренный ниже алгоритм позволяет повысить скорость декодирования по сравнению с известными существующими способами декодирования.

Так как информационный вектор a можно получить по любым K позициям кода PC, то при декодировании для восстановления информационных символов вектора a достаточно умножить вектор кодового слова u на любую из матриц G-11 или G-21 соответственно, обратных матрицам G1 и G2 из (2): a = u1G-11 или (5) a = u2G-21 (6) При этом декодирование осуществляется по символам того вектора u1 или u2, который имеет наименьшее число стертых позиций, а эти стертые позиции вычисляются по нестертым позициям второго вектора.

Нахождение символов вектора u1 через символы вектора u2 и обратное преобразование осуществляется согласно формулам: u1= u2G-21G1= u2C, (7) где C = (G-21G1)T; где G = (G-11G2)T. Выражения (7) и (8) можно представить соответственно в виде систем линейных уравнений: где Uj - символы вектора u1; Ui - символы вектора u2; cij - элементы матрицы C; где Uj - символы вектора u2; Ui - символы вектора u1; bij - элементы матрицы B.

Пусть в кодовом слове стерто l = l1 + l2 позиций из N при N N - K, l1 и l2 из которых распределены соответственно в u1 и u2. Тогда выбирается наименьшее из l1 и l2 число стертых позиций в векторах u1 и u2 и вычисляются значения, соответствующие этим стертым позициям, по нестертым позициям второго вектора, используя формулы (9), (10). Пусть Г1 и Г2 - множества номеров нестертых позиций K-l1 и K-l2 соответственно для векторов u1 и u2, а J1 и J2 - множества номеров стертых позиций l1 и l2 соответственно для векторов u1 и u2, и пусть l1 l2. Тогда находим группу, состоящую из l1 стертых позиций вектора u1, представляющую собой некоторый вектор uс, по любым l1 из K-l2 нестертых позиций вектора u2 согласно системе линейных уравнений (10): Суммы по подмножеству нестертых символов Г1 переносятся в правую часть системы уравнений и вычитаются из соответствующих символов uj, образуя элементы j : где Полученная система (12) решается относительно символов Ui, i J1 вектора uc, для чего обращается квадратная l1 l1 матрица B1, состоящая из элементов bij, где i J1 и j Г2 : uc= B-11 (13) где uc - вектор, состоящий из символов U1, соответствующих стертым позициям; - вектор, состоящий из l1 элементов j, j Г2. Следовательно, для нахождения l1 значений стертых позиций вектора u1 по нестертым позициям вектора u2 требуется обращение матрицы размерности l1