RU2079879C1 - Matrix processor - Google Patents
Matrix processor Download PDFInfo
- Publication number
- RU2079879C1 RU2079879C1 RU94030340A RU94030340A RU2079879C1 RU 2079879 C1 RU2079879 C1 RU 2079879C1 RU 94030340 A RU94030340 A RU 94030340A RU 94030340 A RU94030340 A RU 94030340A RU 2079879 C1 RU2079879 C1 RU 2079879C1
- Authority
- RU
- Russia
- Prior art keywords
- output
- input
- adder
- sign
- multiplexer
- Prior art date
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к вычислительной технике и предназначено для построения на его основе специализированных ЭВМ. The invention relates to computer technology and is intended to build on its basis specialized computers.
Известны специализированные устройства, выполняющие триангуляцию матрицы (патент РФ N 1800463), решение систем линейных алгебраических уравнений (патент РФ N 1832301), решение систем линейных алгебраических уравнений с треугольной матрицей (патент РФ N 1803921), а также устройства для вращения вектора по алгоритму Волдера (авт. свид. СССР N 445042). Known specialized devices that perform matrix triangulation (RF patent N 1800463), solving systems of linear algebraic equations (RF patent N 1832301), solving systems of linear algebraic equations with a triangular matrix (RF patent N 1803921), as well as devices for rotating the vector according to the Walder algorithm (ed. certificate. USSR N 445042).
Основными недостатками этих устройств являются узкий функциональный состав выполняемых операций при значительных аппаратурных затратах, а также необходимость для вычисления модуля m-мерного вектора использовать последовательность из (m-1)-й операции плоского вращения. The main disadvantages of these devices are the narrow functional composition of the operations performed at a significant hardware cost, as well as the need to use the sequence of the (m-1) th plane rotation operation to calculate the m-dimensional vector module.
Наиболее близким по технической реализации является устройство для определения модуля трехмерного вектора (авт. свид. СССР N 1205139), реализующее итерационный алгоритм перемещения трехмерного вектора с помощью последовательности из n преобразований отражения до его совпадения с осью абсцисс. The closest in technical implementation is a device for determining the module of a three-dimensional vector (ed. Certificate of the USSR N 1205139), which implements an iterative algorithm for moving a three-dimensional vector using a sequence of n reflection transformations until it coincides with the abscissa axis.
Одним из основных недостатков этого устройства является большое время определения модуля m-мерного вектора, которое равно порядка m/2 циклов по n итераций. Кроме того, при помощи этого устройства невозможно осуществить решение систем линейных алгебраических уравнений с треугольной матрицей (выполнить "обратный ход" для решения систем линейных алгебраических уравнений) и осуществить преобразование матрицы по методу Гаусса или Гаусса-Жордана. Между тем названные операции составляют математическое содержание значительной части практических задач. One of the main disadvantages of this device is the long time it takes to determine the modulus of the m-dimensional vector, which is equal to the order of m / 2 cycles in n iterations. In addition, using this device, it is impossible to solve systems of linear algebraic equations with a triangular matrix (perform a "reverse move" to solve systems of linear algebraic equations) and to transform the matrix according to the Gauss or Gauss-Jordan method. Meanwhile, these operations comprise the mathematical content of a significant part of practical problems.
Целью изобретения является расширение класса решаемых устройством задач путем введения в функциональный состав устройства операций для решения систем линейных алгебраических уравнений с треугольной матрицей и преобразования матрицы по методу Гаусса и Гаусса-Жордана, а также операции вычисления модуля m-мерного вектора за один цикл работы устройства. The aim of the invention is to expand the class of problems solved by the device by introducing operations into the functional composition of the device to solve systems of linear algebraic equations with a triangular matrix and transforming the matrix by the Gauss and Gauss-Jordan methods, as well as the operation of calculating the m-dimensional vector module in one cycle of the device.
Указанная цель достигается тем, что в устройство, содержащее три регистра, три дешифратора знака, шесть сумматоров-вычитателей, три сдвигателя, причем управляющие входы сдвигателей соединены с входом задания двоичного кода номера итерации, выход первого регистра соединен с информационным входом первого сдвигателя, дополнительно введены m-3 регистров, m-3 дешифраторов знака, 2m-7 сумматоров-вычитателей, m-1 схема ИСКЛЮЧАЮЩЕЕ ИЛИ, m+3 мультиплексора, где m размерность обрабатываемой матрицы, блок умножения, блок изменения знака числа, причем информационные входы всех регистров являются входами операндов спецпроцессора, входы синхронизации всех регистров соединены с входом синхронизации спецпроцессора, управляющий вход блока умножения подключен к входу задания двоичного кода номера итерации спецпроцессора, выход первого сдвигателя через блок изменения знака числа, управляющий вход которого соединен с выходом первого дешифратора знака, подключен к первому входу цепочки сумматоров-вычитателей, у которых вход первого слагаемого (уменьшаемого) j-го элемента (j 1,2,m-1) соединен с выходом (j-1)-го элемента, а вход второго слагаемого (вычитаемого) с выходом (j+1)-го регистра, выход последнего элемента цепочки подключен к информационному входу блока умножения, выход которого соединен с информационным входом второго сдвигателя, вход второго слагаемого (вычитаемого) первого выходного сумматора-вычитателя соединен с выходом второго сдвигателя, вход первого слагаемого (уменьшаемого) l-го выходного сумматора-вычитателя (l= 1,2,m) соединен с выходом l-го регистра, выход l-го выходного сумматора-вычитателя, кроме первого, подключен к l-му выходу спецпроцессора, вход l-го дешифратора знака является l-м входом анализа знака операнда спецпроцессора, выход первого дешифратора знака подключен к управляющему входу первого выходного сумматора-вычитателя, выход первого регистра через третий сдвигатель соединен с первым информационным входом m-го мультиплексора, второй информационный вход которого соединен с выходом блока умножения, а выход с входами второго слагаемого (вычитаемого) каждого выходного сумматора-вычитателя, кроме первого и второго, выход первого выходного сумматора-вычитателя соединен с вторым информационным входом (m+3)-го мультиплексора, первый информационный вход которого соединен с выходом первого регистра, а выход с первым выходом спецпроцессора, выход j-го дешифратора знака (j 2,3,m) соединен с вторым входом (j-1)-й схемы ИСКЛЮЧАЮЩЕЕ ИЛИ, второй вход которого соединен с выходом первого дешифратора знака, выход (j-1)-й схемы ИСКЛЮЧАЮЩЕЕ ИЛИ подключен к первому информационному входу (j-1)-го мультиплексора, второй информационный вход которого соединен с выходом j-го дешифратора знака, выход j-го мультиплексора (j=1,2,m-1) подключен к управляющему входу j-го сумматора-вычитателя в цепочке и к управляющему входу (j+1)-го выходного сумматора-вычитателя, кроме первого и второго, выход второго мультиплексора подключен к второму информационному входу (m+2)-го мультиплексора, первый информационный вход которого соединен с выходом первого мультиплексора, а выход с управляющим входом второго выходного сумматора-вычитателя, первый информационный вход (m+1)-го мультиплексора соединен с выходом m-го мультиплексора, второй информационный вход с входом задания двоичного кода веса обрабатываемого разряда спецпроцессора, а выход с входом второго слагаемого (вычитаемого) второго выходного сумматора-вычитателя, управляющие входы всех мультиплексоров соединены с входом задания двоичного кода режима работы спецпроцессора. This goal is achieved by the fact that in a device containing three registers, three sign decoders, six adders-subtracters, three shifters, the control inputs of the shifters connected to the input of the binary code of the iteration number, the output of the first register connected to the information input of the first shifter, additionally introduced m-3 registers, m-3 sign decoders, 2m-7 adders-subtracters, m-1 circuit EXCLUSIVE OR, m + 3 multiplexers, where m is the dimension of the processed matrix, the multiplication block, the block changing the sign of the number, and info The rotation inputs of all the registers are inputs of the operands of the special processor, the synchronization inputs of all the registers are connected to the synchronization input of the special processor, the control input of the multiplication unit is connected to the input of the binary code of the iteration number of the special processor, the output of the first shifter through the number sign change unit, the control input of which is connected to the output of the first decoder sign is connected to the first input of the chain of adders-subtracters, in which the input of the first term (decreasing) of the j-th element (
Блок изменения знака числа является известным техническим решением и, в частности, может быть выполнен в виде сумматора-вычитателя, на вход первого слагаемого (уменьшаемого) которого постоянно подается значение, равное нулю, вход второго слагаемого (вычитаемого) является информационным входом блока изменения знака числа, управляющий вход сумматора-вычитателя управляющим входом блока изменения знака числа, а выход сумматора-вычитателя выходом блока. The unit for changing the sign of the number is a well-known technical solution and, in particular, can be made in the form of an adder-subtracter, the input of the first term (decreasing) of which is constantly supplied with a value equal to zero, the input of the second term (subtracting) is the information input of the block of changing the sign of the number , the control input of the adder-subtracter by the control input of the unit for changing the sign of the number, and the output of the adder-subtractor by the output of the block.
Блок умножения является известным техническим решением и предназначен для умножения входного числа в зависимости от номера итерации на одну из констант. Блок умножения на константу может, в частности, быть выполнен в виде устройства, состоящего из постоянного запоминающего устройства для хранения констант и умножителя, причем адресный вход запоминающего устройства является управляющим входом блока умножения, выход запоминающего устройства соединен с входом первого сомножителя, вход второго сомножителя которого является информационным входом блока умножения, а выход выходом блока умножения. The multiplication block is a well-known technical solution and is designed to multiply the input number depending on the iteration number by one of the constants. The constant multiplication unit can, in particular, be made in the form of a device consisting of a permanent storage device for storing constants and a multiplier, the address input of the storage device being a control input of the multiplying unit, the output of the storage device being connected to the input of the first factor, the input of the second factor of which is the information input of the multiplication block, and the output is the output of the multiplication block.
На фиг. 1 представлена схема матричного спецпроцессора, где 11.1m регистры операндов, 21.2m - дешифраторы знака, 31.32m-1 сумматоры-вычитатели, 41, 42, 43 сдвигатели, 5 -вход задания двоичного кода номера итерации, 61. 6m-1 схемы ИСКЛЮЧАЮЩЕЕ ИЛИ, 71.7m+3 мультиплексоры, 8 блок умножения, 9 блок изменения знака числа, 101.10m входы операндов, 11 вход синхронизации, 121. 12m выходы спецпроцессора, 131.13m входы анализа знака операнда, 14 вход задания двоичного кода веса обрабатываемого разряда, 15 вход задания двоичного кода режима работы спецпроцессора.In FIG. 1 is a diagram of a matrix special processor, where 1 1 .1 m registers of operands, 2 1 .2 m - sign decoders, 3 1 .3 2m-1 adders-subtractors, 4 1 , 4 2 , 4 3 shifters, 5 - binary input iteration number code, 6 1 . 6 m-1 circuits EXCLUSIVE OR, 7 1 .7 m + 3 multiplexers, 8 multiplication unit, 9 number sign changing unit, 10 1 .10 m operand inputs, 11 synchronization input, 12 1 . 12 m outputs of the special processor, 13 1 .13 m inputs of the analysis of the operand sign, 14 input of the binary code for the weight of the processed discharge, 15 input of the binary code for the operating mode of the special processor.
На фиг. 2 представлена схема для преобразования вектора в конвейерном режиме, на котором U1. Un устройства, изображенные на фиг. 1, X входной вектор размерности m, Y результирующий вектор той же размерности, X(j) вектор, обрабатываемый устройством Uj, Z - шина знаков операндов на n итерациях, Z(j) шина знаков операндов на j-й итерации.In FIG. 2 is a diagram for converting a vector in a conveyor mode on which U 1 . U n the devices shown in FIG. 1, X is an input vector of dimension m, Y is a resulting vector of the same dimension, X (j) is a vector processed by the device U j , Z is the bus of signs of operands at n iterations, Z (j) is the bus of signs of operands at the jth iteration.
На фиг. 3 представлена схема для триангуляции матрицы A(mxm), столбцы которой поданы на устройства U1.Um, каждое из которых является устройством, изображенным на фиг. 2.In FIG. 3 is a diagram for triangulating the matrix A (mxm), the columns of which are supplied to the devices U 1 .U m , each of which is the device shown in FIG. 2.
На фиг. 4 представлена схема для решения систем линейных алгебраических уравнений с треугольной матрицей, где U1.U3 устройства, каждое из которых является устройством, изображенным на фиг. 2, aij - элементы матрицы системы до обработки, элементы матрицы системы после обработки, bi, элементы столбца свободных членов до и после обработки соответственно.In FIG. 4 is a diagram for solving systems of linear algebraic equations with a triangular matrix, where U 1 .U 3 are devices, each of which is the device shown in FIG. 2, a ij are the elements of the matrix of the system before processing, elements of the matrix of the system after processing, b i , free member column elements before and after processing, respectively.
Спецпроцессор содержит m регистров 11.1m, 2m-1 сумматоров-вычитателей 31.32m-1, m дешифраторов знака 21.2m, m-1 схему ИСКЛЮЧАЮЩЕЕ ИЛИ 61.6m-1, m+3 мультиплексора 71.7m+3, три сдвигателя 41, 42, 43, блок изменения знака числа 9, блок умножения 8 на одну из n констант, m входов операндов 101.10m, m входов анализа знака операнда 131.13m, выходов 121.12m, вход задания двоичного кода номера итерации 5, вход задания двоичного кода режима работы 15, вход задания двоичного кода веса обрабатываемого разряда 14, причем входы регистров 11.1m являются входами операндов 101.10m, а выходы подключены к входам первого слагаемого (уменьшаемого) выходных сумматоров-вычитателей 3m. 32m-1 соответственно, входы дешифраторов знака 21.2m являются соответственно входами анализа знака операнда 131.13m, выходы дешифраторов знака 22.2m соединены с вторыми входами схем ИСКЛЮЧАЮЩЕЕ ИЛИ 61.6m-1 соответственно, первые входы этих схем подключены к выходу дешифратора знака 21, а выходы соединены с первыми информационными входами мультиплексоров 71.7m-1 соответственно, вторые информационные входы этих мультиплексоров соединены с выходами дешифраторов знака 22.2m соответственно, вход задания двоичного кода номера итерации 5 подключен к управляющим входам сдвигателей 41, 42, 43 и блока умножения 8, выход регистра 11 подключен через сдвигатель 41 и блок изменения знака числа 9 к входу первого слагаемого (уменьшаемого) сумматора-вычитателя 31, вход второго слагаемого (вычитаемого) которого соединен с выходом регистра 22, управляющий вход с выходом мультиплексора 71, а выход с входом первого слагаемого (уменьшаемого) сумматора-вычитателя 32, сумматоры-вычитатели 31.3m-1 соединены в цепочку, j-й элемент которой входом первого слагаемого (уменьшаемого) подсоединен к выходу (j-1)-го элемента, входом второго слагаемого (вычитаемого) к выходу (j+1)-го регистра, управляющим входом к выходу мультиплексора 7j, а входом к входу первого слагаемого (уменьшаемого) (j+1)-го элемента, выход сумматора-вичитателя 3m-1 соединен с информационным входом блока умножения 8, выход которого через сдвигатель 42 подключен к входу второго слагаемого (вычитаемого) сумматора-вычитателя 3m и непосредственно к первому информационному входу мультиплексора 7m, выход сумматор-вычислителя 7m подключен к второму информационному входу мультиплексора 7m+3, первый информационный вход которого соединен с выходом первого регистра, а выход с первым выходом спецпроцессора 121, второй информационный вход мультиплексора 7m соединен через сдвигатель 43 с выходом регистра 11, а выход подключен к первому информационному входу мультиплексора 7m+1 и к входам второго слагаемого (вычитаемого) сумматоров-вычитателей 3m+2.32m-1, второй информационный вход мультиплексора 7m+1 подключен к входу задания двоичного кода веса обрабатываемого разряда 14, а выход к входу второго слагаемого (вычитаемого) сумматора-вычитателя 3m+1, управляющие входы сумматоров-вычитателей 3m+2.32m-1 подключены к выходам мультиплексоров 72.7m-1 соответственно, а управляющий вход сумматора-вычитателя 3m+1 подключен к выходу мультиплексора 7m+2, первый информационный вход которого соединен с выходом мультиплексора 71, а второй с выходом мультиплексора 72, управляющие входы всех мультиплексоров соединены с входом задания двоичного кода режима работы спецпроцессора 15, выходы сумматоров-вычитателей 3m+1.32m-1 являются выходами спецпроцессора 102.10m соответственно, выход дешифратора знака 21 соединен с управляющим входом блока изменения знака числа 9 и управляющим входом сумматора-вычитателя 3m, входы синхронизации регистров 11.1m соединены с входом синхронизации спецпроцессора 11.The special processor contains
Спецпроцессор может работать в одном из трех режимов. The special processor can work in one of three modes.
Работу спецпроцессора в режимах 1 и 2 можно описать следующими выражениями:
где i номер итерации.The operation of the special processor in
where i is the iteration number.
Значения величин a и сj определяются режимом работы спецпроцессора.The values of a and c j are determined by special processor operation.
В режиме 1
В этом режиме алгоритм (1) описывает одного из n преобразований отражения, в результате которых за один цикл работы устройства исходных вектор X0 совмещается с первой из m координатных осей, первый элемент вектора становится равным модулю вектора, а остальные координаты вектора будут равны нулю.In
In this mode, algorithm (1) describes one of n reflection transformations, as a result of which, in one cycle of operation of the source device, the vector X 0 is combined with the first of m coordinate axes, the first element of the vector becomes equal to the vector module, and the remaining coordinates of the vector will be zero.
В режиме 2
В этом режиме алгоритм (1) описывает одно из n преобразований вектора по методу Гаусса (или Гаусса-Жордана), в результате которых исходных исходный вектор X0(x
Режим 3 является вспомогательным и предназначен для выполнения операции деления на этом же устройстве, что необходимо для решения систем линейных алгебраических уравнений с треугольной матрицей.In
In this mode, algorithm (1) describes one of the n transformations of the vector by the Gauss (or Gauss-Jordan) method, as a result of which the original vector X 0 (x
Работу спецпроцессора в режиме 3 можно описать следующими выражениями:
где
В этом режиме исходный вектор X0(x
Where
In this mode, the original vector X 0 (x
Рассмотрим работу спецпроцессора на i-ой итерации. Операнды-компоненты вектора Xi заносятся в регистры 11.1m по входам 101.10m соответственно и фиксируются в этих регистрах по сигналу синхронизации, поступающему по входу 11 спецпроцессора. На входы 131.13m подаются операнды, по знакам которых дешифраторы знака 21.2m и схемы ИСКЛЮЧАЮЩЕЕ ИЛИ 61.6m-1 вырабатывают сигналы управления сумматорами-вычитателями согласно соотношениям (2), (3), (5).Consider the work of a special processor on the i-th iteration. The operands of the components of the vector X i are recorded in the
Мультиплексоры 71.7m-1 и 7m+2 служат для коммутации выработанных сигналов управления сумматорами-вычитателями в соответствии с режимом, двоичный код которого задается по входу 15. Сдвигатели 41 и 42 служат для сдвига числа на i разрядов, поэтому на выходе блока изменения знака числа 9 получится величина -2-i•x1•C1, к которой на сумматоре-вычитателе 31 прибавится (вычтется) величина x2•c2. Таким образом, на выходе сумматора-вычитателя 3m-1 получится выражение -2-i•x1•c1+x2•c2 + + xm•cm, которое поступит на вход блока умножения 8. Блок умножения предназначен для умножения входного числа в зависимости от номера инерции на одну из n констант -2•(m-1+2-i)-1. На выходе блока умножения будет получено значение a, которое через сдвигатель 42, формирующий значение a•2-i, подается на сумматор-вычитатель 3m. Полученное таким образом значение a соответствует режиму 1. Для режимов 2 и 3 значение a, равное x1•2-i, формируется на выходе сдвигателя 43. Мультиплексор 7m выбирает одно из этих значений в зависимости от режима. С выхода мультиплексора 7m значение a поступает на входы второго слагаемого (вычитаемого) сумматоров-вычитателей 7m+2.72m-1 непосредственно, a на соответствующий вход сумматора-вычитателя 3m+1 через мультиплексор 7m+1, на второй информационный вход которого подается значение d с входа задания двоичного кода веса обрабатываемого разряда 14. Мультиплексор 7m+1 в режимах 1 и 2 подключает на вход второго слагаемого (вычитаемого) сумматора-вычитателя 3m+1 значение a, а в режиме 3 значение d согласно (4). В режимах 1 и 2 сумматоры-вычитателя 3m.32m-1 построчно реализуют соотношения (1), а в режиме 3 сумматоры-вычитатели 3m.3m+2 построчно реализуют соотношения (4). Значения Y2. Ym, получаемые на выходах сумматоров-вычислителей 3m+1.32m-1 соответственно, подаются непосредственно на выходы спецпроцессора, а значение Y1 поступает на выход спецпроцессора через мультиплексор 7m+3, который соединяет соответствующий выход с выходом сумматора-вычитателя 3m в режиме 1 и с выходом регистра 11 в режимах 2 и 3. Все мультиплексоры управляются от входа задания двоичного кода режима работы спецпроцессора 15.Multiplexers 7 1 .7 m-1 and 7 m + 2 serve for switching the generated control signals of adders-subtractors in accordance with the mode, the binary code of which is set at
На этом работа в i-ой итерации заканчивается. Следующую итерацию можно выполнить в последовательном режиме в этом же устройстве, если предварительно соединить выходы 12j с входами 10j(j=1,2,m), или в конвейерном режиме с помощью n устройств, как это показано на фиг.2. Значения, подаваемые на входы 131.13m j-го устройства (j=1,2,n) зависят от режима работы устройства, а также от того, обрабатывается ли на устройстве столбец матрицы, в котором производится обнуление внедиагональных элементов на текущем шаге (главный столбец), или на устройстве обрабатывается один из прочих столбцов матрицы (зависимый столбец) для сохранения линейности преобразования.This is where the work in the i-th iteration ends. The next iteration can be performed in sequential mode in the same device, if you previously connect the
В режимах 1 и 2 при обработке главного столбца входы 131.13m j-го устройства соединяются с входами 10110m этого устройства соответственно, а при обработке зависимого столбца с входами 101.10m устройства, обрабатывающего главный столбец. В режиме 3 входы 131 и 133 j-го устройства соединяются соответственно с входами 101 и 103 этого устройства. Сигналы, подаваемые на входы 131.13m j-го устройства образуют шины Z(j) и общую шину Z, показанные на фиг.2.In
На фиг. 3 представлена схема соединения m устройств, каждое из которых представляет собой устройство, показанное на фиг.2. Эта схема предназначена для приведения матрицы A ({aij}) размерности (mxm) к верхнетреугольному виду путем ортогональных преобразований отражения (в режиме 1) или путем разложения матрицы на треугольные множители по методу Гаусса (в режиме 2). При этом устройство U1 обрабатывает главный столбец, а устройства U2.Um зависимые столбцы матрицы. Входы Z каждого устройства соединены по описанным выше правилам и образуют шину Z на фиг.3. В результате преобразования все элементы первого столбца матрицы, кроме , будут равны нулю, а элемент будет равен модулю вектора (в режиме 1) или a11 (в режиме 2). После исключения (обнуления) поддиагональных элементов первого столбца та же процедура проводится с матрицей порядка (m-1) для исключения поддиагональных элементов второго столбца.In FIG. 3 is a connection diagram of m devices, each of which is a device as shown in FIG. This scheme is designed to reduce the matrix A ({a ij }) of dimension (mxm) to the upper triangular form by orthogonal reflection transformations (in mode 1) or by decomposing the matrix into triangular factors by the Gauss method (in mode 2). In this case, the device U 1 processes the main column, and the device U 2 .U m dependent columns of the matrix. The inputs Z of each device are connected according to the rules described above and form the bus Z in figure 3. As a result of the conversion, all elements of the first column of the matrix, except , will be equal to zero, and the element will be equal to the modulus of the vector (in mode 1) or a 11 (in mode 2). After the elimination (zeroing) of the subdiagonal elements of the first column, the same procedure is performed with the order matrix (m-1) to exclude the subdiagonal elements of the second column.
После (m-1)-го аналогичного шага полученная матрица будет верхнетреугольной, после подобных манипуляций в режиме 1 со строками матрицы - двухдиагональной. After the (m-1) -th similar step, the resulting matrix will be upper triangular, after similar manipulations in
Если в режиме 2 на каждом шаге не уменьшать размерность пространства, а использовать высвобождающиеся модули для исключения также и наддиагональных элементов, то полученная матрица будет диагональной начальной (метод Гаусса-Жордана). If in
Для триангуляции матрицы при решении систем линейных алгебраических уравнений необходимо добавить устройство Um+1, обрабатывающее зависимый столбец в выбранном режиме, для обработки столбца свободных членов аналогично столбцам матрицы.To triangulate the matrix when solving systems of linear algebraic equations, it is necessary to add a device U m + 1 that processes the dependent column in the selected mode, to process the column of free terms similarly to the columns of the matrix.
На фиг. 4 представлена схема для выполнения "обратного хода" (получения решения из треугольной или диагональной матрицы) при решении систем линейных алгебраических уравнений. Устройства U1, U2, U3 представляют собой устройства, показанные на фиг.2. Устройство U1 работает в режиме 3, на его вход X подается вектор (аmm, O, bm), где amm элемент матрицы системы, bm элемент столбца свободных членов, на выходе Y устройства получается вектор, первым элементом которого является значение элемента вектора решения xm=bm/amm. В случае диагональной матрицы для получения вектора решения достаточно проделать m подобных операций. В случае треугольной матрицы после получения xm необходимо перейти к матрице размерности (m-1), преобразовав при этом вектор свободных членов. Для этого служат устройство U2, обрабатывающее зависимый столбец-вектор (xm, b1, bm-1), и устройство U3, обрабатывающее главный столбец-вектор (1, а1m, am-1m). В результате на выводах устройства U2 получается вектор Y (xm, b1-a1mxm, bm-1-am-1mxm).In FIG. Figure 4 shows the scheme for performing the "reverse stroke" (obtaining a solution from a triangular or diagonal matrix) when solving systems of linear algebraic equations. Devices U 1 , U 2 , U 3 are the devices shown in FIG. 2. The device U 1 operates in
Устройство может также быть использовано для обращения матрицы путем решения m систем линейных алгебраических уравнений с одинаковой матрицей и m различными столбцами свободных членов, а также для нахождения определителя матрицы и решения некоторых других задач линейной алгебры. The device can also be used to invert the matrix by solving m systems of linear algebraic equations with the same matrix and m different columns of free terms, as well as to find the determinant of the matrix and solve some other problems of linear algebra.
Эффективность изобретения заключается в расширении класса решаемых устройством задач, достигаемом за счет незначительного увеличения затрат оборудования. The effectiveness of the invention lies in expanding the class of tasks solved by the device, achieved by a slight increase in equipment costs.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU94030340A RU2079879C1 (en) | 1994-08-23 | 1994-08-23 | Matrix processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU94030340A RU2079879C1 (en) | 1994-08-23 | 1994-08-23 | Matrix processor |
Publications (2)
Publication Number | Publication Date |
---|---|
RU94030340A RU94030340A (en) | 1996-06-10 |
RU2079879C1 true RU2079879C1 (en) | 1997-05-20 |
Family
ID=20159752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU94030340A RU2079879C1 (en) | 1994-08-23 | 1994-08-23 | Matrix processor |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2079879C1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2473961C1 (en) * | 2011-12-12 | 2013-01-27 | Виктор Николаевич Бабенко | Vector normalising apparatus |
-
1994
- 1994-08-23 RU RU94030340A patent/RU2079879C1/en active
Non-Patent Citations (1)
Title |
---|
Авторское свидетельство СССР N 1800463, кл. G 06 F 15/347, 1993. Авторское свидетельство СССР N 1205139, кл. G 06 F 7/541, 1986. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2473961C1 (en) * | 2011-12-12 | 2013-01-27 | Виктор Николаевич Бабенко | Vector normalising apparatus |
Also Published As
Publication number | Publication date |
---|---|
RU94030340A (en) | 1996-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6349318B1 (en) | Arithmetic processor for finite field and module integer arithmetic operations | |
Vuillemin et al. | Programmable active memories: Reconfigurable systems come of age | |
US5226171A (en) | Parallel vector processing system for individual and broadcast distribution of operands and control information | |
Antelo et al. | High performance rotation architectures based on the radix-4 CORDIC algorithm | |
US6539368B1 (en) | Neural processor, saturation unit, calculation unit and adder circuit | |
Yang et al. | A new RSA cryptosystem hardware design based on Montgomery's algorithm | |
US5081573A (en) | Parallel processing system | |
US4635292A (en) | Image processor | |
EP0849664A2 (en) | Apparatus for computing transcendental functions quickly | |
US6026421A (en) | Apparatus for multiprecision integer arithmetic | |
US6295597B1 (en) | Apparatus and method for improved vector processing to support extended-length integer arithmetic | |
US6009450A (en) | Finite field inverse circuit | |
EP0295788A2 (en) | Apparatus and method for an extended arithmetic logic unit for expediting selected operations | |
US5363322A (en) | Data processor with an integer multiplication function on a fractional multiplier | |
Stelling et al. | Implementing multiply-accumulate operation in multiplication time | |
Antelo et al. | Very-high radix CORDIC rotation based on selection by rounding | |
RU2079879C1 (en) | Matrix processor | |
US20030093449A1 (en) | Asynchronous parallel arithmetic processor utilizing coefficient polynomial arithmetic (CPA) | |
Baumhof | A new VLSI vector arithmetic coprocessor for the PC | |
Mi et al. | Behavioral Implementation of SVD on FPGA | |
RU2080650C1 (en) | Device for calculation of absolute value of m- dimensional vector | |
Boateng et al. | A Smith-Waterman Algorithm Accelerator Based on Residue Number System | |
US20050246406A9 (en) | Emod a fast modulus calculation for computer systems | |
Vardhan et al. | A critical look at modular adders using residue number system | |
RU2029356C1 (en) | Device for computation of modulus of m-dimensional vector |