способ синхронной передачи данных с решающей обратной связью и устройство его осуществления
Классы МПК: | H04L1/12 с использованием обратных каналов |
Автор(ы): | Иванцов Олег Владимирович (RU), Ломакин Павел Олегович (RU), Семкин Сергей Николаевич (RU), Бочков Петр Вадимович (RU) |
Патентообладатель(и): | Государственное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) (RU) |
Приоритеты: |
подача заявки:
2011-07-26 публикация патента:
27.08.2012 |
Изобретение относится к радиотехнике, в частности к способу и устройству синхронной передачи дискретных данных с решающей обратной связью. Технический результат состоит в повышении пропускной способности системы передачи данных. Это достигается за счет снижения частоты сигналов запроса по каналу обратной связи, а следовательно, уменьшается время перерыва передачи информации. Снижение частоты перезапросов достигается за счет того, что в пакет кодовых символов вводится свертка информационной части пакета, а затем производится кодирование получившейся последовательности бит. Благодаря введенной свертке появляется возможность определить положение ошибки в пакете кодовых символов, а именно в информационной или избыточной части она произошла. 2 н.п. ф-лы, 4 ил.
Формула изобретения
1. Способ синхронной передачи данных с решающей обратной связью, заключающийся в том, что на передающей стороне разделяют сообщения на пакеты данных, производят свертку пакетов данных, затем кодируют получившиеся последовательности бит кодом, обнаруживающим ошибки, и кодом, исправляющим ошибки, образуя пакеты кодовых символов, каждый полученный пакет кодовых символов разбивают на группы кодовых символов и назначают очередность передачи групп кодовых символов, для каждого пакета кодовых символов из групп кодовых символов в соответствии с назначенной очередностью передачи формируют основную и уточняющие части пакета кодовых символов, при этом одни и те же группы кодовых символов могут одновременно входить в основную и в уточняющую части пакета кодовых символов; при наличии запросов на повторную передачу формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов таким образом, чтобы кадр кодовых символов содержал основную часть передаваемого пакета, ее свертку и уточняющую часть одного из предыдущих пакетов или только уточняющую часть одного из предыдущих пакетов, затем модулируют и передают сформированные кадры кодовых символов по каналу связи; на приемной стороне демодулируют принятый сигнал, формируют мягкие решения о кодовых символах для каждого пакета кодовых символов, части которого входят в принятый кадр кодовых символов, формируют свертку информационной части пакета кодовых символов, принятого из канала связи, объединяют мягкие решения о кодовых символах основной части и мягкие решения о кодовых символах всех принятых уточняющих частей данного пакета кодовых символов, после чего декодируют пакет кодовых символов и проверяют наличие ошибок в декодированном пакете; если пакет кодовых символов декодирован с ошибкой и свертка выявила ошибку, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой, если пакет кодовых символов декодирован с ошибкой, но свертка ошибку не выявила, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях, если пакет кодовых символов декодирован без ошибок, а свертка выявила ошибку, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой, если же пакет кодовых символов декодирован без ошибок и свертка ошибку не выявила, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии что они были сохранены при предыдущих декодированиях; на основании вынесенных решений формируют сигнал обратной связи и передают его в установленный момент времени на передающую сторону, если есть хотя бы один запрос на передачу уточняющей части пакета кодовых символов, при этом число невыполненных запросов не превышает наперед заданной величины, то на передающей стороне уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов, ее свертки и очередной уточняющей части первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой, в противном случае формируют следующий кадр только из очередных уточняющих частей первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой, при отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов с его сверткой, для этого уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов, ее свертки и фрагмента основной части следующего пакета, занимающего оставшуюся часть кадра кодовых символов, следующие кадры формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, наращивая объем данных, переданных с опережением, в случае приема пакета с ошибкой вместо очередных опережающих групп кодовых символов осуществляют уточняющую передачу групп кодовых символов для того пакета данных, в котором произошла ошибка при декодировании, отличающийся тем, что на передаче формируют свертку информационных групп пакета кодовых символов, после чего производится кодирование пакета кодовых символов, на приемной же стороне решение о наличии ошибки в информационных группах пакета кодовых символов выносится исходя из результатов декодирования пакета кодовых символов и сравнения свертки, пришедшей из канала связи и сформированной на приемной стороне.
2. Устройство синхронной передачи данных с решающей обратной связью содержит: передатчик, который содержит блок кодирования пакетов данных, ключ, блок памяти, блок управления, блок выбора пакетов кодовых символов для передачи, блок формирования частей пакетов кодовых символов для передачи и модулятор, при этом первый вход блока кодирования пакетов данных является первым входом передатчика и соответственно входом пакетов данных, второй вход блока кодирования пакетов данных соединен с первым выходом блока управления, вход которого является вторым входом передатчика и соответственно входом сигнала решающей обратной связи, второй выход блока управления соединен с первым входом блока памяти, второй вход которого соединен с выходом блока кодирования пакетов данных, третий выход блока управления соединен с первым входом ключа, четвертый выход блока управления соединен с вторым входом блока выбора пакетов данных для передачи, первый вход которого объединен с выходом блока памяти, пятый выход блока управления соединен с третьим входом блока формирования частей пакетов кодовых символов для передачи, первый и второй входы которого являются первым и вторым выходами блока выбора пакетов данных для передачи, соответственно, первый и второй выходы блока формирования частей пакетов кодовых символов для передачи соединены со вторым и третьим входами ключа, выход которого является входом модулятора, выход модулятора является выходом передатчика; приемник, который содержит демодулятор, ключ, первый и второй блоки памяти, первый и второй блоки декодирования, первый и второй блоки обнаружения ошибок в пакете кодовых символов, первый и второй блоки объединения частей пакетов кодовых символов и блок управления, при этом первый вход демодулятора является входом приемника, выход демодулятора соединен входом ключа, первый и второй выходы которого являются первыми входами первого и второго блоков объединения частей пакетов кодовых символов соответственно, вторые входы первого и второго блоков объединения частей пакетов кодовых символов соединены с первым и вторым выходами первого блока памяти, третьи входы первого и второго блоков объединения частей пакетов кодовых символов являются вторым и третьим выходами блока управления, выход первого блока объединения частей пакетов кодовых символов является первым входом первого блока декодирования и одновременно первым входом первого блока памяти, выход второго блока объединения частей пакетов кодовых символов является первым входом второго блока декодирования и одновременно вторым входом первого блока памяти, выход первого блока декодирования соединен с входом первого блока обнаружения ошибок в пакете кодовых символов и первым входом второго блока памяти, выход второго блока декодирования объединен с входом второго блока обнаружения ошибок в пакете кодовых символов и вторым входом второго блока памяти, третий вход которого является четвертым выходом блока управления, выходы первого и второго блоков обнаружения ошибок в пакете кодовых символов соединены с первым и вторым входами блока управления, соответственно, первый выход блока управления является вторым выходом приемника, по которому передаются сигналы решающей обратной связи, выход второго блока памяти является первым выходом приемника; отличающееся тем, что в передатчик введены блок формирования свертки пакетов кодовых символов, при этом первый и второй входы блока формирования свертки пакетов кодовых символов являются первым и вторым выходами блока выбора пакетов кодовых символов для передачи, шестой выход блока управления соединен с третьим входом блока формирования свертки пакетов кодовых символов, первый и второй выходы которого объединены с первым и вторым входами блока формирования частей пакетов кодовых символов для передачи, в приемник введены первый и второй блоки проверки свертки, при этом входы первого и второго блоков проверки свертки соединены соответственно с третьим и четвертым выходами ключа, выходы первого и второго блоков проверки свертки являются соответственно третьим и четвертым входами блока управления.
Описание изобретения к патенту
Изобретение относится к радиотехнике, в частности к способу и устройству синхронной передачи дискретных данных с решающей обратной связью.
Аналогом для заявляемого изобретения является изобретение WO 0237743 «Automatic Request Protocol Based Packet Transmission Using Punctured Codes», C1 H04L 1/18, опубликовано 10.05.2002.
Наиболее близким техническим решением к заявляемому изобретению является изобретение RU 02263405 «Способ синхронной передачи данных с решающей обратной связью и устройство его осуществления» H04L 1/12, опубликованное 27.10.2005.
Данный способ заключается в следующем:
На передающей стороне осуществляют разделение сообщения данных на пакеты данных, кодируют пакеты данных кодом, обнаруживающим ошибки, и кодом, исправляющим ошибки, образуя пакеты кодовых символов. Разбивают каждый полученный пакет кодовых символов на группы кодовых символов и назначают очередность передачи групп кодовых символов. Для каждого пакета кодовых символов из групп кодовых символов, в соответствии с назначенной очередностью передачи, формируют основную и уточняющие части пакета кодовых символов. При этом одни и те же группы кодовых символов могут одновременно входить в основную и в уточняющую части пакета кодовых символов. При наличии запросов на повторную передачу формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов таким образом, чтобы кадр кодовых символов содержал основную часть передаваемого пакета и уточняющую часть одного из предыдущих пакетов или только уточняющую часть одного из предыдущих пакетов. Модулируют и передают сформированные кадры кодовых символов по каналу связи. На приемной стороне демодулируют принятый сигнал, формируя мягкие решения о кодовых символах для каждого пакета кодовых символов, части которого входят в принятый кадр кодовых символов. Объединяют мягкие решения о кодовых символах основной части и мягкие решения о кодовых символах всех принятых уточняющих частей данного пакета кодовых символов. Декодируют пакет кодовых символов и проверяют наличие ошибок в декодированном пакете. Если пакет кодовых символов декодирован с ошибкой, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой. Если пакет кодовых символов декодирован без ошибок, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой при условии, что они были сохранены при предыдущих декодированиях. На основании вынесенных решений формируют сигнал обратной связи и передают его в установленный момент времени на передающую сторону. Если есть хотя бы один запрос на передачу уточняющей части пакета кодовых символов и, при этом число невыполненных запросов не превышает наперед заданной величины, то на передающей стороне уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и очередной уточняющей части первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой. В противном случае формируют следующий кадр только из очередных уточняющих частей первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой, отличающийся тем, что при отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов. Для этого уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, занимающего оставшуюся часть кадра кодовых символов, следующие кадры формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, наращивая таким образом объем данных, переданных с опережением, а в случае приема пакета с ошибкой вместо очередных опережающих групп кодовых символов осуществляют уточняющую передачу групп кодовых символов для того пакета данных, в котором произошла ошибка при декодировании.
Способ-прототип позволяет передавать данные с фиксированной скоростью 1 пакет/интервал передачи сообщения по каналу, где существует ненулевая вероятность пакетной ошибки.
Существенным недостатком данного способа является то, что ошибка в любой части кадра кодовых символов, как в информационной, так и в избыточной, влечет за собой передачу сигнала «запрос» по каналу решающей обратной связи, что вызывает простой системы передачи, а следовательно, снижение эффективности функционирования системы передачи.
Способ-прототип осуществляют при помощи следующих устройств: передатчик 1 и приемник 9, структурные схемы которых выполнены соответственно на фиг.1 и 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.
Приемник 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.
В передатчике 1 (фиг.1) на первый вход блока кодирования пакетов данных 2 поступают пакеты данных (предварительно разделенное сообщение данных на пакеты данных). На второй вход блока кодирования пакетов данных 2 поступает сигнал с первого выхода блока управления 5. В блоке кодирования пакетов данных 2 осуществляется кодирование пакетов данных кодом, обнаруживающим ошибки, и кодирование кодом, корректирующим ошибки. Выходной сигнал с блока кодирования пакетов данных 2 поступает на второй вход блока памяти 4. По этому сигналу в блоке памяти 4 записывается в память результат кодирования пакетов данных. Все пакеты записываются в блок памяти 4 в той очередности, в которой они поступают на второй его вход. Выбор пакета для передачи осуществляет блок выбора пакета кодовых символов для передачи 6. Данный блок подает на блок формирования частей пакетов кодовых символов для передачи 7 очередной пакет кодовых символов и следующий за ним пакет кодовых символов для обеспечения опережающей передачи при приходе сигнала «запрос» от корреспондента. Блок формирования частей пакетов кодовых символов для передачи 7 разделяет кодовую часть (избыточную часть пакета кодовых символов, образованную в блоке кодирования пакетов данных 2) на кодовые блоки, которые обеспечивают либо обнаружение ошибок, либо их исправление на приемной стороне, в зависимости от количества переданных кодовых блоков. Ключ 3 обеспечивает объединение частей пакетов кодовых символов, подаваемых с блока формирования частей пакетов кодовых символов для передачи 7, и таким образом формирует кадр кодовых символов для передачи по каналу связи. Модулятор 8 производит модуляцию кадров кодовых символов, поступающих с ключа 3, для дальнейшей передачи по каналу связи. Блок управления 5 обеспечивает прием сигнала «запрос» от корреспондента, определение количества перезапросов для одного пакета кодовых символов, и как следствие, порядок и очередность передачи пакетов кодовых символов. Кроме того, блок управления 5 обеспечивает согласованную работу всех составляющих частей передатчика 1.
В приемнике 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 происходит упорядочивание пакетов кодовых символов (расположение их в том же порядке, в котором они были переданы), перед выводом их из устройства.
Существенным недостатком данного способа является то, что ошибка в любой части кадра кодовых символов, как в информационной, так и в избыточной части, влечет за собой передачу сигнала «запрос» по каналу решающей обратной связи. Что вызывает простой системы передачи, а следовательно, снижение эффективности функционирования системы передачи.
Задача, которую решают заявляемый способ и устройство для его осуществления - это повышение пропускной способности системы передачи данных.
Поставленная задача решается тем, что способ синхронной передачи данных с решающей обратной связью, заключающийся в том, что:
- на передающей стороне осуществляют разделение сообщений данных на пакеты данных;
- кодируют пакеты данных кодом, обнаруживающим ошибки, и кодом, исправляющим ошибки, образуя пакеты кодовых символов;
- разбивают каждый полученный пакет кодовых символов на группы кодовых символов и назначают очередность передачи групп кодовых символов;
- для каждого пакета кодовых символов из групп кодовых символов в соответствии с назначенной очередностью передачи формируют основную и уточняющие части пакета кодовых символов, при этом одни и те же группы кодовых символов могут одновременно входить в основную и в уточняющую части пакета кодовых символов;
- формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов таким образом, чтобы при наличии запросов кадр кодовых символов содержал основную часть передаваемого пакета и уточняющую часть одного из предыдущих пакетов, или только уточняющую часть одного из предыдущих пакетов;
- модулируют и передают сформированные кадры кодовых символов по каналу связи;
- на приемной стороне демодулируют принятый сигнал;
- для каждого пакета кодовых символов, части которого входят в принятый кадр кодовых символов, объединяют мягкие решения о кодовых символах основной части и мягкие решения о кодовых символах всех принятых уточняющих частей данного пакета кодовых символов. Декодируют пакет кодовых символов, проверяют наличие ошибок в декодированном пакете;
- если пакет кодовых символов декодирован с ошибкой, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, кодированных с ошибкой;
- если пакет кодовых символов декодирован без ошибок, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях;
- на основании вынесенных решений формируют сигнал обратной связи и передают его в установленный момент времени на передающую сторону;
- если есть хотя бы один запрос на передачу уточняющей части пакета кодовых символов, и при этом число невыполненных запросов не превышает наперед заданной величины, то на передающей стороне уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и очередной уточняющей части первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой;
- в противном случае формируют следующий кадр только из очередных уточняющих частей первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой.
При отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов, для чего:
- уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, занимающего оставшуюся часть кадра кодовых символов;
- следующие кадры формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, наращивая таким образом объем данных, переданных с опережением.
В случае приема пакета с ошибкой вместо очередных опережающих групп кодовых символов осуществляют уточняющую передачу групп кодовых символов для того пакета данных, в котором произошла ошибка при декодировании.
При этом, если объем данных, переданных с опережением, достигнет наперед заданной величины, то следующие кадры формируют из не переданного остатка полной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.
Если объем данных достигнет величины, достаточной для самостоятельного декодирования, то его декодируют, и при декодировании без ошибки следующие кадры формируют из уменьшенной, по крайней мере, на одну группу кодовых символов основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.
Причем подтверждение по декодированию опережающей части передают в составе сигнала обратной связи вместо подтверждения по уточняющей части.
Поставленная задача решается за счет того, что в устройство синхронной передачи данных с решающей обратной связью, содержащее передатчик 1 и приемник 9, согласно изобретению введены:
- в передатчик - блок формирования свертки пакетов кодовых символов 21. При этом первый и второй входы блока формирования свертки пакетов кодовых символов 21 являются первым и вторым выходами блока выбора пакетов кодовых символов для передачи 7, шестой выход блока управления 5 соединен с третьим входом блока формирования свертки пакетов кодовых символов 21, первый и второй выходы которого соединены с первым и вторым входами блока формирования частей пакетов кодовых символов для передачи 7;
- в приемник - первый 22 и второй 23 блоки проверки свертки. При этом третий выход ключа 11 соединен с первым входом первого блока проверки свертки 22, выход которого является третьим входом блока управления 20. Четвертый выход ключа 11 объединен с первым входом второго блока проверки свертки 23, выход которого соединен с четвертым входом блока управления 20.
Сущность заявляемой группы изобретений заключается в том, что можно исключить перезапросы в тех случаях, когда ошибка произошла в кодовой части пакета кодовых символов благодаря введенной в пакет кодовых символов свертки информационной части.
Технический результат снижения числа требующихся перезапросов достигаете за счет следующих факторов:
при ошибке в пакете кодовых символов происходит определение ее положения, и лишь затем принимается решение о необходимости запроса уточняющей части.
Описание изобретений поясняется примерами выполнения и чертежами.
На фиг.1 выполнена структурная схема передатчика устройства-прототипа.
На фиг.2 выполнена структурная схема приемника устройства-прототипа.
На фиг.3 выполнена структурная схема передатчика заявляемого устройства синхронной передачи данных с решающей обратной связью.
На фиг.4 выполнена структурна схема приемника заявляемого устройства синхронной передачи данных с решающей обратной связью.
Заявляемое устройство синхронной передачи данных с решающей обратной связью (фиг.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.
Заявляемое устройство синхронной передачи данных с решающей обратной связью (фиг.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.
Осуществляют способ синхронной передачи данных с решающей обратной связью следующим образом:
- на передающей стороне осуществляют разделение сообщения данных на пакеты данных;
- формируют свертку информационной части пакета кодовых символов;
- кодируют пакеты данных кодом, обнаруживающим ошибки, и кодом, исправляющим ошибки, образуя пакеты кодовых символов;
- разбивают каждый полученный пакет кодовых символов на группы кодовых символов и назначают очередность передачи групп кодовых символов;
- для каждого пакета кодовых символов из групп кодовых символов, в соответствии с назначенной очередностью передачи, формируют основную и уточняющие части пакета кодовых символов, при этом одни и те же группы кодовых символов могут одновременно входить в основную и в уточняющую части пакета кодовых символов;
- формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов таким образом, что при наличии перезапросов кадр кодовых символов содержал основную часть передаваемого пакета и уточняющую часть одного из предыдущих пакетов, или только уточняющую часть одного из предыдущих пакетов, а также свертку информационной части очередного или следующего пакета кодовых символов;
- модулируют и передают сформированные кадры кодовых символов по каналу связи;
- на приемной стороне демодулируют принятый сигнал;
- для каждого пакета кодовых символов, части которого входят в принятый кадр кодовых символов, объединяют мягкие решения о кодовых символах основной части и мягкие решения о кодовых символах всех принятых уточняющих частей данного пакета кодовых символов, декодируют пакет кодовых символов и проверяют наличие ошибок в декодированном пакете;
- производится свертка информационной части пакета кодовых символов, пришедшего из канала связи, и сравнение результата свертки с той, которая была принята;
- если пакет кодовых символов декодирован с ошибкой, и результат свертки показывает, что произошла ошибка, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой;
- если пакет кодовых символов декодирован с ошибкой, а результат свертки показывает, что ошибки нет, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях;
- если пакет кодовых символов декодирован без ошибок и результат свертки показывает, что ошибки нет, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях;
- если пакет кодовых символов декодирован без ошибок, а результат свертки показывает, что произошла ошибка, то выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой. В этом случае считается, что в декодере произошла ошибка второго рода, т.е. в канале связи произошла ошибка такой конфигурации, что декодер не смог ее распознать;
- на основании вынесенных решений формируют сигнал обратной связи и передают его в установленный момент времени на передающую сторону;
- если есть хотя бы один запрос на передачу уточняющей части пакета кодовых символов и, при этом число невыполненных запросов не превышает наперед заданной величины, то на передающей стороне уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр из уменьшенной основной части очередного пакета кодовых символов и очередной уточняющей части первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой;
- в противном случае формируют следующий кадр только из очередных уточняющих частей первого пакета кодовых символов из очереди пакетов, декодированных с ошибкой;
- при отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов, для чего:
- уменьшают основную часть очередного пакета кодовых символов и формируют следующий кадр уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, занимающего оставшуюся часть кадра кодовых символов;
- следующие кадры формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета, наращивая объем данных, переданных с опережением.
При этом, если объем данных, переданных с опережением, достигнет наперед заданной величины, то следующие кадры формируют из не переданного остатка полной основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.
Если объем данных достигнет величины, достаточной для самостоятельного декодирования, то его декодируют, и при декодировании без ошибки следующие кадры формируют из уменьшенной, по крайней мере, на одну группу кодовых символов основной части очередного пакета кодовых символов и фрагмента основной части следующего пакета.
Причем подтверждение по декодированию опережающей части передают в составе сигнала обратной связи вместо подтверждения по уточняющей части.
Рассмотрим подробнее реализацию заявляемого способа на устройстве синхронной передачи данных с решающей обратной связью, структурная схема приведена на фигурах 3 и 4.
На передающей стороне осуществляют разделение сообщения данных на пакеты данных, используя для этого, например, коммутатор пакетов физического уровня, работающий в соответствии со стандартом ВОС (Reference Model for Open Systems Interconnection. - RM-OSI/ITU-T X.200 (1994); ISOAEC 7498. - 1, 2, 3, 4:1994).
По сигналу управления (шина) с шестого выхода блока управления 5 в блоке формирования свертки пакетов кодовых символов 21 происходит получение свертки пакетов данных.
По сигналу управления (шина) с первого выхода блока управления 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.
Разбивают каждый запомненный пакет кодовых символов на равные группы кодовых символов и назначают очередность передачи групп кодовых символов в соответствии с одним из известных способов, например (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.
В первый кадр кодовых символов включают только основную часть первого пакета кодовых символов или возможен вариант, при котором кодировать начинают заранее, обеспечивая тем самым, достаточную длину очереди пакетов кодовых символов к передаче, и первый кадр кодовых символов состоит из уменьшенной основной части первого пакета и опережающей части следующего за ним пакета при наличии данного пакета в очереди пакетов кодовых символов к передаче.
Выбор пакетов для передачи осуществляется блоком выбора пакетов кодовых символов для передач 6, который в соответствии с базовым адресом в блоке памяти 4, полученным от блока управления 5, определяет необходимое смещение адресов и запоминает расположение выбранных блоков в блоке памяти 4 и переписывает выбранные пакеты в память блока 6.
Для каждого из выбранных пакетов кодовых символов в соответствии с назначенной очередностью передачи групп кодовых символов формируют основную и уточняющие части пакета кодовых символов, а также свертку информационных групп пакета кодовых символов, выделяя, таким образом, HARQ-2 блоки и запоминая адреса, по которым они расположены в блоке памяти 4 и внутренней памяти блока выбора пакетов кодовых символов для передачи 6 и переписывая выбранные части в память блока 7, отмечая при этом количество осуществленных передач для каждой из выбранных групп кодовых символов.
Если все части пакета кодовых символов помечены как переданные, то формируют дополнительную уточняющую часть пакета кодовых символов, циклический повтор последовательности групп кодовых символов в соответствии с ранее назначенной очередностью, инкрементируя при этом счетчик передач каждой группы в блоке формирования частей пакетов кодовых символов для передачи 7.
В блоке 7 формируют кадры кодовых символов, включая в каждый кадр разные части разных пакетов кодовых символов путем мультиплексирования ключом 3, в соответствии с последовательностью принятых подтверждений о приеме предыдущих пакетов, таким образом, что при наличии невыполненных запросов на уточняющую передачу не больше чем N пакетов формируют следующий кадр кодовых символов из уменьшенной на, по меньшей мере, одну группу кодовых символов основной части очередного пакета, полученного от блока выбора пакетов кодовых символов к передаче и, по меньшей мере, одной группы из уточняющей части для пакета кодовых символов, переданного ранее остальных пакетов, для которых есть запрос о передаче дополнительных кодовых символов и которые формируют очередь передаваемых пакетов кодовых символов в блоке памяти 4, выбор которого осуществляют в блоке выбора пакетов кодовых символов для передачи 6.
При наличии запросов на уточняющую передачу больше чем N пакетов формируют следующий кадр кодовых символов из групп уточняющей части или дополнительной уточняющей части для пакета, переданного ранее остальных пакетов, для которых есть запросы на уточняющую передачу, выбор которого осуществляют в блоке выбора пакетов кодовых символов для передачи 6.
Одновременно по сигналу с блока управления 5 очередной пакет данных кодируют в блоке кодирования пакетов данных 2 и запоминают в блоке памяти 4, наращивая, таким образом, очередь пакетов кодовых символов к передаче в блоке памяти 4.
Пакеты кодовых символов, основная часть которых вошла в кадр кодовых символов, переводят из очереди пакетов кодовых символов к передаче в блоке памяти 4 в очередь передаваемых пакетов кодовых символов в блоке памяти 4. Операцию выполняет блок выбора пакетов кодовых символов для передачи 6. Операция может быть выполнена путем запоминания в блоке выбора пакетов для передачи 6 разделяющего адреса в блоке памяти 4 таким образом, что адреса пакетов, меньших, чем запомненный адрес, определяются как пакеты кодовых символов к передаче, а пакеты, чей адрес больше, определяются как передаваемые пакеты или выполняют операции вместо физических адресов со ссылками на эти адреса (Кнут, "Искусство программирования", издательство "Вильямс", 2002 г., 720 стр.) или каким-либо другим из известных методов управления памятью.
Пакеты кодовых символов, для которых получено подтверждение о приеме, удаляют из очереди передаваемых пакетов, после чего осуществляют перераспределение расположения пакетов кодовых символов или ссылок на них в памяти.
При отсутствии невыполненных запросов на передачу уточняющей части какого-либо из пакетов кодовых символов осуществляют опережающую передачу основной части следующего пакета кодовых символов, если такой пакет есть в очереди пакетов к передаче, его наличие определяется блоком выбора пакетов кодовых символов для передачи 6.
В блоке формирования частей пакетов кодовых символов для передачи 7 уменьшают основную часть очередного пакета кодовых символов, по меньшей мере, на одну группу кодовых символов.
В блоке формирования частей пакетов кодовых символов для передачи 7 формируют опережающую часть данного пакета кодовых символов из фрагмента основной части данного пакета кодовых символов, выделяя в ней, по меньшей мере, одну группу кодовых символов в соответствии с заданной очередностью.
В блоке формирования частей пакетов кодовых символов для передачи 7 формируют следующий кадр кодовых символов путем мультиплексирования из уменьшенной основной части очередного пакета кодовых символов и опережающей части следующего пакета из очереди пакетов кодовых символов к передаче, который занимает оставшуюся часть кадра кодовых символов.
В блоке формирования частей пакетов кодовых символов для передачи 7 при наличии подтверждения о приеме пакета по сигналу с пятого выхода блока управления 5 формируют следующие кадры кодовых символов путем мультиплексирования. Кадры кодовых символов формируют из не переданного остатка уменьшенной основной части очередного пакета кодовых символов и увеличенной, по меньшей мере, на одну группу кодовых символов опережающей части следующего пакета кодовых символов из очереди пакетов к передаче, наращивая, таким образом, объем данных, переданных с опережением.
В блоке 8 модулируют кадры кодовых символов и передают сформированные кадры кодовых символов по каналу связи.
Приемник 25 (фиг.4) принимает сигнал, который поступает на вход демодулятора 10. В блоке демодуляции 10 демодулируют принятый сигнал, формируя мягкие решения о кодовых символах.
В первом блоке объединения частей пакета кодовых символов 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.
Во втором блоке объединения частей пакетов кодовых символов 17 объединяют мягкие решения о кодовых символах всех принятых частей каждого пакета кодовых символов, части которого вошли в принятый кадр кодовых символов, если в составе принятого кадра была уточняющая или опережающая часть этого пакета, и запоминают результат объединения в первом блоке памяти 15.
В первом блоке декодирования 13 декодируют пакет кодовых символов, который был сформирован в первом блоке объединения частей пакетов кодовых символов 12, и запоминают его во втором блоке памяти 16. В первом блоке обнаружения ошибок в пакете кодовых символов 14 проверяют наличие ошибок в декодированном в блоке 13 пакете кодовых символов и передают результаты проверки на первый вход блока управления 20, который определяет пакет данных, готовый к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.
Во втором блоке декодирования 18 декодируют пакет кодовых символов, который был сформирован во втором блоке объединения частей пакетов кодовых символов 17, и запоминают его во втором блоке памяти 16.
Во втором блоке обнаружения ошибок в пакете кодовых символов 19 проверяют наличие ошибок в декодированном в блоке 18 пакете кодовых символов и передают результаты проверки на второй вход блока управления 20, который определяет пакет данных, готовый к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.
В первом блоке проверки свертки 22 происходит формирование свертки информационных групп пакета кодовых символов и сравнение полученного результата с той сверткой, которая пришла в составе пакета кодовых символов. Результат сравнения подается на третий вход блока управления 20, который выносит решение о том, что пакет данных готов к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.
Во втором блоке проверки свертки 23 происходит формирование свертки информационных групп пакета кодовых символов и сравнение полученного результата с той сверткой, которая пришла в составе пакета кодовых символов. Результат сравнения подается на четвертый вход блока управления 20, который выносит решение о том, что пакет данных готов к выходу во втором блоке памяти 16. Пакет данных готов к выходу, если не существует ошибочно декодированных пакетов, которые передавались раньше, чем вышеуказанный пакет. Таким образом, осуществляется операция выравнивания декодированных данных во втором блоке памяти 16.
Если в первом блоке декодирования 13 пакет кодовых символов декодирован с ошибкой и в первом блоке проверки свертки 22 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован с ошибкой и во втором блоке проверки свертки 23 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.
Если в первом блоке декодирования 13 пакет кодовых символов декодирован с ошибкой, а в первом блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован с ошибкой, а во втором блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.
Если в первом блоке декодирования 13 пакет кодовых символов декодирован без ошибок, а в первом блоке проверки свертки 22 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован без ошибок, а во втором блоке проверки свертки 23 обнаружена ошибка, выносят решение о запросе очередной уточняющей части пакета кодовых символов данного пакета и запоминают мягкие решения о кодовых символах этого пакета, формируя очередь пакетов, декодированных с ошибкой в первом блоке памяти 15.
Если в первом блоке декодирования 13 пакет кодовых символов декодирован без ошибок и в первом блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.
Если во втором блоке декодирования 18 пакет кодовых символов декодирован без ошибок и во втором блоке проверки свертки 22 ошибок не обнаружено, то выносят решение о подтверждении приема этого пакета и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов, декодированных с ошибкой, при условии, что они были сохранены при предыдущих декодированиях в первом блоке памяти 15.
Если во втором блоке декодирования 18 объем данных, переданных с опережением, достаточен для декодирования, то его декодируют независимо при отсутствии ошибок на приемной стороне и удаляют мягкие решения о кодовых символах данного пакета из очереди пакетов в первом блоке памяти 15. Декодированные данные сохраняют во втором блоке памяти 16 по результатам проверки во втором блоке обнаружения ошибок в пакете кодовых символов 19 и во втором блоке проверки свертки 23. Блок управления 20 формирует и отправляет сигнал подтверждения для данного пакета кодовых символов по обратному каналу. При получении данного подтверждения на передающей стороне блок управления 5 формирует соответствующий сигнал, по которому удаляют данный кадр из очереди пакетов кодовых символов к передаче в блоке памяти 4. Если во втором блоке декодирования 18 объем данных, переданных с опережением, недостаточен дл декодирования, на передающей стороне при передаче остальных пакетов кодовых символов опережающую часть каждого следующего пакета кодовых символов наращивают, пока объем этой части не достигнет заданной величины. После чего следующие кадры формируют из не переданного остатка полной основной части очередного пакета кодовых символов и такой же опережающей части следующего пакета из очереди пакетов к передаче в блоке формирования частей пакетов кодовых символов для передачи 7 путем мультиплексирования ключом 3.
Блок управления 20 на приемной стороне (в приемнике 25) на основании вынесенных решений первым 14 и вторым 19 блоками обнаружения ошибок в пакете кодовых символов и первым 22 и вторым 23 блоками проверки свертки формирует сигнал обратной связи и передает его в установленный момент времени на передающую сторону (передатчик 24), причем сигнал обратной связи является сложным, т.е. несет в себе информацию о решениях по каждому из блоков обнаружения ошибок в пакете кодовых символов.
Блок управления 20 в приемнике при наличии подтверждения успешного декодирования опережающей части, которое получено во втором блоке обнаружения ошибок в пакете кодовых символов 19, формирует сложный сигнал обратной связи таким образом, что решение по опережающей части передают вместо решения по уточняющей части, запроса на передачу которой фактически не было.
На практике передатчик 24 и приемник 25 могут быть реализованы на цифровом процессоре и программируемой логической интегральной схеме, либо может быть осуществлена смешанная реализация на двух вышеупомянутых устройствах.
Таким образом, за счет определения места ошибки в пакете кодовых символов и принятия решения о необходимости запроса повторной передачи удается сократить число перезапросов при синхронной передаче сообщения данных, разделенных на пакеты данных с решающей обратной связью, повышая тем самым пропускную способность системы передачи данных в целом.
Класс H04L1/12 с использованием обратных каналов