RU2037199C1 - Устройство для обращения n x n матриц - Google Patents
Устройство для обращения n x n матриц Download PDFInfo
- Publication number
- RU2037199C1 RU2037199C1 SU4828531A RU2037199C1 RU 2037199 C1 RU2037199 C1 RU 2037199C1 SU 4828531 A SU4828531 A SU 4828531A RU 2037199 C1 RU2037199 C1 RU 2037199C1
- Authority
- RU
- Russia
- Prior art keywords
- input
- elements
- output
- block
- inputs
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Изобретение относится к вычислительной технике и может быть использовано в высокопроизводительных специализированных вычислительных машинах и устройствах обработки сигналов для обращения n n-матриц. Цель изобретения - сокращение аппаратурных затрат. Цель достигается тем, что устройство содержит фиксированное число m вычислительных модулей, где m < n, причем каждый вычислительный модуль содержит три триггера, три параллельных регистра, пять сдвигающих регистров, умножитель, вычитатель, узел вычисления обратной величины числа, два элемента НЕ, пять элементов И, десять блоков элементов И и четыре блока элементов ИЛИ. 2 ил.
Description
Изобретение относится к вычислительной технике и может быть использовано в высокопроизводительных специализированных вычислительных машинах и устройствах обработки сигналов для обращения (n x n)-матриц.
На фиг. 1 представлена структурная схема устройства для обращения (n x n)-матриц; на фиг. 2 схема вычислительного модуля.
Устройство для обращения (n x n)-матриц (фиг. 1) содержит информационный вход 1, первый 2, второй 3, третий 4 и четвертый 5 входы режима, синхровход 6, вычислительные блоки 7i (i ), узел сдвигающих регистров 8i (i ), первый 9, второй 10 и третий 11 сдвигающие регистры, блок 12 элементов И, блок 13 элементов ИЛИ, первый 14, второй 15 и третий 16 элементы И, первый 17, второй 18 и третий 19 элементы ИЛИ и выход 20.
Вычислительный модуль 7 (фиг. 2) содержит информационный вход 21, первый 22, второй 23 и третий 24 входы режима, синхровход 25, регистры 26, 27 и 28, узлы 29 и 31 задержки, регистры 30i (i ) и 32i (i ) узлов задержки, умножитель 33, вычитатель 34, узел 35 вычисления обратной величины числа, триггеры 36, 37 и 38, сдвигающие регистры 39, 40 и 41, триггеры 42i (i ), 43i (i ) и 44i (i ) сдвигающих регистров, блоки 45-54 элементов И, блоки 55-58 элементов ИЛИ, элементы И 59-63, элементы НЕ 64 и 65, первый 66 и второй 67, третий 68 и четвертый 69 выходы.
В основу работы устройства положен метод Гаусса-Жордана, который представляется следующими рекуpрентными соотношениями:
B A-1;
a ) aij, i,j
a 1, a +i 0, i , j
k
akk (k) 1/akk (k-1)
a ) a -1), i
a ) a -1)·a ), j
a ) a -1)-a )·a ), i
a ,j a ), j
bij an+i,n+j (n).
Вычислительный модуль обладает возможностью выполнения функций вида
Uj+n+3 αj;
Vj+n+3 βj;
Wj+n+3 γj, где αj, βj и γj значения на первом, втором и третьем входах режима вычислительного модуля на j-м такте
Uj, Vj и Wj значения на втором, третьем и четвертом выходах вычислительного модуля на j-м такте,
Fj+1
Fj+n+2 aj, если ( αj βj γj) (1,0,1)v(0,0,1), где aj значение на информационном входе вычислительного модуля на j-м такте;
bj+1 aj/aj-z при ( αj βj γj) (1,0,0) v (1,0,1);
сj+1 aj при (αj βj γj) (1,1,0);
P
z n + 1;
Fj значение на выходе вычислительного модуля на j-м такте.
B A-1;
a
a
k
akk (k) 1/akk (k-1)
a
a
a
a
bij an+i,n+j (n).
Вычислительный модуль обладает возможностью выполнения функций вида
Uj+n+3 αj;
Vj+n+3 βj;
Wj+n+3 γj, где αj, βj и γj значения на первом, втором и третьем входах режима вычислительного модуля на j-м такте
Uj, Vj и Wj значения на втором, третьем и четвертом выходах вычислительного модуля на j-м такте,
Fj+1
Fj+n+2 aj, если ( αj βj γj) (1,0,1)v(0,0,1), где aj значение на информационном входе вычислительного модуля на j-м такте;
bj+1 aj/aj-z при ( αj βj γj) (1,0,0) v (1,0,1);
сj+1 aj при (αj βj γj) (1,1,0);
P
z n + 1;
Fj значение на выходе вычислительного модуля на j-м такте.
Вычислительный модуль работает в шести режимах.
В первом режиме на входы 2, 3 и 4 подаются соответственно управляющие сигналы ( α β γ ) (1,1,0). При этом триггеры 36, 37 и 38 устанавливаются соответственно в состояния "1", "1" и "0", на выходе элемента И 59 формируется единичный сигнал, который открывает блок 45 элементов И. Элемент а, подаваемый на вход 21, через блок 45 элементов И и блок 55 элементов ИЛИ по заднему фронту тактового импульса записывается в регистр 28. Содержимое регистра 30i (i ) переписывается в регистр 30i+1. Управляющие сигналы ( α β γ ) выдаются соответственно на выходы 67, 68 и 69 с задержкой на n + 3 тактов.
Во втором режиме подаются управляющие сигналы ( α β γ ) (1,0,0). При этом на выходе элементов И 61 и НЕ 64, 65 формируется единичный сигнал, открываются блоки 46, 47, 48, 50 элементов И и элемент И 63. Элемент akj (k-1) , подаваемый на вход 21, через блок элементов 46 И по заднему фронту тактового импульса записывается в регистр 26. Содержимое регистра 30i (i=1,n-1 ) переписывается в регистр 30i+1, а содержимое аkk (k-1) регистра 30n в регистр 301 через блок 47 элементов И и блок 55 элементов ИЛИ. На входе узла 35 вычисления обратной величины числа формируется значение akk (k) 1/akk (k-1), которое подается на первый вход умножителя 33 через блок 50 элементов И и блок 57 элементов ИЛИ, на второй вход умножителя 33 подается с выхода регистра 26 элемент аkj (k-1) через блок 48 элементов И и блок 56 элементов ИЛИ. На выходе умножителя 33 формируется значение аkj (k) akj (k-1) ˙akk (k), которое записывается на следующем такте по переднему фронту тактового импульса в регистр 27 (регистр 27 построен на однотактовых триггерах).
В третьем режиме подаются управляющие сигналы ( α β γ ) (0,0,0). На выходе элемента И 60 и элементов НЕ 64, 65 формируется единичный сигнал, открываются блоки 46, 47, 49, 51 и 52 элементов И. На вход 21 подается элемент aij (k-1) и записывается в регистр 26. В регистре 27 хранится элемент akj (k). В регистрах 28 и 30i (i 1,n ) происходит циклическая перезапись (в регистр 28 записывается элемент аik (k). На первый вход умножителя 33 подается элемент aik (k) с выхода регистра 28 через блок 51 элементов И и блок 57 элементов ИЛИ. На второй вход умножителя 33 подается элемент аkj (k) с выхода регистра 27 через блок 49 элементов И и блок 56 элементов ИЛИ. На выходе умножителя 33 формируется значение аik (k) ˙akj (k), которое подается на первый вход вычитателя 34, на второй вход которого подается значение аij (k-1) с выхода регистра 26. На выходе вычитателя 34 формируется значение aij (k)= aij (k-1) aik(k) ˙akj (k), которое через блок 52 элементов И и блок 58 элементов ИЛИ выдается на выход 66.
В четвертом режиме подаются управляющие сигналы ( α β γ ) (0,1,0). При этом в регистрах 28 и 30i (i ) информация циклически переписывается (блок 47 элементов И открыт). Содержимое akj (k) регистра 27 через открытый блок 53 элементов И (на выходе элемента И 62 единичный сигнал) и блок 58 элементов ИЛИ выдается на выход 66.
В пятом режиме подаются управляющие сигналы ( α β γ ) (1,0,1). На вход 21 подается число, равное единице и записывается регистр 26 (блок 46 элементов И открыт). В регистрах 28 и 30i (i 1,n ) информация циклически перезаписывается (блок 47 элементов И открыт). В регистр 28 записывается элемент аkk (k-1), с выхода которого подается на узел 35 вычисления обратной величины числа. Значение аk,k+n (k) 1/akk (k-1) с выхода узла 35 вычисления обратной величины числа через открытый блок 50 элементов И (на выходе элемента И 61 единичный сигнал) и блок 57 элементов ИЛИ подается на первый вход умножителя 33, на второй вход которого подается единица с выхода регистра 26 через открытый блок 48 элементов И и блок 56 элементов ИЛИ. На выходе умножителя 33 формируется значение аk,k+n (k) 1/akk (k-1), которое записывается в регистр 27 на следующем такте (элемент И 63 открыт, что обеспечивает прохождение тактового импульса на вход синхронизации регистра 27). С выхода регистра 26 единица на следующем такте записывается в регистр 321 (блок 54 элементов И открыт).
В шестом режиме подаются управляющие сигналы ( α β γ ) (0,0,1). Нулевое число подается на вход 21 и записывается в регистр 26. На первый и второй входы умножителя 33 подаются соответственно элемент aik (k) с выхода регистра 28 и элемент аk,k+n (k) с выхода регистра 27. На выходе умножителя 33 формируется значение аik (k) ˙ak,k+n (k), которое подается на первый вход вычитателя 34, на второй вход которого подается нулевое значение с выхода регистра 26. На выходе вычитателя 34 формируется значение аik (k) ˙ak,k+n (k), которое подается на выход 66. Работает устройство следующим образом.
Кроме того, на вход 1 подается единичное значение на n(n + 1)-м такте, а нулевые значения подаются с [n(n + 1) + 1]-го такта по [(n + 1)n + n 1]-й такт.
На управляющие входы 2, 3 и 4 подаются соответственно управляющие сигналы
( α β γ ) (1,1,0) с 0-го такта по n-й такт;
( α β γ ) (1,0,0) на (n + 1)-м такте;
( α β γ ) (0,0,0) с (n + 2)-го такта на 2n-й такт.
( α β γ ) (1,1,0) с 0-го такта по n-й такт;
( α β γ ) (1,0,0) на (n + 1)-м такте;
( α β γ ) (0,0,0) с (n + 2)-го такта на 2n-й такт.
Эта группа из n управляющих сигналов (1,0,0) и (0,0,0) повторяется еще n- 2 раза:
( α β γ ) (1,0,1) на n(n + 1)-м такте;
( α β γ ) (0,0,1) с [n(n + 1) + 1]-го такта по [(n + 1)2 1]-й такт.
( α β γ ) (1,0,1) на n(n + 1)-м такте;
( α β γ ) (0,0,1) с [n(n + 1) + 1]-го такта по [(n + 1)2 1]-й такт.
Элемент обратной к А матрицы bij выдается на выходе 20 в моменты времени
t= (n/m 1)(n + 1)2 + (m 1)(n + 3) + i + (n + 1)j.
t= (n/m 1)(n + 1)2 + (m 1)(n + 3) + i + (n + 1)j.
Период ввода элементов матриц очередной задачи обращения в поточном режиме составляет (n/m)(n + 1)2 тактов.
Для обеспечения поточного режима при обращения L матриц на вход 5 подается управляющий сигнал τ равный нулю в моменты времени tτ = 0 (l 1)z + i, где z (n + 1); i 1,(n+1)2 l 1,L номер обращенной матрицы, равный единице в моменты времени
tτ = 1= (l 1)z + (n + 1)2 + i, i 1,(n+1)2(n/m-1).
tτ = 1= (l 1)z + (n + 1)2 + i, i 1,(n+1)2(n/m-1).
При τ 0 блок 12 элементов И и элементы И 14, 15 и 16 закрыты, элементы аij, подаваемые на вход 1, через блок 13 элементов ИЛИ подаются на информационный вход вычислительного модуля 71.
При τ 1 блок 12 элементов И и элементы И 14, 15 и 16 открыты, на инфоpмационный вход вычислительного модуля 71 подаются элементы аij с выхода регистра 8p через блок 12 элементов И и блок 13 элементов ИЛИ. Управляющие сигналы α β и γ подаются на настроечные входы вычислительного модуля 71 соответственно с выходов сдвигающих регистров 9, 10 и 11 через соответствующие элементы И 14, 15 и 16 и элементы ИЛИ 17, 18 и 19.
Таким образом исключается искажение информации по цепи обратной связи.
Claims (1)
- УСТРОЙСТВО ДЛЯ ОБРАЩЕНИЯ N X N МАТРИЦ, содержащее m вычислительных модулей, где m целое число, m < n, n порядок матрицы, причем первый - четвертый выходы i-го вычислительного модуля, где i 1, m-1, подключены соответственно к информационному входу, к первому третьему входам режима (i + 1)-го вычислительного модуля, первый выход m-го вычислительного модуля подключен к выходу результата устройства, синхровход которого подключен к синхровходам всех вычислительных модулей, отличающееся тем, что, с целью сокращения аппаратурных затрат, оно содержит узел сдвигающих регистров, три сдвигающих регистра, блок элементов И, блок элементов ИЛИ, три элемента И и три элемента ИЛИ, причем информационный вход устройства подключен к первому входу блока элементов ИЛИ, второй вход и выход которого подключены соответственно к выходу блока элементов И и к информационному входу первого вычислительного модуля, первый третий входы режима устройства подключены соответственно к первым входам первого третьего элементов ИЛИ, выходы которых подключены соответственно к первому третьему входам режима первого вычислительного модуля, первый выход m-го вычислительного модуля подключен к информационному входу узла сдвигающих регистров, выход переноса узла сдвигающих регистров подключен к первому входу блока элементов И, четвертый вход режима устройства к второму входу блока элементов И и к первым входам первого третьего элементов И, второй четвертый выходы m-го вычислительного модуля подключены соответственно к информационным входам первого третьего сдвигающих регистров, выходы переноса которых подключены соответственно к информационным входам первого третьего сдвигающих регистров, выходы переноса которых подключены соответственно к вторым входам первого третьего элементов И, выходы которых подключены соответственно к вторым входам первого третьего элементов ИЛИ, синхровход устройства подключен к входам сдвига всех сдвигающих регистров и узла сдвигающих регистров, причем каждый вычислительный модуль содержит три триггера, пять сдвигающих регистров, умножитель, вычитатель, три регистра, узел вычисления обратной величины, два элемента НЕ, десять блоков элементов И и четыре блока элементов ИЛИ, причем в каждом вычислительном модуле информационный вход вычислительного модуля подключен к первым входам первого и второго блоков элементов И, выходы которых подключены соответственно к первому входу первого блока элементов ИЛИ и к информационному входу первого регистра, выход которого подключен к первым входам третьего и четвертого блоков элементов И и к первому информационному входу вычитателя, выход которого подключен к первому входу пятого блока элементов И, выход которого подключен к первому входу второго блока элементов ИЛИ, выход которого подключен к первому выходу устройства, первый вход режима которого подключен к первому входу первого элемента И и к информационному входу первого триггера, прямой выход которого подключен к информационному входу первого сдвигающего регистра и к первому входу второго элемента И, выход которого подключен к первым входам третьего и шестого блоков элементов И и к второму входу чертвертого блока элементов И, выход которого подключен к первому входу третьего блока элементов ИЛИ, выход которого подключен к первому информационному входу умножителя, выход которого подключен к второму информационному входу вычитателя и к информационному входу второго регистра, выход которого подключен к первым входам седьмого и восьмого блоков элементов И, выход последнего подключен к второму входу третьего блока элементов ИЛИ, выход первого элемента И подключен к второму входу первого блока элементов И и входу первого элемента НЕ, выход которого подключен к первому входу девятого блока элементов И, выход которого подключен к второму входу первого блока элементов ИЛИ, выход которого подключен к информационному входу третьего регистра, выход которого подключен к входу узла вычисления обратной величины, к информационному входу второго сдвигающего регистра и к первому входу десятого блока элементов И, выход которого подключен к первому входу четвертого блока элементов ИЛИ, выход которого подключен к второму информационному входу умножителя, выход третьего элемента И подключен к входу записи/считывания второго регистра, выходы переноса первого и второго сдвигающих регистров подключены соответственно к второму выходу устройства и второму входу девятого блока элементов И, выход узла вычисления обратной величины подключен к второму входу шестого блока элементов И, выход которого подключен к второму входу четвертого блока элементов ИЛИ, второй вход режима устройства подключен к информационному входу второго триггера, к второму входу первого элемента И и входу второго элемента НЕ, выход которого подключен к второму входу второго блока элементов И, прямой выход второго триггера подключен к информационному входу третьего сдвигающего регистра и к первому входу третьего элемента И, выход которого подключен к второму входу седьмого блока элементов И, выход которого подключен к второму входу второго блока элементов ИЛИ, выход переноса третьего сдвигающего регистра подключен к третьему выходу устройства, третий вход режима которого подключен к информационному входу третьего триггера, прямой выход которого подключен к информационному входу четвертого сдвигающего регистра и второму входу третьего блока элементов И, выход которого подключен к информационному входу четвертого сдвигающего регистра, выход переноса которого подключен к третьему входу второго блока элементов ИЛИ, инверсный выход первого триггера подключен к второму входу третьего элемента И и к первому входу четвертого элемента И, выход которого подключен к вторым входам пятого, восьмого и десятого блоков элементов И, инверсный выход второго триггера подключен к вторым входам второго и четвертого элементов И, выход переноса четвертого сдвигающего регистра подключен к четвертому выходу устройства, синхровход которого подключен к входам сдвига всех сдвигающих регистров, к второму входу третьего элемента И, к входам записи/считывания первого и третьего регистров.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU4828531 RU2037199C1 (ru) | 1990-05-23 | 1990-05-23 | Устройство для обращения n x n матриц |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU4828531 RU2037199C1 (ru) | 1990-05-23 | 1990-05-23 | Устройство для обращения n x n матриц |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2037199C1 true RU2037199C1 (ru) | 1995-06-09 |
Family
ID=21516001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU4828531 RU2037199C1 (ru) | 1990-05-23 | 1990-05-23 | Устройство для обращения n x n матриц |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2037199C1 (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2562389C1 (ru) * | 2014-12-27 | 2015-09-10 | Артем Николаевич Новиков | Устройство обращения ковариационной матрицы помеховых сигналов |
-
1990
- 1990-05-23 RU SU4828531 patent/RU2037199C1/ru active
Non-Patent Citations (2)
Title |
---|
Авторское свидетельство СССР N 1444820, кл. G 06F 15/347, 1988. * |
Авторское свидетельство СССР N 1819020, кл. G 06F 15/347, 1989. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2562389C1 (ru) * | 2014-12-27 | 2015-09-10 | Артем Николаевич Новиков | Устройство обращения ковариационной матрицы помеховых сигналов |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS63167967A (ja) | ディジタル信号処理集積回路 | |
RU2037199C1 (ru) | Устройство для обращения n x n матриц | |
GB1330700A (en) | Real time fast fourier transform processor with sequential access memory | |
RU2011221C1 (ru) | Устройство для умножения матриц | |
RU2037197C1 (ru) | Устройство для решения систем линейных алгебраических уравнений | |
RU2012049C1 (ru) | Устройство для решения систем линейных алгебраических уравнений | |
RU2024933C1 (ru) | Устройство для умножения трех матриц | |
RU2012048C1 (ru) | Устройство для вычисления двумерного дискретного преобразования фурье | |
RU2024932C1 (ru) | Устройство для умножения трех матриц | |
RU2006937C1 (ru) | Устройство для перемножения матриц | |
SU1003080A1 (ru) | Конвейерное устройство дл вычислени функций синуса и косинуса | |
RU1777155C (ru) | Устройство дл LV-разложени матриц | |
SU1737462A1 (ru) | Устройство дл операций над матрицами | |
SU1633422A1 (ru) | Устройство дл решени систем линейных алгебраических уравнений | |
RU2069011C1 (ru) | Устройство для вычисления трехмерного дискретного преобразования фурье | |
SU1615739A1 (ru) | Устройство дл решени систем линейных алгебраических уравнений | |
SU1394218A1 (ru) | Устройство дл решени систем линейныых алгебраических уравнений | |
SU970358A1 (ru) | Устройство дл возведени в квадрат | |
SU1269143A1 (ru) | Устройство дл ввода информации | |
SU1525715A1 (ru) | Устройство дл решени дифференциальных уравнений в частных производных | |
SU1443002A1 (ru) | Устройство дл быстрого преобразовани Уолша-Адамара | |
SU1269124A1 (ru) | Вычислительное устройство | |
SU1575204A1 (ru) | Устройство дл обращени матриц | |
RU1800459C (ru) | Устройство дл сопр жени с датчиками | |
RU2049351C1 (ru) | Устройство для вычисления двумерного дискретного преобразования фурье |