СПОСОБ И УСТРОЙСТВО БЕСПРОВОДНОЙ СВЯЗИ
WIRELESS COMMUNICATION METHOD AND DEVICE

Предпосылки создания изобретения
Предложены или реализованы разнообразные технологии беспроводного доступа, позволяющие станциям мобильной связи выполнять обмен данными с другими станциями мобильной связи или с проводными терминалами, подключенными к проводным сетям. Среди примеров технологий беспроводного доступа - технологии GSM (глобальная система мобильной связи) и UMTS (универсальная мобильная телекоммуникационная система), определенные проектом "Партнерство 3-го поколения" (3GPP), а также технологии CDMA 2000 (многостанционный доступ с кодовым разделением каналов), определенные 3GPP2. CDMA 2000 определяет один из видов сети мобильной связи с коммутацией пакетов, называемой сетью мобильной связи HRPD (высокоскоростной пакетной передачи данных).
Среди более поздних стандартов сетей мобильной связи с коммутацией пакетов следующие примеры: стандарт 802.16 (WiMAX) MKKTT (Института инженеров электротехники и электроники); и стандарт Long Term Evolution (долговременная эволюция, LTE) от 3GPP, являющийся расширением технологии UMTS. Стандарт LTE называют также стандартом EUTRA (развитая универсальная наземная абонентская радиосвязь).
Сущность изобретения
В соответствии с некоторыми вариантами осуществления изобретения, уровень приема устройства беспроводной связи принимает определенный блок данных. Уровень приема обнаруживает, что предыдущий блок данных, предшествовавший по порядку упомянутому определенному блоку данных, еще не получен. В ответ на обнаружение этого факта запускается таймер с периодом работы, который изменяется в зависимости от параметра, связанного с приемом упомянутого определенного блока данных. По истечении периода работы таймера уровень приема генерирует индикацию ошибки.
Краткое описание чертежей
Приведено описание нескольких вариантов осуществления с использованием следующих чертежей:
Фиг.1 представляет собой блок-схему примерных устройств беспроводной связи, которые включают в себя некоторые варианты осуществления изобретения;
Фиг.2 схематически иллюстрирует передачу блоков данных между передатчиком и приемником через среду передачи данных;
Фиг.3А-3В схематически иллюстрируют прием блоков данных уровнями приема в устройстве беспроводной связи с использованием динамического таймера в соответствии с некоторыми вариантами осуществления;
Фиг.4 представляет собой блок-схему процесса, отвечающего за прием блока данных, в соответствии с некоторыми вариантами осуществления; и
Фиг.5 представляет собой блок-схему процесса обработки истечения периода работы таймера переупорядочивания в соответствии с некоторыми вариантами осуществления.
Подробное описание изобретения
В устройствах беспроводной связи, способных взаимодействовать друг с другом в сети беспроводной связи, определены различные уровни для реализации различных протоколов, связанных с беспроводной связью. Как показано на Фиг.1, в качестве примера, устройства беспроводной связи включают в себя станцию мобильной связи 102 и базовую станцию 104. Среди примеров станций мобильной связи 102 - мобильный телефон, карманный персональный компьютер (КПК), портативный компьютер, встроенное устройство, например, дозиметр, персональное устройство сигнализации об опасности или другие устройства. Базовая станция 104 может представлять собой устройство любого вида, подключенное к сети мобильной связи для организации беспроводной связи со станцией мобильной связи. Например, базовая станция 104 может включать в себя базовую станцию сети сотовой связи, точку доступа любой беспроводной сети или любой другой беспроводной приемопередатчик. Термин "базовая станция" может также охватывать соответствующий контроллер, например, контроллер базовой станции или контроллер сети радиосвязи. Термин "базовая станция" относится также к базовой станции или точке доступа фемтосоты, микросоты или пикосоты. В более частном примере, базовая станция может входить в сеть абонентской связи EUTRA (развитая универсальная наземная абонентская радиосвязь) или сеть беспроводной связи другого типа.
В примере, показанном на Фиг.1, различные уровни протоколов станции мобильной связи 102 включают в себя физический уровень 106, уровень MAC (управление доступом к среде) 108, уровень RLC (управление каналом радиосвязи) 110 и верхние уровни 112. Физический уровень 106 используется для реализации физического интерфейса по каналу беспроводной связи с базовой станцией 104. Уровень MAC 108 предоставляет механизмы адресации и управления доступом к каналу. Уровень RLC 110 отвечает за исправление ошибок и управление передачей по каналу беспроводной связи. Верхние уровни 112 реализуют другие протоколы, которые используются для беспроводного обмена данными между станцией мобильной связи 102 и базовой станцией 104. Кроме того, верхние уровни 112 также могут включать в себя прикладное программное обеспечение.
Базовая станция 104 аналогичным образом содержит физический уровень 114, уровень MAC 116, уровень RLC 118 и верхние уровни 120.
Кроме того, станция мобильной связи 102 включает в себя один или несколько процессоров 122, которые подключены к накопителю 124. Аналогичным образом, базовая станция 104 включает в себя один или несколько процессоров 126, которые подключены к накопителю 128. Накопитель 124 или 128 может быть реализован на основе дисков, интегральных схем или полупроводников.
Уровень RLC 110 или 118 может быть сконфигурирован для передачи данных в различных режимах, включая прозрачный режим, режим без подтверждения или режим с подтверждением. В режиме с подтверждением уровень RLC приема может передавать пакеты о состоянии обратно на уровень RLC передачи, чтобы обозначить наличие ошибок при приеме пакетов по каналу беспроводной связи. "Пакетом" называется любой блок данных, который может передаваться между базовой станцией 104 и станцией мобильной связи 102, где блок данных может содержать управляющую информацию или данные о радиоканале. В этом рассмотрении термины "пакет" и "блок данных" взаимозаменяемы.
Уровень RLC, реализующий режим с подтверждением, может выполнять повторную передачу ARQ (запрос автоматической повторной передачи), при этом уровень RLC приема сообщает уровню RLC передачи об ошибке в приеме блока данных. HARQ (гибридный ARQ) отличается от ARQ тем, что HARQ добавляет к передаваемым данным биты избыточности для исправления ошибок (FEC).
В режиме с подтверждением увеличиваются задержки при передаче пакетов между устройствами беспроводной связи из-за повторных передач ARQ. Обычно уровень RLC приема снабжается таймером переупорядочивания, чтобы уровень RLC приема мог ожидать пропущенный пакет заданное время до того, как сгенерирует отчет о состоянии обратно на уровень RLC передачи, чтобы сообщить о неполучении пакета. Однако, поскольку обычные таймеры переупорядочивания используют фиксированные периоды работы, может упасть производительность, если таймер переупорядочивания заставит уровень RLC приема ждать передачи отчета о состоянии на уровень RLC передачи слишком долго.
В соответствии с некоторыми вариантами осуществления, как показано на Фиг.1, используется динамический таймер переупорядочивания. На Фиг.1 уровень RLC 110 в станции мобильной связи 102 включает в себя динамический таймер переупорядочивания 130 и соответствующие схемы управления 132. Уровень RLC 118 в базовой станции 104 аналогичным образом включает в себя динамический таймер переупорядочивания 134 и соответствующие схемы управления 136. В динамическом таймере переупорядочивания 130 или 134 период работы динамического таймера можно задавать динамически (переменным образом), таким образом, период работы становится переменным в зависимости от приема пакета. В некоторых вариантах осуществления параметр, от которого зависит динамический период работы таймера переупорядочивания - это параметр, представляющий количество передач пакета до успешного приема пакета уровнем RLC. Подробнее динамическое задание периода работы динамического таймера переупорядочивания рассматривается ниже.
Обобщенное функционирование таймера переупорядочивания рассматривается в связи с примером, показанным на Фиг.2. Между передатчиком и приемником существует среда передачи 202. На одной стороне среды передачи находится передатчик (ТХ), на другой стороне среды передачи находится приемник (RX). Передатчик может представлять собой станцию мобильной связи 102 или базовую станцию 104, приемник может представлять собой станцию мобильной связи 102 или базовую станцию 104. Передатчик включает в себя уровень RLC передачи (RLC ТХ) и передающий уровень MAC (MAC ТХ), приемник включает в себя принимающий уровень MAC (MAC RX) и уровень RLC приема (RLC RX).
В примере, показанном на Фиг.2, уровень RLC передачи выполняет передачу пакетов SN1 и SN2. Пакеты SN1 и SN2, переданные уровнем RLC передачи, передаются с помощью передающего уровня MAC. В примере, показанном на Фиг.2, передающий уровень MAC сначала передает пакет SN1 в течение интервала времени передачи 1 (TT11). Передающий уровень MAC передает пакет SN2 в течение TTI 2. Следует отметить, что для удобства понимания на Фиг.2 штриховки для SN1 и для SN2 различны. Пакеты SN1 и SN2 передаются посредством среды передачи 202 (например, канала беспроводной связи между станцией мобильной связи 102 и базовой станцией 104) для приема принимающим уровнем MAC. Принимающий уровень MAC распространяет полученный пакет на уровень RLC приема.
В примере, показанном на Фиг.2, предполагается, что уровень RLC приема не выполнил успешного приема пакетов SN1 и SN2, которые были переданы в течение TTI 0 и 1. Поскольку пакеты SN1 и SN2, переданные в течение TTI 0 и 1, не были успешно получены уровнем RLC приема, пакеты SN1 и SN2 повторно передаются в течение, соответственно, TTI 8 и 9. В примере, показанном на Фиг.2, предполагается, что пакет SN2, переданный в течение TTI 9, был успешно получен на уровне RLC приема. Однако, хотя пакет SN2 был получен, предыдущий пакет (SN1, который следует по порядку ранее SN2), не был еще получен уровнем RLC приема. После обнаружения несвоевременной доставки таймер переупорядочивания запускается в течение TTI 9. Однако обычно период работы этого таймера переупорядочивания является статическим и определяется следующим образом:
Таймер переупорядочивания=К*Максимальное число передач HARQ, (Ур.1)
где К представляет собой количество процессов HARQ, поддерживаемых уровнем MAC, а Максимальное число передач HARQ представляет собой максимальное число передач, которые может выполнить механизм HARQ. Предположим, что К=8, а Максимальное число передач HARQ равно 6, тогда статический период работы для таймера переупорядочивания задается в течение TTI 48. При обычном статическом значении таймера переупорядочивания, если пакет SN1 не принимается без ошибок после всех дальнейших повторных передач с передающего уровня MAC (в примере, показанном на Фиг.2 - в течение TTI 16, TTI 24, TTI 32 и TTI 40), то период работы таймера переупорядочивания закончится в течение TTI 57, рассчитанного как TTI 9+TTI 48=TTI 57). Однако следует отметить, что при использовании обычного статического таймера переупорядочивания, задержка в отправке отчета об ошибке по истечении периода работы таймер переупорядочивания в течение ТТI 57 может быть относительно большой (другими словами, задержка отправки отчета об ошибке из-за ошибки приема пакета может быть относительно большой).
В примере, показанном на Фиг.2, хотя последняя повторная передача SN1 была в течение TTI 40, отчет о состоянии не был отправлен обратно с уровня RLC приема на уровень RLC передачи до TTI 57 - задержка 17 TTI.
В соответствии с некоторыми вариантами осуществления, вместо того, чтобы использовать статический таймер переупорядочивания, для которого задается статический период работы, применяется динамический таймер переупорядочивания, где период работы задается динамически. На самом деле, период работы таймера переупорядочивания можно динамически настраивать на основе заранее заданного(ых) условия(ий), позволяющих уменьшить задержку отчета в случае ошибки приема пакета. В некоторых вариантах осуществления данное заранее заданное условие представлено параметром, который соответствует количеству передач HARQ пакета на уровне MAC до успешного приема на уровне RLC приема.
В общем случае, если прием пакета RLC SNx осуществляется при N передачах (N≥1), любой предшествующий, но не полученный, пакет SNx-1 претерпел, по меньшей мере, N передач. Это утверждение верно для любой системы, где используется синхронная передача на уровне MAC. Например, в случае, показанном на Фиг.2, где передача пакета SN1 начинается в течение TTI 0. Пакет SN2 может быть передан не ранее TTI 1. Передача SN2 может быть задержана и начаться, например, в течение TTI 10. В этом случае, пока завершается первая передача SN2, может завершиться вторая передача SN1. Следовательно, произошло не меньше передач SN1, чем передач SN2.
Однако алгоритм в соответствии с некоторыми вариантами осуществления не ограничивается такими синхронными системами. Данный принцип может также применяться к системам, в которых используется асинхронный HARQ, где повторные передачи пакета планируются на основе FIFO ("первый пришел - первый ушел").
Для динамической настройки периода работы таймера переупорядочивания (130 или 134 на Фиг.1) уровень MAC предоставляет параметр SNx_RX_Number, которое обозначает количество передачи HARQ, которое потребовалось для успешной передачи пакета. SNx_RX_Number передается на уровень RLC. После этого уровень RLC динамически рассчитывает динамический период работы таймера следующим образом:
x
Таймер переупорядочивания=К*(Максимальное число передач HARQ (Ур.2) - SN_RX_Number).
Количество битов, используемых для представления SNx_RX_Number, связано с максимальным возможным числом передач HARQ. Таким образом, например, если максимальное число передач HARQ равно 8, то количество битов, используемых для представления SNx_RX_N umber, должно быть равно 3. Более обобщенно, количество битов, используемых для представления SNx_RX_Number, вычисляется как lоg2 (Максимальное число передач HARQ).
Пояснение работы динамического таймера переупорядочивания (130 или 134) приведено с использованием Фиг.3А. На Фиг.3А показан прием пакетов SN1 и SN2 на принимающем уровне MAC. Как в примере, показанном на Фиг.2, в ответ на пакет SN2, повторно переданный в течение TTI 9, принимающий уровень MAC успешно принял пакет SN2 без приема пакета SN1. Пакет SN2 был успешно передан уровнем MAC на уровень RLC приема во время второй передачи, которая соответствовала TTI 9. В примере, показанном на Фиг.3А, в ответ на успешный прием пакета SN2 принимающим уровнем MAC в ходе второй передачи, принимающий уровень MAC устанавливает значение SNx_RX_Number, равное 2, и сообщает значение SNx_RX_Number уровню RLC приема. На основании Ур.2 уровень RLC приема рассчитывает период работы таймера переупорядочения следующим образом, если К равно 8, а Максимальное число передач HARQ равно 6:
Таймер переупорядочивания=8*(6-2)=32 TTI.
Таймер переупорядочивания запускается в течение TTI 9 (по получении пакета SN2 уровнем RLC приема). Если пакет SN1 не принят без ошибок после всех передач, динамический таймер переупорядочивания закончит работу в течение TTI 9+TTI 32=TTI 41, поскольку последняя передача SN1 происходит в течение TTI 40. Когда период работы таймера переупорядочивания заканчивается в течение TTI 41, уровень RLC приема может немедленно инициировать передачу отчета обратно на уровень RLC передачи, при этом отчет об ошибках сообщает, что пакет SN1 не был успешно получен.
В примере, приведенном на Фиг.3А, можно увидеть, что отчет о состоянии передан обратно на уровень RLC передачи с меньшей задержкой, чем при использовании методики статического таймера переупорядочивания.
Другой пример показан на Фиг.3В, где наблюдается несколько разрывов (gaps) при приеме пакетов (разрыв для пропущенного пакета SN1 перед SN2, и разрыв для пропущенного пакета SN3 между SN2 и SN4). После успешного приема пакета SN2 без приема предыдущего пакета SN1 производится запуск динамического таймера переупорядочивания, при этом период работы динамически задается вышеописанным образом, как в примере, связанном с Фиг.3А. Однако, пока таймер переупорядочивания для пакета SN1 работает, возможно создание другого разрыва, который в примере, показанном на Фиг.3В, представляет собой разрыв, порождаемый тем, что пакет SN3 не принят на уровне RLC приема, хотя позже пакеты SN4 и SN5 получены уровнем RLC приема. Пакет SN4 был принят после одной передачи, тогда как пакет SN5 был принят после двух передач. Хотя период работы таймера переупорядочивания для пакета SN1 истекает либо происходит остановка таймера в связи с успешным приемом пакета SN1, уровень RLC приема перемещает окно приема и "видит" другой разрыв (в этом случае - разрыв между SN2 и SN4).
В результате уровень RLC приема повторно запускает динамический таймер переупорядочивания, при этом уровень RLC приема рассчитывает динамический период работы таймера с использованием Ур.2 следующим образом:
Таймер переупорядочивания=8*(6-2)=32 TTI.
В этом случае используется SNx_RX_Number последнего успешно принятого пакета, в данном случае - пакета SN5. Если предположить, что период работы таймера разрыва SN1 закончится в течение TTI 41, а таймер для разрыва SN3 запущен в течение TTI 41, если пакет SN3 не принят без ошибок после всех передач, то период работы таймера переупорядочивания для разрыва SN3 закончится в течение TTI 41+TTI 32=TTI 73. Последняя передача пакета SN3 происходит в течение TTI 47 - следовательно, уровень RLC приема может немедленно инициировать передачу отчета в течение TTI 73.
Фиг.4 представляет собой блок-схему процесса, выполняемого в ответ на прием блока (или пакета) данных. Процесс, показанный на Фиг.4, может быть выполнен управляющей схемой 132 или 136, Фиг.1 (и/или другой управляющей схемой). Когда получен новый блок данных (в т.402), уровень RLC приема определяет (в т.404), по порядку ли принят блок данных (например, предшествующий блок данных в последовательности не был получен). Если принятый блок данных пришел по порядку, то выполняется нормальная обработка.
Однако, если обнаружено, что принятый блок данных получен не по порядку, то уровень RLC приема определяет (в т.406), работает ли уже таймер переупорядочивания. Если нет, таймер переупорядочивания запускается (в т.408) с динамически заданным периодом работы, например, в соответствии с вышеприведенным Ур.2.
Если таймер переупорядочивания уже работает, как определено в т.406, уровень RLC приема определяет (в т.410), был ли принят пропущенный блок данных. Если нет, происходит возврат процесса. Однако, если уровень RLC приема определяет, что был принят пропущенный блок данных, тогда таймер переупорядочивания останавливается (в т.412).
Фиг.5 представляет собой блок-схему процесса обработки истечения периода работы таймера переупорядочивания. По обнаружении (в т.502) истечения периода работы таймера переупорядочивания уровень RLC приема генерирует (в т.504) отчет о состоянии, сообщающий о неудаче приема блока данных. Этот отчет о состоянии передается обратно уровню RLC передачи по каналу беспроводной связи.
Затем уровень RLC приема определяет (в т.506), пропущен ли другой блок данных. Если нет, таймер переупорядочивания останавливается (в т.508). Однако, если пропущен другой блок данных, как, например, в сценарии, показанном на Фиг.3В, таймер переупорядочивания повторно запускается (в т.510) с динамически задаваемым периодом работы, например, в соответствии с Ур.2.
В качестве дополнительной оптимизации можно передавать отчет о состоянии даже раньше в случае нескольких разрывов, например, как показано на Фиг.3В (т.е., в данном примере ранее TTI 73). Основной причиной более раннего отсутствия сообщения об ошибке (т.е., в данном примере ранее TTI 73) является то, что уровень RLC приема не записывает время прихода последовательно принимаемых пакетов. Если записывать время прихода, то можно устранить перекрытие между временем прихода последовательно принимаемых пакетов и таймером переупорядочивания.
В некоторых вариантах осуществления уровень RLC приема может записывать абсолютное время с помощью внутренних часов принимающего устройства беспроводной связи. С использованием абсолютного времени успешно принятых пакетов в качестве эталона можно настроить динамический таймер таким образом, чтобы обеспечить обнаружение ранее потерянных пакетов.
В других вариантах осуществления вместо абсолютного времени прихода используются относительные смещения. Рассчитывать относительные смещения можно, например, следующим образом. Уровень RLC приема может записывать SNx_Offset_Start и SNx_Offset_End для каждого разрыва, где SNx_Offset_Start представляет собой время переупорядочивания (оставшееся время работы таймера переупорядочивания), оставшееся до следующего разрыва, a SNx_Offset_End представляет время переупорядочивания, оставшееся до истечения периода работы таймера.
В этом случае динамический период работы таймера задается следующим образом:
x
x
x
Таймер переупорядочивания=[К*(Максимальное число передач HARQ-SN_RX_Numbet)-(SN_Offset_Start-SN_Offset_End)]. (Ур.3)
При использовании примера, показанного на Фиг.3, значение SN4_Offset_Start будет равно 30, поскольку пакет SN4 приходит в течение TTI 11, а значение SN5_Offset_Start будет равно 21. Если предположить, что пакет SN1 не приходит никогда, период работы таймера переупорядочивания заканчивается в течение TTI 41. Поскольку период работы таймера истек, оставшееся время переупорядочивания равно 0. Следовательно, значения SN4_Offset_End и SN5_Offset_End равны 0. С использованием Ур.3 динамический таймер переупорядочивания вычисляется следующим образом:
Таймер переупорядочивания=8*(6-2)-(21-0)=11 TTI.
Таймер для разрыва SN3 запускается в течение TTI 41, если пакет SN3 после всех передач не принят без ошибок, после этого период работы таймера переупорядочивания для разрыва SN3 закончится в течение TTI 41+TTI 11=TTI 52. Последняя передача пакета SN3 происходит в течение TTI 47 - следовательно, уровень RLC приема может немедленно инициировать выдачу отчета об ошибке в течение ТТI 52.
Если пакет SN1 пришел в течение TTI 24, оставшееся время переупорядочивания должно было составлять 17. Следовательно, для SN4_Offset_End будет задано значение '17', для SN5_Offset_End будет задано значение '17'. С использованием Ур.3 расчет для динамического таймера переупорядочивания выполняется следующим образом:
Таймер переупорядочивания=8*(6-2)-(21-17)=28 TTI.
Поскольку поступил пакет SN1, динамический таймер будет повторно запущен для разрыва SN3 в течение TTI 24. Если пакет SN3 после всех передач не принят без ошибок, после этого период работы таймера переупорядочивания для разрыва SN3 закончится в течение TTI 24+TTI 28=TTI 52. Последняя передача пакета SN3 происходит в течение TTI 47, следовательно уровень RLC приема может немедленно инициировать выдачу отчета об ошибке в течение TTI 52.
В примере, показанном на Фиг.3А и 3В, в уровне RLC приема может быть реализован упрощенный подход для сокращения количества записанных значений, при котором уровень RLC приема отслеживает и/или записывает переменные только для одного успешно принятого пакета на разрыв, то есть SNx_RX_Number, SNx_Offset_Start, SNx_Offset_End или абсолютное время. Например, значение динамического таймера переупорядочивания может быть вычислено с помощью SN4 или SN5. Это может быть очень удобно в случае нескольких разрывов, если происходит безошибочный прием большого количества пакетов (то есть, например, все пакеты SN4 - SN30 принимаются без ошибок), а таймер переупорядочивания по-прежнему находится на предыдущем пакете (то есть, в этом случае SN1).
Команды различных вышеописанных модулей (включая уровень RLC 110 или 118 либо другие уровни, показанные на Фиг.1) загружаются для выполнения в процессор (122 или 126). Процессор включает в себя микропроцессор, микроконтроллер, процессорный модуль или подсистему, программируемую интегральную схему, программируемую логическую матрицу либо другое управляющее или вычислительное устройство.
Данные и команды записываются в соответствующих накопителях, которые реализованы в виде одного или нескольких машиночитаемых либо используемых компьютером носителей информации. Носитель информации может представлять собой запоминающие устройства различного вида, в том числе полупроводниковые запоминающие устройства, например, динамические либо статические оперативные запоминающие устройства (ДОЗУ или СОЗУ), стираемые и программируемые постоянные запоминающие устройства (СППЗУ), электрически стираемые и программируемые постоянные запоминающие устройства (ЭСППЗУ) и флэш-память; магнитные диски, например стационарные, гибкие и съемные диски; другие магнитные носители, включая ленту; и оптические носители, например компакт-диски (CD) или цифровые видеодиски (DVD), либо иные накопители. Следует отметить, что рассмотренные выше команды могут предоставляться на машиночитаемом накопителе либо, в качестве альтернативы, на нескольких машиночитаемых накопителях, распределенных в большой системе, возможно, имеющей несколько узлов. Такой(ие) машиночитаемый(ые) накопитель(и) считае(ю)тся частью изделия или промышленного изделия. Изделием или промышленным изделием может называться любой промышленно изготовленный отдельный компонент или несколько компонентов.
В вышеприведенном описании приведено множество подробностей, способствующих пониманию настоящего изобретения. В то время как в описании изобретения упоминается ограниченное количество вариантов осуществления, специалисты в данной области оценят множество его модификаций и видоизменений. Другие варианты осуществления могут включать в себя модификации и видоизменения, основанные на рассмотренных выше подробностях. Предполагается, что прилагаемая формула изобретения охватывает такие модификации и видоизменения.