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

Иллюстрации

Показать все

Реферат

 

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

СОЮЗ СОВЕТСНИХ

СОЦИАЛИСТИЧЕСНИХ

РЕСПУБЛИН (19) (11) (51) 4 G 06 F 7/548

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ

Н ASTOPCHOMY СВИДЕТЕЛЬСТВУ (61) 1171785 (21) 4041878/24-24 (22) 25.03.86 (46) 07. 12.87. Бюл. ¹ 45 (72) Л.1!.Лобанов Г.С.Тимофеев

Ю.И.Печенюк и В.А.Терсков (53) 681.325(088.8) (56) Авторское свидетельство СССР

¹ 1171785, кл. С 06 F 7/548, 1984. (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ТРИГОНО!"!ЕТРИЧЕСКИХ ФУНКЦИЙ (57) Изобретение относится к области автоматики и вычислительной техники и может быть использовано в арифметико-логических устройствах вычислительных систем различного назначения при аппаратной реализации вычис1357951 лений тригонометрических функций. блоки 2.1-2.4 умножения, блок 5 анаЦелью изобретения является уменьше- лиза иблок 6 управления,допол:нительние объема памяти. Цель достигается но введены элементы И 9.1-9.2, элетем,что в устройство, содержащее мент ИЛИ-НЕ 10, группа элементов сдвиговый регистр 4, блок 1 памяти, И 8 и группы элементов ИЛИ 7 ° 1-7.2. накапливающие сумматоры 3.1 -3.3, 3 ил.

s in (g,;.

+ j ) = sin w;, cos j; +

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

Целью изобретения является уменьшение объема памяти.

На фиг. 1 представлена структурная схема устройства;на фиг. 2— структурная схема блока анализа; на фиг. 3 — структурная схема блока управления.

Устройство содержит блок 1 памяти, блоки 2.1-2 ° 4 умножения, накапливающие сумматоры 3.1-3.3, сдвиговый регистр 4, блок 5 анализа, блок 20

6 управления, группы 7.1-7.2 элементов ИЛИ,группу 8 элементов И, элементы И.9.1-9.2, элемент ИЛИ-НЕ 10.

Блок 5 анализа содержит регистр

11,вычитатель 12,триггер 13,группы элементов ИЛИ 14.1-14.2,элемент ИЛИ

15, элементы И-НЕ 16.1-16.2, элемент

НЕ 17, элементы И 18. 1-18.2, группу из. двухвходовых элементов .И 19,группы из трехвходовых элементов И 20.120.2, счетчик 21 итераций, группу элементов НЕ 22.

Блок управления содержит триггеры

23.1-23.5, элементы И 24.1-24.10, элементы ИЛИ 25.1-25.4 и элементы 3

НЕ 26.1-26.2.

Устройство позволяет одновременно вычислить прямые тригонометрические функции sing u cos 8 или обратные arcsinx u arccosx.

Для их вычисления используются следующие выражения: где Ы.;, при = 1;

J1=

y=0; (3) при f3; « ц;,,ри р, q . (4) 0 — значения базовых углов в радианах; при у = 1; при У--О, причем ср =8 (5) При вычислении обратных тригонометрических функций непосредственно определяется значение только одной функции arcsinx или arccosx, затем используя соотношение

arccosx = — — arcsinx

2 J (6) определяется значение другой функции.

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

В начальный момент времени в сдвиговый регистр 4 подается двоичный код первого базового угла, + cos g;, sin

cos (М;, + j, sin eL;-i sin j;

i=1

) --- cos <;, cos (1) j, причем ь, =0; (2) 1357951 — — (P, = 45 ), в блоке 1 памяти хранятся значения з п ;и соя 3 для i 0 l,2,3,4,5. В регистр (1 блока 5 анализа через первую группу элементов ИЛИ 14,1 записывается код угла В, значения синуса и косинуса которого необходимо вычислить.

Счетчик 21 итераций блока 5 анализа устанавливается в нулевое состояние.

В первом накапливающем сумматоре

3.1 записан код нуля, а во втором накапливающем сумматоре 3.2 — код единицы. Третий накапливающий сумматор 3.3 при вычислении прямых функций не используется. Устанавливается сигнал "Режим 1" (вычисление прямых тригонометрических функций), который .подается на седьмой вход блока 5 анализа и третий вход блока 6 управления. Этот сигнал открывает по первому входу группу двухвходовых элементов И 19 и через элемент НЕ 17 закрывает группу трехвходовых элементов И 20.1-20.2 блока 5 анализа.На вход вычитателя 12 по первому входу блока 5 анализа со сдвигового регистра 4 устройства поступает код

Четвертый и пятый входы блока

5 анализа при вычислении прямых функций не используются (на эти входы поступают коды нуля).

Кроме того, сигнал "Режим 1",поступающий на третий вход блока 6 управления, по соответствующим входам открывает первый, шестой и девятый элементы И 24. 1,24.6 и 24.9 и через первый элемент НЕ 26.1 закрывает второй, третий, седьмой и восьмой элементы НЕ 24.2, 24.3, 24.7 и 24.9 блока 6 управления. На второй вход блока 6 управления поступает сигнал

"Пуск, который через первый элемент

ИЛИ 25.1, первый элемент И 24.1 и второй элемент ИЛИ 25.2 поступает на вход первого триггера 23.1 и на первый выход блока 6 управления.

На четвертый вход блока 6 управления поступает разрешающий потенциал.

Сигнал с первого выхода блока 6 управления подается на .восьмой вход блока 5 анализа, по которому в вычитателе 12 производится проверка выполнения условия (4) путем выполнения операции P, — 9 . Значение 9 на вход вычитателя 12 поступает с выхода регистра 11 блока 5 анализа. Результат операции вычитания записы5

55 вается в регистр 11 блока 5 анализа, Если это условие выполняется,то знаковый разряд регистра 11 устанавливается в единичное состояние.

Код единицы через второй элемент

ИЛИ 15.2 поступает на выход блока

5 анализа, а с него — на первый вход блока 6 управления. Этот сигнал открывает пятый элемент И 24.5 и через второй элемент НЕ 26.2 закрывает четвертый элемент И 24.4 блока

6 управления.

Задержанный на время сравнения сигнал с выхода первого триггера

23.1 через пятый и шестой элементы

И 24.3 и 24:6 и третий элемент ИЛИ

25.3 поступает на вход первого и последовательно с ним соединенных третьего и четвертого триггеров

23.3 и 23.4 и на четвертый выход блока 6 управления.

Сигнал с четвертого выхода блока

6 управления поступает на управляющий вход блока 1 памяти и на вход второго элемента И 9.2 устройства.

Второй элемент И 9.2 по другому входу закрыт,так как в первой итерации старшие пять разрядов сдвигового регистра 4 не равны нулю. Одновременно на адресный вход блока 1 памяти поступает кэд Р< с выхода сдвигового регистра 4. Производится одновременное считывание значений

sin P> и cosP,,êoòoðûå через соответствующие группы элементов ИЛИ 7 поступают на вторые входы соответствующих блоков 2 умножения.

В блоках 2 умножения (матричного типа), на первые входы которых поступают значения синусов и косинусов с выходов соответственно первых и вторых сумматоров 3.1 и 3.2, которые вычислены в (i-1)-й итерации (в первой итерации соответственно равные нулю и единице). Формируются произведения sin< l, cos j iños î ;,а

icos j;, sin<, sin j;.

Выдача сигнала считывания в блок

1 памяти эквивалентна операции

= 3;, а его отсутствие — ; = О, что соответствует выражению (3).Полученные произведения попарно поступают соответственно на первый и второй входы соответственно первого и второго сумматоров, где формируется значение очередного приближения

sin В и cos 8 в соответствии с выражением (1).

1357951 рациях — очередной базовый угол

И вЂ” (;y(1 + f ° Кроме того сиг

f5 нал с выхода пятого триггера 23.5 поступает на первый вход десятого элемента И 24.10, а с него . — на первый вход первого элемента ИЛИ 25.1 ,блока 6 управления и начинается очередная итерация.При этом в первом сумматоре 3. 1 хранится код sing,, во втором сумматоре 3.2 — код cos P, а в регистре 11 блока 5 анализа код g, = p, — 8 . который поступает 25 на вход вычитателя 12 как абсолютное значение.

Если условие (4) не выполняется, то знаковый разряд регистра 11 блока 5 анализа оказывается установлен- 30 ным в нулевое состояние, код единицы с выхода блока 5 анализа через второй элемент ИЛИ 15.2 на первый вход блока 6 управления не выдается.

При этом оказывается открытым четвер- 35 тый элемент И 24.2 блока 6 управления, а сигнал с выхода .первого триггера 23.1 поступает на первый вход четвертого элемента ИЛИ 25.4 и второй выход блока 6 управления. По 40 сигналу, поступающему с второго выхода блока 6 управления на 9 вход блока S анализа, восстанавливается значение угла 8 в первой итерации и остатка Ц, в последующих итерациях в соответствии с выражением (5), т.е. осуществляется операция вычитания

Р Ч Р Р 8 д ° 50

Сигнал считывания в блок 1 памяти не выдается* значения первого и второго накапливающих сумматоров 3 не изменяются, а осуществляется только сдвиг содержимого сдвигового регистра (формирование очередного значения базового угла). Этот процесс повторяется i раз (i = 1,2,...,5).

Затем сигнал с выхода четвертого триггера 23.4 через девятый элемент

И 24.9 и четвертый элемент ИЛИ

25.4 поступает на вход пятого триггера 23,5 а с него — на пятый выход 5 блока 6 управления. С пятого выхода блока 6 управления на сдвиговый регистр 4 выдается сигнал сдвига и его содержимое сдвигается на один разряд вправо, т.е. формируется второй базовый угол, а в последующих итеОтличия в принципе работы стройства при выполнении шестой — пятнадцатой итерации заключается в ".ом, что при p,«й0,024544 (p, 1 24 22,5 ) значения функций синуса и косинуса не считываются из блока 1 памяти, а принимаются равными sin P, == P; и cos (; = 1. В блоке 1 памя ги хранятся коды только пяти значений синусов и пяти значений косин сов (sin(3;и cosP,, i = 1 2 3 4 5).

При выполнении шестой — пятнадцатой итераций на первый вход второго элемента И 9.2 с выхода элемента

ИЛИ-НЕ 10 выдается разрешающий потенциал, так как значения пяти старших разрядов, которые поступают на вход элемента ИЛИ-НЕ 10 с выхода сдвигового регистра 4, будут равны нулю (Ps=0,0024544„=0,0000011001001 ).

Следовательно, сигнал считывания, выдаваемый с четвертого выхода блока 6 управления, проходит через второй элемент И 9.2 на пер- вые входы элемента И 9.1 и группы элементов И 8, на вторые входы которых соответственно поступают:<од единицы и код угла P, со сдвигового регистра 4. С вь.ходов группы элементов И 8 и первого элемента И 9.1 код и единицы как значения з1п ;

cos P; поступают соответственно через первую и вторую группы элеменгoB

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

При выполнении каждой итерации по сигналам, выдаваемым с пер:зого выхода блока 6 управления на «осьмой вход блока 5 анализа к счетчику 21 итераций добавляется единица. Во время выполнения последней пятнадцатой итерации в счетчике 21:(тераций блока 5 анализа будет записан код 15,О = 1111 и с выхода второго элемента И-HE на второй выход блока будет выдаваться запрещающчй потенциал, который псступает на четвертый вход блока 6 управления„ а с него — на второй вход десягого элемента И 24.10. Импульс с выхода пятого триггера 23.5 не будет поступать на вход первого элемента ИЛИ

25,1 и вычисления заканчиваотся.

1357951

При вычислении обратных функций (arcsinx и arccosx) начальные состояния всех блоков такие же, как и при вычислении прямых функций.

Работа устройства соответствует работе при выполнении условия (4),за исключением следующего.

Сигнал "Режим 1" на соответствующие входы блоков 5 и 6 анализа и управления не поступает. В качестве исходных данных при вычислении

arcsinx на четвертый вход блока

5 анализа поступает прямой код sinx, а при вычислении arccosx на пятый вход поступает инверсный код cosx.

На второй и третий входы блока 5 анализа с выходов элементов ИЛИ второй и первой группы 7.2 и 7.1 одновременно поступают соответственно значения cos (; и sing,, а угол Р; пос- 20 тупает на вход третьего накапливающего сумматора 3.3 Причем прямой код cos P, в блоке 5 анализа за счет группы элементов НЕ 22 преобразуется в инверсный код. Это необходимо для обеспечения общности работы блока 5 анализа при вычислении как ,прямых функций sin 9 cos 0 и обратной функции агсзхпх, так и при вычислении обратной функции arccosx. 4

Так,при уменьшении угла P, значение функций sin P; уменьшается, cos P, увеличивается, а инверсный код cos /3 ! также уменьшается.

Элементы ИЛИ 15 и И-HE 16,1 определяют наличие информации на входах 4 и 5 блока 5 анализа. В зависимости от того, на каком входе при- 40 сутствует информация (прямой код на четвертом — при вычислении arcsinx или инверсный код на пятом — при вычислении arccosx) триггер 13 через соответствующие элементы И 18.1 и 18.2 устанавливается в соответствующее состояние, открывая первую группу трехвходовых элементов И

20.1 (при вычислении arccosx) или вторую группу трехвходовых элемен 50 тов И 20,2 (при вычислении arcsinx), через которые поступает соответствующий код на первый вход вычитателя

12 по сигналу, вьдаваемому с четвертого выхода блока 6 управления.По сигналу, вьдаваемому с первого выхода блока 6 управления на восьмой вход блока 5 анализа, в последнем к счетчику 21 итераций добавляется единица и производится аналогично выражению (4) проверка условий

1 при sin j3; sin (f;, (со$ Р; )инв (cost);,)„„, (7)

Если условие (7) выполняется, то с первого выхода блока 5 анализа выдается сигнал на первый вход блока 6 управления, а с его третьего выхода выдается сигнал на вход третьего накапливающего сумматора 3.3, по которому к содержимому сумматора прибавляется очередной i-й базовый угол. Если условие (7) не выполняется,то сигналы с первого выхода блока 5 анализа и третьего выхода блока 6 управления не вьдаются и содержимое третьего накапливающего сумматора не изменяется.

Затем осуществляется сдвиг содержимого.сдвигового регистра и процесс вычислений повторяется.

Начиная с шестой итерации считывание значений san P; и cos P; из блока памяти не производится, а при-, нимается равным sin P; - =P; cosP,= 1 °

Если при вычислении одной обрат.ной функции необходимо одновременно

1 вычислить значение и другой,то пос;ле вьдачи значения угла первой функции, на дополнительный вход третьего накапливающего сумматора 3 поступает

li код — где производится вычисле1 ние по выражению (6) и выдача значения угла другой функции.Максимальное значение угла, которое может быть зафиксировано третьим накапливающим сумматором 3, может быть равно — (90 )..

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

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

11171785,отличающееся тем,что, с целью уменьшения объема памяти, в него дополнительно введены два элемента И, элемент ИЛИ-НЕ,группа элементов И, две группы элементов ИЛИ, выходы пяти старших разрядов сдвигового регистра соединены с входами элемента ИЛИ-НЕ,выход котороЮ

1357951

ro соединен с первым входом первого элемента И, второй вход которого соединен с выходом шестого элемента И блока управления, выход первого элемента И соединен с первым входом второго элемента И и первыми вхо дами элементов И группы, вторые входы которых соединены с выходами.сдвигового регистра, выходы элементов И группы соединены с первыми входами 1О элементов ИЛИ первой группы, вторые входы которых соединены с выходами фиксации синуса блока памяти, выходы элементов ИЛИ первой группы соединеHbI с входами второго сомножителя пер- 15 ного и третьего блоков умножения и третьим входом элементов И второй группы блока анализа, причем блок анализа дополнительно содержит группу элементов НЕ, элемент ИЛИ, эле- 20 мент И-НЕ, входы которого соединены с входами кода синуса устройства, выход элемента И-НЕ соединен с первыми входами первого элемента И, входы элемента ИЛИ соединены с входами кода косинуса устройства,вьг:од элемента ИЛИ соединен с первым входом второго элемента И,вход элементов НЕ группы соединен с выходом элементов ИЛИ первой группы устройства, выход элементов НЕ группы соединен с третьим входом элементов И второй группы, выход элементов ИЛИ второй группы устройства соединен с в." орыми входами второго и четвертого блоков управления, первые входы элементов второй группы соединены с выходом кода косинуса блока памяти, второй вход элементов ИЛИ второй группы соединен с выходом второго элемента И, второй вход которого соединен с входом логической единицы устройства, второй выход блока анализа соединен с входом окончания процесса блока управ ления.

1357951

Составитель З.Шершнева

Техред А.Кравчук

Корректор Л.Патай

Редактор А.Шандор

Заказ 5999/49 Тираж 671 П одписн ое

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

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

Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4