QR-разложение без Q для комплексных матриц
Fixed-Point Designer с фиксированной точкой


Блок Complex Partial-Systolic Q-less QR Decomposition использует QR-разложение, чтобы вычислить размер экономии верхне-треугольный коэффициент R QR-разложения A = Q R, где A является сложной матрицей, без вычисления Q. Решение к A' <reservedrangesplaceholder6> <reservedrangesplaceholder5> = B x = R \R' \b.
A(i,:) - Строки матричных AСтроки матричных A, заданные как вектор. A m n матрицей где <reservedrangesplaceholder7> ≥ 2 и <reservedrangesplaceholder6> ≥ 2. Если B одинарная или двойная, A должен быть совпадающий тип данных, что и B. Если A является типом данных с фиксированной точкой, A должны быть подписаны, используйте двоичное масштабирование с точкой и иметь тот же размер слова, что и B. Представление смещения откоса не поддерживается для типов данных с фиксированной точкой.
Типы данных: single | double | fixed point
Поддержка комплексного числа: Да
validIn - Действительны ли входыBoolean скалярЯвляются ли входы допустимыми, задается как логический скаляр. Этот сигнал управления указывает, когда данные в A(i,:) входном порте действительны. Когда это значение равняется 1 (true) и значение в ready равняется 1 (true), блок захватывает значения в A(i,:) входном порте. Когда это значение 0 (false), блок игнорирует вход выборки.
После отправки true
validIn сигнал, может быть некоторая задержка, прежде чем ready будет установлено на false. Чтобы убедиться, что все данные обработаны, вы должны подождать, пока ready не будет установлено на false перед отправкой другого true
validIn сигнал.
Типы данных: Boolean
restart - Очистить ли внутренние состоянияBoolean скалярОчистить ли внутренние состояния, заданный как логический скаляр. Когда это значение равняется 1 (true), блок останавливает текущее вычисление и очищает все внутренние состояния. Когда это значение 0 (false) и validIn значение равняется 1 (true), блок начинает новый подкадр.
Типы данных: Boolean
R - Матричная RРазмер экономии QR матрица разложения R, возвращенная как скаляр или вектор. R является верхней треугольной матрицей. R имеет совпадающий тип данных, что и A.
Типы данных: single | double | fixed point
validOut - Действительны ли выходные данныеBoolean скалярЯвляются ли выходные данные допустимыми, задается как логический скаляр. Этот сигнал управления указывает, когда данные на выходном порте R действительны. Когда это значение равняется 1 (true), блок успешно вычислил матричную R. Когда это значение 0 (false), выходные данные недопустимы.
Типы данных: Boolean
ready - Готов ли блокBoolean скалярГотов ли блок, возвращается как логический скаляр. Этот сигнал управления указывает, когда блок готов к новым входным данным. Когда это значение 1 (true) и validIn значение 1 (true), блок принимает входные данные на следующем временном шаге. Когда это значение 0 (false), блок игнорирует входные данные на следующем временном шаге.
После отправки true
validIn сигнал, может быть некоторая задержка, прежде чем ready будет установлено на false. Чтобы убедиться, что все данные обработаны, вы должны подождать, пока ready не будет установлено на false перед отправкой другого true
validIn сигнал.
Типы данных: Boolean
Number of rows in matrix A - Количество строк во входной матрице A4 (по умолчанию) | положительный скаляр с целым числомКоличество строк во входной матричной A, заданное как положительный целочисленный скаляр.
Параметры блоков:
m |
| Тип: Вектор символов |
| Значения: положительный целый скаляр |
По умолчанию:
4 |
Number of columns in matrix A - Количество столбцов во входной матрице A4 (по умолчанию) | положительный скаляр с целым числомКоличество столбцов во входной матричной A, заданное как положительный целочисленный скаляр.
Параметры блоков:
n |
| Тип: Вектор символов |
| Значения: положительный целый скаляр |
По умолчанию:
4 |
Частично-систематические реализации расставляют приоритеты скорости расчетов по сравнению с пространственными ограничениями, в то время как пакетные реализации расставляют приоритеты пространственных ограничений за счет скорости операций. Следующая таблица иллюстрирует компромиссы между реализациями, доступными для матричных разложений, и решающими системами линейных уравнений.
| Реализация | Готов | Время ожидания | Область | Образец блока или примера |
|---|---|---|---|---|
| Систолический | C | O (n) | O (m n2) | Реализуйте аппаратно-эффективное QR-разложение с помощью CORDIC в Systolic Array |
| Частичностополический | C | O (m) | O (n2) | |
| Частичная систематическая с забывающим фактором | C | O (n) | O (n2) | Оптимизированный HDL-дисперсия с фиксированной точкой, без искажений-ответ (MVDR), Beamformer |
| Взрыв | O (n) | O (mn2) | O (n) |
Где C - константа, пропорциональная размеру слова данных, m - количество строк в матричном A, а n - количество столбцов в матричном A.
В следующей таблице приведены подробные сведения о времени для блоков QR-разложения.
| Блок | validIn на ready (c) | validIn на validOut (v циклов) |
|---|---|---|
| Real Partial-Systolic QR Decomposition | c = w + 8 | v = c (m + n - 1) |
| Complex Partial-Systolic QR Decomposition | c = 2 w + 15 | v = c (m + n - 1) |
| Real Partial-Systolic Q-less QR Decomposition | c = w + 8 | v = c (m + n - 1) |
| Complex Partial-Systolic Q-less QR Decomposition | c = 2 w + 15 | v = c (m + n - 1) |
| Real Partial-Systolic Q-less QR Decomposition with Forgetting Factor | c = w + 8 | v = c (2 n - 1) |
| Complex Partial-Systolic Q-less QR Decomposition with Forgetting Factor | c = 2 w + 15 | v = c (2 n - 1) |
В таблице m представляет количество строк в матричных A, а n - количество столбцов в матричных A. w представляет размер слова A.
Если тип данных A является фиксированной точкой, то w является размером слова.
Если тип данных A double, то w равен 53.
Если тип данных A одинарный, то w равно 24.
Представление смещения откоса не поддерживается для типов данных с фиксированной точкой.
HDL Coder™ предоставляет дополнительные опции строения, которые влияют на реализацию HDL и синтезированную логику.
Этот блок имеет одну архитектуру HDL по умолчанию.
| Общая информация | |
|---|---|
| ConstrainedOutputPipeline | Количество регистров для размещения на выходах путем перемещения существующих задержек в рамках вашего проекта. Распределённая конвейеризация не перераспределяет эти регистры. Значение по умолчанию является |
| InputPipeline | Количество входных этапов конвейера для вставки в сгенерированный код. Распределённая конвейеризация и ограниченная выходная конвейеризация могут перемещать эти регистры. Значение по умолчанию является |
| OutputPipeline | Количество выходных этапов конвейера для вставки в сгенерированный код. Распределённая конвейеризация и ограниченная выходная конвейеризация могут перемещать эти регистры. Значение по умолчанию является |
Поддерживает только типы данных с фиксированной точкой.
A должны быть подписаны и использовать двоичное масштабирование точек. Представление смещения откоса не поддерживается для типов данных с фиксированной точкой.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.