(5) УСТРОЙСТВО. ДЛЯ ВЫЧИСЛЕНИЯ ТРИГОНОМЕТРИЧЕСКИХ ФУНКЦИЙ
t
Изобретение относится к вычисли- , тельной технике, а именно к классу арифметических устройств для вычисления трансцендентных функций.
Известно устройство, использующее для вычисления элеменуарных функций алгоритмы Волдера-Меджитта, содержащее регистры, блоки сдвига, блоки памяти., сумматоры-вычитатели, блок управления, причем процесс вычислений заключается в совместной реализации алгоритмов псевдоумножения и псевдоделения 111 .
Недостатками известного устройства являются ограниченные функциональные возможности и невысокое быстродействие, обусловленные наличием деформации решения.
Наиболее близким к предлагаемому по функциональному назначению, принципу действия и технической сущности является устройство, содержащее три регистра, четыре блока сдвига, блок памяти, пять сумматоров-вычитателей.
блок управления, четыре переключателя и два сумматора, причем коррекция деформации решения осуществляется в процессе выполнения основных итераций путем вычисления на дополнительных сумматорах соответствующих поправок 121.
Недостаток этого устройства - oi- раниченные функциональные возможности, так как оно расчитано на формирование тригонометрических функций и не позволяет вычислять прямые и обратные гиперболические и экспоненциальные функции. Кроме того, в нем ограничена точность, так как представление коэффициента коррекции в виде ряда
х 0.6072529 0,5(1+2) (1+2-) (1+2)
(1+2(1+2-()... требует дополнительного умножения на коэффициент 0,5, что может быть выполнено сдвигом в сторону младших разрядов исходных чисел при их занесении в регистры, т.е. ценой потери одного разряда. При этом для реализации шага итераций, равного , не обходимо также, чтобы блоки сдвига имели возможность осуществлять сдвиг на разряд и в сторону старших разрядов, что усложняет оборудование. Цель изобретения - повышение точности, расширение класса решаемых за дач за счет возможности вычисления гиперболических функций. Поставленная цель достигается тем, что в устройство, содержащее тр регистра,два ключа,четыре блока сдвига, блок памяти, блок управления И пять сумматоров-вычитателей, приче выход первого регистра соединен с информационными входами первого и второго блоков сдвига и первым входо первого сумматора-вычитателя, выход второго регистра соединен с информационными входами третьего и четвертого блоков сдвига и первым входо второго сумматора-вычитателя, выходы первого и четвертого блоков сдвига соединены со вторыми уходами соответственно второго и первого сумматоров-.вычитателей, выход третьего ре гистра соединен с первым входом третьего сумматора-вычитателя, второй вход и выход которого соединены coot ее тственно с выходом блока памяти и входом третьего регистра, первый выход блока управлени}| соединен с входами задания режима второго, третьего и четвертого сумматоров-вычитателей, выход знака третьего сумматора-вычитателя соединен с первым информационным входом блока управле.иия, второй выход которого соединен с управляющими входами блоков сдвига и входом старших разрядов адреса блока памяти, третий выход блока управления соединен с управляющими вхо дами ключей, дополнительно введены шестой и седьмой сумматоры-вычитатели и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, первытй вход которого соединен с управляющим входомустройства, управляющими входами шестого и седьмого сумматороввычитателей и входом младшего разряда адреса блока памяти, второй вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с первым выходом блока управления, выход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соеди нен с управляющими входами первого и пятого сумматоров-вычитателей,выходы которых соединены соответственНО с первым входом шестого сумматоравычитателя и информационным входом первого ключа, выход которого соединен со вtopым входом шестого сумма тора-вычитателя, выход которого соединен с входом первого регистра, первый и второй входы пятого сумматора-вычитателя соединены соответственно с выходами первого и третьего блоков сдвига, первый и второй входы четвертого сумматора-вычитателя соединены соответственно с выходами второго и четвертого блоков сдвига, выходы второго- и четвертого сумматоров-вычитателей соединены соответственно .с первым входом седьмого сумматора-вычитателя и информационным входом второго ключа, выход которого соединен со вторым входом седьмого сумматора-вычитателя, выход которого соединен со входом второго регистра, знаковые выходы шестого и седьмого сумматоров-вычитателей соединены соответственно со вторым и третьим информационными входами блока управления, первый и второй управляющие входы которого соединены соответствённо со входами запуска и кода операции устройства. Кроме того, блок управления содержит генератор импульсов, два триг гера, элемент И, счетчик, мультиплексор, элемент РАВНОЗНАЧНОСТЬ и блок памяти, причем первый, второй и третий информационные входы блока управления соединены с информационными входами мультиплексора, первый управляющий вход блока управления соединен с первым входом первого триггера и первым входом элемента И, первый второй, третий и четвертый раздельные входы второго управляющего входа блока управления соединены соответственно с управляющим входом счетчика, младшим разрядом адреса блока памяти, первым входом элемента РАВНОЗНАЧНОСТЬ и управляющим входом мультиплексора, выход которого соединен со вторым входом элемента РАВНОЗНАЧНОСТЬ, выход которого соединен с первым входом второго триггера, второй вход которого соединен с выходом генератора импульсов и синхровходом счетчика, установочный вход которого соединен с выходом элемента И, второй вход которого соединен со входом запуска генератора импульсов и выходом первого триггера, второй вход которого соединен с выходом переполнения счетчика, выход которого соединен с входом старших разрядов адреса блока памяти и вторым выходом блока управления, первый и третий выходы которо го соединены соответственно с выходами второго триггера и блока памяти На фиг.1 изображена блок-схема устройства; на фиг.2 - блок-схема блока управления. Устройство содержит регистры 1-3, блоки k-7 сдвига, блок 8 памяти, сум маторы-вычитатели блок 1 А управления, . ключи 15 и 16, сумматорывычитатели 17 и 18, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 19, управляющий вход 20 уст ройства, входы блока 21 управления, вход 22 запуска устройства, вход 23 кода операции устройства. Блок 1Ц управления содержит три|- геры 2k и 25, элемент И 26, элемент РАВНОЗНАЧНОСТЬ:27, мультиплексор 28, генератор 29 импульсов, счетчик 30, блок 31 памяти... Генератор 29 при наличии логической 1 на управляющем входе формиру ет две серии Т о и Т импульсов. Счетчик 30 в зависимости от.сигна ла на его управляющем входе , формиру ет сигнал переполнения через п или 2 импульсов t, где п разрядность устройства, причем состояние счетчика 30 изменяется по отрицательному пере паду, поступающему на счетный вход, если установочный в О вход имеет высокий уровень. Параллельные выходы счетчика 30 поступают на второй выхо блока Т и на часть адресных вхо-. дов одноразрядного блока 31 памяти. Выход переполнения счетчика 30 посту пает на установочный в О вход первого триггера 2k. Состав кода операций следующий. КОП управляет младшим разрядом счетчика 30, в зависимости от вычисляемой функции,устанавливая его емкость п или 2п. Это управление необходимо для обеспечения сходимости вычиспений к искомому решению. КОП| используется в качестве разряда адреса блока 31 памяти для формирования сигнала управления, поступающего по третьему выходу в соответствии с типом функции - тригонометрической или гиперболической. При соответствующих номерах итераций на третьем выходе блока 14 формируется .сигнал для управления ключами 15 и 16. KOnj используется для задания знака сходимости вычислений, вполне определенного для каждой вычисляемой функции, а КОП - для выбора соответствующего знакового разряда по входам 21 блока 1 4 управления. Сово-. купность выбранного по КОП) знакового разряда с сигналом КОП с помощью элемента РАВНОЗНАЧНОСТЬ 27 Формирует знак очередной итерации , который по отрицательному перепаду Т запоминается во втором триггере 25 в течение всей очередной итерации. В исходном состоянии триггер 2 наг ходится в состоянии О. В состоянии О по выходу элемента И 26 находится также и счетчик 30, а генератор 29 заблокирован по управляющему вхоДля вычисления заданной посредством КОП функции, после занесения в регистры 1-3 устройства исходной информации об операциях, по входу запуска формируется сигнал низкого уровня, который отрицательным фронтом устанавливает триггер 2 в единичное состояние. При установке три(- гера 2k генератор 29 начинает формировать сначала импульс Т: , потом tfo и т.д. По отрицательному фронту первого импульса С{ во второй триггер 25 заносится начальный знак, в то время как счетчик 30 остается в исходном нулевом состоянии, так как сигнал запуска своим низким уровнем через элемент И 2б поддерживает счетчик 30 в состоянии О. После .окончания импульса t снимается сигнал установки в О счетчика 30, который переходит в режим счета количества итераций. В зависимости от значения КОПх код номера итерации на выходе этого счетчика меняется либо по каждому импульсу Т . либо через один. Занесение новой информации в регистры 1-3 с выходов сумматоров 17 18 и 13 осуществляется по каждому положительному фронту серии to В конце последней итерации счетчик 30 формирует сигнал, который устанавливает триггер в исходное нулевое состояние, который б.покирует работу генератора 29 импульсов и устанавливает счетчик 30 в исходное нулевое состояние. Последовательность работы устройства состоит в задании кода операций по входу 20 устройства и управляющим 7 входам блока управления и выполнени итераций для вращения вектора с одн временной коррекцией результата. Работа устройства основывается н следующих рекуррентных соотношениях описывающих алгоритмы Волдера i .2:. 1уи 2Ч . (1) f arct-nl; 2, при , : 1 . г; J . . , Carth 2 при , О I $п - числа натурального ряда Однако реализация этих соотношений приводит к деформации вектора р шения, определяемой соотношением K vJLf-4-2; Обратная коэффициенту деформации величина может быть представлена в виде П (1+0.2 Численно величина коррекции равн 1,205136358... при q 1/к. J; 607252935... при g +1 (для ,2,3,...), -1 (для , 1,2,./.). Тогда, в соответствии с формулой (k), для тригонометрических функций (). . 0,607252935... (1-2-) (1-2;1И1-2 1-2-)(1-2)(1-2Ч1-2-)((1-2- К1-2-)...,: . а для гиперболических функций (.4-1 1,205136358....fc (1+2)(1+2-М(1+2х( 1+2-(1+2-)х(1+2 х(1+2-«)..., т.е. в первом случае ключи 15 и 16 разрешают прохождение информации с сумматоррв-вычитателей 10 и 11 соот BeTctBeHHo при следующих номерах итераций ,3,,7,8,10,12, И, 15,16...,
а во втором случае - при ,,7,12,13,15,17...
Эти номера хранятся в блоке 31 блока 1 управления и в соответствующие итерации по третьему выходу блок 1 управления выдается сигнал на управление ключами 15 и 16.
Формула изобретения
1. Устройство для вычисления тригонометрических функций, содержащее три регистра, два ключа, четыре блока сдвига, блок памяти, блок управления и пять сумматоров-вычитателей, 8 в этом случае вместо уравнения (1 ) будут реализовываться следующие рекуррентные соотношения ГхиЧ 2:Чбк1 , , ч Ьи,(2-ибу1, 5) где В..)ч, 5у. (y|,2-W6,ixl2 )q. После выполнения всех итераций будет сформировано решение без деформации вектора. Так как экспоненциальные и гиперболические функции требуют такого же количества констант Cj , (2), как и тригонометрические, то задаваемый на вход 20 устройства сигнал кода операции поступает также и в блок 8 памяти устройства /1ЛЯ расширения адресации. Управление итерациями путем формирования знака С, осуществляется блоком 14 управления по первому выходу, на основе анализа знаковых разрядов сумматоров-вычитателей 17, 18 и 13, поступающих по в)$оду 21 блока Н управления. Устройство предназначено для ускоренного выполнения прямых и обратных гиперболических и тригонометрических функций, экспоненциальных и логарифмических функций, для вычисления длин векторов, нахождения корней квадратных полиномов, для поворота векторов Vi т.п. Предлагаемое устройство представляет собой цифровое вычислительное устройство с широкими функциональными возможностями при вычислении элементарных функций. Такие вычисления особенно необходимы для систем автоматического управления подвижными объектами, в робототехнике, при управлении станками для синтеза слодных поверхностей и т.п. Многофункциональность, высокие скорость и точность вычислений, несложность оборудования дают возможность использовать предлагаемое устройство в интегральном исполнении. Экономический эффект может составить миллионы рублей. причем выход первого регистра соединен с информационными входами первого и второго блоков сдвига и первым входом первого сумматора-вычитателя, выход второго регистра соединен с информационными входами третьего и четвертого блоков сдвига и первым входом второго сумматора-вычитателя, выходы первого и четвертого блоков сдвига соединены со вторыми входами соответственно второго и первого сумматоров-вычитателей, выход третье го регистра соединен с первым входом третьего сумматора-вычитателя, второ вход и выход которого соединены соот ветственно с выходом блока памяти и входом третьего регистра, первый выход блока управления соединен с входами задания режима второго, третьего и четвертого сумматоров-вычитателей, выход знака третьего сумматоравычитателя соединен с первым информационным входом блока управления, второй выход которого соединен с уп-; равляющими входами блоков сдвига и входом старших разрядов адреса блока памяти, третий выход блока управления соединен с управляющими входами ключей, отличающееся тем, что, с целью повышения точности в него введены шестой и седьмой суммatopы-вычитaтeли и элемент ИСКЛЮЧАЮ ЩЕЕ ИЛИ, первый вход которого соединен с управляющиг входом устройства, управляющими входами шестого и седьмого сумматоров-вычитателей и входом младшего разряда адреса блока.памяти второй вход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с первым выходом блока управления, выход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с управляющими входами первого и пятого сумматоров-вычитателей, выходы которых соединены соот ветственно с первым входом шестого сумматора-вычитателя и информационным входом первого ключа, выход кото рого соединен со втором входом шестого сумматора-вычитателя, выход которого соединен с входом первого, регистра, первый и второй входы пятого сумматора-вычитателя соединены соответственно с выходами первого и третьего блоков сдвига, первый и.вто рой входы четвертого сумматора-вычитателя соединены соответственно с выходами второго и четвертого блоков сдвига, выходы второго и четвертого сумматоров-вычитателей соединены соответственно с первым входом седьмого сумматора-вычитателя и информационным входом второго ключа, выход которого соединен со вторым входом седьмого сумматора-вычитателя, выход которого соединен со входом второго регистра, знаковые выходы шестого и седьмого сумматоров-вычитателей соединены -соответственно со вторым и третьим информационными входами блока управления, первый и второй управляющие входы которого соединены соответственно со входами запуска и кода операции устройства. 2. Устройство по П.1, о т л и -V чающееся тем, что блок управления содержит генератор импульсов, два триггера, элемент И, счетчик, мультиплексор, элемент РАВНОЗНАЧНОСТЬ ,и блок памяти, причем первый, второй ,и третий информационные входы блока управления соединены с информационными входами му.пьтиплексора, первый управляющий вход блока управ 1ения соединен с первым входом первого триггера и первым входом элемента И, первый, второй, третий и четвертый раздельные входы Jвторого управляющего входа блока управления соединены соответственно с управляющим входом счетчика, младшим разрядом адреса блока памяти, первым входом элемента РАВНОЗНАЧНОСТЬ и управляющим входом мультиплексора, выход которого соединен со вторым входом элемента РАВНОЗНАЧНОСТЬ, выход которого соединен с первым входом второго триггера, второй вход которого соединен с выходом генератора импульсов и синхровходом счетчика, установочный вход которого соединен с выходом элемента И, второй вход кото рого соединен со входом запуска генератора импульсов и выходом первого триггера, второй вход которого соединен с выходом переполнения счетчика, выход которого соединен с входом старших разрядов адреса блока памяти и вторым выходо.м блока управления, первый и третий выходы которо го соединены соответственно с выходами второго триггера и блока памяти. Источники информации, приняты.е во внимание при экспертизе 1. Авторское свидетельство СССР ;№ BBjkkB, кл. G Об F 7/38, 1979i 2. Авторское свидетельство СССР N- 519717, кл. G 06 F IS/S, 1976 (прототип).
Smopou
. Щ
1
название | год | авторы | номер документа |
---|---|---|---|
Устройство для вычисления элементарных функций по алгоритму Волдера | 1982 |
|
SU1068933A1 |
Устройство для цифровой обработки сигналов | 1985 |
|
SU1336028A1 |
Вычислительное устройство | 1983 |
|
SU1167604A1 |
Цифровой функциональный преобразователь (его варианты) | 1981 |
|
SU1019443A1 |
Устройство для вычисления элементарных функций | 1980 |
|
SU940155A1 |
Цифровой функциональный преобразователь (варианты) | 1981 |
|
SU1015375A1 |
Устройство для вычисления тангенса | 1975 |
|
SU650073A1 |
Устройство для реализации безызбыточного алгоритма быстрого преобразования Фурье | 1981 |
|
SU1056206A1 |
Устройство для вычисления элементарных функций | 1980 |
|
SU1035604A1 |
Устройство для вычисления тригонометрических функций | 1984 |
|
SU1171785A1 |
Фиг.г
т
2S
тина
c KW
Упраё/1янлцая шина
Авторы
Даты
1982-05-15—Публикация
1980-05-14—Подача