АЛГОРИТМ БЫСТРОГО ВЫЧИСЛЕНИЯ КОРНЯ КВАДРАТНОГО ДЛЯ КОРРЕКЦИИ В СИСТЕМЕ MIMO
LOGIC FOR QUICK CALCULATION OF SQUARE ROOT FOR CORRECTION IN MIMO SYSTEM

Область техники, к которой относится изобретение
Настоящее описание относится в основном к радиосвязи и более конкретно к коррекции радиосигнала, передаваемого с использованием технологии с несколькими входами и несколькими выходами (MIMO).
Уровень техники
Системы радиосвязи сегодня широко распространены для передачи разнообразного контента, такого как голос, данные и т.п. Такие системы могут быть системами многостанционного доступа, способными поддерживать одновременно связь нескольких терминалов с одной или несколькими базовыми станциями. Система связи многостанционного доступа основывается на совместном использовании имеющихся системных ресурсов (например, полосы и мощности передач). К примерам таких систем многостанционного доступа относятся системы многостанционного доступа с кодовым уплотнением (CDMA), системы многостанционного доступа с временным уплотнением (TDMA), системы многостанционного доступа с частотным уплотнением (FDMA) и системы многостанционного доступа с ортогональным частотным уплотнением (OFDMA).
T
R
T
R
V
V
T
R
V
Связь между терминалом в системе радиосвязи (например, в системе многостанционного доступа) и базовой станцией осуществляется посредством передач в линии радиосвязи, содержащей прямую линию и обратную линию. Такая линия связи может быть построена по принципу один-вход-один-выход (SISO), несколько-входов-один-выход (MISO) или несколько-входов-несколько-выходов (MIMO). Система MIMO состоит из передатчиков и приемников, оснащенных соответственно несколькими (N) передающими антеннами и несколькими (N) приемными антеннами для передачи данных. Системы SISO и MISO являются частными случаями системы MIMO. Канал MIMO, созданный N передающими и N приемными антеннами, можно разложить на N независимых каналов, именуемых также пространственными каналами, где N≤min{N, N}. Каждый из N независимых каналов соответствует одному измерению в виртуальном пространстве. Использование дополнительных пространственных измерений, создаваемых несколькими передающими и приемными антеннами, позволяет улучшить характеристики системы MIMO (например, увеличить пропускную способность, повысить число обслуживаемых абонентов или улучшить надежность).
В системе связи MIMO по мере увеличения NT и NR эффективность алгоритма коррекции снижается вследствие увеличения размерности матриц, используемых в вычислениях. Таким образом, имеется насущная необходимость в эффективных способах коррекции в устройствах радиосвязи и на базовой станции, работающих в конфигурации MIMO.
Сущность изобретения
Ниже представлено упрощенное краткое изложение одного или нескольких аспектов для предоставления базового понимания таких аспектов. Это изложение не является всесторонним обзором всех мыслимых аспектов и не предназначено ни для идентификации ключевых или критически важных элементов всех аспектов, ни для очерчивания объема какого-либо или всех аспектов. Его единственное предназначение состоит в представлении некоторых принципов одного или нескольких аспектов в упрощенной форме в качестве введения к более подробному описанию, которое представлено позднее.
Согласно одному или нескольким аспектам и соответствующему описанию здесь разнообразные аспекты настоящего изобретения описаны в связи с тем, чтобы способствовать коррекции. Точки доступа и терминалы могут иметь несколько передающих и/или приемных антенн и использовать технологию MIMO для улучшения характеристик. Использование технологии MIMO позволяет передавать несколько потоков данных на одной частоте несущей. В процессе коррекции приемники разделяют данные, принятые на одной тональной составляющей (тоне), на индивидуальные потоки данных. В общем случае процесс коррекции связан с интенсивными вычислениями. Для каждого тона в группе вычисляют матрицу коррекции с использованием корректирующей функции. Такая функция обычно использует обратную операцию, которая может быть вычислена с применением способа быстрого вычисления корня квадратного. Однако этот способ быстрого вычисления корня квадратного связан со значительным объемом вычислений для группы матриц, причем размерность используемых матриц возрастает при увеличении числа передающих или приемных антенн. Модификация способа быстрого вычисления корня квадратного может быть использована для уменьшения объема и/или сложности вычислений. Согласно такой модификации обновляют только часть матриц быстрого вычисления корня квадратного. Кроме того, матрицы быстрого вычисления корня квадратного можно модифицировать для снижения требований к динамическому диапазону в процессе обработки.
Согласно одному из аспектов настоящего изобретения рассмотрен способ улучшения коррекции в приемниках системы радиосвязи, содержащий генерацию матрицы коррекции для тона принимаемого сигнала, эта матрица коррекции является функцией обратной матрицы, вычисленной по меньшей мере частично на основе частичного обновления подмножества элементов матрицы быстрого вычисления корня квадратного, и коррекцию тона в функции матрицы коррекции. Выполнение частичного обновления подмножества элементов матрицы быстрого вычисления корня квадратного может включать определение матрицы поворота в соответствии с методом отражения Хаусхолдера.
Согласно другому аспекту настоящего изобретения описано устройство, обеспечивающее коррекцию сигнала в среде радиосвязи. Это устройство содержит: средства для генерации матрицы коррекции с использованием модифицированного способа быстрого вычисления корня квадратного, обновляющего подмножество матрицы быстрого вычисления корня квадратного в процессе итеративной обработки; и средства для выделения по меньшей мере одного потока данных в принимаемом сигнале с использованием этой матрицы коррекции. Обновление подмножества матрицы быстрого вычисления корня квадратного в процессе итеративной обработки может включать определение матрицы поворота в соответствии с методом отражения Хаусхолдера.
Согласно следующему аспекту настоящего изобретения описана аппаратура, обеспечивающая коррекцию сигнала в среде радиосвязи. Аппаратура содержит: процессор, конфигурированный для вычисления обратной матрицы по меньшей мере частично на основе частичного итеративного обновления матрицы быстрого вычисления корня квадратного, для вычисления матрицы коррекции в функции этой обратной матрицы и для получения по меньшей мере одного потока данных из принимаемого сигнала с использованием матрицы коррекции; и запоминающее устройство, соединенное с процессором. Выполнение частичного итеративного обновления матрицы быстрого вычисления корня квадратного может включать определение матрицы поворота в соответствии с методом отражения Хаусхолдера.
Согласно еще одному следующему аспекту настоящего изобретения описан компьютерный программный продукт, включающий машиночитаемый носитель, содержащий: программу, согласно которой компьютер вычисляет матрицу коррекции для тона принимаемого сигнала, причем вычисление матрицы коррекции основано на частичном итеративном обновлении матрицы быстрого вычисления корня квадратного; и программу, согласно которой компьютер корректирует принимаемый сигнал в функции матрицы коррекции. Выполнение частичного обновления подмножества элементов матрицы быстрого вычисления корня квадратного может включать определение матрицы поворота в соответствии с методом отражения Хаусхолдера.
Для осуществления изложенного выше и соответствующих конечных целей один или несколько аспектов настоящего изобретения содержат признаки, полностью описанные ниже и, в частности, указанные в Формуле изобретения. Последующее описание и прилагаемые чертежи раскрывают подробно некоторые иллюстративные аспекты. Эти аспекты, однако, указывают лишь небольшое число из всего разнообразия способов, которые могут использовать описываемые здесь принципы, так что описываемые аспекты должны включать в себя эквивалентные подходы.
Краткое описание чертежей
Фигура 1 показывает блок-схему примера системы, корректирующей сигнал в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 2 показывает пример способ коррекции принимаемого сигнала в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 3 показывает блок-схему корректора, использующего модифицированный алгоритм быстрого вычисления корня квадратного в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 4 показывает блок-схему процесса инициализации матрицы предмассива способа быстрого вычисления корня квадратного в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 5 иллюстрирует пример способа коррекции принимаемого сигнала с использованием модифицированного способа быстрого вычисления корня квадратного в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 6 показывает блок-схему процессов коррекции в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 7 показывает блок-схемы дополнительных процессов коррекции в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 8 показывает блок-схемы еще одной группы процессов коррекции в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 9 показывает график результатов коррекции с использованием модифицированного способа быстрого вычисления корня квадратного в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 10 показывает пример системы радиосвязи в соответствии с одним или несколькими представленными здесь аспектами.
Фигура 11 показывает пример среды радиосвязи, которая может быть использована в сочетании с различными системами и способами, описанными здесь.
Фигура 12 показывает пример системы, способствующей коррекции в соответствии с одним или несколькими представленными здесь аспектами.
Подробное описание изобретения
Различные аспекты настоящего изобретения далее описаны со ссылками на указанные чертежи, где одинаковые цифровые позиционные обозначения служат для указания на одинаковые элементы на всех чертежах. В последующем описании приведены в целях объяснения многочисленные конкретные детали, чтобы обеспечить полное понимание одного или нескольких аспектов настоящего изобретения. Может быть очевидно, однако, что такой аспект(ы) может быть практически реализован и без этих конкретных деталей. В других случаях на блок-схеме показаны хорошо известные структуры и устройства, чтобы облегчить описание одного или нескольких аспектов изобретения.
В рамках настоящей заявки термины «компонент», «система» и т.п. должны обозначать относящийся к компьютеру объект-аппаратура, сочетание аппаратуры с программным обеспечением, программное обеспечение или программное обеспечение в стадии выполнения. Например, компонентом может быть, не ограничиваясь этим, процесс, выполняемый процессором, процессор, объект, выполняемая программа, поток выполнения программы, программа и/или компьютер. В качестве иллюстрации и приложение, работающее на устройстве связи, и само это устройство могут быть компонентом. Один или несколько компонентов могут находиться в пределах процесса и/или потока выполнения программы, а также компонент может быть локализован в одном компьютере и/или распределен между двумя или более компьютерами. Кроме того, эти компоненты могут выполняться с разных машиночитаемых носителей, на которых записаны различные структуры данных. Компоненты могут поддерживать связь посредством локальных и/или удаленных процессов, например в соответствии с сигналом, имеющим один или несколько пакетов данных (например, данные от одного компонента взаимодействуют с другим компонентом в локальной системе, распределенной системе и/или через сеть, такую как Интернет, с другими системами посредством сигнала).
Кроме того, слово «или» должно означать включающее «или», а не исключающее «или». Иными словами, если не указано иначе или не очевидно из контекста, «X использует A или B» должно означать любую из естественных включающих перестановок. А именно, если X использует A; X использует B; или X использует и A, и B, тогда «X использует A или B» удовлетворяется в любом из указанных выше примеров. Кроме того, артикли "a" и "an" в рамках настоящей заявки и прилагаемой Формулы изобретения следует в общем случае толковать как означающие «один или несколько», если только не указано иначе или не ясно из контекста, что речь идет о единственном числе.
Более того, различные аспекты описаны здесь в связи с терминалом. Терминал может быть также назван системой, устройством пользователя, абонентским устройством, абонентской станцией, мобильной станцией, мобильным устройством, удаленной станцией, точкой доступа, базовой станцией, удаленным терминалом, терминалом доступа, терминалом пользователя, терминалом, агентом пользователя или абонентской аппаратурой (UE). Терминал может быть сотовым телефоном, беспроводным телефоном, телефоном протокола инициирования сеанса (Session Initiation Protocol (SIP)), станцией беспроводной абонентской линии (WLL), персональным цифровым помощником (PDA), ручным устройством с возможностью установления радиосоединения или другим процессорным устройством, соединенным с радиомодемом.
Обратимся теперь к фиг.1, где показана система 100, выполняющая коррекцию принимаемого сигнала в системе радиосвязи, способной использовать несколько приемных и/или передающих антенн. В системах, использующих технологию MIMO, можно передавать несколько потоков данных на одной поднесущей, причем каждый поток данных передают через свою антенну. В приемнике эти потоки данных можно разделить посредством процесса, именуемого здесь коррекцией, для обеспечения связи. Термины поток данных и уровень являются здесь взаимозаменяемыми. Кроме того, ранг сигнала или передачи равен числу уровней передачи, причем максимальный ранг передачи равен меньшему из числа передающих антенн или числа приемных антенн. В общем случае, коррекция представляет собой процесс, требующий большого объема вычислений. Уменьшение числа и сложности вычислений, необходимых для осуществления коррекции, может снизить мощность, необходимую для работы приемника, увеличить срок службы аккумуляторов в устройстве, использующем такой приемник. Кроме того, можно уменьшить размеры кристалла интегральной схемы или компонента аппаратуры, выполняющего меньше число или менее сложные операции, что позволяет освободить место для размещения дополнительной аппаратуры или уменьшить размеры терминала, использующего этот компонент.
Компонент 102 корректора может быть использован для разделения принимаемых потоков данных. В частности, компонент корректора может представлять собой корректор с использованием минимальной среднеквадратической ошибки (MMSE). Хотя описываемые здесь компоненты MMSE-корректоров и операции можно использовать в ситуациях, когда ранг, или количество уровней, передачи равен 1, работа в таких случаях может быть менее эффективной. Когда ранг равен 1, компонент коррекции может использовать альтернативные процессы, такие как коррекция с применением сложения в максимальной пропорции или оптимального сложения (maximum ratio combining (MRC)). В альтернативном варианте может быть использован отдельный компонент MRC-коррекции (не показан).
Принимаемый сигнал для тона или поднесущей n может быть представлен следующим образом:
x(n)=H(n)s(n)+ν(n)
R
Здесь ν(n) это вектор шумов M×1 с:
R
T
H(n) обозначает матрицу M×M, представляющую MIMO-канал. H(n) может быть представлена следующим образом:
T
Передаваемый символ представлен вектором s(n) в виде M×1:
Элементы  нормированной матрицы каналов и нормированные элементы  принимаемых сигналов могут быть представлены следующим образом:
R
, i=1, 2, … M
R
, i=1, 2, …M
Здесь  это минимальная дисперсия помех по всем приемным антеннам. В данной ячейке  является фиксированным параметром. Кроме того, нормированные элементы  каналов, для которых индекс j больше ранга или числа MIMO-уровней в передаче, приравнивают к нулю. Отметим, что рассматриваемая здесь ячейка представляет собой область в пространстве времени и частоты, содержащую заданное число последовательных тонов для фиксированного числа последовательных OFDM-символов. Например, ячейка может включать 128 символов на 16 тонах или каналах. Совокупность символов может включать символы данных, равно как пилотные символы, которые могут служить опорой для определения характеристик, например, оценки характеристики канала.
Компонент 102 корректора может (i) использовать информацию о канале и помехах для коррекции принимаемых сигналов и генерации скорректированных символов; (ii) обрабатывать принимаемые сигналы по ячейкам; (iii) генерировать матрицу коррекции для каждого тона в ячейке, где принимаемый сигнал для тона может быть разделен на индивидуальные потоки данных с использованием матрицы коррекции. Скорректированные символы могут быть представлены следующим образом:
Здесь  представляет нормированные скорректированные символы для тона n, G(n) - матрица коррекции и  - принимаемый сигнал для тона n.
Компонент 102 корректора включает компонент 104 матрицы коррекции, генерирующий матрицу коррекции G(n), и корректирующий компонент 106, формирующий скорректированные символы в функции матрицы коррекции. Компонент 104 матрицы коррекции может использовать информацию о канале и помехах (например, оценки характеристики канала и помех) для рассматриваемой ячейки при генерации матрицы коррекции. В рассматриваемой заявке под оценкой характеристики канала понимают оценку характеристики радиоканала от передатчика к приемнику. Для оценки характеристика канала передают в ячейке пилотные символы, известные априори и передатчику, и приемнику. Помехи могут исходить от нескольких передатчиков, которые передают свои пилот-сигналы одновременно. Такие передатчики могут располагаться в разных точках доступа в среде радиосвязи либо представлять собой разные антенны в одной и той же точке доступа. Помехи от пилот-сигналов снижают качество оценки характеристики канала. Система оценивает также мощность помех в пределах области пространства времени и частоты или в пределах ячейки. Эта мощность будет здесь в дальнейшем называться оценкой помех. Корректирующий компонент 106 может использовать результирующую матрицу коррекции для обработки принимаемых сигналов и генерации скорректированных символов.
T
R
T
R
В общем случае вычисления, необходимые для генерации матрицы коррекции, являются сложными, а объем их быстро нарастает по мере увеличения числа передающих или приемных антенн. Корректор представляет собой матрицу M×M, где M - эффективное число передающих антенн в точке доступа и M - эффективное число приемных антенн в терминале доступа. Матрица коррекции может быть представлена следующим образом:
для тона n. Эту матрицу коррекции можно переписать:
P(n) представляет обратную матрицу, определяемую как:
где  соответствует нормированной матрице H(n). Член Λ(n) представляет собой матрицу отношений сигнала к сумме шумов и помех (SINR) и может быть представлен следующим образом:
j
Здесь λ(n) определены через диагональные элементы матрицы P(n):
j
jj
λ=1-P(n).
Обычно обратную матрицу P(n) рассчитывают с использованием способа быстрого вычисления корня квадратного. Этот способ быстрого вычисления корня квадратного использует набор матриц, подробнее описанных ниже. Однако матрицы, используемые в рамках обычного способа быстрого вычисления корня квадратного, содержат члены, которые не нужны для вычисления обратной матрицы. Следовательно, для эффективного выполнения инверсии матриц можно применить модифицированный способ быстрого вычисления корня квадратного, использующий модифицированные матрицы и рекуррентные вычисления для уменьшения или минимизации необходимого объема вычислений. Компонент 104 матрицы коррекции может использовать такой модифицированный способ быстрого вычисления корня квадратного для снижения вычислительных издержек (например, затрат времени и емкости памяти) и облегчить генерацию матрицы коррекции. Подробности модифицированного способа быстрого вычисления корня квадратного обсуждаются ниже.
Компонент 102 корректора содержит также регистрирующий компонент 108 для записи демодулированных символов и дополнительной информации. Регистрационный пакет может включать дополнительные данные, такие как идентификатор блока аппаратуры, генерирующего этот пакет, номер системного кадра прямой линии, идентификатор обслуживающего сектора, число ячеек, зарегистрированных в пакете, индекс ячейки, число символов, зарегистрированных для одной ячейки, число уровней, комплексный выходной сигнал оценки символов для каждого уровня и отношение SINR для уровня. В одном из аспектов данные можно регистрировать один раз для каждого кадра прямой линии.
На фиг.2 представлена логическая схема примера способа 200, способствующего коррекции сигнала переданной ячейки. На этапе 202 получают данные канала помех для ячейки. В частности, можно создать оценки характеристик каналов на основе пилотных символов, включенных в состав ячейки. Для каждого принятого тона n генерируют отдельные матрицы  каналов. Затем для каждого модуляционного символа получают вектор матриц каналов, соответствующих принятой ячейке. Аналогично получают информацию о помехах, соответствующую принятой ячейке.
На этапе 204 определяют, равен ли 1 ранг передачи. Если да, MMSE-коррекция может оказаться не самым эффективным способом коррекции. Соответственно сигнал можно корректировать альтернативным способом, например MRC-коррекции на этапе 206. Если нет, матрицу коррекции для тона можно генерировать с использованием модифицированного способа вычисления корня квадратного на этапе 208. Модифицированный способ вычисления корня квадратного может использовать матрицы стандартного способа вычисления корня квадратного. Однако при этом нужно обновлять только подмножество элементов этих матриц. Следовательно, на каждой итерации рекурсивных вычислений нужно выполнять только часть объема вычислений, присущего обычному способу вычисления корня квадратного, что приводит к значительному уменьшению объема вычислений. Полученные матрицы коррекции можно использовать для генерации скорректированных символов для тона на этапе 210.
На этапе 212 определяют, имеются ли еще в ячейке дополнительные тоны, которые нужно корректировать. Если да, процесс возвращается к этапу 208, где матрицу коррекции генерируют для следующего тона. Если нет, процесс для конкретной ячейки завершается. На этапе 214 могут быть зарегистрированы демодулированные символы данных. В частности, регистрационный MMSE-пакет может включать демодулированные (оцененные) с применением MMSE символы данных из одной или нескольких ячеек одного и того же кадра. В одном из аспектов данные можно регистрировать один раз для каждого кадра прямой линии. Регистрационный пакет может включать дополнительные данные, такие как идентификатор блока аппаратуры, генерирующего этот пакет, номер системного кадра прямой линии, идентификатор обслуживающего сектора, число ячеек, зарегистрированных в пакете, индекс ячейки, число символов, зарегистрированных для одной ячейки, число уровней, комплексный выходной сигнал оценки символов для каждого уровня и отношение SINR для уровня. Процедуру 200 можно повторять для нескольких принимаемых ячеек.
На фиг.3 показан компонент 102 корректора, использующий упрощенную эффективную процедуру коррекции. Компонент корректора 102 может включать компонент 300 обратной матрицы, который вычисляет обратную матрицу P(n) с использованием модификации обычного способа быстрого вычисления корня квадратного, известного в технике. Способ быстрого вычисления корня квадратного использует набор матриц, именуемых здесь матрицами быстрого вычисления корня квадратного или же матрицами предмассива и постмассива. Компонент 300 обратной матрицы может включать компонент 302 инициализации, выполняющий операции для инициализации матриц быстрого вычисления корня квадратного. Компонент 304 обновления матриц может модифицировать или обновлять элементы матриц предмассива или постмассива в процессе итеративной обработки. В частности, для вычисления обратной матрицы требуется только подмножество элементов. После этого компонент 304 обновления матриц может обновлять подмножество матриц предмассива и постмассива. Компонент 306 обновления обратной матрицы может генерировать обратную матрицу в соответствии с модифицированным способом быстрого вычисления корня квадратного. Сформированная матрица коррекции может быть использована корректирующим компонентом 106, а результаты зарегистрированы посредством регистрирующего компонента 108.
min
Рассмотрим QR-разложение матрицы каналов, дополненной минимальной дисперсией σ помех и единичной матрицей I:
a
T
R
T
R
T
Здесь Q имеет размерность M×M, a Q имеет размерность (M+M)×M. Используя QR-разложение, матрица коррекции может быть записана следующим образом:
-1
1/2
где R(n)=P(n) и . Это уравнение может быть также представлено следующим образом:
Такое выражение может быть вычислено более эффективно, чем предыдущее уравнение.
1/2
Здесь P(n) может быть вычислено следующим образом:
1/2
где  представляет j-ую строку . Матрицы P(n) и  могут быть получены посредством рекурсивной обработки следующих матриц быстрого вычисления корня квадратного:
0
MR×MT
, B(n)=0
MT×MT
T
T
0
R
T
i
R
инициализируют в виде единичной матрицы I с размерностью M×M, умноженной на 1/σ. B(n) инициализируют в виде нулевой матрицы с размерностью M×M. Здесь e - i-ый единичный вектор с размерностью M и  - i-я строка .
1/2
R
P(n) можно вычислить путем генерации и обновления матриц для i=1, 2, 3 … M.
R
После M итераций  и .
1/2
a
С вычислительной точки зрения более затратным является вычисление P(n) и Q(n) для использования в выражении корректора:
1/2
Вместо этого нужно вычислить только P(n) и можно использовать записанное по-новому выражение корректора:
MT×MT
Объем необходимых вычислений можно также уменьшить путем снижения динамических требований к этим вычислениям. Обычно в процессе инициализации быстрого вычисления корня квадратного единичную матрицу I умножают на 1/σ,
.
Такая операция может привести к относительно большим числам и широкому динамическому диапазону для инициализации. Столь широкий динамический диапазон может потребовать дополнительных битов для записи данных и выполнения вычислений. Расширения динамического диапазона можно избежать путем простого умножения на помехи. В частности, матрицы предмассива и постмассива можно обновить с использованием следующего выражения:
Компонент 302 инициализации и компонент 304 обновления матриц могут использовать такую модификацию для облегчения обработки. Последующее описание модифицированного способа быстрого вычисления корня квадратного использует этот признак для сужения динамических диапазонов. Однако вычисления согласно модифицированному способу быстрого вычисления корня квадратного с применением частичного обновления матриц быстрого вычисления корня квадратного могут быть выполнены и без использования этого признака.
Для вычисления  можно обновить подмножество матриц быстрого вычисления корня квадратного. В частности, в ходе итеративной обработки обновляют только частичные матрицы быстрого вычисления корня квадратного:
MT×MT
Здесь  Здесь  инициализируют в виде единичной матрицы I. Матрица быстрого вычисления корня квадратного, используемая в рекурсивном процессе:
именуется матрицей предмассива X. В то же время вторая матрица быстрого вычисления корня квадратного:
именуется матрицей постмассива Y. Обратная матрица  может быть рассчитана рекурсивно с использованием этих модифицированных матриц или массивов быстрого вычисления корня квадратного.
На фиг.4 представлен процесс инициализации матрицы предмассива. Во время инициализации матрицы предмассива вектор а можно вычислить с использованием следующего уравнения:
Такие вычисления могут быть выполнены с использованием следующего примера псевдокода:
a
MT×MT
Диаграмма 400 показывает пример операций для вычисления вектора . Компонент 302 инициализации может также инициализировать  в виде единичной матрицы I. Кроме того, компонент 302 инициализации может инициализировать матрицу постмассива в виде матрицы предмассива следующим образом:
f
Здесь s входная мощность двух масштабных коэффициентов, которые могут быть реализованы с применением операции сдвига вправо.
i
R
i
T
T
i
Компонент 304 обновления матриц может обновить матрицу предмассива, матрицу поворота Θ и матрицу постмассива в ходе итеративной обработки согласно способу вычисления корня квадратного. В частности, в процессе обработки для каждой приемной антенны i=1, 2 … M можно вычислить матрицу предмассива, можно обновить матрицу поворота и матрицу постмассива и сформировать элемент обратной матрицы. Компонент 304 обновления матриц может вычислить матрицу поворота Θ размерности (M+1)×(M+1) и обновить матрицу постмассива в функции матрицы поворота и матрицы предмассива Y=XΘ.
i
Матрица поворота Θ может быть определена согласно методу отражения Хаусхолдера. Это может включать выполнение следующих операций:
где  первая строка матрицы предмассива X на этой итерации.
Компонент 306 обновления обратной матрицы может обновить обратную матрицу на основе итеративного вычисления матрицы постмассива следующим образом:
Компонент 304 обновления матриц может использовать вычисленную обратную матрицу для обновления выбранных участков матрицы предмассива. Компонент 104 генератора матрицы коррекции может использовать вычисленную обратную матрицу для вычисления матрицы коррекции, которую корректирующий компонент 106 применяет для коррекции принимаемого сигнала.
а
На фиг.5 показан пример способа 500 вычисления обратной матрицы. Здесь можно использовать вариант способа быстрого вычисления корня квадратного, уменьшающий сложность вычислений. На этапе 502 инициализируют матрицы предмассива и постмассива в качестве подготовки к вычислению обратной матрицы. Кроме того, можно инициализировать переменную пересчета i, представляющую приемные антенны (например, i=1). Матрицу предмассива можно инициализировать на основе вычислений вектора :
Матрицу постмассива можно инициализировать в виде матрицы предмассива.
После инициализации матрицы предмассива и постмассива итеративно обновляют в соответствии с числом приемных антенн. На этапе 504 вычисляют матрицу поворота для рассматриваемой итерации. Эту матрицу Θ поворота можно вычислить на основе метода отражений Хаусхолдера, как описано выше.
i
Постмассив можно обновить на основе матрицы поворота и матрицы предмассива (например, Y=XΘ) на этапе 506. На этапе 508 можно обновить обратную матрицу в функции матрицы постмассива (например, ). Элементы матрицы предмассива обновляют на основе обратной матрицы на этапе 510.
R
На этапе 512 определяют, завершена ли обработка для каждой приемной антенны {например, i<M). Если обработка не завершена, на этапе 514 увеличивают переменную i для приемных антенн и продолжают обработку снова с этапа 504, где вычисляют обратную матрицу для следующей приемной антенны. Если обработка завершена для каждой приемной антенны, обратная матрица оказывается вычислена и может быть использована при генерации матрицы коррекции для выполнения коррекции сигнала.
Обратимся к фиг.6, 7 и 8, где показаны диаграммы, иллюстрирующие вычисление скорректированных символов. Эти скорректированные символы могут быть обозначены следующим образом:
i
Здесь  представляет нормированные скорректированные символы для тона n, G(n) является матрицей коррекции и  - масштабированный принимаемый сигнал для тона n. Диаграмма 600 иллюстрирует операции масштабирования входного сигнала . Следующий пример псевдокода может быть использован для нормировки принимаемого сигнала с применением масштабного вектора α:
i
Здесь α может быть представлен следующим образом:
R
, i=1, 2, 3 … M
Как описано выше, матрица коррекции может быть представлена следующим образом:
Это приводит к следующему уравнению для скорректированных символов:
Скорректированные символы можно вычислять поэтапно, как показано на фиг.6, 7 и 8. В частности, на первом этапе вычисляют вектор d:
Диаграмма 602 иллюстрирует, что можно использовать для генерации вектора d. Для генерации этого вектора d можно применить псевдокод согласно следующему примеру:
На втором этапе вектор е размерности R×1 можно вычислить следующим образом:
f
min
min
Здесь s - масштабный коэффициент и γ - коэффициент нормировки. Диаграмма 604 иллюстрирует операции, которые можно использовать для генерации вектора e. Коэффициент нормировки γ можно вычислить следующим образом:
Диаграмма 606 показывает реализацию с точностью до бита способа вычисления . Один раз для каждой ячейки может быть выполнена следующая операция:
min
Диаграмма 608 показывает реализацию с точностью до бита способа вычисления σ.
Для генерации вектора e можно применить псевдокод согласно следующему примеру:
На третьем этапе вектор f размерности R×1 можно вычислить следующим образом:
f
min
min
Здесь s - масштабный коэффициент и γ коэффициент нормировки. Коэффициент нормировки γ можно вычислить, как описано выше. Диаграмма 702 иллюстрирует операции, которые можно использовать для генерации вектора f. Для генерации вектора f можно применить псевдокод согласно следующему примеру:
На завершающем этапе вектор размерности R×1 для скорректированного сигнала  можно получить следующим образом:
T
j=1, 2, … M
Диаграмма 704 показывает операции для вычисления скорректированного символа , для генерации таких скорректированных символов можно применить псевдокод согласно следующему примеру:
j
j
Здесь β можно использовать для коррекции смещения, где β можно рассчитать на основе диагональных элементов матрицы  следующим образом:
Диаграмма 800 показывает операции для вычисления . Для получения этих диагональных элементов можно применить псевдокод согласно следующему примеру:
j
Где β может быть выражено следующим образом:
j=1, 2, … R
j
Диаграмма 802 показывает операции для вычисления β. Постобработка отношений SINR с применением MMSE может быть использована для взвешивания логарифмических отношений правдоподобия (LLR), что легко получается из диагональных элементов P, вычисляемых:
j=1, 2, … R
j
Диаграмма 804 показывает операции для вычисления λ.
1
4
На фиг.9 показаны результаты моделирования коррекции с использованием модифицированного способа быстрого вычисления корня квадратного. Для подтверждения битовой ширины сигналов может быть проведено предварительное моделирование с использованием четырех передающих и приемных антенн. Дисперсия шумов в расчете на приемную антенну может изменяться (например, 0. -3, -6 и -10 дБ), в диапазоне средних отношений сигнал/шум (SNR) от 0 дБ до 30 дБ. Предполагается, что элементы матрицы канала H представляют собой независимые и одинаково распределенные величины с распределением Гаусса, средней величиной 0 и дисперсией 1. Предполагается, что входные данные элементов канала и принимаемого сигнала масштабированы с коэффициентом /. Нормированную среднеквадратическую ошибку (MSE) между выходами с фиксированной и с плавающей запятой можно вычислить следующим образом:
График 900 можно получить посредством моделирования с фиксированной запятой (например, с применением математического пакета с фиксированной запятой Matlab). Здесь ось x 902 представляет отношение сигнал/шум (SNR), а ось y 904 представляет нормированную величину MSE. Следует отметить, что отношение SINR на один уровень (на выходе MMSE-приемника), по меньшей мере, на 6 дБ ниже отношения SNR для принимаемого сигнала на антенну. Например, при отношении SNR=30 дБ величина отношения SINR на один уровень меньше 24 дБ. Обычно для независимых MIMO-каналов с одинаковым распределением отношение SNIR на один уровень может быть намного меньше 24 дБ. Следовательно, нормированная величина MSE, равная -25 dB, может быть приемлемой.
Понятно, что здесь могут быть сделаны определенные выводы относительно классификации терминалов и т.п. В данном описании термины «делать выводы» или «вывод» относятся в общем к процессу осмысления или формированию заключений и выводов о состояниях системы, среды и/или пользователя на основе совокупности наблюдений событий и/или данных. Выводы могут быть использованы для идентификации конкретного контекста или действия или для генерации распределения вероятностей состояний, например. Выводы могут быть вероятностными, а именно вычисление распределения вероятности интересующих состояний на основе рассмотрения данных и событий. Выводы могут также относиться к способам, используемым для составления событий более высокого уровня из набора событий и/или данных. Такие выводы приводят к конструированию новых событий или действий на основе набора наблюдаемых событий и/или записанных данных событий независимо от того, коррелированы эти события в непосредственной близости во времени или нет, и происходят ли эти события и данные из одного или нескольких источников событий и данных.
На фиг.10 показана система 1000, способствующая коррекции в среде связи в соответствии с различными аспектами. Система 1000 содержит точку доступа 1002 с приемником 1010, принимающую сигналы от одного или нескольких терминалов 1004 через одну или несколько приемных антенн 1006 и передающую сигналы одному или нескольким терминалам 1004 через одну или несколько передающих антенн 1008. Согласно одному или нескольким аспектам приемные антенны 1006 и передающие антенны 1008 могут быть реализованы с использованием одной группы антенн. Приемник 1010 может принимать информацию от приемных антенн 1006 и при этом оперативно связан с демодулятором 1012 принимаемой информации. Приемник 1010 может быть MMSE-приемником или приемником какого-либо другого подходящего типа, способным разделять назначенные ему терминалы, как это должно быть очевидно специалистам в рассматриваемой области. Согласно различным аспектам могут быть использованы несколько приемников (например, по одному приемнику на каждую приемную антенну), причем такие приемники могут поддерживать связь одни с другими для получения улучшенной оценки данных пользователя. Точка доступа 1002 содержит далее компонент 1022 корректора, который может представлять собой процессор, выполненный отдельно от приемника 1010 или заодно с приемником 1010. Компонент 1022 корректора может использовать описанный здесь модифицированный способ быстрого вычисления корня квадратного для уменьшения сложности вычислений, необходимых для коррекции принимаемых сигналов.
Демодулированные символы анализируют в процессоре 1014. Процессор 1014 связан с запоминающим устройством 1016, где записана информация о коррекции, например корректирующая функция, матрицы коррекции и любые другие данные, относящиеся к коррекции. Должно быть очевидно, что компоненты для сохранения данных (например, запоминающие устройства), описываемые здесь, могут представлять собой энергозависимую или энергонезависимую память, либо могут включать и энергозависимую, и энергонезависимую память. В качестве иллюстраций и без ограничений энергонезависимая память может включать ПЗУ (ROM), программируемое ПЗУ (ППЗУ (PROM)), электрически программируемое ПЗУ (ЭППЗУ (EPROM)), электрически стираемое программируемое ПЗУ (ЭСППЗУ (EEPROM)) или флэш-память. Энергозависимая память может включать запоминающее устройство с произвольной выборкой (ЗУПВ (RAM)), которое может служить внешней кэш-памятью. В качестве иллюстраций и без ограничений RAM может быть в различных формах, например синхронное RAM (SRAM), динамическое RAM (DRAM), синхронное DRAM (SDRAM), SDRAM с двойной скоростью передачи данных (DDR SDRAM), усиленное SDRAM (ESDRAM), Synchlink DRAM (SLDRAM) и память Rambus RAM с прямой связью (DRRAM). Запоминающее устройство 1010 в рассматриваемых системах для применения в целях рассматриваемых способов может содержать без ограничений эти или иные подходящие типы памяти. Выходные сигналы приемных антенн можно совместно обрабатывать в приемнике 1010 и/или процессоре 1014. Модулятор 1018 может мультиплексировать сигнал для передачи посредством передатчика 1020 через передающие антенны 1008 терминалам 1004.
На фиг.11 показан один из вариантов передатчика и приемника в системе 1100 радиосвязи многостанционного доступа. В передающей системе 1110 данные трафика для нескольких потоков данных направляют из источника данных 1112 в передающий (ТХ) процессор 1114 данных. В одном из вариантов каждый поток данных передают через свою передающую антенну. Передающий процессор 1114 данных форматирует, кодирует и выполняет перемежение данных трафика для каждого потока данных на основе конкретного алгоритма кодирования, выбранного для этого потока данных, с целью получения кодированных данных. В некоторых вариантах передающий процессор 1114 применяет предкодирующие весовые коэффициенты к символам потоков данных в зависимости от конкретного пользователя и антенны, через которую должны быть переданы эти символы. В некоторых вариантах эти предкодирующие весовые коэффициенты могут быть сформированы на основе указателя в кодовую таблицу, генерируемую в приемопередатчике 1154, и переданы в качестве обратной связи в приемопередатчик 1122, знающий эту кодовую таблицу и указатели к ней. Кроме того, в случае планируемых передач по графику передающий процессор 1114 может выбрать формат пакетов на основе информации ранга, передаваемой от пользователя.
Кодированные данные для каждого потока данных могут быть мультиплексированы с пилотными данными с использованием принципов ортогонального частотного уплотнения. Пилотные данные обычно представляют собой известную структуру данных, обрабатываемую известным способом, и могут быть использованы в приемной системе для оценки характеристики канала. Мультиплексированные пилотные и кодированные данные для каждого потока данных затем модулируют (например, путем отображения символов) в соответствии с конкретным способом модуляции (например, двоичной или двухуровневой фазовой манипуляцией (BPSK), квадратурной или четырехуровневой фазовой манипуляцией (QSPK), многоуровневой фазовой манипуляцией (M-PSK) или многоуровневой квадратурной амплитудной модуляцией (M-QAM)), выбранным для рассматриваемого потока данных, для получения модуляционных символов. Скорость передачи данных, способ кодирования и вид модуляции для каждого потока данных могут быть определены посредством команд, выполняемых процессором 1130. Как обсуждается выше, в некоторых вариантах формат пакетов для одного или нескольких потоков может изменяться в зависимости от информации ранга, передаваемой от пользователя.
T
T
Модуляционные символы для всех потоков данных затем направляют в передающий (ТХ) процессор 1120 MIMO, который может продолжить обработку модуляционных символов (например, для квадратурного частотного уплотнения (OFDM)). Процессор 1120 ТХ MIMO затем направляет N потоков модуляционных символов к N приемопередатчикам (TMTR) от 1122a по 1122t. В некоторых вариантах процессор 1120 ТХ MIMO применяет предкодирующие весовые коэффициенты к символам потоков данных в зависимости от пользователя, которому должны быть переданы эти символы, и антенны, через которую передают эти символы, в соответствии с информацией о характеристике канала к пользователю.
T
T
Каждый приемопередатчик 1122 принимает и обрабатывает соответствующий поток символов для получения одного или нескольких аналоговых сигналов и затем кондиционирует (например, усиливает, фильтрует и преобразует вверх по частоте) эти аналоговые сигналы для получения модулированного сигнала, пригодного для передачи по MIMO-каналу. Затем N модулированных сигналов от приемопередатчиков с 1122а по 1122t передают через N антенн с 1124a по 1124t соответственно.
R
В приемной системе 1150 переданные модулированные сигналы принимают посредством N антенн с 1152а по 1152r и направляют принятый сигнал от каждой антенны 1152 в соответствующий приемопередатчик (RCVR) с 1154а по 1154r. Каждый приемопередатчик 1154 кондиционирует (например, фильтрует, усиливает и преобразует вниз по частоте) свой принятый сигнал, дискретизирует кондиционированный сигнал для получения отсчетов и затем обрабатывает эти отсчеты для генерации соответствующего «принятого» потока символов.
R
R
T
Приемный (RX) процессор 1160 данных затем принимает и обрабатывает N принятых потоков символов от N приемопередатчиков 1154 в соответствии с конкретным алгоритмом обработки в приемнике для получения N «детектированных» потоков символов. Обработка данных в этом RX процессоре 1160 данных подробнее описана ниже. Каждый детектированный поток символов содержит символы, представляющие собой оценки модуляционных символов, переданных для соответствующего потока данных. Далее этот RX процессор 1160 данных демодулирует, устраняет перемежение и декодирует каждый детектированный поток символов для выделения данных трафика для потока данных. Обработка в RX процессоре 1160 данных комплементарна обработке, выполняемой процессором 1120 ТХ MIMO и передающим (ТХ) процессором 1114 данных в передающей системе 1110.
Оценка характеристики канала, генерируемая RX процессором 1160, может быть использована для выполнения пространственной, пространственно/временной обработки в приемнике, подстройки уровней мощности, изменения скоростей или видов модуляции или других действий. RX процессор 1160 может также оценивать отношение сигнала к сумме шумов и помех (SINR) для детектированных потоков символов и возможно другие характеристики канала и передавать эти величины процессору 1170. RX процессор 1160 данных или процессор 1170 может далее оценивать «рабочую» величину SINR для системы. Процессор 1170 затем определяет оценку индикатора состояния канала (CSI), которая может содержать информацию различных видов относительно линии связи или принимаемого потока данных. Например, индикатор CSI может содержать только рабочее отношение SINR. Этот индикатор CSI затем обрабатывают в передающем (ТХ) процессоре 1178 данных, который принимает также данные трафика для нескольких потоков данных от источника 1176 данных, модулируют посредством модулятора 1180, кондиционируют в приемопередатчиках с 1154а и 1154r и передают назад, в передающую систему 1110.
В передающей системе 1110 модулированные сигналы от приемной системы 1150 принимают посредством антенн 1124, кондиционируют в приемниках 1122, демодулируют в демодуляторе 1140 и обрабатывают в приемном (RX) процессоре 1142 данных для выделения сообщения индикатора CSI, переданного приемной системой. Полученную дискретизированную информацию, например индикатор качества канала CQI, затем передают процессору 1130 и используют для (1) определения скоростей передачи данных и способов кодирования и модуляции для использования в потоках данных и (2) генерации различных сигналов управления для передающего процессора 1114 данных и процессора 1120 ТХ MIMO.
Описываемые здесь способы могут быть реализованы различными средствами, Например, эти способы могут быть реализованы аппаратно, программно или в виде сочетания аппаратных и программных средств. В аппаратном варианте устройства обработки данных (например, контроллеры 1120 и 1160, ТХ и RX процессоры 1114 и 1142 и т.п.) для применения этих способов могут быть реализованы на основе одной или нескольких специализированных интегральных схем (ASIC), цифровых процессоров сигнала (DSP), цифровых устройств обработки сигналов (DSPD), программируемых логических устройств (PLD), программируемых пользователем вентильных матриц (FPGAs), процессоров, контроллеров, микроконтроллеров, микропроцессоров, других электронных устройств, рассчитанных на выполнение описываемых здесь функций или их сочетаний.
На фиг.12 показан пример системы 1200, позволяющей корректировать принимаемые сигналы с использованием модификации способа вычисления корня квадратного в соответствии с рассмотренными здесь аспектами. Система 1200 содержит логическую группировку 1210 электронных компонентов, которые могут работать совместно для выполнения коррекции. Согласно одному из аспектов логическая группировка 1210 включает электронный компонент 1215, который может генерировать матрицу коррекции для каждого тона или поднесущей принимаемого сигнала. Матрицу коррекции генерируют с использованием корректирующей функции, основанной, по меньшей мере, частично на обратной матрице. Обратную матрицу можно вычислить с применением модификации способа быстрого вычисления корня квадратного, причем только часть матрицы быстрого вычисления корня квадратного обновляют в процессе итеративной обработки. Такое частичное обновление уменьшает требуемый объем вычислений и улучшает характеристики. Кроме того, динамические требования к обработке могут быть снижены путем модификации инициализации матрицы быстрого вычисления корня квадратного в функции дисперсии помех. В дополнение к этому логическая группировка 1210 включает электронный компонент 1225, способный генерировать матрицу коррекции для разделения одного или нескольких потоков данных, передаваемых на поднесущей принимаемого сигнала. Каждая поднесущая может быть скорректирована с использованием соответствующей матрицы коррекции. После разделения потоки данных можно обрабатывать по отдельности для получения символов данных. Более того, электронный компонент 1235 может корректировать принимаемый сигнал с применением коррекции с оптимальным сложением (сложением в максимальной пропорции), когда сигнал содержит только один поток данных.
Система 1200 может также включать запоминающее устройство 1240, сохраняющее инструкции для выполнения функций, связанных с электронными компонентами 1215, 1225 и 1235, равно как и измеренных и вычисленных данных, которые могут быть получены в процессе выполнения таких функций. Хотя эти электронные компоненты 1215, 1225 и 1235 показаны вне запоминающего устройства 1240, следует понимать, что один или несколько из таких компонентов могут также располагаться внутри этого запоминающего устройства 1240.
В рассматриваемом описании (фиг.2 и фиг.5) показаны способы выполнения коррекции. Отметим, что хотя для простоты объяснения эти способы показаны и описаны в виде последовательности действий, следует понимать и учитывать, что эти способы не ограничиваются таким порядком действий, поскольку некоторые действия могут, в соответствии с одним или несколькими аспектами, происходить в различном порядке и/или одновременно с другими действиями, показанными и описанными здесь. Например, специалисты в данной области должны понимать и учитывать, что подобный способ может быть альтернативно представлен в виде последовательности взаимосвязанных состояний или событий, например диаграммы состояний. Более того, для реализации какого-либо способа согласно одному или нескольким аспектам настоящего изобретения могут быть использованы действия, не показанные на чертежах.
В программном варианте описанные здесь способы могут быть реализованы с применением модулей (например, процедур, функций и т.п.), выполняющих описываемые здесь функции. Программы могут быть записаны в запоминающих устройствах и исполняемы процессорами. Запоминающие устройства могут быть реализованы внутри процессора или вне процессора и в последнем случае могут быть связаны с процессором с использованием различных средств, известных в технике.
Более того, один или несколько аспектов или признаков, описанных здесь, могут быть реализованы в виде способа, устройства или изделия с использованием стандартных методов программирования или инженерных методов. Термин «изделие», применяемый здесь, должен охватывать компьютерную программу, доступную с любого машиночитаемого устройства, несущей или носителя. Например, возможные машиночитаемые носители могут включать, не ограничиваясь этим, магнитные запоминающие устройства (например, жесткие диски, дискеты, магнитные ленты…), оптические диски (например, компакт-диски (CD), цифровые универсальные диски (DVD)…), смарт-карточки и устройства флэш-памяти (например, карточки, флэшки, электронные ключи…).
Выше изложены несколько примеров одного или нескольких аспектов настоящего изобретения. Безусловно, невозможно описать каждое представимое сочетание компонентов или способов при рассмотрении изложенных выше аспектов, но любой рядовой специалист в рассматриваемой области может понять, что возможно множество других сочетаний и перестановок различных аспектов. Соответственно описанные аспекты предназначены охватить все такие изменения, модификации и варианты, попадающие в пределы духа и объема прилагаемой Формулы изобретения. Более того, в тех пределах, в которых термины «включает» или «включающий» или какие-либо их вариации используются в подробном описании или в Формуле изобретения, эти термины имеют включительное значение аналогично термину «содержащий» в том смысле, в каком этот термин «содержащий» понимают при использовании в качестве переходного слова в Формуле изобретения.