Устройство для вычисления функций синуса и косинуса

Иллюстрации

Показать все

Реферат

 

ОП NCAHHE

ИЗОБРЕТЕНИЯ

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

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

Республик .

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнктельное к авт. свид-ву(22) Заявлено 180280 (21) 2884948/18-24 )51) M. Кп.з с присоединением заявки №

G 06 F 7/548

Государственный комитет

СССР по делам изобретений и открытий (23) Приоритет

Опубликовано 230482. Бк)ллетень ¹ 15

Дата опубликования описания 23.04.82

f 53) УДК б81 3 (088.8) (72) Авторы изобретения

) ! (.« «

I

«1

A.A ÌåëüHèê и Н.В.Черкасский (71) Заявитель

Львовский ордена Ленина политехнический и им. Ленинского комсомола (54) УСТРОЙСТВО ДЛЯ. ВЫЧИСЛЕНИЯ ФУНКЦИЙ

СИНУСА И КОСИНУСА

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

Известно устройство для вычисления тригонометрических функций sin x и cosx, содержащее блок управления, блок умножения, блок памяти и два регистра сдвига (1).

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

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

2t выВ + 2tc><+ t cog где ВЬВ- время выборки из блока постоянной памяти; время суммирования двух чисти сел на сумматоре;

- время сдвига в сдвигате-сйВ.

10 JIe (2) .

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

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

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

922734 старших разрядов аргумента, выход первого промежуточного регистра сое" динен с входом второго промежуточного регистра, подключенного через третий блок памяти к входу третьего промежуточного регистра, выходом 5 соединенного с входом четвертого промежуточного регистра, выход которого подключен к первому входу первогс сумматора, второй вход которого через пятый промежуточный регистр сое- 10 динен с выходом сдвигателя, первый вход которого соединен с выходом шестого промежуточного регистра, подключенного через четвертый блок памяти к выходу седьмого промежуточного регистра, вход которого соединен с выходом второго сумматора, второй вход сдвигателя соединен с выходом восьмого промежуточного регистра, вход которого подключен к вы-20 ходу дешифратора, вход которого соединен с выходом седьмого промежуточного регистра, выход второго блока памяти соединен с входом девятого промежуточного регистра, выход которого соединен с первым .входом второго сумматора, второй вход которого соединен с выходом десятого промежуточного регистра, вход которого соединен с выходом первого блока памяти, управляющие входы регистров старших и младших разрядов соединены с первым тактовым входом устройства, управляющие входы первого, девятого и десятого промежуточных регистров соедичены с вторым тактовым 35 входом устройства, управляющие входы второго и седьмого промежуточных регистров соединены с третьим тактовым входом устройства, управляющие входы третьего, шестого и восьмого проме- 40 жуточных регистров соединены с четвертым тактовым входом устройства, пятый тактовый вход которого соединен с управляющими входами четвертоГо и пятого промежуточных Регистров, 45 управляющий вход выходного регистра соединен с шестым тактовым входом устроиства.

На чертеже представлена блок-схе-. ма устройства. 50

Устройство содержит регистр 1 старших разрядов аргумента, регистр

2 младших разрядов аргумента, промежуточные регистры 3 — 12, блоки 13

1б постоянной памяти су "аторы 17 и 55

18, дешифратор 19, сдвигатель 20, выходной регистр 21, тактовые входы

22 — 27 устройства.

Тактовые импульсы, поступающие на регистры устройства, вырабатываются в генераторе тактовых импульсов (не

60 показан) . Изменение содержимого регистров происходит по переднему фронту каждого импульса записи. Для исключения гонок импульсы смещены с помощью элементов задержки в каж- 65 дой ступени на время & . Разбивка устройства регистрами позволяет работать всем ступеням независимо, поэтому сразу после освобождения первой ступени в нее загружается новый операнд, а во второй ступени уже обрабатывается операнд, прошедший первую ступень и т.д. Последовательность операций, выполняемых над операндами при прохождении всех ступеней, определяет выполнение операции вычисления синуса или косинуса. Производительность конвейерных устройств .при условии обработки массивов, в которых коли ество операндов существенно больше числа ступеней конвейера, характеризуется длительностью такта Т продвижения данных по конвейеру.

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

Блок 13 памяти, предназначен для хранения таблицы значений hogg созх) в случае вычисления. функции синуса и таблицы значений Fog sin x< в случае вычисления функции косинуса, блок 14 памяти обеспечивает табличное преобразование величины &х в значение fog & х; блок 15 памяти хранит таблицу значений sin х в случае вычисления синуса и cos x в случае .вычисления косинуса, блок

1б памяти выполняет преобразование вида z - 2 .

Промежуточные регистры 3 — 12 предназначены для хранения результатов промежуточных вычислений и для обеспечения конвейерного способа обработки..

Устройство Производит вычисления на основе таблично-алгоритмического метода. Значение функций синуса и, косинуса достаточно находить в пределах изменения аргумента от 0 до —, так как значения этих функций для произвольного значения .аргумента в силу их периодичности можно получить из значений .функций в интервале (О, -) путем дополнительной операции типа сложения или изменения знака, .Вычисление функций sin х и cos x от аргумента х (О 4 х < †) произвоЛ дится в устройстве на основе следующих соотношений.

Пусть х - число, образованное старшими разрядами аргумента, & х— число, образованное младшими разрядами аргумента.То есть разбиваем аргумент х=О,х„,х,...х„ на сумму узловой точки х =о,х1,х,...x„и при922734 соотношение

cos x0 = дх дх

= -2 sin s in (х О+ — —,)- -дх. s in х О

Л1 +4) выполняемые с погрешностью Е с 2 которая может быть сделана выходящей за пределы разрядной сетки надлежащим выбором параметра k.

Для нычисления значений синуса и )5 косинуса получаем ныражения

Sin X=8(a X<+bS(ax= ЫаХ фон,и+(!oq; cosx )

4) (80<(b ОО рм)

ООЗ Х =СОВ ХО+ШООВ Х = COS ХО- где параметр k должен удовлетворять условию k )

Устройство работает следующим образом.

Значение хО хранится в регистре старших разрядов аргумента 1, значение дх — в регистре младших разрядов аргумента 2. В первом такте работы устройства в блоке 13 памяти 30 по значению хО, поступающему из регистра 1,, формируется значение

hogg cos хО при вычислении синуса и hogg sin х при вычислении косинуса. В блоке 14 по значению д х формируется значение 3og bx. Во втором такте эти значения записываются соответственно в промежуточные регистры 4 и 5, а значение хО из регистра 1 записывается в проме- 40 жуточный регистр 3. На сумматоре

17 формируется выражение, равное сумме содержимого регистров 4 и 5, которое в третьем такте записывается в промежуточный регистр, 7, а в .промежуточный регистр 6 записывается значение регистра 3. По значению хО, поступающему из регистра 6, в блоке

15 памяти. формируется значение sin xz при вычислении синуса и cos х О при вычислении косинуса, а по содержимому регистра 7 в блоке 16 постоянной памяти формируется значение Юо дх+Яа созХ„), при вычислении синуса и значение

55 ВО<, ЬХ+ВОС(МОХ )

g в обратном коде при вычислении косинуса, то есть в блоке 16 60

C производится преобразование г — 2

Поскольку при потенцировании появляется характеристика, то и устройство введен дешифратор 19, который, анализируя содержимое регистра 7, выраба25 — 5 (раз) . т формула изобретения

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

as1n x = sin(x + bx) — sin x 0 ах

2 sin os (x О+ )=дх- cos x а для функции косинуса

bcos х = cos (х О + дх)— тывает код, который указывает, на .колько необходимо сдвинуть значение с выхода блока 16, чтобы учесть характеристику. В четвертом такте со держимое блоков 15 и 16 и дешифратора 19 записывается соответственно в промежуточные регистры 8 — 10.В сдвигателе 20 осуществляется указанный сдвиг, и с его выхода полученное значение записывается в пятом такте в промежуточный регистр 12, а в регистр 11 записывается содержимое регистра 8. На сумматоре 18 суммируются содержимое промежуточного регистра ll и содержимое промежуточного регистра 12, т.е. формируется результат вычисления, который в шестом такте записывается в выходной регистр.

Суммарный объем постоянной памяти для синуса и косинуса определяется выражением

Q=(4n-2n+6+S) 2" + (3 (n-k+1) +r) 2" " где S .= Ooggk, r = Fog (n-k+1) .

Используя это выражение, можно соответствующим выбором параметра

k получить устройство, обеспечивающее требуемую точность вычислений с минимальным суммарным объемом постоянной памяти. Для. n=24 имеем

Q = 329 k..

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

Длительность же .такта н предлагаемом устройстве определяется задержкой в наиболее времяемком узле, которым является сумматор, поэтому

T = t . Быстродействие же известСум ного устройства не превышает ОЫБ + Оум + tCp,S

ПОскОльку ОбычнО t g ;5 tCóì tCä, то быстродействие предлагаемого устройства выше, чем известного в

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

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

1. Авторское свидетельство СССР

9 591857,.кл. G 06 F 7/38, 1978.

2. Потапов В.И., Нестерук В.Р., Флоренсов А.Н. Быстродействующие арифметико-логические устройства

ЦВМ. Новосибирск, 1978, с. 29 — 32 (прототип).

922734

Составитель A.Çîðèí

Техред Ж.Кастелевич Корректор Л.Бокшан

Редактор В.Данко

Закаэ 2581/б3 Тираж 732 Подписное

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

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

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