RU2700398C1 - Method of transmitting data in a digital radio communication system based on codes with low density of parity checks and a method of interleaving code symbols - Google Patents

Method of transmitting data in a digital radio communication system based on codes with low density of parity checks and a method of interleaving code symbols Download PDF

Info

Publication number
RU2700398C1
RU2700398C1 RU2018147518A RU2018147518A RU2700398C1 RU 2700398 C1 RU2700398 C1 RU 2700398C1 RU 2018147518 A RU2018147518 A RU 2018147518A RU 2018147518 A RU2018147518 A RU 2018147518A RU 2700398 C1 RU2700398 C1 RU 2700398C1
Authority
RU
Russia
Prior art keywords
code
sequence
symbols
generalized
interleaved
Prior art date
Application number
RU2018147518A
Other languages
Russian (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 RU2018147518A priority Critical patent/RU2700398C1/en
Application granted granted Critical
Publication of RU2700398C1 publication Critical patent/RU2700398C1/en

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/1134Full parallel processing, i.e. all bit nodes or check nodes are processed in parallel
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/1137Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

FIELD: data processing and transmission.
SUBSTANCE: invention relates to means for transmitting data in a digital radio communication system based on codes with low density of parity checks. At the transmitting side, data packets are formed, each of which contains an ordered sequence of information symbols. Each information symbol is repeated a certain number of times, depending on its number in order in a sequence of symbols, forming a sequence of repeated information symbols. Number of repetitions is determined in advance. Interleaving in the sequence of repeated information symbols is performed to obtain diversity of consecutive repeating information symbols and forming a sequence of interleaved repeated information symbols. Interleaved repeated information symbols are divided into groups so that the first verification symbol is obtained by summation over the given module of the initial value of the variable summation with all interleaved repeated information symbols from the first group.
EFFECT: technical result consists in improved efficiency of coding.
6 cl, 8 dwg

Description

Изобретение относится к области теории кодирования в частности к системам для объединенного кодирования с исправлением и обнаружением ошибок с целью повышения эффективности использования спектра при передаче данных в цифровой системе радиосвязи.The invention relates to the field of coding theory, and in particular to systems for combined coding with error correction and detection in order to increase the efficiency of spectrum use when transmitting data in a digital radio communication system.

Актуальной является задача не только исправление ошибок при канальном кодировании, но и обнаружения неисправленных ошибок и организация автоматического запроса повторения (АЗП) с целью исправить подобные ошибки за счет дополнительной передачи минимально возможного числа кодовых символов. The urgent task is not only the correction of errors in channel coding, but also the detection of uncorrected errors and the organization of an automatic repeat request (AZP) in order to correct such errors due to the additional transmission of the minimum possible number of code symbols.

Широко известен параллельный сверточный турбокод [ Berrou C. Near Shannon limit error – correcting coding and decoding / C. Berrou, A. Glaviex, P. Thitimajshina // IEEE International Communications Conference : Proc. 1993. – Geneva (Switzerland), 1993. – P. 1064–1070], позволивший приблизиться к потенциально достижимым характеристикам помехоустойчивого кодирования. Способ характеризуется следующим. На вход первого кодера подается информационная последовательность, на вход второго подается та же последовательность, но после перемежителя. Тем самым достигается статистическая независимость, особенно при больших размерах кодового блока. Итеративный подход заключается в том, что результаты одного декодирования с мягким выходом могут использоваться при другом декодировании, как априорная информация. Однако турбокод не является более эффективным, чем сверточный код, декодируемый по алгоритму Витерби, при размере фрейма менее 200 бит.The parallel convolutional turbo code is widely known [Berrou C. Near Shannon limit error - correcting coding and decoding / C. Berrou, A. Glaviex, P. Thitimajshina // IEEE International Communications Conference: Proc. 1993. - Geneva (Switzerland), 1993. - P. 1064-1070], which allowed approaching the potentially achievable characteristics of noise-resistant coding. The method is characterized by the following. An information sequence is fed to the input of the first encoder, the same sequence is fed to the input of the second, but after the interleaver. Thus, statistical independence is achieved, especially with large code block sizes. The iterative approach is that the results of one decoding with a soft output can be used with another decoding, as a priori information. However, the turbo code is not more efficient than the convolutional code decoded by the Viterbi algorithm with a frame size of less than 200 bits.

Аналогом заявляемого способа является продукт фирмы Trellis Ware код F-LDPC [Halford, Thomas & Bayram, Metin & Kose, Cenk & M. Chugg, Keith & Polydoros, Andreas. (2008). The F-LDPC Family: High-Performance Flexible Modern Codes for Flexible Radio. 376 - 380. 10.1109/ISSSTA.2008.75.]. Достоинством этого решения является глубокая интеграция протокола автоматического запроса повторной передачи (АЗП) с алгоритмом помехоустойчивого кодирования. Утверждается, что решение обладает максимально гибкими возможностями, одно ядро кодер/декодер поддерживает 40 кодовых скоростей (1/2–32/33) при этом допустимые размеры фрейма: 128, 256, 512, …, 16384 бит. Однако, например, для голосовых данных, размеры фреймы, производимые вокодером, могут составлять 16, 40, 80, 172 бита, таким образом невозможность работать с блоками от 20 бит является недостатком кода F-LDPC.An analogue of the proposed method is a product of the company Trellis Ware code F-LDPC [Halford, Thomas & Bayram, Metin & Kose, Cenk & M. Chugg, Keith & Polydoros, Andreas. (2008). The F-LDPC Family: High-Performance Flexible Modern Codes for Flexible Radio. 376 - 380. 10.1109 / ISSSTA.2008.75.]. The advantage of this solution is the deep integration of the automatic retransmission request protocol (ADR) with the error-correcting coding algorithm. It is argued that the solution has the most flexible capabilities, a single encoder / decoder core supports 40 code rates (1 / 2–32 / 33) while the permissible frame sizes are 128, 256, 512, ..., 16384 bits. However, for example, for voice data, the frame sizes produced by the vocoder can be 16, 40, 80, 172 bits, so the inability to work with blocks of 20 bits or more is a drawback of the F-LDPC code.

Классическая АЗП (ARQ), которая при ошибочном декодировании кадра предусматривает стирание принятых данных, полную повторную передачу кадра и независимое декодирование вновь полученного кадра не эффективна, т.к. приводит к слишком большой избыточной передаче данных. В настоящее время все большое распространение получает гибридная повторная передача [Error Control Coding: Fundamentals and Applications/ S. Lin, D. J. Costello, Jr. – NJ: Englewood Cliffs. – 1983. – 603 p.]. Суть метода в том, что более эффективной является такая стратегия, которая предусматривает при ошибочном декодировании сохранение данных кадра, получение от передатчика некоторой дополнительной информации, и повторное декодирование кадра с использованием этой дополнительной информации. Если объем дополнительной информации меньше объема целого кадра, то эффективность использования канала связи существенно увеличивается. Данный подход исследован Хагенауэром [J. Hagenauer. Rate Compatible Punctured Convolutional Codes (RCPC Codes) and their Applications. // IEEE Trans. Commun. – Vol. 36. – Apr. 1988. – P. 389-400.] и Чейзом [D. Chase. Code Combining ­ A Maximum­Likelihood Decoding Approach for Combining an Arbitrary Number of Noisy Packets. // IEEE Trans. Comm. – Vol. 33. – May 1985. – P. 385­393] с разных позиций.The classic ARQ (ARQ), which in case of erroneous decoding of the frame involves erasing the received data, a complete retransmission of the frame and independent decoding of the newly received frame is not effective, because leads to too much redundant data transfer. Hybrid retransmission is becoming increasingly common [Error Control Coding: Fundamentals and Applications / S. Lin, D. J. Costello, Jr. - NJ: Englewood Cliffs. - 1983. - 603 p.]. The essence of the method is that such a strategy is more effective that provides for error decoding to save the frame data, obtain some additional information from the transmitter, and re-decode the frame using this additional information. If the amount of additional information is less than the volume of the whole frame, then the efficiency of using the communication channel is significantly increased. This approach was investigated by Hagenauer [J. Hagenauer. Rate Compatible Punctured Convolutional Codes (RCPC Codes) and their Applications. // IEEE Trans. Commun. - Vol. 36. - Apr. 1988. - P. 389-400.] And Chase [D. Chase. Code Combining A Maximum Likelihood Decoding Approach for Combining an Arbitrary Number of Noisy Packets. // IEEE Trans. Comm. - Vol. 33. - May 1985. - P. 385393] from different positions.

Рассмотрим классификацию рассмотренных схем АЗП (ARQ):Consider the classification of the considered schemes AZP (ARQ):

• Гибридная АЗП Типа 1 (НARQ-1 – суммирование Чейза). Данная стратегия повторной передачи характеризуется тем, что повторно передается тот же самый кадр.• Hybrid AZP Type 1 (HARQ-1 - Chase summation). This retransmission strategy is characterized in that the same frame is retransmitted.

• Гибридная АЗП Типа 2 (НARQ-2 – наращивание избыточности). Данная стратегия повторной передачи характеризуется тем, что число бит для повторной передачи меньше, чем в исходном кадре. Копия для повторной передачи не может быть декодируема самостоятельно.• Hybrid AZP Type 2 (HARQ-2 - increasing redundancy). This retransmission strategy is characterized in that the number of bits for retransmission is less than in the original frame. A copy for retransmission cannot be decoded on its own.

• Гибридная АЗП Типа 3 (НARQ-3). Копия для повторной передачи может декодироваться самостоятельно. Однако кадр для повторной передачи может отличаться от первоначально переданного кадра, то есть может быть закодирован другим кодом.• Hybrid AZP Type 3 (HARQ-3). A copy for retransmission can be decoded independently. However, the frame for retransmission may differ from the originally transmitted frame, that is, it may be encoded with a different code.

Данную классификацию можно обобщить следующим образом:This classification can be summarized as follows:

• АЗП (ARQ) с полной передачей (к ней относится Тип 1 и Тип 3).• Automatic transfer station (ARQ) with full transmission (Type 1 and Type 3 belong to it).

• АЗП (ARQ) с частичной передачей (Тип 2).• Automatic transfer circuit (ARQ) with partial transmission (Type 2).

Темой дальнейшего исследования будет частичная передача – гибридная АЗП типа 2 (HARQ-2).The topic of further research will be a partial transmission - hybrid AZP type 2 (HARQ-2).

Возможны несколько подходов к реализации подобной стратегии АЗП (ARQ):Several approaches to the implementation of such a strategy of ARP (ARQ) are possible:

1. Повторная передача части ранее переданных кодовых символов кадра и их оптимальное сложение с кодовыми символами, сохраненными в памяти приемника. 1. Retransmission of part of the previously transmitted code symbols of the frame and their optimal addition to the code symbols stored in the receiver.

2. Использование кодов с нарастающей сложностью. В случае ошибочного декодирования на передающей стороне вычисляются новые (дополнительные) проверочные символы, которые передаются приемнику.2. The use of codes with increasing complexity. In case of erroneous decoding on the transmitting side, new (additional) check symbols are calculated, which are transmitted to the receiver.

В классе линейных блоковых кодов можно особо выделить подкласс кодов с низкой плотностью проверок на четность [Gallager R. “Low Density Parity Check Codes”// MIT Press 1963], превосходящий по своим характеристикам турбокод. Особенностью данного кода является наличие простой графической модели алгоритма декодирования определяемого как декодирование на графе (фиг. 1). Декодирование на графе следует понимать в том смысле, что граф определяет разбиение всего кодового слова на более короткие коды, причем короткие коды могут перекрываться друг с другом. Избежать данных перекрытий можно путем повторения перекрывающихся кодовых символов. Разные копии принятого кодового символа или мягкого решения об этом символе входят в различные кодовые слова более короткого кода, при этом все кодовые слова короткого кода могут быть декодированы независимо. Такая структура может быть представлена в виде двудольного графа один тип вершин, которого ассоциирован с кодовыми символами, причем количество ребер исходящих из каждой вершины соответствует количеству повторений кодового символа (переменная вершина – обозначена прямоугольником). Другой тип вершин соответствует коротким кодам, причем каждая вершина есть кодовое слово с количеством кодовых символов равным числу входящих ребер (проверочная вершина – обозначена кругом). Каждой проверочной вершине может быть приписана контрольная сумма, как индикатор наличия ошибок в коротком коде. Переменные вершины могут быть соединены только с проверочными вершинами, и, наоборот, проверочные вершины могут быть соединены только с переменными вершинами, что позволяет рассматривать граф как двудольный.In the class of linear block codes, one can especially distinguish a subclass of codes with a low density of parity checks [Gallager R. “Low Density Parity Check Codes” // MIT Press 1963], which is superior in its characteristics to a turbo code. A feature of this code is the presence of a simple graphical model of a decoding algorithm defined as decoding on a graph (Fig. 1). Decoding on a graph should be understood in the sense that the graph defines a partition of the entire code word into shorter codes, and short codes can overlap with each other. Overlapping data can be avoided by repeating overlapping code characters. Different copies of the received code symbol or soft decision on this symbol are included in different code words of the shorter code, and all code words of the short code can be decoded independently. Such a structure can be represented as a bipartite graph, one type of vertices, which is associated with code symbols, and the number of edges outgoing from each vertex corresponds to the number of repetitions of the code symbol (a variable vertex is indicated by a rectangle). Another type of vertices corresponds to short codes, and each vertex is a codeword with the number of code symbols equal to the number of incoming edges (the verification vertex is indicated by a circle). A checksum can be assigned to each test vertex as an indicator of errors in the short code. Variable vertices can only be connected with test vertices, and, conversely, test vertices can only be connected with variable vertices, which allows us to consider the graph as bipartite.

Такой двудольный граф называют графом Таннера [Tanner R.M. A Recursive Approach to Low Complexity Codes / R.M. Tanner // IEEE Transaction on Information Theory. – 1981. –Vol. IT­27, № 9. – P. 533­547]. По сути, для линейного блокового кода, граф Таннера является графическим представлением проверочной матрицы. Безошибочное декодирование характеризуется равенством нулю всех контрольных сумм – кодовых ограничений.Such a bipartite graph is called the graph of Tanner [Tanner R.M. A Recursive Approach to Low Complexity Codes / R.M. Tanner // IEEE Transaction on Information Theory. - 1981. –Vol. IT27, No. 9. - P. 533547]. In fact, for a linear block code, the Tanner graph is a graphical representation of the verification matrix. Error-free decoding is characterized by the equality to zero of all checksums - code constraints.

Код с низкой плотностью проверок на четность может быть декодирован в мягких решениях, используя алгоритм обмена сообщений (фиг. 1). Алгоритм обмена сообщениями [Gallager R. “Low Density Parity Check Codes”// MIT Press 1963] инициализируют каждый переменную вершину информацией о достоверности приема каждого символа (мягким решением), полученной из канала.Code with a low density of parity checks can be decoded in soft solutions using the message exchange algorithm (Fig. 1). The messaging algorithm [Gallager R. “Low Density Parity Check Codes” // MIT Press 1963] initialize each variable vertex with information about the reliability of reception of each symbol (soft decision) received from the channel.

1. Вычисляют значение исходящего сообщения от переменной вершины равного апостериорной вероятности для кодового символа принять определенное значение кодового символа, отнесенного к этому переменной вершине для каждого ребра двудольного графа.1. The value of the outgoing message from the variable vertex of equal posterior probability for the code symbol is calculated to take a certain value of the code symbol assigned to this variable vertex for each edge of the bipartite graph.

2. В каждом проверочной вершине модифицируют исходящие сообщения от тех переменных вершин, с которым они связаны ребром двудольного графа, и для которого они являются входящими, ставя в соответствие каждому ребру исходящие сообщения проверочной вершине, которые равны второму набору вероятностей для кодового символа принять определенное значение.2. At each test vertex, outgoing messages from those variable vertices with which they are connected by the edge of the bipartite graph and for which they are incoming are modified, modifying each edge with outgoing messages to the test vertex, which are equal to the second set of probabilities for the code symbol to take a certain value .

3. Обновляют исходящие сообщение переменной вершине входящими сообщениями, которые являются исходящими сообщениями проверочной вершине.3. Update the outgoing message to the variable vertex with incoming messages, which are outgoing messages to the verification vertex.

4. Повторяют итерации определенное число раз или до тех пор, пока кодовые ограничения не будут выполнены.4. Repeat iterations a certain number of times or until code restrictions are met.

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

Figure 00000001
. Эта функция является решающей функцией или логарифмом отношения правдоподобия. Функция обладает коммутативностью:The sign of the outgoing message is selected so as to satisfy code constraints. The absolute value of the outgoing message is calculated using the function
Figure 00000001
. This function is the decisive function or the logarithm of the likelihood ratio. The function has commutativity:

Figure 00000002
Figure 00000002

Есть несколько методов для определения функции

Figure 00000003
. Наиболее простой известен как алгоритм “min-sum”. Абсолютное значение исходящего сообщения равно минимальному абсолютному значению среди входящих сообщений за исключением сообщения от той вершины, для которого предназначено данное исходящее сообщение:There are several methods for defining a function.
Figure 00000003
. The simplest is known as the min-sum algorithm. The absolute value of the outgoing message is equal to the minimum absolute value among incoming messages, with the exception of the message from the vertex for which this outgoing message is intended:

Figure 00000004
Figure 00000004

Другой метод задания функции

Figure 00000003
состоит в определении функции через функцию
Figure 00000005
, применяемую в LOG MAP алгоритме [Pietrobon S.S. Implementation and Performance of a Turbo/MAP Decoder / S.S. Pietrobon // International J. of Satellite Communication. – 1998. Vol. 16 (Jan-Feb). – P. 23-46]. Функция может быть задана как:Another method of specifying a function
Figure 00000003
consists in defining a function through a function
Figure 00000005
used in the LOG MAP algorithm [Pietrobon SS Implementation and Performance of a Turbo / MAP Decoder / SS Pietrobon // International J. of Satellite Communication. - 1998. Vol. 16 (Jan-Feb). - P. 23-46]. The function can be defined as:

Figure 00000006
Figure 00000006

Где функция

Figure 00000007
, может быть представлена в виде таблицы.Where is the function
Figure 00000007
may be presented in tabular form.

Существует модификация предложенного метода, где дополнительное слагаемое

Figure 00000008
определено как:There is a modification of the proposed method, where the additional term
Figure 00000008
defined as:

Figure 00000009
Figure 00000009

Модификации этого алгоритма приведена в [W.K Leung,W.L Lee,A.Wu,L.Ping,“ Efficient implementation technique of LDPC decoder ”Electron.Lett..,vol.37(20),pp.1231-1232,Sept2001]. Данный метод не требует таблицы, но приводит к некоторому ухудшению характеристик, но зато позволяет сократить число операций при декодировании.Modifications of this algorithm are given in [W.K Leung, W.L Lee, A.Wu, L. Ping, “Efficient implementation technique of LDPC decoder” Electron.Lett .., vol. 37 (20), pp.1231-1232, Sept2001]. This method does not require a table, but leads to some deterioration in performance, but it allows you to reduce the number of operations during decoding.

Известен способ декодирования на графе, включающий в себя построение двудольного графа известен из патента US 4295218 Tanner “Error-correcting coding system” , Oct.13, 1981, G06F 11/10. Данный способ характеризуется следующей последовательностью действий:A known method of decoding on a graph, including the construction of a bipartite graph is known from patent US 4295218 Tanner “Error-correcting coding system”, Oct.13, 1981, G06F 11/10. This method is characterized by the following sequence of actions:

на передающей стороне:on the transmitting side:

• формируют пакеты данных, каждый из которых содержит упорядоченную последовательность информационных символов; • form data packets, each of which contains an ordered sequence of information symbols;

• определяют подкоды для последовательности информационных символов и для каждого подкода формируют проверочные символы;• determine the subcodes for the sequence of information symbols and for each subcode generate verification characters;

• формируют кодовое слово путем добавления проверочных символов к информационным символам; • form a code word by adding test characters to information characters;

на приемной стороне:on the receiving side:

• формируют принятые корреляционные отклики на каждый из переданных кодовых символов; • form the received correlation responses to each of the transmitted code symbols;

• выполняют оценку шумового параметра смеси сигнал плюс шум, которая приближенно равна величине стандартного отклонения эквивалентного гауссовского белого шума, которым аппроксимируются помехи в канале;• evaluate the noise parameter of the signal plus noise mixture, which is approximately equal to the standard deviation of the equivalent Gaussian white noise, which approximates the noise in the channel;

• формируют мягкие решения о принятых кодовых символах, используя полученную оценку шумового параметра смеси сигнал плюс шум; • form soft decisions about the adopted code symbols using the obtained estimate of the noise parameter of the signal plus noise mixture;

• разделяют мягкие решения о принятых кодовых символах на решения об информационных символах и решения о проверочных символах;• share soft decisions on accepted code symbols into decisions on information symbols and decisions on verification symbols;

• формируют кодовые слова подкодов кода обобщенной проверки на четность;• form code words for subcodes of the code of the generalized parity check;

• для каждого мягкого решения, входящего в каждое кодовое слово кода обобщенной проверки на четность, формируют модифицированное мягкое решение, которое является исходящим сообщением кодового слова кода обобщенной проверки на четность, таким образом, что исходящее сообщение кодового слова кода обобщенной проверки на четность представляет собой результат функционального преобразования исходных мягких решений - входящих сообщений кодового слова кода обобщенной проверки на четность;• for each soft decision included in each code word of the generalized parity check code, a modified soft solution is formed, which is an outgoing message of the code word of the general parity check code, so that the outgoing message of the code word of the general parity check code is the result functional transformation of the original soft decisions - incoming messages of the code word of the code of a generalized parity check;

• применяют полученные исходящие сообщения кодового слова кода обобщенной проверки на четность к тем переменным вершинам, с которыми подкоды кода обобщенной проверки на четность связаны посредством ребер двудольного графа и формируют подкоды кода повторений;• apply the received outgoing messages of the code word of the generalized parity check code to those variable vertices with which the subcodes of the generalized parity check code are connected by the edges of the bipartite graph and form subcodes of the repetition code;

• для каждого мягкого решения, входящего в каждое кодовое слово обобщенного кода повторения, формируют модифицированное мягкое решение, которое является исходящим сообщением кодового обобщенного кода повторения, представляющее собой результат функционального преобразования над входящими сообщениями кодового слова обобщенного кода повторения;• for each soft decision that is included in each code word of the generalized repetition code, a modified soft solution is formed, which is an outgoing message of the code generalized repetition code, which is the result of a functional transformation over the incoming messages of the code word of the generalized repetition code;

• итеративно повторяют процесс обмена исходящими и входящими сообщениями таким образом, что исходящее сообщение кодового слова обобщенного кода повторений является входящим сообщением кодового слова кода обобщенной проверки на четность, а исходящее сообщение кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторений, формируя на каждой итерации последовательность модифицированных мягких решений;• iteratively repeat the process of exchanging outgoing and incoming messages in such a way that the outgoing message of the code word of the generalized repetition code is the incoming message of the code word of the generalized parity check code, and the outgoing message of the code of the generalized parity check code is the incoming message of the code word of the generalized repetition code, forming each iteration, a sequence of modified soft solutions;

• из последовательности модифицированных мягких решений формируют декодированные кодовые слова;• decoded codewords are formed from a sequence of modified soft decisions;

• умножают каждое декодированное кодовое слово на проверочную матрицу, получая упорядоченную последовательность контрольных сумм.• Multiply each decoded codeword by a check matrix to obtain an ordered sequence of checksums.

Однако следует отметить, что применяемое повторение кодовых символов может быть обобщенным, то есть вместо повторения может использоваться кодирование или отображением одного кодового символа в отличные от него

Figure 00000010
символов, возможно, другого алфавита.However, it should be noted that the used repetition of code symbols can be generalized, that is, instead of repetition, encoding can be used or by mapping one code symbol to different ones
Figure 00000010
characters, possibly another alphabet.

Операцию определения подкодов могут, например, составлять следующие действия:The operation of determining subcodes can, for example, comprise the following actions:

• каждый информационный символ повторяют определенное число раз, в зависимости от его номера по порядку в последовательности символов, формируя последовательность повторенных информационных символов, причем количество повторений определяется заранее; • each information symbol is repeated a certain number of times, depending on its number in order in the sequence of characters, forming a sequence of repeated information symbols, and the number of repetitions is determined in advance;

• осуществляют перемежение в последовательности повторенных информационных символов, добиваясь достаточного разнесения идущих подряд повторенных информационных символов и формируя последовательность перемеженных повторенных информационных символов;• interleave in a sequence of repeated information symbols, achieving sufficient diversity of consecutive repeated information symbols and forming a sequence of interleaved repeated information symbols;

• разбивают перемеженные повторенные информационные символы на группы таким образом, что каждая группа образует кодовое слово подкода.• break the interleaved repeated information symbols into groups in such a way that each group forms a subcode codeword.

Формирование подкодов из последовательности принятых мягких решений на приемной стороне можно определить как следующую последовательность действий:The formation of subcodes from the sequence of soft decisions made on the receiving side can be defined as the following sequence of actions:

• повторяют мягкие решения об информационных символах в соответствии с шаблоном повторения информационных символов;• repeat soft decisions about information symbols in accordance with the pattern of repeating information symbols;

• повторяют мягкие решения о проверочных символах, по крайней мере, два раза за исключением последнего проверочного символа;• repeat soft decisions about check characters at least twice except for the last check character;

• для мягких решений об информационных символах выполняют перемежение аналогичное перемежению на передающей стороне;• for soft decisions about information symbols, they perform interleaving similar to interleaving on the transmitting side;

• формируют группы перемеженных мягких решений об информационных символах аналогичные группам соответствующих информационных символов на передающей стороне, образующие кодовое слово подкода обобщенной проверки на четность.• form groups of interleaved soft decisions about information symbols similar to groups of corresponding information symbols on the transmitting side, forming a code word for a subcode of a general parity check.

Применение полученных исходящих сообщений к исходной повторенной последовательности может быть реализовано путем выполнения следующей последовательности действий:Application of received outgoing messages to the original repeated sequence can be implemented by performing the following sequence of actions:

• деперемежают исходящие сообщения кодового слова кода обобщенной проверки на четность таким образом, что каждой копии мягкого решения о кодовом символе ставят в соответствие исходящее сообщение кодового слова кода обобщенной проверки на четность, соответствующее копии мягкого решения об этом символе;• deinterleave the outgoing message of the code word of the generalized parity check code so that each copy of the soft decision on the code symbol is associated with the outgoing message of the code word of the generalized parity code corresponding to the copy of the soft decision about this symbol;

• группируют исходящие сообщения кодового слова подкода обобщенной проверки на четность с мягкими решениями о принятых кодовых символах так, что в каждую группу входят мягкое решение о соответствующем кодовом символе и исходящие сообщение кодового слова кода обобщенной проверки на четность, соответствующее копии мягкого решения об этом символе, формируя, таким образом, кодовое слово обобщенного кода повторения, ставя каждое кодовое слово обобщенного кода повторения в соответствие кодовому символу, таким образом, что каждое исходящее сообщения кодового слова кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторения.• group outgoing messages of the code word of the generalized parity check subcode with soft decisions about the received code symbols so that each group includes a soft decision about the corresponding code symbol and outgoing messages of the code word of the general parity code corresponding to the copy of the soft decision about this symbol, thus forming the code word of the generalized repetition code, putting each codeword of the generalized repetition code in accordance with the code symbol, so that each outgoing A generalized parity check codeword message is an incoming codeword of a generalized repetition code.

Таким образом, операции на графе Таннера, представляющего собой графическую модель разбиения кода на подкоды могут быть описаны в виде повторения, перемежения, группирования, а шаблоны повторения, группирования и правило перемежения однозначно задают двудольный граф.Thus, operations on the Tanner graph, which is a graphical model of breaking code into subcodes, can be described as repetition, interleaving, grouping, and repetition, grouping patterns, and the interleaving rule uniquely define a bipartite graph.

Так турбокоды удобнее описывать в терминах повторения и перемежения, а коды с низкой плотностью проверок на четность в виде двудольного графа. So turbo codes are more convenient to describe in terms of repetition and interleaving, and codes with a low density of parity checks in the form of a bipartite graph.

Учитывая пример с линейным блоковым кодом, где короткий код – это проверка на четность или сложения всех кодовых символов по модулю 2, будем называть применяемый короткий код на графе обобщенной проверкой на четность, которая будет заключаться в суммировании всех кодовых символов в поле Галуа или суммировании чисел по заданному модулю. Если в процессе передачи ошибок нет, то все подобные контрольные суммы должны быть равны нулю.Considering the example with a linear block code, where the short code is a parity check or addition of all code symbols modulo 2, we will call the applied short code on a graph a general parity check, which will consist of summing all code symbols in the Galois field or summing numbers for a given module. If there are no errors during the transmission process, then all such checksums must be equal to zero.

Однако если код является систематическим и может быть разделен на проверочную и информационную составляющие, то вышеупомянутому методу присущ следующий недостаток. При ошибке декодирования только в проверочной части кодового слова и отсутствии ошибок в информационной части фрейм все равно будет помечен как ошибочный и стерт, а контрольная сумма CRC позволяет контролировать ошибки только в информационной составляющей кодового слова.However, if the code is systematic and can be divided into verification and information components, the following drawback is inherent in the above method. If there is a decoding error only in the verification part of the codeword and there are no errors in the information part, the frame will still be marked as erroneous and deleted, and the CRC checksum allows you to control errors only in the information component of the codeword.

Следуя терминологии из [П. Камерон, Дж. Ван Линт “Теория графов теория кодирования и блок-схемы”// M. Наука 1980], определим путь на графе как последовательность вершин, в которой соседние вершины смежные. Цикл – это путь, где начальные и конечные точки совпадают. Граф связен, если между любыми двумя вершинами существует путь, а метрикой расстояния между двумя вершинами будем считать длину кратчайшего пути между ними. Диаметром графа будем считать наибольшее значение расстояния между двумя любыми вершинами в графе, а обхватом графа – длину кратчайшего цикла без повторяющихся ребер при условии, что такой цикл существует. Валентностью вершины будем называть количество ребер, исходящих из этой вершины или количество вершин смежных данной. Если все вершины графа имеют одинаковую валентность, то граф будем называть регулярным. Хроматическим числом графа будем называть наименьшее количество цветов, в которые могут быть раскрашены все ребра графа таким образом, что любые два ребра, имеющие общую вершину, окрашены в разные цвета. Гамильтоновым путем или гамильтоновым циклом будем называть замкнутый цикл, без повторяющихся ребер, проходящий по всем вершинам графа единственный раз.Following the terminology from [P. Cameron, J. Van Lint “Graph theory coding theory and flowcharts” // M. Science 1980], we define a path on a graph as a sequence of vertices in which neighboring vertices are adjacent. A cycle is a path where the start and end points coincide. A graph is connected if there is a path between any two vertices, and the distance metric between the two vertices is the length of the shortest path between them. The diameter of the graph is the largest value of the distance between any two vertices in the graph, and the circumference of the graph is the length of the shortest cycle without repeating edges, provided that such a cycle exists. The valency of a vertex is the number of edges emanating from this vertex or the number of vertices adjacent to a given one. If all vertices of the graph have the same valency, then the graph will be called regular. By the chromatic number of a graph we mean the least number of colors into which all edges of the graph can be colored in such a way that any two edges having a common vertex are painted in different colors. A Hamiltonian path or a Hamiltonian cycle will be called a closed cycle, without repeating edges, passing through all the vertices of the graph only once.

Граф должен иметь обхват не ниже 4 для применения в рассмотренном методе декодирования Таннера. В качестве примера на фиг. 2 приведен код, построенный на графе Петерсона, имеющего диаметр 6 и обхват 10. Однако недостатком такого подхода является ограниченное число вершин в подобных известных графах, а также трудность построения графов, содержащих более 100 вершин, обладающих заданными свойствами. Эффективность декодирования на графе в первую очередь зависит от структуры графа, а именно от наличия на графе дефектов в виде структур, приводящим к кодовым словам с низким весом. Одним из таких дефектов является “останавливающее множество” [Tom Richardson y Rudiger Urbanke “The Capacity of Low-Density Parity-Check Codes under Message-Passing Decoding”// March 9, 2001], а так же петель или циклов [David MacKay, Good Error-Correcting Codes Based on Very Sparse Matrices// IEEE Transaction on information theory, Vol 45, march 1999], где “останавливающее множество” как подмножество проверочных вершин, для которого не существует переменных вершин, соединенных единственным ребром с каким-либо из проверочных вершин, входящих в это подмножество. Множество переменных вершин, соединенных с останавливающим подмножеством, содержит наиболее вероятные комбинации ошибок. Однако, как было отмечено выше, граф может быть задан путем отдельного задания шаблона повторения и группирования, а также закона перемежения. Причем, предполагая идеальное перемежение, получены оптимизированные шаблоны повторения-группирования, которые основаны на неравномерном повторении [H. Jin, A. Khandekar and R. J. McEliece, “Irregular repeat-accumulate codes," Proceedings of the Second International Symposium on Turbo Codes and Related Topics, pp. 18, Brest, France, September 2000], [Thomas J. Richardson and Rüdiger L Urbanke . Efficient Encoding of Low-Density Parity Check Codes]. В связи с этим актуальной является задача отдельной разработки перемежителя, позволяющего построить по известным оптимизированным шаблонам повторения-группирования двудольный граф, содержащий наименьшее число дефектов. The graph must have a girth of at least 4 for use in the considered Tanner decoding method. As an example in FIG. Figure 2 shows the code built on a Peterson graph with a diameter of 6 and a circumference of 10. However, the drawback of this approach is the limited number of vertices in such well-known graphs, as well as the difficulty of constructing graphs containing more than 100 vertices with the specified properties. The decoding efficiency of a graph primarily depends on the structure of the graph, namely, the presence of defects in the graph in the form of structures, resulting in low-weight codewords. One of these defects is the “stopping set” [Tom Richardson y Rudiger Urbanke “The Capacity of Low-Density Parity-Check Codes under Message-Passing Decoding” // March 9, 2001], as well as loops or loops [David MacKay, Good Error-Correcting Codes Based on Very Sparse Matrices // IEEE Transaction on information theory, Vol 45, march 1999], where the “stopping set” is a subset of test vertices for which there are no variable vertices connected by a single edge to any of Verification vertices included in this subset. The set of variable vertices connected to the stopping subset contains the most likely combinations of errors. However, as noted above, a graph can be specified by separately specifying the repetition and grouping pattern, as well as the interleaving law. Moreover, assuming perfect interleaving, optimized repetition-grouping patterns are obtained that are based on uneven repetition [H. Jin, A. Khandekar and RJ McEliece, “Irregular repeat-accumulate codes," Proceedings of the Second International Symposium on Turbo Codes and Related Topics, pp. 18, Brest, France, September 2000], [Thomas J. Richardson and Rüdiger L Urbanke. Efficient Encoding of Low-Density Parity Check Codes]. In this regard, the urgent task is to develop an interleaver separately, which allows to construct a bipartite graph containing the least number of defects using well-known optimized repetition-grouping patterns.

В настоящее время широкую известность получил класс “турбо-образных” (“turbo-like”) кодов, среди которых выделяются коды с “повторением – накоплением”, известные из [H. Jin, A. Khandekar and R. J. McEliece, “Irregular repeat-accumulate codes," Proceedings of the Second International Symposium on Turbo Codes and Related Topics, pp. 1-8, Brest, France, September 2000]. Кодирование кодов с “повторением – накоплением” осуществляют в следующем порядке: повторение каждого информационного символа, перемежение повторенных символов, накопление суммы по модулю 2 перемеженных символов. Данные коды обладают свойствами, как турбо-кодов, так и кодов с низкой плотностью проверок на четность и могут быть декодированы как в параллельном режиме – алгоритм обмена сообщениями, так и в последовательном режиме – алгоритм MAP. Следует отметить, что в последнем случае алгоритм по существу является гибридным, состоящим из MAP алгоритма декодирования сверточного кода с двумя состояниями и алгоритма обмена сообщениями с неравномерно повторенными информационными символами [J. Li, Low-Complexity, Capacity-Approaching Coding Schemes: Design, Analysis and Applications, Ph.D. dissertation, Texas A&M University, 2002. ]. Из [ H. Jin, A. Khandekar and R. J. McEliece, “Irregular repeat-accumulate codes," Proceedings of the Second International Symposium on Turbo Codes and Related Topics, pp. 1-8, Brest, France, September 2000] известно, что наибольшая эффективность от применения достигается неравномерным или иррегулярным повторением информационных символов. Кроме того, характеристики кодов повторения с накоплением в большой степени характеризуются перемежителем, который совместно с шаблоном иррегулярного повторения и шаблоном накопления контрольных сумм определяют граф Таннера для данного кода. Требования к перемежителю заключаются в том, чтобы обеспечить достаточное разнесение повторенных символов, обеспечив тем самым отсутствие или малое число кодовых слов с низким весом. Currently, the class of “turbo-like” codes is widely known, among which are the codes with “repetition-accumulation” known from [H. Jin, A. Khandekar and RJ McEliece, “Irregular repeat-accumulate codes," Proceedings of the Second International Symposium on Turbo Codes and Related Topics, pp. 1-8, Brest, France, September 2000]. “Repeat - by accumulation ”is carried out in the following order: repetition of each information symbol, interleaving of repeated characters, accumulation of the sum modulo 2 interleaved characters. These codes have the properties of both turbo codes and codes with a low density of parity checks and can be decoded in parallel mode - the messaging algorithm, and in serial mode - MAP algorithm. It should be noted that in the latter case, the algorithm is essentially hybrid, consisting of a MAP algorithm for decoding a convolutional code with two states and a message exchange algorithm with unevenly repeated information symbols [J. Li, Low-Complexity, Capacity-Approaching Coding Schemes : Design, Analysis and Applications, Ph.D. dissertation, Texas A&M University, 2002.]. From [H. Jin, A. Khandekar and RJ McEliece, “Irregular repeat-accumulate codes,“ Proceedings of the Second International Symposium on Turbo Codes and Related Topics, pp. 1-8, Brest, France, September 2000], it is known that The most efficient use is achieved by irregular or irregular repetition of information symbols.In addition, the characteristics of accumulation repetition codes are characterized to a large extent by an interleaver, which together with an irregular repetition pattern and a checksum accumulation pattern determine the Tanner graph for a given code. h To ensure sufficient spacing of repeated characters, thereby ensuring the absence or small number of code words with low weight.

Существуют два класса перемежителей: случайный и детерминистический. Для формирования случайного перемежителя применяют датчик случайных чисел, при помощи которого определяют номер перемежаемого символа в последовательности после перемежения. Последовательность получаемых номеров подвергают проверке на достаточность разнесения подряд идущих повторенных информационных символов с выбраковкой (откатом назад) последовательностей, не прошедших подобной проверки. Известен, в частности, алгоритм S-random [S. Dolinar and D. Divsalar “Weight Distribution for turbo codes using random and non-random permutation” JPL Progress report 42-122 pp 56-65 Aug 15,1995]. Известен патент [United States Patent 6,453,442 Sadjadpour, et al., September 17, 2002 Two stage S--Random interleaver], где реализован модифицированный S-random алгоритм.There are two classes of interleavers: random and deterministic. To generate a random interleaver, a random number sensor is used, with which the number of the interleaved symbol in the sequence after interleaving is determined. The sequence of numbers obtained is checked for sufficiency of diversity of consecutive repeated information symbols with culling (rollback) of sequences that have not passed such a check. Known, in particular, the algorithm S-random [S. Dolinar and D. Divsalar “Weight Distribution for turbo codes using random and non-random permutation” JPL Progress report 42-122 pp 56-65 Aug 15.1995]. A patent is known [United States Patent 6,453,442 Sadjadpour, et al., September 17, 2002 Two stage S - Random interleaver], where a modified S-random algorithm is implemented.

Известен способ [Пат. 2427491 CA (0237743 WO), МКИ H04L1/18. Automatic Request Protocol Based Packet Transmission Using Punctured Codes / R. Wang, Ming J., A. Garmonov, A. Savinkov, A. Zhdanov. –PST Gazette. – 2002, May 19. – P. 9340], где подобная стратегия не приводит к снижению пропускной способности поскольку дополнительные кодовые символы или частичную повторную передача передают в составе следующего пакета, где проводят дополнительное перфорирование, освобождая место для проверочных кодовых символов для пакета в котором обнаружена ошибка, таким образом, ошибка в одном пакете исправляется за счет избыточности другого.The known method [Pat. 2427491 CA (0237743 WO), MKI H04L1 / 18. Automatic Request Protocol Based Packet Transmission Using Punctured Codes / R. Wang, Ming J., A. Garmonov, A. Savinkov, A. Zhdanov. –PST Gazette. - 2002, May 19. - P. 9340], where such a strategy does not lead to a decrease in throughput since additional code symbols or partial retransmission are transmitted as part of the next packet, where additional punching is performed, making room for verification code symbols for a packet in which an error is detected, thus, an error in one package is corrected due to the redundancy of another.

Примером системы передачи данных, использующей перемежитель DRP (States Patent 6,857,087), является способ и устройство из патента US 7673213, Keith ChuggPaul Gray, "Method and apparatus for communications using improved turbo like codes". В совокупности с адаптивным способом выравнивания скорости в зависимости от ошибок в канале [US 7975189 Cenk Kose Error rate estimation/application to code-rate adaption] система носит коммерческое название F-LDPC. An example of a data communication system using a DRP interleaver (States Patent 6,857,087) is the method and apparatus of US 7673213, Keith ChuggPaul Gray, "Method and apparatus for communications using improved turbo like codes". Together with the adaptive method of speed equalization depending on channel errors [US 7975189 Cenk Kose Error rate estimation / application to code-rate adaption], the system bears the commercial name F-LDPC.

Способ по патенту US 7673213 состоит в следующем.The method according to patent US 7673213 is as follows.

На передающей стороне:On the transmitting side:

– кодирование битов данных в соответствии с внешним сверточным кодом для создания последовательности внешних кодированных бит;- encoding data bits in accordance with an external convolutional code to create a sequence of external encoded bits;

– обработку последовательности внешних кодированных бит с использованием перемежителя и одного модуля проверки на четность (SPC) для создания последовательности промежуточных бит;- processing a sequence of external coded bits using an interleaver and one parity check module (SPC) to create a sequence of intermediate bits;

– кодирование последовательности промежуточных битов в соответствии с внутренним сверточным кодом для создания последовательности внутренних кодированных бит;- encoding a sequence of intermediate bits in accordance with the internal convolutional code to create a sequence of internal encoded bits;

– обработку последовательности внутренних закодированных битов с использованием модуля выкалывания для получения выколотых бит; а также- processing a sequence of internally encoded bits using a puncturing module to obtain punctured bits; as well as

– объединение последовательности бит данных и последовательности выколотых битов для получения последовательности кодированных выходных бит.- combining a sequence of data bits and a sequence of punctured bits to obtain a sequence of encoded output bits.

На приемной стороне:On the receiving side:

– получение мягких решений из канала;- receiving soft decisions from the channel;

– разделение мягких решений на систематическую и проверочную части;- division of soft decisions into systematic and verification parts;

– обработку проверочной части путем добавления нулевых бит на места выколотых; - processing of the test part by adding zero bits to the punctured places;

а такжеas well as

– итеративное декодирование с мягким входом мягким выходом проверочной и систематической части внешним декодером сверточного кода, внутренним декодером сверточного кода, декодером контроля четности (SPC), с использованием перемежителя и деперемежителя для создания последовательности декодированных бит.- iterative decoding with soft input by soft output of the verification and systematic parts by an external convolutional code decoder, internal convolutional code decoder, parity decoder (SPC), using an interleaver and deinterleaver to create a sequence of decoded bits.

Способ по патенту US 7975189 состоит в следующем:The method according to patent US 7975189 consists in the following:

– передачу первого набора данных, закодированных с первой скоростью передачи данных, причем первый блок данных включает в себя первое количество бит данных и первое количество бит четности;- transmitting a first set of data encoded with a first data rate, the first data block including a first number of data bits and a first number of parity bits;

– прием первого оцененного количества битовых ошибок для первого набора данных из приемника;- receiving the first estimated number of bit errors for the first data set from the receiver;

– определение первой мгновенной скорости передачи битов (BER) для первого набора данных на основе оценочного количества ошибок в битах, полученных от приемника;- determining the first instantaneous bit rate (BER) for the first data set based on the estimated number of errors in bits received from the receiver;

– определение второй скорости передачи данных в зависимости от первой скорости передачи данных и первого мгновенного BER;- determining a second data rate depending on the first data rate and the first instantaneous BER;

– передачу второго набора данных, закодированных со второй скоростью передачи данных.- transmitting a second set of data encoded with a second data rate.

На приемной стороне:On the receiving side:

– принимают первый набор данных, закодированных с первой скоростью передачи данных от передатчика, причем первый набор данных включает в себя первое количество бит данных и первое количество бит четности;- take the first set of data encoded with a first data rate from the transmitter, and the first data set includes a first number of data bits and a first number of parity bits;

– определяют первое оценочное количество битовых ошибок для первого набора данных, принимаемых приемником;- determine the first estimated number of bit errors for the first data set received by the receiver;

– определяют первую мгновенную частоту ошибок в битах для первого набора данных на основе оценочного количества бит-ошибок в первом блоке данных;- determine the first instantaneous error rate in bits for the first data set based on the estimated number of error bits in the first data block;

– определяют вторую скорость передачи данных в зависимости от первой скорости передачи данных и первой мгновенной частоты ошибок;- determine the second data rate depending on the first data rate and the first instantaneous error rate;

– передают сообщение обратной связи передатчику, указывающее, что передатчик должен передавать последующие блоки данных в приемник с использованием второй скорости передачи данных; а также- transmitting a feedback message to the transmitter indicating that the transmitter should transmit subsequent data blocks to the receiver using a second data rate; as well as

– принимают второй блок данных от передатчика, закодированного со второй скоростью передачи данных.- receive a second data block from a transmitter encoded with a second data rate.

Из анализа патента US 7673213 видно, что это последовательное объединение сверточного кода и кода проверки на четность, то есть коммерческое название F-LDPC (гибкий код с низкой плотностью проверок на четность) не соответствует истине, так как при последовательном каскадировании кодов обычно не выполняется условие низкой плотности проверок на четность. Для последовательно соединенных кодов характерна зависимость от точности оценки дисперсии шума в канале. При неточной оценке эффективность итеративного декодирования декодерами с мягким входом мягким выходом резко падает из-за резкого роста метрик в системе декодеров, охваченных положительной обратной связью. From the analysis of US 7673213, it is clear that this is a sequential combination of a convolutional code and a parity check code, that is, the commercial name F-LDPC (flexible code with a low density of parity checks) is not true, since the sequential cascading of codes usually does not satisfy low density parity checks. Serially connected codes are characterized by a dependence on the accuracy of the estimation of the noise variance in the channel. With an inaccurate estimate, the efficiency of iterative decoding by soft input decoders with a soft output drops sharply due to a sharp increase in metrics in the decoder system covered by positive feedback.

В основе способа классический иррегулярный код повторений с накоплениями с низкой плотностью проверок на четность [D. Divsalar, H. Jin, and R. J. McEliece. "Coding theorems for ‘turbo-like’ codes." Proc. 36th Allerton Conf. on Communication, Control and Computing, Allerton, Illinois, Sept. 1998, pp. 201–210.], где применен новый эффективный перемежитель, и производят оценку качества декодирования, то есть выносится решение о правильности приема The method is based on the classic irregular repetition code with accumulations with a low density of parity checks [D. Divsalar, H. Jin, and R. J. McEliece. "Coding theorems for‘ turbo-like ’codes." Proc. 36th Allerton Conf. on Communication, Control and Computing, Allerton, Illinois, Sept. 1998, pp. 201–210.], Where a new effective interleaver is applied, and decoding quality is evaluated, that is, a decision is made on the correct reception

Недостатком классической схемы при декодировании по алгоритму "распространение сообщений" является то, что затруднено согласование скоростей посредством перфорирования или выкалывания. При замене выколотого символа нулем и приходе этого нуля на проверочный узел декодирования в качестве исходящего сообщения будут выданы все нули, что снижает эффективность декодирования. The disadvantage of the classical scheme when decoding according to the algorithm of "distribution of messages" is that it is difficult to coordinate speeds through punching or puncturing. When replacing the punctured character with zero and the arrival of this zero at the decoding check node, all zeros will be issued as an outgoing message, which reduces the decoding efficiency.

Наиболее близким аналогом по технической сущности к предлагаемому является способ передачи голосовых данных в системе цифровой радиосвязи по патенту РФ 2323520, H03M 13/00, принятый за прототип.The closest analogue in technical essence to the proposed one is a method for transmitting voice data in a digital radio communication system according to the patent of the Russian Federation 2323520, H03M 13/00, adopted as a prototype.

Особенностью способа-прототипа является то, что производят оценку качества декодирования без применения циклической контрольной суммы. Для чего рассматривают последовательность не равных нулю контрольных сумм. При превышении значения порога пакет объявляет декодированным недостоверно.A feature of the prototype method is that they evaluate the quality of decoding without using a cyclic checksum. Why consider a sequence of non-zero checksums. When the threshold value is exceeded, the packet is declared invalid decoded.

Способ-прототип заключается в следующем.The prototype method is as follows.

На передающей стороне:On the transmitting side:

• формируют пакеты данных, каждый из которых содержит упорядоченную последовательность информационных символов; • form data packets, each of which contains an ordered sequence of information symbols;

• каждый информационный символ повторяют определенное число раз, в зависимости от его номера по порядку в последовательности символов, формируя последовательность повторенных информационных символов, причем количество повторений определяется заранее; • each information symbol is repeated a certain number of times, depending on its number in order in the sequence of characters, forming a sequence of repeated information symbols, and the number of repetitions is determined in advance;

• осуществляют перемежение в последовательности повторенных информационных символов, добиваясь достаточного разнесения идущих подряд повторенных информационных символов, и формируя последовательность перемеженных повторенных информационных символов;• interleave in a sequence of repeated information symbols, achieving sufficient diversity of consecutive repeated information symbols, and forming a sequence of interleaved repeated information symbols;

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

Figure 00000011
путем суммирования по заданному модулю проверочного символа
Figure 00000012
со всеми перемеженными повторенными информационными символами из группы
Figure 00000013
;• divide the interleaved repeated information symbols into groups so that the first verification symbol is obtained by summing, according to a given module, the initial value of the summation variable with all interleaved repeated information symbols from the first group, and the verification symbol
Figure 00000011
by summing the specified character of the check character
Figure 00000012
with all interleaved repeated information symbols from the group
Figure 00000013
;

• запоминают полученные проверочные символы;• remember received verification characters;

• формируют кодовое слово путем добавления проверочных символов к информационным символам; • form a code word by adding test characters to information characters;

на приемной стороне:on the receiving side:

• формируют принятые корреляционные отклики на каждый из переданных кодовых символов; • form the received correlation responses to each of the transmitted code symbols;

• выполняют оценку шумового параметра смеси сигнал плюс шум, которая приближенно равна величине стандартного отклонения эквивалентного гауссовского белого шума, которым аппроксимируются помехи в канале;• evaluate the noise parameter of the signal plus noise mixture, which is approximately equal to the standard deviation of the equivalent Gaussian white noise, which approximates the noise in the channel;

• формируют мягкие решения о принятых кодовых символах, используя полученную оценку шумового параметра смеси сигнал плюс шум; • form soft decisions about the adopted code symbols using the obtained estimate of the noise parameter of the signal plus noise mixture;

• разделяют мягкие решения о принятых кодовых символах на решения об информационных символах и решения о проверочных символах;• share soft decisions on accepted code symbols into decisions on information symbols and decisions on verification symbols;

• повторяют мягкие решения об информационных символах в соответствии с шаблоном повторения информационных символов;• repeat soft decisions about information symbols in accordance with the pattern of repeating information symbols;

• повторяют мягкие решения о проверочных символах, по крайней мере, два раза за исключением последнего проверочного символа;• repeat soft decisions about check characters at least twice except for the last check character;

• для мягких решений об информационных символах выполняют перемежение аналогичное перемежению на передающей стороне;• for soft decisions about information symbols, they perform interleaving similar to interleaving on the transmitting side;

• формируют группы перемеженных мягких решений об информационных символах аналогичные группам соответствующих информационных символов на передающей стороне;• form groups of interleaved soft decisions about information symbols similar to groups of corresponding information symbols on the transmitting side;

• первую группу перемеженных мягких решений дополняют мягким решением, соответствующим начальному значению переменной суммирования, и первой копией мягкого решения о первом проверочном символе, образуя первое кодовое слово кода обобщенной проверки на четность;• the first group of interleaved soft solutions is supplemented with the soft solution corresponding to the initial value of the summation variable and the first copy of the soft decision about the first check character, forming the first code word of the general parity check code;

Figure 00000014
• группу перемеженных мягких решений дополняют второй копией
Figure 00000015
проверочного символа и первой копией мягкого решения об
Figure 00000016
проверочном символе, образуя
Figure 00000017
кодовое слово кода обобщенной проверки на четность;
Figure 00000014
• complement the group of interleaved soft solutions with a second copy
Figure 00000015
test character and the first copy of the soft decision about
Figure 00000016
check character, forming
Figure 00000017
generalized parity check codeword;

• для каждого мягкого решения, входящего в каждое кодовое слово кода обобщенной проверки на четность, формируют модифицированное мягкое решение, которое является исходящим сообщением кодового слова кода обобщенной проверки на четность, таким образом, что исходящее сообщение кодового слова кода обобщенной проверки на четность представляет собой результат функционального преобразования исходных мягких решений - входящих сообщений кодового слова кода обобщенной проверки на четность;• for each soft decision included in each code word of the generalized parity check code, a modified soft solution is formed, which is an outgoing message of the code word of the general parity check code, so that the outgoing message of the code word of the general parity check code is the result functional transformation of the original soft decisions - incoming messages of the code word of the code of a generalized parity check;

• деперемежают исходящие сообщения кодового слова кода обобщенной проверки на четность таким образом, что каждой копии мягкого решения о кодовом символе ставят в соответствие исходящее сообщение кодового слова кода обобщенной проверки на четность соответствующее копии мягкого решения об этом символе;• deinterleave the outgoing message of the code word of the generalized parity check code so that each copy of the soft decision on the code symbol is associated with the outgoing message of the code word of the generalized parity code corresponding to the copy of the soft decision about this symbol;

• группируют исходящие сообщения кодового слова кода обобщенной проверки на четность с мягкими решениями о принятых кодовых символах, так что в каждую группу входят мягкое решение о соответствующем кодовом символе и исходящие сообщение кодового слова кода обобщенной проверки на четность, соответствующее копии мягкого решения об этом символе, формируя, таким образом, кодовое слово обобщенного кода повторения, ставя каждое кодовое слово обобщенного кода повторения в соответствие кодовому символу, таким образом, что каждое исходящее сообщения кодового слова кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторения;• group outgoing messages of the code word of the generalized parity check code with soft decisions about the received code symbols, so that each group includes a soft decision about the corresponding code symbol and outgoing messages of the code word of the generalized parity code corresponding to a copy of the soft decision about this symbol, thus forming the code word of the generalized repetition code, putting each codeword of the generalized repetition code in accordance with the code symbol, so that each outgoing the codeword of the generalized parity check code is an incoming message of the codeword of the generalized repetition code;

• для каждого мягкого решения входящего в каждое кодовое слово обобщенного кода повторения формируют модифицированное мягкое решение, которое является исходящим сообщением кодового обобщенного кода повторения представляющее собой результат функционального преобразования над входящими сообщениями кодового слова обобщенного кода повторения;• for each soft decision of the generalized repetition code included in each codeword, a modified soft decision is formed, which is an outgoing message of the generalized code of the repetition code representing the result of a functional transformation over the incoming messages of the code word of the generalized repetition code;

• итеративно повторяют процесс обмена исходящими и входящими сообщениями таким образом, что исходящее сообщение кодового слова обобщенного кода повторений является входящим сообщением кодового слова кода обобщенной проверки на четность, а исходящее сообщение кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторений формируя на каждой итерации последовательность модифицированных мягких решений;• iteratively repeat the process of exchanging outgoing and incoming messages in such a way that the outgoing message of the code word of the generalized repetition code is the incoming message of the code word of the generalized parity check code, and the outgoing message of the code of the generalized parity check code is the incoming message of the code word of the generalized repetition code iterating a sequence of modified soft solutions;

• из последовательности модифицированных мягких решений формируют декодированные кодовые слова;• decoded codewords are formed from a sequence of modified soft decisions;

• умножают каждое декодированное кодовое слово на проверочную матрицу, получая упорядоченную последовательность контрольных сумм;• Multiply each decoded codeword by a check matrix, obtaining an ordered sequence of checksums;

• если все контрольные суммы равны нулю, то кодовое слово считают декодированным верно;• if all checksums are equal to zero, then the codeword is considered decoded correctly;

• если количество контрольных сумм отличных от нуля нечетно и последняя контрольная сумма отлична от нуля, то заменяют ее нулем;• if the number of checksums other than zero is odd and the last checksum is different from zero, then replace it with zero;

• если количество контрольных сумм отличных от нуля нечетно и последняя в последовательности контрольная сумма равна нулю, то ее заменяют любым отличным от нуля значением;• if the number of checksums other than zero is odd and the last checksum in the sequence is zero, then it is replaced with any nonzero value;

• разбивают последовательность контрольных сумм на пары, в которые входят элементы последовательности, идущие подряд, причем каждая контрольная сумма входит только в единственную пару;• break down the sequence of checksums into pairs, which consist of sequential elements of a sequence, and each checksum is included only in a single pair;

• в каждой паре вычисляют разность номеров контрольных сумм;• in each pair, the difference in the numbers of the checksums is calculated;

• складывают все полученные разности номеров контрольных сумм;• add up all the received checksum number differences;

• сравнивают полученное число с заданным порогом, если число превышает установленный порог, то информационную часть кодового слова считают декодированной неверно;• compare the received number with a given threshold, if the number exceeds the set threshold, then the information part of the code word is considered decoded incorrectly;

• если полученное число меньше заданного порога, то информационную часть кодового слова считают декодированной верно.• if the received number is less than the specified threshold, then the information part of the code word is considered decoded correctly.

В прототипе реализована не только функция исправления ошибок, но также функция обнаружения ошибок без циклической контрольной суммы. Однако эффективность обнаружения ошибок существенно уступает алгоритму с циклической контрольной суммой. Тем не менее, функция обнаружения ошибок может быть использована для увеличения энергетического выигрыша кодирования путем применения алгоритма гибридного запроса-повторения без потери пропускной способности и не прибегая к перфорированию последовательности кодовых символов. Таким образом, задача увеличения энергетического выигрыша кодирования путем применения алгоритма гибридного запроса-повторения исключительно на физическом уровне является актуальной.The prototype implements not only an error correction function, but also an error detection function without a cyclic checksum. However, the error detection efficiency is significantly inferior to the cyclic checksum algorithm. Nevertheless, the error detection function can be used to increase the coding energy gain by applying a hybrid repeat-request algorithm without losing bandwidth and without resorting to punching a sequence of code symbols. Thus, the task of increasing the energy gain of coding by applying the hybrid request-repeat algorithm exclusively at the physical level is relevant.

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

Figure 00000018
путем суммирования по заданному модулю проверочного символа
Figure 00000019
со всеми перемеженными повторенными информационными символами из группы
Figure 00000018
, запоминают полученные проверочные символы, формируют кодовое слово путем добавления проверочных символов к информационным символам, на приемной стороне формируют принятые корреляционные отклики на каждый из переданных кодовых символов, выполняют оценку шумового параметра смеси сигнал плюс шум, формируют мягкие решения о принятых кодовых символах, используя полученную оценку шумового параметра смеси сигнал плюс шум, разделяют мягкие решения о принятых кодовых символах на решения об информационных символах и решения о проверочных символах, повторяют мягкие решения об информационных символах в соответствии с шаблоном повторения информационных символов, повторяют мягкие решения о проверочных символах, по крайней мере, два раза за исключением последнего проверочного символа, для мягких решений об информационных символах выполняют перемежение аналогичное перемежению на передающей стороне, формируют группы перемеженных мягких решений об информационных символах, аналогичные группам соответствующих информационных символов на передающей стороне, первую группу перемеженных мягких решений дополняют мягким решением, соответствующим начальному значению переменной суммирования, и первой копией мягкого решения о первом проверочном символе, образуя первое кодовое слово кода обобщенной проверки на четность,
Figure 00000020
группу перемеженных мягких решений дополняют второй копией
Figure 00000021
проверочного символа и первой копией мягкого решения об
Figure 00000022
проверочном символе, образуя
Figure 00000023
кодовое слово кода обобщенной проверки на четность, для каждого мягкого решения, входящего в каждое кодовое слово кода обобщенной проверки на четность, формируют модифицированное мягкое решение, которое является исходящим сообщением кодового слова кода обобщенной проверки на четность таким образом, что исходящее сообщение кодового слова кода обобщенной проверки на четность представляет собой результат функционального преобразования исходных мягких решений, представляющих собой входящие сообщения кодового слова кода обобщенной проверки на четность, деперемежают исходящие сообщения кодового слова кода обобщенной проверки на четность таким образом, что каждой копии мягкого решения о кодовом символе ставят в соответствие исходящее сообщение кодового слова кода обобщенной проверки на четность соответствующее копии мягкого решения об этом символе, группируют исходящие сообщения кодового слова кода обобщенной проверки на четность с мягкими решениями о принятых кодовых символах, так что в каждую группу входят мягкое решение о соответствующем кодовом символе и исходящие сообщение кодового слова кода обобщенной проверки на четность, соответствующее копии мягкого решения об этом символе, формируя, таким образом, кодовое слово обобщенного кода повторения, ставя каждое кодовое слово обобщенного кода повторения в соответствие кодовому символу, таким образом, что каждое исходящее сообщение кодового слова кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторения, для каждого мягкого решения, входящего в каждое кодовое слово обобщенного кода повторения, формируют модифицированное мягкое решение, которое является исходящим сообщением кодового обобщенного кода повторения, представляющее собой результат функционального преобразования над входящими сообщениями кодового слова обобщенного кода повторения, итеративно повторяют процесс обмена исходящими и входящими сообщениями таким образом, что исходящее сообщение кодового слова обобщенного кода повторений является входящим сообщением кодового слова кода обобщенной проверки на четность, а исходящее сообщение кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторений, формируя на каждой итерации последовательность модифицированных мягких решений, из последовательности модифицированных мягких решений формируют декодированные кодовые слова, умножают каждое декодированное кодовое слово на проверочную матрицу, получая упорядоченную последовательность контрольных сумм, если все контрольные суммы равны нулю, то кодовое слово считают декодированным верно, если количество контрольных сумм отличных от нуля нечетно и последняя контрольная сумма отлична от нуля, то заменяют ее нулем, если количество контрольных сумм отличных от нуля нечетно, и последняя в последовательности контрольная сумма равна нулю, то ее заменяют любым отличным от нуля значением, разбивают последовательность контрольных сумм на пары, в которые входят элементы последовательности, идущие подряд, причем каждая контрольная сумма входит только в единственную пару, в каждой паре вычисляют разность номеров контрольных сумм, складывают все полученные разности номеров контрольных сумм, сравнивают полученное число с заданным порогом, если число превышает установленный порог, то информационную часть кодового слова считают декодированной неверно, если полученное число меньше заданного порога, то информационную часть кодового слова считают декодированной верно, согласно изобретению, если информационная часть кодового слова декодирована неверно то формируют сигнал запроса повторной передачи по каналу обратной связи для передающей стороны, на передающей стороне при получении сигнала запроса повторной передачи формируют пакет с кодово-сопряженной частью, для чего в очередном кодированном пакете часть кодовых символов заменяют суммой по модуля два с кодовыми символами ранее переданного и ошибочно декодированого пакета, формируя тем самым кодово-сопряженную часть, при получении текущего пакета с кодово-сопряженной частью декодируют его совместно с ранее принятым ошибочно декодированным пакетом для чего восстанавливают, возможно, с ошибками, последовательность мягких решений ошибочного пакета, модифицируют мягкие решения в кодово-сопряженной части в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов для чего заменяют знак на противоположный у принятого мягкого решения, если восстановленный кодовый символ предыдущего пакета соответствует логической единице, получая мягкие решения текущего пакета, декодируют мягкие решения текущего пакета, восстанавливают последовательность мягких решений текущего пакета, модифицируют мягкие решения в кодово-сопряженной части в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов для чего заменяют знак на противоположный у принятого мягкого решения если восстановленный кодовый символ текущего пакета соответствует логической единице, получая модифицированную последовательность мягких решений для ошибочного пакета, повторно декодируют ошибочный пакет, используя модифицированную последовательность мягких решений для ошибочного пакета как дополнительную информацию в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов, передают по каналу обратной связи сигналы, характеризующие результативность декодирования кодово-сопряженных пакетов.To solve the problem in a method of transmitting data in a digital communication system, which consists in the fact that data packets are formed on the transmitting side, each of which contains an ordered sequence of information symbols, each information symbol is repeated a certain number of times, depending on its number in order symbol sequences, forming a sequence of repeated information symbols, moreover, the number of repetitions is determined in advance, interleaving in sequence and repeated information symbols, achieving sufficient diversity of consecutive repeated information symbols, and forming a sequence of interleaved repeated information symbols, divide the interleaved repeated information symbols into groups so that the first verification symbol is obtained by summing, according to a given module, the initial value of the summation variable with all interleaved repeated information symbols from the first group, and the verification symbol
Figure 00000018
by summing the specified character of the check character
Figure 00000019
with all interleaved repeated information symbols from the group
Figure 00000018
, the received verification symbols are stored, the code word is formed by adding the verification symbols to the information symbols, received correlation responses to each of the transmitted code symbols are generated on the receiving side, the noise plus signal noise parameter is estimated, soft decisions about the received code symbols are generated using the received estimation of the noise parameter of the signal plus noise mixture, soft decisions on accepted code symbols are divided into decisions on information symbols and decisions on test mvolov, repeat soft decisions about information symbols in accordance with the pattern of repeating information symbols, repeat soft decisions about check symbols at least two times with the exception of the last check symbol, for soft decisions about information symbols perform interleaving similar to interleaving on the transmitting side, form groups of interleaved soft decisions about information symbols, similar to groups of corresponding information symbols on the transmitting side, the first group of soft-low solutions are supplemented with a soft solution corresponding to the initial value of the variable of summation, and the first copy of the soft decision about the first check character, forming the first code word of the general parity check code,
Figure 00000020
a group of interleaved soft solutions complement the second copy
Figure 00000021
test character and the first copy of the soft decision about
Figure 00000022
check character, forming
Figure 00000023
the codeword of the code of the generalized parity check, for each soft decision that is included in each codeword of the code of the generalized parity, form a modified soft solution that is an outgoing message of the code word of the code of the general parity code so that the outgoing message of the code word of the code of generalized parity is the result of a functional transformation of the original soft decisions, which are incoming messages of the code word of the code of the generalized verification of parity, deinterleave the outgoing message of the code word of the generalized parity check code so that each copy of the soft decision about the code symbol matches the outgoing message of the code word of the generalized parity code corresponding to the copy of the soft decision about this symbol, group the outgoing messages of the code word generalized parity check code with soft decisions about accepted code characters, so that each group includes a soft decision about the corresponding code character and the outcome The message contains the code word of the generalized parity check code corresponding to the copy of the soft decision on this symbol, thus forming the code word of the generalized repetition code, putting each code word of the generalized repetition code in correspondence with the code symbol, so that each outgoing message of the code word the generalized parity check code is an incoming message of the codeword of the generalized repetition code, for each soft solution included in each codeword of the generalized repetition code I, form a modified soft solution, which is an outgoing message of a code generalized repetition code, which is the result of a functional transformation of the code word of a generalized repetition code over incoming messages, iteratively repeat the process of exchanging outgoing and incoming messages in such a way that the outgoing message of the code word of a generalized repetition code is the incoming message of the code word of the generalized parity check code, and the outgoing message of the code code of the generalized parity A parity key is an incoming message of a code word of a generalized repetition code, forming a sequence of modified soft decisions at each iteration, decoded code words are formed from a sequence of modified soft decisions, each decoded code word is multiplied by a check matrix, getting an ordered sequence of checksums if all the checksums are equal to zero, then the codeword is considered decoded correctly if the number of non-zero checksums is odd and the last checksum is non-zero, then replace it with zero, if the number of checksums other than zero is odd, and the last checksum in the sequence is zero, then it is replaced with any non-zero value, break the sequence of checksums into pairs, which include sequence elements in a row, each checksum being included only in a single pair, in each pair the difference in the numbers of the checksums is calculated, all the differences in the numbers of the checksums are added m, the received number is compared with a predetermined threshold, if the number exceeds the set threshold, then the information part of the codeword is considered decoded incorrectly, if the received number is less than the specified threshold, then the information part of the code word is considered decoded correctly, according to the invention, if the information part of the codeword is decoded incorrectly then form a retransmission request signal on the feedback channel for the transmitting side, on the transmitting side upon receipt of the retransmission request signal form Coziness is a packet with a code-conjugate part, for which, in the next coded packet, a part of the code symbols is replaced by a module sum of two with the code symbols of a previously transmitted and erroneously decoded packet, thereby forming a code-conjugate part, and upon receipt of the current packet with a code-conjugate part, decode it, together with the previously received erroneously decoded packet, for which, possibly with errors, the sequence of soft decisions of the erroneous packet is restored, soft decisions are modified in the code-conjugate part in those positions in which the code symbols were replaced by the sum of the symbols of different packets, for which the sign is replaced with the opposite for the adopted soft decision, if the reconstructed code symbol of the previous packet corresponds to a logical unit, receiving soft decisions of the current packet, decode the soft decisions of the current packet, restoring the sequence of soft decisions the current package, soft solutions are modified in the code-conjugate part at those positions in which the code symbols were replaced by the sum of the symbols of different packets for o replace the opposite sign for the adopted soft decision if the recovered code symbol of the current packet corresponds to a logical unit, receiving a modified sequence of soft decisions for an erroneous packet, re-decode the error packet using the modified sequence of soft decisions for an erroneous packet as additional information at those positions in which replaced the code symbols with the sum of the symbols of different packets, transmit signals characterizing the results via the feedback channel The property of decoding code-conjugate packets.

Графические материалы, используемые в описании:Graphic materials used in the description:

Фиг. 1 – алгоритм декодирования на графе: обмен сообщениями.FIG. 1 - graph decoding algorithm: messaging.

Фиг. 2 – граф Петерсона и заданный на нем код по способу Таннера.FIG. 2 - Peterson's graph and the code set on it according to the Tanner method.

Фиг. 3 – вариант реализации передающей части цифровой системы связи для передачи данных.FIG. 3 is an embodiment of a transmitting part of a digital communication system for transmitting data.

Фиг. 4 – вариант реализации приемной части цифровой системы связи для передачи данных.FIG. 4 is an embodiment of a receiving part of a digital communication system for transmitting data.

Фиг. 5 – вариант реализации итеративного декодера.FIG. 5 is an embodiment of an iterative decoder.

Фиг. 6 – способ обнаружения ошибок без CRC.FIG. 6 is a method for detecting errors without CRC.

Фиг. 7 – способ перемежения кодовых символов.FIG. 7 is a method of interleaving code symbols.

Фиг. 8 – результаты моделирования.FIG. 8 - simulation results.

Заявляемый способ передачи данных в цифровой системе связи, заключается в том, что The inventive method of transmitting data in a digital communication system, is that

на передающей стороне:on the transmitting side:

– формируют пакеты данных, каждый из которых содержит упорядоченную последовательность информационных символов; - form data packets, each of which contains an ordered sequence of information symbols;

– каждый информационный символ повторяют определенное число раз, в зависимости от его номера по порядку в последовательности символов, формируя последовательность повторенных информационных символов, причем, количество повторений определяется заранее;- each information symbol is repeated a certain number of times, depending on its number in order in the sequence of characters, forming a sequence of repeated information symbols, moreover, the number of repetitions is determined in advance;

– осуществляют перемежение в последовательности повторенных информационных символов, добиваясь достаточного разнесения идущих подряд повторенных информационных символов, и формируя последовательность перемеженных повторенных информационных символов;- carry out the interleaving in the sequence of repeated information symbols, achieving sufficient diversity of consecutive repeated information symbols, and forming a sequence of interleaved repeated information symbols;

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

Figure 00000024
путем суммирования по заданному модулю проверочного символа
Figure 00000025
со всеми перемеженными повторенными информационными символами из группы
Figure 00000026
; - split the interleaved repeated information symbols into groups so that the first verification symbol is obtained by summing, according to a given module, the initial value of the summation variable with all interleaved repeated information symbols from the first group, and the verification symbol
Figure 00000024
by summing the specified character of the check character
Figure 00000025
with all interleaved repeated information symbols from the group
Figure 00000026
;

– запоминают полученные проверочные символы;- remember received verification characters;

– формируют кодовое слово путем добавления проверочных символов к информационным символам; - form a code word by adding test characters to information characters;

на приемной стороне:on the receiving side:

– формируют принятые корреляционные отклики на каждый из переданных кодовых символов; - form the received correlation responses to each of the transmitted code symbols;

– выполняют оценку шумового параметра смеси сигнал плюс шум, которая приближенно равна величине стандартного отклонения эквивалентного гауссовского белого шума, которым аппроксимируются помехи в канале;- evaluate the noise parameter of the signal plus noise mixture, which is approximately equal to the standard deviation of the equivalent Gaussian white noise, which approximates the noise in the channel;

– формируют мягкие решения о принятых кодовых символах, используя полученную оценку шумового параметра смеси сигнал плюс шум;- form soft decisions about the adopted code symbols using the obtained estimate of the noise parameter of the signal plus noise mixture;

– разделяют мягкие решения о принятых кодовых символах на решения об информационных символах и решения о проверочных символах;- divide soft decisions about accepted code symbols into decisions about information symbols and decisions about check symbols;

– повторяют мягкие решения о информационных символах в соответствии с шаблоном повторения информационных символов;- repeat soft decisions about information symbols in accordance with the pattern of repetition of information symbols;

– повторяют мягкие решения о проверочных символах по крайней мере два раза за исключением последнего проверочного символа;- repeat soft decisions about check characters at least twice except for the last check character;

– для мягких решений об информационных символах выполняют перемежение аналогичное перемежению на передающей стороне;- for soft decisions about information symbols, interleaving is performed similar to interleaving on the transmitting side;

– формируют группы перемеженных мягких решений об информационных символах аналогичные группам соответствующих информационных символов на передающей стороне;- form groups of interleaved soft decisions about information symbols similar to groups of corresponding information symbols on the transmitting side;

– первую группу перемеженных мягких решений дополняют мягким решением, соответствующим начальному значению переменной суммирования, и первой копией мягкого решения о первом проверочном символе, образуя первое кодовое слово кода обобщенной проверки на четность;- the first group of interleaved soft solutions is supplemented with the soft solution corresponding to the initial value of the summation variable, and the first copy of the soft decision about the first check character, forming the first code word of the general parity check code;

Figure 00000027
группу перемеженных мягких решений дополняют второй копией
Figure 00000028
проверочного символа и первой копией мягкого решения об
Figure 00000029
проверочном символе, образуя
Figure 00000030
кодовое слово кода обобщенной проверки на четность;-
Figure 00000027
a group of interleaved soft solutions complement the second copy
Figure 00000028
test character and the first copy of the soft decision about
Figure 00000029
check character, forming
Figure 00000030
generalized parity check codeword;

– для каждого мягкого решения, входящего в каждое кодовое слово кода обобщенной проверки на четность, формируют модифицированное мягкое решение, которое является исходящим сообщением кодового слова кода обобщенной проверки на четность, таким образом, что исходящее сообщение кодового слова кода обобщенной проверки на четность представляет собой результат функционального преобразования исходных мягких решений – входящих сообщений кодового слова кода обобщенной проверки на четность;- for each soft decision included in each code word of the generalized parity check code, a modified soft solution is formed, which is an outgoing message of the code word of the general parity check code, so that the outgoing message of the code word of the general parity check code is the result functional transformation of the original soft decisions - incoming messages of the code word of the code of a generalized parity check;

– деперемежают исходящие сообщения кодового слова кода обобщенной проверки на четность таким образом, что каждой копии мягкого решения о кодовом символе ставят в соответствие исходящее сообщение кодового слова кода обобщенной проверки на четность соответствующее копии мягкого решения об этом символе;- deinterleave the outgoing message of the code word of the generalized parity check code in such a way that each copy of the soft decision on the code symbol is associated with the outgoing message of the code word of the generalized parity code corresponding to the copy of the soft decision about this symbol;

– группируют исходящие сообщения кодового слова кода обобщенной проверки на четность с мягкими решениями о принятых кодовых символах, так что в каждую группу входят мягкое решение о соответствующем кодовом символе и исходящие сообщение кодового слова кода обобщенной проверки на четность, соответствующее копии мягкого решения об этом символе, формируя, таким образом, кодовое слово обобщенного кода повторения, ставя каждое кодовое слово обобщенного кода повторения в соответствие кодовому символу, таким образом, что каждое исходящее сообщения кодового слова кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторения;- group outgoing messages of the code word of the generalized parity check code with soft decisions about the received code symbols, so that each group includes a soft decision about the corresponding code symbol and outgoing messages of the code word of the generalized parity code corresponding to a copy of the soft decision about this symbol, thus forming the code word of the generalized repetition code, putting each codeword of the generalized repetition code in accordance with the code symbol, so that each outgoing the codeword of the generalized parity check code is an incoming message of the codeword of the generalized repetition code;

– для каждого мягкого решения входящего в каждое кодовое слово обобщенного кода повторения формируют модифицированное мягкое решение, которое является исходящим сообщением кодового обобщенного кода повторения представляющее собой результат функционального преобразования над входящими сообщениями кодового слова обобщенного кода повторения;- for each soft decision of the generalized repetition code included in each codeword, a modified soft solution is formed, which is an outgoing message of the generalized code of the repetition code representing the result of a functional transformation over the incoming messages of the code word of the generalized repetition code;

– итеративно повторяют процесс обмена исходящими и входящими сообщениями таким образом, что исходящее сообщение кодового слова обобщенного кода повторений является входящим сообщением кодового слова кода обобщенной проверки на четность, а исходящее сообщение кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторений формируя на каждой итерации последовательность модифицированных мягких решений;- iteratively repeat the process of exchanging outgoing and incoming messages in such a way that the outgoing message of the code word of the generalized repetition code is the incoming message of the code word of the generalized parity check code, and the outgoing message of the code of the generalized parity check code is the incoming message of the code word of the generalized repetition code iterating a sequence of modified soft solutions;

– из последовательности модифицированных мягких решений формируют декодированные кодовые слова;- decoded codewords are formed from a sequence of modified soft decisions;

– умножают каждое декодированное кодовое слово на проверочную матрицу, получая упорядоченную последовательность контрольных сумм;- multiply each decoded codeword by a check matrix, obtaining an ordered sequence of checksums;

– если все контрольные суммы равны нулю, то кодовое слово считают декодированным верно;- if all the checksums are equal to zero, then the code word is considered decoded correctly;

– если количество контрольных сумм отличных от нуля нечетно и последняя контрольная сумма отлична от нуля, то заменяют ее нулем;- if the number of checksums other than zero is odd and the last checksum is different from zero, then replace it with zero;

– если количество контрольных сумм отличных от нуля нечетно и последняя в последовательности контрольная сумма равна нулю, то ее заменяют любым отличным от нуля значением;- if the number of non-zero checksums is odd and the last checksum in the sequence is zero, then it is replaced with any non-zero value;

– разбивают последовательность контрольных сумм на пары, в которые входят элементы последовательности идущие подряд, причем каждая контрольная сумма входит только в единственную пару;- break down the sequence of checksums into pairs, which include sequential elements of the sequence, and each checksum is included only in a single pair;

– в каждой паре вычисляют разность номеров контрольных сумм;- in each pair, the difference in the numbers of the checksums is calculated;

– складывают все полученные разности номеров контрольных сумм;- add up all the received differences of the numbers of the checksums;

– сравнивают полученное число с заданным порогом, если число превышает установленный порог, то информационную часть кодового слова считают декодированной неверно;- compare the received number with a given threshold, if the number exceeds the set threshold, then the information part of the code word is considered decoded incorrectly;

– если полученное число меньше заданного порога, то информационную часть кодового слова считают декодированной верно;- if the received number is less than a given threshold, then the information part of the codeword is considered decoded correctly;

– если информационная часть кодового слова декодирована неверно то формируют сигнал запроса повторной передачи по каналу обратной связи для передающей стороны; - if the information part of the codeword is decoded incorrectly, a retransmission request signal is generated on the feedback channel for the transmitting side;

– на передающей стороне при получении сигнала запроса повторной передачи формируют пакет с кодово-сопряженной частью, для чего в очередном кодированном пакете часть кодовых символов заменяют суммой по модуля два с кодовыми символами ошибочно декодированного пакета; - on the transmitting side, upon receipt of the retransmission request signal, a packet with a code-conjugate part is formed, for which, in the next encoded packet, part of the code symbols is replaced by the sum of two modules with the code symbols of the erroneously decoded packet;

– при получении текущего пакета с кодово-сопряженной частью декодируют его совместно с ранее принятым ошибочно декодированным пакетом для чего восстанавливают, возможно, с ошибками, последовательность мягких решений ошибочного пакета;- upon receipt of the current packet with the code-conjugate part, it is decoded together with the previously received erroneously decoded packet, for which, possibly with errors, the sequence of soft decisions of the erroneous packet is restored;

– вычитают из кодово-сопряженной части пакета восстановленные мягкие решения в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов, получая мягкие решения текущего пакета;- subtracted soft solutions from the code-conjugate part of the packet in those positions in which the code symbols were replaced by the sum of the symbols of different packets, obtaining soft solutions of the current packet;

– декодируют мягкие решения текущего пакета; - decode soft decisions of the current package;

– восстанавливают последовательность мягких решений решений текущего пакета;- restore the sequence of soft decisions of the decisions of the current package;

– вычитают из кодово-сопряженной части текущего пакета восстановленные мягкие решения текущего пакета в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов получая модифицированную последовательность мягких решений для ошибочного пакета;- subtracted from the code-conjugate part of the current packet, the restored soft solutions of the current package in those positions in which the code symbols were replaced by the sum of the symbols of different packets to obtain a modified sequence of soft decisions for the erroneous packet;

– повторно декодируют ошибочный пакет используя модифицированную последовательность мягких решений для ошибочного пакета как дополнительную информацию, в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов;- re-decode the erroneous packet using a modified sequence of soft decisions for the erroneous packet as additional information, in those positions in which the code symbols were replaced by the sum of the symbols of different packets;

– передают по каналу обратной связи сигналы, характеризующие результативность декодирования кодово сопряженных пакетов.- transmit signals on the feedback channel characterizing the decoding performance of code-conjugate packets.

Для реализации заявляемого способа может быть использована система связи, передающее устройство (передающая сторона) которой представлено на фиг.3, а приемное устройство (приемная сторона) – на фиг. 4.To implement the proposed method, a communication system can be used, the transmitting device (transmitting side) of which is shown in FIG. 3, and the receiving device (receiving side) is shown in FIG. four.

Передающее устройство, представленное на фиг. 3, содержит последовательно соединенные блок повторения информационных символов 1, блок перемежения информационных символов 2, блок разделения проверочных символов на группы 3, блок суммирования 5, блок памяти 8, блок межпакетного суммирования 7 и мультиплексор 6, выход которого соединен с каналом связи 9. Кроме того, передающее устройство содержит блок управления 4, сигналы с выходов которого являются управляющими сигналами, которые, в том числе, обеспечивают синхронизацию остальных блоков. Первый выход блока управления 4 соединен со вторым входом блока повторения информационных символов 1, второй выход блока управления 4 соединен со вторым входом блока перемежения информационных символов 2, третий выход блока управления 4 соединен со вторым входом блока разделения проверочных символов на группы 3, четвертый выход блока управления 4 соединен со вторым входом блока суммирования 5, пятый выход блока управления 4 соединен со вторым входом блока памяти 8, шестой выход блока управления 4 соединен со вторым входом блока межпакетного суммирования 7, седьмой выход блока управления 4 соединен со вторым входом мультиплексора 6. Второй выход блока памяти 8 соединен с третьим входом блока межпакетного суммирования 7 и третьим входом мультиплексора 6.The transmitter shown in FIG. 3, contains a series of information symbol repetition unit 1, an information symbol interleaver 2, a check symbol separation unit 3, a summing unit 5, a memory unit 8, an inter-packet summing unit 7, and a multiplexer 6, the output of which is connected to the communication channel 9. In addition to Moreover, the transmitting device comprises a control unit 4, the signals from the outputs of which are control signals, which, inter alia, provide synchronization of the remaining blocks. The first output of the control unit 4 is connected to the second input of the information symbol repetition unit 1, the second output of the control unit 4 is connected to the second input of the information symbol interleaver 2, the third output of the control unit 4 is connected to the second input of the unit for separating test characters into groups 3, the fourth output of the unit control 4 is connected to the second input of the summing unit 5, the fifth output of the control unit 4 is connected to the second input of the memory unit 8, the sixth output of the control unit 4 is connected to the second input of the inter-packet block ummirovaniya 7, the seventh control unit 4 output is connected to a second input of multiplexer 6. A second output of the memory unit 8 is connected to a third input of the summing inter-packet 7 and a third input of the multiplexer 6.

Первый вход блока повторения информационных символов 1 является первым входом передающего устройства, на который поступают пакеты данных, этот же вход соединен с первым входом мультиплексора 6. Первый вход блока управления 4 является входом сигнала обратной связи на автоматический запрос повторение, он же является вторым входом передающего устройства.The first input of the information symbol repetition unit 1 is the first input of the transmitting device to which the data packets arrive, the same input is connected to the first input of the multiplexer 6. The first input of the control unit 4 is the input of the feedback signal to automatically request repetition, it is the second input of the transmitting devices.

Через канал связи 9 сигнал поступает на приемное устройство. Through the communication channel 9, the signal is supplied to the receiving device.

Приемное устройство, представленное на фиг. 4, содержит последовательно соединенные блок формирования корреляционных откликов и оценки шумового параметра 10, блок разделения мягких решений 11, блок повторения проверочных символов 12, блок формирования перемеженных мягких решений 15, первый итеративный декодер 16, блок вычисления контрольных сумм в декодированном кодовом слове 17, блок контроля ошибок в декодированном кодовом слове 18, выход которого является первым выходом приемного устройства. Выход блока разделения мягких решений 11 через последовательно соединенные блок повторения информационных символов 13 и блок перемежения информационных символов 14 соединен со вторым входом блока формирования перемеженных мягких решений 15, выход которого соединен с входом блока хранения и вычитания мягких решений 19, первый вход-выход которого через последовательно соединенные второй итеративный декодер 20, блок вычисления контрольных сумм в декодированном кодовом слове 21 и блок контроля ошибок в декодированном кодовом слове 22 соединен с входом канала обратной связи 23. При этом второй выход блока контроля ошибок в декодированном кодовом слове 22 соединен со вторым входом второго итеративного декодера 20. Второй вход-выход блока хранения и вычитания мягких решений 19 соединен с входом-выходом первого итеративного декодера 16, второй вход которого подсоединен к третьему выходу блока контроля ошибок в декодированном кодовом слове 18, второй выход которого соединен со вторым входом канала обратной связи 23. Второй выход блока формирования корреляционных откликов и оценки шумового параметра 10 соединен третьим входом блока формирования перемеженных мягких решений 15.The receiver of FIG. 4, contains in series a block for generating correlation responses and estimating a noise parameter 10, a soft decision separation unit 11, a check symbol repetition unit 12, an interleaved soft decision generating unit 15, a first iterative decoder 16, a checksum calculation unit in the decoded codeword 17, a block error control in the decoded codeword 18, the output of which is the first output of the receiving device. The output of the soft decision separation unit 11 through series-connected information symbol repeater 13 and the information symbol interleaver 14 is connected to the second input of the interleaved soft decision unit 15, the output of which is connected to the input of the soft decision storage and subtraction unit 19, the first input-output of which connected in series to the second iterative decoder 20, the checksum calculation unit in the decoded codeword 21, and the error control unit in the decoded codeword 22 is connected feedback channel input 23. In this case, the second output of the error control block in the decoded codeword 22 is connected to the second input of the second iterative decoder 20. The second input-output of the soft decision storage and subtraction unit 19 is connected to the input-output of the first iterative decoder 16, the second input which is connected to the third output of the error control unit in the decoded codeword 18, the second output of which is connected to the second input of the feedback channel 23. The second output of the block for generating correlation responses and estimating noise of parameter 10 is connected to the third input of the block for forming interleaved soft decisions 15.

Входом приемного устройства является вход блока формирования корреляционных откликов и оценки шумового параметра 10, на который поступает сигнал с передающего устройства через канал связи 9. Второй выход блока контроля ошибок в декодированном кодовом слове 22 является вторым выходом приемного устройства.The input of the receiving device is the input of the block for generating correlation responses and estimating the noise parameter 10, which receives a signal from the transmitting device through the communication channel 9. The second output of the error control unit in the decoded codeword 22 is the second output of the receiving device.

Итеративные декодеры 16 и 20 идентичны, поэтому рассмотрим вариант реализации первого итеративного декодера 16, представленный на фиг. 5. Первый итеративный декодер 16 содержит блок декодирования обобщенной проверки на четность 24, первый деперемежитель 25, второй деперемежитель 26, блок декодирования кода повторений 27, блок управления декодера 28, блок памяти 29, первый коммутатор 30, перемежитель 31 и второй коммутатор 32. Iterative decoders 16 and 20 are identical, therefore, we consider an embodiment of the first iterative decoder 16 shown in FIG. 5. The first iterative decoder 16 comprises a generalized parity check decoding unit 24, a first de-interleaver 25, a second de-interleaver 26, a repeat code decoding unit 27, a control unit of the decoder 28, a memory unit 29, a first switch 30, an interleaver 31, and a second switch 32.

Первый вход первого коммутатора 30 соединен с выходом блока формирования перемеженных мягких решений 15 (фиг. 4), второй вход коммутатора 30 соединен с первым выходом блока управления декодера 28, вход которого соединен с выходом блока контроля ошибок в декодированном кодовом слове 18. Третий вход первого коммутатора 30 является входом/выходом блока памяти 29. Первый выход первого коммутатора 30 является выходом мягких решений из каждого кодового слова кода обобщенной проверки на четность и соединен с входом блока декодирования обобщенной проверки на четность 24, выход которого через первый деперемежитель 25 соединен с первым входом блока декодирования кода повторений 27. Второй выход первого коммутатора 30 является выходом мягких решений о кодовом символе сохраненных в блоке памяти 29 и через деперемежитель 26 соединен со вторым входом блока декодирования кода повторений 27. Первый выход блока декодирования кода повторений 27, который является выходом исходящих сообщений кодового обобщенного кода, соединен через первый вход второго коммутатора 32 со входом перемежителя 31, выход которого соединен с четвертым входом первого коммутатора 30. Второй выход блока декодирования кода повторений 27, который является выходом декодированного кодового слова, соединен со вторым входом второго коммутатора 32, третий вход которого является входом управления и соединен со вторым выходом блока управления декодера 28. Выход второго коммутатора 32 соединен со входом блока вычисления контрольных сумм в декодированном кодовом слове 17. Сигналы синхронизации на фиг.5 для упрощения схемы не показаны.The first input of the first switch 30 is connected to the output of the interleaved soft decision forming unit 15 (Fig. 4), the second input of the switch 30 is connected to the first output of the control unit of the decoder 28, the input of which is connected to the output of the error control unit in the decoded codeword 18. The third input of the first the switch 30 is the input / output of the memory unit 29. The first output of the first switch 30 is the output of soft decisions from each code word of the generalized parity check code and is connected to the input of the generalized test decoding unit parity 24, the output of which through the first deinterleaver 25 is connected to the first input of the repeat code decoding unit 27. The second output of the first switch 30 is the output of soft code symbol decisions stored in the memory unit 29 and is connected through the de-interleaver 26 to the second input of the repeat code decoding unit 27. The first output of the repetition code decoding unit 27, which is the output of the outgoing messages of the code generalized code, is connected through the first input of the second switch 32 to the input of the interleaver 31, the output of which of the second is connected to the fourth input of the first switch 30. The second output of the repeat code decoding unit 27, which is the output of the decoded codeword, is connected to the second input of the second switch 32, the third input of which is the control input and connected to the second output of the decoder 28 control unit. the switch 32 is connected to the input of the checksum calculation unit in the decoded codeword 17. The synchronization signals in Fig. 5 are not shown to simplify the circuit.

Работает устройство следующим образом.The device operates as follows.

На передающей стороне сформированные пакеты данных, каждый из которых содержит упорядоченную последовательность информационных символов, поступают вход блока повторения информационных символов 1 и одновременно на первый вход мультиплексора 6. В блоке повторения информационных символов 1 каждый информационный символ повторяют определенное число раз, в зависимости от его номера по порядку в последовательности символов, формируя последовательность повторенных информационных символов, причем, количество повторений определяется заранее. Последовательность повторенных информационных символов с выхода блока повторения информационных символов 1 поступает на вход блока перемежения информационных символов 2, где осуществляют перемежение в последовательности повторенных информационных символов, добиваясь достаточного разнесения идущих подряд повторенных информационных символов и формируя последовательность перемеженных повторенных информационных символов. В блоке разделения проверочных символов на группы 3 разбивают перемеженные повторенные информационные символы на группы, затем в блоке суммирования 5 получают первый проверочный символ путем суммирования по заданному модулю начального значения переменной суммирования со всеми перемеженными повторенными информационными символами из первой группы, а проверочный символ

Figure 00000018
путем суммирования по заданному модулю проверочного символа
Figure 00000031
со всеми перемеженными повторенными информационными символами из группы
Figure 00000018
. Полученные проверочные символы запоминают блоке памяти 8. Запомненные проверочные символы поступают в мультиплексор 6, где формируют кодовое слово путем добавления проверочных символов к информационным символам. Через канал связи 9 сформированное кодовое слово передают на приемное устройство. В случае получения по каналу обратной связи сигнала запроса на повторную передачу формируют пакет с кодово-сопряженной частью, для чего в блоке межпакетного суммирования 7 суммируют кодовые символы текущего пакета с кодовыми символами ошибочно декодированного пакета, сохраненного в блоке памяти 8. В мультиплексоре 6 мультиплексируют кодово-сопряженную часть пакета, полученную с блока межпакетного суммирования 7 и кодовые символы текущего пакета, которые также сохраняют в блоке памяти 8.On the transmitting side, the generated data packets, each of which contains an ordered sequence of information symbols, receive the input of the information symbol repetition unit 1 and simultaneously to the first input of the multiplexer 6. In the information symbol repetition unit 1, each information symbol is repeated a certain number of times, depending on its number in order in the sequence of characters, forming a sequence of repeated information symbols, moreover, the number of repetitions is determined in advance e. The sequence of repeated information symbols from the output of the information symbol repetition unit 1 is fed to the input of the information symbol interleaver 2, where interleaving is performed in the sequence of repeated information symbols, achieving sufficient diversity of successive repeated information symbols and forming a sequence of interleaved repeated information symbols. In the block for dividing the check symbols into groups 3, interleaved repeated information symbols are divided into groups, then in the summing unit 5, the first check symbol is obtained by summing the initial value of the summation variable with all interleaved repeated information symbols from the first group by the given module, and the check symbol
Figure 00000018
by summing the specified character of the check character
Figure 00000031
with all interleaved repeated information symbols from the group
Figure 00000018
. The received verification symbols are stored in the memory unit 8. The stored verification symbols are transmitted to the multiplexer 6, where a codeword is formed by adding verification symbols to the information symbols. Through the communication channel 9, the generated codeword is transmitted to the receiving device. If a retransmission request signal is received via the feedback channel, a packet with a code-conjugate part is formed, for which the code symbols of the current packet with the code symbols of the erroneously decoded packet stored in the memory block 8 are summed in the inter-packet summing block 7, and the code multiplexer 6 is multiplexed - the conjugate part of the packet received from the inter-packet summing block 7 and the code symbols of the current packet, which are also stored in the memory block 8.

На приемной стороне сформированное в передатчике кодовое слово поступает на вход блока формирования корреляционных откликов и оценки шумового параметра 10, где формируют принятые корреляционные отклики на каждый из переданных кодовых символов и выполняют оценку шумового параметра смеси сигнал плюс шум, которая приближенно равна величине стандартного отклонения эквивалентного гауссовского белого шума, которым аппроксимируются помехи в канале, а затем формируют мягкие решения о принятых кодовых символах, используя полученную оценку шумового параметра смеси сигнал плюс шум. Полученные мягкие решения поступают на вход блока разделения мягких решений 11, где происходит разделение мягких решений о принятых кодовых символах на решения об информационных символах и решения о проверочных символах. Мягкие решения об информационных символах с блока разделения мягких решений 11 поступают на вход блока повторения информационных символов 13, где повторяют мягкие решения об информационных символах в соответствии с шаблоном повторения информационных символов. Мягкие решения о проверочных символах с блока разделения мягких решений 11 поступают на вход блока повторения проверочных символов 12, где повторяют мягкие решения о проверочных символах, по крайней мере, два раза за исключением последнего проверочного символа. Для мягких решений об информационных символах выполняют перемежение аналогичное перемежению на передающей стороне в блоке перемежения информационных символов 14. Затем в блоке формирования перемеженных мягких решений 15 формируют группы перемеженных мягких решений об информационных символах аналогичные группам соответствующих информационных символов на передающей стороне, используя сигналы с блока проверочных символов 12 и с блока формирования корреляционных откликов и оценки шумового параметра 10, причем первую группу перемеженных мягких решений дополняют мягким решением, соответствующим начальному значению переменной суммирования, и первой копией мягкого решения о первом проверочном символе, образуя первое кодовое слово кода обобщенной проверки на четность,

Figure 00000032
группу перемеженных мягких решений дополняют второй копией
Figure 00000033
проверочного символа и первой копией мягкого решения об
Figure 00000034
проверочном символе, образуя
Figure 00000035
кодовое слово кода обобщенной проверки на четность. Сформированные перемеженные мягкие решения поступают на первый вход первого итеративного декодера 16 (на первый коммутатор 26 фиг. 5), в котором формируется декодированное кодовое слово. Каждое декодированное кодовое слово в блоке вычисления контрольных сумм в декодированном кодовом слове 17 умножают на проверочную матрицу, получая упорядоченную последовательность контрольных сумм, если все контрольные суммы равны нулю, то кодовое слово считают декодированным верно, если количество контрольных сумм отличных от нуля нечетно и последняя контрольная сумма отлична от нуля, то заменяют ее нулем, если количество контрольных сумм отличных от нуля нечетно и последняя в последовательности контрольная сумма равна нулю, то ее заменяют любым отличным от нуля значением, разбивают последовательность контрольных сумм на пары, в которые входят элементы последовательности, идущие подряд, причем каждая контрольная сумма входит только в единственную пару, в каждой паре вычисляют разность номеров контрольных сумм, складывают все полученные разности номеров контрольных сумм. Затем в блоке контроля ошибок в декодированном кодовом слове 18 сравнивают полученное число с заданным порогом, если число превышает установленный порог, то информационную часть кодового слова считают декодированной неверно, если полученное число меньше заданного порога, то информационную часть кодового слова считают декодированной верно. On the receiving side, the code word generated in the transmitter is input to the block for generating correlation responses and estimating the noise parameter 10, where the received correlation responses to each of the transmitted code symbols are generated and the noise parameter of the signal plus noise mixture is estimated, which is approximately equal to the standard deviation of the equivalent Gaussian white noise, which approximates the interference in the channel, and then form soft decisions about the received code symbols using the resulting estimate The smart parameter of the signal plus noise mixture. The resulting soft decisions go to the input of the soft decision separation unit 11, where the soft decisions about the adopted code symbols are divided into decisions about information characters and decisions about check characters. Soft decisions about information symbols from the soft decision separation unit 11 are fed to the input of the information symbol repetition block 13, where soft decisions about information symbols are repeated in accordance with the information symbol repetition pattern. Soft decisions about the test characters from the soft decision separation unit 11 are input to the test character repetition unit 12, where soft decisions about the test characters are repeated at least two times, with the exception of the last check character. For soft decisions about information symbols, interleaving is performed similar to interleaving on the transmitting side in the block of interleaving information symbols 14. Then, in the block for generating interleaved soft decisions 15, groups of interleaved soft decisions about information symbols similar to the groups of corresponding information symbols on the transmitting side are formed using signals from the block of verification characters 12 and from the block for the formation of correlation responses and estimates of the noise parameter 10, and the first group of interleaved soft solutions complement the soft solution corresponding to the initial value of the variable summation, and the first copy of the soft decision on the first check character, forming the first code word of a code for generalized parity,
Figure 00000032
a group of interleaved soft solutions complement the second copy
Figure 00000033
test character and the first copy of the soft decision about
Figure 00000034
check character, forming
Figure 00000035
generalized parity code code word. The generated interleaved soft decisions are sent to the first input of the first iterative decoder 16 (to the first switch 26 of FIG. 5), in which a decoded codeword is generated. Each decoded codeword in the checksum calculation unit in the decoded codeword 17 is multiplied by a check matrix to obtain an ordered sequence of checksums; if all the checksums are equal to zero, then the code word is considered decoded correctly if the number of non-zero checksums is odd and the last check the sum is nonzero, then replace it with zero, if the number of checksums other than zero is odd and the last checksum in the sequence is zero, then for enyayut any nonzero value, divide the sequence of checksums in pairs, which include elements of a sequence, consecutive, each checksum includes only a single pair, each pair calculated difference numbers checksums are folded all the obtained difference numbers checksums. Then, in the error control unit in the decoded codeword 18, the obtained number is compared with a predetermined threshold; if the number exceeds a set threshold, then the information part of the codeword is considered decoded incorrectly; if the received number is less than the specified threshold, then the information part of the codeword is considered decoded correctly.

Восстановленные проверочные символы пакета, в котором детектирована ошибка, сохраняют в блоке хранения и вычитания мягких решений 19, где и вычитают из кодово-сопряженной части пакета восстановленные мягкие решения в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов, получая мягкие решения текущего пакета, которые используют как дополнительную информацию при декодировании текущего пакета первым итеративным декодером 16. Восстановленную последовательность мягких решений текущего пакета сохраняют в блоке хранения и вычитания мягких решений 19, там же вычитают из кодово-сопряженной части текущего пакета восстановленные мягкие решения текущего пакета в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов, получая модифицированную последовательность мягких решений для ошибочного пакета. Повторно декодируют ошибочный пакет вторым итеративным декодером 20, используя модифицированную последовательность мягких решений для ошибочного пакета, как дополнительную информацию в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов. Передают по каналу обратной связи 23 сигналы, характеризующие результативность декодирования кодово-сопряженных пакетов.The reconstructed check symbols of the packet in which the error was detected are stored in the soft decision storage and subtraction unit 19, where the reconstructed soft solutions are subtracted from the code-conjugate part of the packet at the positions in which the code symbols are replaced by the sum of the symbols of different packets, obtaining soft solutions of the current packets that are used as additional information when decoding the current packet by the first iterative decoder 16. The reconstructed sequence of soft decisions of the current packet is stored in block x injured and subtracted soft solutions 19, in the same place, the restored soft solutions of the current package are subtracted from the code-conjugate part of the current package at the positions in which the code symbols were replaced by the sum of the symbols of different packages, obtaining a modified sequence of soft solutions for the erroneous package. The error packet is re-decoded by the second iterative decoder 20, using the modified sequence of soft decisions for the error packet, as additional information at those positions in which the code symbols were replaced by the sum of the symbols of different packets. Transmit via feedback channel 23 signals characterizing the decoding performance of code-conjugate packets.

Алгоритм обнаружения ошибок в кодовом слове представлен на фиг. 6.The error detection algorithm in the codeword is shown in FIG. 6.

Обнаружение ошибок в заявляемом способе передачи данных в цифровой системе связи может быть пояснено следующим примером. Пусть мы имеем код “повторение с накоплением” заданный двудольным регулярным графом. Рассмотрим различные конфигурации ошибок. Отметим, случай, когда существуют ошибочно декодированные переменные вершины, но все контрольные суммы равны нулю. Это случай необнаружимой ошибки. Рассмотрим также случай, когда ошибки только в проверочной части кодового слова. Заметим, что каждая ошибка в проверочной части вызывает неравенство нулю двух соседних контрольных сумм. Однако неравные нулю контрольные суммы при ошибке в информационной части разнесены на расстояние пропорциональное параметру разнесения интерливера. Таким образом, при наличии единственной ошибки легко определить к какому символу она относится: информационному или проверочному. Для этого достаточно рассмотреть разность номеров проверочных вершин соответствующих неравным нулю контрольным суммам. Если таковая разность равна 1, то ошибочный символ однозначно можно отнести к проверочным символам, если больше, то ошибочный символ информационный.The detection of errors in the inventive method of transmitting data in a digital communication system can be explained by the following example. Suppose we have a “repeat with accumulation” code given by a bipartite regular graph. Consider the various error configurations. Note the case where there are erroneously decoded vertex variables, but all checksums are equal to zero. This is a case of an undetectable error. Consider also the case where errors are only in the verification part of the codeword. Note that each error in the verification part causes two neighboring checksums to be zero. However, non-zero checksums with an error in the information part are spaced a distance proportional to the spacing parameter of the interleaver. Thus, in the presence of a single error, it is easy to determine which symbol it refers to: informational or verification. To do this, it suffices to consider the difference in the numbers of test vertices corresponding to non-zero checksums. If such a difference is 1, then the erroneous character can be unambiguously attributed to the test characters, if more, then the erroneous character is informational.

Переходя к случаю многих ошибок, алгоритм состоит в следующем: Turning to the case of many errors, the algorithm is as follows:

• если число отличных от нуля контрольных сумм нечетно, то изменяют контрольное значение последней суммы, добиваясь четного числа контрольных сумм;• if the number of non-zero checksums is odd, then the control value of the last amount is changed, achieving an even number of checksums;

• последовательно разбивают контрольные суммы на пары, вычисляют сумму разностей адресов проверочных вершин;• consistently break the checksums into pairs, calculate the sum of the differences of the addresses of the test vertices;

• сравнивают полученное значение с порогом, если оно меньше порога, то относят ошибки только к проверочным символам.• compare the obtained value with the threshold; if it is less than the threshold, then the errors are referred only to check symbols.

Таким образом, обнаружение ошибок осуществляют без CRC, тем самым повышая качество радиосвязи за счет снижения количества избыточных передаваемых кодовых символов, обеспечивая одновременно обнаружение и исправление ошибок.Thus, error detection is carried out without CRC, thereby improving the quality of radio communications by reducing the number of redundant transmitted code symbols, while simultaneously detecting and correcting errors.

Первый итеративный декодер 16, представленный на фиг. 5, работает следующим образом.The first iterative decoder 16 shown in FIG. 5, works as follows.

По сигналу с блока управления декодера 28 коммутатор 30 коммутирует мягкие решения из каждого кодового слова кода обобщенной проверки на четность на вход блока декодирования кода обобщенной проверки на четность и сохраняют их в блоке памяти 29. В блоке декодирования кода обобщенной проверки на четность 24 для каждого мягкого решения, входящего в каждое кодовое слово кода обобщенной проверки на четность, формируют модифицированное мягкое решение, которое является исходящим сообщением кодового слова кода обобщенной проверки на четность, таким образом, что исходящее сообщение кодового слова кода обобщенной проверки на четность представляет собой результат функционального преобразования исходных мягких решений – входящих сообщений кодового слова кода обобщенной проверки на четность. В деперемежителе 25 деперемежают исходящие сообщения кодового слова кода обобщенной проверки на четность таким образом, что каждой копии мягкого решения о кодовом символе ставят в соответствие исходящее сообщение кодового слова кода обобщенной проверки на четность соответствующее копии мягкого решения об этом символе. Мягкие решения о кодовом символе, сохраненные в блоке памяти 29, через коммутатор 30 деперемежают в деперемежителе 26 таким образом, что каждой копии мягкого решения о кодовом символе, сохраненной в блоке памяти 29, ставят в соответствие исходящее сообщение кодового слова кода обобщенной проверки на четность деперемеженной в блоке 25 соответствующее копии мягкого решения об этом символе. Деперемеженные мягкие решения с блоков 25 и 26 поступают в блок декодирования кода повторений 27, для каждого мягкого решения входящего в каждое кодовое слово обобщенного кода повторения формируют модифицированное мягкое решение, которое является исходящим сообщением кодового обобщенного кода повторения, представляющее собой результат функционального преобразования над входящими сообщениями кодового слова обобщенного кода повторения. По управляющему сигналу с блока управления декодера 28 коммутатор 32 пропускает на перемежитель 31 исходящих сообщений кодового слова обобщенного кода повторения, где происходит их перемежение, либо сформированные в блоке декодирования кода повторений 27 декодированные кодовые слова по соответствующему сигналу блока управления 28 коммутатор 32 на блок вычисления контрольных сумм в декодированном кодовом слове 17. .Итеративно повторяют процесс обмена исходящими и входящими сообщениями таким образом, что исходящее сообщение кодового слова обобщенного кода повторений является входящим сообщением кодового слова кода обобщенной проверки на четность, а исходящее сообщение кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторений, формируя на каждой итерации последовательность модифицированных мягких решений, из последовательности модифицированных мягких решений формируют декодированные кодовые слова.According to the signal from the control unit of the decoder 28, the switch 30 commutes soft decisions from each code word of the generalized parity check code to the input of the decoding unit of the generalized parity check code and stores them in the memory unit 29. In the decoding block of the generalized parity check code 24 for each soft the solutions included in each codeword of the generalized parity check code form a modified soft solution, which is an outgoing message of the codeword of the generalized parity check code, so It means that the outgoing message of the code word of the code of the generalized parity check is the result of the functional transformation of the original soft solutions - incoming messages of the code word of the code of the generalized parity check. In the de-interleaver 25, the outgoing messages of the code word of the generalized parity check code are de-interleaved so that each copy of the soft decision on the code symbol is associated with the outgoing message of the code word of the generalized parity code corresponding to the copy of the soft decision on this symbol. Soft code symbol decisions stored in the memory unit 29 are de-interleaved through the switch 30 in the de-interleaver 26 in such a way that each copy of the soft code symbol decision stored in the memory unit 29 is assigned an outgoing code word message of the generalized parity code of the de-interleaved code in block 25, the corresponding copy of the soft decision about this symbol. The deinterleaved soft decisions from blocks 25 and 26 go to the repetition code decoding unit 27, for each soft decision of the generalized repetition code included in each codeword, a modified soft decision is formed, which is the outgoing message of the generalized repetition code, which is the result of a functional transformation over incoming messages codeword of a generic repetition code. By the control signal from the control unit of the decoder 28, the switch 32 passes to the interleaver 31 outgoing messages the code words of the generalized repetition code, where they are interleaved, or the decoded code words generated in the decoding unit of the repetition code 27 by the corresponding signal of the control unit 28 of the switch 32 to the control calculation unit sums in the decoded codeword 17.. Iteratively repeat the process of exchanging outgoing and incoming messages in such a way that the outgoing message of the code word about a generalized repetition code is an incoming message of a code word of a generalized parity check code, and an outgoing message of a code of a generalized parity check code is an incoming message of a code word of a generalized repetition code, forming a sequence of modified soft decisions at each iteration, decoded code words are formed from a sequence of modified soft decisions.

Все блоки, входящие в систему связи могут быть реализованы на процессоре, ПЛИС, специализированной микросхеме.All blocks included in the communication system can be implemented on the processor, FPGA, specialized chip.

Для заявляемого способа передачи данных в системе цифровой радиосвязи на основе кодов с низкой плотностью проверок на четность используется предлагаемый способ перемежения кодовых символов.For the inventive method for transmitting data in a digital radio communication system based on codes with a low density of parity checks, the proposed method for interleaving code symbols is used.

Известен способ перемежения последовательности кодовых символов по патенту РФ 2323520, H03M 13/00, (пункт 6 формулы изобретения), в котором последовательность кодовых символов разбивают на множество подпоследовательностей, в каждой из которых осуществляют перемежение при помощи пилотной псевдослучайной последовательности, которую задают посредством задания Гамильтонова пути на регулярном четырехвалентном графе. Пилотную псевдослучайную последовательность задают следующим образом. Пусть в графе существует гамильтонов путь, и нумерация вершин графа соответствует порядку прохождения данного пути. Пилотная псевдослучайная последовательность определена, если существует другой Гамильтонов путь, проходящий не по участвовавшим в первом пути ребрам графа. При прохождению по второму Гамильтонову пути получают последовательность номеров пройденных вершин, заданных при прохождению по первому пути, которая определяет пилотную псевдослучайную последовательность.A known method of interleaving a sequence of code symbols according to RF patent 2323520, H03M 13/00, (claim 6), in which a sequence of code symbols is divided into many subsequences, each of which is interleaved using a pilot pseudorandom sequence, which is set by setting Hamilton paths on a regular tetravalent graph. The pilot pseudo-random sequence is defined as follows. Suppose that there is a Hamiltonian path in the graph, and the numbering of the vertices of the graph corresponds to the order of passage of this path. A pilot pseudorandom sequence is defined if there is another Hamiltonian path passing along the edges of the graph that did not participate in the first path. When passing along the second Hamiltonian path, a sequence of numbers of passed vertices is obtained, given when passing along the first path, which defines a pilot pseudorandom sequence.

Недостатком данного способа перемежения является несколько худшие характеристики помехоустойчивости по сравнению со следующим вариантом перемежения кодовых символов (патент РФ 2323520, H03M 13/00, перемежение кодовых символов по п. 9) The disadvantage of this method of interleaving is the slightly worse noise immunity characteristics compared to the following variant of interleaving code symbols (RF patent 2323520, H03M 13/00, interleaving code symbols according to claim 9)

Наиболее близким аналогом по технической сущности к предлагаемому является "Способ передачи голосовых данных в системе цифровой радиосвязи и способ перемежения последовательности кодовых символов (варианты)", патент РФ 2323520, H03M 13/00, перемежение кодовых символов по п. 9, принятый за прототип.The closest analogue in technical essence to the proposed one is "A method for transmitting voice data in a digital radio communication system and a method for interleaving a sequence of code symbols (options)", RF patent 2323520, H03M 13/00, interleaving code symbols according to claim 9, adopted as a prototype.

Способ-прототип заключается в следующем: The prototype method is as follows:

• разбивают последовательность символов для перемежения на подпоследовательности символов для перемежения;• break the sequence of characters for interleaving into subsequences of characters for interleaving;

• осуществляют обмен кодовыми символами между и/или внутри подпоследовательностей, образуя перемеженные подпоследовательности кодовых символов;• exchange code symbols between and / or within subsequences, forming interleaved subsequences of code symbols;

• формируют из подпоследовательностей финальную перемеженную последовательность;• form the final interleaved sequence from subsequences;

• разбивают последовательность

Figure 00000036
символов для перемежения на две подпоследовательности символов для перемежения в первую из которых входят
Figure 00000037
символов для перемежения, а во вторую
Figure 00000038
символов для перемежения, причем формируют первую и вторую подпоследовательность таким образом, что в первой подпоследовательности выполняется условие
Figure 00000039
, • break the sequence
Figure 00000036
characters for interleaving into two subsequences of characters for interleaving, the first of which includes
Figure 00000037
characters for interleaving, and in the second
Figure 00000038
characters for interleaving, and form the first and second subsequence so that in the first subsequence the condition
Figure 00000039
,

а во второй подпоследовательности выполняется условие

Figure 00000040
, где
Figure 00000041
– номера кодовых символов до перемежения, а
Figure 00000042
– номера кодовых символов после перемежения,
Figure 00000043
– целые положительные числа;and in the second subsequence, the condition
Figure 00000040
where
Figure 00000041
- numbers of code symbols before interleaving, and
Figure 00000042
- code symbol numbers after interleaving,
Figure 00000043
- positive integers;

• – производя отбор

Figure 00000037
символов в первую подпоследовательность по первым
Figure 00000037
адресам, заданным в пилотной псевдослучайной последовательности и производя отбор последних
Figure 00000044
символов во вторую подпоследовательность по последним
Figure 00000045
адресам, заданным в пилотной псевдослучайной последовательности, для определения которой формируют множество номеров
Figure 00000046
от
Figure 00000047
до
Figure 00000048
, где
Figure 00000036
– количество символов для перемежения следующим образом:• - making selection
Figure 00000037
characters in the first subsequence of the first
Figure 00000037
addresses specified in the pilot pseudo-random sequence and selecting the latter
Figure 00000044
characters in the second subsequence of the last
Figure 00000045
the addresses specified in the pilot pseudo-random sequence, for the determination of which form a set of numbers
Figure 00000046
from
Figure 00000047
before
Figure 00000048
where
Figure 00000036
- the number of characters to interleave as follows:

– устанавливают начальное значение параметра разнесения

Figure 00000049
, где
Figure 00000043
– целые положительные числа и выполняется
Figure 00000050
%;- set the initial value of the parameter explode
Figure 00000049
where
Figure 00000043
- positive integers and is satisfied
Figure 00000050
%;

• формируют множество пар чисел

Figure 00000051
, определяющих закон взаимно однозначного соответствия между первоначальной последовательностью символов и перемеженной последовательностью символов, состоящее из одной пары чисел, где первое число – номер последовательности до перемежения, а второе число – номер элемента в последовательности после перемежения, где в вышеупомянутой паре чисел первое равно нулю и второе равно случайным образом выбранному номеру из множества
Figure 00000052
, который при этом исключают из множества
Figure 00000053
;• form many pairs of numbers
Figure 00000051
defining the law of a one-to-one correspondence between the initial sequence of characters and the interleaved sequence of characters, consisting of one pair of numbers, where the first number is the number of the sequence before interleaving, and the second number is the number of the element in the sequence after interleaving, where in the aforementioned pair of numbers the first is zero and the second is equal to a randomly selected number from the set
Figure 00000052
, which is excluded from the set
Figure 00000053
;

• инициализируют

Figure 00000054
;• initialize
Figure 00000054
;

• случайным образом выбирают из множества

Figure 00000055
элемент
Figure 00000056
и ставят ему во взаимно однозначное соответствие элемент
Figure 00000057
, определяя таким образом преобразование
Figure 00000058
;• randomly selected from a variety of
Figure 00000055
element
Figure 00000056
and put him in a one-to-one correspondence element
Figure 00000057
thus defining the transformation
Figure 00000058
;

• выполняют проверку дистанционного разнесения перемеженных символов для чего для всех

Figure 00000059
таких, что
Figure 00000060
,
Figure 00000061
вычисляют значение
Figure 00000062
; • perform verification of remote diversity of interleaved symbols for which for all
Figure 00000059
such that
Figure 00000060
,
Figure 00000061
calculate the value
Figure 00000062
;

• если все полученные значения больше или равны

Figure 00000063
, то увеличивают значение
Figure 00000064
, исключают элемент
Figure 00000065
из множества
Figure 00000066
и добавляют в множество
Figure 00000067
пару
Figure 00000068
;• if all received values are greater than or equal
Figure 00000063
then increase the value
Figure 00000064
exclude element
Figure 00000065
out of many
Figure 00000066
and added to many
Figure 00000067
a couple
Figure 00000068
;

• если хотя бы одна разность оказывается меньше, чем

Figure 00000063
, то повторно выбирают другой элемент
Figure 00000069
из множества
Figure 00000070
и повторяют для него проверку дистанционного разнесения перемеженных символов; • if at least one difference is less than
Figure 00000063
then re-select another item
Figure 00000069
out of many
Figure 00000070
and repeat for him the test of remote diversity of interleaved characters;

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

Figure 00000063
;• if it is impossible to find an element that satisfies the check for remote diversity of interleaved characters, repeat the whole algorithm again with the modified diversity parameter
Figure 00000063
;

• при достижении значения

Figure 00000071
присваивают
Figure 00000072
;• upon reaching a value
Figure 00000071
appropriate
Figure 00000072
;

• повторяют процедуру до тех пор, пока множество

Figure 00000073
не станет пустым, а множество
Figure 00000074
не будет содержать
Figure 00000075
пар чисел;• repeat the procedure until the set
Figure 00000073
will not become empty, but many
Figure 00000074
will not contain
Figure 00000075
pairs of numbers;

• формируют из подпоследовательностей финальную перемеженную последовательность.• form from the subsequences the final interleaved sequence.

Недостатком прототипа является последовательный характер процедуры перемежения: кодовые символы могут быть перемежены только один за другим, что займет значительное время, а достоинством прототипа хорошие характеристики помехоустойчивости. Прототип является модификацией алгоритма S-random [S. Dolinar and D. Divsalar “Weight Distribution for turbo codes using random and non-random permutation” JPL Progress report 42-122 pp 56-65 Aug 15,1995], распространенной на случай малой длины пакета.The disadvantage of the prototype is the sequential nature of the interleaving procedure: code symbols can be interleaved only one after another, which will take considerable time, and the advantage of the prototype is good noise immunity characteristics. The prototype is a modification of the S-random [S. Dolinar and D. Divsalar “Weight Distribution for turbo codes using random and non-random permutation” JPL Progress report 42-122 pp 56-65 Aug 15,1995], extended to the case of a short packet length.

Требования к перемежителю заключаются в том, чтобы обеспечить достаточное разнесение повторенных символов, обеспечив тем самым отсутствие или малое число кодовых слов с низким весом. Существуют два класса перемежителей: псевдослучайный и детерминистический. Для формирования случайного перемежителя применяют датчик случайных чисел, при помощи которого определяют номер перемежаемого символа в последовательности после перемежения. Последовательность получаемых номеров подвергают проверке на достаточность разнесения подряд идущих повторенных информационных символов с выбраковкой (откатом назад) последовательностей, не прошедших подобной проверки. The interleaver requirements are to provide sufficient spacing for repeated characters, thereby ensuring the absence or small number of low-weight codewords. There are two classes of interleavers: pseudo-random and deterministic. To generate a random interleaver, a random number sensor is used, with which the number of the interleaved symbol in the sequence after interleaving is determined. The sequence of numbers obtained is checked for sufficiency of diversity of consecutive repeated information symbols with culling (rollback) of sequences that have not passed such a check.

Псевдослучайные перемежители требуют много памяти для хранения и не могут быть сгенерированы на приемной и передающей стороне независимо или же такая генерация потребует больших вычислительных и временных затрат. От этого недостатка свободны детерминистические перемежители, где способ взаимно однозначного соответствия перемежения определяется путем задания параметризованного алгоритма. Такие перемежителя могут формироваться “на лету”, то есть непосредственно в процессе декодирования, и задаются путем определения параметров алгоритма (несколько положительных целых чисел). Pseudorandom interleavers require a lot of memory for storage and cannot be generated independently on the receiving and transmitting sides, or such generation will require a lot of computational and time consuming. Deterministic interleavers are free from this drawback, where the method of one-to-one correspondence of interleaving is determined by defining a parameterized algorithm. Such interleavers can be formed on the fly, that is, directly in the decoding process, and are set by determining the parameters of the algorithm (several positive integers).

Примером является решение, представляющее собой взаимно простой интерливер, [United States Patent 6,857,087 Crozier, et al. February 15, 2005 High-performance low-memory interleaver banks for turbo-codes]. Такой способ, известный как DRP перемежитель, заключается в перемежении последовательности

Figure 00000076
упорядоченных элементов, сформированных как
Figure 00000077
подпоследовательностей, где каждая подпоследовательность содержит в среднем
Figure 00000078
элементов. При этом An example is a solution that is a mutually simple interleaver, [United States Patent 6,857,087 Crozier, et al. February 15, 2005 High-performance low-memory interleaver banks for turbo-codes]. Such a method, known as DRP interleaver, consists in interleaving a sequence
Figure 00000076
ordered elements formed as
Figure 00000077
subsequences, where each subsequence contains on average
Figure 00000078
elements. Wherein

1. перемежают элементы в каждой из

Figure 00000077
подпоследовательностей для формирования последовательности из
Figure 00000076
упорядоченных элементов по правилу, установленному в пилотной подпоследовательности, формируя пилотную псевдослучайную подпоследовательность;1. interleave the elements in each of
Figure 00000077
subsequences to form a sequence of
Figure 00000076
ordered elements according to the rule established in the pilot subsequence, forming a pilot pseudo-random subsequence;

2. перемежают

Figure 00000076
элементов в пилотной псевдослучайной последовательности из
Figure 00000076
упорядоченных элементов для формирования перемеженной последовательности, сформированной как
Figure 00000018
подпоследовательностей, имеющих размер в среднем
Figure 00000079
элементов;2. interspersed
Figure 00000076
elements in the pilot pseudo-random sequence from
Figure 00000076
ordered elements to form an interleaved sequence formed as
Figure 00000018
subsequences having an average size
Figure 00000079
elements;

3. перемежают элементы внутри каждой из

Figure 00000018
подпоследовательности для получения перемеженной последовательности из
Figure 00000076
упорядоченных элементов.3. interleave the elements inside each of
Figure 00000018
subsequences to obtain an interleaved sequence from
Figure 00000076
ordered items.

Существенной особенностью данного способа является то, что шаг 2 выполняют путем взаимно-простого перемежителя, соответствующего преобразованию вида

Figure 00000080
, где
Figure 00000075
количество перемежаемых элементов, а
Figure 00000081
– старый номер в первой перемеженной последовательности
Figure 00000082
– число взаимно простое с
Figure 00000036
. Подобный подход также известен из [S. Dolinar and D. Divsalar “Weight Distribution for turbo codes using random and non-random permutation” JPL Progress report 42-122 pp 56-65 Aug 15,1995] как алгебраический интерливер. Подбор чисел
Figure 00000083
целесообразно таким образом, чтобы обеспечить наименьшее число кодовых слов с минимальным весом, что так же отвечает критерию минимума циклов длиной 4 на графе Таннера. Данный способ перемежения используют для турбокодов и он неприменим к кодам с низкой плотностью проверок на четность. Однако, взаимно-простой перемежитель допускает параллельное выполнение алгоритма перемежения несколькими процессорами.An essential feature of this method is that step 2 is performed by a mutually simple interleaver corresponding to a transformation of the form
Figure 00000080
where
Figure 00000075
the number of interleaved elements, and
Figure 00000081
- old number in the first interleaved sequence
Figure 00000082
- the number is coprime with
Figure 00000036
. A similar approach is also known from [S. Dolinar and D. Divsalar “Weight Distribution for turbo codes using random and non-random permutation” JPL Progress report 42-122 pp 56-65 Aug 15,1995] as an algebraic interleaver. Matching numbers
Figure 00000083
appropriate in such a way as to ensure the smallest number of code words with minimum weight, which also meets the criterion of minimum cycles of length 4 on the Tanner graph. This interleaving method is used for turbo codes and is not applicable to codes with a low density of parity checks. However, a mutually simple interleaver allows parallel execution of the interleaving algorithm by multiple processors.

Для того чтобы схема параллельного перемежения была реализуемой, работа каждого из процессоров не должна приводить к конфликтам при доступе к памяти. К числу таких конфликтов можно, например, отнести попытку одновременной записи и чтения отдельной ячейки памяти. Память обычно реализуют в виде блоков (“банков”) памяти, таким образом, что к каждому блоку за один квант времени возможен либо доступ на запись (по указанному адресу), либо доступ на чтение. In order for the parallel interleaving scheme to be feasible, the operation of each processor should not lead to conflicts when accessing memory. Such conflicts include, for example, an attempt to simultaneously write and read a separate memory cell. The memory is usually implemented in the form of blocks (“banks”) of memory, so that for each block in one time slot, either write access (at the specified address) or read access is possible.

Таким образом, видно, что актуальной является задача разработки алгоритма перемежения, который с одной стороны может быть реализован как результат параллельного перемежения последовательности кодовых символов несколькими процессорами, а с другой обеспечивать характеристики помехоустойчивости, сравнимые с прототипом.Thus, it is clear that the urgent task is to develop an interleaving algorithm, which, on the one hand, can be implemented as a result of parallel interleaving of a sequence of code symbols by several processors, and, on the other hand, to provide noise immunity characteristics comparable to the prototype.

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

Figure 00000036
разбивают на равные подпоследовательности установленного размера
Figure 00000084
, в каждой из подпоследовательностей производят перемежение по установленному правилу перемежения подпоследовательностей, согласно изобретению, формируют пилотную псевдослучайную подпоследовательность таким образом, что в пилотной подпоследовательности выполняется условие To solve the problem in a method of interleaving a sequence of code symbols, which consists in splitting a sequence of symbols for interleaving into subsequences of symbols for interleaving, exchanging code symbols between and / or within subsequences, forming interleaved subsequences of code symbols, form a final interleaved sequence from subsequences , a sequence of characters to interlace
Figure 00000036
broken down into equal subsequences of a fixed size
Figure 00000084
, in each of the subsequences, interleaving is performed according to the established rule of interleaving of subsequences, according to the invention, a pilot pseudo-random subsequence is formed in such a way that the condition is satisfied in the pilot subsequence

Figure 00000085
, где
Figure 00000086
– номера кодовых символов до перемежения, а
Figure 00000087
– номера тех же кодовых символов после перемежения,
Figure 00000088
– целое положительное число; для определения пилотной псевдослучайной подпоследовательности номеров формируют множество номеров
Figure 00000046
от
Figure 00000047
до
Figure 00000089
, где
Figure 00000090
– количество символов для перемежения следующим образом: устанавливают начальное целые положительные значение параметра разнесения
Figure 00000091
, формируют множество пар чисел
Figure 00000051
, определяющих закон взаимно однозначного соответствия между первоначальной последовательности символов и перемеженной подпоследовательности символов, состоящее из одной пары чисел, где первое число – номер в подпоследовательности до перемежения, а второе число – номер элемента в подпоследовательности после перемежения, где в вышеупомянутой паре чисел первое равно нулю и второе равно случайным образом выбранному номеру из множества
Figure 00000052
, который при этом исключают из множества
Figure 00000053
, инициализируют
Figure 00000054
, случайным образом выбирают из множества
Figure 00000055
элемент
Figure 00000056
и ставят ему во взаимно однозначное соответствие элемент
Figure 00000057
, определяя таким образом, преобразование
Figure 00000058
, выполняют проверку дистанционного разнесения перемеженных символов для чего для всех
Figure 00000059
таких, что
Figure 00000060
,
Figure 00000061
, вычисляют значение
Figure 00000062
, если все полученные значения разные, то увеличивают значение
Figure 00000064
; исключают элемент
Figure 00000065
из множества
Figure 00000066
и добавляют в множество
Figure 00000067
пару
Figure 00000068
, если хотя бы две разности оказываются равны, то повторно выбирают другой элемент
Figure 00000069
из множества
Figure 00000070
и повторяют для него проверку дистанционного разнесения перемеженных символов, при невозможности найти элемент, удовлетворяющий проверке дистанционного разнесения перемеженных символов, повторяют весь алгоритм заново с уменьшенным параметром разнесения
Figure 00000063
, повторяют процедуру до тех пор, пока множество
Figure 00000073
не станет пустым, а множество
Figure 00000074
не будет содержать
Figure 00000092
пар чисел; формируют перемеженные подпоследовательности, располагая элементы в соответствии с их новыми номерами в каждой подпоследовательности, используя пилотную псевдослучайную последовательность номеров, объединяют перемеженные подпоследовательности в первую перемеженную последовательность, в первой перемеженной последовательности выполняют второе перемежение для чего для каждого символа в последовательности формируют его новый номер в последовательности по порядку путем выполнения преобразования вида
Figure 00000093
, где
Figure 00000075
– количество перемежаемых элементов, а
Figure 00000081
– старый номер в первой перемеженной последовательности,
Figure 00000082
число взаимно простое с
Figure 00000036
; формируют вторую перемеженную последовательность, располагая элементы первой перемеженной последовательности в соответствии с новыми номерами, формируют третью перемеженную последовательность, для чего осуществляют преобразование
Figure 00000094
, где
Figure 00000095
– последовательность значений из К элементов; формируют финальную перемеженную последовательность, располагая элементы в соответствии с их новыми номерами.
Figure 00000085
where
Figure 00000086
- numbers of code symbols before interleaving, and
Figure 00000087
- numbers of the same code symbols after interleaving,
Figure 00000088
- a positive integer; to determine the pilot pseudo-random subsequence of numbers form a lot of numbers
Figure 00000046
from
Figure 00000047
before
Figure 00000089
where
Figure 00000090
- the number of characters to interleave as follows: set the initial integer positive value of the diversity parameter
Figure 00000091
form a lot of pairs of numbers
Figure 00000051
defining the law of a one-to-one correspondence between the initial sequence of characters and the interleaved subsequence of characters, consisting of one pair of numbers, where the first number is the number in the subsequence before interleaving, and the second number is the number of the element in the subsequence after interleaving, where in the aforementioned pair of numbers the first is zero and the second is equal to a randomly selected number from the set
Figure 00000052
, which is excluded from the set
Figure 00000053
initialize
Figure 00000054
are randomly selected from the set
Figure 00000055
element
Figure 00000056
and put him in a one-to-one correspondence element
Figure 00000057
thus defining the transformation
Figure 00000058
perform verification of remote diversity of interleaved symbols for which for all
Figure 00000059
such that
Figure 00000060
,
Figure 00000061
calculate the value
Figure 00000062
if all the obtained values are different, then increase the value
Figure 00000064
; exclude element
Figure 00000065
out of many
Figure 00000066
and added to many
Figure 00000067
a couple
Figure 00000068
, if at least two differences are equal, then select another element again
Figure 00000069
out of many
Figure 00000070
and repeat for him the test of remote diversity of interleaved characters, if it is impossible to find an element that satisfies the test of remote diversity of interleaved characters, repeat the whole algorithm again with a reduced diversity parameter
Figure 00000063
repeat the procedure until the set
Figure 00000073
will not become empty, but many
Figure 00000074
will not contain
Figure 00000092
pairs of numbers; interleaved subsequences are formed by arranging the elements according to their new numbers in each subsequence using a pilot pseudorandom sequence of numbers, the interleaved subsequences are combined into the first interleaved sequence, the second interleaving is performed in the first interleaved sequence, for which for each character in the sequence form its new number in the sequence in order by performing a conversion of the form
Figure 00000093
where
Figure 00000075
- the number of interleaved elements, and
Figure 00000081
- old number in the first interleaved sequence,
Figure 00000082
the number is coprime with
Figure 00000036
; form the second interleaved sequence, arranging the elements of the first interleaved sequence in accordance with the new numbers, form the third interleaved sequence, for which the conversion
Figure 00000094
where
Figure 00000095
- a sequence of values from K elements; form the final interleaved sequence, arranging the elements in accordance with their new numbers.

Предлагаемый способ перемежения последовательности кодовых символов заключается в следующем:The proposed method of interleaving a sequence of code symbols is as follows:

• разбивают последовательность символов для перемежения на подпоследовательности символов для перемежения;• break the sequence of characters for interleaving into subsequences of characters for interleaving;

• осуществляют обмен кодовыми символами между и/или внутри подпоследовательностей, образуя перемеженные подпоследовательности кодовых символов;• exchange code symbols between and / or within subsequences, forming interleaved subsequences of code symbols;

• формируют из подпоследовательностей финальную перемеженную последовательность;• form the final interleaved sequence from subsequences;

• последовательность символов для перемежения количеством

Figure 00000036
разбивают на равные подпоследовательности установленного размера
Figure 00000084
;• a sequence of characters to interleave the number
Figure 00000036
broken down into equal subsequences of a fixed size
Figure 00000084
;

• в каждой из подпоследовательностей производят перемежение по установленному правилу перемежения подпоследовательностей, для этого формируют пилотную псевдослучайную подпоследовательность таким образом, что в пилотной подпоследовательности выполняется условие

Figure 00000096
, где
Figure 00000086
– номера кодовых символов до перемежения, а
Figure 00000087
– номера тех же кодовых символов после перемежения,
Figure 00000088
– целое положительное число;• in each of the subsequences, interleaving is performed according to the established rule of alternating subsequences, for this a pilot pseudo-random subsequence is formed in such a way that the condition is satisfied in the pilot subsequence
Figure 00000096
where
Figure 00000086
- numbers of code symbols before interleaving, and
Figure 00000087
- numbers of the same code symbols after interleaving,
Figure 00000088
- a positive integer;

• для определения пилотной псевдослучайной подпоследовательности номеров формируют множество номеров

Figure 00000046
от
Figure 00000047
до
Figure 00000089
, где
Figure 00000090
– количество символов для перемежения следующим образом:• to determine the pilot pseudo-random subsequence of numbers, multiple numbers are generated
Figure 00000046
from
Figure 00000047
before
Figure 00000089
where
Figure 00000090
- the number of characters to interleave as follows:

устанавливают начальное целые положительные значение параметра разнесения

Figure 00000091
, формируют множество пар чисел
Figure 00000051
, определяющих закон взаимно однозначного соответствия между первоначальной последовательностью символов и перемеженной подпоследовательностью символов, состоящее из одной пары чисел, где первое число – номер в подпоследовательности до перемежения, а второе число – номер элемента в подпоследовательности после перемежения, где в вышеупомянутой паре чисел первое равно нулю и второе равно случайным образом выбранному номеру из множество
Figure 00000052
, который при этом исключают из множества
Figure 00000053
;set the initial integer positive value of the diversity parameter
Figure 00000091
form a lot of pairs of numbers
Figure 00000051
defining the law of one-to-one correspondence between the initial sequence of characters and the alternated subsequence of characters, consisting of one pair of numbers, where the first number is the number in the subsequence before interleaving, and the second number is the number of the element in the subsequence after interleaving, where in the above pair of numbers the first is zero and the second is equal to a randomly selected number from the set
Figure 00000052
, which is excluded from the set
Figure 00000053
;

• инициализируют

Figure 00000054
;• initialize
Figure 00000054
;

• случайным образом выбирают из множества

Figure 00000055
элемент
Figure 00000056
и ставят ему в взаимно однозначное соответствие элемент
Figure 00000057
, определяя таким образом преобразование
Figure 00000058
;• randomly selected from a variety of
Figure 00000055
element
Figure 00000056
and put him in a one-to-one correspondence element
Figure 00000057
thus defining the transformation
Figure 00000058
;

• выполняют проверку дистанционного разнесения перемеженных символов для чего для всех

Figure 00000059
таких, что
Figure 00000060
,
Figure 00000061
вычисляют значение
Figure 00000062
; • perform verification of remote diversity of interleaved symbols for which for all
Figure 00000059
such that
Figure 00000060
,
Figure 00000061
calculate the value
Figure 00000062
;

• если все полученные значения разные, то увеличивают значение

Figure 00000064
, исключают элемент
Figure 00000065
из множества
Figure 00000066
и добавляют в множество
Figure 00000067
пару
Figure 00000068
;• if all received values are different, then increase the value
Figure 00000064
exclude element
Figure 00000065
out of many
Figure 00000066
and added to many
Figure 00000067
a couple
Figure 00000068
;

• если хотя бы две разности оказываются равны, то повторно выбирают другой элемент

Figure 00000069
из множества
Figure 00000070
и повторяют для него проверку дистанционного разнесения перемеженных символов; • if at least two differences are equal, then re-select another element
Figure 00000069
out of many
Figure 00000070
and repeat for him the test of remote diversity of interleaved characters;

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

Figure 00000063
;• if it is impossible to find an element that satisfies the check for remote diversity of interleaved characters, repeat the whole algorithm again with a reduced diversity parameter
Figure 00000063
;

• повторяют процедуру до тех пор, пока множество

Figure 00000073
не станет пустым, а множество
Figure 00000074
не будет содержать
Figure 00000092
пар чисел;• repeat the procedure until the set
Figure 00000073
will not become empty, but many
Figure 00000074
will not contain
Figure 00000092
pairs of numbers;

• формируют перемеженные подпоследовательности, располагая элементы в соответствии с их новыми номерами в каждой подпоследовательности, используя пилотную псевдослучайную последовательность номеров;• form interleaved subsequences by arranging the elements in accordance with their new numbers in each subsequence using a pilot pseudo-random sequence of numbers;

• объединяют перемеженные подпоследовательности в первую перемеженную последовательность;• combine interleaved subsequences into the first interleaved sequence;

• в первой перемеженной последовательности выполняют второе перемежение для чего для каждого символа в последовательности формируют его новый номер в последовательности по порядку путем выполнения преобразования вида

Figure 00000093
, где
Figure 00000075
– количество перемежаемых элементов, а
Figure 00000081
– старый номер в первой перемеженной последовательности,
Figure 00000082
– число взаимно простое с
Figure 00000036
;• in the first interleaved sequence, the second interleaving is performed, for which, for each character in the sequence, form its new number in the sequence in order by performing a transformation of the form
Figure 00000093
where
Figure 00000075
- the number of interleaved elements, and
Figure 00000081
- old number in the first interleaved sequence,
Figure 00000082
- the number is coprime with
Figure 00000036
;

• формируют вторую перемеженную последовательность, располагая элементы первой перемеженной последовательности в соответствие с новыми номерами;• form the second interleaved sequence, arranging the elements of the first interleaved sequence in accordance with the new numbers;

• для каждого

Figure 00000084
-го элемента, начиная с первого, получают новый номер во второй перемеженной последовательности, где новый номер равен
Figure 00000097
, при этом номера остальных элементов последовательности не изменяют;• for everybody
Figure 00000084
-th element, starting from the first, get a new number in the second interleaved sequence, where the new number is
Figure 00000097
, while the numbers of the remaining elements of the sequence do not change;

• формируют третью перемеженную последовательность, для чего осуществляют преобразование

Figure 00000098
, где
Figure 00000095
последовательность значений из К элементов;• form the third interleaved sequence, for which the conversion is carried out
Figure 00000098
where
Figure 00000095
a sequence of values from K elements;

• формируют финальную перемеженную последовательность, располагая элементы в соответствии с их новыми номерами.• form the final interleaved sequence, arranging the elements in accordance with their new numbers.

Предлагаемый способ перемежения последовательности кодовых символов может быть реализован на цифровом сигнальном процессоре, массиве цифровых сигнальных процессоров, ПЛИС, на специализированной микросхеме. Алгоритм перемежения представлен на фиг. 7. The proposed method of alternating a sequence of code symbols can be implemented on a digital signal processor, an array of digital signal processors, FPGAs, on a specialized chip. The interleaving algorithm is shown in FIG. 7.

Рассмотрим алгоритм, как алгоритм перемежения в прямоугольном перемежителе. Сущность алгоритма в том, что на первой стадии перемежения осуществляют перемежение внутри каждой из подпоследовательностей или перемежение в каждой строке, а на второй стадии – взаимно-простое перемежение, на третьей – циклический сдвиг в столбцах. Все три операции могут быть осуществлены параллельно.Consider the algorithm as an interleaving algorithm in a rectangular interleaver. The essence of the algorithm is that in the first stage of interleaving, interleaving is performed inside each of the subsequences or interleaving in each row, and in the second stage, mutually simple interleaving, in the third, a cyclic shift in the columns. All three operations can be carried out in parallel.

Отличительными (новыми) признаками заявляемого способа передачи данных в цифровой системе радиосвязи относительно прототипа являются следующие признаки: Distinctive (new) features of the proposed method of data transmission in a digital radio communication system relative to the prototype are the following features:

- новый способ перемежения кодовых символов;- A new way of interleaving code symbols;

-новый способ кодового сопряжения пакетов; -new method of code pairing packages;

-новый способ декодирования кодово-сопряженных пакетов.A new way to decode code-conjugate packets.

Сопоставительный анализ заявляемых способов с прототипом показывает, что предлагаемое изобретение существенно отличается от известных решений, так как позволяют повысить качество радиосвязи за счет снижения количества избыточных передаваемых кодовых символов, путем кодового сопряжения пакетов при автоматическом запросе-повторении, а также используя новый оптимизированный способы перемежения, увеличить быстродействие и пропускную способность устройства – за счет параллельной обработки пакетов данных. A comparative analysis of the proposed methods with the prototype shows that the present invention is significantly different from the known solutions, as it allows to improve the quality of radio communications by reducing the number of redundant code symbols transmitted by code pairing packets with automatic request-repetition, as well as using a new optimized interleaving methods, increase the speed and throughput of the device - due to the parallel processing of data packets.

Таким образом, технический результат состоит в получении энергетического выигрыша кодирования в среднем 0.5 дБ, а также в упрощении поиска псевдослучайной последовательности перемежения кодовых символов.Thus, the technical result consists in obtaining an energy gain of encoding of an average of 0.5 dB, as well as in simplifying the search for a pseudo-random sequence of alternation of code symbols.

Для этого в способе применяют кодовое сопряжение пакетов и новый способ перемежения кодовых символов.To this end, the method uses code pairing of packets and a new method of interleaving code symbols.

Таким образом, заявляемый способ позволяет достичь энергетического выигрыша кодирования в среднем 0.5 дБ по сравнению с прототипом. Кроме того, заявляемый способ позволяет существенно упростить поиск псевдослучайной последовательности перемежения кодовых символов, а также допускает параллельную реализацию декодирующего устройства без потери характеристик помехоустойчивости.Thus, the claimed method allows to achieve an energy gain of coding on average 0.5 dB compared with the prototype. In addition, the inventive method can significantly simplify the search for a pseudo-random sequence of alternation of code symbols, and also allows the parallel implementation of a decoding device without loss of noise immunity characteristics.

Claims (7)


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

1. A method of transmitting data in a digital communication system, which consists in the fact that data packets are formed on the transmitting side, each of which contains an ordered sequence of information symbols, each information symbol is repeated a certain number of times, depending on its number in order in the sequence of symbols, forming a sequence of repeated information symbols, and the number of repetitions is determined in advance, interleave in the sequence of repeated information symbols tins, achieving sufficient diversity of consecutive repeated information symbols and forming a sequence of interleaved repeated information symbols, divide the interleaved repeated information symbols into groups so that the first verification symbol is obtained by summing, according to a given module, the initial value of the summation variable with all interleaved repeated information symbols from the first groups, and the verification symbol n - by summing over a given module of the verification symbol n -1 with all interleaved repeated information symbols from group n , remember the received verification symbols, form a code word by adding verification symbols to information symbols, received correlation responses to each of the transmitted code symbols are generated on the receiving side, estimate the noise parameter of the signal mixture plus noise, form soft decisions about the received code symbols using the obtained estimate of the noise parameter of the signal plus noise mix soft decisions about code symbols for information symbol decisions and verification symbol decisions, repeat soft information symbol decisions in accordance with the information symbol repetition pattern, repeat soft verification symbol decisions at least two times with the exception of the last verification symbol, for soft information decisions symbols perform interleaving similar to interleaving on the transmitting side, form groups of interleaved soft decisions about information symbols, similar to groups m respective information symbols on the transmitting side, a first group of interleaved soft decisions complement soft decision corresponding to the initial value of the summation variable, and the first copy of the soft decision on the first parity symbol, forming a first codeword code generalized parity check, n - th group of interleaved soft decisions complemented by a second copy of the (n -1) - th parity and the first copy of a soft decision on n - m of check symbols to form n - e codeword generalized checks chetnos code then, for each soft decision included in each code word of the generalized parity check code, a modified soft solution is formed, which is an outgoing message of the code word of the generalized parity check code so that the outgoing message of the code word of the generalized parity check code is the result functional transformation of the original soft decisions, which are incoming messages of the code word of the code of the generalized parity check, deinterleave the outgoing community code word of the generalized parity check code so that each copy of the soft decision on the code symbol is associated with an outgoing message of the code word of the general parity code corresponding to the copy of the soft decision on this symbol, outgoing messages of the code word of the general parity code are grouped with soft decisions about the accepted code symbols, so that each group includes a soft decision about the corresponding code symbol and an outgoing message of the code word of the code generalized a parity check corresponding to a copy of the soft decision about this symbol, thus forming a code word for a generalized repeat code, putting each code word for a generalized repeat code in correspondence with a code symbol so that each outgoing message of a code word for a generalized parity code is an incoming code message words of the generalized repetition code, for each soft decision included in each codeword of the generalized repetition code, form a modified soft solution, cat A swarm is an outgoing message of a generalized code of a repeat code, which is the result of a functional transformation of an incoming code word of a code of a generalized repetition code, iteratively repeat the process of exchanging outgoing and incoming messages so that the outgoing message of a code word of a generalized repetition code is an incoming message of a code word of a generalized verification code for parity, and the outgoing message of the generalized parity check code is an incoming code message word of the generalized repetition code, forming a sequence of modified soft decisions at each iteration, decoded code words are formed from a sequence of modified soft decisions, each decoded code word is multiplied by a verification matrix, getting an ordered sequence of checksums, if all the checksums are zero, then the code word consider decoded correctly if the number of checksums other than zero is odd and the last checksum is nonzero, t replace it with zero, if the number of checksums other than zero is odd and the last checksum in the sequence is zero, then it is replaced with any nonzero value, the sequence of checksums is divided into pairs that contain elements of the sequence in a row, each the checksum is included only in a single pair, in each pair the difference in the numbers of the checksums is calculated, all the received differences in the numbers of the checksums are added, the received number is compared with the specified threshold m, if the number exceeds the set threshold, then the information part of the code word is considered decoded incorrectly, if the received number is less than the specified threshold, then the information part of the code word is considered decoded correctly, characterized in that if the information part of the code word is decoded incorrectly, then the request signal is repeated feedback channel for the transmitting side, on the transmitting side upon receipt of the retransmission request signal form a packet with a code-conjugate part, for which in the next encoded packet, part of the code symbols is replaced by a modulo-two sum with the code symbols of a previously transmitted and erroneously decoded packet, thereby forming a code-conjugate part; upon receipt of the current packet with a code-conjugate part, it is decoded together with the previously received erroneously decoded packet, for which restore, possibly with errors, the sequence of soft decisions of the erroneous package, modify soft decisions in the code-conjugate part in those positions in which the code characters were replaced by the sum of symbols of different packets, for which they replace the opposite sign of the adopted soft decision, if the recovered code symbol of the previous packet corresponds to a logical unit, receiving soft solutions of the current package, decode soft solutions of the current package, restore the sequence of soft solutions of the current package, modify soft solutions in the code-conjugate part in those positions in which the code symbols were replaced by the sum of the symbols of different packets, for which the sign is replaced with the opposite for the received one soft decision, if the recovered code symbol of the current packet corresponds to a logical unit, receiving a modified sequence of soft decisions for the erroneous packet, re-decode the error packet using the modified sequence of soft decisions for the erroneous packet as additional information at those positions in which the code symbols were replaced by the sum of different symbols packets transmit on the feedback channel signals characterizing the decoding performance of code-conjugate packets ov.
2. Способ по п. 1, отличающийся тем, что оценку шумового параметра смеси сигнал плюс шум определяют как величину стандартного отклонения эквивалентного Гауссовского белого шума, которым аппроксимируются помехи в канале.2. The method according to p. 1, characterized in that the estimate of the noise parameter of the signal plus noise mixture is determined as the standard deviation of the equivalent Gaussian white noise, which approximates the noise in the channel. 3. Способ по п. 1, отличающийся тем, что итеративное декодирование выполняют в параллельном режиме, обрабатывая сообщения в каждом из кодовых слов обобщенного кода повторений или кодовых слов кода обобщенной проверки на четность независимо друг друга, а процедуру обмена сообщениями между контрольными и переменными вершинами осуществляют один раз за итерацию.3. The method according to p. 1, characterized in that iterative decoding is performed in parallel, processing messages in each of the code words of the generalized repetition code or code words of the generalized parity check code independently of each other, and the message exchange procedure between control and variable vertices carry out once per iteration. 4. Способ по п. 1, отличающийся тем, что итеративное декодирование выполняют в последовательном режиме, последовательно обрабатывая сообщения в кодовых словах обобщенного кода повторений и кодовых словах кода обобщенной проверки на четность, причем по крайней мере одно исходящее сообщение от обрабатываемого кодового слова одного кода является входящим сообщением для кодового слова другого кода.4. The method according to p. 1, characterized in that iterative decoding is performed in sequential mode, sequentially processing the messages in the code words of the generalized repetition code and the code words of the generalized parity check code, at least one outgoing message from the processed code word of one code is an incoming message for a codeword of another code. 5. Способ по п. 1, отличающийся тем, что итеративное декодирование выполняют в последовательно-параллельном режиме, выделяя среди всего множество кодовых слов кодов обобщенного кода повторений и кода обобщенной проверки на четность подмножество кодовых слов, обрабатываемых в параллельном режиме и подмножество кодовых слов, обрабатываемых в последовательном режиме.5. The method according to p. 1, characterized in that iterative decoding is performed in serial-parallel mode, highlighting among the whole set of code words of codes of a generalized repetition code and a code of generalized parity, a subset of code words processed in parallel and a subset of code words, processed in sequential mode. 6. Способ перемежения последовательности кодовых символов, состоящий в том, что разбивают последовательность символов для перемежения на подпоследовательности символов для перемежения, осуществляют обмен кодовыми символами между и/или внутри подпоследовательностей, образуя перемеженные подпоследовательности кодовых символов, формируют из подпоследовательностей финальную перемеженную последовательность, последовательность символов для перемежения количеством N разбивают на равные подпоследовательности установленного размера K, в каждой из подпоследовательностей производят перемежение по установленному правилу перемежения подпоследовательностей, отличающийся тем, что формируют пилотную псевдослучайную подпоследовательность таким образом, что в пилотной подпоследовательности выполняется условие 6. A method of interleaving a sequence of code symbols, which consists in splitting a sequence of symbols for interleaving into subsequences of symbols for interleaving, exchanging code symbols between and / or within subsequences, forming interleaved subsequences of code symbols, forming from the subsequences a final interleaved sequence, a sequence of characters to interleave the number N is divided into equal subsequences of a fixed size K , in each of the subsequences, interleaving is performed according to the established rule of interleaving of subsequences, characterized in that a pilot pseudo-random subsequence is formed in such a way that the condition is satisfied in the pilot subsequence
Figure 00000099
, где i,j 1,2 – номера кодовых символов до перемежения, а
Figure 00000100
– номера тех же кодовых символов после перемежения, S – целое положительное число; для определения пилотной псевдослучайной подпоследовательности номеров формируют множество номеров M от 0 до K-1, где K - количество символов для перемежения следующим образом: устанавливают начальное целые положительные значение параметра разнесения S, формируют множество пар чисел Θ, определяющих закон взаимно однозначного соответствия между первоначальной последовательностью символов и перемеженной подпоследовательностью символов, состоящее из одной пары чисел, где первое число – номер в подпоследовательности до перемежения, а второе число – номер элемента в подпоследовательности после перемежения, где в вышеупомянутой паре чисел первое равно нулю и второе равно случайным образом выбранному номеру из множества М, который при этом исключают из множества М, инициализируют i=1, случайным образом выбирают из множества М элемент i п и ставят ему во взаимно однозначное соответствие элемент i, определяя таким образом преобразование
Figure 00000101
, выполняют проверку дистанционного разнесения перемеженных символов, для чего для всех j таких, что j<i,
Figure 00000102
, вычисляют значение
Figure 00000103
, если все полученные значения разные, то увеличивают значение i=i+1; исключают элемент i П из множества M и добавляют в множество Θ пару i,i П, если хотя бы две разности оказываются равны, то повторно выбирают другой элемент
Figure 00000104
из множества M и повторяют для него проверку дистанционного разнесения перемеженных символов, при невозможности найти элемент, удовлетворяющий проверке дистанционного разнесения перемеженных символов, повторяют весь алгоритм заново с уменьшенным параметром разнесения S, повторяют процедуру до тех пор, пока множество M не станет пустым, а множество Θ не будет содержать K пар чисел; формируют перемеженные подпоследовательности, располагая элементы в соответствии с их новыми номерами в каждой подпоследовательности, используя пилотную псевдослучайную последовательность номеров, объединяют перемеженные подпоследовательности в первую перемеженную последовательность, в первой перемеженной последовательности выполняют второе перемежение, для чего для каждого символа в последовательности формируют его новый номер в последовательности по порядку путем выполнения преобразования вида
Figure 00000105
, где N – количество перемежаемых элементов, а i old – старый номер в первой перемеженной последовательности, p - число, взаимно простое с N; формируют вторую перемеженную последовательность, располагая элементы первой перемеженной последовательности в соответствии с новыми номерами, формируют третью перемеженную последовательность, для чего осуществляют преобразование
Figure 00000106
, где Q – последовательность значений из K элементов; формируют финальную перемеженную последовательность, располагая элементы в соответствии с их новыми номерами.
Figure 00000099
, where i , j 1,2 are the code symbol numbers before interleaving, and
Figure 00000100
- numbers of the same code symbols after interleaving, S is a positive integer; to determine the pilot pseudo-random subsequence of numbers, a set of numbers M is formed from 0 to K -1, where K is the number of characters to interleave as follows: set the initial integer positive values of the diversity parameter S , form a set of pairs of numbers Θ that determine the law of one-to-one correspondence between the initial sequence characters and interleaved subsequence of characters, consisting of one pair of numbers, where the first number is the number in the subsequence before interleaving, and T the next number is the number of the element in the subsequence after interleaving, where in the aforementioned pair of numbers, the first is zero and the second is a randomly selected number from the set M, which is excluded from the set M, i = 1 is initialized, and the element i is randomly selected from the set M n and put in one-to-one correspondence the element i , thus defining the transformation
Figure 00000101
, check remote diversity of interleaved symbols, for which, for all j such that j < i ,
Figure 00000102
calculate the value
Figure 00000103
if all the obtained values are different, then increase the value i = i +1; exclude the element i П from the set M and add to the set Θ the pair i, i П , if at least two differences are equal, then select another element again
Figure 00000104
from the set M and repeat the check for remote diversity of interleaved symbols for it, if it is impossible to find an element that satisfies the verification of remote diversity of alternated symbols, repeat the whole algorithm again with a reduced diversity parameter S , repeat the procedure until the set M becomes empty, and the set Θ will not contain K pairs of numbers; interleaved subsequences are formed by arranging the elements according to their new numbers in each subsequence using a pilot pseudorandom sequence of numbers, the interleaved subsequences are combined into the first interleaved sequence, the second interleaving is performed in the first interleaved sequence, for which a new number is generated for each character in the sequence sequences in order by performing a conversion of the form
Figure 00000105
where N is the number of interleaved elements, and i old is the old number in the first interleaved sequence, p is a number coprime to N ; form the second interleaved sequence, arranging the elements of the first interleaved sequence in accordance with the new numbers, form the third interleaved sequence, for which the conversion
Figure 00000106
where Q is a sequence of values from K elements; form the final interleaved sequence, arranging the elements in accordance with their new numbers.
RU2018147518A 2018-12-29 2018-12-29 Method of transmitting data in a digital radio communication system based on codes with low density of parity checks and a method of interleaving code symbols RU2700398C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2018147518A RU2700398C1 (en) 2018-12-29 2018-12-29 Method of transmitting data in a digital radio communication system based on codes with low density of parity checks and a method of interleaving code symbols

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2018147518A RU2700398C1 (en) 2018-12-29 2018-12-29 Method of transmitting data in a digital radio communication system based on codes with low density of parity checks and a method of interleaving code symbols

Publications (1)

Publication Number Publication Date
RU2700398C1 true RU2700398C1 (en) 2019-09-16

Family

ID=67989747

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2018147518A RU2700398C1 (en) 2018-12-29 2018-12-29 Method of transmitting data in a digital radio communication system based on codes with low density of parity checks and a method of interleaving code symbols

Country Status (1)

Country Link
RU (1) RU2700398C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2755295C1 (en) * 2021-01-18 2021-09-14 Акционерное общество "Концерн "Созвездие" Method for interleaving code symbols in low-density parity-check code

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2427491A1 (en) * 2000-10-30 2002-05-10 Nortel Networks Limited Automatic request protocol based packet transmission using punctured codes
WO2002065647A1 (en) * 2001-02-13 2002-08-22 Samsung Electronics Co., Ltd Apparatus and method for generating codes in communication system
RU2236756C2 (en) * 2001-02-16 2004-09-20 Самсунг Электроникс Ко.,Лтд Device and method for code generation and decoding in communication system
US6857087B2 (en) * 2001-06-11 2005-02-15 Her Majesty The Queen In Right Of Canada, As Represented By The Secretary Of State For Industry Through The Communication Research Centre High-performance low-memory interleaver banks for turbo-codes
RU2265960C2 (en) * 2003-06-16 2005-12-10 Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" Method for transferring information with use of adaptive alternation
RU2323520C2 (en) * 2006-03-21 2008-04-27 Самсунг Электроникс Ко., Лтд. Method for voice data transfer in digital radio communication system and method for interleaving code character sequence (alternatives)
US7975189B2 (en) * 2008-11-14 2011-07-05 Trelliware Technologies, Inc. Error rate estimation/application to code-rate adaption

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2427491A1 (en) * 2000-10-30 2002-05-10 Nortel Networks Limited Automatic request protocol based packet transmission using punctured codes
WO2002065647A1 (en) * 2001-02-13 2002-08-22 Samsung Electronics Co., Ltd Apparatus and method for generating codes in communication system
RU2236756C2 (en) * 2001-02-16 2004-09-20 Самсунг Электроникс Ко.,Лтд Device and method for code generation and decoding in communication system
US6857087B2 (en) * 2001-06-11 2005-02-15 Her Majesty The Queen In Right Of Canada, As Represented By The Secretary Of State For Industry Through The Communication Research Centre High-performance low-memory interleaver banks for turbo-codes
RU2265960C2 (en) * 2003-06-16 2005-12-10 Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" Method for transferring information with use of adaptive alternation
RU2323520C2 (en) * 2006-03-21 2008-04-27 Самсунг Электроникс Ко., Лтд. Method for voice data transfer in digital radio communication system and method for interleaving code character sequence (alternatives)
US7975189B2 (en) * 2008-11-14 2011-07-05 Trelliware Technologies, Inc. Error rate estimation/application to code-rate adaption

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2755295C1 (en) * 2021-01-18 2021-09-14 Акционерное общество "Концерн "Созвездие" Method for interleaving code symbols in low-density parity-check code

Similar Documents

Publication Publication Date Title
EP1838000A2 (en) Apparatus and method for transmitting/receiving data in a communication system
Bioglio et al. Design of polar codes in 5G new radio
Elkelesh et al. Belief propagation decoding of polar codes on permuted factor graphs
Andrews et al. The development of turbo and LDPC codes for deep-space applications
Ma et al. Block Markov superposition transmission: Construction of big convolutional codes from short codes
JP2008527760A (en) Replica combined group shuffle iterative decoder and method of generating the same
JP2008035524A (en) Apparatus and method for decoding block of symbols using iterative belief propagation
JP2009060453A (en) Decoding method, decoding apparatus, interleave method and transmission device
WO2007029114A2 (en) System, transmitter, receiver, method, and computer program product for structured interleaved zigzag coding
Ma et al. Obtaining extra coding gain for short codes by block Markov superposition transmission
CN105634504A (en) Data check method and device
CN108111256A (en) Cascade Compilation Method, device, storage medium and its computer equipment
WO2007037713A1 (en) Modified turbo-decoding message-passing algorithm for low-density parity check codes
Geiselhart et al. 6G: A welcome chance to unify channel coding?
RU2700398C1 (en) Method of transmitting data in a digital radio communication system based on codes with low density of parity checks and a method of interleaving code symbols
JP6533039B2 (en) Decoding of correction code using message passing, especially decoding improvement method of LDPC code or turbo code
Paolini et al. Construction of near-optimum burst erasure correcting low-density parity-check codes
Seksembayeva et al. Study of the principles of error correcting code in a multipath communication channel with intersymbol interference
US11588580B2 (en) Interleaver for interleaving LDPC encoded bit sequence
RU2708349C1 (en) Data transmission method based on codes with low density of checks on parity
RU2713573C1 (en) Data transmission device based on codes with low density of checks on parity
Chen et al. A double serial concatenated code using CRC-aided error correction for highly reliable communication
Olaniyi et al. Machine Learning for Channel Coding: A Paradigm Shift from FEC Codes
RU2755295C1 (en) Method for interleaving code symbols in low-density parity-check code
Elsanadily et al. Improving the Decoding Performance of High-Rate GLDPC Codes in Low Error-Rate Applications