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

Номер патента: 1474642

Автор: Анисимов

ZIP архив

Текст

(51) 4 6 Об Р 7/5 ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТНРЬПИЯПРИ ГКНТ СССР ОПИСАНИЕ ИЗОБРЕТЕНИЯ астиыть фиг.1 ВТОРСНОМУ СВИДЕТЕЛЬСТВУ(7) Ленинградский электротехникий институт им. В.И,Ульянова (нина)(5 б) Авторское свидетельство ССР 1145340, кл. О Об Р 7/548, 19Авторское свидетельство СССРР 1319025, кл. С Об Р 7/548, 19(54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯЦИИ СИНУСА(5) Изобретение относится к обвычислительной техники и может использовано в качестве функционального расширителя для ЭВМ, Целью изоб ретения является расширение области применения. Устройство содержит триг гер 1 знака мантиссы аргумента, триг гер 2 знака порядка аргумента, триггер 9 знака мантиссы результата, регистры 3 мантиссы аргумента, 4 поряд ка аргумента, 1 О порядка результата 11 мантиссы результата, блок 5 нормализации аргумента, блок 7 обработки мантисс, блок 8 вычисления синуса блок 12 управления, вход б пуска уст ройства. Цель достигается за счет возможности расчета функции при любом аргументе. 6 ил.Аргумент заносится в триггер 1, триггер 2, регистр 3, регистр 4 по синхросигналу СА. Перед началом вы числений в устройство выдается сиг" нал "Сброс". Сигнал "Сброс" обеспечивает сброс триггеров 13-7, счетчиков 25 и 27. Счетчик 23 сбрасывать 147464Изобретение относится к вычислительной технике и предназначено дляиспользования в качестве функционального расширителя в микро- и мини-ЭВМ,Цель изобретения - расширение области применения за счет возможностивычисления функции в произвольномдиапазоне изменения аргумента.На фиг.1 изображена функциональная схема устройства; на фиг.2 - схе Ома блока обработки мантисс; нафиг.3 -схема блока управления; на фиг.4 -схема блока нормализации аргумента,на фиг.5 - схема блока вычисления синуса, на фиг.6 - схема блока определения знака,Устройство содержит триггер 1 знака мантиссы аргумента, триггер 2 знака порядка аргумента, регистр 3 мантиссы аргумента, регистр 4 порядкааргумента, блок 5 нормализации аргумента, вход 6 пуска устройства, блок7 обработки мантисс, блок 8 вычисления синуса, триггер 9 знака мантиссырезультата, регистр 10 порядка результата, регистр 11 мантиссы результата, блок 12 управления, триггеры13-17, группу элементов НЕ 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 синхроимпульсов, элемент45НЕ 55, элементы И 56"59, элементИЛИ 60, элементы И 61-63 и элементИЛИ 64. Регистр 1 О содержит также изнак порядка.Устройство работает следующим образом. не требуется, так как начальным значением для него является код порядка аргумента, заносимый в процессе вычислений из регистра 4. Запуск процесса вычислений функции синуса начинается с поступления сигнала Пуск на одноименный вход устройства, Сигнал Пуск устанавливает в единичное состояние триггер 13. Это реализуется синхронно с синхросигналом, вырабатываемым генератором 54. Единичные состояния триггеров 13-17 соответствуют пяти машинным циклам работы устройства, Машинные циклы имеют различную длительность и тактируются синхроимпульсами от генератора 54.Вычисление значения функции синуса в устройстве производится путем приведения аргумента, определенного в пределах полной разрядной сетки, к интервалу от 0 до Ф/2. Для этого интервала в устройстве имеется таблица значений синуса, размещенная в блоке,В первом машинном цикле осуществляется приведение аргумента к положительной полуоси. Для этой цели используется нечетность функции синуса,что позволяет преобразовать отрицательный аргумент в положительный с последующим учетом этого преобразования при определении знака функции. Поскольку мантиссы чисел с плавающей точкой принято представлять в дополнительном коде, то преобразованиекода аргумента осуществляется по правилам принятым для дополнительногокода.Преобразование осуществляется в блоке 7. Для этой цели коммутатор 22устанавливается на прием кода от регистра 3 и передачу его на свой выход. Код от регистра 3 на вход блока 7 поступает по внутренней шинеустройства М 1. Сигнал на управлениекоммутатором 22 поступает по линииуправления А 10 от блока 12 управления. Сигнал А 10 совпадает с состоянием триггера 13 первого машинногоцикла, так как настройка коммутатора на прием кода, поступающего пошине М 1, требуется только в первоммашинном цикле. Во всех последующихмашинных циклах коммутатор 22 оказывается настроенным на передачу кода,поступающего по шине МЗ, Преобразование осуществляется группой элементов НЕ 18, группой сумматоров 19 помодулю два и коммутатором 20. Коммутатор 20 настраивается в зависимости1 О152530 ний кодов аргументов записаны коды в формате с плавающей точкой, соответ" ствующие значениям аргумента, кратным Т/2. Таким образом, во второммашинном цикле определяется, в какомчетвертьпериоде располагается аргумент. Действия, выполняемые во втором машинном цикле, зависят от порядка. При дробных порядках производит" ся выравнивание до нулевого порядка, что заменяет поиск ближайшей узловойточки. Условием обработки по алгоритму дробных порядков является знакпорядка. Если порядок закодирован сосмещением на 200, как это реализова-но в ЭВМ типа СМ 4, СМ 1420, Электроника 60, Электроника 1201. 01 и т.дто в разряде знака при отрицательныхпорядках записан 0. Для управленияпроцессом приведения к нулевому по 40 50 от знака мантиссы на передачу либо исходного кода мантиссы, либо проинвертированного с прибавлением единицы младшего разряда. Управление коммутатором 20 осуществляется по линииА 13. Результат преобразования мантиссы записывается в регистры 2,24 и32. Сигналом разрешения записи в этирегистры является сигнал с выходатриггера 13, передаваемый по линииА 10.Сигнал управления, передаваемыйпо линии А 10, обеспечивает и занесение порядка в счетчик 23Указанныедействия выполняются за один такт,задаваемый генератором 54, Триггеры13-17 двухтактные и соединение выхода триггера 13 с его 1 с-входом обеспечивает его сброс следующим синхроимпульсом, Одновременно со .сбросомтриггера 13 устанавливается триггер14,Установка в единичное состояниетриггера 14 обеспечивает начало выполнения действий второго машинногоцикла. Длительность второго машинного цикла составляет несколько тактов, вырабатываемых генератором 54. Действия, выполняемые во втором машинномцикле, синхронизируются тактовымисигналами, вырабатываемыми элементомИ 44. Эти тактовые сигналы вырабатываются при единичном состоянии выхода триггера 14, т.етолько во втором машинном цикле, Во втором машинном цикле осуществляется подготовка к приведению аргумента к интервалуот 0 до /2. В таблице узловых значерядку выход знака порядка, считываемый с триггера 2 порядка аргумента, по линии А 1 передается на вход блока 12. В блоке 12 знак порядка инвертируется элементом НЕ 42 и через элемент И 43 разрешает подачу тактовых импульсов, поступающих во втором машинном цикле с выхода элемента И 44, на линию управления А 2.Тактовые импульсы по линии А 2 поступают на счетчик 23 и вход сдвига вправо регистра 24 блока 7. Поступление тактовых импульсов на счетный вход счетчика 23 приводит к увеличению кода в счетчике 23 от начального значения, соответствующего кода порядка аргумента и занесенного в первом машинном цикле, до появления сигнала переполнения счетчика 23, выдаваемого по линии управления А 5.Появление сигнала переполнения счетчика 23 свидетельствует о достижении нулевого порядка. Одновременно со счетом в счетчике 23 происходит сдвиг кода мантиссы в регистре 24, Сигнал по линии А 5 из блока обработки порядков поступает на элемент ИЛИ 45, с ее выхода - на вход элемента И 50, что приводит к сбрасыванию триггера 14 и завершению второго машинного цикла.Иная процедура выполнения машинного цикла реализуется при единичном значении триггера 2. Единичное значение сигнала на линии А блокирует поступление тактовых сигналов по линии А 2, но разрешает их выдачу по линии А 6 с выхода элемента И 41 блока 12. Сигнал по линии А 6 поступает на счетный вход счетчика 27. В счетчике 2 формируется адрес блока 26, в котором хранятся коды аргументов, кратные 7/2, представленные в формате с плавающей точкой. Порядки узловых точек, считанные из блока 26, записываются в регистр 28, а мантиссы - в регистр 29. Каждое значение узловой точки анализируется в блоке 5 и блоке 7. В блоке 5 порядок узловой точкиР 2) сравнивается с порядком аргумента, передаваемым в блок 5 по шине Р 1. Сравнение осуществляется в схеме 30 сравнения, имеющей два выхода: равенства порядков, передаваемого по линии А 7-;. и выход превышения порядком аргумента порядка узлового значения аргумента, передаваемый по линии А 8.В блоке обработки мантисс мантисса узловой точки, передаваемая в блок 7 по шине М 2, сравнивается с мантиссой аргумента, передаваемой в блок 7 по шине М 1. Сравнение осущест вляется в схеме 31 сравнения, имеющей один выход, фиксирующий превышение мантиссой аргумента узлового значения аргумента, передаваемого по ли нии А 9. Счетчик 27 работает в режиме вычитания от начального значения, соответствующего максимальному коду. Поэтому единичный сигнал на выходе элемента ИЛИ 47 блока 12, блокирую щий подачу тактовых импульсов на линию Аб, появляется после того, как иэ блока памяти выбрана ближайшая слева узловая точка аргумента. Блоки" ровка выдачи сигнала на линию Аб 20 обеспечивается благодаря инвертированию единичного сигнала с выхода элемента И 1 Д 1 47 элементам НЕ 52. Сигнал с выхода элемента НЕ 52 блокирует прохождение тактовых импульсов че рез элемент И 48, с выхода которого тактовые импульсы подаются на вход элемента И 41, выход которого соединен с линией управления Аб. Кроме выходной линии Аб тактовые импульсы 30 с выхода элемента И 41 поступают на вход счетчика 25.Счетчик 25 позволяет определить, к какому из четвертьпериодов синусоиды относится положение аргумента на числовой оси. Выходной код счетчика 25 сохраняетсй неизменным после прекращения подачи тактовых импульсов на его счетный вход. Младший разряд кода счетчика 25 выдается на линию щ 0 управления А 11 и используется для управления коммутатором 35 блока 7. Старший разряд кода счетчика 25 пос-. тупает на вход блока 33, который вырабатывает сигнал управления на ли- д нию А 13. Сигнал управления, выдаваемый по линии А 13, используется для занесения знака результата в триггер 9 и для управления коммутатором 20 вблоке 7.50Эавершение второго машинного цикла при единичном значении триггера 2 происходит после выбора из блока 26 ближайшей слева узловой точки по единичному сигналу на выходе элемента ИЛИ 47, который через элемент И 46 поступает на вход элемента ИЛИ 45, а с ее выхода - на вход элемента И 50, что приводит к сбрасыванию триггера 14 и завершению второго машинного цикла. Кроме сбрасывания триггера 14 и установки триггера 15, что задает начало третьего машинного цикла, выходной сигнал элемента И 50 поступает на линию управления А 12. Сигнал по линии управления А 12 разре" шает запись кода с шины М 2 в регистр 34 блока 7. В процессе поиска узловых точек код в регистре 34 меняется, но сброс сигнала управления по линии А 12 обеспечивает фиксацию в регистре 34 мантиссы узловой точки, ближайшей слева к аргументу.В третьем машинном цикле осуществляется приведение аргумента к интервалу от О до 7(2., При нулевом значении триггера 2, поступающем по линии . управления А 1 на вход управления коммутатором 35 блока 7, в третьем машинном цикле не требуется производить преобразования кодов мантиссПо сигналу управления, поступающему по линии А 1, коммутатор 35 переключа" ется на передачу кода регистра 24 на шину М 5, являющуюся выходной шиной блока 7.При единичном значении триггера 2 на выход коммутатора 35 необходимо выдать разность мантиссы аргумента и ближайшей слева узловой точки. Эта разность вычисляется вычитателем 36, на вход уменьшаемого которого подан выход регистра 32, а на вход вычитаемого - выход регистра 34. Особенностью приведений аргументов, представленных в формате с плавающей запятой, является возможность отличия на единицу порядка аргумента и узловой точки, найденной в результате поиска во втором машинном цикле. Признаком равенства порядков является сигнал, передаваемый по линии управления А 7.Для выравнивания порядков после процедуры поиска ближайшей узловой точки используется сигнал,.передаваемый по линии А 8 и служащий признаком того, что порядок аргумента превышает порядок узловой точки. При единичном значении сигнала на линни А 8 установка триггера 15 приводит к появлению на выходе элемента И 51 сигнала управления, передаваемого в блок 7 по линии А 4. Этот сигнал используется дпя сдвига влево на один разряд кода мантиссы аргумента в регистре 32, Этот сдвиг обеспечивает выравнивание порядков. Поскольку адресом для таб 1474642лицы синусов служит код мантиссы, и код порядка в дальнейшем не иеполь(зуется, то изменять код порядка при выравнивании порядков не требуется. Разность, формируемая вычитателем 36, представлет собой результат приведения к четвертьпериоду. Если аргумент попал в четвертьпериод, кратный первому и третьему четвертьпериоду, то код, полученный на вычитателе 36, непосредственно может быть использован в качестве результата приведения к интервалу от О до /2. Если же аргумент попал в четвертьпериод, кратный второму и четвертому четвертьпериоду, то полученную разность нужно вычесть из и /2. Номер четвертьперио= да сформирован в счетчике 25 блока 12. В качестве признака номера чет-. вертьпериода используется младший разряд этого счетчика, значение которого передается по линии А 11 на вход управления коммутатора .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 блока обработки5О 15 20 25 сбеспечивающий запись в них знака 30 формул а 45 50 55 мантисс. К началу пятого машинногоцикла коммутатор 22 оказывается переключен на прием данных с шины МЗ ипередачу их на свой выход. Преобразование мантиссы осуществляется при помощи коммутатора 20, группы элементов НЕ 18, группы сумматоров 19 помодулю два. Если знак результата,сформированный блоком 33, положительный, то коммутатор 20 выдает на шинуМ 4 код, поступающий непосредственнос выхода коммутатора 22, т.е. мантисса не изменяется. Если знак результата отрицательный, то коммутатор 20вьдает на шину М 4 инверсию мантиссы,к которой прибавлена единица младшего разряда. Это преобразование осуществляет группа элементовНЕ 18 и группа сумматоров 19 по модулю два,Кроме преобразования мантиссы в пятом машинном цикле, по линии управления А 15 поступает синхросигнал в триггер 9, триггер О, регистр 11,мантиссы, поступающей по линии А 13,порядка, поступающего по шине РЗ изблока 8, мантиссы, поступающей по шине М 4 из блока 7, Запись в триггер 9 и регистры 1 О и 11 завершает процесс вычислений. Значение функции синуса представлено в том же формате, что и аргумент. Признаком готовности результата является сигнал А 15. из обр етения Устройство для вычисления функциисинуса, содержащее регистр мантиссыаргумента, триггер знака мантиссы аргумента, регистр порядка аргумента,триггер знака порядка аргумента, блоквычисления синуса, блок обработкимантисс, причем информационный входустройства подключен к информационным входам регистра мантиссы аргумента, триггера знака мантиссы аргумента, регистра порядка аргумента, триггера знака порядка аргумента, синхровходы которых подключены к синхровходу устройства, выход регистра мантиссы аргумента подключен к входузначения мантиссы аргумента блока отработки мантисс, выход мантиссы аргумента которого подключен к входу блока вычисления синуса, о т л и ч а ю -щ е е с я тем, что, с целью расширения области применения за счет обеспечения возможности вычисления функ 1474642 10ции в произвольном диапазоне измененияаргумента, в него введены блок нормализации аргумента, блок управления,триггер знака мантиссы результата,регистр порядка результата и регистрмантиссы результата, причем выход регистра порядка аргумента подключен кинформационному входу блока нормализации аргумента, выходы мантиссы ипорядка блока вычисления синуса подключены соответственно к входу. прямого кода мантиссы блока обработки мантисс и к информационному входу регистра порядка результата, выход значения мантиссы узловой точки блоканормализации подключен к входу ман"тиссы узловой точки блока обработки.мантисс, выход дополнительного кодамантиссы которого подключен к информационному входу регистра мантиссырезультата, выходы триггера знака результата, регистра порядка результата и регистра мантиссы результатаподключены к инФормационному выходу 25устройствавход начальной установки устройства подключен к входам начальной установки блока управленияи блока нормализации аргумента, входпуска устройства подключен к входу 30пуска блока управления, выход готовности которого подключен к выходу готовности устройства и к синхровходамрегистров мантиссы и порядка результата и триггера знака результата,информационный вход которого подключен к выходу знака результата блокауправления, выход триггера знакапорядка аргумента подключен к входамзнака порядка аргумента блока обра Оботки мантисс и блока управлениявыход триггера знака мантиссы подключен к входу знака мантиссы блока управления, выход обращения к значениюфункции блока управления подключенк входу пуска блока вычисления синуса, выход управления увеличением порядка блока управления подключен квходу увеличения порядка блока нормализации аргумента и к входу сдвигамантиссы вправо блока обработки мантисс, выход управления уменьшениемпорядка блока управления подключенк входу уменьшения порядка блока нормализации аргумента, выход управления записью порядка и мантиссы блокауправления подключен к входу записимантиссы блока обработки мантисс и квходу записи порядка блока нормализации аргумента, выходы признаков нулевого порядка, равенства порядков ипризнака порядка над узловым порядком блока нормализации аргументаподключены соответственно к входамлогических условий нулевого порядка,равенства порядков и исходного порядка блока управления, выход управления сдвигом мантиссы влево блока управления подключен к входу сдвигамантиссы влево блока обработки мантисс, входы типа представления кодамантиссы, приема кода мантиссы узловой точки и признака номера четвертьпериода функции блока обработки мантисс подключены соответственно к выходам знака результата, типа кодамантиссы и номера четвертьпериодаблока управления, вход логическогоусловия превьппения мантиссой аргумента узлового значения которого подклю"чен к выходу индикации превьппениямантиссой аргумента узлового значения блока обработки мантисс, 14746 ч 2Подписное оизводственно-издательский комбинат "Патент", г. Ужгород,гарина, 10 Заказ 1894/46 Тираж 667 ВНИИПИ Государственного комитета по изобретения 113035, Москва, Б, Раушскаяоткрытиям при ГКНТ

Смотреть

Заявка

4280232, 07.07.1987

ЛЕНИНГРАДСКИЙ ЭЛЕКТРОТЕХНИЧЕСКИЙ ИНСТИТУТ ИМ. В. И. УЛЬЯНОВА

АНИСИМОВ АНДРЕЙ ВЛАДИМИРОВИЧ

МПК / Метки

МПК: G06F 7/548

Метки: вычисления, синуса, функции

Опубликовано: 23.04.1989

Код ссылки

<a href="https://patents.su/8-1474642-ustrojjstvo-dlya-vychisleniya-funkcii-sinusa.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для вычисления функции синуса</a>

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