RU2460217C1 - Method for synchronous data transmission with decision feedback and apparatus for realising said method - Google Patents
Method for synchronous data transmission with decision feedback and apparatus for realising said method Download PDFInfo
- Publication number
- RU2460217C1 RU2460217C1 RU2011131429/08A RU2011131429A RU2460217C1 RU 2460217 C1 RU2460217 C1 RU 2460217C1 RU 2011131429/08 A RU2011131429/08 A RU 2011131429/08A RU 2011131429 A RU2011131429 A RU 2011131429A RU 2460217 C1 RU2460217 C1 RU 2460217C1
- Authority
- RU
- Russia
- Prior art keywords
- packet
- code symbol
- code
- packets
- input
- Prior art date
Links
Images
Landscapes
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
Изобретение относится к радиотехнике, в частности к способу и устройству синхронной передачи дискретных данных с решающей обратной связью.The invention relates to radio engineering, in particular to a method and device for synchronous transmission of discrete data with crucial feedback.
Аналогом для заявляемого изобретения является изобретение WO 0237743 «Automatic Request Protocol Based Packet Transmission Using Punctured Codes», C1 H04L 1/18, опубликовано 10.05.2002.An analogue for the claimed invention is the invention WO 0237743 "Automatic Request Protocol Based Packet Transmission Using Punctured Codes", C1 H04L 1/18, published on 05/10/2002.
Наиболее близким техническим решением к заявляемому изобретению является изобретение RU 02263405 «Способ синхронной передачи данных с решающей обратной связью и устройство его осуществления» H04L 1/12, опубликованное 27.10.2005.The closest technical solution to the claimed invention is the invention RU 02263405 "Method for synchronous data transmission with decision feedback and device for its implementation" H04L 1/12, published on 10.27.2005.
Данный способ заключается в следующем:This method is as follows:
На передающей стороне осуществляют разделение сообщения данных на пакеты данных, кодируют пакеты данных кодом, обнаруживающим ошибки, и кодом, исправляющим ошибки, образуя пакеты кодовых символов. Разбивают каждый полученный пакет кодовых символов на группы кодовых символов и назначают очередность передачи групп кодовых символов. Для каждого пакета кодовых символов из групп кодовых символов, в соответствии с назначенной очередностью передачи, формируют основную и уточняющие части пакета кодовых символов. При этом одни и те же группы кодовых символов могут одновременно входить в основную и в уточняющую части пакета кодовых символов. При наличии запросов на повторную передачу формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов таким образом, чтобы кадр кодовых символов содержал основную часть передаваемого пакета и уточняющую часть одного из предыдущих пакетов или только уточняющую часть одного из предыдущих пакетов. Модулируют и передают сформированные кадры кодовых символов по каналу связи. На приемной стороне демодулируют принятый сигнал, формируя мягкие решения о кодовых символах для каждого пакета кодовых символов, части которого входят в принятый кадр кодовых символов. Объединяют мягкие решения о кодовых символах основной части и мягкие решения о кодовых символах всех принятых уточняющих частей данного пакета кодовых символов. Декодируют пакет кодовых символов и проверяют наличие ошибок в декодированном пакете. Если пакет кодовых символов декодирован с ошибкой, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой. Если пакет кодовых символов декодирован без ошибок, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой при условии, что они были сохранены при предыдущих декодированиях. На основании вынесенных решений формируют сигнал обратной связи и передают его в установленный момент времени на передающую сторону. Если есть хотя бы один запрос на передачу уточняющей части пакета кодовых символов и, при этом число невыполненных запросов не превышает наперед заданной величины, то на передающей стороне уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и очередной уточняющей части первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой. В противном случае формируют следующий кадр только из очередных уточняющих частей первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой, отличающийся тем, что при отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов. Для этого уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, занимающего оставшуюся часть кадра кодовых символов, следующие кадры формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, наращивая таким образом объем данных, переданных с опережением, а в случае приема пакета с ошибкой вместо очередных опережающих групп кодовых символов осуществляют уточняющую передачу групп кодовых символов для того пакета данных, в котором произошла ошибка при декодировании.On the transmitting side, the data message is divided into data packets, the data packets are encoded with an error-detecting code and error-correcting code, forming code symbol packets. Each received packet of code symbols is divided into groups of code symbols and the transmission order of groups of code symbols is assigned. For each code symbol packet from the code symbol groups, in accordance with the assigned transmission order, the main and refinement parts of the code symbol packet are formed. In this case, the same groups of code symbols can simultaneously be included in the main and in the qualifying part of the code symbol package. If there are requests for retransmission, code symbol frames are generated, including different parts of different code symbol packets in each frame so that the code symbol frame contains the main part of the transmitted packet and the clarifying part of one of the previous packets or only the clarifying part of one of the previous packets. The generated frames of code symbols are modulated and transmitted over the communication channel. At the receiving side, the received signal is demodulated, forming soft code symbol decisions for each code symbol packet, parts of which are included in the received code symbol frame. Soft decisions on code symbols of the main part and soft decisions on code symbols of all accepted qualifying parts of this code symbol package are combined. Decode the code symbol packet and check for errors in the decoded packet. If the packet of code symbols is decoded with an error, a decision is made to request the next qualifying part of the packet of code symbols of this packet and the soft decisions about the code symbols of this packet are stored, forming a queue of packets decoded with an error. If the code symbol packet is decoded without errors, then a decision is made to confirm the receipt of this packet and the soft decision on the code symbols of this packet is removed from the queue of packets decoded with an error, provided that they were saved during previous decodings. Based on the decisions made, a feedback signal is generated and transmitted at a specified point in time to the transmitting side. If there is at least one request for transmitting the refinement of the code symbol packet and, at the same time, the number of outstanding requests does not exceed a predetermined value, then on the transmitting side the main part of the next code symbol packet is reduced and the next frame is formed from the reduced main part of the next code symbol packet and the next qualifying part of the first packet of code symbols from the queue of packets decoded with an error. Otherwise, the next frame is formed only from the next qualifying parts of the first code symbol packet from the queue of packets decoded with an error, characterized in that in the absence of unfulfilled requests to transmit the clarifying part of any of the code symbol packets, the main part of the next code packet is transmitted ahead of time characters. To do this, reduce the main part of the next packet of code symbols and form the next frame from the reduced main part of the next packet of code symbols and a fragment of the main part of the next packet, which occupies the remaining part of the frame of code symbols, the following frames are formed from the non-transmitted remainder of the reduced main part of the next packet of code symbols and fragment of the main part of the next packet, thus increasing the amount of data transmitted ahead of time, and in case of receiving a packet with an error instead of the next Clamp groups of code symbols is performed specifying the transfer of groups of code symbols for a data packet in which an error occurred during decoding.
Способ-прототип позволяет передавать данные с фиксированной скоростью 1 пакет/интервал передачи сообщения по каналу, где существует ненулевая вероятность пакетной ошибки.The prototype method allows you to transmit data with a fixed speed of 1 packet / message transmission interval on the channel, where there is a non-zero probability of a packet error.
Существенным недостатком данного способа является то, что ошибка в любой части кадра кодовых символов, как в информационной, так и в избыточной, влечет за собой передачу сигнала «запрос» по каналу решающей обратной связи, что вызывает простой системы передачи, а следовательно, снижение эффективности функционирования системы передачи.A significant drawback of this method is that an error in any part of the frame of code symbols, both informational and redundant, entails the transmission of a “request” signal through a decisive feedback channel, which causes a simple transmission system and, consequently, a decrease in efficiency the functioning of the transmission system.
Способ-прототип осуществляют при помощи следующих устройств: передатчик 1 и приемник 9, структурные схемы которых выполнены соответственно на фиг.1 и 2.The prototype method is carried out using the following devices: transmitter 1 and receiver 9, the structural diagrams of which are made respectively in figure 1 and 2.
Передатчик 1 (фиг.1) содержит блок кодирований пакетов данных 2, ключ 3, блок памяти 4, блок управления 5, блок выбора пакетов кодовых символов для передачи 6, блок формирования частей пакетов кодовых символов для передачи 7 и модулятор 8. При этом первый вход блока кодирования пакетов данных 2 является первым входом передатчика 1, первый вход которого является входом последовательности пакетов данных. Второй вход блока кодирования пакетов данных 2 соединен с первым выходом блока управления 5, вход которого является вторым входом передатчика 1, который является входом сигнала решающей обратной связи. Второй выход блока управления 5 соединен с первым входом блока памяти 4, второй вход которого соединен с первым выходом блока кодирования пакетов данных 2. Выход блока памяти 4 является первым входом блока выбора кодовых символов для передачи 6, второй вход которого является третьим выходом блока управления 5. Первый и второй выходы блока выбора пакетов кодовых символов для передачи 6 являются первым и вторым входами блока формирования частей пакетов кодовых символов для передачи 7, третий вход которого соединен с четвертым выходом блока управления 5. Первый и второй выходы блока формирования частей пакетов кодовых символов для передачи 7 соединены с первым и вторым входами ключа 3, третий вход которого является пятым выходом блока управления 5. Выход ключа 3 соединен с входом модулятора 8, выход которого является выходом передатчика 1.The transmitter 1 (Fig. 1) contains a block of encodings of
Приемник 9 (фиг.2) содержит демодулятор 10, ключ 11, первый 12 и второй 17 блоки объединения частей пакетов кодовых символов, первый 13 и второй 18 блоки декодирования, первый 15 и второй 16 блоки памяти, первый 14 и второй 19 блоки обнаружения ошибок в пакете кодовых символов, блок управления 20. При этом первый вход демодулятора 10 является входом приемника 9. Выход демодулятора 10 соединен с первым входом ключа 11, первый и второй выходы которого являются первыми входами первого 12 и второго 17 блоков объединения частей пакетов кодовых символов соответственно. Вторые входы первого 12 и второго 17 блоков объединения частей пакетов кодовых символов соединены с первым и вторым выходами первого блока памяти 15. Третьи входы первого 12 и второго 17 блоков объединения частей пакетов кодовых символов являются вторым и третьим выходами блока управления 20. Выход первого блока объединения частей пакетов кодовых символов 12 является первым входом первого блока декодирования 13 и одновременно первым входом первого блока памяти 15. Выход второго блока объединения частей пакетов кодовых символов 17 является первым входом второго блока декодирования 18 и одновременно вторым входом первого блока памяти 15. Выход первого блока декодирования 13 соединен с входом первого блока обнаружения ошибок в пакете кодовых символов 14 и первым входом второго блока памяти 16. Выход второго блока декодирования 18 соединен с входом второго блока обнаружения ошибок в пакете кодовых символов 19 и вторым входом второго блока памяти 16, третий вход которого является четвертым выходом блока управления 20. Выходы первого 14 и второго 19 блоков обнаружения ошибок в пакете кодовых символов соединены с первым и вторым входами блока управления 20, соответственно. Первый выход блока управления 20 является вторым выходом приемника 9, по которому передаются сигналы решающей обратной связи. Выход второго блока памяти 16 является первым выходом приемника 9.The receiver 9 (figure 2) contains a demodulator 10, a
В передатчике 1 (фиг.1) на первый вход блока кодирования пакетов данных 2 поступают пакеты данных (предварительно разделенное сообщение данных на пакеты данных). На второй вход блока кодирования пакетов данных 2 поступает сигнал с первого выхода блока управления 5. В блоке кодирования пакетов данных 2 осуществляется кодирование пакетов данных кодом, обнаруживающим ошибки, и кодирование кодом, корректирующим ошибки. Выходной сигнал с блока кодирования пакетов данных 2 поступает на второй вход блока памяти 4. По этому сигналу в блоке памяти 4 записывается в память результат кодирования пакетов данных. Все пакеты записываются в блок памяти 4 в той очередности, в которой они поступают на второй его вход. Выбор пакета для передачи осуществляет блок выбора пакета кодовых символов для передачи 6. Данный блок подает на блок формирования частей пакетов кодовых символов для передачи 7 очередной пакет кодовых символов и следующий за ним пакет кодовых символов для обеспечения опережающей передачи при приходе сигнала «запрос» от корреспондента. Блок формирования частей пакетов кодовых символов для передачи 7 разделяет кодовую часть (избыточную часть пакета кодовых символов, образованную в блоке кодирования пакетов данных 2) на кодовые блоки, которые обеспечивают либо обнаружение ошибок, либо их исправление на приемной стороне, в зависимости от количества переданных кодовых блоков. Ключ 3 обеспечивает объединение частей пакетов кодовых символов, подаваемых с блока формирования частей пакетов кодовых символов для передачи 7, и таким образом формирует кадр кодовых символов для передачи по каналу связи. Модулятор 8 производит модуляцию кадров кодовых символов, поступающих с ключа 3, для дальнейшей передачи по каналу связи. Блок управления 5 обеспечивает прием сигнала «запрос» от корреспондента, определение количества перезапросов для одного пакета кодовых символов, и как следствие, порядок и очередность передачи пакетов кодовых символов. Кроме того, блок управления 5 обеспечивает согласованную работу всех составляющих частей передатчика 1.In the transmitter 1 (Fig. 1), data packets (a pre-divided data message into data packets) are received at the first input of the encoding block of
В приемнике 9 (фиг.2) принятый сигнал демодулируют в блоке 10. Выходной сигнал с демодулятора 10 поступает на первый вход ключа 11. Ключ 11 осуществляет демультиплексирование входных данных, разделяя данные текущего пакета, пакета перезапроса или опережающего пакета. На место выколотых кодовых символов в текущем пакете вставляются нейтральные величины (нули). Текущий пакет или кодовые блоки из пакетов перезапроса передается с первого выхода ключа 11 на первый вход первого блока объединения частей пакетов кодовых символов 12. Со второго выхода ключа 11 на первый вход второго блока объединения частей пакетов кодовых символов 17 передаются те части пакета кодовых символов, которые обеспечивают опережающую передачу данных. Далее полученная последовательность из первого блока объединения частей пакетов кодовых символов 12 передается на первый блок декодирования 13 и на первый вход первого блока памяти 15. В первом блоке декодирования происходит декодирование поступившей последовательности, по результатам которого в первом блоке обнаружения ошибок в пакете кодовых символов 14 делается вывод о наличии либо отсутствии ошибок в пакете кодовых символов. Если ошибок не обнаружено, то информационная часть пакета кодовых символов подается на первый вход второго блока памяти 16. Результат декодирования из первого блока обнаружения ошибок в пакете кодовых символов 14 передается на первый вход блока управления 20, где формируется соответствующая часть сигнала обратной связи и сигнала на удаление пакета кодовых символов из первого блока памяти 15. С выхода второго блока объединения частей кодовых символов 17 пакеты кодовых символов поступают на второй вход первого блока памяти 15 и, при накоплении достаточной избыточной части пакета кодовых символов, пакет кодовых символов подается на второй блок декодирования 18. С выхода второго блока декодирования 18 информационная часть пакета кодовых символов поступает на второй вход второго блока памяти 16 и вход второго блока обнаружения ошибок в пакете кодовых символов 19, с выхода которого результат декодирования передается на второй вход блока управления 20. В блоке управления 20 формируется сигнал подтверждения или запроса, состоящий из двух частей. Каждая часть этого сигнала несет информацию о необходимости повтора очередной или опережающей части пакета кодовых символов. Во втором блоке памяти 16 происходит упорядочивание пакетов кодовых символов (расположение их в том же порядке, в котором они были переданы), перед выводом их из устройства.In the receiver 9 (FIG. 2), the received signal is demodulated in block 10. The output signal from the demodulator 10 is supplied to the first input of the
Существенным недостатком данного способа является то, что ошибка в любой части кадра кодовых символов, как в информационной, так и в избыточной части, влечет за собой передачу сигнала «запрос» по каналу решающей обратной связи. Что вызывает простой системы передачи, а следовательно, снижение эффективности функционирования системы передачи.A significant disadvantage of this method is that an error in any part of the frame of code symbols, both in the information and in the redundant part, entails the transmission of a “request” signal via a decisive feedback channel. What causes a simple transmission system, and therefore, a decrease in the efficiency of the transmission system.
Задача, которую решают заявляемый способ и устройство для его осуществления - это повышение пропускной способности системы передачи данных.The problem that the claimed method and device for its implementation is to increase the throughput of the data transmission system.
Поставленная задача решается тем, что способ синхронной передачи данных с решающей обратной связью, заключающийся в том, что:The problem is solved in that the method of synchronous data transmission with crucial feedback, which consists in the fact that:
- на передающей стороне осуществляют разделение сообщений данных на пакеты данных;- on the transmitting side, the data messages are divided into data packets;
- кодируют пакеты данных кодом, обнаруживающим ошибки, и кодом, исправляющим ошибки, образуя пакеты кодовых символов;- encode data packets with a code that detects errors, and with a code that corrects errors, forming packets of code symbols;
- разбивают каждый полученный пакет кодовых символов на группы кодовых символов и назначают очередность передачи групп кодовых символов;- divide each received packet of code symbols into groups of code symbols and assign the order of transmission of groups of code symbols;
- для каждого пакета кодовых символов из групп кодовых символов в соответствии с назначенной очередностью передачи формируют основную и уточняющие части пакета кодовых символов, при этом одни и те же группы кодовых символов могут одновременно входить в основную и в уточняющую части пакета кодовых символов;- for each package of code symbols from the groups of code symbols, in accordance with the assigned sequence of transmission, the main and refinement parts of the package of code symbols are formed, while the same groups of code symbols can simultaneously be included in the main and refinement parts of the package of code symbols;
- формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов таким образом, чтобы при наличии запросов кадр кодовых символов содержал основную часть передаваемого пакета и уточняющую часть одного из предыдущих пакетов, или только уточняющую часть одного из предыдущих пакетов;- form frames of code symbols, including in each frame different parts of different packets of code symbols in such a way that, if there are requests, the frame of code symbols contains the main part of the transmitted packet and the clarifying part of one of the previous packets, or only the clarifying part of one of the previous packets;
- модулируют и передают сформированные кадры кодовых символов по каналу связи;- modulate and transmit the generated frames of code symbols over the communication channel;
- на приемной стороне демодулируют принятый сигнал;- at the receiving side, the received signal is demodulated;
- для каждого пакета кодовых символов, части которого входят в принятый кадр кодовых символов, объединяют мягкие решения о кодовых символах основной части и мягкие решения о кодовых символах всех принятых уточняющих частей данного пакета кодовых символов. Декодируют пакет кодовых символов, проверяют наличие ошибок в декодированном пакете;- for each packet of code symbols, parts of which are included in the received frame of code symbols, soft decisions on code symbols of the main part and soft decisions on code symbols of all received qualifying parts of this code code packet are combined. Decode a packet of code symbols, check for errors in the decoded packet;
- если пакет кодовых символов декодирован с ошибкой, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, кодированных с ошибкой;- if the packet of code symbols is decoded with an error, then a decision is made to request the next qualifying part of the packet of code symbols of this packet and the soft decisions about the code symbols of this packet are remembered, forming a queue of packets encoded with an error;
- если пакет кодовых символов декодирован без ошибок, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях;- if the packet of code symbols is decoded without errors, then a decision is made to confirm the reception of this packet and the soft decisions about the code symbols of this packet are removed from the queue of packets decoded with an error, provided that they were saved during previous decodings;
- на основании вынесенных решений формируют сигнал обратной связи и передают его в установленный момент времени на передающую сторону;- based on the decisions made, a feedback signal is generated and transmitted at a specified time to the transmitting side;
- если есть хотя бы один запрос на передачу уточняющей части пакета кодовых символов, и при этом число невыполненных запросов не превышает наперед заданной величины, то на передающей стороне уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и очередной уточняющей части первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой;- if there is at least one request for transmission of the refinement of the code symbol packet, and the number of outstanding requests does not exceed a predetermined value, then on the transmitting side the main part of the next code symbol packet is reduced and the next frame is formed from the reduced main part of the next code symbol packet and another qualifying part of the first packet of code symbols from the queue of packets decoded with an error;
- в противном случае формируют следующий кадр только из очередных уточняющих частей первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой.- otherwise, the next frame is formed only from the next qualifying parts of the first packet of code symbols from the queue of packets decoded with an error.
При отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов, для чего:In the absence of outstanding requests for the transmission of the qualifying part of any of the code symbol packets, the main part of the next code symbol packet is transmitted ahead of schedule, for which:
- уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, занимающего оставшуюся часть кадра кодовых символов;- reduce the main part of the next packet of code symbols and form the next frame of the reduced main part of the next packet of code symbols and a fragment of the main part of the next packet, occupying the remainder of the frame of code symbols;
- следующие кадры формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, наращивая таким образом объем данных, переданных с опережением.- the following frames are formed from the non-transmitted remainder of the reduced main part of the next packet of code symbols and a fragment of the main part of the next packet, thus increasing the amount of data transmitted ahead of time.
В случае приема пакета с ошибкой вместо очередных опережающих групп кодовых символов осуществляют уточняющую передачу групп кодовых символов для того пакета данных, в котором произошла ошибка при декодировании.In the case of receiving a packet with an error, instead of the next leading groups of code symbols, the groups of code symbols are refined for the data packet in which the error occurred during decoding.
При этом, если объем данных, переданных с опережением, достигнет наперед заданной величины, то следующие кадры формируют из не переданного остатка полной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.Moreover, if the amount of data transmitted ahead of time reaches a predetermined value, then the following frames are formed from the unsent balance of the full main part of the next packet of code symbols and a fragment of the main part of the next packet.
Если объем данных достигнет величины, достаточной для самостоятельного декодирования, то его декодируют, и при декодировании без ошибки следующие кадры формируют из уменьшенной, по крайней мере, на одну группу кодовых символов основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.If the amount of data reaches a value sufficient for independent decoding, then it is decoded, and when decoding without error, the following frames are formed from a reduced at least one group of code symbols of the main part of the next packet of code symbols and a fragment of the main part of the next packet.
Причем подтверждение по декодированию опережающей части передают в составе сигнала обратной связи вместо подтверждения по уточняющей части.Moreover, confirmation on decoding the leading part is transmitted as part of the feedback signal instead of confirmation on the clarifying part.
Поставленная задача решается за счет того, что в устройство синхронной передачи данных с решающей обратной связью, содержащее передатчик 1 и приемник 9, согласно изобретению введены:The problem is solved due to the fact that in the device for synchronous data transmission with decision feedback, comprising a transmitter 1 and a receiver 9, according to the invention, the following are introduced:
- в передатчик - блок формирования свертки пакетов кодовых символов 21. При этом первый и второй входы блока формирования свертки пакетов кодовых символов 21 являются первым и вторым выходами блока выбора пакетов кодовых символов для передачи 7, шестой выход блока управления 5 соединен с третьим входом блока формирования свертки пакетов кодовых символов 21, первый и второй выходы которого соединены с первым и вторым входами блока формирования частей пакетов кодовых символов для передачи 7;- to the transmitter, the convolution unit for generating
- в приемник - первый 22 и второй 23 блоки проверки свертки. При этом третий выход ключа 11 соединен с первым входом первого блока проверки свертки 22, выход которого является третьим входом блока управления 20. Четвертый выход ключа 11 объединен с первым входом второго блока проверки свертки 23, выход которого соединен с четвертым входом блока управления 20.- to the receiver - the first 22 and second 23 blocks check convolution. The third output of the key 11 is connected to the first input of the first convolution checker 22, the output of which is the third input of the control unit 20. The fourth output of the key 11 is combined with the first input of the
Сущность заявляемой группы изобретений заключается в том, что можно исключить перезапросы в тех случаях, когда ошибка произошла в кодовой части пакета кодовых символов благодаря введенной в пакет кодовых символов свертки информационной части.The essence of the claimed group of inventions is that it is possible to exclude re-requests in cases where an error occurred in the code part of the code symbol package due to the convolution of the information part introduced into the code symbol package.
Технический результат снижения числа требующихся перезапросов достигаете за счет следующих факторов:The technical result of reducing the number of required retries is achieved due to the following factors:
при ошибке в пакете кодовых символов происходит определение ее положения, и лишь затем принимается решение о необходимости запроса уточняющей части.in case of an error in the package of code symbols, its position is determined, and only then a decision is made on the need to request a clarifying part.
Описание изобретений поясняется примерами выполнения и чертежами.The description of the invention is illustrated by examples and drawings.
На фиг.1 выполнена структурная схема передатчика устройства-прототипа.Figure 1 is a structural diagram of the transmitter of the prototype device.
На фиг.2 выполнена структурная схема приемника устройства-прототипа.Figure 2 is a block diagram of the receiver of the prototype device.
На фиг.3 выполнена структурная схема передатчика заявляемого устройства синхронной передачи данных с решающей обратной связью.Figure 3 is a structural diagram of a transmitter of the inventive device for synchronous data transmission with crucial feedback.
На фиг.4 выполнена структурна схема приемника заявляемого устройства синхронной передачи данных с решающей обратной связью.Figure 4 is a block diagram of the receiver of the inventive device for synchronous data transmission with crucial feedback.
Заявляемое устройство синхронной передачи данных с решающей обратной связью (фиг.3) содержит передатчик 24, содержащий блок кодирования пакетов данных 2, ключ 3, блок памяти 4, блок управления 5, блок выбора пакетов кодовых символов для передачи 6, блок формирования частей пакетов кодовых символов для передачи 7 и модулятор 8. При этом первый вход блока кодирования пакетов данных 2 является первым входом передатчика 24, второй вход блока кодирования пакетов данных 2 соединен с первым выходом блока управления 5, вход которого является вторым входом передатчика 24. Второй выход блока управления 5 соединен с первым входом блока памяти 4, второй вход которого соединен с выходом блока кодирования пакетов данных 2. Третий выход блока управления 5 соединен с первым входом ключа 3. Выход блока памяти 4 соединен с первым входом блоком выбора пакетов кодовых символов для передачи 6, второй вход которого является четвертым выходом блока управления 5. Первый и второй выходы блока выбора пакетов кодовых символов для передачи 6 соединены соответственно с первым и вторым входами блока формирования частей пакетов кодовых символов для передачи 7, третий вход которого является пятым выходом блока управления 5. Первый и второй выходы блока формирования частей пакетов кодовых символов для передачи 7 соединены со вторым и третьим входами ключа 3, выход которого соединен с входом модулятора 8. Выход модулятора 8 является выходом передатчика 24. Согласно изобретению передатчик 24 дополнительно содержит блок формирования свертки пакетов кодовых символов 21. При этом первый и второй входы блока формирования свертки пакетов кодовых символов 21 являются первым и вторым выходами блока выбора пакетов кодовых символов для передачи 6. Шестой выход блока управления 5 соединен с третьим входом блока формирования свертки пакетов кодовых символов 21, первый и второй выходы которого соединены с первым и вторым входами блока формирования частей пакетов кодовых символов для передачи 7.The inventive synchronous data transmission device with decision feedback (Fig. 3) comprises a transmitter 24 comprising a data
Заявляемое устройство синхронной передачи данных с решающей обратной связью (фиг.4) содержит приемник 25, содержащий демодулятор 10, ключ 11, первый 12 и второй 17 блоки объединения частей пакетов кодовых символов, первый 13 и второй 18 блоки декодирования, первый 14 и второй 19 блоки обнаружения ошибок в пакете кодовых символов, первый 15 и второй 16 блоки памяти и блок управления 20. При этом первый вход демодулятора 10 является входом приемника 25. Выход демодулятора 10 соединен с первым входом ключа 11, первый и второй выходы которого являются первыми входами первого 12 и второго 17 блоков объединения частей пакетов кодовых символов соответственно. Вторые входы первого 12 и второго 17 блоков объединения частей пакетов кодовых символов соединены соответственно с первым и вторым выходами первого блока памяти 15. Третьи входы первого 12 и второго 17 блоков объединения частей пакетов кодовых символов являются вторым и третьим выходами блока управления 20. Выход первого блока объединения частей пакетов кодовых символов 12 является первым входом первого блока декодирования 13 и одновременно первым входом первого блока памяти 15. Выход второго блока объединения частей пакетов кодовых символов 17 является первым входом второго блока декодирования 18 и одновременно вторым входом первого блока памяти 15. Выход первого блока декодирования 13 соединен с входом первого блока обнаружения ошибок в пакете кодовых символов 14 и первым входом второго блока памяти 16. Выход второго блока декодирования 18 является входом второго блока обнаружения ошибок в пакете кодовых символов 19 и вторым входом второго блока памяти 16, третий вход которого является четвертым выходом блока управления 20. Выходы первого 14 и второго 19 блоков обнаружения ошибок в пакете кодовых символов соединены с первым и вторым входами блока управления 20, соответственно. Первый выход блока управления 20 является вторым выходом приемника 9, по которому передаются сигналы решающей обратной связи. Выход второго блока памяти 16 является первым выходом приемника 25. Согласно изобретению приемник 25 дополнительно содержит первый 22 и второй 23 блоки проверки свертки, первые входы которых соединены соответственно с третьим и четвертым выходами ключа 11. Выходы первого 22 и второго 23 блоков проверки свертки соединены соответственно с третьим и четвертым входами блока управления 20.The inventive synchronous data transmission device with decision feedback (Fig. 4) comprises a receiver 25 comprising a demodulator 10, a key 11, a first 12 and a second 17 blocks for combining parts of code symbol packets, the first 13 and second 18 decoding blocks, the first 14 and second 19 error detection blocks in the code symbol packet, the first 15 and second 16 memory blocks and the control unit 20. In this case, the first input of the demodulator 10 is the input of the receiver 25. The output of the demodulator 10 is connected to the first input of the key 11, the first and second outputs of which are the first inputs the first 12 and second 17 blocks of combining parts of the code symbol packets, respectively. The second inputs of the first 12 and second 17 blocks combining parts of the code symbol packets are connected respectively to the first and second outputs of the first memory block 15. The third inputs of the first 12 and second 17 blocks of combining parts of the code symbol packets are the second and third outputs of the control unit 20. The output of the first block combining parts of the code symbol packets 12 is the first input of the first decoding unit 13 and simultaneously the first input of the first memory block 15. The output of the second block combining parts of the
Осуществляют способ синхронной передачи данных с решающей обратной связью следующим образом:A synchronous data transmission method with decisive feedback is implemented as follows:
- на передающей стороне осуществляют разделение сообщения данных на пакеты данных;- on the transmitting side, the data message is divided into data packets;
- формируют свертку информационной части пакета кодовых символов;- form a convolution of the information part of the package of code symbols;
- кодируют пакеты данных кодом, обнаруживающим ошибки, и кодом, исправляющим ошибки, образуя пакеты кодовых символов;- encode data packets with a code that detects errors, and with a code that corrects errors, forming packets of code symbols;
- разбивают каждый полученный пакет кодовых символов на группы кодовых символов и назначают очередность передачи групп кодовых символов;- divide each received packet of code symbols into groups of code symbols and assign the order of transmission of groups of code symbols;
- для каждого пакета кодовых символов из групп кодовых символов, в соответствии с назначенной очередностью передачи, формируют основную и уточняющие части пакета кодовых символов, при этом одни и те же группы кодовых символов могут одновременно входить в основную и в уточняющую части пакета кодовых символов;- for each package of code symbols from the groups of code symbols, in accordance with the assigned sequence of transmission, the main and clarifying parts of the package of code symbols are formed, while the same groups of code symbols can simultaneously be included in the main and in the clarifying parts of the package of code symbols;
- формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов таким образом, что при наличии перезапросов кадр кодовых символов содержал основную часть передаваемого пакета и уточняющую часть одного из предыдущих пакетов, или только уточняющую часть одного из предыдущих пакетов, а также свертку информационной части очередного или следующего пакета кодовых символов;- form frames of code symbols, including in each frame different parts of different packets of code symbols in such a way that, in the presence of re-requests, the frame of code symbols contains the main part of the transmitted packet and the clarifying part of one of the previous packets, or only the clarifying part of one of the previous packets, and also convolution of the information part of the next or next packet of code symbols;
- модулируют и передают сформированные кадры кодовых символов по каналу связи;- modulate and transmit the generated frames of code symbols over the communication channel;
- на приемной стороне демодулируют принятый сигнал;- at the receiving side, the received signal is demodulated;
- для каждого пакета кодовых символов, части которого входят в принятый кадр кодовых символов, объединяют мягкие решения о кодовых символах основной части и мягкие решения о кодовых символах всех принятых уточняющих частей данного пакета кодовых символов, декодируют пакет кодовых символов и проверяют наличие ошибок в декодированном пакете;- for each packet of code symbols, parts of which are included in the received frame of code symbols, soft decisions on code symbols of the main part and soft decisions on code symbols of all received refinement parts of this packet of code symbols are combined, a code symbol packet is decoded, and errors are detected in the decoded packet ;
- производится свертка информационной части пакета кодовых символов, пришедшего из канала связи, и сравнение результата свертки с той, которая была принята;- the convolution of the information part of the code symbol packet that came from the communication channel is carried out and the result of the convolution is compared with the one that was accepted;
- если пакет кодовых символов декодирован с ошибкой, и результат свертки показывает, что произошла ошибка, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой;- if the code symbol packet is decoded with an error, and the convolution result indicates that an error has occurred, then a decision is made to request the next qualifying part of the code symbol packet of this packet and the soft decisions about the code symbols of this packet are remembered, forming a queue of packets decoded with an error;
- если пакет кодовых символов декодирован с ошибкой, а результат свертки показывает, что ошибки нет, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях;- if the packet of code symbols is decoded with an error, and the convolution result shows that there is no error, then a decision is made to confirm the receipt of this packet and the soft decisions about the code symbols of this packet are removed from the queue of packets decoded with an error, provided that they were saved with previous decodings;
- если пакет кодовых символов декодирован без ошибок и результат свертки показывает, что ошибки нет, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях;- if the packet of code symbols is decoded without errors and the convolution result shows that there is no error, then a decision is made to confirm the receipt of this packet and the soft decisions about the code symbols of this packet are removed from the queue of packets decoded with an error, provided that they were saved during previous decoding;
- если пакет кодовых символов декодирован без ошибок, а результат свертки показывает, что произошла ошибка, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой. В этом случае считается, что в декодере произошла ошибка второго рода, т.е. в канале связи произошла ошибка такой конфигурации, что декодер не смог ее распознать;- if the packet of code symbols is decoded without errors, and the convolution result indicates that an error has occurred, then a decision is made to request the next qualifying part of the packet of code symbols of this packet and the soft decisions about the code symbols of this packet are remembered, forming a queue of packets decoded with an error. In this case, it is considered that a second kind error has occurred in the decoder, i.e. an error occurred in the communication channel with such a configuration that the decoder could not recognize it;
- на основании вынесенных решений формируют сигнал обратной связи и передают его в установленный момент времени на передающую сторону;- based on the decisions made, a feedback signal is generated and transmitted at a specified time to the transmitting side;
- если есть хотя бы один запрос на передачу уточняющей части пакета кодовых символов и, при этом число невыполненных запросов не превышает наперед заданной величины, то на передающей стороне уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и очередной уточняющей части первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой;- if there is at least one request for transmission of the refinement part of the code symbol packet and, at the same time, the number of outstanding requests does not exceed a predetermined value, then on the transmitting side the main part of the next code symbol packet is reduced and the next frame is formed from the reduced main part of the next code symbol packet and another qualifying part of the first packet of code symbols from the queue of packets decoded with an error;
- в противном случае формируют следующий кадр только из очередных уточняющих частей первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой;- otherwise, the next frame is formed only from the next qualifying parts of the first packet of code symbols from the queue of packets decoded with an error;
- при отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов, для чего:- in the absence of outstanding requests for the transfer of the qualifying part of any of the code symbol packets, the main part of the next code symbol packet is transmitted ahead of schedule, for which:
- уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, занимающего оставшуюся часть кадра кодовых символов;- reduce the main part of the next packet of code symbols and form the next frame of the reduced main part of the next packet of code symbols and a fragment of the main part of the next packet, occupying the remainder of the frame of code symbols;
- следующие кадры формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, наращивая объем данных, переданных с опережением.- the following frames are formed from the non-transmitted remainder of the reduced main part of the next packet of code symbols and a fragment of the main part of the next packet, increasing the amount of data transmitted ahead of time.
При этом, если объем данных, переданных с опережением, достигнет наперед заданной величины, то следующие кадры формируют из не переданного остатка полной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.Moreover, if the amount of data transmitted ahead of time reaches a predetermined value, then the following frames are formed from the unsent balance of the full main part of the next packet of code symbols and a fragment of the main part of the next packet.
Если объем данных достигнет величины, достаточной для самостоятельного декодирования, то его декодируют, и при декодировании без ошибки следующие кадры формируют из уменьшенной, по крайней мере, на одну группу кодовых символов основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.If the amount of data reaches a value sufficient for independent decoding, then it is decoded, and when decoding without error, the following frames are formed from a reduced at least one group of code symbols of the main part of the next packet of code symbols and a fragment of the main part of the next packet.
Причем подтверждение по декодированию опережающей части передают в составе сигнала обратной связи вместо подтверждения по уточняющей части.Moreover, confirmation on decoding the leading part is transmitted as part of the feedback signal instead of confirmation on the clarifying part.
Рассмотрим подробнее реализацию заявляемого способа на устройстве синхронной передачи данных с решающей обратной связью, структурная схема приведена на фигурах 3 и 4.Let us consider in more detail the implementation of the proposed method on a synchronous data transmission device with crucial feedback, the block diagram is shown in figures 3 and 4.
На передающей стороне осуществляют разделение сообщения данных на пакеты данных, используя для этого, например, коммутатор пакетов физического уровня, работающий в соответствии со стандартом ВОС (Reference Model for Open Systems Interconnection. - RM-OSI/ITU-T X.200 (1994); ISOAEC 7498. - 1, 2, 3, 4:1994).On the transmitting side, the data message is divided into data packets using, for example, a physical layer packet switch operating in accordance with the OSI standard (Reference Model for Open Systems Interconnection. - RM-OSI / ITU-T X.200 (1994) ; ISOAEC 7498. - 1, 2, 3, 4: 1994).
По сигналу управления (шина) с шестого выхода блока управления 5 в блоке формирования свертки пакетов кодовых символов 21 происходит получение свертки пакетов данных.By the control signal (bus) from the sixth output of the control unit 5 in the convolution forming unit of the
По сигналу управления (шина) с первого выхода блока управления 5 в блоке 2 кодируют пакеты данных кодом, обнаруживающим ошибки, используя в качестве кода, обнаруживающего ошибки, например, CRC (cyclical redundancy check), (S.Lin and D.J.Costello, Jr. Error Control Coding: Fundamentals and Applications. NJ: Englewood Cliffs, -1983), и кодом, исправляющим ошибки, используя в качестве кодов, исправляющих ошибки, например, любой из класса сверточных кодов, в частности параллельный сверточный турбокод (C.Berrou, A.Glaviex, P.Thitimajshma. Near Shannon limit error - correcting coding and decoding // IEEE Transactions on information theory. - 2/1993), образуя пакеты кодовых символов, запоминают полученные пакеты кодовых символов, образуя очередь запомненных пакетов кодовых символов к передаче в блоке памяти 4.The control signal (bus) from the first output of control unit 5 in
Разбивают каждый запомненный пакет кодовых символов на равные группы кодовых символов и назначают очередность передачи групп кодовых символов в соответствии с одним из известных способов, например (J. Hagenauer. Rate Compatible Punctured Convolutional Codes (RCPC Codes) and their Applications // IEEE Trans. Commun, Vol.36, Apr. 1988, pp.389-400 или D.N.Rowitch and L.B.Milstein. Rate Compatible Punctured Turbo (RCPT) Codes in a Hybrid FEC/ARQ System // in Proc. Communications Theory Mini-Conference of GLOBECOM'97. - Phoenix, AZ, Nov. 1997. - pp.55-59). Операция осуществляется в блоке выбора пакетов кодовых символов для передачи 6.Each stored code symbol packet is divided into equal code symbol groups and the transmission order of code symbol groups is assigned in accordance with one of the known methods, for example (J. Hagenauer. Rate Compatible Punctured Convolutional Codes (RCPC Codes) and their Applications // IEEE Trans. Commun , Vol. 36, Apr. 1988, pp. 389-400 or DNRowitch and LB Milstein. Rate Compatible Punctured Turbo (RCPT) Codes in a Hybrid FEC / ARQ System // in Proc. Communications Theory Mini-Conference of GLOBECOM'97 .- Phoenix, AZ, Nov. 1997. - pp. 55-59). The operation is carried out in the block selection of code symbol packets for transmission 6.
В первый кадр кодовых символов включают только основную часть первого пакета кодовых символов или возможен вариант, при котором кодировать начинают заранее, обеспечивая тем самым, достаточную длину очереди пакетов кодовых символов к передаче, и первый кадр кодовых символов состоит из уменьшенной основной части первого пакета и опережающей части следующего за ним пакета при наличии данного пакета в очереди пакетов кодовых символов к передаче.Only the main part of the first code symbol packet is included in the first code symbol frame, or a variant is possible in which the encoding is started in advance, thereby ensuring a sufficient length of the queue of code symbol packets to be transmitted, and the first code symbol frame consists of a reduced main part of the first packet and leading parts of the packet following it, if this packet is in the queue of packets of code symbols for transmission.
Выбор пакетов для передачи осуществляется блоком выбора пакетов кодовых символов для передач 6, который в соответствии с базовым адресом в блоке памяти 4, полученным от блока управления 5, определяет необходимое смещение адресов и запоминает расположение выбранных блоков в блоке памяти 4 и переписывает выбранные пакеты в память блока 6.The selection of packets for transmission is carried out by the code symbol packet selection block for transmissions 6, which, in accordance with the base address in the
Для каждого из выбранных пакетов кодовых символов в соответствии с назначенной очередностью передачи групп кодовых символов формируют основную и уточняющие части пакета кодовых символов, а также свертку информационных групп пакета кодовых символов, выделяя, таким образом, HARQ-2 блоки и запоминая адреса, по которым они расположены в блоке памяти 4 и внутренней памяти блока выбора пакетов кодовых символов для передачи 6 и переписывая выбранные части в память блока 7, отмечая при этом количество осуществленных передач для каждой из выбранных групп кодовых символов.For each of the selected code symbol packets, in accordance with the assigned sequence of transmitting code symbol groups, the main and refinement parts of the code symbol packet are formed, as well as the convolution of information groups of the code symbol packet, thus highlighting the HARQ-2 blocks and remembering the addresses at which they are located in the
Если все части пакета кодовых символов помечены как переданные, то формируют дополнительную уточняющую часть пакета кодовых символов, циклический повтор последовательности групп кодовых символов в соответствии с ранее назначенной очередностью, инкрементируя при этом счетчик передач каждой группы в блоке формирования частей пакетов кодовых символов для передачи 7.If all parts of the code symbol packet are marked as transmitted, then they form an additional qualifying part of the code symbol packet, cyclic repetition of the sequence of code symbol groups in accordance with the previously assigned sequence, while incrementing the transmission counter of each group in the code block packet generating unit for transmission 7.
В блоке 7 формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов путем мультиплексирования ключом 3, в соответствии с последовательностью принятых подтверждений о приеме предыдущих пакетов, таким образом, что при наличии невыполненных запросов на уточняющую передачу не больше чем N пакетов формируют следующий кадр кодовых символов из уменьшенной на, по меньшей мере, одну группу кодовых символов основной части очередного пакета, полученного от блока выбора пакетов кодовых символов к передаче и, по меньшей мере, одной группы из уточняющей части для пакета кодовых символов, переданного ранее остальных пакетов, для которых есть запрос о передаче дополнительных кодовых символов и которые формируют очередь передаваемых пакетов кодовых символов в блоке памяти 4, выбор которого осуществляют в блоке выбора пакетов кодовых символов для передачи 6.In block 7, frames of code symbols are formed, including in each frame different parts of different packets of code symbols by multiplexing with key 3, in accordance with the sequence of received acknowledgments on the reception of previous packets, so that if there are outstanding requests for the refinement transmission, no more than N packets form the next frame of code symbols from a code group symbol reduced by at least one group of code symbols of the main part of the next packet received from the code symbol packet selection block and at least one group from the qualifying part for a code symbol packet transmitted earlier of the remaining packets for which there is a request to transmit additional code symbols and which form a queue of transmitted code symbol packets in the
При наличии запросов на уточняющую передачу больше чем N пакетов формируют следующий кадр кодовых символов из групп уточняющей части или дополнительной уточняющей части для пакета, переданного ранее остальных пакетов, для которых есть запросы на уточняющую передачу, выбор которого осуществляют в блоке выбора пакетов кодовых символов для передачи 6.If there are requests for a refinement transmission of more than N packets, the next frame of code symbols is formed from the groups of the refinement part or an additional refinement part for a packet transmitted earlier than the remaining packets for which there are requests for a refinement transmission, the selection of which is carried out in the block of selection of code symbol packets for transmission 6.
Одновременно по сигналу с блока управления 5 очередной пакет данных кодируют в блоке кодирования пакетов данных 2 и запоминают в блоке памяти 4, наращивая, таким образом, очередь пакетов кодовых символов к передаче в блоке памяти 4.At the same time, according to the signal from the control unit 5, the next data packet is encoded in the encoding block of
Пакеты кодовых символов, основная часть которых вошла в кадр кодовых символов, переводят из очереди пакетов кодовых символов к передаче в блоке памяти 4 в очередь передаваемых пакетов кодовых символов в блоке памяти 4. Операцию выполняет блок выбора пакетов кодовых символов для передачи 6. Операция может быть выполнена путем запоминания в блоке выбора пакетов для передачи 6 разделяющего адреса в блоке памяти 4 таким образом, что адреса пакетов, меньших, чем запомненный адрес, определяются как пакеты кодовых символов к передаче, а пакеты, чей адрес больше, определяются как передаваемые пакеты или выполняют операции вместо физических адресов со ссылками на эти адреса (Кнут, "Искусство программирования", издательство "Вильямс", 2002 г., 720 стр.) или каким-либо другим из известных методов управления памятью.Packets of code symbols, the main part of which is included in the frame of code symbols, are transferred from the queue of packets of code symbols for transmission in the
Пакеты кодовых символов, для которых получено подтверждение о приеме, удаляют из очереди передаваемых пакетов, после чего осуществляют перераспределение расположения пакетов кодовых символов или ссылок на них в памяти.Packets of code symbols for which an acknowledgment of receipt has been received is removed from the queue of transmitted packets, after which redistribution of the arrangement of packets of code symbols or references to them in memory is carried out.
При отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов, если такой пакет есть в очереди пакетов к передаче, его наличие определяется блоком выбора пакетов кодовых символов для передачи 6.In the absence of outstanding requests for the transmission of the qualifying part of any of the code symbol packets, the main part of the next code symbol packet is transmitted ahead of time, if such a packet is in the packet queue for transmission, its presence is determined by the block for selecting code symbol packets for transmission 6.
В блоке формирования частей пакетов кодовых символов для передачи 7 уменьшают основную часть очередного пакета кодовых символов, по меньшей мере, на одну группу кодовых символов.In the block forming parts of the code symbol packets for transmission 7, the main part of the next code symbol packet is reduced by at least one group of code symbols.
В блоке формирования частей пакетов кодовых символов для передачи 7 формируют опережающую часть данного пакета кодовых символов из фрагмента основной части данного пакета кодовых символов, выделяя в ней, по меньшей мере, одну группу кодовых символов в соответствии с заданной очередностью.In the unit for forming parts of code symbol packets for transmission 7, the leading part of a given code symbol packet is formed from a fragment of the main part of this code symbol packet, selecting at least one group of code symbols in it in accordance with a predetermined sequence.
В блоке формирования частей пакетов кодовых символов для передачи 7 формируют следующий кадр кодовых символов путем мультиплексирования из уменьшенной основной части очередного пакета кодовых символов и опережающей части следующего пакета из очереди пакетов кодовых символов к передаче, который занимает оставшуюся часть кадра кодовых символов.In the block forming part of the code symbol packets for transmission 7, the next code symbol frame is generated by multiplexing from the reduced main part of the next code symbol packet and the leading part of the next packet from the code symbol packet queue for transmission, which occupies the remainder of the code symbol frame.
В блоке формирования частей пакетов кодовых символов для передачи 7 при наличии подтверждения о приеме пакета по сигналу с пятого выхода блока управления 5 формируют следующие кадры кодовых символов путем мультиплексирования. Кадры кодовых символов формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и увеличенной, по меньшей мере, на одну группу кодовых символов опережающей части следующего пакета кодовых символов из очереди пакетов к передаче, наращивая, таким образом, объем данных, переданных с опережением.In the block forming the parts of the code symbol packets for transmission 7, if there is a confirmation of the receipt of the packet by the signal from the fifth output of the control unit 5, the following code symbol frames are generated by multiplexing. The code symbol frames are formed from the non-transmitted remainder of the reduced main part of the next code symbol packet and increased by at least one group of code symbols of the leading part of the next code symbol packet from the packet queue for transmission, thus increasing the amount of data transmitted ahead of schedule .
В блоке 8 модулируют кадры кодовых символов и передают сформированные кадры кодовых символов по каналу связи.In block 8, code symbol frames are modulated and transmitted generated code symbol frames are transmitted over the communication channel.
Приемник 25 (фиг.4) принимает сигнал, который поступает на вход демодулятора 10. В блоке демодуляции 10 демодулируют принятый сигнал, формируя мягкие решения о кодовых символах.The receiver 25 (Fig. 4) receives a signal that is input to the demodulator 10. In the demodulation unit 10, the received signal is demodulated, forming soft code symbol decisions.
В первом блоке объединения частей пакета кодовых символов 12 объединяют мягкие решения о кодовых символах всех принятых частей каждого пакета кодовых символов, части которого вошли в принятый кадр кодовых символов, если в составе принятого кадра была основная часть этого пакета, и запоминают результат объединения в первом блоке памяти 15. Объединение осуществляют одним из известных способов, например, D.Chase. Code Combining - A Maximum-Likelihood Decoding Approach for Combining an Arbitrary Number of Noisy Packets // IEEE Trans. Comm., vol.33, pp.385-393. - May 1985 или L.Lugand, D.Costello and R.Deng. Parity retransmission hybrid ARQ using rate 1/2 convolutional codes on a nonstationary channel // IEEE Transactions on Communications 37(4), pp.755-765. - 1989.In the first block combining the parts of the code symbol packet 12, soft decisions about code symbols of all the accepted parts of each code symbol packet are combined, the parts of which are included in the received code symbol frame if the main part of this packet was included in the received frame, and the result of combining in the first block memory 15. The combination is carried out by one of the known methods, for example, D.Chase. Code Combining - A Maximum-Likelihood Decoding Approach for Combining an Arbitrary Number of Noisy Packets // IEEE Trans. Comm., Vol. 33, pp. 385-393. - May 1985 or L. Lugand, D. Costello and R. Deng. Parity retransmission hybrid ARQ using rate 1/2 convolutional codes on a nonstationary channel // IEEE Transactions on Communications 37 (4), pp. 755-765. - 1989.
Во втором блоке объединения частей пакетов кодовых символов 17 объединяют мягкие решения о кодовых символах всех принятых частей каждого пакета кодовых символов, части которого вошли в принятый кадр кодовых символов, если в составе принятого кадра была уточняющая или опережающая часть этого пакета, и запоминают результат объединения в первом блоке памяти 15.In the second block for combining parts of the
В первом блоке декодирования 13 декодируют пакет кодовых символов, который был сформирован в первом блоке объединения частей пакетов кодовых символов 12, и запоминают его во втором блоке памяти 16. В первом блоке обнаружения ошибок в пакете кодовых символов 14 проверяют наличие ошибок в декодированном в блоке 13 пакете кодовых символов и передают результаты проверки на первый вход блока управления 20, который определяет пакет данных, готовый к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.In the first decoding unit 13, the code symbol packet that was generated in the first block for combining portions of the code symbol packets 12 is decoded and stored in the
Во втором блоке декодирования 18 декодируют пакет кодовых символов, который был сформирован во втором блоке объединения частей пакетов кодовых символов 17, и запоминают его во втором блоке памяти 16.In the second decoding unit 18, the code symbol packet that was generated in the second block for combining portions of the
Во втором блоке обнаружения ошибок в пакете кодовых символов 19 проверяют наличие ошибок в декодированном в блоке 18 пакете кодовых символов и передают результаты проверки на второй вход блока управления 20, который определяет пакет данных, готовый к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.In the second error detection block in the
В первом блоке проверки свертки 22 происходит формирование свертки информационных групп пакета кодовых символов и сравнение полученного результата с той сверткой, которая пришла в составе пакета кодовых символов. Результат сравнения подается на третий вход блока управления 20, который выносит решение о том, что пакет данных готов к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.In the first convolution checking block 22, a convolution of information groups of a code symbol packet is generated and a comparison is made with the convolution that came as part of the code symbol packet. The comparison result is fed to the third input of the control unit 20, which makes a decision that the data packet is ready for output in the
Во втором блоке проверки свертки 23 происходит формирование свертки информационных групп пакета кодовых символов и сравнение полученного результата с той сверткой, которая пришла в составе пакета кодовых символов. Результат сравнения подается на четвертый вход блока управления 20, который выносит решение о том, что пакет данных готов к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.In the second
Если в первом блоке декодирования 13 пакет кодовых символов декодирован с ошибкой и в первом блоке проверки свертки 22 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.If in the first decoding block 13 the code symbol packet is decoded with an error and an error is detected in the first convolution check block 22, a decision is made to request the next qualifying part of the code symbol packet of this packet and soft decisions about the code symbols of this packet are recorded, forming a queue of packets decoded with an error in the first memory block 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован с ошибкой и во втором блоке проверки свертки 23 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.If in the second decoding unit 18 the code symbol packet is decoded with an error and an error is detected in the second
Если в первом блоке декодирования 13 пакет кодовых символов декодирован с ошибкой, а в первом блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.If in the first decoding block 13 the code symbol packet is decoded with an error, and no errors were detected in the first convolution checking block 22, then a decision is made to confirm receipt of this packet and soft decisions about the code symbols of this packet are removed from the queue of packets decoded with the error, provided that they were stored during previous decodings in the first memory block 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован с ошибкой, а во втором блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.If in the second decoding unit 18 the code symbol packet is decoded with an error, and no errors were detected in the second convolution checking block 22, then a decision is made to confirm the receipt of this packet and soft decisions about the code symbols of this packet are removed from the queue of packets decoded with the error, provided that they were stored during previous decodings in the first memory block 15.
Если в первом блоке декодирования 13 пакет кодовых символов декодирован без ошибок, а в первом блоке проверки свертки 22 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.If a code symbol packet is decoded without errors in the first decoding block 13, and an error is detected in the first convolution check block 22, a decision is made to request the next qualifying part of the code symbol packet of this packet and soft decisions about the code symbols of this packet are recorded, forming a queue of packets decoded with an error in the first memory block 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован без ошибок, а во втором блоке проверки свертки 23 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.If a code symbol packet is decoded without errors in the second decoding block 18, and an error is detected in the second
Если в первом блоке декодирования 13 пакет кодовых символов декодирован без ошибок и в первом блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.If in the first decoding block 13 the code symbol packet is decoded without errors and no errors were detected in the first convolution checking block 22, then a decision is made to confirm the receipt of this packet and soft decisions about the code symbols of this packet are removed from the queue of packets decoded with an error, provided that they were saved during previous decodings in the first memory block 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован без ошибок и во втором блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.If in the second decoding unit 18 the code symbol packet is decoded without errors and no errors were detected in the second convolution checking block 22, then a decision is made to confirm receipt of this packet and soft decisions about the code symbols of this packet are removed from the queue of packets decoded with an error, provided that they were saved during previous decodings in the first memory block 15.
Если во втором блоке декодирования 18 объем данных, переданных с опережением, достаточен для декодирования, то его декодируют независимо при отсутствии ошибок на приемной стороне и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов в первом блоке памяти 15. Декодированные данные сохраняют во втором блоке памяти 16 по результатам проверки во втором блоке обнаружения ошибок в пакете кодовых символов 19 и во втором блоке проверки свертки 23. Блок управления 20 формирует и отправляет сигнал подтверждения для данного пакета кодовых символов по обратному каналу. При получении данного подтверждения на передающей стороне блок управления 5 формирует соответствующий сигнал, по которому удаляют данный кадр из очереди пакетов кодовых символов к передаче в блоке памяти 4. Если во втором блоке декодирования 18 объем данных, переданных с опережением, недостаточен дл декодирования, на передающей стороне при передаче остальных пакетов кодовых символов опережающую часть каждого следующего пакета кодовых символов наращивают, пока объем этой части не достигнет заданной величины. После чего следующие кадры формируют из не переданного остатка полной основной части очередного пакета кодовых символов и такой же опережающей части следующего пакета из очереди пакетов к передаче в блоке формирования частей пакетов кодовых символов для передачи 7 путем мультиплексирования ключом 3.If in the second decoding unit 18 the amount of data transmitted ahead of time is sufficient for decoding, then it is decoded independently in the absence of errors on the receiving side and soft decisions about the code symbols of this packet are removed from the packet queue in the first memory block 15. The decoded data is stored in the second the
Блок управления 20 на приемной стороне (в приемнике 25) на основании вынесенных решений первым 14 и вторым 19 блоками обнаружения ошибок в пакете кодовых символов и первым 22 и вторым 23 блоками проверки свертки формирует сигнал обратной связи и передает его в установленный момент времени на передающую сторону (передатчик 24), причем сигнал обратной связи является сложным, т.е. несет в себе информацию о решениях по каждому из блоков обнаружения ошибок в пакете кодовых символов.The control unit 20 on the receiving side (in the receiver 25), based on the decisions made by the first 14 and second 19 error detection blocks in the code symbol packet and the first 22 and second 23 convolution check blocks, generates a feedback signal and transmits it at a set point in time to the transmitting side (transmitter 24), wherein the feedback signal is complex, i.e. carries information about the decisions for each of the error detection blocks in the code symbol packet.
Блок управления 20 в приемнике при наличии подтверждения успешного декодирования опережающей части, которое получено во втором блоке обнаружения ошибок в пакете кодовых символов 19, формирует сложный сигнал обратной связи таким образом, что решение по опережающей части передают вместо решения по уточняющей части, запроса на передачу которой фактически не было.The control unit 20 in the receiver, if there is confirmation of successful decoding of the leading part, which is obtained in the second error detection block in the
На практике передатчик 24 и приемник 25 могут быть реализованы на цифровом процессоре и программируемой логической интегральной схеме, либо может быть осуществлена смешанная реализация на двух вышеупомянутых устройствах.In practice, the transmitter 24 and receiver 25 may be implemented on a digital processor and a programmable logic integrated circuit, or a mixed implementation on the two aforementioned devices may be implemented.
Таким образом, за счет определения места ошибки в пакете кодовых символов и принятия решения о необходимости запроса повторной передачи удается сократить число перезапросов при синхронной передаче сообщения данных, разделенных на пакеты данных с решающей обратной связью, повышая тем самым пропускную способность системы передачи данных в целом.Thus, by determining the location of the error in the code symbol packet and deciding on the need for a retransmission request, it is possible to reduce the number of retransmissions during synchronous transmission of a data message divided into data packets with crucial feedback, thereby increasing the throughput of the data transmission system as a whole.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2011131429/08A RU2460217C1 (en) | 2011-07-26 | 2011-07-26 | Method for synchronous data transmission with decision feedback and apparatus for realising said method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2011131429/08A RU2460217C1 (en) | 2011-07-26 | 2011-07-26 | Method for synchronous data transmission with decision feedback and apparatus for realising said method |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2460217C1 true RU2460217C1 (en) | 2012-08-27 |
Family
ID=46937974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2011131429/08A RU2460217C1 (en) | 2011-07-26 | 2011-07-26 | Method for synchronous data transmission with decision feedback and apparatus for realising said method |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2460217C1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002037743A1 (en) * | 2000-10-30 | 2002-05-10 | Nortel Networks Limited | Automatic request protocol based packet transmission using punctured codes |
RU2263405C1 (en) * | 2004-04-07 | 2005-10-27 | Гармонов Александр Васильевич | Method for synchronous data transfer with check communication and device for realization of said method |
RU2278471C2 (en) * | 2004-05-31 | 2006-06-20 | Корпорация "Самсунг Электроникс" | Method for directional transmission with check connection |
US7324590B2 (en) * | 2003-05-28 | 2008-01-29 | Qualcomm Incoporated | Equalizer with combined CCK encoding-decoding in feedback filtering of decision feedback equalizer |
-
2011
- 2011-07-26 RU RU2011131429/08A patent/RU2460217C1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002037743A1 (en) * | 2000-10-30 | 2002-05-10 | Nortel Networks Limited | Automatic request protocol based packet transmission using punctured codes |
US7324590B2 (en) * | 2003-05-28 | 2008-01-29 | Qualcomm Incoporated | Equalizer with combined CCK encoding-decoding in feedback filtering of decision feedback equalizer |
RU2263405C1 (en) * | 2004-04-07 | 2005-10-27 | Гармонов Александр Васильевич | Method for synchronous data transfer with check communication and device for realization of said method |
RU2278471C2 (en) * | 2004-05-31 | 2006-06-20 | Корпорация "Самсунг Электроникс" | Method for directional transmission with check connection |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100656982B1 (en) | Apparatus and method for decoding of portable internet mobile system | |
KR101323032B1 (en) | Method and appaeatus for multicasting with feedback information | |
KR101597733B1 (en) | Rate matching for a wireless communications system | |
CN111919406B (en) | System and method for HARQ retransmission using outer codes | |
EP2517361B1 (en) | Broadcast system with incremental redundancy transmitted over a unicast system | |
JP4703310B2 (en) | Communication method and communication system | |
RU2195768C2 (en) | Procedure preventing errors in multimedia system | |
KR100305352B1 (en) | method for adaptive hybrid ARQ using a concatenated FEC | |
US7475330B2 (en) | Method and apparatus for generating a punctured symbol vector for a given information vector | |
EP0054118A1 (en) | Improved go-back-N automatic repeat request communication systems | |
US8266488B2 (en) | Encoding and decoding systems with header and data transmission success indication | |
JP2003198502A (en) | Transmitting/receiving apparatus and method for packet retransmission in mobile communication system | |
KR20120016197A (en) | Method and equipment for rate matching | |
US8850283B2 (en) | HARQ procedure with processing of stored soft-bits | |
WO2009075508A1 (en) | Method and apparatus of communication using soft decision | |
EP2210360B1 (en) | Apparatus and method for decoding in mobile communication system | |
WO2007129358A1 (en) | Data transmission control method and transmitter apparatus | |
US20070162812A1 (en) | Decoding and reconstruction of data | |
CN107733551B (en) | Data transmission method, device and system | |
US8402338B2 (en) | Method of error control | |
CN101095303A (en) | Apparatus and method for transmitting and receiving a signal in a communication system | |
WO2002093820A1 (en) | Communicating method, transmitting apparatus, receiving apparatus, and communicating system including them | |
RU2460217C1 (en) | Method for synchronous data transmission with decision feedback and apparatus for realising said method | |
US20180351700A1 (en) | Convolutional code data sending method and apparatus | |
CN113366785B (en) | Communication transmitter for retransmitting MAC Protocol Data Units (MPDUs) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20130727 |