RU2713573C1 - Data transmission device based on codes with low density of checks on parity - Google Patents
Data transmission device based on codes with low density of checks on parity Download PDFInfo
- Publication number
- RU2713573C1 RU2713573C1 RU2019117117A RU2019117117A RU2713573C1 RU 2713573 C1 RU2713573 C1 RU 2713573C1 RU 2019117117 A RU2019117117 A RU 2019117117A RU 2019117117 A RU2019117117 A RU 2019117117A RU 2713573 C1 RU2713573 C1 RU 2713573C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- unit
- output
- block
- code
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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
Abstract
Description
Изобретение относится к области теории кодирования, в частности к системам для объединенного кодирования с исправлением и обнаружением ошибок с целью повышения эффективности использования спектра при передаче данных в цифровой системе радиосвязи.The invention relates to the field of coding theory, in particular to systems for combined coding with error correction and detection in order to increase the efficiency of use of the spectrum when transmitting data in a digital radio communication system.
Актуальной является задача не только исправление ошибок при канальном кодировании, но и обнаружения неисправленных ошибок и организация автоматического запроса повторения (АЗП) с целью исправить подобные ошибки за счет дополнительной передачи минимально возможного числа кодовых символов. Основной характеристикой помехоустойчивого кодирования является скорость кодирования
Широко известен параллельный сверточный турбокод [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 to approach 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. An 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 MaximumLikelihood Decoding Approach for Combining an Arbitrary Number of Noisy Packets. // IEEE Trans. Comm. – Vol. 33. – May 1985. – P. 385393] с разных позиций.Classical ARQ (ARQ), which in case of erroneous decoding of a frame involves erasing the received data, complete retransmission of the frame and independent decoding of the newly received frame is not effective, because leads to too much redundant data transfer. Currently, 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 - redundancy buildup). 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 (
• АЗП (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.
Известен способ [Пат. 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.
В классе линейных блоковых кодов можно особо выделить подкласс кодов с низкой плотностью проверок на четность [Gallager R. “Low Density Parity Check Codes”// MIT Press 1963], превосходящий по своим характеристикам турбокод. Особенностью данного кода является наличие простой графической модели алгоритма декодирования, определяемого как декодирование на графе (фиг. 1). Декодирование на графе следует понимать в том смысле, что граф определяет разбиение всего кодового слова на более короткие коды, причем короткие коды могут перекрываться друг с другом. Избежать данных перекрытий можно путем повторения перекрывающихся кодовых символов. Разные копии принятого кодового символа или мягкого решения об этом символе входят в различные кодовые слова более короткого кода, при этом все кодовые слова короткого кода могут быть декодированы независимо. Такая структура может быть представлена в виде двудольного графа один тип вершин, которого ассоциирован с кодовыми символами, причем количество ребер, исходящих из каждой вершины соответствует количеству повторений кодового символа (переменная вершина – обозначена прямоугольником). Другой тип вершин соответствует коротким кодам, причем каждая вершина есть кодовое слово с количеством кодовых символов равным числу входящих ребер (проверочная вершина – обозначена кругом). Каждой проверочной вершине может быть приписана контрольная сумма, как индикатор наличия ошибок в коротком коде. Переменные вершины могут быть соединены только с проверочными вершинами, и, наоборот, проверочные вершины могут быть соединены только с переменными вершинами, что позволяет рассматривать граф как двудольный.In the class of linear block codes, 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, can be especially distinguished. 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 codeword 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 emanating from each vertex corresponds to the number of repetitions of the code symbol (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. IT27, № 9. – P. 533547]. По сути, для линейного блокового кода, граф Таннера является графическим представлением проверочной матрицы. Безошибочное декодирование характеризуется равенством нулю всех контрольных сумм – кодовых ограничений.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] initializes 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, matching 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 top with incoming messages, which are outgoing messages to the check top.
4. Повторяют итерации определенное число раз или до тех пор, пока кодовые ограничения не будут выполнены.4. Repeat iterations a certain number of times or until code restrictions are met.
Знак исходящего сообщения выбирают таким, чтобы удовлетворить кодовым ограничениям. Абсолютное значение исходящего сообщения вычисляют при помощи функции
Есть несколько методов для определения функции
Другой метод задания функции
Где функция
Существует модификация предложенного метода, где дополнительное слагаемое
Модификации этого алгоритма приведена в [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.
В настоящее время широкую известность получил класс “турбо-образных” (“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 greatest efficiency from application 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. ensure sufficient diversity of repeated characters, thereby ensuring the absence or small number of code words with low weight. The law of interleaving or permutation is set by a sequence of non-repeating numbers, each of which is used exactly once, such that they can form a natural series of numbers (each subsequent number on unit larger than the previous one), if arranged in ascending order. Numbers in the form of a natural series is a sequence before interleaving, the same numbers in the form of a pseudo-random sequence is a sequence after interleaving.
Пример подобного кода приведен на фиг. 8. Это систематический код, состоящий из 7 переменных узлов, из которых 4 информационные, и 3 проверочных узла. Такому коду соответствует проверочная матрица вида:
Шаблон иррегулярных повторений представляет собой соответствие между количеством символов и числом их повторений. Для кода с фиг. 8 два информационных повторены один раз, один информационный символ повторен два раза, один информационный символ повторен три раза. Компактно шаблон повторений может быть записан в виде двух массивов:
Шаблон накопления контрольных сумм, аналогично шаблону повторения кодовых символов может быть записан в виде двух массивов
При кодировании перемежение выполняется только среди повторенных информационных символов, а при декодировании к ним добавляют избыточные кодовые символы, полученные согласно паттерну "зигзаг". Говоря о перемежителе, обычно имеется ввиду перемежитель только информационных символов, так как только он несет псевдослучайную составляющую. Актуальной является задача построения частично параллельного перемежителя, в котором за один такт работы перемежают сразу
В основе способа классический иррегулярный код повторений с накоплениями с низкой плотностью проверок на четность [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 by 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 the device according to the patent of the Russian Federation 2323520,
На фиг. 3 представлена схема передающего устройства (передающей стороны) устройства-прототипа, где обозначено:In FIG. 3 shows a diagram of a transmitting device (transmitting side) of the prototype device, where it is indicated:
1 – блок повторения информационных символов;1 - block repetition of information symbols;
2 – блок перемежения информационных символов;2 - block interleaving information symbols;
3 – блок разделения проверочных символов на группы; 3 - block separation of test characters into groups;
4 – блок управления;4 - control unit;
5 – блок суммирования; 5 - block summation;
6 – мультиплексор;6 - multiplexer;
8 – блок памяти;8 - memory block;
9 – канал связи;9 - communication channel;
24 – ключ.24 is the key.
Устройство-прототип состоит из передающего и приемного устройств, соединенных посредством канала связи 9, обеспечивающего передачу данных. Передающее устройство содержит последовательно соединенные блок повторения информационных символов 1, блок перемежения информационных символов 2, блок разделения проверочных символов на группы 3, блок суммирования 5, ключ 24, блок памяти 8 и мультиплексор 6, выход которого соединен с каналом связи 9, с выхода которого сигнал поступает на приемное устройство. Кроме того, выходы блока управления 4 подсоединены к управляющим входам блоков 1, 2, 3, 5, 6, и 24 соответственно. При этом первый вход блока повторения информационных символов 1 является первым входом передающего устройства, на который поступают пакеты данных, этот же вход соединен со вторым входом мультиплексора 6. Вход блока управления 4 является входом синхронизации, а также вторым входом передающего устройства.The prototype device consists of a transmitting and receiving devices connected by a
На фиг. 4 представлена схема приемного устройства, где обозначено:In FIG. 4 shows a diagram of a receiving device, where it is indicated:
10 – блок формирования корреляционных откликов и оценки шумового параметра;10 is a block for the formation of correlation responses and estimates of the noise parameter;
11 – блок разделения мягких решений;11 - block separation soft solutions;
12 – блок повторения проверочных символов;12 is a block repetition of test characters;
13 – блок повторения информационных символов;13 - block repetition of information symbols;
14 – блок перемежения информационных символов;14 - block interleaving information symbols;
15 – блок формирования перемеженных мягких решений;15 - block forming interleaved soft decisions;
16 – итеративный декодер;16 - iterative decoder;
17 – блок вычисления контрольных сумм в декодированном кодовом слове;17 is a block checksum in a decoded codeword;
18 – блок контроля ошибок в декодированном кодовом слове.18 is an error control unit in a decoded codeword.
Приемное устройство содержит последовательно соединенные блок формирования корреляционных откликов и оценки шумового параметра 10, блок разделения мягких решений 11, блок повторения информационных символов 13, блок перемежения информационных символов 14, блок формирования перемеженных мягких решений 15, итеративный декодер 16, блок вычисления контрольных сумм в декодированном кодовом слове 17 и блок контроля ошибок в декодированном кодовом слове 18, первый выход которого является выходом устройства, а второй выход соединен со вторым входом итеративного декодера 16. Кроме того, другой выход блока разделения мягких решений 11 через блок повторения проверочных символов 12 соединен со вторым входом блока формирования перемеженных мягких решений 15, третий вход которого подключен ко второму выходу блока формирования корреляционных откликов и оценки шумового параметра 10, вход которого является входом приемного устройства, на который поступает сигнал с передающего устройства через канал связи 9.The receiving device comprises a series-connected unit for generating correlation responses and estimating a
Устройство-прототип работает следующим образом.The prototype device operates as follows.
На передающей стороне сформированные пакеты данных, каждый из которых содержит упорядоченную последовательность информационных символов, поступают вход блока повторения информационных символов 1 и одновременно на второй вход мультиплексора 6. В блоке повторения информационных символов 1 каждый информационный символ повторяют определенное число раз, в зависимости от его номера по порядку в последовательности символов, формируя последовательность повторенных информационных символов, причем количество повторений определяется заранее. Последовательность повторенных информационных символов с выхода блока повторения информационных символов 1 поступает на вход блока перемежения информационных символов 2, где осуществляют перемежение в последовательности повторенных информационных символов, добиваясь достаточного разнесения идущих подряд повторенных информационных символов, и формируя последовательность перемеженных повторенных информационных символов. В блоке разделения проверочных символов на группы 3 разбивают перемеженные повторенные информационные символы на группы, затем в блоке суммирования 5 получают первый проверочный символ путем суммирования по заданному модулю начального значения переменной суммирования со всеми перемеженными повторенными информационными символами из первой группы, а проверочный символ
На приемной стороне сформированное в передающем устройстве кодовое слово поступает на вход блока формирования корреляционных откликов и оценки шумового параметра 10, где формируют принятые корреляционные отклики на каждый из переданных кодовых символов и выполняют оценку шумового параметра смеси сигнал плюс шум, которая приближенно равна величине стандартного отклонения эквивалентного гауссовского белого шума, которым аппроксимируются помехи в канале, а затем формируют мягкие решения о принятых кодовых символах, используя полученную оценку шумового параметра смеси сигнал плюс шум. Полученные мягкие решения поступают на вход блока разделения мягких решений 11, где происходит разделение мягких решений о принятых кодовых символах на решения об информационных символах и решения о проверочных символах. Мягкие решения об информационных символах с блока разделения мягких решений 11 поступают на вход блока повторения информационных символов 13, где повторяют мягкие решения об информационных символах в соответствии с шаблоном повторения информационных символов. Мягкие решения о проверочных символах с блока разделения мягких решений 11 поступают на вход блока повторения проверочных символов 12, где повторяют мягкие решения о проверочных символах, по крайней мере, два раза за исключением последнего проверочного символа. Для мягких решений об информационных символах выполняют перемежение аналогичное перемежению на передающей стороне в блоке перемежения информационных символов 14. Затем в блоке формирования перемеженных мягких решений 15 формируют группы перемеженных мягких решений об информационных символах аналогичные группам соответствующих информационных символов на передающей стороне, используя сигналы с блока проверочных символов 12 и с блока формирования корреляционных откликов и оценки шумового параметра 10, причем первую группу перемеженных мягких решений дополняют мягким решением, соответствующим начальному значению переменной суммирования, и первой копией мягкого решения о первом проверочном символе, образуя первое кодовое слово кода обобщенной проверки на четность, n-ю группу перемеженных мягких решений дополняют второй копией n-го проверочного символа и первой копией мягкого решения об n-м проверочном символе, образуя n-е кодовое слово кода обобщенной проверки на четность. Сформированные перемеженные мягкие решения поступают на первый вход итеративного декодера 16, в котором формируется декодированное кодовое слово. Каждое декодированное кодовое слово в блоке вычисления контрольных сумм в декодированном кодовом слове 17 умножают на проверочную матрицу, получая упорядоченную последовательность контрольных сумм, если все контрольные суммы равны нулю, то кодовое слово считают декодированным верно, если количество контрольных сумм отличных от нуля нечетно и последняя контрольная сумма отлична от нуля, то заменяют ее нулем, если количество контрольных сумм отличных от нуля нечетно и последняя в последовательности контрольная сумма равна нулю, то ее заменяют любым отличным от нуля значением, разбивают последовательность контрольных сумм на пары, в которые входят элементы последовательности, идущие подряд, причем каждая контрольная сумма входит только в единственную пару, в каждой паре вычисляют разность номеров контрольных сумм, складывают все полученные разности номеров контрольных сумм. Затем в блоке контроля ошибок в декодированном кодовом слове 18 сравнивают полученное число с заданным порогом, если число превышает установленный порог, то информационную часть кодового слова считают декодированной неверно, если полученное число меньше заданного порога, то информационную часть кодового слова считают декодированной верно. On the receiving side, the code word generated in the transmitting device is input to the block for generating correlation responses and estimating the
Задача предлагаемого технического решения – разработка приемо-передающего устройства, которое позволяет увеличить энергетический выигрыш помехоустойчивого кодирования за счет применения алгоритма гибридного запроса-повторения.The objective of the proposed technical solution is the development of a transceiver device that allows you to increase the energy gain of noise-resistant coding through the use of a hybrid request-repeat algorithm.
Для решения поставленной задачи в устройство передачи данных на основе кодов с низкой плотностью проверок на четность, состоящее из передающего и приемного устройств, соединенных посредством канала связи, обеспечивающего передачу данных, при этом передающее устройство содержит последовательно соединенные блок повторения информационных символов, блок перемежения информационных символов, блок разделения проверочных символов на группы, блок суммирования, а также последовательно соединенные блок памяти и мультиплексор, выход которого соединен с каналом связи, кроме того, выходы блока управления подсоединены к управляющим входам блока повторения информационных символов, блока перемежения информационных символов, блока разделения проверочных символов на группы, блока суммирования и мультиплексора соответственно; вход блока повторения информационных символов является первым входом передающего устройства, на который поступают пакеты данных, этот же вход соединен со вторым входом мультиплексора; вход блока управления является входом сигналов синхронизации, а также вторым входом передающего устройства; приемное устройство содержит последовательно соединенные блок формирования корреляционных откликов и оценки шумового параметра, блок разделения мягких решений, блок повторения информационных символов, блок перемежения информационных символов, блок формирования перемеженных мягких решений, первый итеративный декодер, первый блок вычисления контрольных сумм в декодированном кодовом слове, первый блок контроля ошибок в декодированном кодовом слове, первый выход которого является первым выходом устройства, а второй выход соединен со вторым входом первого итеративного декодера, кроме того, второй выход блока разделения мягких решений через блок повторения проверочных символов подключен ко второму входу блока формирования перемеженных мягких решений, третий вход которого подсоединен ко второму выходу блока формирования корреляционных откликов и оценки шумового параметра, вход которого является входом приемного устройства, согласно изобретению, введены канал обратной связи, в передающее устройство – блок межпакетного суммирования, управляющий вход которого подключен к соответствующему выходу блока управления, первый и второй входы блока межпакетного суммирования подсоединены к соответствующим выходам блока памяти, выход блока межпакетного суммирования подключен к третьему входу мультиплексора; выход блока суммирования соединен с входом блока памяти, управляющий вход которого подсоединен к соответствующему выходу блока управления, второй вход блока управления, который является входом сигнала обратной связи с приемного устройства, переданного через выход канала обратной связи и третьим входом передающего устройства; в приемное устройство – блок хранения и модификации мягких решений, первый выход-вход которого через последовательно соединенные второй итеративный декодер, второй блок вычисления контрольных сумм в декодированном кодовом слове и второй блок контроля ошибок в декодированном кодовом слове, соединен с одним входом канала обратной связи, второй выход второго блока контроля ошибок в декодированном кодовом слове соединен со вторым входом второго итеративного декодера, а третий выход второго блока контроля ошибок в декодированном кодовом слове является вторым выходом приемного устройства, при этом выход блока формирования перемеженных мягких решений соединен с входом блока хранения и модификации мягких решений, второй выход-вход которого соединен с входом-выходом первого итеративного декодера; третий выход первого блока контроля ошибок в декодированном кодовом слове соединен с другим входом канала обратной связи.To solve the problem, a data transmission device based on codes with a low density of parity checks, consisting of transmitting and receiving devices connected via a communication channel that provides data transmission, while the transmitting device contains series-connected information symbol repetition unit, information symbol interleaver , a unit for separating test characters into groups, a summing unit, as well as a series-connected memory unit and a multiplexer, the output of which connected to the communication channel, in addition, the outputs of the control unit are connected to the control inputs of the information symbol repetition unit, information symbol interleaver, group for separating test characters into groups, summing unit and multiplexer, respectively; the input of the information symbol repetition unit is the first input of the transmitting device to which the data packets arrive, the same input is connected to the second input of the multiplexer; the input of the control unit is the input of the synchronization signals, as well as the second input of the transmitting device; the receiving device contains a series-connected unit for generating correlation responses and estimating a noise parameter, a soft decision separation unit, an information symbol repetition unit, information symbol interleaving unit, an interleaved soft decision generation unit, a first iterative decoder, a first checksum calculation unit in a decoded codeword, a first an error control unit in the decoded codeword, the first output of which is the first output of the device, and the second output is connected to the first input of the first iterative decoder, in addition, the second output of the soft decision separation unit through the test symbol repetition unit is connected to the second input of the interleaved soft decision generation unit, the third input of which is connected to the second output of the correlation response generation unit and noise parameter estimation, the input of which is the input the receiving device, according to the invention, a feedback channel is introduced, into the transmitting device is an inter-packet summing unit, the control input of which is connected it is connected to the corresponding output of the control unit, the first and second inputs of the inter-packet summing block are connected to the corresponding outputs of the memory block, the output of the inter-packet summing block is connected to the third input of the multiplexer; the output of the summing unit is connected to the input of the memory unit, the control input of which is connected to the corresponding output of the control unit, the second input of the control unit, which is the input of the feedback signal from the receiving device transmitted through the output of the feedback channel and the third input of the transmitting device; to the receiving device, a soft decision storage and modification unit, the first output-input of which is connected through a second iterative decoder, the second checksum calculation unit in the decoded codeword and the second error control unit in the decoded codeword, connected to one input of the feedback channel, the second output of the second error control unit in the decoded codeword is connected to the second input of the second iterative decoder, and the third output of the second error control unit in the decoded code the word is the second output of the receiving device, while the output of the interleaved soft decision forming unit is connected to the input of the soft decision storage and modification unit, the second output-input of which is connected to the input-output of the first iterative decoder; the third output of the first error control unit in the decoded codeword is connected to another input of the feedback channel.
Отличительными (новыми) признаками заявляемого устройства передачи данных относительно прототипа являются следующие:Distinctive (new) features of the claimed data transmission device regarding the prototype are the following:
- канал обратной связи, по которому передают сигналы обратной связи для передающего устройства от первого и второго блока контроля ошибок в декодированном слове, если информационная часть кодового слова декодирована неверно, то формируют сигнал запроса повторной передачи по каналу обратной связи для передающей стороны;- a feedback channel, through which feedback signals for the transmitting device from the first and second error control unit in the decoded word are transmitted, if the information part of the code word is decoded incorrectly, a retransmission request signal is generated on the feedback channel for the transmitting side;
- в передающем устройстве: блок межпакетного суммирования, где на передающей стороне при получении сигнала запроса повторной передачи формируют пакет с кодово-сопряженной частью, для чего в очередном кодированном пакете часть кодовых символов заменяют суммой по модуля два с кодовыми символами ранее переданного и ошибочно декодированого пакета, формируя тем самым кодово-сопряженную часть;- in the transmitting device: an inter-packet summing block, where 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, a part of the code symbols is replaced by a module sum of two with code symbols of a previously transmitted and erroneously decoded packet , thereby forming a code-conjugate part;
- в приемном устройстве: - in the receiving device:
блок хранения и модификации мягких решений, где модифицируют мягкие решения в кодово-сопряженной части в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов для чего заменяют знак на противоположный у принятого мягкого решения, если восстановленный кодовый символ текущего пакета соответствует логической единице, получая модифицированную последовательность мягких решений для ошибочного пакета;a soft decision storage and modification unit, where soft decisions are modified in the code-conjugate part at those positions in which the code symbols are replaced by the sum of the symbols of different packets, for which the sign is replaced by the opposite for the adopted soft decision, if the recovered code symbol of the current packet corresponds to a logical unit, getting a modified sequence of soft decisions for an erroneous package;
- второй итеративный декодер, где повторно декодируют ошибочный пакет, используя модифицированную последовательность мягких решений для ошибочного пакета как дополнительную информацию в тех позициях, в которых заменяли кодовые символы суммой символов разных пакетов, передают по каналу обратной связи сигналы, характеризующие результативность декодирования кодово-сопряженных пакетов;- the second iterative decoder, where the erroneous packet is re-decoded using a modified sequence of soft decisions for the erroneous packet as additional information at the positions in which the code symbols were replaced by the sum of the symbols of different packets, signals are transmitted through the feedback channel characterizing the decoding performance of the code-conjugate packets ;
- второй блок вычисления контрольных сумм в декодированном кодовом слове, где каждое декодированное кодовое слово умножают на проверочную матрицу, получая упорядоченную последовательность контрольных сумм, если все контрольные суммы равны нулю, то кодовое слово считают декодированным верно, если количество контрольных сумм отличных от нуля нечетно и последняя контрольная сумма отлична от нуля, то заменяют ее нулем, если количество контрольных сумм отличных от нуля нечетно и последняя в последовательности контрольная сумма равна нулю, то ее заменяют любым отличным от нуля значением;- the second checksum calculation unit in the decoded codeword, where each decoded codeword is multiplied by a check matrix, obtaining an ordered sequence of checksums, if all the checksums are zero, then the code word is considered decoded if the number of non-zero checksums is odd and if 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;
- второй блок контроля ошибок в декодированном кодовом слове, где разбивают последовательность контрольных сумм на пары, в которые входят элементы последовательности, идущие подряд, причем каждая контрольная сумма входит только в единственную пару, в каждой паре вычисляют разность номеров контрольных сумм, складывают все полученные разности номеров контрольных сумм, сравнивают полученное число с заданным порогом, если число превышает установленный порог, то информационную часть кодового слова считают декодированной неверно, если полученное число меньше заданного порога, то информационную часть кодового слова считают декодированной верно.- the second error control block in the decoded codeword, where the sequence of checksums is divided into pairs that include sequence elements in a row, and each checksum is included in only one pair, in each pair the difference of the numbers of checksums is calculated, and all the differences obtained are added numbers of 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 half If the number is less than the specified threshold, then the information part of the codeword is considered decoded correctly.
Графические материалы, используемые в описании: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 a diagram of a prototype transmitting device;
фиг. 4 – схема приемного устройства-прототипа;FIG. 4 is a diagram of a prototype receiving device;
фиг. 5 – схема передающей стороны предлагаемого устройства;FIG. 5 is a diagram of the transmitting side of the proposed device;
фиг. 6 – схема приемной стороны предлагаемого устройства;FIG. 6 is a diagram of the receiving side of the proposed device;
фиг. 7 – способ обнаружения ошибок без CRC;FIG. 7 is a method for detecting errors without CRC;
фиг. 8 – пример кода перемежений с накоплениями;FIG. 8 is an example of an accumulation interleaving code;
фиг. 9 – результаты моделирования: зависимость битовой ошибки от отношения сигнал-шум для
Заявляемое устройство содержит: передающее устройство (передающая сторона), схема которого представлена на фиг. 5, приемное устройство (приемная сторона) и канал обратной связи – на фиг. 6.The inventive device comprises: a transmitting device (transmitting side), the circuit of which is shown in FIG. 5, the receiving device (receiving side) and the feedback channel - in FIG. 6.
На фиг. 5 введены следующие обозначения:In FIG. 5 the following notation is introduced:
1 – блок повторения информационных символов;1 - block repetition of information symbols;
2 – блок перемежения информационных символов;2 - block interleaving information symbols;
3 – блок разделения проверочных символов на группы; 3 - block separation of test characters into groups;
4 – блок управления;4 - control unit;
5 – блок суммирования; 5 - block summation;
6 – мультиплексор;6 - multiplexer;
7 – блок межпакетного суммирования;7 - block interpacket summation;
8 – блок памяти;8 - memory block;
9 – канал связи.9 - communication channel.
Передающее устройство, представленное на фиг. 5, содержит последовательно соединенные блок повторения информационных символов 1, блок перемежения информационных символов 2, блок разделения проверочных символов на группы 3, блок суммирования 5, блок памяти 8, блок межпакетного суммирования 7 и мультиплексор 6, выход которого соединен с каналом связи 9. Кроме того, выходы блока управления 4 соединены с управляющими входами блоков 1, 2, 3, 5, 6, 7, 8 соответственно. The transmitter shown in FIG. 5, contains a series of information
Второй выход блока памяти 8 соединен с третьими входами блока межпакетного суммирования 7 и мультиплексора 6.The second output of the
Первый вход блока повторения информационных символов 1 является первым входом передающего устройства, на который поступают пакеты данных, этот же вход соединен с первым входом мультиплексора 6. Первый вход блока управления 4 является входом сигнала обратной связи на автоматический запрос повторение, он же является вторым входом передающего устройства.The first input of the information
Сигналы с выходов блока управления 4 являются управляющими сигналами, которые, в том числе, обеспечивают синхронизацию остальных блоков.The signals from the outputs of the
Через канал связи 9 сигнал подается на приемное устройство. Through
На фиг. 6 обозначено:In FIG. 6 is indicated:
10 – блок формирования корреляционных откликов и оценки шумового параметра;10 is a block for the formation of correlation responses and estimates of the noise parameter;
11 – блок разделения мягких решений;11 - block separation soft solutions;
12 – блок повторения проверочных символов;12 is a block repetition of test characters;
13 – блок повторения информационных символов;13 - block repetition of information symbols;
14 – блок перемежения информационных символов;14 - block interleaving information symbols;
15 – блок формирования перемеженных мягких решений;15 - block forming interleaved soft decisions;
16, 20 – первый и второй итеративные декодеры;16, 20 - the first and second iterative decoders;
17, 21 – первый и второй блоки вычисления контрольных сумм в декодированном кодовом слове;17, 21 - the first and second blocks for calculating checksums in the decoded codeword;
18, 22 – первый и второй блоки контроля ошибок в декодированном кодовом слове;18, 22 - the first and second blocks of error control in the decoded codeword;
19 – блок хранения и модификации мягких решений;19 - block storage and modification of soft solutions;
23 – канала обратной связи23 - feedback channels
Приемное устройство, представленное на фиг. 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
Входом приемного устройства является вход блока формирования корреляционных откликов и оценки шумового параметра 10, на который поступает сигнал с передающего устройства через канал связи 9. Второй выход блока контроля ошибок в декодированном кодовом слове 22 является вторым выходом приемного устройства.The input of the receiving device is the input of the unit for generating correlation responses and estimating the
Первый 16 и второй 20 итеративные декодеры идентичны и выполнены по аналогичной схеме итеративного декодера устройства-прототипа с единственным отличием: добавлен вход-выход позволяющий сохранять восстановленные мягкие решения в блоке хранения и модификации мягких решений 19 (фиг. 6), использовать модифицированные мягкие решения из блока хранения и модификации мягких решений 19 (фиг. 6) как априорную информацию, суммируя ее с восстановленными мягкими решениями на данной итерации.The first 16 and second 20 iterative decoders are identical and executed according to the similar scheme of the iterative decoder of the prototype device with the only difference: an input-output is added that allows you to save restored soft solutions in the storage and modification block of soft solutions 19 (Fig. 6), use modified soft solutions from block storage and modification of soft decisions 19 (Fig. 6) as a priori information, summing it with the restored soft decisions at this iteration.
Работает устройство следующим образом.The device operates as follows.
На передающей стороне сформированные пакеты данных, каждый из которых содержит упорядоченную последовательность информационных символов, поступают вход блока повторения информационных символов 1 и одновременно на первый вход мультиплексора 6. В блоке повторения информационных символов 1 каждый информационный символ повторяют определенное число раз, в зависимости от его номера по порядку в последовательности символов, формируя последовательность повторенных информационных символов, причем, количество повторений определяется заранее. Последовательность повторенных информационных символов с выхода блока повторения информационных символов 1 поступает на вход блока перемежения информационных символов 2, где осуществляют перемежение в последовательности повторенных информационных символов, добиваясь достаточного разнесения идущих подряд повторенных информационных символов и формируя последовательность перемеженных повторенных информационных символов. В блоке разделения проверочных символов на группы 3 разбивают перемеженные повторенные информационные символы на группы, затем в блоке суммирования 5 получают первый проверочный символ путем суммирования по заданному модулю начального значения переменной суммирования со всеми перемеженными повторенными информационными символами из первой группы, а проверочный символ
На приемной стороне сформированное в передатчике кодовое слово поступает на вход блока формирования корреляционных откликов и оценки шумового параметра 10, где формируют принятые корреляционные отклики на каждый из переданных кодовых символов и выполняют оценку шумового параметра смеси сигнал плюс шум, которая приближенно равна величине стандартного отклонения эквивалентного гауссовского белого шума, которым аппроксимируются помехи в канале, а затем формируют мягкие решения о принятых кодовых символах, используя полученную оценку шумового параметра смеси сигнал плюс шум. Полученные мягкие решения поступают на вход блока разделения мягких решений 11, где происходит разделение мягких решений о принятых кодовых символах на решения об информационных символах и решения о проверочных символах. Мягкие решения об информационных символах с блока разделения мягких решений 11 поступают на вход блока повторения информационных символов 13, где повторяют мягкие решения об информационных символах в соответствии с шаблоном повторения информационных символов. Мягкие решения о проверочных символах с блока разделения мягких решений 11 поступают на вход блока повторения проверочных символов 12, где повторяют мягкие решения о проверочных символах, по крайней мере, два раза за исключением последнего проверочного символа. Для мягких решений об информационных символах выполняют перемежение, аналогичное перемежению на передающей стороне в блоке перемежения информационных символов 14. Затем в блоке формирования перемеженных мягких решений 15 формируют группы перемеженных мягких решений об информационных символах, аналогичные группам соответствующих информационных символов на передающей стороне, используя сигналы с блока проверочных символов 12 и с блока формирования корреляционных откликов и оценки шумового параметра 10, причем первую группу перемеженных мягких решений дополняют мягким решением, соответствующим начальному значению переменной суммирования, и первой копией мягкого решения о первом проверочном символе, образуя первое кодовое слово кода обобщенной проверки на четность, n-ю группу перемеженных мягких решений дополняют второй копией n-го проверочного символа и первой копией мягкого решения об n-м проверочном символе, образуя n-е кодовое слово кода обобщенной проверки на четность. Сформированные перемеженные мягкие решения поступают на первый вход первого итеративного декодера 16 (на первый коммутатор 30 фиг. 5), в котором итеративно повторяют процесс обмена исходящими и входящими сообщениями таким образом, что исходящее сообщение кодового слова обобщенного кода повторений является входящим сообщением кодового слова кода обобщенной проверки на четность, а исходящее сообщение кода обобщенной проверки на четность является входящим сообщением кодового слова обобщенного кода повторений формируя на каждой итерации последовательность восстановленных мягких решений, а из последовательности восстановленных мягких решений формируют декодированные кодовые слова.On the receiving side, the code word generated in the transmitter is input to the block for generating correlation responses and estimating the
Каждое декодированное кодовое слово в блоке вычисления контрольных сумм в декодированном кодовом слове 17 умножают на проверочную матрицу, получая упорядоченную последовательность контрольных сумм, если все контрольные суммы равны нулю, то кодовое слово считают декодированным верно, если количество контрольных сумм отличных от нуля нечетно и последняя контрольная сумма отлична от нуля, то заменяют ее нулем, если количество контрольных сумм отличных от нуля нечетно и последняя в последовательности контрольная сумма равна нулю, то ее заменяют любым отличным от нуля значением, разбивают последовательность контрольных сумм на пары, в которые входят элементы последовательности, идущие подряд, причем каждая контрольная сумма входит только в единственную пару, в каждой паре вычисляют разность номеров контрольных сумм, складывают все полученные разности номеров контрольных сумм. Затем в первом блоке контроля ошибок в декодированном кодовом слове 18 сравнивают полученное число с заданным порогом, если число превышает установленный порог, то информационную часть кодового слова считают декодированной неверно, если полученное число меньше заданного порога, то информационную часть кодового слова считают декодированной верно. Each decoded codeword in the checksum calculation unit in the decoded codeword 17 is multiplied by a check matrix, obtaining an ordered sequence of checksums, if all the checksums are zero, then the code word is considered decoded 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 first error control block in the decoded
Восстановленные проверочные символы пакета, в котором детектирована ошибка, сохраняют в блоке хранения и модификации мягких решений 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 modification block 19, where they change the sign of the soft decision to the opposite if the recovered soft decisions are in the positions in which the code symbols were replaced by the sum of the symbols of different packets in the code conjugate parts of the packet correspond to a logical unit, obtaining soft solutions of the current packet, which are used as additional information when decoding the current packet by the first iterative decoder 16. Restore The updated sequence of soft decisions of the current packet is stored in the storage and modification block of soft decisions 19, where the soft decision sign is reversed if the restored soft decisions of the current packet are in the positions at which code symbols were replaced by the sum of the symbols of different packets in the code-conjugate part of the packet correspond to a logical unit, obtaining a modified sequence of soft solutions for an erroneous package. The error packet is re-decoded by the second iterative decoder 20, using the modified sequence of soft solutions 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 on the feedback channel 23 signals characterizing the decoding performance of code-conjugate packets.
Алгоритм обнаружения ошибок в кодовом слове представлен на фиг. 7.The error detection algorithm in the codeword is shown in FIG. 7.
Обнаружение ошибок в заявляемом способе передачи данных в цифровой системе связи может быть пояснено следующим примером. Пусть мы имеем код “повторение с накоплением” заданный двудольным регулярным графом. Рассмотрим различные конфигурации ошибок. Отметим случай, когда существуют ошибочно декодированные переменные вершины, но все контрольные суммы равны нулю. Это случай необнаружимой ошибки. Рассмотрим также случай, когда ошибки только в проверочной части кодового слова. Заметим, что каждая ошибка в проверочной части вызывает неравенство нулю двух соседних контрольных сумм. Однако неравные нулю контрольные суммы при ошибке в информационной части разнесены на расстояние пропорциональное параметру разнесения интерливера (перемежителя). Таким образом, при наличии единственной ошибки легко определить к какому символу она относится: информационному или проверочному. Для этого достаточно рассмотреть разность номеров проверочных вершин, соответствующих неравным нулю контрольным суммам. Если таковая разность равна 1, то ошибочный символ однозначно можно отнести к проверочным символам, если больше, то ошибочный символ информационный.Error detection 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 erroneously decoded vertex variables exist, but all the 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 (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 sum 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 refer errors only to check characters.
Таким образом, обнаружение ошибок осуществляют без 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.
Все блоки, входящие в систему связи могут быть реализованы на процессоре, ПЛИС, например, производства фирм Altera и Xilinx, а также на специализированной заказной микросхеме.All units included in the communication system can be implemented on the processor, FPGA, for example, manufactured by Altera and Xilinx, as well as on a specialized custom microcircuit.
Таким образом, технический результат состоит в получении энергетического выигрыша кодирования в среднем 0.5 Дб, что подтверждается результатами моделирования, представленными на Фиг. 9, где указанный выигрыш получен при
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019117117A RU2713573C1 (en) | 2019-06-03 | 2019-06-03 | Data transmission device based on codes with low density of checks on parity |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019117117A RU2713573C1 (en) | 2019-06-03 | 2019-06-03 | Data transmission device based on codes with low density of checks on parity |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2713573C1 true RU2713573C1 (en) | 2020-02-05 |
Family
ID=69625051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019117117A RU2713573C1 (en) | 2019-06-03 | 2019-06-03 | Data transmission device based on codes with low density of checks on parity |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2713573C1 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5907582A (en) * | 1997-08-11 | 1999-05-25 | Orbital Sciences Corporation | System for turbo-coded satellite digital audio broadcasting |
RU2158970C2 (en) * | 1994-03-01 | 2000-11-10 | Сони Корпорейшн | Method for digital signal encoding and device which implements said method, carrier for digital signal recording, method for digital signal decoding and device which implements said method |
WO2002037743A1 (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 |
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) |
-
2019
- 2019-06-03 RU RU2019117117A patent/RU2713573C1/en active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2158970C2 (en) * | 1994-03-01 | 2000-11-10 | Сони Корпорейшн | Method for digital signal encoding and device which implements said method, carrier for digital signal recording, method for digital signal decoding and device which implements said method |
US5907582A (en) * | 1997-08-11 | 1999-05-25 | Orbital Sciences Corporation | System for turbo-coded satellite digital audio broadcasting |
WO2002037743A1 (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 |
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) |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Elkelesh et al. | Belief propagation decoding of polar codes on permuted factor graphs | |
EP1838000A2 (en) | Apparatus and method for transmitting/receiving data in a communication system | |
JP5068537B2 (en) | Replica combined group shuffle iterative decoder and method of generating the same | |
CN101039119B (en) | Encoding and decoding methods and systems | |
TWI594583B (en) | Gldpc soft decoding with hard decision inputs | |
US7752524B2 (en) | Method and device for decoding DVB-S2 LDPC encoded codewords | |
US20060123318A1 (en) | Method and apparatus for decoding low density parity check code using united node processing | |
US20060190801A1 (en) | Apparatus and method for generating low density parity check code using zigzag code in a communication system | |
JP2008035524A (en) | Apparatus and method for decoding block of symbols using iterative belief propagation | |
EP1715589A1 (en) | LDPC decoder in particular for DVB-S2 LDCP code decoding | |
US9831987B2 (en) | Staggered parity | |
US8301983B2 (en) | Modified turbo-decoding message-passing algorithm for low-density parity check codes | |
JP6533039B2 (en) | Decoding of correction code using message passing, especially decoding improvement method of LDPC code or turbo code | |
US8019020B1 (en) | Binary decoding for correlated input information | |
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 | |
RU2713573C1 (en) | Data transmission device based on codes with low density of checks on parity | |
Ma et al. | Statistical learning aided decoding of BMST tail-biting convolutional code | |
RU2708349C1 (en) | Data transmission method based on codes with low density of checks on parity | |
Ma et al. | Serial concatenation of RS codes with Kite codes: Performance analysis, iterative decoding and design | |
Seksembayeva et al. | Study of the principles of error correcting code in a multipath communication channel with intersymbol interference | |
Chaudhary et al. | Error control techniques and their applications | |
Chen et al. | A double serial concatenated code using CRC-aided error correction for highly reliable communication | |
Belkasmi et al. | Iterative threshold decoding of product codes constructed from majority logic decodable codes | |
WO2022135719A1 (en) | Staircase polar encoding and decoding | |
RU2755295C1 (en) | Method for interleaving code symbols in low-density parity-check code |