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

Иллюстрации

Показать все

Реферат

 

CoIo3 Советскик

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

Республик

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву (22) 3а е еНо 06.06.80 (2! ) 2977720/18-24 (51) м. кл. с присоединением заявки М

G 06 F 7/544

1Ьаударстквый квинтет

СССР ао аеааи взебретеикй н откуыткй (23) Приоритет

Опубликовано 30. 06. 82. Бюллетень № 24

Дата опубликования описания 30.06.82 (53) УДК 68) .3(088.8) (72) Автор изобретения

В.В. Аристов (1

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

ФУНКЦИЙ

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

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

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

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

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

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

Волдера-Меджитта и в которых для сни-. жения деформации вектора выбирается формула численного интегрирования высокого порядка (3).

Недостатками таких устройств является также недостаточно высокое быстродействие и малая точность.

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

3 940 элементарных функций, содержащее три регистра, четыре блока сдвига, блок памяти, семь сумматоров, четыре переключателя, блок управления, счетчик и блок анализа знака. Коррекция деформации вектора в этом устройстве осуществляется путем вычисления на каждом шаге частичных поправок (4 ).

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

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

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

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

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

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

1входом кода операции блока анализа

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

В устройстве для вычисления элементарных функций блок нормализации числа содержит одноразрядный блок памяти, элемент РАВНОЗНАЧНОСТЬ, муль- to типлексор, элементы ИСКЛЮЧАЮЩЕЕ ИЛИ, элементы ЗАПРЕТ, элементы И, шифратор, первый и второй триггеры и регистр, выход которого является пер: вым выходом блока, второй выход кото- 15 рого соединен с выходами элемента

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

РАВНОЗНАЧНОСТЬ, первым информационным входом регистра, адресным входом мультиплексора и третьим входом блока, знаковый выход мульти" плексора соединен с первыми входами всех элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, вторые входы которых соединены с разрядными выходами мультиплексора, выход каждого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ

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

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

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

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

Устройство содержит первый 1, второй 2, третий 3, четвертый 4 и пятый

5 регистры, первый 6 и второй 7 блоки сдвига, блок 8 памяти, первый 9, второй lO, третий 11, четвертый 12 и пятый 13 сумматоры, блок 14 управления, счетчик 15 и блок 16 анализа состояния, состоящий из регистра 17 кода операций, дешифратора 18 и блока

l9 нормализации числа. Первый, второй и третий выходы блока 19 нормализации

7 9401 числа соединены соответственно с адресным, знаковым и управляющим выходами блока 16 анализа состояния, блокирующий выход которого соединен с выходом дешифратора 18, вход которого и третий вход блока 19 нормализации числа соединены с выходом регистра 17 кода операций. Вход этого регистра 17 соединен с входом кода операции блока 16 анализа состояния, информационный, управляющий входы и вход обнуления которого соединены соответственно с первым, вторым и четвертым входами блока 19 нормализации числа. Выходы третьего 11, четвертого 12 и пятого

13 сумматоров по шине 20 соединены с информационным входом блока 16 анализа состояния, знаковый выход которого по знаковой шине 2! соединен с управляющими входами всех сумматоров

9- 13. Адресный выход блока 16 анализа состояния по адресной шине 22 устройства соединен с адресными входами блоков 6 и 7 сдвига и блока 8 памяти, первый выход которого соединен с вторым информационным входом третьего сумматора 11. Блокирующий выход блока 16 анализа состояния соединен с блокирующим входом блока 8 памяти, второй выход которого соединен с установочным входом счетчика 15. Третий вход блока 14 управления соединен с управляющим выходом блока 16 анализа состояния, вход кода операции которого соединен с входной управляющей шиной 23 устройства. Вход обнуления блока 16 анализа состояния соединен с запускающим входом

24 устройства и первым входом блока

14 управления, первый выход которого ч 49 соединен с ответным выходом 25 устроиства. Второй выход блока 14 управления соединен по шине 26 с управляющими входами занесения информации первого 1, второго 2 и третьего 3 регистров, выходы которых соединены с первыми информационными входами первого 9, второго 10 и третьего 11 сумматоров соответственно. Выходы

nepsoro 9 и второго 10 сумматоров соединены с информационными входами чет- вертого 4 и пятого 5 регистров соответственно, выходы которых соединены с первыми информационными входами четвертого 12 и пятого 13 сумматоров соответственно. Выходы третьего 11, четвертого 12 и пятого 13 сумматоров соединены с первыми информационными входами третьего 3, первого 1 и вто55

8 рого 2 регистров соответственно, вторые информационные входы которых соединены с входной информационной шиной 27 устройства. Четвертый выход блока 14 управления соединен со счетным входом счетчика !5, а пятый выход блока 14 управления соединен по шине

28 с вторым тактирующим входом третьего регистра 3 и с управляющими входами приема информации четвертого 4 и пятого 5 регистров и счетчика !5.

Третий выход блока 14 управления соединен по шине 29 с тактирующими входами первого 1 и второго 2 регистров и с первым тактирующим входом третьего регистра 3. Выход 30 счетчика 15 соединен с управляющим входом блока

16 анализа состояния и вторым входом блока 14 управления. Выходы первого 1 и второго 2 регистров соединены с информационными входами первого 6 и второго 7 блоков сдвига соответственно. Выход первого блока 6 сдвига соединен с вторыми информационными входами второго 10 и пятого 13 сумматоров. Выход второго блока 7 сдвига соединен с вторыми информационными входами первого 9 и четвертого 12 сумматоров.

Блок"схема (фиг. 2) одного из возможных вариантов выполнения блока 19 нормализации числа содержит одноразрядный блок 31 памяти, элемент РАВНОЗНАЧНОСТЬ 32, мультиплексор 33, элементы ИСКДОЧАЮЩЕЕ ИЛИ 34, элементы ЗАПРЕТ 35, элементы И 36, шифратор 37, первый 38 и второй 39 триггеры и регистр 40. Порядковые номера элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 34, элементов ЗАПРЕТ 35 и элементов И 36 приведены в скобках и соответствуют номеру разряда мультиплексора 33, начиная с младшего. Например, элемент

ИСКЛЮЧАЮЩЕЕ ИЛИ, подключенный к второму младшему разряду мультиплекЧора

33, имеет номер 34(2), а соединенные с ним элемент ЗАПРЕТ и элемент И

35(2) и 36(2) соответственно. для и-разрядного мультиплексора элементы старшего разряда имеют номера соответственно 34(n- 1), 35(h- 1) и 36(п- 1), так как и-й разряд является знаковым.

Выход регистра 40 является первым выходом 41 блока 19 нормализации числа, второй выход 42 которого по шине соединен с выходами элемента РАВНОЗНАЧНОСТЬ 32 и первого триггера, 38.

Выход второго триггера 39 является ,третьим выходом 43 блока 19 нормали40155 10 прямыми выходами первого 52 и второго

53 триггеров соответственно, информационные входы которых соединены с первым и вторым выходами мультиплексо9 9 зации числа, первый вход 44 которого соединен с информационными входами мультиплексора 33 и первой группой адресных входов одноразрядного блока

31 памяти. Управляющие входы регистра 40, .первого 38 и второго 39 триггера соединены с вторым входом 45 блока, третий вход 46 которого соединен с второй группой адресных входов однооазрядного блока 31 памяти, с первым входом элемента РАВНОЗНАЧНОСТЬ 32, с первым информационным входом регистра 40 и адресным входом мультиплексора 33, знаковый выход которого соединен с первыми входами всех элементов ИСКЛОЧАЮЩЕЕ ИЛИ 34{1)34(n- 1), вторые входы которых соединены с разрядными выходами мультиплексора 33. Выход каждого элемента

ИСКЛЮЧАЮЩЕЕ ИЛИ 34()), где j меняется от 1 до и- 1, соединен с управляющим входом элемента ЗАПРЕТ 35()) и первым входом элемента И 36(j) данного j-го разряда. Второй вход каждого элемента И 36(j) соединен с информационным входом элемента ЗАОРЕТ

35(j) данного j-го разряда и выходом элемента ЗАПРЕТ 35(j+1) предыдущего старшего разряда. Выходы всех элементов И 36(1)-36(n- 1) соединены с соответствующими входами шифратора

37, выход которого соединен с вторым информационным входом регистра 40.

Выход одноразрядного блока 31 памяти соединен с информационным входом первого триггера 38, выход элемента

ЗАПРЕТ 35(1) младшего разряда соединен с информационным входом второго триггера 39, обнуляпщий вход которого соединен с четьзртым входом 47 блока нормализации числа, причем выход первого триггера 38 соединен с вторым входом элемента РАВНОЗНАЧНОСТЬ 32.

Блок-схема (фиг. 3) одного из возможных вариантов выполнения блока 14 управления содержит генератор 48 импульсов, первый 49, второй 50 и третий 51 элементы,.И, первый 52 и второй 53 треггеры, мультиплексор 54, первый 55, второй 56 и третий 57 входы, а также первый 58, второй 59, третий 60, четвертый 61 и пятый 62 выходы. Первый и второй управляющие входы мультиплексора 54 соединены с

io

3S

46

50 ра 54 соответственно. Первый вход 55 блока соединен с единичным входом первого триггера 52, нулевым входом второго триггера 53, входом запуска генератора 48 импульсов и с шестым информационным входом мультиплексо-. ра 54, первый, второй, седьмой и восьмой информационные входы которого соединены с шиной сигнала "1". Третий и четвертый информационные входы мультиплексора 54 соединены с вторым входом 56 блока, а пятый информационный вход мультиплексора 54 соединен с шиной сигнала "0". Третий вход 57 блока соединен с входом сброса мультиплексора 54. Входы первого элемента И 49 соединены с прямым выходом первого триггера 52 и инверсным выходом второго триггера 53, а выход соединен с вторым выходом 59 блока.

Первый и второй входы второго элемента И 50 соединены с прямыми выходами первого 52 и второго 53 триггера соответственно, а выход - с пятым выходом 62 блока, третий выход

60 которого соединен с первым выходом генератора 48 импульсов. Первый и второй входы третьего элемента

И 51 соединены с инверсными выходами первого 52 и второго 53 триггеров соответственно, а выход - с первым выходом 58 блока. Второй выход генератора 48 импульсов соединен с третьими входами второго 50 и третьего 51 элементов И, четвертым выходом 61 блока и тактирующими входами первого

52 и второго 53 триггеров.

Последовательность работы предлагаемого устройства состоит в задании в виде кодов данных по входной информационной шине 27 устройства, кода операций и запускающего сигнала соответственно по входной управляющей шине 23 и запускающему входу 24 устройства и съеме данных в виде кодов с третьего 11, четвертого 12 и пятого 13 сумматоров, или с первого

1, второго 2 и третьего 3 регистров после формирования импульсного сиг-. нала по управляющему выходу блока 16 анализа состояния или по ответному выходу 25 устройства.

Работа устройства основывается на следующих рекуррентных соотношениях

940

155 12

I х + Ч.(; У1.. 2. у ° + (. - x ° -2

1 т1 1 (2) = (1) 1И 1+1 (+) (w;) 1 1 +

Д„=о(. +(-С;

- номер коррекции.„ . . „(М). <-(1+ ) + 1 1+ 1 с fti+Т; х,.„

= 1,2,3,...,mi (6)

C; — константы истинного значения аргумента, -(1+12

f 2arctg 2, при ц=-1

2Arth 2 (1 при q=+1, i - индекс итерации, принимающий целочисленные значения в диапазоне

0 - и, где и - разрядность двоичного представления данных.

Реализация соотношений (1)-(4)эквивалентна соотношениям

-(1Ч)

1М 1 1 .+.. (8) у, = у. в. (х ° +х- ) ° 2 . 11 1 т1 i 1 1 с погрешностью до ошибок округления при вычислениях с двоичной разрядностью и. А так как реализация соотношений (8) не приводит к появлению деформации вектора решения на любой итерации с индексом i, то наборы итераций могут быть произвольными и задаваться как принудительно, например, в виде одной итерации при гене-, рировании Функций с шагом С;(7), так и автоматически, т.е. когда индексы заранее не определены и формируются в процессе вычислений.

Дпя определения индекса i, а также для определения значения,-, равного +1 или -1, и момента окончания итераций в устройстве служит блок 16 анализа состояния. Код операций (КОП} поступающий по входной управляющей шине 23, записывается в регистре 17 кода операций. Первый разряд КОП соответствует величине q, равной +1 или -1, и характеризует тип определяющей функции - тригонометрическая или гиперболическая (экспоненциальная). Дешифратор 18 служит для выделения режима непрерывного генерирования функций. КОП поступает также на

fO

ЭО

З5 ео

Я

55 третий вход блока 19 нормализации числа, в котором используется для задания адреса в мультиплексоре 33 (фиг. 2), задания части адреса одноразрядного блока 3i памяти, а также для формирования сигналов по знаковому выходу блока 16 анализа состояния и для формирования старшего разряда адреса блока 8 памяти.

КОП, поступая на мультиплексор 33,,управляет выбором выходов с любого сумматора - третьего 11, четвертого

I12 или пятого 13 - с целью анализа ! ,их выходных кодов. КОП, поступая в одноразрядный блок 31 памяти, совместно с знаками операндов, поступающими по первому входу блока 19 нормализации числа, формирует стратегию выбора знака f. для заданной функции, 1 т.е. обеспечивает сходимость процессов вычислений во всех квадрантах пространства допустимой области определения функций. Все соотношения для выбора знаков во всех квадрантах для каждой функции записываются заранее в одноразрядном блоке 31 памяти, представляющем собой модуль постоянного запоминающего устройства. Первый разряд KOfl, поступая на первый вход элемента РАВНОЗНАЧНОСТЬ 32, формирует противофазные или синфазные значения сигналов с выходов первого триггера 38 и элемента РАВНОЗНАЧНОСТЬ

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

Для противофаэных значений выходов элемента РАВНОЗНАЧНОСТЬ 32 и первого триггера 38, что обусловливается значением первого разряда КОП, равным

"0", операции в первом 9 и четвертом

12 сумматорах будут инверсными по отношению к операциям во втором 10, третьем ll и пятом 13 сумматорах, так как выход элемента РАВНОЗНАЧНОСТЬ 32 поступает через знаковую шину 21 на управляющие входы сумматора первой перечисленной группы, а выход первого триггера 38 - соответственно второй.

Кроме того, первый разряд КОП через регистр 40 поступает на вход старшего адреса блока 8 памяти, в котором записаны константы (7), определяя тем самым тип константы. На остальные адресные входы блока 8 памяти и бло\ ков 6 и 7 сдвига поступают сигналы с остальных разрядов регистра 40, на которых содержится величина порядка числа, поступающего с мультиплексора 33.

Для формирования порядка код числа с произвольным знаком посредством элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 34 преобразуется в код одного знака. После этого с помощью элементов ЗАПРЕТ 35 и элементов И 36 на каждом k-м разряде входа шифратора 37 формируется функция

1l-<

Ь1,= а Г а

fç (+ ( где а4, - значение на выходе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 34 k-го разряда.Цля приведенного на фиг. 2 варианта соединения элементов схемы на входе шифратора 37 возможно появление только одного разрядного сигнала, соответствующего уровню логической "1", который шифратором 37 преобразуется в соответствующий данному разряду номер, либо на входе шифратора 37 не образуется ни одной логической "1", когда анализируемое число эквивалентно арифметическому нулю. В последнем случае логическая функция

n-

Рз= П ае (9)

9= снимаемая с выхода элемента ЗАПРЕТ младшего разряда 35(1), принимает значение логической "1", что соответствует окончанию вычислительного процесса. Этот сигнал через второй триг гер 39 поступает по управляющему выходу блока 16 анализа состояния на третий вход блока 14 управления. Занесение состояний знакового, адресного и управляющего выходов блока 16 анализа состояния осуществляется при поступлении сигнала Рп с выхода счетчика 15, формируемого в момент переполнения этого счетчика при номере коррекции j, равном m;. Величина, равная дополнению m. до И, где

M - емкость счетчика 15, записывается в блок 8 памяти в виде констант и считывается из него в счетчик 15 по сигналу Сз, поступающему с пятого выхода 28 (фиг. 1) блока 14 управления на управляющий вход счетчика 15.

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

13 94О155 14

Граф работы блока 14 управления содержит вершину начального состояния

Со, вершину подготовительного этапа С „„, вершину корректирующего цикла С„ и вершину формирования ответ ного сигнала Соо.

Переход из начального состояния

С „ возможен на вершину подготовительного этапа С1„ по запускающему

te внешнему сигналу P„, поступающему по первому входу блока 14 управления с запускающего входа 24 устройства, а также на вершину формирования ответного сигнала С о, переход на ко1з торую возможен при поступлении сиг нала Р, формируемого по сигналу (9) с второго триггера 39 блока 19 нормализации числа.

С поступлением сигнала Р на пер1 щ вом и втором выходах генератора 48 импульсов блока 14 управления (фиг.3) формируются серии импульсов б и ь соответственно, обусловливая функционирование устройства. уз При нахождении блока 14 управления в начальном состоянии Co„ на выходе первого элемента И 49 формируется строб предварительного занесения С„, поступающий через второй выход 26 зв блока 14 управления на управляющие входы приема информации первого 1, второго 2 и третьего 3 регистров, который совместно с серией импульсов

, поступающей по третьему выходу

35 блока 14 управления. по переднему фронту разрешает запись в эти регистры исходной информации о данных Z

Z Т, поступающих по входной информационной шине 27 устройства.

Переход блока 14 управления из одного состояния в иное осуществляется по переднему фронту серии импульсов Т, поступающей на тактирующие входы первого 52 и второго 53 триггеров. Функция переходов формируется мультиплексором 54, представляющим собой сдвоенный селектор-мультиплексор. четырех входов на один выход.

При нахождении блока 14 управления в состоянии подготовительного этапа

С „„ на его пятом выходе формируется строб Сз, передний фронт которого используется дпя предварительной установки в счетчик 15 кода, находящегося в блоке 8 памяти. Строб С з постуSS пает также на управляющие входы приема информации четвертого 4 и пятого 5 регистров, выполненных на одноступенчатых триггерах типа О, разред) х= =Z е

15 94015 шая прохождение информации с информационных входов этих регистров на их выходы в течение всей длительности этого строба и запоминание установившейся информации в момент заднего фронта С>. Кроме того, информация с выхода третьего сумматора ll no заднему фронту С> записывается в третий регистр 3, а по переднему фронту серии "е,О, поступающей по выходу 29, 10 информация с четвертого 12 и пятого

13 сумматоров записывается соответственно в первый 1 и второй 2 регистры (в регистрах 1-3 используются двухступенчатые триггеры).

В результате во время подготовительного этапа вычисляются соотношения (1) и (2), причем х; 1 и у;+„запоминаются в четвертом 4 и пятом 5 регистрах соответственно, а х; „ (01

26 и у 01 - в первом 1 и втором 2 регист1Ф1 рах соответственно. В третьем регистре 3 оказывается значение с1., вычисленное на предварительном этапе.

При определенных значениях аргумента во время выполнения подготовительного этапа С„„ может появиться сигнал переполнения Р1 счетчика 15, по которому, если отсутствует сигнал

Р> с управляющего выхода блока 16 анализа состояния, подготовительный этап повторится, но для иного значения итерации i и соответствующей ей величины шага, а также

Если сигнал Р со счетчика 15 отзю сутствует, а также отсутствует сигнал Р>, то блок 14 управления переходит в состояние корректирующего цикла С 10. Это состояние отличается от предйдущего только отсутствием строба С>, благодаря чему в регистрах 3-5 информация не изменяется, а в счетчике 15 не происходит параллельное занесение информации из блока 8 памяти, а идет лишь подсчет количества циклов j для данной итерации i. В этом случае реализуются соотношения (3), а в конце итерации, при j = в,:, также и соотношение (4).

Кроме того, при формировании сигнала Р с выхода счетчика 15 в блоке l

19 нормализации числа запоминается значение Ij„ и величина i, равная величине модуля порядка анализируемого числа. В случае отсутствия сигнала

Р осуществляется переход на подгоЪ товительный этап С „„, в противном случае блок 14 управления переходит в состояние формирования ответного

5 16 сигнала С o В этом случае третьим элементом Й 51 формируется сигнал

S, который по ответному выходу 25 устройства выдается задатчику (внешнему устройству, процессору, не изображенному на фиг. 1). Принимая этот сигнал, задатчик считывает информацию с регистров или сумматоров, а также снимает запускающий сигнал

Р1, который устанавливает генератор

48 импульсов и второй триггер 39 блока 19 нормализации числа в исходное нулевое состояние, и по заднему фронту последнего импульса блок 14 управления переходит в исходное начальное состояние Со

О1

Для непрерывного генерирования функций дешифратор 18, анализируя

КОП на регистре 17 кода операций, выдает сигнал, блокирующий первый выход блока 8 памяти, благодаря чему на втором информационном входе третьего сумматора 11 оказывается всегда ; = О, поэтому код в третьем регистре 3 не меняется и будут выполняться вычисления с постоянным шагом итераций, соответствующим константе С; .

Устройство в зависимости от кода операций позволяет одновременно формировать следующие основные наборы функций: . операции сложения-вычитания х = Z< + signT -Z1l, у = Zsl signT - 2.1, операцию сдвига х Z, у signT . 2 - 2

- 1 (т), i (т) = I - 1од )Т) ), операции нормализации числа

= 1.- tog1l) Z) ); х=Z ycoZ 2-1

%. функциональное преобразование

4) Х=2.СОВТ; iJ=X ОПТ, Б) x=2.сЬТ; =Х.вВТ, Ь) x=?„cos T- 2 -sfnТ

3=2. 9$ nT+7.е .с09Т 1 Ц Х=7 С ЬТ+2 .S ИТ; .)=718ЪТ+21 -СЪТ1

e) x=z Vi oos(s Ц; =е111в1п тЛ1, 4)

*1 к=1(е -те вы); и=1(е"сьт), ь1 е=асси 1„11е; ъ z<

1S формула изобретения

Устройство для вычисления элементарных функций, содержащее первый,. второй и третий регистры, два блока сдвига, счетчик, блок памяти, блок управления и сумматоры, причем выходы первого и второго регистров соединены с первыми информационными входак) Ч=-At tbz /zan; ч = ..z<, 2 1 1

S л) л-geth т,(т,; х=6 г „ и др.; функциональное генерирование

4) X Z COSC ° K; у=у sirl t;T- Д

Т

1 )

Ь} Х= -сЪС К; у= .gggT.g°.

Ь) Х=2 .СОУС К-Z .slnCT®

M=Z„.S n С,- МФ22.COSC; -9,;

%,) Х=2.„.cbC g+Z, .гафт Т- ф,;

% 1.1. &Ъ С -f(+Zy ÑÚÑ -. К; д) х„ g+«> !

I cT.k е х=т(е +вь.с, «);

FACT. 1z гз =z(e +сЬс .м) где Z, Zg, Т - исходные данные, вводимые в начальном состоянии в первый

1, второй 2 и третий 3 регистры соответственно.

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

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

19

940

155 нен с управляющим входом соответстtO. вующего элемента ЗАПРЕТ и первым вхоt$ предыдущего элемента ЗАПРЕТ, выходы элементов И соединены с входами шиф2$ ходами второго и первого блоков сдвига соответственно, пятый выход блока

3$ управления соединен с вторым тактирующим входом третьего регистра.

2. Устройство по и. 1, о т л и ч а ю щ е е с я тем, .что блок нормам 40 лизации числа содержит одноразрядныи блок памяти, элемент РАВНОЗНАЧНОСТЬ, мультиплексор, элементы ИСКДОЧАЮф$

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