Вычислительное устройство для поворота вектора

Иллюстрации

Показать все

Реферат

 

()857979

ОП ИСАНИЕ

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВМДЕТЕЛЬСТВУ

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

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

Республик

1 (61) Дополнительное к авт. саид-ву (22) Заявлено 10 10.79 (21) 2843417/18-24 (51)М, Кл. е O6 F 7/548 с присоединением заявки 3É

Геоударстееииый комитет (28) Приоритет до делам изобретеиий и открытий

Опубликовано 23.08.81. Бюллетень М 31

Дата опубликования описания 23.08.81 (5З) а ДК 681.3 (088.8) И. Г. Грибков, T. И. Борисова, В. П. Коцтелев и Т. Л. Степукова (72) Авторы изобретения

Ъ- . / (71) Заявитель (54) ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО ДЛЯ ПОВОРОТА

ВЕКТОРА

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

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

Это устройство выполняет поворот вектора с одновременной коррекцией результата (11 и (21

Недостатком этого устройства является боль итой объем оборудования.

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

/ первого и второго регистров, выходы которых соединены с первыми входами первого и второ- . го сдвигателей соответственно, первые входы первого и второго мультиплексоров являются входами устройства, выходы первого и второго 2О регистров являются выходами устройства и соединены с первыми входами соответственно первого и второго сумматоров--вычитателей, а также с входами соответственно третьего и четвертого регистров, выходы которых соедине ны со вторыми входами второго и первого мультиплексоров соответственно, выходы первого мультиплексора и первого сдвигателя через первую группу элементов И соединены с вторым входом второго сумматора-вычитателя, а выходы второго мультиплексора и второго сдвигателя через вторую группу элементов И соединены с вторым входом первого сумматора-вычитателя. при этом управляющие входы первого и второго мультиплексоров соединены вместе и являются первым кодовым входом устроиства, управляющие входы первого и второго сдвигателей также соединены вместе и являются вторым кодовым входом устройства, управляющие входы первого и второго сумматоров-вычитателей являются соответственно третьим и четвертым кодовыми входами устройства.

Это устройство обеспечивает поворот вектора, заданного своими проекциями, которые представляются и-разрядными двоичными числами и, коррекцию результата поворота. Пова рот и коррекция в этом устройстве выполня857979 4 и 10 на (2"-1) разрядов, n=0,1......,,со стробированием, сумматоры-вычитатели 11 и 12. информационные входы 13 и 14 устройства, информационные выходы 15 и 16 устройства, пер5 вый и второй управляющие входы 17 и 18 устройства, третий и четвертый управляющие входы 19 и 20 устройства, пятый и шестой управляющие входы 21 и 22 устройства, входы

23 — 30 мультиплексоров 7 и 8.

10 Поворот вектора осуществляется по следующим зависимостям.

Этап 1 (1) (2) (3) (4) Этап П

20 ются последовательно, затрачивая на обе этн операции 2п итераций (31.

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

Цель изобретен я — увеличение быстродействия устройства.

Указанная цель достигается тем, что в вычислительное устройство для поворота вектора, содержащее четыре регистра, два мультиплексора, два сумматора-,вычитателя, выходы которых соединены с входами соответственно первого и второго регистров, выходы которых соединены с информационными входами первого и второго сдвигателей соответственно, первые информационные входы первого и второго мультиплексоI ров являются информационными входами устройства, вторые информационные входы первого и второго мультиплексоров соединены с выходами соответственно третьего и четвертого регистров, управляющий вход первого мультиплексора и управляющий вход первого сдвигателя являются соответственно первым и вторым управляющими входами устройства, а управляющие входы первого и второго сумматоров-вычитателей соответственно — третьим и четвертым управляющими входами устройства, введены пятый и шестой регистры, при этом вход пятого регистра соединен с входами первого и четвертого регистров, а выход пятого регистра соединен с третьим и четвертым информационными входами первого мультиплексора, вход шестого регистра соединен с входами второго и третьего регистров, а вь-, ю ход шестого регистра соединен с третьим информационным входом второго мультиплексора, четвертый информационный вход которого соединен с выходом третьего регистра, выходы первого и второго мультиплексоров соединены с первыми информационными входами соответственно первого и второго сумматоров-вычитателей, вторые информационные входы которых соединены с выходами соответственно первого и второго сдвигателей, выходы сумматоров-вычитателей являются информационными выходами устройства, управляющие входы второго мультиплексора и второго сдвигателя являются соотВетственно пятым и шестым управляющими входами устройства.

На чертеже представлена структурная схема вычислительного устройства для поворота вектора.

Устройство, содержит регистры 1 — 6 для хранения начальной и промежуточной числовой информации, мультиплексоры 7 и 8 (четыре информационных входа, один выход), сдвигатели где i -= -0,1... n — 1;

Ое — угол поворота; х „уо — начальные координаты вектора.

Полученные в результате этой процедуры значения х у„в К раз больше истинных

25 координат вектора после поворота. Поэтому необходима коррекция полученных результатов, то есть надо найти х„—, ӄ—, где К—

1 коэффициент деформации вектора.

Этап I в данном устройстве без потери общности не выполняется ввиду того, что устройство используется в режиме, когда утлы

О„хранятся в памяти в требуемом виде, т. е. в виде набора 1, ранее вычисленных. Исполь зование данного устройства в другом режиме легко осуществить, дополнив необходимыми

35 известными схемами, обеспечивающими реализацию этапа I.

Рассмотрим работу предлагаемого устройства в процессе выполнения этапа 11 и коррекции, которые представляют собой итерациой40 ные процессы Начало итерапии есть момент подачи управляющих сигналов на регистры, мультиплексоры, сдвигатели, сумматоры-вычитатели. Управляющие сигналы обеспечивают подключение соответствующих входов мульти45 плексоров 7 и 8, сдвиг на требуемое число разрядов сдвигателями 9 и 10, выполнение требуемой операции сумматорами- вычитателями

11 и 12. Концом итерации является установление на выходах сумматоров-вычитателей 11 и

12 результата конкретной операции, Начальными данными этапа If являются хО, уе и набор (°, соответствующих углу 90.

Перед выполнением этапа П по формулам (3),(4) на данном устройстве необходимо осуществить подготовительную итерацию. Она заключается в том, чтобы начальные условия подать на вход определенных регистров. Пусть на входе 13 присутствует хо, на входе 14 — y>.

857979

1-я итерация

< 4. =Х„"i X„, Х =Х +2".Х °

n„n

11 41 -3 11

Х,1 =Xí 41 Хп

"1

Хlg Х и 2 10.Х 2

Г 1 (5) (6) 5

2-я итерация (7) (8),о 3я итерация

41 =Х +2 И.Х11 и„

Х =О+ х11 и = l13! (9) (10) 15

4-я итерация

Х"" = а " Х"" + g->.Х " п3 у1 «)id gS И

НФ" и,— Хл (12) В результате подготовительной итерации необходимо обеспечить на выходе сумматора-вычитателя 11 значение хо, что достигается подключением входа 23 мультиплексора 7, обеспечением на выходе сдвигателя 9 нуля за счет

1снятия стробирующего сигнала, установкой коi да суммирования на сумматоре-вычитателе 11.

Аналогичным образом на выходе сумматоравычитателя 12 получаем y .

Первая итерация этапа I I начинается с записи в регистры 1 и 4 значения х ; в регистры 2 и 3 записывается у . В вычислении формулы (3) принимают участие регистры 1 и

3, мультиплексор 7, сдвигатель 9, сумматорвычитатель 11. На выходе сумматора-вычитателя

11 имеем у, Одновременно вычисляется формула (4) с участием регистров 2 и 4, мультиплексора 8, сдвигателя 10, сумматора-вычитателя 12. На выходе сумматора-вычитателя 12 имеем х., Вторая итерация начинается с записи х. в регистры 2 и 3 и записи у„в регистры 1 и 4.

На выходе сумматора-вычитателя ll имеем х, на выходе сумматора-вычитателя 12 — у .

И так далее. Таким образом, если на вход 13 подан хо, а на вход 14 — у то на нечетной итерации с сумматора-вычитателя ll получаем, значение у., с сумматора-вычитателя 12 — х .

1 1

На четной итерации наоборот: с сумматора-вычитателя 11 — х., с сумматора-вычитателя 12—

У1

Коррекция полученных результатов x„, уп будет осуществляться последовательно, Сначала корректируется х„, затем у„. Перед выполнением коррекции х д и уд необходимо провести подготовительные итерации.

Подготовительная итерация для коррекции состоит в следующем. Значение х „с выхода сумматора-вычитателя 11 записывается в регистры 5, 1 и 4, а значение у,„с сумматоравычитателя 12 записывается в регистр 3, где хранится до окончания коррекции х,, С выхода сумматора-вычитателя 12 имеем х„. Значение, полученное с сумматора-вычитателя 11 на этой итерации, безразлично: оно не будет записыват ся в регистры.

Первая итерация коррекции х > начинается с записи х в регистры 2 и 6. В регистрах 1 и 5 хп уже записано. Коррекция заключается

1 в умножении х„на константу . Двоичное

A представление этой константы, полученной для

31-й. итерации, имеет вид:

= 0,1001101101110100111011011010100 к„„

Алгоритмы умножения на константу мож<и но представить в вине следующей итерационной процедуры

2О 5- щ ция Х" =Х И -2-® Х" -X п8 i 4. и кgg (13) д

5 де х,„— промежуточное значение, получаемое в результате i-ой итерации коррекции на j-ом сумматоре-вычитателе

25 (1=1, 2, 3, 4; j =11, 12); корректируемая величина; х, — результат коррекции.

Подготовительная итерация для коррекции уп заключается в том, чтобы обеспечить на входе регистров 5,1,6,2 значение у, которое хранилось в регистре 3. Коррекция у,„осуществляется с помощью той же итерационной процедуры, которая используется при коррекции х

В таблице представлено начальное состояние

55 всех компонентов вычислительного устройства для поворота вектора для всех итераций коррекции, в том числе подготовительных. Символом

"-" показано безразличное состояние компонента.

Код сумматора-вычитателя "0" означает сложе40 ние, "1" — вычитание.

Введение двух новых регистров и ряда дополнительных связей в устройство позволило получить уменьшение времени на коррекцию результата поворота вектора по методу Волдера.

45 Так, в известном устройстве для осуществления коррекции результата, являющегося двумя 32разрядными двоичными числами, требуется 32 ггерации (сдвнг, суммирование — вычитание, запись в регистры), не считая подготовительных. Прн использовании предлагаемого изобретения достаточно выполнить пять итераций на одно 32-разрядное число, также не считая одной подготовительной. Время, затрачиваемое на выполнение этих пяти итераций на современной элементной

Последовательное, а не параллельное выполнение коррекции двух чисел результата позволяет совместить счет и выдачу результата в 32-разрядном формате из специализированного процес7 857979 8 сора в ЦВМ, что также сокращает общее время Увеличение быстродействия для 16-разрядных получения результата (ЦВМ.спецпроцессор ЦВМ) ..чисел м 37,5%.

Кроме того, данное устройство без измене- Такое увеличение быстродействия оправдыния микропрограммы коррекции может BbllloJI- вает введение двух дополнительных регистров, нять коррекцию двух 16-разрядных двоичных > которое практически не сказывается на увеличечисел, параллельно, что занимает четыре вычис- нии оборудования. лительных итерации, формулы (5), (7), (9), Данное устройство может работать и с дру(11). Так как результат и в этом случае фор- гими форматами данных,.например с 24-раэрядмируется в виде 32-разрядного слова (два 16- ными. В этом случае можно либо применять разрядных слова), его также удобно выдавать 1ð приведенную в описании микропрограмму для в ЦВМ. коррекции 32-разрядных слов, так как конЭффективность данного устройства по срав- станты коррекции совпадают в 24-разрядах, нению с известным характеризуется относитель. либо разработать новую микропрограмму, чем ным увеличением быстродействия. Увеличение можно добиться уменьшения числа итераций . быстродействия для 32-разрядных чисел:ь34%. на коррецию.

l4

-85797913

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

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

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

1. Авторское свидетельство СССР N 445042, кл. G 06 F 7/38, 1973.

2. "lEEE Transactions on Computers".—

1974, vol. с — 23, Н 10, рр. 993 — 1001 (про25

"тотип).

3. Байков В. Д. и др. Аппаратурная реализация элементарных функций в ЦВМ. Л., ЛГУ, 1975, с. 67 — 76.

857979

Составитель В. Березкин

Техред Л. Пекарь

Корректор M Kocxa

Редактор П. Ортутай

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

Заказ 7245/79 Тираж 745 Подписное

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

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