Матричное вычислительное устройство

Иллюстрации

Показать все

Реферат

 

Союз Советскик

Социалистических

Республик

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву— (22) Заявлено 31.05.79 (21) 2771911/18-24 с присоединением заявки ¹â€” (23) Приоритет— (51) М. Кл,з

G 06F738

Гоаударственный комитет по делам изобретений н отнрытнй (53) УДК 681.325 (088.8) Опубликовано 28.02.81. Бюллетень № 8

Дата опубликования описания 05.03.81 (72) Авторы изобретения

Л. А. Шумилов, А. Д. Али Абдалла, А. И. Суе т ь1

Ленинградский ордена Ленина электротехнический институт" -им. В. И. Ульянова (Ленина) (71) Заявитель (54) МАТРИЧНОЕ ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО

Изобретение относится к вычислительной технике и может быть использовано в быстродействующих процессорах и специализированных вычислительных устройствах.

Известно матричное высислительное устройство для выполнения операции деления двоичных чисел (1).

Основным недостатком указанного устройства являются ограниченные функциональные возможности при данном наборе узлов и связей между ними.

Наиболее близким по технической сущ- to ности к предлагаемому устройству является матричное вычислительное устройство для выполнения операции деления двоичных чисел, содержащее матрицу вычислительных ячеек, каждая из которых содержит сумматор по модулю два и одноразрядный сумматор (2(.

Недостатком устройства являются ограниченные функциональные возможности, так как устройство позволяет выполнять лишь 2О одну арифметическую операцию деления двоичных чисел.

Цель изобретения — расширение функциональных возможностей за счет выполнения операции умножения на константу и вычисления функции з1пр и cosy.

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

ИЛИ соединен с первым входом группы элементов И, второй вход которого соединен со вторым управляющим входом устройства, а выход — с информационным входом регистра, первый выход которого сое809173!

30

40

50 динен с первыми входами вычислительных ячеек и-го столбца, а второй выход регистра — со вторыми входами вычислительных ячеек п-го столбца, третьи и четвертые входы вычислительных ячеек первой строки соединены соответственно с пятым и шестым входами устройства, а второй, третий, четвертый и пятый входы коммутатора соединены соответственно с седьмым, восьмым, девятым и десятым входами устроиства, первые. и вторые выходы вычислительных ячеек последней строки соединены соответственно с первым и вторым выходами устройства, причем каждая вычислительная ячейка дополнительно содержит второй одноразрядный сумматор и второй сумматор по модулю два, причем выход первого сумматора по модулю два соединен с первым входом первого одноразрядного сумматора, выход второго сумматора по модулю два соединен с первым входом второго одноразрядного сумматора, первый вход первого сумматора по модулю два соединен с первым входом вычислительнои ячеики, первыи вход второго сумматора по модулю два соединен со вторым входом вычислительной ячейки, второй вход первого одноразрядного сумматора соединен с третьим входом вычислительной ячейки, второй вход первого сумматора по модулю два соединен с четвертым входом вычислительнои ячеики, второи вход второго сумматора по модулюдва соединен с пятым входом вычислительной ячейки, а второй вход второго одноразрядного сумматора соединен с шестым входом вычислительной ячейки, третий вход первого одноразрядного сумматора соединен с седьмым входом вычислительной ячейки, а третий вход второго одноразрядного сумматора соединен с восьмым входом вычислительной ячейки, первый выход первого однразрядного сумматора соединен с первым выходом вымислительнои ячеики, а первыи выход второго одноразрядного сумматора соединен со вторым выходом вычислительной ячейки, первый выход второго сумматора по модулю два соединен с третьим выходом вычислительной ячейки, а первый выход первого сумматора по модулю два соединен с четвертым выходом вычислительной ячейки, вторые выходы второго и первого одноразрядных сумматоров соединены соответственно с пятым и шестым выходами вычислительной ячейки, первые входы вычислительных ячеек i-го столбца соединены с четвертыми выходами соответствующих вычислительных ячеек (i — 1) -ro столбца, вторые входы вычислительных ячеек i-го столбца соединены с третьими выходами соответствующих вычислительных ячеек (i — 1) -ro столбца, третий вход i-ой вычислительной ячейки К-й строки соединен с первым вь ходом i-ой вычислительной ячейки (К вЂ” 1) -ой строки и с четвертым входом (i- К +1)-й.

4 вычислительной ячейки К-ой строки, пятый вход (i — K+ 1) -й вычислительной ячейки (К+1)-ой строки соединен с вторым выходом i-й вычислительной ячейки К-й строки и с шестым входом i-й вычислительной ячейки (К+1)-ой строки, причем шестые входы вычислительных ячеек от (п — 1) -ой по (п — K+ i)-ой (К+1)-ой строки соединены с первым входом п-ой вычислительной ячейки К-ой строки с третьим входом п-ой вычислительной ячейки (К+ 1)-ой строки, шестой вход и-ой вычислительной ячейки К-ой строки соединен со вторым выходом и-ой вычислительной ячейки (К вЂ” 1) -ой строки и с пятыми входами вычислительных ячеек от (n- I) -ой по (п — К+1) -ой (К+1) строки, седьмой вход i-ой вычислительной ячейки

К-го столбца соединен с шестым выходом (i — 1) -ой вычислительной ячейки (К вЂ” 1) -го столбца, восьмой вход i-ой вычислительной ячейки К-го столбца соединен с пятым выходом (i — 1) -ой ячейки (К вЂ” 1) -го столбца, причем восьмой вход в каждой вычислительной ячейки первого столбца соединен с третьим выходом той же вычислительной ячейки, а пятые и шестные входы в каждой вычислительной ячейке первой строки соединены соответственно с пятыми и третьим входами соответствующей вычислительной ячейки.

На фиг. 1 представлена структурная схема матричного вычислительного устройства; на фиг. 2-структурная схема вычислительной ячейки; на фиг. 3 — то же, матрица вычислительных ячеек; на фиг. 4 — зависимость кода D от угла .р; на фиг. 5 структурная схема коммутатора; на фиг. 6— то же, блока сравнения.

Матричное вычислительное устройство (фиг. 1) содержит матрицу 1 вычислительных ячеек, блок 2 сравнения, коммутатор 3, сумматор 4, группу элементов 5 ИЛИ, первый управляющий вход 6 устройства, группу элементов 7 И, второй управляющий вход

8, регистр 9, с первого по десятый входы уст ройства 10 — 19, первый и второй выходы устройства 20 и 21.

Вычислительная ячейка содержит (фиг. P) первый сумматор 22 по модулю два, первый одноразрядный сумматор 23, второй сум матор 24 по модулю два, второй одноразрядный сумматор 25, с первого по восьмой входы ячейки 26 — 33, с первого по шестой выходы ячейки 34 — 39.

Выходы коммутатора 3 и один из выходов матрицы соединены с первыми и вторыми входами сумматора 4. Выходы сумматора соединены с первыми входами группы элементов 5 И,ЛИ, вторые входы которой соединены с шиной 6 управления. Выходы группы элементов 5 ИЛИ соединены с первыми входами группы элементов 7 И, вторые входы которой подключены к соответствующей управляющей шине 8. Выходы груп8091?3 (+1, если О )О

-1, если 8 (0 этап II:

= Y„— 1 б.

L х„, = х; +т(. ° у„2, (?) где1=0, 1,2, ..., п — 1; и — число шагов вычислений; х;, („— текущие координаты вектора; х„,y — конечные координаты вектора;

Q — угол, на который должен поворачиваться вектор, х, y — начальные координаты вектора.

Начальные условия при вычислении функ ции следующие Вр = р/г; Хр — — 1/К; Ур- О, где К вЂ” коэффициент деформации вектора;

К = n (1+ 2 ) б

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

Y„= sinrp; Xn — — cosy

На первом этапе определяются операторы (Q )., которые. необходимы для этапа II, где вычисляются новые координаты вектора.

На этапе II выполняются либо операция сложения, либо операция вычйтания (в зависимости от значения оператора q; которое принимает значение + 1 или - 1) и операция сдвига. После п-шагов вычисле. ния мы получим конечные координаты векпы элементов 7 И соединены с соответствующими входами регистра 9, прямые выходы которого соединены с соответствующими первыми входами вычислительных ячеек крайнего левого столбца матрицы 1 вычислительных ячеек, а инверсные — с соответствующими вторыми входами этих же ячеек матрицы. Первые выходы матрицы 1 вычислительных ячеек подключены к соответствующей шине 20, а вторые выходы — к соответствующей шине 21. Второй и третий входы матрицы 1 вычислительных ячеек соединены с входами устройства 14 и

15. Блок 2 сравнения имеет четыре входных шины 10 — 13. Коммутатор 3 имеет четыре входных шины 16 — 19.

Устройство выполняет операции умножения и деления на константу и вычисления функций sing совр и работает по алгоритму, аналогичному алгоритму «Цифра за цифрой», в основе которого лежит принцип поворота вектора.

Рекуррентные уравнения, описывающие алгоритмы «Цифра за цифрой» при вычислении функции sing u cosy следующие этап I:О;,q = Π— q;- arct)2, тора Х» и Ъв,равные значениям соыри sinrp соответственно.

Установлено, что код, построенный из множества значений операторов(; находится в простой зависимости от угла поворота вектора. Эта зависимость имеет прямолинейный ступенчатый вид (фиг. 4) . Код операторов для любого значения угла поворота от О до л/4 можно получить из формулы D=-Кбр+С;,i=1, 2, 3, 4, где D — код операторов (ц;Д, соответствующий заданному углу;

К вЂ” константа, равная коэффициенту наклона прямой линии;

С; — константа, зависящая- от принадлежности угла к одному из участков 1, 2, 3, 4.

Выполнение операций умножения и деления методом «Цифра за цифрой» производится в двух этапах по единичному для них алгоритму

Этап I:

5 о

x;+, = х; — q„y,-g у.„, =уб+ц х;.2 ".

Начальные условия и оператор поворота г1„для каждой операции свои

Для операции умножения Ув — — О; Хв = 1 д +1, ecaH x; >b, " 1--1; если х-Ä(b.

Для деления Yo = О; Хв = b

„, +1, если х >1, " -1, если х «" 1.

При выполнении операции умножения или деления на константу на вход 8 подается код операторов ($q}, соответствующий данной константе. Этот код должен быть вычислен заранее. На вход 6 подается нулевой сигнал. На входы 15 и 14 подается соотг ветственно нулевой код и код сомножителя или делимого. На выходе 20 получаем произведение или частное.

При вычислении функции sing и созбр устройство работает в два такта следующим образом.

В первом такте определяется множество операторов gQ. j путем вычисления значения кода, состоящего из этих операторов.

На входы 15 и 14 подается соответственно нулевой код и код угла. На вход 8 подается код операторов { < Д, заранее известных, необходимых для управления матрицы вычислительных ячеек при умножении на определенную константу К. На выходе 20 получаем произведение Ьу. На вход 10 по«О дается значение угла у На входы 11 — 13 блока 2 сравнения подаются соответствующие константы рб, у», A. Блок 2 сравнения определяет какому участку зависимости принадлежит заданный угол у и выдает соответствующий сигнал по одной из четы рех выходных шин этого блока. Этот сигнал поступает на коммутатор 3, на выходы

16 — 19 которой подаются соответствующие константы Ci, С, С, С . Эти константы

809173

1 0

Формула изобретения

55 соответствуют участкам 1, 2, 3, 4 зависимбсти кода D от угла р. По сигналу, поступающему из блока 2 сравнения, пропускается одна из констант С, С, Сз, C„, которая поступает на второй вход сумматора 4.

Сумма (Kq+C), которая представляет собой код управления для второго этапа вычисления 51и1(1 и cosy>, поступает через группы вентилей 5 и 7 на входы регистра 9.

Во втором такте выполняется непосредственное вычисление siny u сояр. На входы

15 и 14 подаются соответственно нулевой код и код значения 1/К (К вЂ” коэффициент деформации вектора при повороте). На выходах 20 и 21 получаем соответственно значения сояр и sing.

Матрица 1 вычислительных ячеек выполняет вычисление по рекуррентным соотношениям (2) . В каждой строке матрицы промежуточные значения координат вектора

Х,, Yà образуются на выходах первых и вторых одноразрядных сумматоров вычислительных ячеек строк матрицы. Сдвиги промежуточных результатов на i-разрядов вправо (это равносильно их умножению на

2") осуществляются внутриматричными соединениями. Вычисления в, матрице выполняются в дополнительном 1коде. Размножение знаков промежуточных результатов при сдвиге осуществляется соответствующими внутриматричными соединениями.

1. Матричное вычислительное устройство, содержащее вычислительные ячейки, каждая из. которых содержит одноразрядный сумматор и сумматор по модулю два, отличающееся тем, что с целью расширения функциональных возможностей, за счет выполнения дополнительных операций умножения на константу и вычисления функций sing и cosy, в него дополнительно введены блок сравнения, сумматор, коммутатор, группа элементов И, группа элементов ИЛИ и регистр, причем первый, второй, третий и четвертый входы блока сравнения соединены соответственно с первым, вторым, третьим и четверты ч входами устройства, а выход блока сравнения соединен с первым входом коммутатора, первый выход которого соединен с первым входом сумматора, второй вход которого соединен с первым выходом устройства, выход сумматора соединен с первым входом группы элементов ИЛИ, второй вход которой соединен с первым управляющим входом устройства, выход группы элементов ИЛИ соединен с первым входом группы элементов И, второй вход которого соединен со вторым управляющим входом устройства, а выход — с информационным входом регистра, первый выход которого соединен с первыми входами вычислительных ячеек и-го столбца, а второй выход регистра — со вторыми входами вычислитель ных ячеек п-го столбца, третьи и четвертые входы вычислительных ячеек первой строки соединены соответственно с пятым и шестым входами устройства, а второй, третий, четвертый и пятый входы коммутатора соединены соответственно с седьмым, восьмым, девятым и десятым входами устройства, первые и вторые выходы вычислительных ячеек последней строки соединены соответственно с первым и вторым выходами устройства.

2. Устройство по п. 1, отличающееся тем, что каждая вычислительная ячейка дополнительно содержит второй одноразрядный сумматор и второй сумматор по модулю два, причем выход первого сумматора по модулю два соединен с первым входом первого одноразрядного сумматора, выход второго сумматора по модулю два соединен с первым входом второго одноразрядного сумматора, первый вход первого сумматора по модулю два соединен с первым входом вычислительной ячейки, первый вход второго сумматора по модулю два соединен со вторым входом вычислительной ячейки, второй вход первого одноразрядного сумматора соединен с третьим входом вычислительной ячейки, второй вход первого сумматора по модулю два соединен с четвертым входом вычислительной ячейки, второй вход второго сумматора по модулю два соединен с пятым входом вычислительной ячейки, а второй вход второго одноразрядного сумматора соединен с шестым входом вычислительной ячейки, третий вход первого одноразрядного сумматора соединен с седьмым входом вычислительной ячейки, а третий вход второго одно35 разрядного сумматора соединен с восьмым входом вычислительной ячейки, первый выход первого одноразрядного сумматора соединен с первым выходом вычислительной ячейки, а первый выход второго одноразряд40 ного сумматора соединен со вторым выходом вычислительной ячейки, первый выход второго сумматора по модулю два соединен с третьим выходом вычислительной ячейки, а первый выход первого сумматора по модулю два соединен с четвертым выходом

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

50 соединены с четвертыми выходами соответствующих вычислительных ячеек (i-1) -ro столбца, вторые входы вычислительных ячеек i-го столбца соединены с третьими выходами соответствующих вычислительных ячеек (i — 1)-го столбца, третий вход i-ой вычислительной ячейки К-й строки соединен с первым выходом i-ой вычислительной ячейки (К вЂ” 1)-ой строки и с четвертым входом (i —,К+ ) -й вычислительной ячейки К-ой

809173

f5 1Ф

10 11 1г 1Z

21 строки, пятый вход (i — К+ 1) -й вычислительной ячейки (К+ 1) -ой строки соединен со вторым выходом i-й вычислительной ячейки К-й строки и с шестым входом i-й вычислительной ячейки (К+1) -ой строки, причем шестые входы вычислительных ячеек от (п — 1) -ой по (п — К+ i) -ой (К+ 1) -ой строки соединены с первым входом и-ой вычислительной ячейки К-ой строки и с третьим входом и-ой вычислительной ячейки (К+1)-ой строки, шестой вход и-ой вычислительной ячейки К-ой строки соединен со вторым выходом п-ой вычислительной ячейки (К вЂ” 1)-ой строки и с пятыми входами вычислительных ячеек от (п — 1) -ой по (и — К+1)-ой (К+1) строки, седьмой вход

i îé вычислительной ячейки К-го столбца соединен с шестым выходом (i — 1)-ой вычислительной ячейки (К вЂ” 1) -го столбца, восьмой вход i-ой вычислительной ячейки

К-го столбца соединен с пятым выходом (i — 1) -ой ячейки (К вЂ” 1) -го столбца, причем восьмой вход в каждой вычислительной ячейки первого столбца соединен с третьим выходом той же вычислительной ячейки, а пятые и шестые входы в каждой вычислительной ячейке первой строки соединены

/ соответственно с пятыми и третьими входами соответствующей вычислительной ячей ки.

<о Источники информации, принятые во внимание при экспертизе

1. Magithia J. С., No restoring Binary

Division Using à Cellular Дггау. «Electron. Letters», 1970, 6, № 10, р. 303 — 304.

2. Guild Н. Н. Some Cellular Logic Arrays

for Non-Restoring Binary Division «The

Кайо and Electron Eng». 1970, 39, № 6, р. 345 — 348 (прототип) .

809173

Редактор Н. Кузнецова

Заказ 17 58

Составитель В. Венцель

Техред А. Бойкас Корректор Н. Швыдкая

Тираж 756 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий!

13035, Москва, Ж вЂ” 35, Раушская наб., д. 4/5

Филиал ППП «Патент», г. Ужгород, ул. Проектная, 4