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

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

Авторы: Водяхо, Лукоянычев, Пузанков, Смолов, Шаляпин

Есть еще 1 страница.

Смотреть все страницы или скачать ZIP архив

Текст

СОЮЗ СОВЕТСНИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН 19) ( ) 0429. 6 5 4(5 Ве:"." фяДЬИЬЮе ;.:.:ЬЬ ПИСАНИЕ ИЗОБРЕТЕНИ СТВУ ВТОРСИОМУ СВИДЕ в, во а,УДАРСТВЕННЫЙ НОМИТЕТ СССРДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИИ(71) Ленинградский ордена Ленинаэлектротехнический институт им.В. И.иульянова (Ленина)(56) 1. Патент США Ф 3813528,кл. 235-152, опублик. 1978.2. Авторское свидетельство СССРУ 734705, кл. С 06 Р 15/31, 1978(54)(57) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯЭЛЕМЕНТАРНЫХ ФУНКЦИЙ, содержащееарифметический блок и блок управленпричем арифметический блок содержиттри дешифратора, восемь коммутаторатри умножителя, два сумчаторар осионой и дополнительный блоки памяти,счетчик порядка, вспомогательныйрегистр, входной регистр, сдвигательи регистр, функции, причем выходвспомогательного регистра соединенс информационным входом первого дешифратора и первым информационным входом первого коммутатора, второи итретий информационные входы которогсоединены соответственно с выходомпервого дешифратора и входом мантиссы аргУмента устройства, вход порядка аргумента которого соединен с .информационным входом счетчика порядквыход которого соединен с управляющимвходом сдвигателя, информационныйвход которого соединен с выходомвходного регистра, информационнымвходом вспомогательного регистра,первыми информационными входами первого умножителя, коммутаторов с второго по четвертый и с входом второгодешифратора, выход первого коммутатора соединен с информационным входомвходного регистра, выходы старшихи младших разрядов сдвигателясоединены соответственно с первьЬи вторым информационными входамипервого сумматора, выход старшихразрядов сдвигателя и выход первогосумматора соединены соответственнос первым и вторым информационнымивходами третьего дешифратора, выходкоторого соединен с адресным входомосновного блока памяти, выход треть- фего коммутатора соединен с вторым .иийормадионнмм входом первого рмвожи- Врителя, выход которого соединен с четвертым информационным входом первого,вторым информационным входом второгои первыми информационныМи входамис пятого по шестой коммутаторов,выход второго коммутатора соединенс первым информационным входом вто- фрого умножителяр выход которого соединен с вторымиуправляющими входами 4 фьшестого и пятого коммутаторов, выходы Юкоторых .соединены с первыми ин-формационными входами соответственнотретьего умножителя и второго сумматора, вторые информационные входыкоторых соединены с выходами соответственно седьмого и четвертого .Ькоммутаторов, выход третьего умножи"теля соединен с третьим информацион.ным входом пятого коммутатора, выходвторого сумматора соединен с инфор"мационным входом регистра функции,вторым информационным входом третьего и пятым информационныМ входом11 первого коммутатора, выходи входного регистра и счетчика порядка соединены с первым и вторым информационными входами восьмого коммутатора, выход которого соединен с адресным входом дополнительного блока памяти, выход которого соединен с вторым и третьим информационными входами соответственно четвертого и третьего коммутаторов, третий и четвертый информационные входы которого соединены с выходом основного блока памяти и вторым инФормационным входом седьмого коммутатора, выход регистра функции соединен с выходом устройства, блок управления содержит распределитель импульсов, шифратор, дешифратор циклов и дешифратор признаков, первый и второй входы которого соединены, с выходами соответственно счетчика порядка и входного регистра, выходы с первого по десятый дешифратора признаков соединены с управляющими входами с первого по восьмой коммутаторов, первого дешифратора и второго дешифратора соответственно, выходы распределителя импульсов соединены с первой группой входов шифратора, выход которого соединен с входом дешифратора циклов, выходы с первого по одиннадцатый которого соединены с управляющими входами соответственно вспомогательного регистра, входного регистра, счетчика порядка, с первого по второй сумматоров,60429.с первого по третий умножителей,основного и дополнительного блоковпамяти и регистра функции, входывторой и третьей групп шифраторасоединены с выходами соответственновторого дешифратора и сдвигателя,о т л и ч а ю щ е е с я тем, что,с целью повышения достоверности вычислений, в него введены сумматорконтроля, дешифраторы ошибки и контроля, счетчик ошибок и триггер ошибки, причем выход сумматора контролясоединен с входом дешифратора контроля, выход счетчика ошибок соединенс входом дешифратора ошибки, причемв арифметический блок введен девятыйкоммутатор, первый и второй информационные входы которого соединеныс выходами соответственно основногоблока памяти и сумматора контроля,первый информационный вход которогосоединен с выходами второго и третьего умножителей и основного блока памяти, второй информационный входи управляющий вход сумматораконтроля соединены соответственнос выходом регистра функции и двенадцатым выходом дешифратора циклов,выход шифратора соединен с входомсчетчика ошибок и входом триггераошибки, выход которого соединен с выходом сигнала неисправности устройства, выход дешифратора ошибки сое- .динен с пятым входом шифратора, 1Изобретение относится к вычислительной технике и может быть использовано в составе неоднородных,. вычислительных систем высокой производительности в качестве специализированного процессора для вычисления элементарных функций е ,.и х, 51 п х. Известен специализиРованный про - цессор для вычисления элементарных функций (цифровой интерполятор высокого порядка), в котором используется разложение элементарных функций в степенной ряд. Указанное устройство содержит входной регистр, на пер. вую группу входов которого подается аргумент, первая группа выходоввходного регистра связана с первойгруппой входов, множительного устройства, вторая группа выходов входногорегистра связана с входами постоянного запоминающего устройства (ПЗУ),в котором хранятся значения узловыхточек функции, сумматор, первая группа входов Которого связана с выхода- Ю ми множительного устройства, втораягруппа входов множительного устройства связана с входами второй группывентилей, выходы сумматора соединеныс первой группой входов регистра 1 э функций, выходы ПЗУ связаны с входами второй группы вентилей, регистрз 1160функции, выходы которого соединеныс первой группой входов первой группы вентилей, с второй группой входоввыходного буфера, выходной буфер,выход которого соединен с входом ЦВМ,Эблока управления, выходы которогосвязаны с входами регистра функции,первой, второй группы вентилей,входного регистра и выходного буфера Г 1 Э10Недостатком этого специализированного процессора является низкое. -быстродействие, поскольку вычислениестепенного многочлена ведется по схеме Горнера, т.е. последовательно,13Наиболее близким по техническойсущности к изобретению является специализированный процессор, содержащий входной регистр, первое множительное устройство, первый сумматор,основную память, регистр. функций,20счетчик порядка, вспомогательный регистр, дешифраторы, сдвигатель, второйсумматор, второе множительное устройство, третье множительное устрой"ство, дополнительную память, причемпервый выход первого сумматора соединен с первым входом регистра функции,второй вход которого подключен к пер-,вому выходу блока управления, первыйвход счетчика порядка соединен с входом процессора, первый выход входного регистра соединен с первым входомпервого множительного устройства,первый выход которого соединен с пер"1вым входом сумматора, второй вход 35которого подключен к первому выходуосновной памяти, вход процессорасоединен с первым входом входногорегистра, второй вход которого под-,.ключен к второму выходу блока управления, третий выход блока управлениясоединен с третьим входом первогосумматора, четвертый и пятый выход -соответственно с первыми входами основной и дополнительной памяти, шестой, седьмой и восьмой выходы соответственно с первыми входами второгои третьего множительного устройстваи с вторым входом первого множительного устройства, девятый и десятый 50выходы - соответственно с первымивходами второго сумматора и первогокоммутатора, одиннадцатый выход,соединен с первым входом вспомогательного регистра, двенадцатый выход . 55,устройства с вторым входомсчетчика порядка, первый выход которого соединен с первым входом блока 429 4управления, второй выход счетчика порядка соединен с вторым входом дополнительной памяти, третий вход которого подключен к второму выходу входного регистра, третий выход счетчика порядка соединен с первым входом сдвигателя, первый выход которого соединен с вторыми входами первого коммутатора и второго сумматора, выход которого соединен с третьимвходом первого коммутатора, выход первого коммутатора подключен к второму входу основной памяти, второй, третий и четвертый выходы которой соединены соответственно с третьим входом первого множительного устройства и вторыми входами второго и третьего множительных устройств,выход вспомогательного регистрасоединен через второй коммутатор с третьим входом входного регистраи непосредственно с четвертым входом входного регистра, выход которогоподключен через третий коммутаторк второму входу блока управления, четвертый выход входного регистра соединен с вторым входом сдви 1 ателя,второй выход которого подключен к третьим входам второго сумматора и блока управления, четвертый выход входного регистра соединен с вторымвходом вспомогательного регистра, первый выход входного регистра соединен с четвертым входом первого сумматора, пятый и шестой выходыкоторого соединены соответственно с выходами второго и третьего множительных устройств, третьи входы которых соединены соответственно с вторым и третьим выходами первого множительного устройства, первый и второй выходы дополнительной памяти соединены соответственно с четвертым входом первого множительного устройства и с седьмым входом первого сумматора, второй выход которого подключен к пятому входу первого множительного устройства, четвертый выход которого соединен с пятым входом регистра, вход-выход которого подключен к выходу-входу первого сумматора, выход регистра функций соединен с выходомпроцессора 23Недостатком известного процессора является относительно низкая достоверность результатов вычисления, поскольку общий объем оборудования, ,входящего в состав процессора, достигает нескольких тысяч корпусов инте4291160гральных микросхем большой и среднейстепени интеграции. Положение усугубляется тем, что эмиттерно-связаннаялогика, на которой реализуются современные высокопроизводительные ЦВИ, 5обладает низкой помехозащищенностью.Поэтому вероятность сбоя в устройстве, в состав которого входят несколько тысяч микросхем эмиттерно-связанной логики, оказывается достаточно 10высокой. В ряде применений, напримерпри работе вычислительной систеМыв контуре управления, ошибка можетпривести к катастрофическим последствиям. 5Контроль достоверности функционирования памяти и пересылок не представляет сложности и может быть вы.полнен с использованием контрольныхсумм, Контроль достоверности функционирования арифметики с плавающейзапятой представляет существенныетрудности, поскольку усечение младших разрядов произведений не позволяет использовать в качестве контрольных операций над остатками.Цель изобретения - повышение достоверности вычислений.ФПоставленная цель достигаетсятем, что в устройстводля вычисления 30элементарных Функций, содержащееарифметический блок и блок управления, причем арифметический блок содержит три дешифратора, восемь коммутаторов, три умножителя, два сумматора, основной и дополнительныйблоки памяти, счетчик порядка вспомогательный регистр, входной регистр;сдвигатель и регистр функции, причемвыход вспомогательного регистра соединен с информационным входом первого дешифратора и первым информационным входом первого коммутатора, второй и третий информационные входыкоторого соединены соответственно 45с выходом первого дешифратора и входом мантиссы аргумента устройства,вход порядка аргумента которого соединен с информационным входом счетчика порядка, выход которого соеди Онен с управляющим входом сдвигателя,информационный вход которого соединен с выходом входного регистра,информационным входом вспомогательрого регистра, первыми информационными входами первого умножителя,коммутаторов с второго по четвертыми,и с входом второго дешифратора, выход первого коммутатора соединен с информационным входом входного регистра, выходы старших и младших разрядов сдвигателя соединены соот-. ветственно с первым и вторым информационными входами первого сумматора, выход старших разрядов сдвигателя и выход первого сумматора соединены соответственно с первым и вторым информационными входами третьего дешифратора, выход которого соединен с адресным входом основного блока памяти, выход третьего коммутатора соединен с вторым информационным входом первого умножителя, выход которого соединен с четвертым информационным входом первого, вторым. информационным входом второго и первыми информационными входами с пятого и по шестой коммутаторов, выход вто-. рого коммутатора соединен с первым информационным входом второго умножителя, выход которого соединен с вторыми управляющими входами шестого и пятого коммутаторов, выходы которых соединены с первыми информационными входами соответственно третьего умножителя и второго сумматора, вторые информационные входы которых соединены с выходами соответственно седьмого и четвертого коммутаторов, выход третьего умножителя соединен с третьим информационным входом пятого коммутатора, выход второго сумматора соединен с информационным входом регистра функции, вторым информационным входом третьего и пятым информационным входом первого коммутатора, выходы входного регистра и счетчика порядка соединены с первым и вторым информационныйи входами восьмого коммутатора, выход которого соединен с адресным входом дополнительного блока памяти, выход которого соединен с вторым и третьим информационными входами соответственно четвертого и третьего коммутато" ров, третий и четвертый информационные входы которого соединены с выходом основного блока памяти и вторым информационным входом седьмого коммутатора, выход регистра функции соединен с выходом устройства, блок управления содержит распределитель импульсов, шифратор, дешифратор циклов и дешифратор признаков, первый и второй входы которого соединены с выходами соответственно счетчика1160429регистр 9, дешифратор 1 О, входной регистр 11, дешифратор 12, сдвига- тель 13, сумматор 14, дешифратор 15, умножители 16-18, основной блок 19 памяти, сумматор 20, дополнительный блок 21 памяти, регистр 22 функции, коммутаторы 23-31, входы 32 и 33,Блок управления содержит распределитель 34 импульсов, шифратор 35, дешифратор 36 циклов, дешифратор 37 признаков.Процесс вычисления элементарной функции разбивается на два этапа: приведение к интервалу 0,1и вычисление многочлена. Причем способ приведения к интервалу различен для разных функций.Для функции е" приведение к интервалу осуществляется следующим образом. Функция представляется в ви- деУстройство содержит арифметический блок 1, блок 2 управления, счетчик 3 ошибок, дешифратор 4 ошибок, сумматор 5 контроля, дешифратор 6 55 контроля, триггер 7 ошибки.Арифметический блок содержит счетчик 8 порядка, вспомогательный х еп 1 х х- епФ хе=е егде е . - функция от целой частиеМ харгумента;х-ЕФ, к- функция от дробной части.Действия по приведению аргументавыполняются при поступлении в арифметический блок 1 на входной регистр 11 мантиссы М и кода порядка Р на счетчик 8 порядка, одновременно в блок 2 управления поступаеткод функции, обеспечивающий настройку блока на соответствующий алгоритмфункционирования. Приведение к интервалу сводится к сдвигу мантиссы вправо или влево и соответственно прибавлению. или вычитанию единицы извеличины порядка. Для повышения быстродействия сдвиги выполняются не последовательно во входном регистре 11,а с использованием вспомогательногорегистра 9 и дешифратора 10, управляемых блоком 2 управления. Сдвиг.аргумента продолжается до равенствапорядка нулю. Затем из дополнитель"ного постоянного блока 21 памятивыбирается значение е , причемв качестве адреса используется величина ео 1 х.Рассмотрим приведение к интервалуфункции Рг к. Пусть аргумент задаетсявыражениемх=М 2",кгде М- мантисса;Рх - порядок,тогда Ро х=РпМ+Рйь 2,1160 Если логарифм представить в виде; 1 н(1+2), где 0(г(1, то можно записатьЬМ" = Ра(1+г). где я=Му -1, а М - нормализованнаямантисса.Таким образом ах Йп(М )РЬ 2 вЬМ-%0 пРбь 2 а0=Еп(Нг) (-) Ео г (г) где Рх -1 - код, содержащийся на счетчике 8 порядка.Действия по вычислению функции начинаются с анализа знака мантиссы. При отрицательном аргументе формируется сигнал невозможности вычисления, При положительном значении мантиссы аргумент сдвигается влево до появления единицы в старшем разряде; для одновременного анализа нескольких разрядов мантиссы введен дешифратор 12, Сдвиги выполняются аналогично рассмотоенному выше случаю для функции. Порядок изменяется пропорционально количеству сдвигов. Для получения дробной части величины ео(1+у) содержимое входного регистра 11 сдвигается влево на первый разряд без изменения значения порядка.формирование адреса основного блока 19 памяти устройства выполняется аналогично рассмотренному выше случаю функции е" . 35Величина (Р-к) имеет небольшую разрядность и умножение величины (Р -к) на Ь 2 выполняется в постоянном запоминающем устройстве 21. Блок 21 памяти разделен на две зоны. 40 В первой зоне хранятся значенияЕ"х, а во втоРой - значЕниЯ (Рх-к)х хЕ 2.Сведение функции зь х к инте,рвалу 0,1 основано на известном соот ф )ношенииэ 1 ь х:51 о (2 Йс+ю 1= зь У, где. К -целое число;- переменная в интервале 0,2 д50 у( " -ЕМ 1 ЕЕ52 Л lх х сли обозначить 2==-ео 11 ег ьг, г,де 0(У 1, то два старших разряда веичины г указывают номер квадранта, 5)о 9=51 ьгл 2=5; - ч"ИГг где О( Ч(1 .Вычисление 51 н -ч в зависимости отквадранта, в котором находится аргумент, вычисляется по формулам- эь - " 1-Ч) для 1 У квадранта . 2 ДЛя фуНКцИИ соэ Х ИМЕЕМ для 1 квадранта 51 в - "(1-Ч)2351Т Приведение к интервалу тригонометрических функций начинается с умножения мантиссы Мна - в первом умножителе 16, Получейный результат заносится во входной регистр 11, за-. тем, в зависимости от номера квадранта и вида функции (51 Р х или соэх), иэ единицы вычитается величина М, находящаяся во входном регистре. Для перехода от переменнойк переменной У, Их сдвигается влево на дваразряда без изменения порядка. Адрес основного блока памяти вычисляется аналогично случаю 1.л х и 1". После формирования адресов блоков 19 и 21 и выборки коэффициентов многочлена начинается процесс собственно вычисления функции, Вычисляемые функции аппроксимируются отрезком ряда Тейлора одинаковой степени, Для формата, принятого в ЕС ЭВМ (56 разрядов мантисса, 7 разрядов порядок) Ях)=9 + х (+6 х+Ъ к +Ь+х +Ь хф), где Г(х) - вычисляемая функция;"о, - коэффициенты многочлена;х - аргумент. ч 2910,в котором находится угол ч. Представим величину 51 пУ как1160429 Параллельно с основным. процессом осуществляется вычисление проверочной функции по формулеГ(х) = Ь, х(ъ+ Ь,х + 1, )Анализ точности вычисления много- члена, показал, что нет необходимости выполнять операции умножения и сложения с той же точностью, что и представление исходного аргумента. Расчеты показали, что для достиже- О ния точности программной реализации достаточно использовать первое множительное устройство 16-56-разрядное второе 17-48-разрядное, третье 18-16- разрядное (для формата принятого в ЕС ЭВМ), Множительные устройства построены на основе БИС умножителей 8 х 8. Подобные БИС серийно выпускают-. ся рядом зарубежных фирм и освоены отечественнойпромышленностью. Для ро выполнения полноразрядного умножения (56 разрядов) необходимо семь тактов, так как за один такт происходит перемножение 56 разрядов множи 12мого и 8 разрядов множителя, Второйи третий умножители выполняют операцию умножения за 6 и 2 такта соответственно,Блок 2 управления (фиг. 3) содержит распределитель 34 импульсов,включающий регистр, шифратор 35 сигналов распределителя 34, дешифратор 36 циклов при работемножительных устройств, включающий первыйсчетчик, второй счетчик третийсчетчик, дешифратор 37 признака,включающий дешифратор признака функции. Счетчики необходимы для форми-.рования сигналов работы первого,второго, третьего умножителей соответственно.Использование предлагаемого Устройства особенно эффективно в техслучаях, когда при работе в контуреуправления грубая ошибка в результатах вычислений, вызванная случайным сбоем нли неисправностью, может привести ккатастрофическим результатам .1160429 Составитель А.ЗоринРедактор Г,Волкова ТехредЖ.Кастелевич Корректор П.П а филиал ППП "Патент", г.ужгород, ул.Проектная, 4 3780/47ВНИИПИ113035,М Тираж 710 Государствен о делам изоб ква, Ж, Р Подписное го комитета СССР тений и открытий ушская наб д. 4/

Смотреть

Заявка

3595893, 25.05.1983

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

ВОДЯХО АЛЕКСАНДР ИВАНОВИЧ, ЛУКОЯНЫЧЕВ ВИКТОР ГЕННАДЬЕВИЧ, ПУЗАНКОВ ДМИТРИЙ ВИКТОРОВИЧ, СМОЛОВ ВЛАДИМИР БОРИСОВИЧ, ШАЛЯПИН ВЛАДИМИР ВАЛЕНТИНОВИЧ

МПК / Метки

МПК: G06F 17/10

Метки: вычисления, функций, элементарных

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

Код ссылки

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

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