Устройство для вычисления тригонометрических функций
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1166103
Автор: Ханов
Текст
СОЮЗ СОВЕТСКИСОЦИАЛИСТИЧЕРЕСПУБЛИК 19)1) 1(5 ц С 06 г 7/54 9 ч;. Й КОМИТЕТ С ГОСУДА ИСАНИЕ ИЗОБРЕТЕНИЯ 1фввМ(прототип),-24 м перво тельног с управляющим вход ора первого вычисл ерез элемент НЕ - одом первого сумма слительного блока соединен го сумма блока и ляющим в рого выч ляющим в 5. Бюл, У 25ов(088.8)нт Великобританиил. С 06 Р 1/02, опубл.кое свидетельство СССРС 06 Р 15/20, 1977 авора вт управ умма то одом и) -разрядного которого соединен входом и)-разрядно ы разрядов с четве торого соединены с с ин о ра, выхомационнымра, выходпо п-й к регистого ответственно с разрядами (пт)-й первого ин да щ-разрядного с ряд первого инфор которого соединен дом устройства, у которого соединен ки в "0" т-разряди чика и входами ра с третьего поформационного в п-й раз ммато ционного входа управляющим вх ыи вх тановоч с входа ого рег ми установ" стра, счет. установки ени ионным ходом в-разрядисчетчика соедходами первогоров каждого вы ого сумматовых инен с управ- и второго коммутат ислительного е с я тем, быстродейстразрядный дулю два и ователи кода блок что,тличающ лью повышения вия, в негсумматор,первый и в ены т сумматор по м торой преобра О ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТ АВТОРСКОМУ СВИДЕТЕЛЬСТВ(54)(57) 1, УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ТРИГОНОМЕТРИЧЕСКИХ ФУНКЦИЙ, содержащееп -разрядный регистр (гдещ-разрядность устройства),гп -разрядный сумматор, счетчик, блок памяти,элемент НЕ и два вычислительных блока, каждый из которых содержит входной регистр, группу элементов И,первый и второй коммутаторы и первыйи второй сумматоры, первые информационные входы которых соединены свыходами соответственно элементов Игруппы и первого сумматора, выходвходного регистра соединен с вторыминформационным входом первого сумматора и информационным входом первогокоммутатора, выход второго сумматорасоединен с информационным входомвходного регистра, первые входы элементов И группы и управляющий входвторого сумматора первого и второго.вычислительных, блоков объединены,вторые входы элементов И группы пер"вого и второго вычислительных блоковсоединены с выходами первых коммутаторов соответственно второго и перво.го вычислительных блоков; выход перого разрядав -разрядного регистра входных регистров первого и второго вычислительных блоков, установочные входы входных регистров которых соединены соответственно с первым и вторым параллельными информационнымивходами устройства, тактовый входкоторого соединен с тактовыми входами входных регистров вычислительныхблоков, п 1-разрядного регистра и счетчика, выход которого соединен с адресным входом блока памяти, выходкоторого соединен с вторым информа6103 116 информационные входы которых соединены с выходами вторых сумматоров соответствующих вычислительных блоков, вторые информационные входы вторых сумматоров которых соединены .с выходами вторых коммутаторов, информационные входы которых соединены с выходами первых коммутаторов соответ" ствующих вычислительных блоков, управ ляющие и тактовые входы преобразователей кода соединены соответственно с выходом счетчика и тактовым вхбдом устройства, первый,и второй последовательные информационные входы которого соединены соответственно с третьим разрядом первого информационного входа и управляющим входом трех- разрядного сумматора, первый и. второй разряды первого информационного входа которого. соединены с управляющим входом устройства, выходы разрядов с первого по третий И-разрядного регистра соединены с соответствующими разрядами второго информационного входа трехраэрядного сумматора, выходы первого и второго разрядов которого соединены с соответствующими входами сумматора по модулю два, выход которого соединен с первыми вхо дами элементов И группы каждого вычислительного блока и входом разрешения считывания блока памяти, выходы второго и третьего разрядов трехразрядного сумматора соединены соответственно с первым и вторым разрядами первого информационного входа щ-разрядного сумматора, выходы преобразователей кода соединены с выходом устройства.2. Устройство по п. 1, о т л и - ч а ю щ е е с я тем, нто каждый преобразователь кода содержит первый и второй мультиплексоры, сумматор по модулю два и триггер, причем информационные входы мультиплексоров соединены с информационным входом преобразователя кода, управляющий вход которого соединен с управляющими входами мультиплексоров, выход первого мультиплексора соединен с первым входом сумматора по модулю два, второй вход которого соединен с выходом второго мультиплексора и информационным входом триггера, тактовый вход которого соединен с тактовым входом преобразователя кода, выходами которого являются выходы сумматора по модулю два и триггера.1Изобретение относится к вычислительной технике и может быть использовано в системах с конвейерной по" разрядной обработкой данных.Известно устройство для вычисле ния тригонометрических функций, содержащее два регистра, два сумматора и блок управления с соответствующими связями. Работа устройства основана на выполнении алгоритма Волде ра с коррекцией результата на каждой итерации Я ,Недостатком этого устройства является низкое быстродействие, так как на каждой итерации выполняются 1 Ю последовательно поворот вектора на двойной угол и умножение координат на множители. Наиболее близким к изобретению по технической сущности является цифровой вычислитель координат вектора,2содержащий два регистра, четыре сумматора, четыре умножителя, два сдвигателя, две группы схем И, блок управления и дешифратор с соответствующими связями. Устройство вычисляет функции синус, косинус аргумента, представленного параллельным двоичным кодом за число тактов, равное числу разрядов и 121. Недостатком известного устройства является низкое быстродействие при его использовании в системах с конвейерной поразрядной обработкой данных, так как при этом необходимы и тактов для приема разрядов кода, итактов для вычисления функций и и тактов для передачи разрядов резуль-. тата вычислений, Таким образом, задержка между приемом цифры первого разряда аргумента и формированиемз 11661 на выходе первого разряда результата ,составляет не менее 2 п тактов.Цель изобретения - повышение быст. родействия.Поставленная цель достигается тем, что в устройство для вычисления тригонометрических функций, содержащее ш-разрядный регистр (где ш-разрядность устройства), ш-разрядный сумматор, счетчик, блок памяти, элемент . 10 НЕ и два вычислительных блока, каждый из которых содержит входной регистр, группу элементов И, первый и второй коммутаторы и первый и второй сумматоры, первые информационные вхо. 1 ды которых соединены с выходами соот" ветственно элементов И группы и первого сумматора, выход входного регистра соединен с вторым информационным входом первого сумматора и информа) ционным входом первого коммутатора,. выход второго сумматора соединен с информационным входом входного регистра, первые входы элементов И группы и управляющий вход второго сумма тора первого и второго зычислительных блоков объединены, вторые входы эле-. ментов И группы первого и второго вычислительных блоков соединены с выходами первых коммутаторов соответ" щ ственно второго и первого вычислительных блоков, выход первого разряда ш-разрядного регистра соединен с управляющим входом первого сумматора первого вычислительно-, го блока и через элемент НЕ -с управляющим входом первого сумматора второго вычислительного блока ивуправляющим входом ш-раэрядного сумматора, выход которого соединен сфин-щ формационным входом ш-разрядного регистра, выходы разрядов с четвертого по ш-й которого соединены соответственно с разрядами с третьего по(ш)-й первого информационного входа 45 ш-разрядного сумматора, ш-й разряд первого информационного входа которого соединен с управляющим входом устройства, установочный вход которого соединен с входами установки в "О" 50 ш-разрядного регистра, счетчика и входами разрешения установки входных ре; гистров первого и второго вычислитель- ных блоков, установочные входы входных регистров которых соединены соответ- Я ственно с первым и вторым параллельными информационными входами устройства, тактовый вход которого соединен 03с тактовыми входами входных регис 1- ров вычислительных блоков, ш-разрядного регистра и счетчика, выход которого соединен с адресным входом блока памяти, выход которого соединен с вторым информационным входом ш-разрядного сумматора, выход счетчика соединен с управляющими входами первого и второго коммутаторов каждого вычислительного блока, дополнитель но введены трехразрядный сумматор, сумматор по модулю два и первый и второй преобразователи кода, информационные входы которых соединены с выходами вторых сумматоров соответствующих вычислительных блоков, вторые информационные входы вторых сумматоров которых соединены с выходами вторых коммутаторов, информационные входы которых соединены с выходами первых коммутаторов соответствующих вычислительных блоков, управляющие и тактовые входы преобразователей кода соединены соответственно с выходом счетчика и тактовым входом устройства, первый и второй последовательные информационные входы которого соединены соответственно с третьим разрядом первого информационного входа и управляющим входом трехразрядного сумматора, первый и второй разряды первого информационного входа которого соединены с управляющим входом устройства, выходы разрядов с первого по третий ш-разрядного регистра соединены с соответствующими разрядами второго информационного входа трехраэрядного сумматора, выходы первого и второго разрядов которого соединены с соответствующими входами сумматора по модулю два, выход которого соединен с первыми входами элементов И группы кажДого вычислительного блока и входом разрешения считывания блока памяти, выходы второго и третьего разрядов трехраэрядного сумматора соединены соответственно с первым и вторым разрядами первого информационного входа ш-разрядного сумматора, выходы преобразователей кода соединены с выходом устройства.Кроме того, каждый преобразователь кода содержит первый и второй мультиплексоры, сумматор по модулю два и триггер, причем информационные входы мультиплексоров соединены с информационным входом преобразователя кода, 1166103управляющий вход которого соединен суправляющими входами мультиплексоров,выход первого мультиплексора соединен с первым входом сумматора по модулю два, второй вход которого соединен с выходом второго мультиплексора и информационным входом триггера,тактовый вход которого соединен стактовым входом преобразователя кода, выходами которого являются выходы сумматора по модулю два и триггера,На фиг. 1 дана блок-схема устройства; на фиг. 2 и 3 - блок-схемы преобразователя кода и коммутатора.15Устройство для вычисления тригонометрических функций содержит а-разрядный регистр 1, ш-разрядный сумматор 2, трехразрядный сумматор 3,счетчик 4, блок 5 памяти, сумматор 6 20по модулю два, элемент НЕ 7, вычислительные блоки 8 и 9, преобразователи 10 и 11 кода, входы 12 - 18,выходы 19 - 22.Каждый вычислительный блок содержит входной регистр 23, сумматор24 и 25, коммутаторы 26 и 27, группу элементов И 28.Каждый преобразователь кода содержит мультиплексоры 29 и 30, сумматор 3031 по модулю два и триггер 32. Каждыйкоммутатор содержит группу мультиплексоров 33.Вычисление тригонометрическихфункций в предлагаемом устройствекак и в известном устройстве основано на реализации алгоритма Волдера.Для выполнения этого алгоритма необходимо представить аргумент О в видесуммы: у =." - 5,агсйд 2 ,где 5; е 1, - 1; ри - число разрядов аргумента.В отличие от известного устройства работающего с параллельными кодами, аргумент на вход предлагаемогоустройства поступает в виде последо увательного кода. Поэтому значения 5;должны быть определены из более сложи ии ного уравнения: 7.8 .2 К= 2: Я,агсС 2,М1:О фсОгде Б, 1 - цифры д-х разрядов кода 5 Фаргумента; К - масштабирующий коэффициент. Для решения этого уравнения вустройство введены сумматор 3 и сумматор 6 по модулю два. Сходимостьпроцесса определения Б; обеспечивается расширением множества возможныхзначений 61, причем 5; 1, О, -11.Появления значений б; =0 приводит к зависимости от аргумента значениякоэффициента деформации вектора Кидля алгоритма Волдера, равного К==.П (1+2 6 ). Для устранения этого=оэффекта в предлагаемом устройствеиспользован алгоритм поворота вектора на каждой итерации на двойнойугол. При этом на итерациях, для которых 5; =О, поворот вектора не осуществляется, но его координаты умножаются на множитель (1+2 "), Тем самым устраняется зависимость коэффициента деформации вектора от значения.аргумента. Коэффициент деформациии 2;становится равным К =Я (1+2 ), Пеъ =Оред началом вычислений в регистр 23второго вычислительного блока 9 записывается код, равный, что позво" .ляет получить неискаженные значениятригонометрических функций.Длявыполнения указанных действий,к координатам вектора, вычисленнымпо уравнениям Волдера, на каждой итерации прибавляется поправка видаа;хк;, где х; - значение коордигнаты до поворота вектора на угол к;,а,=-1/4, если 5; 0 и а= 1/4, если5;=О,Введение поправок данного видаобеспечивается соответствующим подключением второго коммутатора в вычислительных блоках.Два блока 10 и 11 выполняют преобразование параллельных кодов вычисляемых функций и цифры последовательного избыточного двоичного кода. Темсамым достигается единство формыпредставления информации на входе ина выходе устройства, необходимоедля его эффективного использованияв системах с конвейерной обработкойданных,Устройство работает следующим образом.На вход 12 и информационный вход15 устройства подается постоянныйкод "0". На информационный вход 16устройства подается постоянный код,иФъравный=,П (1+2)=036878, гдеи - число разрядов результата вычислений,По импульсу начальной установки,поступающему на вход 13 устройства,происходит обнуление регистра 1,счетчика 4, в регистр 23 вычислительного блока 8 переписывается с66103 о Хбх,2 к-О и=Е 5 х 2 Известное устройство при его использовании в укаэанном режиме имеет задержку выдачи первого разряда результата относительно ввода первого разряда аргумента не менее 2 п тактов, 4 р где и-разрядность операндов. В предлагаемом устройстве эта задержка сокращается до четырех тактов, причем задержка не зависит от разрядности операндов. Следовательно, предлагаемое устройство позволяет повысить быстродействие вычисления тригонометрических функций при конвейерной обработке данных в и/2 раз. Например, при п=20 быстродействие повышается ур в 10 раз. 711входа 15 устройства код "0", а врегистр 23 вычислительного блока 9переписывается код с входа 16.После начальной установки выполняются (п 4) циклов вычисления, Вкаждом 1-м цикле (1=0, 1, , и)на входы 17 и 18 устройства подается цифра Б -го (начиная со старЧ,щего) разряда кода аргумента Ч визбыточном двоичном коде с фиксированной запятой, причем вес старшегоразряда кода ( равен 1 рад.Цифра 5 каждого разряда принимает одно из трех значений: 0,1, .-1,которые кодируются двумя двоичнымиразрядами Р ., и ; следующим образомР,. =0 о =0 соответствует Б =0Ч.1 р 1Р =1, о . =0 соответствует Бр =1;Р,=1, ц, =1 соответствует Я 1.Разряд Р, подается на вход 17устройства, разряд о, - на вход 18.За п циклов принимаются все разряды кода аргумента ч. При этом зна- ичение равно: 0 =Е 6 .Л(1). В после 1 сОдующие четыре цикла (д=п, п+1, и+2,и+3), необходимые для завершениявычислений, на вход 17 устройстваподается код "0", что соответствует6=0,В каждом -м цикле (1=4, 5и+3) на выходах 19, 20 и 21, 22 формируются цифры 5 х,к и 5 ,К-го разряда (К= х) избыточного двоичногокода синуса и косинуса аргумента с,причем вес первого (старшего) разряда кода равен "1". Цифры 5,к и 5каждого разряда принимают одно изтрех значений: О, 1, -1, которыекодируются двумя двоичными разрядамианалогично кодированию цифр аргумента.Каждый 1-й вычислительный цикл,(1=0, 1.и+3) заканчиваеэся появлением 1-го тактового импульса навходе 14 устройства. По каждому -мутактовому импульсу код счетчика 4изменяется на "+1", в регистр 1 переписывается код с его информационноговхода, в регистры 23 вычислительных блоков 8 и 9 переписываются коды с их первых информационных входов, в триггеры 32 блоков 10 и 11 переписываются коды с выходов мультиплексо ров 30, после чего начинается (+2)-йвычислительный цикл.После окончания (п+3)-го цикла заканчивается формирование и выдача последовательных и-разрядных кодов 1 О х и у - кодов синуса и косинуса аргумента ( . При этом значения х и у равны Процесс формирования цифр кодовсинуса и косинуса состоит из трехэтапов, выполняемых, начиная с 1=3, 20 параллельно. Первый этап - преобра;,ование кода аргумента, второй этапвычисление функций синус, косинусс формированием результата в параллельном коде и третий этап - преоб- И разование параллельных кодов результата в цифры последовательного. избыточного двоичного кода. Технический эффект при промышлен ном применении предлагаемого устройства перед известным заключается в повышении быстродействия при конвейерной поразрядной обработке данных.116 Ь 103 оставитель А.ЗоринехРед М. Гергель Корректор М. Самборск Г.Волко к 5 атент" Филиал П жгород, ул.Проектная аз 4311/44 Тираж 710 Подписно ВНИИПИ Государственного комитета СССР по делам изобретений и открытий 113035, Москва, Ж, Раушская наб., д. 4
СмотретьЗаявка
3690988, 13.01.1984
ПРЕДПРИЯТИЕ ПЯ Г-4152
ХАНОВ ОЛЕГ АЛЕКСЕЕВИЧ
МПК / Метки
МПК: G06F 7/548
Метки: вычисления, тригонометрических, функций
Опубликовано: 07.07.1985
Код ссылки
<a href="https://patents.su/8-1166103-ustrojjstvo-dlya-vychisleniya-trigonometricheskikh-funkcijj.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для вычисления тригонометрических функций</a>
Предыдущий патент: Устройство для вычисления функции
Следующий патент: Устройство для вычисления синусно-косинусных зависимостей
Случайный патент: Червяк к червячному прессу для переработки полимерных материалов