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

Иллюстрации

Показать все

Реферат

 

(72) Автор изобретения

В. В.Аристов

Институт электродинамики АН Украинской ССР (71) Заявитель (54) УСТРОЙСТВО. ДЛЯ ВЫЧИСЛЕНИЯ

ТРИГОНОМЕТРИЧЕСКИХ ФУНКЦИЙ

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

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

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

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

Недостаток этого устройства - ограниченные функциональные возможности, так как оно расчитано на формиро о вание тригонометрических функции и не

:позволяет вычислять прямые и обратные гиперболические и экспоненциальные функции. Кроме того, в нем ограничена точность, так как представление

35 коэффициента коррекции в виде ряда

0.6072529 =0,5(1+2 ) (1+2 ) (1+2 ) .(1+2 ") (1+2-"3 (1+2- ... ,требует дополнительного умножения на коэффициент 0,5, что может быть выполнено сдвигом в сторону младших разрядов исходных чисел при их зане8348 плексор, элемент РАВНОЗНАЧНОСТЬ и блок памяти, причем первый, второй и третий информационные входы блока управления соединены с информационными входами мультиплексора, первый управляющий вход блока управления соединен с первым входом первого тригге40 ра и первым входом элемента И, первый второй, третий и четвертый раздельные входы второго управляющего .входа блока управления соединены соответственно с управляющим входом

4$ счетчика, младшим разрядом адреса блока памяти, первым входом элемента

РАВНОЗНАЧНОСТЬ и управляющим входом нен со вторым входом элемента РАВНО$ ЗНАЧНОСТЬ, выход которого соединен с первым входом второго триггера, вто$$

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

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

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

И пять сумматоров-вычитателей, причем выход первого регистра соединен с информационными входами первого и второго блоков сдвига и первым входом первого сумматора-вычитателя, выход второго регистра соединен с информационными входами третьего и четвертого блоков сдвига и первым входом второго сумматора-аычитателя, выходы первого и четвертого блоков сдвига соединены со вторыми входами соответственно второго и первого сумматоров-.вычитателей, выход третьего регистра соединен с первым входом тре" тьего сумматора-вычитателя, второй вход и выход которого соединены соответственно с выходом блока памяти и входом третьего регистра, первый о выход блока управления соединен с входами задания режима второго, третьего и четвертого сумматоров-вычитателей, выход знака третьего сумматора-вычитателя соединен с первым информационным входом блока управле.ния, второй выход которого соединен с управляющими входами блоков сдвига и входом старших разрядов адреса блока памяти, третий выход блока управления соединен с управляющими входами ключей, дополнительно введены шестой и седьмой сумматоры-вычитатели и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, первый вход которого соединен с управляющим входом устройства, управляющими входами шестого и седьмого сумматороввычитателей и входом младшего разряда адреса блока памяти, второй вход элемента ИСКЛЮЧАОЦЕЕ ИЛИ соединен с первым выходом блока управления, выход элемента ИСКЛЮЧАОщЕЕ ИЛИ соединен с управляющими входами первого и пятого сумматоров-вычитателей, выходы которых соединены соответстаен 5

1$

23

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

Кроме того, блок управления содержит генератор импульсов, два триг гера, элемент И, счетчик, мультимультиплексора, выход которого соеди рой вход которого соединен с выходом генератора импульсоа и синхровходом счетчика, установочный вход которого соединен с выходом элемента И, второй вход которого соединен со входом запуска генератора импульсов и выходом первого триггера, второй ахад которо928348

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

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

Устройство содержит регистры 1-3, блоки 4-7 сдвига, блок 8 памяти, сумматоры-вычитатели 9-13, блок 14 управления,.ключи 15 и 16, сумматорывычитатели 17 и 18, элемент ИСКЛЮЧА- 15

ЮЩЕЕ ИЛИ 19, управляющий вход 20 устройства, входы блока 21 управления, вход 22 запуска устройства, вход 23 кода операции устройства.

Блок 14 управления содержит триг- zy геры 24 и 25, элемент И 26, элемент РАВНОЗНАЧНОСТЬ, 27, мультиплексор 28, генератор 29 импульсов, счетчик 30, блок 31 памяти..

Генератор 29 при наличии логичес- 25 кой "1" на управляющем входе формирует две серии Т о и Т1 импульсов.

Счетчик 30 в зависимости от.сигна= ла на его управляющем входе, формирует сигнал переполнения через rl или 2й зо импул ь сов, где и-разрядност ь устройства, причем состояние счетчика

30 изменяется по отрицательному перепаду, поступающему на счетный вход, если установочный в "0" вход имеет высокий уровень. Параллельные выходы счетчика 30 поступают на второй выход блока 14.и на часть адресных вхо- . дов одноразрядного блока 31 памяти.

Выход переполнения счетчика 30 поступает на установочный в "0" вход первого триггера 24.

Состав кода операций следующий.

K0I1 управляет младшим разрядом счетчика 30-, в зависимости от вычисляемой функции,,устанавливая его емкость и или 2п. Зто управление необходимо для обеспечения сходимости вычислений к искомому решению. КОП- используется в качестве разряда адреса блока 3 1 памяти для формирования сигнала управления, поступающего по третьему выходу в соответствии с типом функции — тригонометрической или

SS гиперболической. При соответствующих номерах итераций на третьем выходе блока 14 формируется .сигнал для управления ключами !5 и 16.

КОП используется для задания знака сходимости вычислений, вполне определенного для каждой вычисляемой функции, а КОПу - для выбора соответствующего знакового разряда по входам 21 блока 14 управления. Сово-. купность выбранного по КОП11 знакового разряда с сигналом КОПЕ с помощью элемента РАВНОЗНАЧНОСТЬ 27 формирует знак очередной итерации который по отрицательному перепаду 11 запоминается во втором триггере

25 в течение всей очередной итерации.

В исходном состоянии триггер 24 на; ходится в состоянии "0". В состоянии

"0" по выходу .элемента И 26 находится также и счетчик 30, а генератор

29 заблокирован по управляющему входу °

Для вычисления заданной посредством КОП функции, после занесения в регистры 1-3 устройства исходной информации об операциях, по входу за-" пуска формируетЧя сигнал ыизкого уровня, который отрицательным фронтом устанавливает триггер 24 в единичное. состояние. При установке триггера 24 генератор 29 начинает формировать сначала импульс, потом te и т.д. По отрицательному фронту первого импульса ь во второй триггер

25 заносится начальный знак, в то время как счетчик 30 остается в ис.- ходном нулевом состоянии, так как сигнал запуска своим низким уровнем через элемент И 26 поддерживает счетчик 30 в состоянии "0". После .окончания импульса Т снимается сигнал установки в "0" счетчика 30, который переходит в режим счета количества итераций. В зависимости от значения

КОП1 код номера итерации на выходе этого счетчика меняется либо по каждому импульсу, либо через один.

Занесение новой информации в регистры 1-3 с выходов сумматоров 17, 18 и 13 осуществляется по каждому положительному фронту серии

В конце последней итерации счетчик 30 формирует сигнал, который ус" танавливает триггер 24 в исходное нулевое состояние, который блокирует работу генератора 29 импульсов и устанавливает счетчик 30 в исходное нулевое состояние.

Последовательность работы устройства состоит в задании кода операций

flo входу 20 устройства и управляющим

К ; 1 -q 2 (3) 20

Обратная коэффициенту деформации величина может быть представлена в; виде и

1/К "- Л (1+ с 21) (4) 25

p=- pt

Численно величина коррекции. равна

/ I1,205136358... при q=

М,607252935... при g

=+1 (для 1=1,2,3,...), 30

=-1 (для 1=0,1,2,...). . ° U

Тогда, в соответствии с формулои (4), для тригонометрических функций (,=- 1 )..

Ю

0,607252935... (1-2 ) (1-2 ) (1-2 ".,)м

"(1 2 ) (1-2 ) (1-2 )

"(1 2 " ) (1-2 <) (1-2 15)

«(1-2 )..., а для гиперболических функций (q=+1) ° 0

1,205136358. ъ (1+2 з )(1+2 ) (1+2 ю)„

„(1+2-1 j(1+2 )„(1+2-1Й)„

«(1+2 ")..., т.е. в первом случае ключи 15 и 16

45 разрешают прохождение информации с сумматоров-вычитателей 10 и 11 соответственно при следующих номерах итераций

i=p 2 3, 4, 7,8, 10, 12, 14, 15, 16 ..., 50 а во втором случае - при

1=р=.3ю 4 7 12э 13в 15ю 17

Зти номера хранятся в блоке 31 блока 14 управления и в соответствующие итерации по третьему выходу блока 14 управления выдветсв сигнал на управление ключами 15 и 16.

7 "9283 входам блока управления и выполнении итераций для вращения вектора с одно" временной коррекцией результата.

Работа устройства основывается на следующих рекуррентных соотношениях, описывающих алгоритмы Волдера l х -xl,+q5 42

l +i 4

@ „=у„+фх 2, . (1) „„.=xi 4Ë, 10

C а гей,2 "; при q---1, з

1 .arth 2 при Я=+1, l

0 l ..

Однако реализация этих соотношений приводит к деформации вектора решения, определяемой соотношением

48

В этом случае вместо уравнения (1) будут реализовываться следующие рекуррентные соотношения

6 х",+1 =хь ф„у, 2, бц,, - 6 ° (5) у„=у (.„õ 2 5у, где Зу,„=(x 2 +K qy<2 " )q

8 . =(у„" ++@ х12 ")q. ь

После выполнения всех итераций будет сформировано решение без деформации вектора. Так как экспоненциальные и гиперболические функции требуют такого же количества констант С (2), как и тригонометрические, то задаваемый на вход 20 устройства сигнал кода операции поступает также и в блок 8 памяти устройства для расширения адресации. Управление итерациями путем формирования а ака Р;„ осуществляется блоком 14 управления по первому выходу, на основе анализа знаковых разрядов сумматоров-вычитателей 17, 18 и 13, поступающих по входу 21 блока 14 управления.

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

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

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

1. Устройство для вычисления тригонометрических функций, содержащее три регистра, два ключа, четыре блоса сдвига, блок памяти, блок управления и пять сумматоров-вычитатепей, 928348 причем выход. первого регистра соединен с информационными входами первого и второго блоков сдвига и первым входом первого сумматора-вычитателя, выход второго регистра соединен с информационными входами третьего и четвертого блоков сдвига и первым входом второго сумматора-вычитателя, выходы первого и четвертого блоков сдвига соединены со вторыми входами соответственно второго и первого сумматоров-вычитателей, выход третьего регистра соединен с первым входом третьего сумматора-вычитателя, второй вход и выход которог р соединены соответственно с выходом блока памяти и входом третьего регистра, первый вы-. ход блока управления соединен с входами задания режима второго, третьего и четвертого сумматоров-вычитателей, выход знака третьего сумматора. вычитателя соединен с первым информационным входом блока управления, второй выход которого соединен с уп". равляющими входами блоков сдвига и входом старших разрядов адреса блока памяти, третий выход блока управления соединен с управляющими входами ключей, о т л и ч а ю щ е е с я тем, что, с целью повышения точности, в него введены шестой и седьмой сумматоры-вычитатели и элемент ИСКЛЮЧАЮЦЕЕ ИЛИ, первый вход которого соединен с управляющиФ входом устройства, управляющими входами шестого и седьмого сумматоров-вычитателей и входом младшего разряда адреса блока. памяти, второй вход. элемента ИСКЛЮЧАОМЦЕЕ ИЛИ соединен с первым выходом блока управления, выход элемента ИСКЛЮЧАЮЩЕЕ

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

15 го

25 зо

Э5 о

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

2. Устройство по п.l, о т л и ч а ю щ е. е с я тем, что. блок управления содержит генератор импульсов, два триггера, элемент И, счетчик, мультиплексор, элемент РАВНОЗНАЧНОСТЬ и блок памяти, причем первый, второй и третий информационные входы блока управления соединены с информационными входами мультиплексора, первый управляющий вход блока управления соединен с первым входом первого триггера и первым входом элемента И, первый, 0 второй, третий и четвертый раздельные входы второго управляющего входа блока управления соединены соответственно с управляющим входом счетчика, младшим разрядом адреса блока памяти, первым входом элемента РАВНОЗИАЧНОСТЬ и управляющим входом мультиплексора, выход которого соединен со вторым входом элемента РАВНОЗНАЧНОСТЬ, выход которого соединен с первым входом второго триггера, второй вход которо" го соединен с выходом генератора им| пульсов и синхровходом счетчика, установочный вход которого соединен с выходом элемента И, второй вход кото рого соединен со входом запуска ге" нератора импульсов и выходом nepsoro триггера, второй вход которого соединен с выходом переполнения счетчика, выход которого соединен с входом старших разрядов адреса блока памяти и вторым выходом блока управления, первый и третий выходы которого соединены соответственно с выходами второго триггера и блока памяти.

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

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

;И 687448, кл." G 06 F 7/38, 1979. ! 2. Авторское свидетельство СССР 519717. кл. G 06 F 15/34, 1976 (прототип).

928348

Фиг.2

Корректор С.Шекмар 4 5л

9и а3пяо ция

Составитель А Зорин

Редактор И.Касарда Техред A. Бабинец

Заказ 3241/61 Тираж 732 Подписное

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

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

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

Перец

Ю Н