Вычислительное устройство для поворота вектора
ВЫЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО ДЛЯ ПОВОРОТА ВЕКТОРА, содержащее ri последовательно соединенных итерационных блоков, где п - число шагов итераций, каждый из которых, начиная с первого по /2-й, содержит сумматор-вычитатель, первые информационные входы которых соединены с входом первой координаты вектора устройства, второй вход координаты вектора устройства соединен с вторым информационным входом сумматоравычитателя первого итерационного блока, выход каждого сумматора-вычитателя j-ro итерационного блока (,..., ) соединен с вторым информационным входом сумматора-вычитателя (i+l)-ro итерационного блока со сдвигом на один разряд вправо, причем каждый j-й итерационный j п/2+1 , п/2 «-2,...п) содержит первый и второй сумматорывычитатели , первый информационный вход первого сумматора-вычитателя (П;/2+1)-го итерационного блока соединен с выходом сумматора-вычитателя П/2-ГО итерационного блока со сдвигом на один разряд вправо и первым информационным входом второго сумматора-вычитателя со сдвигом на(п-2)разряда вправо, второй информационный вход второго сумматоравычитвтеля соединён с первым входом устройства и вторым информационным входом первого сумматора-вычитателя, первые информационные входы соответственно первого и второго сумматороввычитателей последукицего итерационного блока соединены с выходом второго сумматора-вычитателя предыдущего итерационного блока со сдвигом соответственно на(п-2)й на один разряд вправо, вторые информационные входы первого и второго сумматоров-вычитателей порледукйдего итерационного блока соединены с выходом первого сумматора-вычитателя предвдущего итерационного блока, выхода первого и второго ;сумматоров-вычитателей последующего итерационного блока соединены соответственно с первым О и вторым выходами результата устрой- ;о ства, отличающееся трм, что, с целью сокращения затрат обору4: N9 дования и повьшения точности вычислений , оно содержит блок постоянной памяти, причем вход блока постоянной памяти соединен с входом угла поворота устройства, выходы блока постоянной памяти с первого по ni/2-й соединены с знаковыми входами сумматороввычитателей соответствукндих итерационных блоков, выходы блока постоянной памяти с ih72+l)-ro по rj-й соединены с знаковыми входами первого и второго сумматоров-вычйтателей соответствующих итерационных блоков.
СОЮЗ СОЩТСНИХ
ВСВ \
РЕСПУБЛИН .
„SU„„109742 зш, с 06 Г 7/544
ИСАНИЕ ИЗОБРЕТЕНИЯ
Н ABTOPCMOMV СВВДВТВВВСТВВ В В r
Вп т" к g g f, Ô Ф
ГОСУДАРСТ8ЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3484676/18-24 (22) 11.08.82 (46) 23.08.84. Бюл. У 31 (72) А.АВМельник (53) 681.3(088.8) (56) 1. Авторское свидетельство СССР
В 706846, кл. G 06 F 7/38, 1978.
2. Авторское свидетельство СССР
N - 826344, кл. G 06 F 7/548, 1981.
3.. Авторское свидетельство СССР
В 813421, кл. G 06 F 7/548, 1981 (прототип). (54)(57) .ВЪ|ЧИСЛИТЕЛЬНОЕ УСТРОЙСТВО
ДЛЯ ПОВОРОТА ВЕКТОРА, содержащее последовательно соединенных итерационных блоков, где h — число шагов итераций, каждый из которых, начиная с первого по ь/2-й, содержит сумматор-вычитатель, первые информационные входы которых соединены с входом первой координаты вектора устройства, второй вход координаты вектора устройства соединен с вторым информационным входом сумматоравычитателя первого итерационного блока, выход каждого сумматора-вычитателя i-ro итерационного блока (i =1,..., n/2-1)соединен с вторым информационным входом сумматора-вы" читателя (i +1I -го итерационного блока со сдвигом на один разряд вправо, причем каждый 1 -й итерационный блок(где j =n/2+1, n/2 +2,...n) содержит первый и второй сумматорывычитатели, первый информационный вход первого сумматора-вычитателя (n,/2+1)-ro итерационного блока соединен с выходом сумматора-вычитателя n/2-ro итерационного блока со сдвигом на один разряд вправо и первым информационным входом второго сумматора-вычитателя со сдвигом на(п-2)разряда вправо, второй информационный вход второго сумматоравычитателя соединен с первым входом устройства и вторым информационным входом первого сумматора-вычитателя, первйет информационные входы соответствейно первого и второго сумматороввычитателей последующего итерацион" ного блока соединены с выходом второго сумматора-вычитателя предыдущего итерационного блока со сдвигом соответственно на(11-211и на один разряд вправо, вторые информационные входы Я первого и второго сумматоров-вычитателей последующего итерационного блока соединены с выходом первого сумматора-вычитателя предыдущего итерационного блока, выходы первого и второго сумматоров-вычитателей последующего итерационного блока соединены соответственно с первым и вторым выходами результата устрой-" < ) ства, о т л и ч а ю щ е е с я тем,, 1©
| что, с целью сокращения затрат обору- 3 дования и повышения точности вычис- ф лений-, оно содержит блок постоянной памяти, причем вход блока постоянной памяти соединен с входом угла поворота устройства, выходы блока постоянной памяти с первого по ni/2-й соеди.нены с знаковыми входами сумматороввычитателей соответствующих итера- Ф ционных блоков, выходы блока постоянной памяти с (и/2+1).-го по g -й соединены с знаковыми входами первого и второго сумматоров-вычитателей соответствующих итерационных блоков.
1 1109742
Изобретение относится к вычисли» . тельной технике и предназначено для построения на его основе специали-. н эированных вычислителей. з
Известно вычислительное устройство t 1), выполняющее операции поворо«
5 та вектора на плоскости
Для вычисления выражения (1) по алгоритму(2 )в известном устройстве еобходимо затратить время Т = М
СЬ атраты оборудования составляют
Ф T где Ю«- затраты на р-разрядный сумматор-вычитатель, Ф„„,- затраты на коммутатор. щ Среднеквадратическая общая погрешность вычисления по алгоритму(2) равна
)("= К(, Х соэ Й +Узза Ч);
У+= K(Yeas ×-Х sin Ч), где Х,у — координаты исходного вектора;
Ф
Х,У вЂ” координаты вектора, повернутого на угол;
К вЂ” коэффициент удлинения коор-. динат.
Недостатками этого устройства являются низкие быстродействие и точность вычисления.
Известно арифметическое устройст-, 20 во $2), содержащее два регистра, два сумматора-вычислителя, два коммутатора, дешифратор. Вычисление выражения (11в данном устройстве вы25 полняется по модифицированному алго-., ритму Волдера, а время .вычисления, равно
T„= 1 (1„+ 4„„,+ „,)
ЭО где 1 — время оложения или вычитасв ния;
t — задержка в коммутаторе;
t > — время считывания константы из дешифратора.
Недостатки данного устройстванизкие быстродействие и точность вычисления.
Наиболее близким к предлагаемому по технической сущиости является вычислительное устройство для пово- " рота-вектора (3) реализующее алгоритм Волдера и содержащее h после«
I довательно соединенных итерационных блоков, каждый из которых содержит. три сумматора-вычитателя и коммута- 45 тор. Операция () )в известном устройстве выполняется по алгоритму Волдера ч,,„=т,.-, x,. г ;
Х =Х+ У2
2 1 . 2
Ч. ° Q,-j. агckg.g
Sign $. =5} п Ч,; где . — функция, указывающая направ-55
1i ление поворота, причем .1
=0,1,..., (n-1)- номер итерации. что при п 32 составляет четыре единицы младшего разряда.
Недостатками известного устройства являются большие затраты оборудова" ния и низкая точность вычисле":ы.
Цель изобретения — сокращение затрат оборудования и повышение точности вычисления .
Поставленная цель достигается тем, что в вычислительное устройство для поворота вектора, содержащее и последовательно соединенных итерационных блоков, где n — - число шагов итераций, каждый иэ которых, начиная с первого по n/2-й, содержит сумматор-вычитатель, первые информационные входы которых соедиl иены с входом первой координаты вектора устройства, второй вход координаты вектора устройства соединен с вторым информационныя входом сумматора-вычитателя первого итерационного блока, выход каждого сумматора-вычитателя i --ro итерационного блока (з =1...,, n /2-1) соединен с вторым информационным входом сумматора-вычитателя (i+1}-ro, итерационного блока со сдвигом на один разряд. вправо, причем каждый -й итерационный блок (где - j= n /2+1, п /2+2,..., n} содержит первый и второй сумматорывычитатели, первый информационный вход первого сумматора-вычитателя
1,n/2+1 )"ro, итерационного блока соеди- . нен с выходом сумматора-вычитателя
h /2-го итерационного блока со сдвигом на один разряд вправо и первым информационным входом второго сумматора-вычитателя со сдвигом на (n -2) разряда вправо, второй информационный вход второго сумматора-вычитателя соединен с первым входом устройства и вторым информационным
Отличие алгоритма(3)от алгоритма 50 (2)состоит в том, что значения Я.
,1 считываются из блока постоянной памяти, а не вычисляются. Обычно при выполнении операции поворота вектора значения углов поворота наперед 55 известно при выполнении, поэтому они предварительно записываются в блок постоянной памяти в арктангенс- .
3 11097 входом первого сумматора- вычитателя, первые информационные входы соответственно первого и второго сумматоров-вычитателей последующего итерационного блока соединены с выходом второго сумматора-вычитателя предыдущего итерационного блока со сдвигом соответственно на(n-21)и на один разряд вправо, вторые информационные входы первого и второго сумматороввычитателей последующего итерацион- ного блока соединены с выходом первого сумматора-вычитателя предыдущего итерационного блока, выходы первого и второго сумматоров-вычитатеIS лей последующего итерационного блока соединены соответственно с первым и вторым выходами результата устройства, дополнительно введен блок постоянной памяти, причем вход блока постоянной памяти соединен с входом угла поворота устройства, выходы блока постоянной памяти с первого по n/2-й соединены с знаковыми входами сумматоров-вычитателей соответ25 ствующих итерационных блоков, выходы блока постоянной памяти c(n /2 + 1) -ro
no h-й соединены с знаковыми входами первого и второго сумматоров-вычитателей соответствующих итерационных блоков.
На чертеже представлена схема вычислительного устройства для поворота вектора.
Устройство содержит п /2 последо. вательно соединенных итерационных 35 блоков I каждый из которых содержит сумматор-вычитатель 2, n/2 итерационных блоков 3, каждый иэ которых содержит первый и второй сумматорывычитатели 4 и 5, блок 6 постоянной 40 памяти, входы 7 - 9 и выходы 10 и
11
Вычисление выражения(1 )в устройстве. осуществляется по алгоритму .Меджита
У,. „=2 (У.+ „. х,), 42 1 ной системе счисления. В блоке постоянной памяти углы поворота записаны в виде и,, „„ и о, Устройство работает следующим образом.
Координата исходного вектора Х по входу 7 поступает на первые входы сумматоров-вычитателей 2 всех итерационных блоков 1 и на вторые входы сумматоров-вычитателей 4 и 5: первого итерационного блока 3, а координата у по входу 8 поступает на второй вход сумматора-вычитателя
2 первого итерационного блока 11. В каждом итерационном блоке устройства выполняется одна итерация алгоритма (3 )и результаты поступают в следуют щий итерационный блок, где над ними выполняется следующая итерация.Так как в первом уравнении алгоритма(3) в первых n/2 итерациях значение второго слагаемого равНо нулю(иэ"за выхода за пределы разрядной сетки при сдвиге), это позволяет не включать в итерационные блоки 1 сумматора-вычитателя для выполнения данного уравнения. Сдвиги на
2(n - 1 -1)и на один разряд вправо осуществляются путем жесткости соединения выходов разрядов сумматороввычитателей предыдущего итерационного блока с входами разрядов сумматоров-вычитателей последующего блока со сдвигом на данное число разрядов. Управление работой сумматоров-вычитателей осуществляется от соответствующих разрядов углов поворота, считываемых из блока 6 постоянной памяти по адресу, поступающему по входу 9. Наличие сигнала
"0" на выходе разряда блока постоянной памяти (Sign Ч„=-I )oáåñïåчивает настройку сумматоров-вычитателей 2 и 5 на выполнение операции вычитания, а сумматоров-вычитателей
4 — на выполнение операции сложения.
Наличие сигнала "1" на выходе pasряда блока постоянной памяти sign t„
= +1)обеспечивает противоположную настройку.
Количество блоков устройства я равно числу требуемых шагов итераци"% онного процесса(3 ). Координаты Х и
У,итогового вектора с выходов 10 и 11 п /2-ro блока 3 выводятся на информационные выходы устройства.
Общее время вычисления в предлагаемом устройстве равно д!
209742 — раз, h 2 27п. а„= ю
1О
6 = — g
-n
6 где Са, — время. считывания угла поворота из блока постоянной памяти.
Затраты оборудования составляют
%= 15 BWсв Юп,„
rgeW>>>-, затраты иа блок постоянной памяти.
Общая погрешность вычисления в предлагаемом устройстве составляет т.е. она не зависит от разрядности аргумента и равна приблизительно единице младшего разряда.
Таким образом, при той же скорости вычисления предлагаемое устройство превосходит известное по затратам оборудования в
" Й се <+ х2 раза, Ж +W
1ff9lñáи 633 по точности вычисления в при и =32 преимущество в. 4,16 раз..
В предлагаемом .устройстве полностью отсутствуют элементы синхронизации, что исключает необходимость разработки устройства управления.
Однородность и регулярность структуры предлагаемого устройства позволяет изготавливать его в виде большой интегральной схемы.
Эффективность изобретения заключается в сокращении затрат оборудования и повышений точности вычисления устройства для выполнения операции поворота вектора, причем за счет повышения .точности вычисления обеспечивается дополнительное сокращение затрат оборудования, так как, нет необходимости увеличивать разрядность операционных элементов с целью повышения точности. ! 109742 т, r. Ужгород,ул.Проехтнай, 4




