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

 

Изобретение относится к области вычислительной техники и может быть использовано в качестве функционального расширителя для ЭВМ. Целью изобретения является расширение области применения. Устройство содержит триггер 1 знака мантиссы аргумента, триггер 2 знака порядка аргумента, триггер 9 знака мантиссы результата, регистры 3, мантиссы аргумента, 4 порядка аргумента, 10 порядка результата, 11 мантиссы результата, блок 5 нормализации аргумента, блок 7 обработки мантисс, блок 8 вычисления синуса, блок 12 управления, вход 6 пуска устройства. Цель достигается за счет возможности расчета функции при любом аргументе. 6 ил.

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

СОЦИАЛИСТИЧЕСКИХ.

РЕСПУБЛИК (51)4 G 06 Р 7/548

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

И АВТОРСКОМУ СВИДЕТЕЛЬСТВУ фиг.1

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

flO ИЗОБРЕТЕНИЯМ И ОТНРЬПИЙМ

ПРИ ГКНТ СССР (21) 4280232/24-24 (22) 07 ° 07.87 (46) 23.04.89 . Бюп . N - 15 (7!) Ленинградский электротехнический институт им. В.И.Ульянова (Ленина) (72) А.В.Анисимов (53) 681. 32 (088.8) (56) Авторское свидетельство СССР

У 1145340, кл. G 06 Р 7/548, 1983.

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

1! 1319025, кл. G 06 F 7/548, 1986, (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ФУНКЦИИ СИНУСА (57) Изобретение относится к области вычислительной техники и может быть

„.SU„, 1474642 А1 использовано в качестве функционального расширителя для ЭВМ. Целью изобретения является расширение области применения. Устройство содержит триггер 1 знака мантиссы аргумента, триггер 2 знака порядка аргумента, триггер 9 знака мантиссы результата, регистры 3 мантиссы аргумента, 4 порядка аргумента, 10 порядка результата, 11 мантиссы результата, блок 5 нормализации аргумента, блок 7 обработки мантисс, блок 8 вычисления синуса, блок 12 управления, вход б пуска устройства. Цель достигается за счет возможности расчета функции при любом аргументе. 6 ил.

Аргумент заносится в триггер 1, триггер 2, регистр 3, регистр 4 по синхросигналу СА. Перед началом вы- 55 числений в устройство выдается сигнал "Сброс". Сигнал "Сброс" обеспечивает сброс триггеров 13-!7, счетчиков 25 и 27. Счетчик 23 сбрасывать

1 147464

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

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

На фиг.1 изображена функциональная схема устройства на фиг.2 — схе- 10 ма блока обработки мантисс; нафиг.3— схема блока управления; на фиг.4— схема блока нормализации аргумента, на фиг.5 — схема блока вычисления синуса, на фиг.6 — схема блока определения знака, Устройство содержит триггер 1 знака мантиссы аргумента, триггер 2 знака порядка аргумента, регистр 3 мантиссы аргумента, регистр 4 порядка аргумента, блок 5 нормализации аргумента, вход 6 пуска устройства, блок

7 обработки мантисс, блок 8 вычисления синуса, триггер 9 знака мантиссы результата, регистр 10 порядка результата, регистр 11 мантиссы результата, блок 12 управления, триггеры

13-17, группу элементов HE 18, группу сумматоров 19 по модулю два, коммутатор 20, регистр 21, коммутатор

22, счетчик 23, регистр 24, счетчик

25, блок 26 памяти узловых значений кодов аргументов, счетчик 27, первый регистр 28 порядка, первый регистр

29 мантиссы, схемы 30 и 31 сравнения, 35 регистр 32, блок 33 определения знака, регистр 34, коммутатор 35, вычитатели 36 и 37, блок 38 памяти синусов, второй регистр 39 мантиссы, второй регистр 40 порядка, элемент И 41, 40 элемент НЕ 42, элементы И 43 и 44, элемент ИЛИ 45, элемент И 46, элемент ИЛИ 47, элементы И 48-51, элемент НЕ 52, адресный регистр 53, генератор 54 синхроимпульсов, элемент

HE 55, элементы И 56"59, элемент

ИЛИ 60, элементы И 61-63 и элемент

ИЛИ 64. Регистр 10 содержит также и знак порядка.

Устройство работает следующим образом. не требуется, так как начальным значением для него является код порядка аргумента, заносимый в процессе вычислений из регистра 4. Запуск процесса вычислений функции синуса начинается с поступления сигнала Пуск на одноименный вход устройства. Сигнал Пуск устанавливает в единичное состояние триггер 13. Это реализуется синхронно с синхросигналом, вырабатываемым генератором 54. Единичные состояния триггеров 13-17 соответствуют пяти машинным циклам работы устройства. Машинные циклы имеют различную длительность и тактируются синхроимпульсами от генератора 54.

Вычисление значения функции синуса в устройстве производится путем приведения аргумента, определенного в пределах полной разрядной сетки, к интервалу от 0 до Ф/2. Для этого интервала в устройстве имеется таблица значений синуса, размещенная в блоке.

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

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

Преобразование осуществляется в блоке 7. Для этой цели коммутатор 22 устанавливается на прием кода от регистра 3 и передачу его на свой выход. Код от регистра 3 на вход блока 7 поступает по внутренней шине устройства М1. Сигнал на управление коммутатором 22 поступает по линии управления А10 от блока 12 управления. Сигнал А10 совпадает с состоянием триггера 13 первого машинного цикла, так как настройка коммутатора на прием кода, поступающего по шине Ml требуется только в первом машинном цикле. Во всех последующих машинных циклах коммутатор 22 оказывеется настроенным на передачу кода, поступающего по шине МЗ. Преобразование осуществляется группой элементов НЕ 18, группой сумматоров 19 по модулю два и коммутатором 20. Коммутатор 20 настраивается в зависимости

1474642

50 от знака мантиссы на передачу либо исходного кода мантиссы, либо проинвертированного с прибавлением единицы младшего разряда. Управление коммутатором 20 осуществляется по линии

Al3. Результат преобразования мантиссы записывается в регистры 2!,24 и

32. Сигналом разрешения записи в эти регистры является сигнал с выхода триггера 13, передаваемый по линии

Al0.

Сигнал управления, передаваемый по линии А!О, обеспечивает и занесение порядка в счетчик 23 ° Указанные действия выполняются за один такт, задаваемый генератором 54. Триггеры

13-17 двухтактные и соединение выхода триггера 13 с его k-входом обеспечивает его сброс следующим синхроимпульсом. Одновременно со .сбросом триггера 13 устанавливается триггер

14.

Установка в единичное состояние триггера 14 обеспечивает начало выполнения действий второго машинного цикла. Длительность второго машинного цикла составляет несколько тактов, вырабатываемых генератором 54. Действия, выполняемые во втором машинном цикле, синхронизируются тактовыми сигналами, вырабатываемыми элементом

И 44. Эти тактовые сигналы вырабатываются при единичном состоянии выхода триггера 14, т.е ° только во втором машинном цикле. Во втором машинном цикле осуществляется подготовка к приведению аргумента к интервалу от 0 до /2. В таблице узловых значений кодов аргументов записаны коды в формате с плавающей точкой, соответствующие значениям аргумента, кратным /2. Таким образом, во втором машинном цикле определяется, в каком четвертьпериоде располагается аргумент. Действия, выполняемые во втором машинном цикле, зависят от порядка. При дробных порядках производит" ся выравнивание до нулевого порядка, что заменяет поиск ближайшей узловой точки. Условием обработки по алгоритму дробных порядков является знак порядка. Если порядок закодирован со смещением на 200, как это реализова- но в ЭВК типа СМ4 CMI420, Электроника 60, Электроника 120 1. 01 и т.д., то в разряде знака при отрицательных порядках записан 0 . Для управления процессом приведения к нулевому по10

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

12. В блоке 12 знак порядка инвертируется элементом HE 42 и через элемент И 43 разрешает подачу тактовых импульсов, поступающих во втором машинном цикле с выхода элемента И 44, на линию управления А2.

Тактовые импульсы по линии А2 поступают на счетчик 23 и вход сдвига вправо регистра 24 блока 7. Поступление тактовых импульсов на счетный вход счетчика 23 приводит к увеличению кода в счетчике 23 от начального значения, соответствующего кода порядка аргумента и занесенного в первом машинном цикле, до появления сигнала переполнения счетчика 23, выдаваемого по линии управления А5.

Появление сигнала переполнения счетчика 23 свидетельствует о достижении нулевого порядка. Одновременно со счетом в счетчике 23 происходит сдвиг кода мантиссы в регистре 24. Сигнал по линии А5 из блока обработки порядков поступает на элемент

ИЛИ 45, с ее выхода — на вход элемента И 50, что приводит к сбрасыванию триггера 14 и завершению второго машинного цикла.

Иная процедура выполнения машинного цикла реализуется при единичном значении триггера 2. Единичное значение сигнала на линии А1 блокирует поступление тактовых сигналов по линии А2, но разрешает их выдачу по линии Аб с выхода элемента И 41 блока

12. Сигнал по линии Aá поступает на счетный вход счетчика 27. В счетчике

27 формируется адрес блока 26, в котором хранятся коды аргументов, кратные У/2, представленные в формате с плавающей точкой. Порядки узловых точек, считанные из блока 26, записываются в регистр 28, а мантиссы — в регистр 29. Каждое значение узловой точки анализируется в блоке 5 и блоке 7. В блоке 5 порядок узловой точки (Р2) сравнивается с порядком аргумента, передаваемым в блок 5 по шине Pl. Сравнение осуществляется в схеме 30 сравнения, имеющей два выхода: равенства порядков, передаваемого по линии А7-;- и выход превышения порядком аргумента порядка узлового значения аргумента, передаваемый по линии А8. 1474642.

В блоке обработки мантисс мантисса узловой точки, передаваемая в блок 7 по шине М2, сравнивается с мантиссой аргумента, передаваемой в блок 7 по шине Ml Сравнение осущест вляется в схеме 31 сравнения, имеющей один выход, фиксирующий превышение мантиссой аргумента узлового значения аргумента, передаваемого по ли- 10 нии А9. Счетчик 27 работает в режиме вычитания от начального значения, соответствующего максимальному коду.

Поэтому единичный сигнал на выходе элемента ИЛИ 47 блока 12, блокирую- 15 щий подачу тактовых импульсов на линию Аб, появляется после того, как иэ блока памяти выбрана ближайшая слева узловая точка аргумента. Блоки" ровка выдачи сигнала на линию Аб 20 обеспечивается благодаря инвертированию единичного сигнала с выхода элемента И1П1 47 элементом НЕ 52. Сигнал с выхода элемента НЕ 52 блокирует прохождение тактовых импульсов че- 25 рез элемент И 48, с выхода которого тактовые импульсы подаются на вход элемента И 41, выход которого соединен с линией управления Аб. Кроме выходной линии Аб тактовые импульсы 30 с выхода элемента И 41 поступают на вход счетчика 25.

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

25 сохраняется неизменным после прекращения подачи тактовых импульсов на его счетный вход. Младший разряд кода счетчика 25 выдается на линию р0 управления All и используется для управления коммутатором 35 блока 7.

Старший разряд кода счетчика 25 пос-. тупает на вход блока 33, который вырабатывает сигнал управления на ли- д нию А13. Сигнал управления, выдаваемый по линии А13, используется для занесения знака результата в триггер

9 и для управления коммутатором 20 в блоке 7.

Эавершение второго машинного цик- -. ла при единичном значении триггера 2 происходит после выбора из блока 26 ближайшей слева узловой точки по единичному сигналу на Выходе элемента

ИЛИ 47, который через элемент И 46 поступает на вход элемента ИЛИ 45, а с ее выхода — на вход элемента

И 50, что приводит к сбрасыванию триггера 14 и завершению второго машинного цикла. Кроме сбрасывания триггера 14 и установки триггера 15, что задает начало третьего машинного цикла, выходной сигнал элемента И 50 поступает на линию управления А12.

Сигнал по линии управления А12 разрешает запись кода с шины М2 в регистр

34 блока 7. В процессе поиска узловых точек код в регистре 34 меняется, но сброс сигнала управления по линии

А12 обеспечивает фиксацию в регистре

34 мантиссы, узловой точки, ближайшей слева к аргументу.

В третьем машинном цикле осущест вляется приведение аргумента к интер валу от 0 до 7/2. При нулевом значе нии триггера 2, поступающем по линии . управления Al на вход управления коммутатором 35 блока 7, в третьем машинном цикле не требуется производить преобразования кодов мантисс °

По сигналу управления, поступающему по линии Al коммутатор 35 переключается на передачу кода регистра 24 на шину М5, являющуюся выходной шиной блока 7.

При единичном значении триггера 2 на выход коммутатора 35 необходимо выдать разность мантиссы аргумента и ближайшей слева узловой точки. Эта разность вычисляется вычитателем 36, на вход уменьшаемого которого подан выход регистра 32, а на вход вычитаемого — выход регистра 34. Особенностью приведения аргументов, представленных в формате с плавающей запятой, является возможность отличия на единицу порядка аргумента и узловой точки, найденной в результате поиска во втором машинном цикле. Признаком равенства порядков является сигнал, передаваемый по линии управления А7.

Для выравнивания порядков после процедуры поиска ближайшей узловой точки используется сигнал, передаваемый по линии А8 и служащий признаком того, что порядок аргумента превышает порядок узловой точки. При единичном значении сигнала на линии А8 установка триггера 15 приводит к появлению на выходе элемента И 51 сигнала управления, передаваемого в блок 7 по линии А4, Этот сигнал используется дпя сдвига влево на один разряд кода мантиссы аргумента в регистре 32.

Этот сдвиг обеспечивает выравнивание порядков. Поскольку адресом для таб1474642

20

Формул а

55 лицы синусов служит код мантиссы, и код порядка в дальнейшем не иеполь( зуется, то изменять код порядка при выравнивании порядков не требуется.

Разность, формируемая вычитателем

36, представлет собой результат приведения к четвертьпериоду. Если аргумент попал в четвертьпериод, кратный первому и третьему четвертьпериоду, то код, полученный на вычитателе 36, непосредственно может быть использован в качестве результата приведения к интервалу от 0 до i /2. Если же аргумент попал в четвертьпериод, кратный второму и четвертому четвертьпериоду, то полученную разность нужно вычесть из и /2. Номер четвертьперио= да сформирован в счетчике 25 блока

l2. В качестве признака номера чет-. вертьпериода используется младший разряд этого счетчика, значение которого передается по линии Аl l на вход управления коммутатора .35. В зависимостии от значения этого сигнала управления на выход М5 выдается либо разность, сформированная в вычитателе 36, либо разность, сформированная в вычитателе 37. На вход уменьшаемого вычитателя 37 подается код

Ф/2, а на вход вычитаемого — выход вычитателя 36.

Завершается третий машинный цикл сбросом триггера 15 и установкой триггера 16.

В четвертом машинном цикле по сигналу управления, выдаваемому по линии А14, код с выхода коммутатора 35 блока обработки мантисс записывается в адресный регистр 53 блока 8. Передача кода между блоками 7 и 8 осу-. ществляется по шине М5. Занесение кода в адресный регистр 53 обеспечивает выборку иэ блока 8 значения синуса, приведенного к интервалу от 0 до Т/2, т.е. беэ знака мантиссы. Считываемое из блока 38 значение синуса представляется в формате с плавающей точкой и заносится в регистр 40 и регистр 39. Четвертый машинный цикл длится один такт и завершается сбросом триггера 16 и установкой триггера 17.

В пятом машинном цикле производится преобразование мантиссы в зависимости от знака мантиссы, сформированной блоком 33. Из блока 8 мантисса результата по шине МЗ поступает на вход коммутатора 22 блока обработки мантисс. К началу пятого машинного цикла коммутатор 22 оказывается переключен на прием данных с шины МЗ и передачу их на свой выход. Преобразование мантиссы осуществляется при помощи коммутатора 20, группы элементов НЕ 18, группы сумматоров 19 по модулю два. Если знак результата, сформированный блоком 33, положительный, то коммутатор 20 выдает на шину

М4 код, поступающий непосредственно с выхода коммутатора 22, т.е. мантисса не изменяется. Если знак результата отрицательный, то коммутатор 20 вьдает на шину М4 инверсию мантиссы, к которой прибавлена единица младшего разряда. Это преобразование осуществляет группа элементов НЕ 18 и группа сумматоров 19 по модулю два.

Кроме преобразования мантиссы в пятом машинном цикле, по линии управления А15 поступает синхросигнал в триггер 9, триггер 10, регистр 11, сбеспечивающий запись в них знака мантиссы, поступающей по линии А13, порядка, поступающего по шине РЗ из блока 8, мантиссы, поступающей по шине М4 из блока 7. Запись в триггер 9 и регистры 10 и 11 завершает процесс вычислений. Значение функции синуса представлено в том же формате, что и аргумент. Признаком готовности результата является сигнал А 15. изобретения

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

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

1474642

46

411

1474642

Составитель И. Силин

Техред М.Дидык Корректор И,Муска

Редактор В.Данко

Заказ 1894/46 Тираж 667 Подписное

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

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

Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, )О)

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

 

Похожие патенты:

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

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

Изобретение относится к вычислительной технике и может быть использовано при построении специализированных ЭВМ.Целью изобретения является расширение области применения за счет выполнения преобразования гиперболических координат гфи повороте осей

Изобретение относится к вычислительной технике и может быть использовано при построении специапизиро-, ванных ЭВМ

Изобретение относится к области вычислительной техники

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

Изобретение относится к вычислительной технике и может быть использовано в ЭВЙ и системах

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

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

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

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

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

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

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

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

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

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

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

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