RU2718213C1 - Method of combined arithmetic and antinoise encoding and decoding - Google Patents
Method of combined arithmetic and antinoise encoding and decoding Download PDFInfo
- Publication number
- RU2718213C1 RU2718213C1 RU2019131779A RU2019131779A RU2718213C1 RU 2718213 C1 RU2718213 C1 RU 2718213C1 RU 2019131779 A RU2019131779 A RU 2019131779A RU 2019131779 A RU2019131779 A RU 2019131779A RU 2718213 C1 RU2718213 C1 RU 2718213C1
- Authority
- RU
- Russia
- Prior art keywords
- sequence
- decoding
- current
- interval
- alternative
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000001514 detection method Methods 0.000 claims description 12
- 230000000295 complement effect Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 abstract description 39
- 238000005516 engineering process Methods 0.000 abstract description 3
- 239000000126 substance Substances 0.000 abstract 1
- 238000011949 advanced processing technology Methods 0.000 description 62
- 238000004891 communication Methods 0.000 description 13
- 238000012937 correction Methods 0.000 description 11
- 238000007906 compression Methods 0.000 description 10
- 230000006835 compression Effects 0.000 description 10
- 238000010606 normalization Methods 0.000 description 7
- 238000013144 data compression Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000036039 immunity Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 239000013256 coordination polymer Substances 0.000 description 4
- 238000004760 accelerator mass spectrometry Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 108091026890 Coding region Proteins 0.000 description 1
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 238000012443 analytical study Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005059 dormancy Effects 0.000 description 1
- 238000001303 quality assessment method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 229920003987 resole Polymers 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
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
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/07—Arithmetic codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
Заявленное техническое решение относится к области электросвязи и информационных технологий, а именно к технике сжатия и восстановления избыточной двоичной информации и ее помехоустойчивого кодирования и декодирования при передаче информации по каналам с ошибками.The claimed technical solution relates to the field of telecommunications and information technology, namely to the technique of compression and recovery of redundant binary information and its noise-resistant coding and decoding when transmitting information on channels with errors.
Заявленное изобретение может быть использовано для обеспечения достоверности избыточной двоичной информации, передаваемой по каналам с ошибками.The claimed invention can be used to ensure the reliability of redundant binary information transmitted over channels with errors.
Известен способ адаптивного помехоустойчивого кодирования и декодирования по патенту РФ 2375824 МПК H04 L1/20 (2006.01) от 10.12.2009, заключающийся в том, что на передающей стороне исходную информацию кодируют помехоустойчивым кодом с переменными параметрами, далее помехоустойчивый код передают в канал связи, на приемной стороне помехоустойчивый код декодируют с обнаружением и исправлением ошибок в зависимости от корректирующей способности выбранного кода, по результатам декодирования помехоустойчивого кода оценивают качество канала связи и выбирают переменные параметры помехоустойчивого кода, обеспечивающие заданную вероятность правильного приема помехоустойчивого кода, и далее эти параметры помехоустойчивого кода сообщают на передающую сторону, отличающийся тем, что на приемной стороне по результатам декодирования помехоустойчивого кода рассчитывают начальную величину избыточности помехоустойчивого кода, обеспечивающую заданную вероятность правильного приема помехоустойчивого кода, оценивают вероятность правильного приема помехоустойчивого кода с выбранными параметрами, вычисляют величину отклонения полученной вероятности правильного приема помехоустойчивого кода от заданной вероятности правильного приема кода и в зависимости от величины этого отклонения корректируют величину избыточности помехоустойчивого кода, которую передают на передающую сторону, где формируют помехоустойчивый код с полученной избыточностью.A known method of adaptive noise-resistant coding and decoding according to the patent of the Russian Federation 2375824 IPC H04 L1 / 20 (2006.01) dated 12/10/2009, which consists in the fact that on the transmitting side the source information is encoded by a noise-resistant code with variable parameters, then the noise-resistant code is transmitted to the communication channel, the receiving side, the error-correcting code is decoded with the detection and correction of errors depending on the correcting ability of the selected code, the quality of the communication channel is evaluated according to the results of decoding the error-correcting code and select variable parameters of the error-correcting code are provided, which provide a predetermined probability of correct reception of the error-correcting code, and then these parameters of the error-correcting code are reported to the transmitting side, characterized in that on the receiving side, based on the results of decoding the error-correcting code, the initial value of the redundancy of the error-correcting code is calculated, which provides a given probability of correct reception of the error-correcting code code, evaluate the probability of correct reception of the error-correcting code with the selected parameter trams, calculate the deviation of the obtained probability of the correct reception of the error-correcting code from the given probability of the correct reception of the code, and depending on the value of this deviation, the amount of redundancy of the error-correcting code is corrected, which is transmitted to the transmitting side, where the error-correcting code is generated with the received redundancy.
Недостатком указанного аналога является неэффективное использование пропускной способности канала передачи, вызванное отсутствием сжатия избыточной двоичной информации при обмене данными по каналам передачи с ошибками.The disadvantage of this analogue is the inefficient use of transmission channel bandwidth due to the lack of compression of excess binary information when exchanging data on transmission channels with errors.
Известен также способ совместного сжатия и помехоустойчивого кодирования и декодирования речевых сообщений, описанный, например, в книге С.Н. Кириллов, В.Т. Дмитриев, Д.Е. Крысяев, С.С. Попов "Исследование качества передаваемой речевой информации при различном сочетании алгоритмов кодирования источника и канала связи в условиях воздействия помех". - Рязань, Вестник РГРТУ, Выпуск 23, 2008. Данный способ заключается в том, что предварительно формируют множество способов сжатия речевого сигнала, таких как импульсно-кодовая модуляция, адаптивная дельта-модуляция, адаптивная дифференциальная импульсно-кодовая модуляция, и множество способов помехоустойчивого кодирования, таких как кодирование Хэмминга, кодирование Боуз-Чоудхури-Хоквингема, на передающей стороне от отправителя получают очередную часть речевого сигнала длиною речевая фраза, который преобразуют в сжатую двоичную последовательность с помощью одного из способов сжатия речевого сигнала, выполняют помехоустойчивое кодирование сжатой двоичной последовательности с помощью одного из способов помехоустойчивого кодирования, передают на приемную сторону по каналу прямой связи очередную часть кодированной последовательности вместе с информацией об использованном способе сжатия речевого сигнала и способе помехоустойчивого кодирования, на приемной стороне получают очередную часть принятой последовательности, очередную часть принятой последовательности последовательно декодируют с использованием соответствующих способа помехоустойчивого декодирования и способа восстановления речевого сигнала, вычисляют оценку качества восстановленного речевого сигнала и полученную оценку сравнивают с пороговым значением качества, если вычисленная оценка качества восстановленного речевого сигнала не хуже предварительно установленного порогового значения качества, то передают получателю очередную часть восстановленной информационной последовательности и передающей стороне от отправителя получают очередную часть речевого сигнала и выполняют последующие действия, иначе передают по каналу обратной связи требование изменить способ сжатия речевого сигнала и способ помехоустойчивого кодирования, и выполняют последующие действия.There is also a method of joint compression and noise-resistant coding and decoding of voice messages, described, for example, in the book of S. N. Kirillov, V.T. Dmitriev, D.E. Krysyaev, S.S. Popov "Study of the quality of transmitted voice information with a different combination of source and communication channel coding algorithms under the influence of interference". - Ryazan, Vestnik of RGRTU, Issue 23, 2008. This method consists in preliminarily generating a variety of speech compression methods, such as pulse-code modulation, adaptive delta modulation, adaptive differential pulse-code modulation, and many noise-resistant coding methods , such as Hamming coding, Bowes-Chowdhury-Hockingham coding, on the transmitting side from the sender receive the next part of the speech signal the length of the speech phrase, which is converted into a compressed binary sequence the accuracy using one of the methods of compressing a speech signal, perform error-correcting encoding of a compressed binary sequence using one of the methods of error-correcting encoding, transmit the next part of the encoded sequence along with information about the used method of compressing the speech signal and the method of error-correcting encoding to the receiving side via direct communication channel, on the receiving side receive the next part of the received sequence, the next part of the received sequence by they are decoded using the appropriate error-correcting decoding method and the method of reconstructing a speech signal, the quality estimate of the reconstructed speech signal is calculated, and the resulting estimate is compared with a threshold quality value, if the calculated quality assessment of the reconstructed speech signal is not worse than a preset threshold quality value, then the receiver receives the next part of the reconstructed information sequence and the transmitting side from the sender received they receive the next part of the speech signal and perform the following actions, otherwise they transmit via the feedback channel the requirement to change the method of compression of the speech signal and the method of error-correcting coding, and perform the following actions.
Недостатком указанного аналога является большая задержка передачи сообщений по каналу связи, вызванная необходимостью подбора подходящих способа сжатия речевого сигнала и способа помехоустойчивого кодирования.The disadvantage of this analogue is the large delay in the transmission of messages over the communication channel, due to the need to select the appropriate method for compressing a speech signal and a noise-resistant coding method.
Наиболее близким по своей технической сущности к заявленному способу совместного арифметического и помехоустойчивого кодирования и декодирования является способ совместного арифметического и помехоустойчивого кодирования и декодирования по патенту США 6892343 МПК H04 M13/00 (2006.01) от 10.05.2005. Способ - прототип совместного арифметического и помехоустойчивого кодирования и декодирования заключается в том, что предварительно на передающей стороне устанавливают начальный интервал арифметического кодирования и на приемной стороне соответствующий ему начальный интервал арифметического декодирования, на передающей стороне от источника информации принимают очередную часть информационной последовательности длиной k≥1 бит, разделяют текущий интервал арифметического кодирования длиною D>2 на текущий подинтервал кодирования нулевого символа D0 и на текущий подинтервал кодирования единичного символа D1, из предварительно сформированного множества выбирают проверочные символы длиной r≥1 бит и формируют очередную часть помехоустойчивой последовательности из очередной части информационной последовательности и выбранных проверочных символов, выполняют арифметическое кодирование очередной части помехоустойчивой последовательности в очередную часть кодированной последовательности, преобразуют очередную часть кодированной последовательности в очередную часть модулированной последовательности, передают очередную часть модулированной последовательности на приемную сторону, выполняют на передающей стороне перечисленные действия до тех пор, пока поступают очередные части информационной последовательности, на приемной стороне принимают очередную часть последовательности, преобразуют ее в двоичную последовательность, которую запоминают, разделяют текущий интервал арифметического декодирования длиною DD>2 на текущий подинтервал декодирования нулевого символа DD0 и на текущий подинтервал декодирования единичного символа DD1, запомненные очередные части принятой последовательности арифметически декодируют в очередные части декодированной последовательности, из которых выделяют очередные части восстановленной информационной последовательности и декодированные проверочные символы, если декодированные проверочные символы принадлежат предварительно сформированному множеству проверочных символов, то делают вывод об отсутствии ошибок передачи и передают очередную часть восстановленной информационной последовательности, иначе поочередно инвертируют один или несколько битов в запомненных очередных частях принятой последовательности и выполняют их арифметическое декодирование до достижения вывода об отсутствии ошибок передачи, выполняют перечисленные действия на приемной стороне до тех пор, пока на приемной стороне поступают очередные части принятой последовательности.The closest in technical essence to the claimed method of joint arithmetic and noise-resistant coding and decoding is the method of joint arithmetic and noise-resistant coding and decoding according to US patent 6892343 IPC H04 M13 / 00 (2006.01) dated 05/10/2005. The method is a prototype of joint arithmetic and error-correcting coding and decoding: first, the initial interval of arithmetic encoding is set on the transmitting side and the initial arithmetic decoding interval corresponding to it is set on the receiving side, the next part of the information sequence of length k≥1 is received from the information source bit, divide the current arithmetic coding interval of length D> 2 by the current coding subinterval of zero character D0 and for the current coding sub-interval of a single character D1, from the pre-formed set, test characters of length r≥1 bits are selected and the next part of the error-correcting sequence is formed from the next part of the information sequence and the selected test symbols, arithmetic coding of the next part of the error-correcting sequence to the next part encoded sequence, convert the next part of the encoded sequence in the next hour l modulated sequence, transmit the next part of the modulated sequence to the receiving side, perform the above actions on the transmitting side until the next parts of the information sequence arrive, accept the next part of the sequence on the receiving side, convert it to a binary sequence that is stored, share the current interval arithmetic decoding of length DD> 2 to the current sub-interval of decoding the null character DD0 and to the current sub-interval of encoding a single symbol DD1, the stored next parts of the received sequence are arithmetically decoded into the next parts of the decoded sequence, from which the next parts of the reconstructed information sequence and the decoded check characters are extracted, if the decoded check characters belong to a pre-formed set of check characters, it is concluded that there are no transmission errors and transmit the next part of the restored information sequentially ti, or alternately inverting one or more bits stored in successive portions of the received sequence and perform their arithmetic decoding until the output of the absence of transmission errors, perform these actions on the reception side as long as the next part of the received sequence received at the receiving side.
Особенностью способа-прототипа является то, что на передающей стороне выполняют выбор проверочных символов, а затем сжатие очередных частей информационной последовательности и проверочных символов путем арифметического кодирования, а на приемной стороне после арифметического декодирования обнаруживают ошибки передачи при их наличии, а при их обнаружении методом проб и ошибок выполняют их исправление. Способ-прототип совместного арифметического и помехоустойчивого кодирования и декодирования обеспечивает возможность обнаружения и исправления ошибок передачи.A feature of the prototype method is that on the transmitting side, the selection of test characters is performed, and then the subsequent parts of the information sequence and test characters are compressed by arithmetic coding, and on the receiving side after arithmetic decoding, transmission errors are detected if any, and when they are detected by the sample method and errors carry out their correction. The prototype method of the joint arithmetic and noise-resistant coding and decoding provides the ability to detect and correct transmission errors.
Однако в данном способе-прототипе совместного арифметического и помехоустойчивого кодирования и декодирования информационной последовательности исправление ошибок передачи выполняют методом перебора, поочередно инвертируя один или несколько битов в запомненных очередных частях принятой последовательности и выполняя их арифметическое декодирование до достижения вывода об исправлении этих ошибок с использованием проверочных символов. При длине N бит запомненных очередных частей принятой последовательности и числе W исправляемых ошибок это требует параллельной работы порядка NW/2 арифметических декодеров с соответствующим числом устройств обнаружения ошибок. При арифметическом декодировании сжатых избыточных двоичных последовательностей наличие ошибок передачи выявляется при длине запомненных очередных частях принятой последовательности вплоть до десятков бит и более. Поэтому в данном способе-прототипе совместного арифметического и помехоустойчивого кодирования и декодирования исправление ошибок передачи при кратности ошибок более одной требует использования многих тысяч арифметических декодеров с соответствующим числом устройств обнаружения ошибок, что является практически нереализуемым.However, in this prototype method of joint arithmetic and error-correcting coding and decoding of an information sequence, transmission errors are corrected by enumeration, inverting one or more bits in the remembered successive parts of the received sequence and performing arithmetic decoding until reaching the conclusion on the correction of these errors using check symbols . With a length of N bits of stored successive parts of the received sequence and the number W of correctable errors, this requires parallel operation of the order of N W / 2 arithmetic decoders with the corresponding number of error detection devices. When arithmetic decoding of compressed redundant binary sequences, transmission errors are detected with the length of the stored next parts of the received sequence up to tens of bits or more. Therefore, in this prototype method of joint arithmetic and noise-correcting coding and decoding, correction of transmission errors with an error rate of more than one requires the use of many thousands of arithmetic decoders with the corresponding number of error detection devices, which is practically impossible.
Таким образом, недостатком ближайшего аналога (прототипа) совместного арифметического и помехоустойчивого кодирования и декодирования информационной последовательности является низкая помехоустойчивость передачи очередных частей кодированной последовательности, обусловленная практической невозможностью исправления ошибок передачи при кратности ошибок более одной.Thus, the disadvantage of the closest analogue (prototype) of joint arithmetic and noise-resistant coding and decoding of the information sequence is the low noise immunity of transmission of the next parts of the encoded sequence, due to the practical impossibility of correcting transmission errors with an error rate of more than one.
Техническим результатом заявляемого решения является разработка способа совместного арифметического и помехоустойчивого кодирования и декодирования, обеспечивающего повышение помехоустойчивости передачи очередных частей кодированной последовательности при воздействии многократных ошибок передачи.The technical result of the proposed solution is the development of a method of joint arithmetic and noise-resistant coding and decoding, which provides increased noise immunity of the transmission of the next parts of the encoded sequence when exposed to multiple transmission errors.
Указанный технический результат в заявляемом способе совместного арифметического и помехоустойчивого кодирования и декодирования достигается тем, что в известном способе совместного арифметического и помехоустойчивого кодирования и декодирования, заключающимся в том, что предварительно на передающей стороне устанавливают начальный интервал арифметического кодирования и на приемной стороне соответствующий ему начальный интервал арифметического декодирования, на передающей стороне от источника информационной последовательности принимают очередную часть информационной последовательности длиной k≥1 бит, разделяют текущий интервал арифметического кодирования длиной D>2 на текущий подинтервал кодирования нулевого символа длиной D0 и на текущий подинтервал кодирования единичного символа длиной D1, выполняют арифметическое кодирование очередной части последовательности в очередную часть кодированной последовательности, передают очередную часть последовательности на приемную сторону, выполняют на передающей стороне перечисленные действия до тех пор, пока поступают очередные части информационной последовательности, на приемной стороне принимают последовательность, разделяют текущий интервал арифметического декодирования длиною DD>2 на текущий подинтервал декодирования нулевого символа DD0 и на текущий подинтервал декодирования единичного символа DD1, арифметически декодируют очередные части принятой последовательности в очередные части последовательности, выполняют перечисленные действия на приемной стороне до тех пор, пока поступает принятая последовательность, передают получателю восстановленную информационную последовательность, дополнительно предварительно устанавливают предельное число Z≥2 альтернативных принятых последовательностей и значение метрики альтернативных принятых последовательностей в нулевое значение.The specified technical result in the inventive method of joint arithmetic and noise-resistant coding and decoding is achieved by the fact that in the known method of joint arithmetic and noise-resistant coding and decoding, which consists in the preliminary setting of the initial interval of arithmetic coding on the transmitting side and the corresponding initial interval on the receiving side arithmetic decoding, on the transmitting side from the source of the information sequence take the next part of the information sequence of length k≥1 bits, divide the current arithmetic coding interval of length D> 2 into the current coding sub-interval of a zero character of length D0 and the current coding sub-interval of a single character of length D1, perform arithmetic coding of the next part of the sequence into the next part of the coded sequence, transmit the next part of the sequence to the receiving side, perform the listed actions on the transmitting side until the post the next parts of the information sequence are written, the sequence is received on the receiving side, the current arithmetic decoding interval of length DD> 2 is divided into the current decoding sub-interval of the DD0 zero symbol and the current decoding sub-interval of the single character DD1, the next parts of the received sequence are arithmetically decoded into the next parts of the sequence, the listed actions on the receiving side until the received sequence arrives, transmit to the recipient If the information sequence is set, the limit number Z≥2 of alternative received sequences and the metric value of the alternative received sequences are additionally pre-set to zero.
На передающей стороне в зависимости от m≥1 ранее кодированных символов информационной символов из текущего подинтервала арифметического кодирования нулевого символа длиной D0≥2 выделяют текущий разрешенный подинтервал кодирования нулевого символа длиной D0 a , где 1≤D0 a <D0, и из текущего подинтервала кодирования единичного символа длиной D1≥2 выделяют текущий разрешенный подинтервал кодирования единичного символа длиной D1 a , где 1≤D1 a <D1. Длину D0 a текущего разрешенного подинтервала кодирования нулевого символа выбирают как D0 a =a m⋅D0, а длину D1 a текущего разрешенного подинтервала кодирования единичного символа выбирают как D1 a =a m⋅D1, где коэффициент обнаружения ошибок а выбирают в пределах 0<а<1.On the transmitting side, depending on m≥1 previously encoded symbols of information symbols from the current sub-interval of arithmetic coding of a zero symbol of length D0≥2, the current allowed sub-interval of coding of a zero symbol of length D0 a , where 1≤D0 a <D0, and from the current coding sub-interval of single characters of length D1≥2 highlight the current allowed coding sub-interval of a single character of length D1 a , where 1≤D1 a <D1. The length D0 a of the current allowed encoding subinterval of the zero symbol is chosen as D0 a = a m ⋅ D0, and the length D1 a of the current allowed subinterval of the encoding of a single symbol is chosen as D1 a = a m ⋅ D1, where the error detection coefficient a is selected within 0 < a <1.
В соответствии с выделенными текущими разрешенными подинтервалами кодирования выполняют арифметическое кодирование очередной части информационной последовательности в очередную часть кодированной последовательности, которую передают на приемную сторону.In accordance with the highlighted current allowed coding sub-intervals, arithmetic coding of the next part of the information sequence into the next part of the encoded sequence, which is transmitted to the receiving side, is performed.
На приемной стороне принимают очередной бит последовательности, текущий интервал арифметического декодирования длиной DD каждой альтернативной принятой последовательности разделяют на текущий подинтервал декодирования нулевого символа длиной DD0≥2 и на текущий подинтервал декодирования единичного символа длиной DD1≥2, из которых в зависимости от m символов восстановленной информационной последовательности каждой альтернативной принятой последовательности выделяют текущий разрешенный подинтервал декодирования нулевого символа длиной DD0 a , где 1≤DD0 a <DD0, и, соответственно, текущий разрешенный подинтервал декодирования единичного символа длиной DD1 a , где 1≤DD1 a <DD1. Длину DD0 a текущего разрешенного подинтервала декодирования нулевого символа выбирают как DD0a=a m⋅DD0, а длину DD1 a текущего разрешенного подинтервала декодирования единичного символа выбирают как DD1 a =a m⋅DD1.The next bit of the sequence is received at the receiving side, the current arithmetic decoding interval of length DD of each alternative received sequence is divided into the current sub-interval of decoding a zero character of length DD0≥2 and the current sub-interval of decoding a single character of length DD1≥2, of which, depending on m characters, the restored information sequences of each alternative received sequence allocate the current allowed null symbol decoding sub-interval for hydrochloric DD0 a, where 1≤DD0 a <DD0, and accordingly, the current subinterval permitted symbol length decoding unit DD1 a, where 1≤DD1 a <DD1. The length DD0 a of the current allowed decoding subinterval of the null symbol is selected as DD0 a = a m ⋅ DD0, and the length DD1 a of the current allowed decoding subinterval of a single symbol is selected as DD1 a = a m ⋅ DD1.
Если текущее значение альтернативной принятой последовательности не находится в пределах текущего разрешенного подинтервала декодирования нулевого символа или текущего разрешенного подинтервала декодирования единичного символа этой альтернативной принятой последовательности, то стирают данную альтернативную принятую последовательность, иначе арифметически декодируют альтернативную принятую последовательность в соответствии с текущими разрешенными подинтервалами декодирования в очередные части соответствующей ей альтернативной восстановленной последовательности.If the current value of the alternative received sequence is not within the current allowed decoding sub-interval of the zero symbol or the current allowed decoding sub-interval of a single symbol of this alternative received sequence, then this alternative received sequence is erased, otherwise the alternative received sequence is decoded arithmetically in accordance with the current allowed decoding sub-intervals to the next parts of the corresponding alternate implicit reconstituted sequence.
Для каждой альтернативной принятой последовательности формируют продолжение последовательности в виде нулевого символа и продолжение последовательности в виде единичного символа, устанавливают значение метрики продолжения последовательности в виде нулевого символа и значение метрики продолжения последовательности в виде единичного символа относительно очередного бита принятой последовательности. Значение метрики продолжения последовательности в виде нулевого символа относительно очередного бита принятой последовательности устанавливают в нулевое значение, если очередной бит принятой последовательности является нулевым битом, иначе устанавливают в единичное значение. Значение метрики продолжения последовательности в виде единичного символа относительно очередного бита принятой последовательности устанавливают в нулевое значение, если очередной бит принятой последовательности является единичным битом, иначе устанавливают в единичное значение.For each alternative received sequence, a continuation of the sequence in the form of a null character and a continuation of the sequence in the form of a single character are formed, the value of the continuation metric in the form of a null character and the value of the continuation metric in the form of a single character relative to the next bit of the received sequence are set. The value of the continuation metric in the form of a zero symbol relative to the next bit of the received sequence is set to zero if the next bit of the received sequence is a zero bit, otherwise set to a single value. The value of the continuation sequence metric in the form of a single symbol relative to the next bit of the received sequence is set to zero if the next bit of the received sequence is a single bit, otherwise set to a single value.
Для каждой альтернативной принятой последовательности с ее продолжением последовательности вычисляют значение ее метрики, для чего суммируют значения метрики данной последовательности и метрики ее продолжения последовательности, сравнивают между собой значения метрики альтернативных принятых последовательностей с их продолжениями последовательности и выбирают из них не более предельного числа Z альтернативных принятых последовательностей, имеющих наименьшие значения метрики, которые дополняют соответствующими им продолжениями последовательности, для этих альтернативных принятых последовательностей запоминают очередные части соответствующих им альтернативных восстановленных информационных последовательностей и значения метрики.For each alternative received sequence with its continuation, the value of its metric is calculated, for which the metric values of the given sequence and the metrics of its continuation of the sequence are summarized, the metrics of the alternative received sequences are compared with their continuation sequences, and no more than the maximum number Z of alternative accepted ones are selected from them sequences having the smallest metric values that complement their corresponding extensions sequences for these alternative received sequences remember the next parts of their corresponding alternative restored information sequences and metric values.
Выполняют перечисленные действия на приемной стороне до тех пор, пока поступают очередные биты принятой последовательности, сравнивают между собой значения метрики альтернативных принятых последовательностей и выбирают из них последовательность с наименьшим значением метрики, после чего передают получателю в качестве восстановленной информационной последовательности соответствующую выбранной альтернативной принятой последовательности альтернативную восстановленную информационную последовательность.The above actions are performed on the receiving side until the next bits of the received sequence arrive, the metrics of the alternative received sequences are compared with each other and the sequence with the lowest metric value is selected from them, and then the alternative alternative received sequence is transferred to the receiver as the restored information sequence restored information sequence.
В предлагаемой совокупности действий на передающей стороне при арифметическом кодировании очередной части информационной последовательности в очередную часть кодированной последовательности последнюю формируют в соответствии с текущими разрешенными подинтервалами кодирования, а на приемной стороне при декодировании очередных частей принятой последовательности стирают те альтернативные принятые последовательности, которые не могут быть сформированы на передающей стороне в соответствии с текущими разрешенными подинтервалами, среди оставшихся сохраняют и продолжают ограниченное число Z альтернативных принятых последовательностей с их продолжениями последовательности, имеющих наименьшие значения метрики, и после приема всей последовательности среди лучших по критерию метрики продолжаемых альтернативных принятых последовательностей выбирают последовательность с наименьшим значением метрики, которая с наибольшей вероятностью совпадает со сформированной на передающей стороне кодированной последовательностью. Тем самым выполняют исправление ошибок канала передачи, причем кратность исправленных ошибок в принятой последовательности соответствует значению метрики выбранной альтернативной принятой последовательности. Данный способ декодирования относится к классу методов декодирования сообщения в целом, которые теоретически способны достичь предельно высокой помехоустойчивости передачи сообщений. Благодаря тому, что при декодировании очередных битов принятой последовательности стирают альтернативные принятые последовательности, которые не обеспечивают исправление произошедших ошибок канала передачи, и продолжают ограниченное число Z нестертых альтернативных принятых последовательностей с их продолжениями последовательности, которые обеспечивают максимизацию вероятности исправления ошибок передачи, обеспечивается возможность исправления многократных ошибок передачи путем декодирования ограниченного числа альтернативных принятых последовательностей. Способность обнаруживать и исправлять многократные ошибки канала передачи увеличивается при уменьшении значения коэффициента обнаружения ошибок а и увеличении предельного числа Z альтернативных принятых последовательностей. В заявленном способе совместного арифметического и помехоустойчивого кодирования и декодирования коэффициент обнаружения ошибок а, выбираемый в пределах 0<а<1, является эквивалентом скорости помехоустойчивого кода , где k≥1 есть длина очередной части информационной последовательности, а n=k+r есть длина очередной части помехоустойчивой последовательности, состоящей из k информационных символов и из r≥1 проверочных символов. Однако в заявленном способе за счет совместности выполнения действий арифметического и помехоустойчивого кодирования и декодирования проверочные символы не используются.In the proposed set of actions on the transmitting side during arithmetic coding of the next part of the information sequence into the next part of the encoded sequence, the latter is formed in accordance with the current allowed coding sub-intervals, and on the receiving side when decoding the next parts of the received sequence, those alternative received sequences that cannot be formed are erased on the transmitting side in accordance with the current allowed sub-intervals, with Among the remaining ones, a limited number Z of alternative received sequences are stored and continued with their sequence extensions having the smallest metric values, and after receiving the entire sequence, among the best continued alternative accepted sequences by the metric criterion, choose the sequence with the smallest metric value that most likely coincides with that generated on the transmitting side of the encoded sequence. Thereby, error correction of the transmission channel is performed, wherein the multiplicity of the corrected errors in the received sequence corresponds to the metric value of the selected alternative received sequence. This decoding method belongs to the class of message decoding methods in general, which are theoretically capable of achieving extremely high noise immunity of message transmission. Due to the fact that when decoding the next bits of the received sequence, the alternative received sequences are erased that do not correct the transmission channel errors that have occurred, and the limited number Z of non-erased alternative received sequences with their sequence extensions that maximize the probability of transmission error correction is maximized. transmission errors by decoding a limited number of alternatives s received sequences. The ability to detect and correct multiple errors of the transmission channel increases with decreasing values of detection errors and increase a coefficient limiting number Z alternative received sequences. In the inventive method and joint arithmetic error-correcting coding and error detection decoding coefficient and selected in the
Поэтому указанная новая совокупность действий при выполнении совместного арифметического и помехоустойчивого кодирования и декодирования информационной последовательности позволяет обеспечить повышение помехоустойчивости передачи очередных частей кодированной последовательности при воздействии многократных ошибок передачи.Therefore, the specified new set of actions when performing joint arithmetic and noise-resistant coding and decoding of the information sequence allows to increase the noise immunity of transmission of the next parts of the encoded sequence when exposed to multiple transmission errors.
Заявленный способ поясняется чертежами, на которых показаны:The claimed method is illustrated by drawings, which show:
- на фиг. 1 - общая схема совместного арифметического и помехоустойчивого кодирования и декодирования;- in FIG. 1 is a general diagram of joint arithmetic and noise-resistant coding and decoding;
- на фиг. 2 - схема блока декодирования 8;- in FIG. 2 is a diagram of a
- на фиг. 3 - алгоритм совместного арифметического и помехоустойчивого кодирования на передающей стороне;- in FIG. 3 - algorithm for joint arithmetic and noise-resistant coding on the transmitting side;
- на фиг. 4 - таблица состояний совместного арифметического и помехоустойчивого кодирования первых семнадцати очередных частей информационной последовательности;- in FIG. 4 is a state table of joint arithmetic and noise-resistant coding of the first seventeen consecutive parts of the information sequence;
- на фиг. 5 - временные диаграммы совместного арифметического и помехоустойчивого кодирования первых двух очередных частей информационной последовательности;- in FIG. 5 - time diagrams of joint arithmetic and noise-resistant coding of the first two successive parts of the information sequence;
- на фиг. 6 - выбор разрешенных подинтервалов кодирования в зависимости от m≥1 ранее кодированных символов информационной последовательности;- in FIG. 6 - selection of allowed coding sub-intervals depending on m≥1 previously encoded symbols of the information sequence;
- на фиг. 7 - временные диаграммы совместного арифметического и помехоустойчивого кодирования первых 17 очередных частей информационной последовательности;- in FIG. 7 - time diagrams of joint arithmetic and noise-resistant coding of the first 17 successive parts of the information sequence;
- на фиг. 8 - временные диаграммы совместного арифметического и помехоустойчивого декодирования первых 17 битов принятой последовательности на приемной стороне;- in FIG. 8 is a timing chart of joint arithmetic and noise-free decoding of the first 17 bits of the received sequence at the receiving side;
- на фиг. 9 - алгоритм совместного арифметического и помехоустойчивого декодирования на приемной стороне;- in FIG. 9 - algorithm for joint arithmetic and noise-resistant decoding at the receiving side;
- на фиг. 10 - представление альтернативных принятых последовательностей в виде древовидной структуры;- in FIG. 10 is a representation of alternative accepted sequences in a tree structure;
- на фиг. 11 - примерный вид выбираемых не более Z=21 альтернативных принятых последовательностей;- in FIG. 11 is an exemplary view of selectable no more than Z = 21 alternative received sequences;
-на фиг. 12 - таблица состояний декодирования альтернативной принятой последовательности вида "0001 1110 0";FIG. 12 is a table of decoding conditions of an alternative received sequence of the form "0001 1110 0";
- на фиг. 13 - таблица состояний декодирования альтернативной принятой последовательности вида "0001 1110 1";- in FIG. 13 is a table of decoding conditions of an alternative received sequence of the form "0001 1110 1";
- на фиг. 14 - таблица состояний декодирования альтернативной принятой последовательности вида "0001 1110 1100 0110 1";- in FIG. 14 is a table of decoding conditions of an alternative received sequence of the form "0001 1110 1100 0110 1";
- на фиг. 15 - таблица состояний декодирования альтернативной принятой последовательности вида "0001 1110 0000 0110 1".- in FIG. 15 is a decoding state table of an alternative received sequence of the form “0001 1110 0000 0110 1”.
Реализация заявленного способа представлена на примере системы совместного арифметического и помехоустойчивого кодирования и декодирования, показанной на фиг. 1. На передающей стороне выполняют совместное арифметическое и помехоустойчивое кодирование очередных частей информационной последовательности (ИП), а на приемной стороне - совместное арифметическое и помехоустойчивое декодирование принятой последовательности с исправлением ошибок канала передачи.The implementation of the claimed method is presented on the example of the joint arithmetic and noise-resistant coding and decoding system shown in FIG. 1. On the transmitting side, joint arithmetic and noise-resistant coding of the next parts of the information sequence (IP) is performed, and on the receiving side, joint arithmetic and noise-resistant decoding of the received sequence is performed with error correction of the transmission channel.
На передающей стороне формирователь текущего интервала кодирования 1 формирует текущий интервал арифметического кодирования в зависимости от принимаемой информационной последовательности. Из текущего интервала арифметического кодирования формирователь текущего нулевого подинтервала кодирования 2 формирует текущий подинтервал кодирования нулевого символа и, соответственно, формирователь текущего единичного подинтервала кодирования 3 формирует текущий подинтервал кодирования единичного символа. При получении от отправителя нулевого символа очередной части информационной последовательности увеличивается текущий подинтервал кодирования нулевого символа и пропорционально уменьшается текущий подинтервал кодирования единичного символа, а при получении от отправителя единичного символа очередной части информационной последовательности увеличивается текущий подинтервал кодирования единичного символа и пропорционально уменьшается текущий подинтервал кодирования нулевого символа. Далее из текущего подинтервала кодирования нулевого символа в формирователе текущего разрешенного нулевого подинтервала 4 выделяют текущий разрешенный подинтервал кодирования нулевого символа и из текущего подинтервала кодирования единичного символа в формирователе текущего разрешенного единичного подинтервала 5 выделяют текущий разрешенный подинтервал кодирования единичного символа в зависимости от m≥1 ранее кодированных символов информационной символов. На основе данных текущих разрешенных подинтервалов очередные двоичные символы очередной части информационной последовательности арифметически кодируют в арифметическом кодере 6 в очередную часть кодированной последовательности, которую передают по каналу передачи 7 на приемную сторону.On the transmitting side, the shaper of the
На приемной стороне в Z блоках декодирования 8 принимают очередные биты принятой последовательности. Схема блока декодирования 8 показана на фиг. 2. В каждом блоке декодирования 8 формирователь альтернативной принятой последовательности (АПП) с нулевым продолжением 8.1 и формирователь АПП с единичным продолжением 8.10 формируют альтернативные принятые последовательности с соответствующими продолжениями последовательности, которые в арифметическом декодере 8.2 и арифметическом декодере 8.11, соответственно, арифметически декодируют в очередные части соответствующих им альтернативных восстановленных информационных последовательностей.At the receiving side, in
При декодировании двоичных символов из АПП с нулевым продолжением в формирователе текущего интервала декодирования 8.3 формируют текущий интервал арифметического декодирования, который формирователь текущего нулевого подинтервала декодирования 8.4 разделяет на текущий нулевой подинтервал декодирования нулевого символа, и формирователь текущего единичного подинтервала декодирования 8.5 разделяет на текущий подинтервал декодирования единичного символа. В соответствии с результатами декодирования m≥1 очередных восстановленных информационных символов из текущих подинтервалов выделяют текущий разрешенный подинтервал декодирования нулевого символа и текущий разрешенный единичный подинтервал декодирования единичного символа в формирователе текущего разрешенного нулевого подинтервала декодирования 8.6 и в формирователе текущего разрешенного единичного подинтервала декодирования 8.7, соответственно. В блоке проверки подинтервалов 8.8 проверяют, находится ли текущее значение принятой последовательности в пределах текущего разрешенного подинтервала декодирования нулевого символа или текущего разрешенного подинтервала декодирования единичного символа этой альтернативной принятой последовательности. При положительном результате проверки в арифметическом декодере 8.2 арифметически декодируют очередные части альтернативной принятой последовательности с ее продолжением последовательности в соответствии с текущими разрешенными подинтервалами декодирования в очередные части соответствующей ей альтернативной восстановленной последовательности. При арифметическом декодировании нулевого символа очередной части восстановленной информационной последовательности из АПП с нулевым продолжением далее в формирователе текущего нулевого подинтервала декодирования 8.4 и формирователе текущего единичного подинтервала декодирования 8.5 увеличивают текущий подинтервал декодирования нулевого символа и пропорционально уменьшают текущий подинтервал декодирования единичного символа для данной АПП, а при декодировании единичного символа - увеличивают текущий подинтервал декодирования единичного символа и пропорционально уменьшают текущий подинтервал декодирования нулевого символа для данной АПП.When decoding binary symbols from an APT with zero continuation, the current arithmetic decoding interval is formed in the generator of the current decoding interval 8.3, which the generator of the current zero decoding subinterval 8.4 divides the current zero decoding subinterval of the zero symbol, and the generator of the current single decoding subinterval 8.5 divides the current decoding subinterval of a single character. In accordance with the decoding results of m≥1 successive recovered information symbols from the current sub-intervals, the current allowed decoding interval of the decoding of a single symbol and the current allowed decoding sub-interval of a single symbol are selected in the shaper of the current allowed zero decoding sub-interval 8.6 and in the shaper of the current allowed single decoding sub-interval 8.7, respectively. In the sub-interval checking unit 8.8, it is checked whether the current value of the received sequence is within the current allowed decoding sub-interval of the zero symbol or the current allowed decoding sub-interval of a single symbol of this alternative received sequence. If the test result is positive, in arithmetic decoder 8.2 the next parts of the alternative received sequence are arithmetically decoded with its continuation in accordance with the current allowed decoding sub-intervals in the next parts of the corresponding alternative restored sequence. When arithmetic decoding of the zero symbol of the next part of the restored information sequence from the APT with zero continuation further in the shaper of the current zero decoding subinterval 8.4 and the shaper of the current single decoding subinterval 8.5 increases the current decoding subinterval of the zero character and proportionally reduces the current decoding subinterval of a single character for this APT, and when single character decoding - increase the current decoding sub-interval e inichnogo symbol and proportionally reduces the current subinterval zero symbol for decoding this APP.
Аналогичные действия выполняют при декодировании двоичных символов из АПП с единичным продолжением с использованием формирователя АПП с единичным продолжением 8.10, арифметического декодера 8.11, формирователя текущего интервала декодирования 8.12, формирователя текущего нулевого подинтервала декодирования 8.13, формирователя текущего единичного подинтервала декодирования 8.14, формирователя текущего разрешенного нулевого подинтервала декодирования 8.15, формирователя текущего разрешенного единичного подинтервала декодирования 8.16 и блока проверки подинтервалов 8.17.Similar actions are performed when decoding binary characters from an APT with a single continuation using an APT shaper with a single continuation of 8.10, an arithmetic decoder 8.11, a shaper of the current decoding interval 8.12, a shaper of the current zero decoding subinterval 8.13, a shaper of the current single decoding subinterval 8.14, a shaper of the current allowed zero subinterval 8.15 decoding, shaper of the current allowed single decoding subinterval 8.16 and block checking of sub-intervals 8.17.
В блоке вычисления метрики АПП 8.9 для каждой альтернативной принятой последовательности с ее продолжением вычисляют значение ее метрики суммированием метрики самой последовательности и метрики ее продолжения, где значения метрики продолжения последовательности устанавливают в соответствующее значение в зависимости от соотношения между двоичным значением продолжения последовательности и значением очередного бита принятой последовательности. Из блока вычисления метрики АПП 8.9 вычисленные значение метрики каждой альтернативной принятой последовательности с ее продолжением передают в блок выбора альтернативной принятой последовательности АПП 9.In the calculation block of the APT 8.9 metric, for each alternative received sequence with its continuation, the value of its metric is calculated by summing the metric of the sequence itself and the metric of its continuation, where the values of the continuation metric are set to the appropriate value depending on the relationship between the binary value of the continuation of the sequence and the value of the next bit received sequence. From the APT 8.9 metric calculation block, the calculated metric value of each alternative received sequence with its continuation is passed to the block of the alternative received
Если при проверке в блоке проверки подинтервалов 8.8, соответственно, в блоке проверки подинтервалов 8.17, текущее значение альтернативной принятой последовательности находится в пределах текущих разрешенных подинтервалов арифметического декодирования соответствующей альтернативной принятой последовательности с ее продолжением последовательности, то в блоке выбора АПП 9 запоминают очередные части альтернативной восстановленной информационной последовательности, соответствующие альтернативной принятой последовательности с ее продолжением, иначе стирают данную альтернативную принятую последовательность с ее продолжением.If during the check in the check section of sub-intervals 8.8, respectively, in the check-block of sub-intervals 8.17, the current value of the alternative received sequence is within the current allowed sub-intervals of arithmetic decoding of the corresponding alternative received sequence with its continuation, then in the block of the selection of
В блоке выбора АПП 9 сравнивают между собой значения метрики альтернативных принятых последовательностей с их продолжениями последовательности и выбирают из них не более предельного числа Z альтернативных принятых последовательностей, имеющих наименьшие значения метрики, которые дополняют соответствующими им продолжениями последовательности, для этих альтернативных принятых последовательностей запоминают очередные части соответствующей им альтернативной восстановленной информационной последовательности и значения метрики.In the
После поступления всех бит принятой последовательности на приемную сторону в блоке выбора АПП 9 сравнивают между собой значения метрики альтернативных принятых последовательностей и выбирают из них единственную альтернативную принятую последовательность с наименьшим значением метрики и передают получателю в качестве восстановленной информационной последовательности соответствующую выбранной альтернативной принятой последовательности альтернативную восстановленную информационную последовательность.After all bits of the received sequence are received on the receiving side, the metric of the alternative received sequences is compared to each other in the
В способе реализуют следующую последовательность действий.The method implements the following sequence of actions.
Алгоритм совместного арифметического и помехоустойчивого кодирования на передающей стороне представлен на фигуре 3.The algorithm for joint arithmetic and noise-resistant coding on the transmitting side is presented in figure 3.
Способы предварительной установки на передающей стороне начального интервала арифметического кодирования и на приемной стороне соответствующего ему начального интервала арифметического декодирования известны и описаны, например, в книге Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин "Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео". - М., ДИАЛОГ-МИФИ, 2002, стр. 35-43. Начальный интервал арифметического кодирования длиною D>2 начинается от его начального нижнего значения L, включительно и заканчивается его начальным верхним значением Н исключительно. Начальное нижнее значение интервала кодирования устанавливают в минимальное значение интервала кодирования, а начальное верхнее значения интервала кодирования - в максимальное значение этого интервала. Например, при представлении значений интервала кодирования восемью двоичными символами (разрядность представления интервалов NR=8 бит), начальное нижнее значение интервала кодирования арифметического кодирования L[0] в момент времени t=0 устанавливают в минимальное значение, равное нулевому значению в десятичном представлении или 0000 0000 в двоичном представлении, где старшие двоичные символы записывают слева, а начальное верхнее значение интервала кодирования арифметического кодирования Н[0] устанавливают в максимальное значение, равное 255 в десятичном представлении или 1111 1111 в двоичном представлении. Пример начального интервала арифметического кодирования длиною D[0]=256 представлен на фиг. 4 при t=0 (первая строка) и на фиг. 5 при t=0.The methods of presetting on the transmitting side of the initial interval of arithmetic coding and on the receiving side of the corresponding initial interval of arithmetic decoding are known and described, for example, in the book “Data compression methods. Archiver device” by D. Vatolin, A. Ratushnyak, M. Smirnov, V. Yukin image and video compression. " - M., DIALOGUE-MEPhI, 2002, pp. 35-43. The initial interval of arithmetic coding of length D> 2 begins from its initial lower value L, inclusively, and ends with its initial upper value H exclusively. The initial lower value of the encoding interval is set to the minimum value of the encoding interval, and the initial upper value of the encoding interval is set to the maximum value of this interval. For example, when representing the values of the encoding interval with eight binary characters (the bit depth of the intervals N R = 8 bits), the initial lower value of the encoding interval of the arithmetic encoding L [0] at time t = 0 is set to the minimum value equal to a zero value in decimal representation or 0000 0000 in binary representation, where high-order binary characters are written to the left, and the initial upper value of the coding interval of the arithmetic coding H [0] is set to the maximum value equal to 255 in decimal or 1111 1111 in binary representation. An example of an initial arithmetic coding interval of length D [0] = 256 is shown in FIG. 4 at t = 0 (first row) and in FIG. 5 at t = 0.
Также предварительно устанавливают предельное число Z≥2 альтернативных принятых последовательностей и значение метрики альтернативных принятых последовательностей в нулевое значение. Способы предварительной установки предельного числа Z альтернативных принятых последовательностей известны и описаны, например, в книге Д. Прокис "Цифровая связь". - М., Радио и связь, 2000, стр. 328-349. Например, для исправления двукратных ошибок рекомендуется выбирать предельное число Z альтернативных принятых последовательностей из диапазона значений 8…24, для исправления трехкратных ошибок рекомендуется выбирать предельное число Z альтернативных принятых последовательностей из диапазона значений 24…48, с учетом того, что при увеличении выбранного числа Z можно исправить большее число ошибок передачи, но при этом линейно растет сложность устройств реализации исправления ошибок. Например, для рассматриваемого далее примера установим предельное число Z альтернативных принятых последовательностей равным Z=21.The limit number Z≥2 of the alternative received sequences and the metric value of the alternative received sequences are also pre-set to zero. Methods for pre-setting the limit number Z of alternative received sequences are known and described, for example, in the book D. Prokis "Digital Communication". - M., Radio and Communications, 2000, pp. 328-349. For example, to correct twofold errors, it is recommended to choose the limit number Z of alternative received sequences from a range of values of 8 ... 24, to correct three-fold errors, it is recommended to choose a limit number Z of alternative received sequences from a range of values of 24 ... 48, taking into account that when the selected number Z increases a larger number of transmission errors can be corrected, but the complexity of error correction implementation devices is increasing linearly. For example, for the example considered below, we set the limit number Z of alternative received sequences to Z = 21.
Способы предварительной установки значения метрики альтернативных принятых последовательностей в нулевое значение известны и описаны, например, в книге Б. Скляр "Цифровая связь. Теоретические основы и практическое применение". - М., Издательский дом "Вильяме", 2003, стр. 432-434. Изначально, до начала приема последовательности на приемной стороне альтернативные принятые последовательности имеют нулевую длину.Methods for pre-setting the metric value of alternative accepted sequences to zero are known and described, for example, in B. Sklar's book "Digital Communication. Theoretical Foundations and Practical Applications". - M., Publishing House "William", 2003, pp. 432-434. Initially, before receiving a sequence at the receiving side, the alternative received sequences are of zero length.
На передающей стороне от источника информационной последовательности принимают очередную часть информационной последовательности длиной k≥1 бит. Примерный вид первых 17 очередных частей двоичной ИП длиной k=1 бит показан на фиг. 7(a). Например, первая часть ИП имеет вид "0", вторая часть - "0", четвертая часть - "1" и т.д. Единичные значения битов на фигурах показаны в виде заштрихованных импульсов, нулевые значения битов - в виде незаштрихованных импульсов.On the transmitting side from the source of the information sequence, the next part of the information sequence of length k≥1 bits is received. An exemplary view of the first 17 consecutive parts of a binary IP of length k = 1 bit is shown in FIG. 7 (a). For example, the first part of the IP has the form "0", the second part is "0", the fourth part is "1", etc. Single bit values in the figures are shown as shaded pulses, zero bits are shown as open shaded pulses.
Текущий интервал арифметического кодирования длиною D>2 разделяют на текущий подинтервал кодирования нулевого символа D0≥2 и на текущий подинтервал кодирования единичного символа D1≥2. Способы разделения текущего интервала арифметического кодирования на текущий подинтервал кодирования нулевого символа и на текущий подинтервал кодирования единичного символа известны и описаны, например, в книге Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин "Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео". - М., ДИАЛОГ-МИФИ, 2002, стр. 35-43. Для арифметического кодирования очередного по счету, t-го символа, где t=1, 2,…, длину D текущего интервала арифметического кодирования, где D=Н-L, разделяют на длину D0 текущего подинтервала кодирования нулевого символа и длину D1 текущего подинтервала кодирования единичного символа. Для этого подсчитывают текущее число нулевых символов ИП N0 и текущее число единичных символов ИП N1, закодированных к этому моменту времени в арифметическом кодере. Например, в начальный момент при t=0 текущее число нулевых символов ИП N0[0] установлено в значение 1 и текущее число единичных символов ИП N1[0] установлено в значение 1. Способы установки в начальный момент арифметического кодирования числа нулевых и единичных символов ИП в единичное значение известны и описаны, например, в книге Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин "Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео". - М., ДИАЛОГ-МИФИ, 2002, стр. 124-130. Например, как показано на фиг. 4 в первой строке при t=0 указано единичное число нулевых символов ИП (графа N0) и единичное число единичных символов ИП (графа N1). В графе N указывается общее число принятых символов с учетом установленных в начальный момент нулевых и единичных символов ИП, равное N=2 при t=0.The current arithmetic coding interval of length D> 2 is divided into the current coding subinterval of the zero character D0≥2 and the current encoding subinterval of a single character D1≥2. Methods for dividing the current arithmetic coding interval into the current null-character encoding sub-interval and the current single-character coding sub-interval are known and described, for example, in the book “Data compression methods. Archiver devices, D. Arthur, A. Ratushnyak, M. Smirnov, V. Yukin. image and video compression. " - M., DIALOGUE-MEPhI, 2002, pp. 35-43. For arithmetic coding of the next tth character, where t = 1, 2, ..., the length D of the current arithmetic coding interval, where D = H-L, is divided by the length D 0 of the current coding subinterval and the length D 1 of the current subinterval encoding a single character. To do this, calculate the current number of zero characters SP N 0 and the current number of unit characters SP N 1 encoded at this point in time in an arithmetic encoder. For example, at the initial moment at t = 0, the current number of zero characters of PI N 0 [0] is set to 1 and the current number of unit characters of PI N 1 [0] is set to 1. Ways to set the number of zero and one at the initial moment of arithmetic coding IP symbols in a single value are known and described, for example, in the book by D. Vatolin, A. Ratushnyak, M. Smirnov, V. Yukin, "Data compression methods. Archiver device, image and video compression." - M., DIALOGUE-MEPhI, 2002, pp. 124-130. For example, as shown in FIG. 4, in the first line at t = 0, the unit number of zero symbols of the PI (column N0) and the unit number of unit symbols of the PI (column N1) are indicated. Column N indicates the total number of received symbols, taking into account the zero and single symbols of the IP set at the initial moment, equal to N = 2 at t = 0.
Вычисляют текущую вероятность кодирования нулевых символов ИП p0[t] по правилу: p0[t]=N0[t]/(N0[t]+N1[t]) и текущую вероятность кодирования единичных символов ИП p1[t] по правилу: p1=N1[t]/(N0[t]+N1[t]). Например, как показано на фиг. 4 в первой строке при t=0, указано значение текущей вероятности кодирования нулевых символов ИП (графа р0) и значение текущей вероятности кодирования единичных символов ИП (графа p1), где начальные значения равны 0,5.The current probability of encoding the null symbols of the IP p 0 [t] is calculated according to the rule: p 0 [t] = N 0 [t] / (N 0 [t] + N 1 [t]) and the current probability of encoding the individual symbols of the IP p 1 [ t] by the rule: p 1 = N 1 [t] / (N 0 [t] + N 1 [t]). For example, as shown in FIG. 4 in the first line at t = 0, the value of the current probability of coding of zero symbols of PI (column p0) and the value of the current probability of coding of single symbols of PI (column p1) are indicated, where the initial values are 0.5.
Длину текущего подинтервала кодирования нулевого символа D0[t] определяют по формуле вида D0[t]=D[t]×p0[t], а длину текущего подинтервала кодирования единичного символа D1[t] определяют по формуле вида D1[t]=D[t]-D0[t]. Например, длина начального интервала кодирования D[0] имеет десятичное значение 255, а длина начального подинтервала нулевых символов D0[0] имеет десятичное значение 127 или 01111111 в двоичном представлении, а длина начального подинтервала единичных символов D1[0] имеет десятичное значение 255-127=128 или 10000000 в двоичном представлении. Подинтервал кодирования единичных символов расположен сверху подинтервала кодирования нулевых символов, как показано, например, на фиг. 5. Верхнюю границу подинтервала кодирования нулевого символа обозначают как значение Q, и данный подинтервал начинается снизу от нижней границы интервала кодирования арифметического кодирования L включительно до значения Q исключительно, а подинтервал единичного символа простирается от значения Q включительно до верхней границы интервала кодирования арифметического кодирования Н исключительно. Например, начальное значение Q имеет десятичное значение 127, как показано на фиг. 4 во второй строке при t=0.The length of the current coding sub-interval of the zero character D 0 [t] is determined by a formula of the form D 0 [t] = D [t] × p 0 [t], and the length of the current coding sub-interval of a single character D 1 [t] is determined by a formula of the form D 1 [t] = D [t] -D 0 [t]. For example, the length of the initial coding interval D [0] has a decimal value of 255, and the length of the initial subinterval of null characters D 0 [0] has a decimal value of 127 or 01111111 in binary representation, and the length of the initial subinterval of single characters D 1 [0] has a decimal value 255-127 = 128 or 10,000,000 in binary representation. The single-character encoding sub-interval is located on top of the zero-character encoding sub-interval, as shown, for example, in FIG. 5. The upper boundary of the null-symbol encoding subinterval is designated as the Q value, and this subinterval starts from the bottom of the lower boundary of the arithmetic coding encoding interval L inclusive to the value Q exclusively, and the single-symbol subinterval extends from the Q value inclusive to the upper boundary of the arithmetic coding encoding interval H exclusively . For example, the initial Q value has a
Из текущего подинтервала кодирования нулевого символа D0 и текущего подинтервала кодирования единичного символа D1 в зависимости от m≥1 ранее кодированных символов информационной последовательности выделяют текущий разрешенный подинтервал кодирования нулевого символа D0 a , где 1≤D0 a <D0, и, соответственно, текущий разрешенный подинтервал кодирования единичного символа D1 a , где 1≤D1 a <D1. Длину D0 a текущего разрешенного подинтервала кодирования нулевого символа выбирают как D0 a =a m⋅D0, а длину D1 a текущего разрешенного подинтервала кодирования единичного символа выбирают как D1 a =a m⋅D1, где коэффициент обнаружения ошибок а выбирают в пределах 0<а<1. В заявленном способе совместного арифметического и помехоустойчивого кодирования и декодирования коэффициент обнаружения ошибок а является эквивалентом скорости помехоустойчивого кода R, определяемой как отношение длины информационных символов к длине кодированных символов R=k/n, где скорость помехоустойчивого кода выбирается в пределах 0<R<1. Чем меньше значение коэффициента обнаружения ошибок а, тем большее число ошибок канала передачи возможно исправить в заявляемом способе совместного арифметического и помехоустойчивого кодирования и декодирования. Например, выберем значение коэффициента обнаружения ошибок а=0,8 и число ранее кодированных символов информационной последовательности m=1, а также в начальный момент кодирования t=0 установим для отправителя и получателя, что предыдущий кодированный символ информационной последовательности имел нулевое значение. Длину D0 a текущего разрешенного подинтервала кодирования нулевого символа выбирают как D0 a =a⋅D0=0,8⋅127=102 (с округлением до ближайшего целого числа), и длину D1 a текущего разрешенного подинтервала кодирования единичного символа выбирают как D1 a =а⋅D1=0,8⋅128=102.From the current encoding sub-interval of the zero symbol D0 and the current encoding sub-interval of a single symbol D1, depending on m≥1 previously encoded symbols of the information sequence, the current allowed encoding sub-interval of the zero symbol D0 a , where 1≤D0 a <D0, and, accordingly, the current allowed sub-interval encoding a single character D1 a , where 1≤D1 a <D1. D0 a length permitted current subinterval null character is selected as a coding D0 a = a m ⋅D0, and D1 a length permitted current subinterval encoding unit is selected as a symbol D1 a = a m ⋅D1, wherein the coefficient of the error detection and is selected in the
Выделение текущего разрешенного подинтервала кодирования нулевого символа D0 a из текущего подинтервала кодирования нулевого символа D0 и, сответственно, текущего разрешенного подинтервала кодирования единичного символа D1 a из текущего подинтервала кодирования единичного символа D1 в зависимости от m≥1 ранее кодированных символов информационной последовательности может быть выполнено различными способами: начиная от нижнего или верхнего значения соответствующего подинтервала кодирования, или в центральной части подинтервала кодирования, в виде сплошного подинтервала или в виде совокупности разрешенных подинтервалов, перемежающихся подинтервалами из неразрешенных областей кодирования. Возможности по обнаружению и исправлению ошибок передачи при этом в заявляемом способе не меняются. Например, при m=1 для удобства реализации при нулевом ранее кодированном символе ИП предлагается выделение текущего разрешенного подинтервала кодирования нулевого символа длиной D0 a в виде одного подинтервала, начинающегося от нижнего значения L интервала кодирования до верхнего значения Lв текущего разрешенного подинтервала кодирования нулевого символа таким образом, что длина текущего разрешенного подинтервала кодирования нулевого символа равна D0 a , и данный подинтервал начинается от своего нижнего значения Lн=L включительно и заканчивается своим верхним значением Lв исключительно. Например, как показано на фиг. 4 во второй строке при t=0 нижнее значение текущего разрешенного подинтервала кодирования нулевого символа равно Lн=0 (двоичное значение 0000 0000), а верхнее значение этого подинтервала равно Lв=102 (двоичное значение 0110 0110). На фиг. 6 расположение текущего разрешенного подинтервала кодирования нулевого символа при нулевом ранее кодированном символе ИП показано как D0/0 а . При нулевом ранее кодированном символе ИП предлагается выделение текущего разрешенного подинтервала кодирования единичного символа длиной D1 a в виде одного подинтервала, начинающегося сверху от верхнего значения Н интервала кодирования до нижнего значения Нн текущего разрешенного подинтервала кодирования единичного символа таким образом, что длина текущего разрешенного подинтервала кодирования единичного символа равна D1 a , как показано на фиг. 6.Separation of the current allowed coding subinterval D0 a from the current coding subinterval D0 and, accordingly, the current allowed coding subinterval D1 a from the current coding subinterval D1 depending on m≥1 previously encoded information sequence symbols can be performed different ways: starting from the lower or upper values of the corresponding coding sub-interval, or in the central part of the coding sub-interval knowledge, in the form of a continuous subinterval or in the form of a set of allowed subintervals, interspersed by subintervals from unauthorized coding regions. The ability to detect and correct transmission errors in this case in the inventive method does not change. For example, for m = 1, for convenience of implementation, with a previously previously encoded zero IP symbol, it is proposed to isolate the current allowed encoding sub-interval of the zero symbol of length D0 a in the form of one sub-interval starting from the lower value of the encoding interval L to the upper value L in the current allowed encoding sub-interval of such a symbol so that the length of the currently allowed encoding subinterval of the null character is equal to D0 a , and this subinterval starts from its lower value L n = L inclusive and nchivaetsya its upper value of L in the exclusively. For example, as shown in FIG. 4 in the second row at t = 0 the lower value of current allowed subslot encoding zero symbol is equal to L n = 0 (
Таким образом, в данном примере при нулевом ранее кодированном символе ИП при m=1 ранее кодированных символов ИП выделяют текущий разрешенный подинтервал кодирования нулевого символа в пределах от Lн=0 до Lв=102 и текущий разрешенный подинтервал кодирования единичного символа в пределах от НН=153 до НВ=255, как показано на фиг. 4 во второй строке в строке выделение разрешенного интервала кодирования "Выделен. разреш. инт".Thus, in this example, when the previously encoded IP symbol is null at m = 1 previously encoded IP symbols, the current allowed null symbol encoding sub-range ranging from L n = 0 to L at = 102 and the current single character encoding sub-interval ranging from N H = 153 to H B = 255, as shown in FIG. 4 in the second line of the line highlight the allowed encoding interval "Highlighted. Resol. Int".
В общем случае при m>1 сначала выделяют текущий разрешенный подинтервал кодирования нулевого символа D0 a и текущий разрешенный подинтервал кодирования единичного символа D1 a в зависимости от первого ранее кодированного символа информационной последовательности. Затем из текущего разрешенного подинтервала кодирования нулевого символа вида D0/0 a или D0/1 a выделяют текущий разрешенный подинтервал кодирования нулевого символа в зависимости от двух ранее кодированных символов ИП вида D0/00 a (D0/01 a ) или D0/11 а (D0/10 a ) как показано на фиг. 6 и так далее до достижения требуемого числа т ранее кодированных символов ИП.In the general case, for m> 1, the current allowed encoding sub-interval of the zero character D0 a and the current allowed encoding sub-interval of a single character D1 a are first allocated, depending on the first previously encoded character of the information sequence. Then, from the currently allowed zero-character encoding subinterval of the form D0 / 0 a or D0 / 1 a , the current permitted zero-character encoding subinterval is selected depending on two previously encoded IP symbols of the form D0 / 00 a (D0 / 01 a ) or D0 / 11 a ( D0 / 10 a ) as shown in FIG. 6, and so on, until the required number m of previously encoded IP symbols is reached.
В результате интервал арифметического кодирования в зависимости от ранее кодированных символов ИП разделяют на разрешенный интервал кодирования и на неразрешенный интервал кодирования. Аналогично, в помехоустойчивом кодировании с обнаружением ошибок множество всех кодовых комбинаций разделяют на множество разрешенных кодовых комбинаций, состоящее из неискаженных ошибками передачи кодовых последовательностей, и на множество неразрешенных кодовых комбинаций, состоящее из искаженных ошибками передачи кодовых последовательностей. Если при приеме принятая последовательность принадлежит множеству неразрешенных кодовых комбинаций, то при использовании помехоустойчивого кодирования обнаружена ошибка в принятых данных. В отличие от этого в предлагаемом способе совместного арифметического и помехоустойчивого кодирования и декодирования ошибка в принятой последовательности выявляется, если текущее состояние арифметического декодирования не соответствует разрешенным подинтервалам декодирования с учетом восстановленных символов ИП.As a result, the arithmetic encoding interval, depending on the previously encoded symbols, is divided into the allowed encoding interval and the unresolved encoding interval. Similarly, in error-correcting error-coding coding, the set of all code combinations is divided into a set of allowed code combinations, consisting of undistorted transmission of code sequences, and a set of unresolved code combinations, consisting of distorted transmission of code sequences. If, at reception, the received sequence belongs to a plurality of unresolved code combinations, then using error-correcting coding an error has been detected in the received data. In contrast, in the proposed method for joint arithmetic and error-correcting coding and decoding, an error in the received sequence is detected if the current state of the arithmetic decoding does not correspond to the allowed decoding subintervals, taking into account the restored IP symbols.
Способы арифметического кодирования очередной части ИП в соответствии с текущими разрешенными подинтервалами кодирования в очередную часть кодированной последовательности (КП) известны и описаны, например, в книге Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин "Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео". - М., ДИАЛОГ-МИФИ, 2002, стр. 35-43. Они заключаются в последовательном сжатии двоичных символов очередной части ИП в очередную часть КП в соответствии с текущими значениями разрешенного подинтервала кодирования нулевого символа и разрешенного подинтервала кодирования единичного символа. При поступлении на вход арифметического кодирования очередного двоичного символа очередной части ИП, являющегося единичным двоичным символом, текущий интервал арифметического кодирования устанавливают равным текущему разрешенному подинтервалу кодирования единичного символа, а при поступлении на вход арифметического кодирования нулевого двоичного символа, текущий интервал арифметического кодирования устанавливают равным текущему разрешенному подинтервалу кодирования нулевого символа.The methods of arithmetic coding of the next part of the IP in accordance with the current allowed sub-intervals of coding in the next part of the coded sequence (KP) are known and described, for example, in the book D. Data compression methods. Device by D. Watolin, A. Ratushnyak, M. Smirnov, V. Yukin archivers, image and video compression. " - M., DIALOGUE-MEPhI, 2002, pp. 35-43. They consist in sequentially compressing the binary characters of the next part of the IP to the next part of the CP in accordance with the current values of the allowed sub-interval of encoding a zero character and the allowed sub-interval of encoding a single character. When the next binary symbol of the next part of the IP, which is a single binary symbol, is received at the input of arithmetic encoding, the current interval of arithmetic encoding is set equal to the current allowed sub-interval of encoding a single symbol, and when the input receives arithmetic encoding of a zero binary symbol, the current interval of arithmetic encoding is set to the current allowed null character encoding subinterval.
Например, при поступлении на вход кодирования двоичного символа первой части ИП, являющегося нулевым двоичным символом, текущий интервал кодирования устанавливают равным текущему разрешенному подинтервалу кодирования нулевого символа, начинающимся от LH[0]=0 и заканчивающимся ZB[0]=102, нижнее значение L[1] текущего интервала арифметического кодирования устанавливают в значение 0, а верхнее значение H[1] - в десятичное значение 102, как показано на фиг. 4 и на фиг. 5 при t=1.For example, when a binary character of the first part of an IP, which is a binary binary character, is received at the coding input, the current coding interval is set equal to the current allowed coding sub-interval of the zero character, starting from L H [0] = 0 and ending with Z B [0] = 102, lower the value L [1] of the current arithmetic coding interval is set to 0, and the upper value H [1] to the
При арифметическом кодировании самый левый бит двоичного представления значения L[1] сравнивают с самым левым битом двоичного представления значения Н[1], например, вида 0000 0000 и 0110 0110, соответственно, как показано на фиг. 4 при t=1. При их совпадении значение самого левого бита двоичных представлений значений L[1] и H[1] считывают в качестве очередного бита очередной части кодированной последовательности (Закод. символ, как показано на фиг. 4). Например, при кодировании первой части ИП первым битом первой части КП является совпавший при сравнении нулевой двоичный символ, как показано на фиг. 4, четвертая строка сверху. Считанный бит удаляют из двоичных представлений значений L[1] и H[1], которые уменьшают до длины 7 бит вида 0000 000 и 110 0110, соответственно. Двоичные символы двоичных представлений значений L[1] и H[1] сдвигают справа налево на один разряд и справа к ним дописывают по нулевому двоичному символу. Например, двоичные представления значений L[1] и H[1] приобретают вид 0000 0000 и 1100 1100, соответственно, как показано на фиг. 4, четвертая строка сверху. Способы считывания двоичных символов с удалением считанных символов известны и описаны, например, в книге: В. Шило "Популярные цифровые микросхемы". - М., Радио и связь, 1987, 104-123, с использованием регистров сдвига с параллельной и последовательной записью/считыванием двоичных последовательностей. Операции сдвига справа налево на один разряд и дописывания справа нулевого двоичного символа увеличивают значения L[t] и H[t] в 2 раза и называются нормализацией параметров арифметического кодирования. Способы сдвига на один разряд в сторону старших разрядов двоичных последовательностей и записи в освободившийся младший разряд нулевого двоичного символа известны и описаны, например, в книге: В. Шило "Популярные цифровые микросхемы". - М., Радио и связь, 1987, 104-123, с использованием регистров сдвига с параллельной и последовательной записью/считыванием двоичных последовательностей, и по своей сути являются умножением на два десятичных значений нижнего и верхнего значений интервала арифметического кодирования.In arithmetic coding, the leftmost bit of the binary representation of the value L [1] is compared with the leftmost bit of the binary representation of the value H [1], for example, of the
После каждого выполнения нормализации повторно самый левый бит двоичного представления нижнего значения интервала кодирования сравнивают с самым левым битом двоичного представления верхнего значения интервала кодирования. При их совпадении значение самого левого бита этих двоичных представлений считывают в качестве следующего бита очередной части КП, иначе переходят к кодированию следующего символа и так далее, как показано на фиг. 4.After each normalization run, the leftmost bit of the binary representation of the lower value of the encoding interval is compared again with the leftmost bit of the binary representation of the upper value of the encoding interval. If they coincide, the value of the leftmost bit of these binary representations is read as the next bit of the next part of the CP, otherwise they proceed to the encoding of the next character and so on, as shown in FIG. 4.
В результате кодирования первой части информационной последовательности вида "0", показанной на фиг. 7(a), сформирована первая часть кодированной последовательности вида "0", показанная на фиг. 7(б), которую передают на приемную сторону.As a result of encoding the first part of the information sequence of the form “0” shown in FIG. 7 (a), the first part of the encoded sequence of the form “0” shown in FIG. 7 (b), which is transmitted to the receiving side.
При поступлении следующей части ИП ее кодирование в очередную часть КП выполняют идентично. После выполнения арифметического кодирования каждого очередного символа уточняют число закодированных нулевых символов ИП и число закодированных единичных символов ИП. Так как закодированный символ в указанном примере является нулевым, то число закодированных нулевых символов ИП увеличивают на единичное значение и оно составляет N0[1]=2, число закодированных единичных символов информационной последовательности осталось равным N1[1]=1, соответственно, суммарное число закодированных нулевых и единичных информационных символов стало равным 3. Пересчитывают текущее значение вероятности кодирования нулевых символов ИП р0[1]=2/3 и текущее значение вероятности кодирования единичных символов ИП p1[1]=1/3, как показано в третьей строке сверху на фиг. 4.Upon receipt of the next part of the IP, its coding in the next part of the KP is performed identically. After arithmetic coding of each successive symbol, the number of encoded zero symbols of the IP and the number of encoded unit symbols of the IP are specified. Since the encoded character in this example is zero, the number of encoded zero characters of the PI is increased by a unit value and it is N 0 [1] = 2, the number of encoded single characters of the information sequence remains equal to N 1 [1] = 1, respectively, the total the number of coded zero and unit information symbols becomes equal to the current value of 3. recalculated probabilities encoding zero symbols SP 0 p [1] = 2/3 and the current probability value encoding unit symbols SP 1 p [1] = 1/3 as dormancy Zano in the third row from above in FIG. 4.
Перед выполнением арифметического кодирования следующего символа заново текущий интервал арифметического кодирования разделяют на текущий подинтервал кодирования нулевого символа и на текущий подинтервал кодирования единичного символа, из которых выделяют текущий разрешенный подинтервал кодирования нулевого символа и текущий разрешенный подинтервал кодирования единичного символа. Например, перед кодированием второго по счету символа ИП текущий интервал арифметического кодирования находится в пределах от L[1]=0 до Н[1]=204, текущий подинтервал кодирования нулевого символа - в пределах от L[1]=0 до Q[1]=136, а текущий подинтервал кодирования единичного символа - в пределах от Q[1]=136 до H[1]=204, где значение Q[1] определяется по правилу Q[1]=D[1]×p0[1]=204×2/3=136.Before arithmetic coding of the next character is performed again, the current arithmetic coding interval is divided into the current null character encoding subinterval and the current single character encoding subinterval, from which the current allowed zero character encoding subinterval and the current allowed single character encoding subinterval are selected. For example, before encoding the second PI symbol in a row, the current arithmetic encoding interval is in the range from L [1] = 0 to H [1] = 204, the current zero-character encoding interval is in the range of L [1] = 0 to Q [1 ] = 136, and the current coding sub-interval of a single symbol is in the range from Q [1] = 136 to H [1] = 204, where the value of Q [1] is determined by the rule Q [1] = D [1] × p 0 [ 1] = 204 × 2/3 = 136.
Так как в данном примере при m=1 ранее кодированных символов ИП арифметическому кодированию подлежит второй по счету символ ИП, имеющий нулевое значение, то из текущего подинтервала кодирования нулевого символа выделяют текущий разрешенный подинтервал кодирования нулевого символа с учетом предыдущего кодированного нулевого символа. Длину D0 a [1] текущего разрешенного подинтервала кодирования нулевого символа выбирают как D0 a [1]=а⋅D0[1]=0,8⋅126=109, соответственно этот подинтервал находится в пределах от Lн[1]=0 до Lв[1]=109, как показано на фиг. 4 в пятой строке и на фиг. 5 при t=1.Since in this example, with m = 1 previously encoded IP symbols, the second symbol of the IP having zero value is subject to arithmetic encoding, the current allowed sub-interval of encoding the zero symbol is selected from the current sub-interval of encoding the zero symbol, taking into account the previous encoded zero symbol. The length D0 a [1] of the currently allowed null symbol encoding sub-interval is chosen as D0 a [1] = a ⋅ D0 [1] = 0.8⋅126 = 109, respectively, this sub-interval is in the range from L n [1] = 0 to L in [1] = 109, as shown in FIG. 4 in the fifth row and in FIG. 5 at t = 1.
Выполняют арифметическое кодирование второго и последующих двоичных символов ИП, как показано на фиг. 4. Например, при кодировании четвертого по счету символа ИП, являющегося единичным символом, из текущего подинтервала кодирования единичного символа выделяют текущий разрешенный подинтервал кодирования единичного символа, находящийся в пределах от Hн[3]=105 до Hв[3]=126, как показано на фиг. 4 в десятой строке сверху.Arithmetic coding of the second and subsequent binary symbols of the PI is performed, as shown in FIG. 4. For example, when encoding the fourth symbol of the IP, which is a single character, from the current sub-coding interval of a single character, select the current allowed coding sub-interval of a single character, ranging from H n [3] = 105 to H at [3] = 126, as shown in FIG. 4 in the tenth line from above.
Каждый раз при выполнении нормализации считывают двоичные символы в очередную часть кодированной последовательности. Примерный вид арифметического кодирования первых 17 очередных частей ИП вида "0001 0000 0000 0010 0" в соответствующие очередные части КП вида "0", "0", "_", "_", "01111", "0", "_", "0" и так далее показан на фиг. 7(б). Заметим, что при фиксированной длине очередных частей ИП в результате их арифметического кодирования сформированы очередные части КП переменной длины, что, в частности, определяется переменной избыточностью сжимаемых частей ИП. Например, третья, четвертая, седьмая, десятая и т.д. части КП имеют нулевую длину (не содержат передаваемых символов). В целом КП длиною 17 бит имеет вид "0001 1110 0000 0110 1".Each time normalization is performed, binary characters are read into the next part of the encoded sequence. An approximate type of arithmetic coding of the first 17 consecutive parts of the IP of the form "0001 0000 0000 0010 0" in the corresponding next parts of the KP of the form "0", "0", "_", "_", "01111", "0", "_" , "0" and so on is shown in FIG. 7 (b). Note that with a fixed length of the next parts of the IP as a result of their arithmetic coding, the next parts of the CP of variable length are formed, which, in particular, is determined by the variable redundancy of the compressible parts of the IP. For example, the third, fourth, seventh, tenth, etc. KP parts have zero length (do not contain transmitted characters). In general, the KP with a length of 17 bits has the form "0001 1110 0000 0110 1".
Способы передачи на приемную сторону очередной части КП известны и описаны, например, в книге А.Г. Зюко, Д.Д. Кловский, М.В. Назаров, Л.М. Финк "Теория передачи сигналов". - М.: Радио и связь, 1986, стр. 11. Примерный вид первых 17 частей принятой последовательности (Пр. П) показан на фиг. 8(a). Пусть принятая последовательность общей длиной 17 битов при передаче искажена в девятом и десятом битах принятой последовательности и имеет вид "0001 1110 1100 0110 1".Methods of transmitting to the receiving side of the next part of the CP are known and described, for example, in the book of A.G. Zyuko, D.D. Klovsky, M.V. Nazarov, L.M. Fink "Theory of signal transmission." - M .: Radio and communications, 1986, p. 11. An exemplary view of the first 17 parts of the received sequence (Pr. P) is shown in FIG. 8 (a). Let the received sequence with a total length of 17 bits during transmission be distorted in the ninth and tenth bits of the received sequence and have the form "0001 1110 1100 0110 1".
Алгоритм совместного арифметического и помехоустойчивого декодирования на приемной стороне представлен на фиг. 9. На фиг. 10 представлены альтернативные принятые последовательности в виде древовидной структуры, а на фиг. 11 - примерный вид выбираемых не более Z=21 альтернативных принятых последовательностей.The algorithm for joint arithmetic and error-correcting decoding at the receiving side is shown in FIG. 9. In FIG. 10 shows alternative accepted sequences in a tree structure, and FIG. 11 is an exemplary view of selectable no more than Z = 21 alternative received sequences.
Для инициализации арифметического декодирования необходимо принять первые по счету NR двоичных символов Пр.П, где NR есть число двоичных символов представления значений интервалов кодирования и, соответственно, интервалов декодирования. Например, при представлении значений интервала кодирования и интервала декодирования восемью двоичными символами (NR=8 бит), принимают первые восемь бит Пр.П вида "0001 1110", как показано на фиг. 12 в столбце считывание двоичных символов "Сч." в начальный момент времени t=0. Принятая последовательность "0001 1110" в начальный момент времени имеет текущее значение 30, вычисляемое как десятичное значение данной двоичной последовательности, в которой наиболее значимый бит находится слева (в начале последовательности), а наименее значимый бит находится справа (в конце последовательности).To initiate arithmetic decoding, it is necessary to take the first N R binary symbols of the Ave. P, where N R is the number of binary symbols representing the values of the encoding intervals and, accordingly, the decoding intervals. For example, when presenting the values of the coding interval and the decoding interval with eight binary characters (N R = 8 bits), the first eight bits of Pr.P of the form “0001 1110” are received, as shown in FIG. 12 in the column read binary characters "Count" at the initial time t = 0. The received sequence "0001 1110" at the initial moment of time has a current value of 30, calculated as the decimal value of this binary sequence, in which the most significant bit is on the left (at the beginning of the sequence) and the least significant bit is on the right (at the end of the sequence).
Опишем в общем виде совместное арифметическое и помехоустойчивое декодирования Пр.П на приемной стороне. Действия совместного арифметического и помехоустойчивого декодирования Пр.П на приемной стороне выполняют путем параллельного декодирования нескольких альтернативных принятых последовательностей (АПП). Например, в начальный момент времени имеется единственная альтернативная принятая последовательность, совпадающая с первыми восемью битами Пр.П вида "0001 1110". В момент времени считывания первого после начальных NR бит очередной бита принятой последовательности, обозначенного моментом времени t=1, для начальной принятой последовательности, состоящей из первых по счету NR двоичных символов принятой последовательности, формируют продолжение АПП в виде нулевого символа и продолжение последовательности в виде единичного символа, как показано на фиг. 10. При считывании следующего бита принятой последовательности (момент времени t=2) для каждой из имеющихся двух АПП формируют продолжения в виде нулевого символа и продолжение в виде единичного символа, в результате на момент времени t=2 число АПП становится 4, на момент времени t=3 число АПП достигает 8 и т.д. Представление альтернативных принятых последовательностей в виде описанной древовидной структуры показано на фиг. 10. Такая структура АПП потенциально позволяет исправлять многократные ошибки передачи в принятой последовательности, причем место ошибок в Пр.П может быть произвольным. Для каждой АПП выполняют описанные далее действия совместного арифметического и помехоустойчивого декодирования.Let us describe in general terms the joint arithmetic and noise-resistant decoding of Pr.P on the receiving side. The actions of joint arithmetic and noise-correcting decoding of Ave.P on the receiving side are performed by parallel decoding of several alternative received sequences (APP). For example, at the initial moment of time, there is a single alternative received sequence coinciding with the first eight bits of Pr. P of the form "0001 1110". At the time of reading the first bit after the initial N R bit of the next bit of the received sequence, denoted by the time t = 1, for the initial received sequence consisting of the first N R binary symbols of the received sequence, the continuation of the AMS in the form of a null character and the continuation of the sequence in as a single character, as shown in FIG. 10. When reading the next bit of the received sequence (time t = 2), for each of the two AMSs, extensions are formed in the form of a null character and a continuation in the form of a single character, as a result, at the time t = 2, the number of AMS becomes 4, at the time t = 3 the number of AMS reaches 8, etc. A representation of the alternative received sequences in the form of the described tree structure is shown in FIG. 10. This structure of the AMS potentially allows you to correct multiple transmission errors in the adopted sequence, and the place of errors in Pr. May be arbitrary. For each APP, the following actions are performed together arithmetic and noise-free decoding.
Например, при предварительно установленном предельном числе Z=21 АПП примерный вид выбираемых не более Z альтернативных принятых последовательностей показан на фиг. 11. Видно, что в этой структуре, называемой усеченным деревом альтернативных принятых последовательностей, число продолжаемых АПП в каждый момент t не превышает заданного значения Z. Например, для начальной альтернативной принятой последовательности вида "0001 1110" формируют 2 продолжения: АПП с продолжением последовательности в виде нулевого символа "0001 1010 0", и АПП с продолжением последовательности в виде единичного символа "0001 1010 1". Для АПП с продолжением последовательности в виде нулевого символа "0001 1010 0" значение метрики продолжения последовательности в виде нулевого символа относительно очередного единичного, девятого по счету на рис. 11 символа принятой последовательности, устанавливают в единичное значение. Так как метрика начальной альтернативной принятой последовательности предварительно установлена в нулевое значение, то АПП с продолжением последовательности в виде нулевого символа "0001 1110 0" имеет значение метрики М=1, как показано на фиг. 11. Для АПП с продолжением последовательности в виде единичного символа "0001 1110 1" значение метрики продолжения последовательности в виде единичного символа относительно очередного, девятого по счету на фиг. 11 бита принятой последовательности, имеющего единичное значение, устанавливают в нулевое значение. Соответственно, АПП с продолжением последовательности в виде единичного символа "0001 1110 1" имеет значение метрики М=0, как показано на фиг. 11.For example, with a pre-set limit number Z = 21 APP, an exemplary view of selectable no more than Z alternative received sequences is shown in FIG. 11. It can be seen that in this structure, called the truncated tree of alternative received sequences, the number of continued APPs at each moment t does not exceed a given value of Z. For example, for the initial alternative received sequence of the form “0001 1110”, 2 extensions are formed: the APT with the continuation of the sequence in in the form of a null character "0001 1010 0", and the APT with the continuation of the sequence in the form of a single character "0001 1010 1". For an APT with the continuation of the sequence in the form of a null character "0001 1010 0" the value of the metric of continuation of the sequence in the form of a null character relative to the next single, ninth in fig. 11 characters of the received sequence are set to a single value. Since the metric of the initial alternative received sequence is pre-set to zero, the APT with the continuation of the sequence in the form of a null character "0001 1110 0" has a metric value of M = 1, as shown in FIG. 11. For APP with the continuation of the sequence in the form of a single character "0001 1110 1", the value of the metric of the continuation of the sequence in the form of a single character relative to the next, ninth in FIG. 11 bits of a received sequence having a unit value are set to zero. Accordingly, the APT with the continuation of the sequence in the form of a single symbol “0001 1110 1” has a metric value of M = 0, as shown in FIG. eleven.
Число продолжаемых АПП при декодировании девятого по счету символа принятой последовательности равно 2, это число не превышает предельного числа Z=21 АПП и обе альтернативные принятые последовательности продолжают, образуя при декодировании очередного, десятого по счету на фиг. 11 символа принятой последовательности четыре последовательности со значениями метрики от М=0 до М=2, которые при декодировании очередного, одиннадцатого по счету на фиг. 11 бита, принятой последовательности образуют 8 последовательностей со значениями метрики от М=0 до М=3, которые при декодировании очередного, двенадцатого по счету на фиг. 11 символа принятой последовательности образуют 16 последовательностей со значениями метрики от М=0 до М=4 и т.д. Когда число АПП превышает предельное число Z АПП, то из этих последовательностей выбирают не более Z=21 альтернативных принятых последовательностей с наименьшими значениями метрики. По принципу максимального правдоподобия в теории помехоустойчивого кодирования, как описано в книге Б. Скляр "Цифровая связь. Теоретические основы и практическое применение". - М., Издательский дом "Вильяме", 2003, стр. 422-431, чем больше альтернативная принятая последовательность отличается от принятой последовательности по значению метрики М, тем меньше вероятность того, что именно она позволит исправить ошибки передачи, что дает основание такую последовательность стирать.The number of continued APTs when decoding the ninth symbol of the received sequence is 2, this number does not exceed the limit number Z = 21 APTs and both alternative received sequences continue, forming, when decoding, the next tenth in FIG. 11 characters of the received sequence are four sequences with metric values from M = 0 to M = 2, which, when decoding the next, eleventh in a row in FIG. 11 bits of the received
В приведенном примере во многих продолжаемых АПП текущее значение альтернативной принятой последовательности оказалось вне пределов текущего разрешенного интервала арифметического декодирования этих АПП, то есть такие последовательности не могли быть сформированы на передающей стороне и, соответственно, они подлежат стиранию и их далее не продолжают, как показано символом "" на фиг. 11. При этом оказалась стертой альтернативная принятая последовательность с ее продолжением вида "0001 1110 1100 0110 1" со значением метрики М=0, которая по этой причине ранее считалась наиболее предпочтительной при выборе среди альтернативных принятых последовательностей.In the given example, in many ongoing APPs, the current value of the alternative received sequence turned out to be outside the current allowed arithmetic decoding interval of these APPs, that is, such sequences could not be formed on the transmitting side and, accordingly, they should be erased and they would not continue further, as shown by the symbol " "in Fig. 11. At the same time, the alternative accepted sequence with its continuation of the form" 0001 1110 1100 0110 1 "with the value of the metric M = 0, which for this reason was previously considered the most preferred when choosing among alternative accepted sequences, was erased.
Детально опишем действия совместного арифметического и помехоустойчивого декодирования на приемной стороне.We describe in detail the actions of joint arithmetic and noise-resistant decoding at the receiving side.
Способы разделения текущего интервала арифметического декодирования длиною DD каждой альтернативной принятой последовательности на текущий подинтервал декодирования нулевого символа DD0, где DD0≥2, и на текущий подинтервал декодирования единичного символа DD1, где DD1≥2, идентичны способам разделения текущего интервала арифметического кодирования длиною D на текущий подинтервал кодирования нулевого символа D0 и на текущий подинтервал кодирования единичного символа D1 на передающей стороне.Methods for dividing the current interval of arithmetic decoding by the length DD of each alternative received sequence into the current decoding sub-interval of the null character DD0, where DD0≥2, and the current decoding sub-interval of a single symbol DD1, where DD1≥2, are identical to the methods of dividing the current arithmetic coding interval of length D into the current the coding sub-interval of the zero symbol D0 and the current coding sub-interval of a single symbol D1 on the transmitting side.
Для арифметического декодирования очередного по счету, t-го символа, где t=1, 2,…, длину DD текущего интервала арифметического декодирования, где DD=НН-LL, каждой альтернативной принятой последовательности разделяют на длину DD0 текущего подинтервала декодирования нулевого символа и длину DD1 текущего подинтервала декодирования единичного символа данной АПП. Текущий интервал арифметического декодирования каждой АПП простирается от ее нижнего значения интервала декодирования LL до верхнего значения интервала декодирования НН. Например, в начальном состоянии при t=0 LL=0 и НН=255, как показано на фиг. 12 в первой строке. Для определения значений DD0 и DD1 подсчитывают текущее число нулевых символов восстановленной ИП каждой АПП NN0 и текущее число единичных символов восстановленной ИП каждой АПП NN1, декодированных к этому моменту времени в арифметическом декодере. Например, в начальный момент при t=0 текущее число нулевых символов восстановленной ИП NN0[0] установлено в значение 1 и текущее число единичных символов восстановленной ИП NN1[0] установлено в значение 1. Например, как показано на фиг. 12 в первой строке при t=0 указано единичное число нулевых символов восстановленной ИП (графа NN0) и единичное число единичных символов восстановленной ИП (графа NN1). В графе NN указывается общее число декодированных символов с учетом установленных в начальный момент нулевых и единичных символов восстановленной ИП, равное NN=2 при t=0.For arithmetic decoding of the next tth character, where t = 1, 2, ..., the length DD of the current arithmetic decoding interval, where DD = HH-LL, of each alternative received sequence is divided by the length DD 0 of the current decoding subinterval of the zero symbol and the length of DD 1 of the current sub-interval of decoding a single symbol of this APP. The current arithmetic decoding interval of each APT extends from its lower value of the LL decoding interval to the upper value of the LV decoding interval. For example, in the initial state at t = 0 LL = 0 and HH = 255, as shown in FIG. 12 in the first line. To determine the values of DD 0 and DD 1, the current number of zero characters of the recovered UE of each APP NN 0 and the current number of unit characters of the recovered UE of each APP NN 1 , decoded at this point in time in the arithmetic decoder, are calculated. For example, at the initial moment at t = 0, the current number of zero characters of the restored UI NN 0 [0] is set to 1 and the current number of unit characters of the restored UI NN 1 [0] is set to 1. For example, as shown in FIG. 12 in the first line at t = 0 indicates the unit number of zero characters of the restored PI (column NN0) and the unit number of unit characters of the restored PI (column NN1). The NN column indicates the total number of decoded symbols, taking into account the zero and single symbols of the restored IP set at the initial moment, equal to NN = 2 at t = 0.
Вычисляют текущую вероятность декодирования нулевых символов восстановленной ИП pp0[t] каждой АПП по правилу: pp0[t]=NN0[t]/(NN0[t]+NN1[t]) и текущую вероятность декодирования единичных символов восстановленной ИП pp1[t] каждой АПП по правилу: pp1[t]=NN1[t]/(NN0[t]+NN1[t]). Например, как показано на фиг. 12 в первой строке при t=0, указано значение текущей вероятности декодирования нулевых символов восстановленной ИП (графа рр0) и значение текущей вероятности декодирования единичных символов восстановленной ИП (графа pp1), где начальные значения равны 0,5.The current probability of decoding the null symbols of the recovered IP pp 0 [t] of each APP is calculated according to the rule: pp 0 [t] = NN 0 [t] / (NN 0 [t] + NN 1 [t]) and the current probability of decoding single symbols of the recovered PI pp 1 [t] of each APP according to the rule: pp 1 [t] = NN 1 [t] / (NN 0 [t] + NN 1 [t]). For example, as shown in FIG. 12 in the first line at t = 0, the value of the current probability of decoding the zero characters of the restored SP (column pp0) and the value of the current probability of decoding the single characters of the restored SP (column pp1) are indicated, where the initial values are 0.5.
Длину текущего подинтервала декодирования нулевого символа DD0[t] каждой АПП определяют по формуле вида DD0[t]=DD[t]×pp0[t], а длину текущего подинтервала декодирования единичного символа DD1[t] каждой АПП определяют по формуле вида DD1[t]=DD[t]-DD0[t]. Например, длина начального интервала декодирования DD[0] АПП имеет десятичное значение 255, длина начального подинтервала декодирования нулевых символов DD0[0] АПП имеет десятичное значение 127 или 01111111 в двоичном представлении, а длина начального подинтервала декодирования единичных символов DD1[0] АПП имеет десятичное значение 255-127=128 или 10000000 в двоичном представлении. Подинтервал декодирования единичных символов АПП расположен сверху подинтервала декодирования нулевых символов АПП, как показано, например, на фиг. 12. Верхнюю границу подинтервала декодирования нулевого символа АПП обозначают как значение QQ, и данный подинтервал начинается снизу от нижней границы интервала декодирования арифметического декодирования LL включительно до значения QQ исключительно, а подинтервал единичного символа простирается от значения QQ включительно до верхней границы интервала декодирования арифметического кодирования НН исключительно. Начальное значение QQ имеет десятичное значение 127, как показано на фиг. 12 во второй строке при t=0.The length of the current sub-interval for decoding the null symbol DD 0 [t] of each APT is determined by the formula of the form DD 0 [t] = DD [t] × pp 0 [t], and the length of the current sub-interval of decoding a single character DD 1 [t] of each APP is determined by a formula of the form DD 1 [t] = DD [t] -DD 0 [t]. For example, the length of the initial decoding interval DD [0] the APT has a decimal value of 255, the length of the initial subinterval of decoding the null characters DD 0 [0] the AMS has the
Способы выделения в зависимости от m символов восстановленной информационной последовательности каждой альтернативной принятой последовательности из текущего подинтервала декодирования нулевого символа DD0 и из текущего подинтервала декодирования единичного символа DD1 текущего разрешенного подинтервала декодирования нулевого символа DD0 a , где 1≤DD0 a <DD0, и, соответственно, текущего разрешенного подинтервала декодирования единичного символа DD1 a , где 1≤DD1 a <DD1, идентичны ранее описанным способам выделения из текущего подинтервала кодирования нулевого символа D0 и из текущего подинтервала кодирования единичного символа D1 текущего разрешенного подинтервала кодирования нулевого символа D0 a и, соответственно, текущего разрешенного подинтервала кодирования единичного символа D1 a . Длину DD0 a текущего разрешенного подинтервала декодирования нулевого символа выбирают как DD0 a =a m⋅DD0, а длину DD1 a текущего разрешенного подинтервала декодирования единичного символа выбирают как DD1 a =a m⋅DD1.Methods of extracting, depending on m symbols, the reconstructed information sequence of each alternative received sequence from the current decoding sub-interval of the DD0 zero symbol and from the current decoding sub-interval of the DD1 single symbol of the currently allowed decoding subinterval of the DD0 a zero symbol, where 1≤DD0 a <DD0, and, accordingly, the current allowed decoding sub-interval of a single symbol DD1 a , where 1≤DD1 a <DD1, are identical to the previously described methods for extracting coding from the current sub-interval of the zero character D0 and from the current encoding subinterval D1 of the unit character of the current allowed encoding subinterval D0 a and, accordingly, of the current allowed encoding subinterval D1 a . The length DD0 a of the current allowed decoding subinterval of the null symbol is selected as DD0 a = a m ⋅ DD0, and the length DD1 a of the current allowed decoding subinterval of a single symbol is selected as DD1 a = a m ⋅ DD1.
Например, при выбранных значении коэффициента обнаружения ошибок а=0,8 и числе m=1, длину DD0 a текущего разрешенного подинтервала декодирования нулевого символа АПП выбирают как DD0 a =a⋅DD0=0,8⋅127=102, и длину DD1 a текущего разрешенного подинтервала декодирования единичного символа АПП выбирают как DD1 a =a⋅DD1=0,8⋅128=102. Например, установлено для отправителя и получателя в начальный момент кодирования/декодирования t=0, что предыдущий кодированный/декодированный символ информационной последовательности имеет нулевое значение. Например, для удобства реализации, при нулевом ранее декодированном символе восстановленной ИП в каждой АПП предлагается выделение текущего разрешенного подинтервала декодирования нулевого символа АПП длиной DD0 a в виде одного подинтервала, начинающегося от нижнего значения LL интервала декодирования АПП до верхнего значения LLB текущего разрешенного подинтервала декодирования нулевого символа АПП таким образом, что длина текущего разрешенного подинтервала декодирования нулевого символа АПП равна DD0 a , и данный подинтервал начинается от своего нижнего значения LLH=LL включительно и заканчивается своим верхним значением LLB исключительно. Например, как показано на фиг. 12 во второй строке при t=0 нижнее значение текущего разрешенного подинтервала декодирования нулевого символа АПП равно LLH=0 (двоичное значение 0000 0000), а верхнее значение этого подинтервала равно LLB=102 (двоичное значение 0110 0110). Соответственно, текущий разрешенный подинтервала декодирования единичного символа АПП находится в пределах от нижнего значения ННН=153 до верхнего значения этого подинтервала ННВ=255, как показано на фиг. 12 во второй строке.For example, when the selected value of the coefficient error detecting a = 0.8 and the number m = 1, the length DD0 a current allowed subslot decoding APP null character is selected as a DD0 a = a ⋅DD0 = 0,8⋅127 = 102 and length DD1 a the current allowed decoding sub-interval of a single symbol of the APT is selected as DD1 a = a ⋅DD1 = 0.8⋅128 = 102. For example, it is established for the sender and receiver at the initial moment of encoding / decoding t = 0 that the previous encoded / decoded symbol of the information sequence has a zero value. For example, for implementation convenience, with zero previous decoded symbol restored SP in each APT proposed allocation of current permitted subslot decoding null character APP length DD0 a as one subinterval, starting from the lower value LL interval decoding APP to an upper value LL B current permitted subslot decoding the APT zero symbol in such a way that the length of the currently allowed decoding subinterval of the APT zero symbol is DD0 a , and this subinterval starts from its lower value LL H = LL inclusive and ends with its upper value LL B exclusively. For example, as shown in FIG. 12 in the second line, at t = 0, the lower value of the current allowed decoding subinterval of the APT zero symbol is LL H = 0 (
Если текущее значение альтернативной принятой последовательности не находится в пределах текущего разрешенного подинтервала декодирования нулевого символа АПП или текущего разрешенного подинтервала декодирования единичного символа этой АПП, то стирают данную альтернативную принятую последовательность. Например, при представлении значений интервала кодирования восемью двоичными символами текущее значение альтернативной принятой последовательности определяется по последним восьми битам этой АПП. Например, принятая двоичная последовательность вида "0001 1110" АПП вида "0001 1110" имеет десятичное значение 30, показанное на фиг. 12 в графе "Пр. Посл". Текущий разрешенный подинтервал декодирования нулевого символа АПП вида "0001 1110" простирается от LLH=0 до LLB=102, а текущий разрешенный подинтервала декодирования единичного символа АПП простирается от ННН=153 до ННВ=255. Так как текущее значение альтернативной принятой последовательности находится в пределах одного из текущих разрешенных подинтервалов декодирования АПП, в данном случае в пределах текущего разрешенного подинтервала декодирования нулевого символа АПП, то данная АПП сохраняется и далее подлежит декодированию.If the current value of the alternative received sequence is not within the current allowed decoding subinterval of the APT zero symbol or the current allowed decoding subinterval of a single APT symbol, then this alternative received sequence is erased. For example, when presenting the values of an encoding interval with eight binary characters, the current value of the alternative received sequence is determined from the last eight bits of this APP. For example, the received binary sequence of the form “0001 1110” of the APT of the form “0001 1110” has the
Способы арифметического декодирования каждой АПП в очередные части соответствующей ей альтернативной восстановленной информационной последовательности (АВП) известны и описаны, например, в книге Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин "Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео". - М., ДИАЛОГ-МИФИ, 2002, стр. 35-43. Они заключаются в последовательном декодировании каждой АПП в соответствии с текущими разрешенными значениями подинтервала декодирования нулевого символа и подинтервала декодирования единичного символа этой АПП.The methods of arithmetic decoding of each APP into successive parts of the corresponding alternative reconstructed information sequence (WUA) are known and described, for example, in the book “Data compression methods. Archiver device, image compression, D. Watolin, A. Ratushnyak, M. Smirnov, V. Yukin and video. " - M., DIALOGUE-MEPhI, 2002, pp. 35-43. They consist in sequential decoding of each APT in accordance with the current allowed values of the decoding sub-interval of the zero symbol and the sub-interval of decoding a single symbol of this APP.
Примерный вид арифметического декодирования начальной АПП вида "0001 1110" в символы очередной части соответствующей ей АВП показан на фиг. 12. Для декодирования первого символа очередной части АВП текущее значение альтернативной принятой последовательности, равное 30, сравнивают с границами текущего разрешенного подинтервала декодирования нулевого символа АПП DD0[0], находящимися, например, в пределах от 0 до 102, и с границами текущего разрешенного подинтервала декодирования единичного символа АПП DD1[0], находящимися, например, в пределах от 153 до 255, как показано на фиг. 12 во второй строке при t=0. В зависимости от того, в пределах какого подинтервала декодирования символов оказалось текущее значение альтернативной принятой последовательности, принимают решение о значении текущего декодированного символа (Дек. симв.) альтернативной восстановленной информационной последовательности, указываемого в правой графе фиг. 12. Так как в данном примере текущее значение альтернативной принятой последовательности оказалось в пределах разрешенного подинтервала декодирования нулевого символа, то декодированный символ является нулевым и следующие границы текущего интервала декодирования устанавливают соответствующими границам разрешенного подинтервала декодирования нулевого символа данной АПП длиною DD0[0]. В результате декодирования первого символа устанавливают нижнее значение интервала декодирования арифметического декодирования LL[1] равным значению LLH[0], например, LLH=0, а верхнее значение интервала декодирования арифметического декодирования HH[1] - равным значению LLB=102, как показано на фиг. 12 в третьей строке при t=1.An exemplary arithmetic decoding of the initial AMS of the form “0001 1110” into the symbols of the next part of the corresponding WUA is shown in FIG. 12. To decode the first character of the next part of the WUA, the current value of the alternative received sequence equal to 30 is compared with the boundaries of the current allowed decoding sub-interval of the APT zero symbol DD 0 [0], which are, for example, in the range from 0 to 102, and with the boundaries of the current allowed the sub-interval of decoding a single APT symbol DD 1 [0], for example, ranging from 153 to 255, as shown in FIG. 12 in the second row at t = 0. Depending on the range within which the symbol decoding sub-interval turned out to be the current value of the alternative received sequence, a decision is made on the value of the current decoded symbol (Dec. Char.) Of the alternative restored information sequence indicated in the right column of FIG. 12. Since in this example, the current value of the alternative received sequence was within the allowed decoding subinterval of the null symbol, the decoded symbol is zero and the following boundaries of the current decoding interval are set to the corresponding boundaries of the allowed decoding subinterval of the given symbol of the APT of length DD 0 [0]. As a result of decoding the first symbol, the lower value of the arithmetic decoding decoding interval LL [1] is set to LL H [0], for example, LL H = 0, and the upper value of the arithmetic decoding decoding interval HH [1] is set to LL B = 102, as shown in FIG. 12 in the third row at t = 1.
После декодирования каждого символа пересчитывают текущее значение вероятности нулевого символа АВП и текущее значение вероятности единичного символа этой же последовательности, например, после декодирования первого символа, являющегося нулевым, по формуле вида рр0[1]=NN0[1]/(NN0[1]+NN[1])=2/3 и по формуле вида рр1[1]=NN1[1]/(NN0[1]+NN1[1])=1/3, соответственно, как показано на фиг. 11 в третьей строке при t=1.After decoding each symbol, the current probability value of the WUA zero symbol and the current probability value of a single symbol of the same sequence are recalculated, for example, after decoding the first symbol that is zero, according to the formula pp 0 [1] = NN 0 [1] / (NN 0 [ 1] + NN [1]) = 2/3 and according to a formula of the form pp 1 [1] = NN 1 [1] / (NN 0 [1] + NN 1 [1]) = 1/3, respectively, as shown in FIG. 11 in the third row at t = 1.
Для каждой АПП формируют продолжение последовательности в виде нулевого символа и продолжение в виде единичного символа. Например, из начальной АПП вида "0001 1110" формируют АПП с продолжением в виде нулевого символа вида "0001 1110 0", и АПП с продолжением в виде единичного символа вида "0001 1110 1", как показано на фиг. 11. Верхнее по рисунку ребро графического представления каждой АПП обозначено как продолжение последовательности в виде нулевого символа "0", а нижнее ребро - как продолжение последовательности в виде единичного символа "1".For each APT form the continuation of the sequence in the form of a null character and the continuation in the form of a single character. For example, from the initial APT of the form “0001 1110”, an APT is formed with a continuation in the form of a zero character of the form “0001 1110 0”, and an APT with a continuation in the form of a single character of the form “0001 1110 1”, as shown in FIG. 11. The top edge of the graphic representation of each APT in the figure is indicated as a continuation of the sequence in the form of a null character "0", and the lower edge - as a continuation of the sequence in the form of a single character "1".
После формирования продолжения последовательности вычисляют значение метрики продолжения в виде нулевого символа и значение метрики продолжения в виде единичного символа относительно очередного бита принятой последовательности, при этом значение метрики продолжения в виде нулевого символа относительно очередного бита принятой последовательности вычисляют как нулевое значение, если очередной бит очередной части принятой последовательности является нулевым битом, иначе вычисляют как единичное значение, а также значение метрики продолжения в виде единичного символа относительно очередного бита принятой последовательности вычисляют как нулевое значение, если очередной бит принятой последовательности является единичным битом, иначе вычисляют как единичное значение. Например, как показано на фиг. 11, очередной бит Пр.П, следующий после считывания восьми битов начального пути декодирования, имеет единичное значение. Поэтому относительно этого бита метрика продолжения последовательности в виде нулевого символа имеет единичное значение, а метрика продолжения последовательности в виде единичного символа имеет нулевое значение.After the continuation of the sequence is formed, the continuation metric value is calculated in the form of a null character and the continuation metric value is in the form of a single character relative to the next bit of the received sequence, while the continuation metric value in the form of a zero character relative to the next bit of the received sequence is calculated as zero if the next bit of the next part the received sequence is a zero bit, otherwise it is calculated as a unit value, as well as the value of the metric services in the form of a single symbol relative to the next bit of the received sequence are calculated as a zero value if the next bit of the received sequence is a single bit, otherwise calculated as a single value. For example, as shown in FIG. 11, the next bit Ave.P, the next after reading the eight bits of the initial decoding path, has a single value. Therefore, with respect to this bit, the sequence continuation metric in the form of a null character has a unit value, and the sequence continuation metric in the form of a single character has a null value.
Затем для каждой АПП с ее продолжением последовательности вычисляют значение его метрики, для чего суммируют значения метрики данной последовательности и метрики ее продолжения последовательности. Например, с учетом того, что метрика начальной АПП вида "0001 1110" имеет нулевое значение, метрика АПП вида "0001 1110 0" с продолжением в виде нулевого символа получает единичное значение (М=1), а метрика АПП "0001 1110 1" с продолжением в виде единичного символа получает нулевое значение (М=1), как показано на фиг. 11.Then, for each APT with its continuation of the sequence, the value of its metric is calculated, for which the values of the metrics of this sequence and the metrics of its continuation are summed. For example, taking into account the fact that the initial APT metric of the type “0001 1110” has a zero value, the APT metric of the type “0001 1110 0” with the continuation in the form of a zero symbol gets a single value (M = 1), and the APT metric “0001 1110 1” continued with a single character, it receives a null value (M = 1), as shown in FIG. eleven.
После каждого изменения состояния арифметического декодирования самый левый бит двоичного представления значения LL интервала декодирования АПП сравнивают с самым левым битом двоичного представления значения НН этой АПП, например, для АПП вида "0001 1110 0" при t=1 сравнивают значение LL вида "0000 0000" и значение НН вида "0110 0110", соответственно. При их совпадении выполняют нормализацию арифметического декодирования: значение самого левого бита двоичных представлений значений LL и НН удаляют и символы двоичных представлений значений LL и НН сдвигают справа налево на один разряд и справа к ним в младший разряд дописывают по нулевому двоичному символу. Например, при этом переменная LL сохранила десятичное значение 0, а НН - получила десятичное значение 204 и двоичное представление "1100 1100", как показано на фиг. 12 в строке "нормализация". Одновременно с этим, самый левый бит текущего значения альтернативной принятой последовательности удаляют и двоичные символы этой последовательности сдвигают справа налево на один разряд и справа к ним дописывают следующий считанный двоичный символ альтернативной принятой последовательности, то есть символ продолжения этой АПП. Например, для АПП вида "0001 1010 0" с продолжением в виде нулевого символа следующим считанным двоичным символом является девятый по счету символ альтернативной принятой последовательности, имеющий нулевое значение, как показано на фиг. 12 в столбце "Сч.". С учетом считанного двоичного символа, текущее значение данной АПП получило десятичное значение 52 и двоичное представление "0011 0100", как показано на фиг. 12 в строке "нормализация".After each change in the arithmetic decoding state, the leftmost bit of the binary representation of the LL value of the APT decoding interval is compared with the leftmost bit of the binary representation of the LV value of this APP, for example, for the APP of the form “0001 1110 0” at t = 1, the LL value of the form “0000 0000” is compared and an LV value of the form "0110 0110", respectively. If they coincide, the arithmetic decoding is normalized: the value of the leftmost bit of the binary representations of the LL and LV values is deleted and the binary representations of the LL and LV values are shifted from right to left by one digit and are added to the least significant bit to the right with the zero binary symbol. For example, while the variable LL saved the
Для АПП вида "0001 1010 1" с продолжением в виде единичного символа, как показано на фиг. 13, следующим считанным двоичным символом является девятый по счету символ этой альтернативной принятой последовательности, имеющий единчное значение, как показано на фиг. 13 в столбце "Сч.". С учетом считанного двоичного символа, текущее значение данной АПП получило десятичное значение 53 и двоичное представление "0011 0101", как показано на фиг. 13 в строке "нормализация".For an APT of the form “0001 1010 1”, continued as a single character, as shown in FIG. 13, the next binary symbol read is the ninth symbol of this alternative received sequence having a single value, as shown in FIG. 13 in the column "Count." Based on the read binary character, the current value of this APP has received the decimal value 53 and the binary representation “0011 0101”, as shown in FIG. 13 in the line "normalization".
Для всех АПП повторно самый левый бит двоичного представления значения LL сравнивают с самым левым битом двоичного представления значения НН, и если они снова совпадают, то повторно выполняют нормализацию идентичным образом и т.д.For all APPs, the leftmost bit of the binary representation of the LL value is compared again with the leftmost bit of the binary representation of the HH value, and if they coincide again, then they perform normalization in the same way, etc.
Для всех АПП снова определяют длины текущих подинтервалов декодирования, и выделяю их текущие разрешенные подинтервалы декодирования. Например, для АПП видов "0001 1110 0" и "0001 1110 1" текущие разрешенные подинтервалы декодирования нулевого символа и текущие разрешенные подинтервалы декодирования единичного символа на момент декодирования второго информационного символа совпадают. Для АПП вида "0001 1110 0" ее текущее значение 60 находится в пределах текущего разрешенного подинтервала декодирования нулевого символа (от 0 до 109), равно как и для АПП вида "0001 1110 1" ее текущее значение 61 находится в пределах ее текущего разрешенного подинтервала декодирования нулевого символа (от 0 до 109), и для обоих АПП очередным декодированным информационным символом является нулевой символ, как показано на фиг. 12 и фиг. 13.For all APPs, the lengths of the current decoding sub-intervals are again determined, and I highlight their current allowed decoding sub-intervals. For example, for AMSs of the types “0001 1110 0” and “0001 1110 1”, the current allowed decoding intervals of the null symbol and the current allowed decoding intervals of a single symbol at the time of decoding of the second information symbol are the same. For an APT of the type "0001 1110 0", its current value of 60 is within the current allowed decoding subinterval of the null character (from 0 to 109), as well as for an APT of the form "0001 1110 1", its current value of 61 is within its current allowed subinterval decoding the null character (0 to 109), and for both AMSs, the next decoded information symbol is the null character, as shown in FIG. 12 and FIG. thirteen.
В результате арифметического декодирования АПП вида "0001 1110 0", показанной на фиг. 8(б), декодируют, например, символы двух первых частей соответствующей ей АВП, имеющей вид "0 0", как показано на фиг. 8(в), аналогично, из АПП вида "0001 1110 1", показанной на фиг. 8(г) декодируют, например, символы двух первых частей соответствующей ей АВП, имеющей вид "0 0", как показано на фиг. 8(д).As a result of the arithmetic decoding of the APT of the form “0001 1110 0” shown in FIG. 8 (b), decode, for example, the symbols of the first two parts of its corresponding WUA, having the form “0 0”, as shown in FIG. 8 (c), similarly, from an APP of the form “0001 1110 1” shown in FIG. 8 (d) decode, for example, the symbols of the first two parts of its corresponding WUA, having the form “0 0”, as shown in FIG. 8 (d).
Сравнивают между собой значения метрики альтернативных принятых последовательностей с их продолжениями последовательности и выбирают из них не более предельного числа Z альтернативных принятых последовательностей, имеющих наименьшие значения метрики, которые дополняют соответствующими им продолжениями последовательности. Данные способы известны и описаны, например, в книге М. Сибуя, Т. Ямамото "Алгоритмы обработки данных". - М., Мир, 1986, стр. 122-134, и заключаются в поочередном сравнении между собой значений метрики АПП с их продолжениями, сортировке последовательностей по мере возрастания значений метрики и выборе среди отсортированных последовательностей первых Z последовательностей с наименьшими значениями метрики.Compare with each other the metric values of the alternative received sequences with their sequence extensions and choose from them no more than the maximum number Z of alternative received sequences having the smallest metric values that complement the corresponding sequence extensions. These methods are known and described, for example, in the book by M. Shibuya, T. Yamamoto "Data Processing Algorithms". - M., Mir, 1986, pp. 122-134, and consist in alternately comparing the values of the AMP metric with their extensions, sorting the sequences as the values of the metric increase, and choosing among the sorted sequences of the first Z sequences with the lowest metric values.
Например, на момент приема девятого по счету символа принятой последовательности имеются только две АПП: АПП с продолжением последовательности в виде нулевого символа вида "0001 1110 0" и АПП с продолжением последовательности в виде единичного символа вида "0001 1110 1" со значениями метрики М=1 и М=0, соответственно. Так как число этих АПП не превышает предельного числа Z=21 альтернативных принятых последовательностей, имеющих наименьшие значения метрики, то обе последовательности выбирают и сохраняют.For example, at the time of receiving the ninth character of the received sequence, there are only two APTs: APP with continuation of the sequence in the form of a zero character of the form “0001 1110 0” and APP with continuation of the sequence in the form of a single character of the form “0001 1110 1” with the metric values M = 1 and M = 0, respectively. Since the number of these APPs does not exceed the limit number Z = 21 alternative received sequences having the smallest metric values, both sequences are selected and stored.
Для выбранных АПП запоминают очередные части альтернативной восстановленной информационной последовательности, соответствующие этой альтернативной принятой последовательности, и значения метрики. Например, на момент приема девятого по счету символа принятой последовательности для АПП вида "0001 1110 0" и АПП вида "0001 1110 1" запоминают первые две очередные части соответствующих им альтернативных восстановленных информационных последовательностей вида "0 0" и значения метрики М=1 и М=0, соответственно.For selected APPs, the next parts of the alternative reconstructed information sequence corresponding to this alternative received sequence and metric values are stored. For example, at the moment of receiving the ninth character of the received sequence for an APT of the form “0001 1110 0” and an APT of the form “0001 1110 1”, the first two consecutive parts of the corresponding alternative restored information sequences of the form “0 0” and the metric value M = 1 and M = 0, respectively.
При получении следующего бита принятой последовательности каждая из двух сохраненных АПП получает по два продолжения последовательности и т.д. При обработке тринадцатого по счету на фиг. 11 символа принятой последовательности образуют 32 АПП со значениями метрики от М=0 до М=4, из которых выбирают Z=21 лучших по метрике АПП, и т.д. Стирание при этом худших по метрике АПП показано символом "X" на фиг. 11.Upon receipt of the next bit of the received sequence, each of the two stored APT receives two continuation sequences, etc. In processing the thirteenth in FIG. 11 characters of the received sequence form 32 APPs with metric values from M = 0 to M = 4, from which Z = 21 are selected according to the APT metric, etc. The erasure of the worst-case AMP metrics is indicated by the symbol “X” in FIG. eleven.
Начиная с некоторого момента времени, число продолжаемых альтернативных принятых последовательностей уменьшается также потому, что во многих АПП их текущее значение оказалось вне пределов текущих разрешенных подинтервалов декодирования этих АПП, то есть такие последовательности не могли быть сформированы на передающей стороне и, соответственно, они подлежат стиранию и их далее не продолжают, как показано символом "" на фиг. 11. Например, при обработке семнадцатого по счету на фиг. 11 символа принятой последовательности оказалась стертой альтернативная принятая последовательность с ее продолжением вида "0001 1110 1100 0110 1" со значением метрики М=0, которая по этой причине ранее считалась наиболее предпочтительной при выборе среди альтернативных принятых последовательностей. Действия декодирования для этой альтернативной принятой последовательности, идентичной принятой последовательности, показаны на фиг. 14. В результате декодирования символов данной последовательности, показанной на фиг. 8(e), получена АВП вида "0 0 0 1 0 0 1 0", показанная на фиг. 8(ж). Например, после декодирования восьмого по счету символа очередной части АВП при выделении разрешенных подинтервалов, показанных на фиг. 14 (продолжение) в предпоследней строке, текущее значение данной альтернативной принятой последовательности, равное 141, сравнивают с границами текущего значения подинтервала декодирования нулевого символа АПП DD0, находящимися в пределах от 96 до 132, и с границами текущего значения подинтервала декодирования единичного символа АПП DD1, находящимися в пределах от 142 до 143. Так как текущее значение альтернативной принятой последовательности не находится в пределах разрешенных подинтервалов декодирования, то стирают данную альтернативную принятую последовательность.Starting from a certain point in time, the number of alternative alternate received sequences continues to decrease because in many APPs their current value is outside the limits of the current allowed decoding sub-intervals of these APPs, that is, such sequences could not be formed on the transmitting side and, accordingly, they must be erased and they do not continue further, as shown by the symbol " "in Fig. 11. For example, when processing the seventeenth in a row in Fig. 11 character of the received sequence, the alternative accepted sequence was deleted with its continuation of the form" 0001 1110 1100 0110 1 "with the metric value M = 0, which for this reason was previously considered the most preferred when choosing among alternative received sequences. The decoding steps for this alternative received sequence identical to the received sequence are shown in Fig. 14. As a result of decoding the symbols of this sequence, the sequence shown in Fig. 8 (e), a WUA of the form “0 0 0 1 0 0 1 0” is shown in Fig. 8 (g). For example, after decoding the eighth symbol of the next part of the WUA when highlighting the allowed sub-intervals, shown in Fig. 14 (continued) in the penultimate line, the current value of this alternative received sequence, equal to 141, is compared with the boundaries of the current value of the decoding sub-interval of the zero symbol of the APP DD 0 , ranging from 96 to 132, and with the boundaries of the current value of the decoding sub-interval single character of the APT DD 1 , ranging from 142 to 143. Since the current value of the alternative received sequence is not within the allowed decoding sub-intervals, this alternative received sequence is erased.
Аналогичным образом стирают ряд АПП и число продолжаемых АПП уменьшается до 17, а затем до 8, как показано на фиг. 11.Similarly, the number of APPs is erased and the number of continued APPs is reduced to 17, and then to 8, as shown in FIG. eleven.
Декодирование АПП вида "0001 1110 0000 01110 1" со значением метрики М=2 показано на фиг. 15. При арифметическом декодировании семнадцати символов данной АПП, показанных на фиг. 8(з), декодированы первые девять частей альтернативной восстановленной информационной последовательности вида "0 0 0 1 0 0 0 0 1", показанной на фиг. 8(и). Как показано на фиг. 11, данная АПП имеет метрику М=2 и является одной из восьми АПП, сохранившихся из всех АПП при приеме первых семнадцати бит принятой последовательности. Однако остальные АПП имеют значения метрики М=3 и более. В ходе дальнейшего декодирования наименьшей по значению метрики будет обладать альтернативная принятая последовательность, продолжающая выявленную АПП с метрикой М[17]=2, так как остальные АПП при любых их возможных продолжениях не могут обеспечить значение метрики меньше М=3.Decoding APP of the form "0001 1110 0000 01110 1" with a metric value of M = 2 is shown in FIG. 15. In the arithmetic decoding of seventeen characters of a given APP shown in FIG. 8 (h), the first nine parts of the alternative reconstructed information sequence of the form “0 0 0 1 0 0 0 0 1” shown in FIG. 8 (s). As shown in FIG. 11, this APP has a metric of M = 2 and is one of eight APPs preserved from all APPs upon receipt of the first seventeen bits of the received sequence. However, the remaining APPs have metric values of M = 3 or more. In the course of further decoding, the alternative accepted sequence will continue to have the smallest metric value, continuing the identified APP with the metric M [17] = 2, since the rest of the APP with any possible continuations cannot provide a metric value less than M = 3.
После прекращения поступления очередных битов принятой последовательности сравнивают между собой значения метрики альтернативных принятых последовательностей и выбирают из них последовательность с наименьшим значением метрики. В приведенном примере будет выбрано продолжение АПП вида "0001 1110 0000 01110 1" со значением метрики на семнадцатом принятом бите М[17]=2, для которой выполняется исправление двух ошибок передачи на первых семнадцати битах принятой последовательности.After the receipt of the next bits of the received sequence stops, the metric values of the alternative received sequences are compared and the sequence with the lowest metric value is selected from them. In the given example, the continuation of the AMS of the form “0001 1110 0000 01110 1” with the metric value on the seventeenth received bit M [17] = 2, for which two transmission errors are corrected on the first seventeen bits of the received sequence, will be selected.
Далее передают получателю в качестве восстановленной информационной последовательности соответствующую выбранной альтернативной принятой последовательности альтернативную восстановленную информационную последовательность. Выбранному в примере продолжению АПП вида "0001 1110 0000 01110 1" соответствуют первые девять частей альтернативной восстановленной информационной последовательности вида "0 0 0 1 0 0 0 0 1", показанные на фиг. 8(и).Next, the recipient, as the reconstructed information sequence, corresponds to the selected alternative received alternative sequence, the reconstructed alternative information sequence. The first continuation of the AMS of the type "0001 1110 0000 01110 1" selected in the example corresponds to the first nine parts of the alternative reconstructed information sequence of the form "0 0 0 1 0 0 0 0 1" shown in FIG. 8 (s).
В данном примере совместное арифметическое и помехоустойчивое кодирование и декодирование обеспечивает исправление двух ошибок передачи в принятой последовательности.In this example, joint arithmetic and noise-correcting coding and decoding provides the correction of two transmission errors in the received sequence.
Проверка теоретических предпосылок заявленного способа совместного арифметического и помехоустойчивого кодирования и декодирования выполнялась путем его аналитических исследований.Verification of the theoretical premises of the claimed method of joint arithmetic and noise-correcting coding and decoding was carried out by means of its analytical studies.
Было выполнено совместное арифметическое и помехоустойчивое кодирование и декодирование очередных частей длиной k=1 бит избыточной информационной последовательности общей длиной 1024 бит с использованием способа-прототипа, для которого выбирались значения скорости помехоустойчивого кода R=1/2 и R=2/3. Также было выполнено совместное арифметическое и помехоустойчивое кодирование и декодирование очередных частей длиной k=1 бит этой же избыточной информационной последовательности общей длиной 1024 бит с использованием предлагаемого способа при выборе значения коэффициента обнаружения ошибок а равным скорости помехоустойчивого кода R=1/2 и R=2/3. Выявлено, что при передаче кодированных последовательностей по каналу связи с ошибками во всех случаях обеспечивается исправление большего числа ошибок передачи с использованием предлагаемого способа по сравнению со способом-прототипом. При этом, при увеличении предельного числа Z альтернативных принятых последовательностей до 24…32, кроме однократных и двухкратных ошибок, обеспечивается исправление трехкратных и части четырехкратных ошибок передачи.Joint arithmetic and noise-resistant coding and decoding of the next parts of length k = 1 bit of the excess information sequence with a total length of 1024 bits was performed using the prototype method for which the error-correcting code speed values R = 1/2 and R = 2/3 were selected. We also performed joint arithmetic and noise-resistant coding and decoding of the next parts of length k = 1 bit of the same redundant information sequence with a total length of 1024 bits using the proposed method when choosing the error detection coefficient and equal to the speed of the error-correcting code R = 1/2 and R = 2 / 3. It was revealed that when transmitting encoded sequences over the communication channel with errors, in all cases, correction of a larger number of transmission errors using the proposed method is provided in comparison with the prototype method. Moreover, with an increase in the limit number Z of alternative received sequences to 24 ... 32, in addition to single and double errors, the correction of triple and some quadruple transmission errors is provided.
Проведенные исследования подтверждают, что при использовании предлагаемого способа совместного арифметического и помехоустойчивого кодирования и декодирования обеспечивается повышение помехоустойчивости передачи очередных частей кодированной последовательности при воздействии многократных ошибок передачи.The conducted studies confirm that when using the proposed method of joint arithmetic and noise-resistant coding and decoding, the noise immunity of the transmission of the next parts of the encoded sequence under the influence of multiple transmission errors is increased.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019131779A RU2718213C1 (en) | 2019-10-08 | 2019-10-08 | Method of combined arithmetic and antinoise encoding and decoding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019131779A RU2718213C1 (en) | 2019-10-08 | 2019-10-08 | Method of combined arithmetic and antinoise encoding and decoding |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2718213C1 true RU2718213C1 (en) | 2020-03-31 |
Family
ID=70156475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019131779A RU2718213C1 (en) | 2019-10-08 | 2019-10-08 | Method of combined arithmetic and antinoise encoding and decoding |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2718213C1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5737345A (en) * | 1994-08-19 | 1998-04-07 | Robert Bosch Gmbh | Method for arithmetic decoding |
US6892343B2 (en) * | 2000-03-27 | 2005-05-10 | Board Of Regents Of The University Of Nebraska | System and method for joint source-channel encoding, with symbol decoding and error correction |
RU2620731C1 (en) * | 2016-07-20 | 2017-05-29 | федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" | Method of joint arithmetic and immune construction of coding and decoding |
RU2629455C2 (en) * | 2015-11-25 | 2017-08-29 | Акционерное общество "Концерн радиостроения "Вега" | Method of joint arithmetic and noise-immune coding |
US20180205952A1 (en) * | 2014-06-29 | 2018-07-19 | Lg Electronics Inc. | Method and apparatus for performing arithmetic coding by limited carry operation |
RU2018106214A (en) * | 2018-02-19 | 2019-08-19 | федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации | METHOD FOR JOINT ARITHMETIC AND INTERFERENCE-RESISTANT CODING AND DECODING |
-
2019
- 2019-10-08 RU RU2019131779A patent/RU2718213C1/en active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5737345A (en) * | 1994-08-19 | 1998-04-07 | Robert Bosch Gmbh | Method for arithmetic decoding |
US6892343B2 (en) * | 2000-03-27 | 2005-05-10 | Board Of Regents Of The University Of Nebraska | System and method for joint source-channel encoding, with symbol decoding and error correction |
US20180205952A1 (en) * | 2014-06-29 | 2018-07-19 | Lg Electronics Inc. | Method and apparatus for performing arithmetic coding by limited carry operation |
RU2629455C2 (en) * | 2015-11-25 | 2017-08-29 | Акционерное общество "Концерн радиостроения "Вега" | Method of joint arithmetic and noise-immune coding |
RU2620731C1 (en) * | 2016-07-20 | 2017-05-29 | федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" | Method of joint arithmetic and immune construction of coding and decoding |
RU2018106214A (en) * | 2018-02-19 | 2019-08-19 | федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации | METHOD FOR JOINT ARITHMETIC AND INTERFERENCE-RESISTANT CODING AND DECODING |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108352844B (en) | Signature-enabled polar encoder and decoder | |
Trifonov et al. | Generalized concatenated codes based on polar codes | |
JP3451221B2 (en) | Error correction coding apparatus, method and medium, and error correction code decoding apparatus, method and medium | |
EP3364542A1 (en) | Error correction coding method based on cascading of polar codes and repetition codes or multi-bit parity check codes | |
CN109347487B (en) | Bit freezing auxiliary-based polar code SCL decoding method | |
JPWO2019130475A1 (en) | Error correction coding method and device using channel polarization, decoding method and device | |
RU2629455C2 (en) | Method of joint arithmetic and noise-immune coding | |
RU2611022C1 (en) | Method of joint arithmetic and protective coding (versions) | |
RU2401512C1 (en) | Method of code cyclic synchronisation | |
RU2620731C1 (en) | Method of joint arithmetic and immune construction of coding and decoding | |
Grinchenko et al. | Improving performance of multithreshold decoder over binary erasure channel | |
US8359511B2 (en) | Method and system for constructing and decoding rateless codes with partial information | |
RU2712096C1 (en) | Method of combined arithmetic and noise-immune encoding and decoding | |
RU2379841C1 (en) | Decoder with erasure correction | |
RU2718213C1 (en) | Method of combined arithmetic and antinoise encoding and decoding | |
RU2702724C2 (en) | Method of combined arithmetic and noise-immune encoding and decoding | |
CN112187402B (en) | Data processing method, device and storage medium | |
RU2725699C1 (en) | Method for soft decoding of noise-immune code | |
RU2734450C2 (en) | Method for decoding of noise-immune codes | |
RU2667370C1 (en) | Method for decoding linear cascade code | |
RU2419966C2 (en) | Method to decode noiseless cascade codes by most valid symbols of external code | |
RU2819177C1 (en) | Method for code frame synchronization of multi-block messages | |
RU2613845C1 (en) | Method for forming key of encryption/decryption | |
RU2710911C1 (en) | Method of transmitting multi-unit messages in telecode communication systems | |
RU2664409C1 (en) | Code frame synchronization method with soft solutions |