Научная статья на тему 'Применение треугольного систолического массива для QR-разложения комплексной матрицы'

Применение треугольного систолического массива для QR-разложения комплексной матрицы Текст научной статьи по специальности «Математика»

CC BY
444
162
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Мальцев А. А., Пестрецов В. А., Хоряев А. В., Масленников Р. О.

Предложена архитектура систолического массива, который может быть использован в сверхбольших интегральных схемах (СБИС) для аппаратной реализации алгоритма QR-разложения комплексных матриц. Предложенная архитектура является эффективной для реализации в СБИС, поскольку использует только алгоритм Coordinate Rotation Digital Computer (CORDIC) и, следовательно, не использует операций умножения. Рассматриваемый систолический массив основан на методе трехугольных комплексных вращений и позволяет получить значительный выигрыш в производительности по сравнению с традиционно используемым методом комплексных вращений Гивенса.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Мальцев А. А., Пестрецов В. А., Хоряев А. В., Масленников Р. О.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

TRIANGULAR SYSTOLIC ARRAY FOR QR-DECOMPOSITION OF COMPLEX MATRICES

We propose a novel Coordinate Rotation Digital Computer (CORDIC)-based architecture of the Triangular Systolic Array for QR-Decomposition (QRD) of large-size complex matrices. The proposed architecture relies on QRD using a three angle complex rotation approach that provides significant reduction of latency (systolic operation time) and makes the QRD in such a way that the upper triangular matrix R has only real diagonal elements.

Текст научной работы на тему «Применение треугольного систолического массива для QR-разложения комплексной матрицы»

РАДИОФИЗИКА

УДК 621.391

ПРИМЕНЕНИЕ ТРЕУГОЛЬНОГО СИСТОЛИЧЕСКОГО МАССИВА ДЛЯ QR-РАЗЛОЖЕНИЯ КОМПЛЕКСНОЙ МАТРИЦЫ

© 2007 г. АА. Мальцев, В.А. Пестрецов, А.В. Хоряев, Р.О. Масленников

Нижегородский госуниверситет им. Н.И. Лобачевского maltsev@rf.unn.ru

Пектупола вредакцою 9.04.2007

Предложена архитектура систолического массива, который может быть использован в сверхбольших интегральных схемах (СБИС) для аппаратной реализации алгоритма QR-разложения комплексных матриц. Предложенная архитектура является эффективной для реализации в СБИС, поскольку использует только алгоритм Coordinate Rotation Digital Computer (CORDIC) и, следовательно, не использует операций умножения. Рассматриваемый систолический массив основан на методе трехугольных комплексных вращений и позволяет получить значительный выигрыш в производительности по сравнению с традиционно используемым методом комплексных вращений Г ивенса.

Введение

Современные стандарты радиосвязи, основанные на технологии ортогонального частотного разделения OFDM (orthogonal frequency division multiplexing), используют многоэлементные антенные решетки (multiple-input-multiple-output - MIMO системы) с целью увеличения пропускной способности и/или надежности передачи данных. Производительность и сложность реализации MIMO-OFDM систем связи существенным образом зависит от числа антенн, используемых на передающем и приемном концах линии передачи. Поэтому актуальной является задача построения эффективных вычислительных архитектур, реализующих алгоритмы многоканальной пространственной обработки сигналов для большого числа антенн.

Наиболее простыми и эффективными схемами детектирования сигналов, используемыми в MIMO-OFDM системах передачи данных, являются многоканальные линейные методы обработки ZF (zero - forcing) и минимума среднеквадратичной ошибки MMSE (minimum mean square error). В случае MIMO-OFDM систем связи, их реализация заключается в вычислении весовых матриц для каждой отдельной подне-сущей (или группы соседних поднесущих) и последующего умножения вектора принятых сигналов (составленного из сигналов с разных приемных антенн) на оцененную матрицу весовых коэффициентов. Весовые матрицы для ZF и

MMSE алгоритмов рассчитываются по следующим формулам:

W(i) = (Н(/ )н Н(/)) _1Н(/)н, (1)

W(i) = (Щ(/)н Щ(/) + р(/)1)-1 Щ(/)н , (2)

где / - индекс частотной поднесущей, W(i) -весовая матрица для /-ой поднесущей, Н(/) -коэффициент передачи канала связи /-ой поднесущей, I - единичная матрица и р(/) - обратное отношение сигнал шум (ОСШ) для /-ой поднесущей, надстрочные индексы (-1) и (н) - обозначают операции обращения и эрмитова сопряжения матрицы соответственно.

Как можно видеть из уравнений (1), (2) для реализации ZF или MMSE алгоритмов необходима операция обращения комплексной матрицы, являющаяся наиболее вычислительно сложной при многоканальной обработке в М1МО-OFDM системах связи. Вычисление обратной матрицы должно быть выполнено для каждой поднесущей, что требует больших вычислительных затрат, поскольку число поднесущих обычно изменяется в пределах от 64 до 1024. Матрицы, для которых должно быть выполнено обращение, являются квадратными размерности КхЫ", где N - минимум из числа передающих и числа приемных антенн. Для практически используемых в настоящее время систем связи N изменяется в пределах от 2 до 4. Чтобы не внести значительных задержек в приемный тракт обработки сигнала, оценка весовых матриц W для всех поднесущих должна выполняться за

время, сравнимое с длительностью одного OFDM символа (~10-5 с.). Очевидно, что для удовлетворения этим жестким требованиям необходимо использовать специализированный вычислительный блок, выполняющий операции обращения матриц.

Известно, что одним из эффективных подходов к проблеме обращения матрицы является применение QR-разложения. QR-разложение матрицы V определяет матрицы Q и R таким образом, что V=QR, где Q - унитарная матрица и R - верхняя треугольная матрица. Если матрица V разложена на Q и R, тогда обратная матрица V-1 может быть найдена по формуле

V-1 = (QR)-1 = R-1Q-1 = R-1QH . (3)

Следует отметить, что обратной к матрице Q

пН

является эрмитово сопряженная матрица Q , а обращение верхней треугольной матрицы R может быть эффективно выполнено, используя метод обратной подстановки.

Широкое распространение QR-разложение получило благодаря возможности эффективной реализации данного метода с помощью специализированного устройства - треугольного систолического массива (ТСМ), с вычислительными ячейками, основанными на алгоритме CORDIC [1]. Данное обстоятельство позволяет полностью выполнить QR-разложение без операций умножения.

Таким образом, в настоящее время вычислительные архитектуры, основанные на QR-разложении, рассматриваются как наиболее перспективные для реализации пространственной обработки сигналов в MIMO-OFDM системах с большим числом передающих и приемных антенн. Например, в [2] была предложена эффективная параллельная архитектура ТСМ, вычисляющего QR-разложение на основе метода комплексных вращений Гивенса, предназначенная для применения в радиосистемах связи.

В данной работе для вычисления QR-разложения предложена новая архитектура ТСМ с вычислительными ячейками, использующими алгоритм CORDIC, в которых применены комплексные трехугольные вращения, вместо вращений Гивенса. Предложенная архитектура обеспечивает значительное сокращение времени, требуемого для выполнения QR-разложения, используя те же вычислительные ресурсы (вычислительные ячейки CORDIC). Вторым преимуществом предложенной схемы является выполнение QR-разложения таким образом, чтобы верхняя треугольная матрица R имела только действительные диагональные элементы. Данный факт существенно упрощает

последующее обращение матрицы R при использовании алгоритма обратной подстановки, требующего деления на диагональные элементы матрицы R.

Алгоритмы вычисления QR-разложения

Рассмотрим метод комплексных вращений Гивенса и метод трехугольных комплексных вращений для нахождения QR-разложения полной комплексной матрицы. Метод комплексных вращений Гивенса состоит во введении нулевых элементов в матрицу с помощью серии унитарных преобразований - вращений. Данный тип преобразований часто используется для решения задачи нахождения QR-разложения. С помощью обнуляющих комплексных вращений можно свести матрицу, например, к верхнему треугольному виду. Это можно осуществить, последовательно применяя вращения к матричным элементам, расположенным ниже главной диагонали [3]. Основная идея использования метода комплексных вращений Гивенса для нахождения QR-разложения может быть проиллюстрирована на примере комплексной матрицы V2x2 размерности 2x2:

"Ае1в Се1в'

Ве1 вь De1 в“

(4)

где j - мнимая единица; A, B, C, D представляют амплитуды и ва, 6ъ, 6c, 6d - комплексные углы соответствующих матричных элементов.

Комплексное вращение Гивенса, однозначно определяемое двумя углами 61 и 62, может быть введено с помощью следующей матричной операции:

cos91 sin

- sin &e-]в2 cos9

- J (5)

dp e 1 Ce]9c" 1 £ 1 £

1 B 9 1 e Q 0 Zel9z

где, для приведения матрицы к нижнему треугольному виду, углы в\ и в2 выбираются как:

в1 = tan-1( B / A)

92 = 9а -9Ъ .

(6)

Альтернативным унитарным преобразованием, обращающим в ноль заданные матричные элементы, является метод трехугольных комплексных вращений. Для матрицы V2x2 преобразование трехугольных комплексных вращений может быть записано как:

Z =

в1е] 92 sin#1e] 9з

cos

- sin91e] 92

sin 9 9 cos91e] 9з

(7)

x

Чтобы привести матрицу (4) к верхнему треугольному виду требуется выбрать углы 0Ь 02, 03 следующим образом:

вх = tan-1( В / А)

°2 =-0а ,

^3 = -&ь ■

(8)

Прямой подстановкой несложно показать, что для матрицы преобразования выполняется следующее соотношение:

cos де0 sin О^-0

- sin де0 cos Ое0

(9)

АЄва Се]вс 1 е і

Вє]вь 1 е 3 1 О е 1

Из уравнения (9) следует важное свойство трехугольных комплексных вращений, заключающееся в том, что элемент X получающейся после преобразования треугольной матрицы является действительным. В случае разложения матрицы размерности NxN, применение трехугольных комплексных вращений позволяет получить матрицу с действительными элементами на главной диагонали, за исключением правого нижнего элемента. Далее можно применить еще одно простое унитарное преобразование, которое позволяет сделать действительными все элементы главной диагонали. Достигнутое таким образом свойство преобразования является важным упрощающим преимуществом

“1 0 ' X і £ X Yeiвy

0 е ~]в* 0 1 N 1 0 N і

при составлении алгоритмов обращения для треугольной матрицы.

Возвращаясь к примеру приведения матрицы (4) к верхнему треугольному виду, дополнительно к преобразованию (9) необходимо добавить легко расширяющееся для случая матрицы размерности NxN простое унитарное преобразование следующего вида:

(10)

Дополнительное унитарное преобразование на последнем шаге алгоритма может быть легко учтено при аппаратной реализации путем добавления дополнительного узла на основе алгоритма СОЯСГС к предложенной архитектуре ТСМ.

В следующих разделах будет показан выигрыш в производительности, который достигается применением трехугольных комплексных вращений вместо комплексных вращений Гивенса в узлах ТСМ.

Архитектура ТСМ на основе метода трехугольных комплексных вращений

На рис. 1 представлена блок-диаграмма треугольного систолического массива (ТСМ), который может быть использован для вычисления QR-разложения матрицы размерности 4x4. В данной архитектуре, в качестве вычислительных узлов, используются три типа процессоров:

і

І

ПЗ

1

1

0

0 1

0 0 0

0 1 0 ,

0 0 у34

1,, у24 у33

'*14 У23 У32

V13 V* V31

у12 У21

<I.

1 о о

0 --'1 УАА *43 У42

Г41

Зма

*■ П

І

► П

І

к п

Единичная

матрица

Входная комплексная матрица V размерности 4x4

Комплексная

унитарная

матрица Он ...................

4 о а а /г г г г*/

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

14 13 12 11/ 14 13 12 11/

а а а а /г г г* О

24 23 22 21/ 24 23 22

Комплексная

верхняя

Ч34Ч33Ч32%1/Г34 гзз 0 0 /треугольнаяматрица

'' с действительным элементами на главной диагонали

4444 /г* 0 0 О

44 43 42 41/ 44

£.________■

Результат вычислений

Рис. 1. Блок-схема треугольного систолического массива

х

З - процессор задержки, П - процессор основной обработки, В - вращающий процессор.

Элементарное время работы ТСМ называется систолическим циклом. За время систолического цикла происходит выполнение одной операции в вычислительных процессорах и передача полученных данных другим узлам ТСМ, после чего начинается следующий систолический цикл.

Так же на рис. 1 показана организация входных и выходных потоков данных. Входной матрицей является матрица V размерности 4x4, которая должна загружаться со сдвигом строчек во времени на один систолический цикл. За матрицей, подлежащей обработке, следует единичная матрица, которая служит для формирования унитарной матрицы QH на выходе ТСМ. В качестве дополнительного управляющего сигнала каждому диагональному элементу матрицы V присваивается флаг «*», который должен распространяться по систолическому массиву вместе с данными.

В режиме векторизации СОИЛІС устройства процессора П используются для вычисления угла и амплитуды входного значения [4]. В данном режиме процессор П получает комплексные входные значения а и Ь с западного W и северного N портов соответственно (см. рис. 2б). Затем процессор вычисляет три угла ва=а^(а), вь=ащ(Ъ) и ^аг^ОйИа!), которые сохраняются во внутренних регистрах. Так же на восточный выходной Е порт передается ам-

плитудное значение

и нулевое зна-

чение на южный порт S. Режим векторизации требует вычисления 3-х операций алгоритма СОИЛІС (см. рис. 3). Флаг «*» должен быть передан с северного порта N на южный порт S без изменений с задержкой на один систолический цикл.

В режиме вращения СОЯБІС устройства процессора П используются для вращения комплексного числа в полярных координатах [4]. В данном режиме входные значения а и Ь, полученные с западного W и северного N портов преобразуются в выходные комплексные значения х и у в соответствии со следующим уравнением:

х СОЭ^

_ у _ - sin в1 СОЭ#!

На рис. 2 показаны типы процессоров, использованных в ТСМ. Процессор задержки З (см. рис. 2а) принимает входное комплексное значение с северного входа N задерживает его на один систолический цикл и передает на восточный выход Е. Флаг «*» задерживается аналогичным образом.

Процессор основной обработки П (см. рис. 2б) является наиболее сложным процессором в ТСМ. Он состоит из аппаратных устройств, реализующих алгоритм СОИЛІС (СОИЛІС устройств), количество которых в процессоре может варьироваться в зависимости от требуемой производительности. Каждый процессор П спроектирован для работы в двух режимах: векторизации и вращения. Управляющим сигналом для выбора режима работы является флаг «*». Если входное значение, пришедшее с западного порта W, содержит флаг «*», то процессор обработает входные значения в режиме векторизации, в противоположном случае - в режиме вращения.

- / „ ч п г п (И)

ехр(- іва) 0 а

0 ехр(- івь) Ь ’

где ва, вь и в1 - три взятые из регистров угла, полученные в режиме векторизации. Преобразованные комплексные значения х и у передаются соответственно на восточный Е и южный S порты. Управляющий сигнал, если он получен с западного порта W, передается на восточный порт Е без изменений с задержкой на один систолический цикл.

Вращающий процессор В (см. рис. 2в) внесен в структуру массива для приведения к действительному виду нижнего правого элемента матрицы R. Он так же реализован с помощью СОИЛІС устройств и может работать в двух режимах: векторизации и вращения. Если входное значение на северном порту N содержит флаг «*», тогда процессор производит вычисления в режиме векторизации, в противоположном случае - в режиме вращения. Флаг «*» передается с входного порта N на выходной порт Е без изменений, но так же с задержкой на один систолический цикл.

В режиме векторизации комплексное значение Ь с северного порта N подается на СОЯБГС устройство для вычисления комплексного угла

X

1п(Ь ■ ехр (102))

Процессор П в режиме вращения

Рис. 3. Диаграмма потока данных для метода комплексных вращений Гивенса

Процессор П в режиме вращения

Рис. 4. Диаграмма потока данных для метода треугольных комплексных вращений Время работы процессора П для выполнения одного систолического цикла

Таблица

Метод вычисления Время работы процессора П, содержащего два устройства CORDIC

Режим векторизации Режим вращения

Комплексные вращения Гивенса 3К+2^рс 3К+2 NsFс

Треугольные комплексные вращения Ж+^рс 2К+^рс

Уменьшение времени вычислений М+^рс М+^БС

6b=arg(b) и амплитуды |b|. Вычисленный угол сохраняется во внутреннем регистре 6reg=arg(b), а амплитуда передается на восточный порт E.

В режиме вращения комплексное значение b с северного порта N поворачивается с помощью CORDIC устройства на угол 6reg, сохраненный в регистре. Результат операции x=exp(-i6reg)-b передается на выходной порт E.

Сравнение характеристик ТСМ на основе методов комплексных вращений Г ивенса и треугольных комплексных вращений

Поскольку архитектура ТСМ одинакова для методов комплексных вращений Гивенса и трехугольных комплексных вращений, производительность ТСМ будет определяться производительностью его процессоров. Для сравнения QR-разложения с помощью метода комплексных вращений Гивенса и метода трехугольных комплексных вращений была рассмотрена реализация процессора П, состоящего из двух CORDIC устройств. На рис. 3 и 4 показаны диаграммы потоков данных для этих случаев. Как видно из рисунка, для обоих режимов

- вращения и векторизации, вариант устройства с применением трехугольных комплексных вращений требует меньшего времени для выполнения необходимой операции.

В таблице приведено время работы процессора П, необходимое для выполнения одного систолического цикла для двух методов вычислений. Время вычислений определяется двумя параметрами: числом тактов работы CORDIC устройства, требуемым для обработки одного входного значения - N, и числом тактов, необходимых для коррекции коэффициента увеличения масштаба (scale factor correction) алгоритма

CORDIC - Nsfc. Коррекция коэффициента увеличения масштаба может быть выполнена сразу для двух входных значений на аппаратных ресурсах одного и того же CORDIC устройства [4].

Минимальное время коррекции коэффициента увеличения масштаба может быть равно Nsfc = N/4 [4]. Тогда, как это следует из таблицы, предложенная архитектура ТСМ на основе трехугольных комплексных вращений обеспечивает на 35% меньшее время работы процессора П и пропорционально увеличивает производительность всего ТСМ.

Заключение

В данной работе предложена архитектура треугольного систолического массива на основе метода трехугольных комплексных вращений. Данная архитектура оптимизирована для реализации в сверхбольших интегральных схемах, позволяя эффективно выполнять операцию QR-разложения комплексных матриц с использованием только алгоритма CORDIC. По сравнению с систолической архитектурой, основанной на методе комплексных вращений Гивенса, предложенная архитектура может обеспечить выигрыш до 35% во времени вычисления QR-разложения.

Список литературы

1. Voider, J. // IRE Trans. Electronic Computers / J. Voider. - 1959. - EC-8(3). - P. 330.

2. Mingqian, T.Z. // International J. on Wireless & Optical Communications / T.Z. Mingqian, F. Chin, A.S. Mad- hukumary. - 2003. - V. 1, № 1. - P. 25-39.

3. El-Amawy, A. // IEE Proceedings / A. El-Amawy, K.R. Dharmaranjan. - 1989. - V. 136, № 6. - P. 575-580.

4. Cavallaro, J.H. // J. of Parallel and Distributed Computing / J.H. Cavallaro, F.T. Luk. - 1988. - V. 5, № 3. - P. 271-290.

TRIANGULAR SYSTOLIC ARRAY FOR QR-DECOMPOSITION OF COMPLEX MATRICES

A.A. Maltsev, V.A. Pestretsov, A. V. Khoryaev, R.O. Maslennikov

We propose a novel Coordinate Rotation Digital Computer (CORDIC)-based architecture of the Triangular Systolic Array for QR-Decomposition (QRD) of large-size complex matrices. The proposed architecture relies on QRD using a three angle complex rotation approach that provides significant reduction of latency (systolic operation time) and makes the QRD in such a way that the upper triangular matrix R has only real diagonal elements.

i Надоели баннеры? Вы всегда можете отключить рекламу.