Устройство для вычисления тригонометрических функций
Иллюстрации
Показать всеРеферат
УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ТРИГОНОМЕТРИЧЕСКИХ ФУНКЦИЙ, содержащее сдвиговый регистр, блок памяти и три накапливающих сумматора, причем выход сдвигового регистра соединен с адресным входом блока памяти, выходы первого и второго накапливающих сумматоров соединены соответственно с первым и вторым выходами устройства , первый информационный вход третьего накапливающего сумматора соединен с выходом сдвигового регистра, отличающеес я тем, что, с целью повьшения быстродействия, в него введены чатьфе блока умножения, блок анализа и блок управления, выходы первого и второго блоков умножения соединены с первыми входами соответственно первого и второго накапливающих сумматоров, вторые входы которых соединены с выходами четвертого и третьего блоков умножения соответственно , выход первого накапливающего сумматора соединен с первыми входами первого и второго блоков умножения, выход второго накапливающего сумматора соединен с первыми входами третьего и четвертого блоков умножения, вторые входы первого и r-4f ..TC4. t третьего блоков умножения соединены с первым выходом блока памяти, второй выход которого соединен с вторыми входами второго и четвертого блоков умножения, информационный вход сдвигового регистра и второй информационный вход третьего накапливающего сумматора соединены с входами соответствующих констант устройства, причем блок анализа содержит регистр, вычитатель, триггер, две группы элементов ИЛИ, три группы элементов И, два элемента И, элемент НЕ, элемент Ш1И-НЕ и элемент ИЛИ, выход элемента НЕ соединен с первыми входами первос & го и второго элементов И, вьпсоды коел торых соединены с первым и вторым входами триггера, прямой и инверсный выходы которого соединены с первыми входами элементов И соответственно первой и второй групп, вторые входы элементов И которых подключены к ,выходу элемента НЕ, выходы элементов И с первой по третью групп подключены к соответствующим входам соответст вующих элементов ИЛИ первой группы, 00 выходы которых соединены с первым информационным входом вычитателя, высд ход и второй информационный вход которого соединены соответственно с информационным входом и выходом регистра , установочный вход которого соединен с вьйсодами элементов ИЛИ второй группы, выход знака регистра соединен с первым входом элемента ИЛИ, второй вход которого соединен с выходом элемента ШШ-НЕ, входы котррого подключены к выходу регистра, первые и вторые входы элементов И третьей группы соединены с выходом соответственно сдвигового регистра и вхо
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН (19) (11) (51) 4
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К ABTOPCHOMV СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
fl0 ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3705140/24-24 (22) 27 .02.84 (46) 07.08.85. Бюл. N - 29 (72) Л.П.Лобанов, Г.С.Тимофеев, П.Б.Пучков и Н.Б.Парамонов (53) 684.325(088.8) (56) Воронов В.В, и др. Цифровые аналоги для систем автоматического управления. Л., 1960 с. 196.
Авторское свидетельство СССР
В 832555, кл. С 06 F //548, 1978. (54)(57) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ
ТРИГОНОМЕТРИЧЕСКИХ ФУНКЦИЙ, содержащее сдвиговый регистр, блок памяти и три накапливающих сумматора, причем выход сдвигового регистра соединен с адресным входом блока памяти, выходы первого и второго накапливающих сумматоров соединены соответственно с первым и вторым выходами устройства, первый информационный вход третьего накапливающего сумматора соединен с выходом сдвигового регистра, о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия, в него введены четыре блока умножения, блок анализа и блок управления, выходы первого и второго блоков умножения соединены с первыми входами соответственно первого и второго накапливающих сумматоров, вторые входы которых соединены с выходами четвертого и третьего блоков умножения соответственно, выход первого накапли" вающего сумматора соединен с первыми входами первого и второго блоков умножения, выход второго накапливающего сумматора соединен с первыми входами третьего и четвертого блоков умножения, вторые входы первого и третьего блоков умножения соединены с первым выходом блока памяти, второй выход которого соединен с вторыми входами второго и четвертого блоков умножения, информационный вход сдвигового регистра и.второй информа ционный. вход третьего накапливающего сумматора соединены с входами соответствующих констант устройства, причем блок анализа содержит регистр, вычитатель триггер, две группы элементов ИЛИ, три группы элементов И, два элемента И, элемент НЕ, элемент
ИЛИ-НЕ и элемент ИЛИ, выход элемента
НЕ соединен с первыми входами первого и второго элементов И, выходы которых соединены с первым и вторым входами триггера, прямой и инверсный выходы которого соединены с первыМи входами элементов И соответственно первой и второй групп, вторые вхо-. ды элементов И которых подключены к ,выходу элемента НЕ, выходы элементов
И с первой по третью групп подключены к соответствующим входам соответствующих элементов ИЛИ первой группы, выходы которых соединены с первым информационным входом вычитателя, выход и второй информационный вход которого соединены соответственно с информационным входом и выходом регист1 ра, установочный вход которого соединен с выходами элементов ИЛИ второй группы, выход знака регистра соединен с первым входом элемента ИЛИ, второй вход которого соединен с выходом элемента ИЛИ-НЕ, входы которого подключены к выходу регистра, первые и вторые входы элементов И третьей группы соединены с выходом соответственно сдвигового регистра и вхо1171785 дом задания режима устройства, подключенным к входу элемента НЕ, третьи входы элементов И первой и второй групп подключены соответственнно к второму и первому выходам блока памяти, входы элементов ИЛИ второй группы соединены с входами соответственно синуса, косинуса и аргумента устройства, вторые входы первого и второго элементов И соединены соответственно с входами синуса и косинуса устройства, при этом блок управления содержит пять триггеров, два элемента
НЕ, четыре элемента ИЛИ и девять элементов И, причем в блоке управления выход первого элемента НЕ соединен с первыми входами с первого по четвертый элементов И,. выход первого элемента ИЛИ соединен с первым входом пятого и вторым входом. первого элементов И, выходы которых соединены с первыми входами соответственно второго и третьего элементов ИЛИ, выходы которых соединены с входами соответственно первого и последова" åëüíî соединенных второго, третьего и четвертого триггеров, выход первого триггера соединен с первыми входами шест ого и седьмого элементов И, выходы которых соединены соответственно с первыми входами четвертого элемента
ИЛИ и восьмого элемента И, вход которого подключен к второму входу третье. го элемента И, выход которого соединен с вторым входом четвертого элеИзобретение относится к области автоматики и вычислительной техники и может быть использовано в арифметико-логических устройствах вычислительных систем различного назначения при аппаратной реализации вычислений тригонометрических функций.
Целью изобретения является повышение быстродействия.
На фиг.1 представлена блок-схема !и устройства; на фиг.2-4 — блок-схемы соответственно блока анализа, блока умножения (матричного типа) и блока управления.
Устройство содержит блок 1 памя- 1 ти, блоки 2.1 — 2.4 умножения,, намента ИЛИ, выход и третий вход которого подключены соответственно к входу пятого триггера и выходу девятого элемента И, первый вход которого соединен с выходом четвертого триггера и вторым входом четвертого элемента И, выход которого соединен с вторым входом второго элемента ИЛИ, выход второго элемента НЕ соединен с вторым входом шестого элемента И, выход пятого триггера соединен с первым входом первого элемента ИЛИ, выход треть" его элемента И соединен с вторым входом второго элемента И, выход восьмого элемента И соединен с вторым входом третьего элемента ИЛИ, вход задания режима устройства соединен с входом первого элемента НЕ и вторыми входами пятого, восьмого и девятого элементов И блока управления, вход второго элемента НЕ и второй вход седьмого элемента И блока управ. ленин соединены с выходом элемента
ИЛИ блока анализа, второй вход второго элемента ИЛИ блока управления соединен с входом пуска устройства, выходы третьего элемента ИЛИ и пятого триггера блока управления соединены с управляющим входом вычитателя блока анализа, выходы второго элемента И, второго элемента ИЛИ и шестого элемента И блока управления соединены суправляющими входамисоответственно сдвигового регистра, третьего накапливающего сумматора и блока памяти. капливающие сумматоры 3..1 — 3.3, сдвиговый регистр 4, блок 5 анализа и блок б управления.
Блок анализа содержит регистр 7, вычитатель 8, триггер 9, группы элементов ИЛИ 10.1 — 10 ° 2, элементы И
11.1 — !1 ° 2, элемент HE 12, группу элементов И 13, группы элементов И
14.1 — 14.2, элемент ИЛИ-HE 15 и элемент ИЛИ 16.
Матричный умножитель содержит элементы И 17 и сумматоры 18.
Блок управления содержит триггеры
19.1 — 19.5, элементы И 20.1 — 20.9, элементы ИЛИ 21.1 — 21.4 и элементы
НЕ 22.1 — 22.3.
3 .1171 785 4
Устройство позволяет одновременно блока 5 анализа выдается, сигнал в вычислить прямые тригонометрические блок 6 управления и по сигналу, выдафункции sin и соя 0 или обратные ваемому с третьего выхода последнего, arcsinx и arccosx, поступающему на управляющий вход блоДля их вычисления используются вы- 5 ка 1 памяти, на адресный вход котороражения ro одновременно поступает код ф с
sin(а ;+ у;) = sink .„cos ó; + выхода сдвигового регистра 4, произ+ cos k;„sin g; водится одновременное считывайие энасоя(Ы; „ + г,) = cosa(; Äcos у ;— чений я п э,и созе., которые посту1 0(°
singt „sin y;ю, „ (1) 10 пают на первые входы соответствующих где ; 1 = Е 1 „,причем о о= О;(2) блоков 2 умножения. Выдача сигнала
Р дприу= 1
0 при у = 0; (3)
1 при р Ч;- (4)
О при считывания в блок 1 памяти эквивалентна операции т;= 3) а его отсутствие — операции г; = О, что соответствует выражению (3).
Значение р; (в первой итерации
3;= ) поступает на первый вход блока 5 анализа, где по сигналу с перво-55 го выхода блока 6 управления осуществляется проверка условия (4) ° Если это условие выполняется, то с выхода
Следовательно, если условие (4) не выполняется, то цикл выполнения в данной итерации уменьшается на время, равное времени считывания из паЯ ф= —,, — значение базисных
-р, углов в радианах: р.„при у = 1 (5) приу=0, 20 причем 9,= 0; i = 1,2,3,...,15.
При вычислении обратных тригонометрических функций непосредственно определяется значение только одной функции arcsin (агссоя х), затем, ис-25 пользуя соотношение
li
arccos х = — — srcsin x
У (6) определяем значение другой функции.
Рассмотрим работу устройства для случая вычисления значений синуса и косинуса угла 8 представляемого также в радианах.
В начальный момент времени в сдви.говый регистр 4 подается двоичный
35 код первого базового угла
1 4 (p, = 45 ), в регистр 7 блока 5 ана.лиза записывается код угла V,= 8, значения синуса и косинуса которого необходимо вычислить, в первом и тре40 тьем накапливающих сумматорах 3 записан код нуля (sin k = sin 0 = О), во втором накапливающем сумматоре 3 код единицы (cos k = cos 0 = 1) о 45 устанавливается режим 1 (вычисление прямых тригонометрических функций), который подается на седьмой вход блока 5 анализа и третий вход блока 6 управления, а на второй вход блока 6 управления поступает сигнал Пуск".
Одновременно с. проверкой выполне,ния условия (4) в блоке 5 анализа производится вычисление очередного значения угла У, по выражению (5).
В блоках 2.умножения (матричного типа), на вторые входы которых поступают соответственно значения синусов и косинусов углов, которые вычислены в (i — 1)-ой итерации, формируются произведения sink cos 2 cos sin y .1- . ° - Ь °
cosa(;,cos у, и sink; sin p<. Полученные произведения поступают попарно соответственно на первый и второй входы соответственно первого и второго сумматоров, где формируется значение очередного приближения sin 0 и cos 6, Затем с пятого выхода блока 6 управления на сдвиговый регистр 4 выдается сигнал сдвига и его содержимое сдвигается на один разряд вправо, т.е. формируется очередной базовый
lf угол
i. Э+1 2 О+ т1и
Если условие (4) не выполняется, то сигнал с выхода блока 5 анализа на вход блЬка 6 управления не выда" ется. По сигналу, поступающему с вто. рого выхода блока управления, в блоке 5 анализа формируется значение
1 в соответствии с выражением (5), сигнал считывания в блок 1 памяти не выдается, что соответствует ;= О. Значения первого и второго накапливающих сумматоров 3 не изменяются, а осуществляется только сдвиг содержимого сдвигового регистра 4 (формирование очередного значения базового угла) . Этот процесс повторяется х раз (i 1, 2,..., 15).
1171785
Гsinд при cos 6
)sing;, сов )3; где sin p;(cos Д) sinq11 (7)
> sin%,1
> СОЗ% 1, вычисляется по выражениям (2), мяти, формирования произведения и суммы.
При вычислении обратных функций (arcsin x u arccos х) начальные состояния всех блоков такие же, как и при вычислении прямых функций, Работа устройства соответствует работе при выполнении условия (4) за исключением следующего.
Сигнал "Режим" на соответствующие входы блоков 5 и 6 анализа и управления соответственно не поступает. В качестве исходных данных на четвер-. тый (пятый) вход блока 5 анализа поступает прямой код sin x (дополни тельный код cos x) а на его третий (второй) вход — прямой код синуса базового угла sin p< (дополнительный код косинуса базового угла соз P,.), а угол р, поступает на вход третьего накапливающего сумматора 3. По сигналу "Пуск" с третьего выхода блока
6 управления выдается сигнал в блок
I памяти,,производится считывание значений sin Д „ соз p., которые по1 с упают в соответствующем коде на соответствующие входы блока 5 аналиsa. В последнем по сигналу, выдаваемому с первого выхода блока, произвоцится аналогично выражению (4) прсвсрка выполнения условия причем
sin М1-1
< Г sin Y„<- sing.при у=1, (8)
l (sin Y „ при у=О, i = 1, 2..., 15, Если условие (7) выполняется, то с выхода блока 5 анализа выдается сигнал на первый вход блока 6 управления, а с его четвертого выхода выдается
1О сигнал на вход третьего накапливающего сумматора 3, по которому к содержимому сумматора прибавляется очередной х-й базбвый угол. Если условие (7) не выполняется, то сигналы с выхода 5 блока анализа и с четвертого выхода блока 6 управления не выдаются и содержимое третьего накапливающего сумматора 3 не изменяется.
Это эквивалентно выполнению следую2О щего выражения
arcsin x = (= K y,, причем у =О,(9)
3=1 где у.,определяется по выражению (3)
У 1
Затем осуществляется сдвиг содержимого сдвигового регистра 4 и процесс вычисления повторяется, Если при вычислении одной обратной функции необходимо одновременно вычислить значение и другой, то после выдачи значения угла первой функции на дополнительный вход третьего накапливающего сумматора 3 поступает код 29 где производятся вычисление
7 по выражению {6) и выдача значения угла другой функции. Максимальное зна. чение угла, которое может быть зафиксировано третьим накапливающим сумматором 3, должно быть равно (90 ).
QQ 4
1171785
Ф ° р4 Уя
117 1785
И+2р
Ярр
1! 71785
Cue 4
Составитель А.Зорин
Техред Л.Мартяшова Корректор М.Пожо
Редактор Л.Гратилло
Заказ 4864/41 Тираж 710
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Подписное
Филиал ППП "Патент", г.ужгород, ул.Проектная, 4