SU1193670A1 - Процессор для вычисления элементарных функций - Google Patents
Процессор для вычисления элементарных функций Download PDFInfo
- Publication number
- SU1193670A1 SU1193670A1 SU843755028A SU3755028A SU1193670A1 SU 1193670 A1 SU1193670 A1 SU 1193670A1 SU 843755028 A SU843755028 A SU 843755028A SU 3755028 A SU3755028 A SU 3755028A SU 1193670 A1 SU1193670 A1 SU 1193670A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- outputs
- inputs
- register
- input
- output
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Description
Изобретение относится к вычислительной Технике и может быть использовано как в качестве автономного функционального преобразователя, так и в качестве периферийного 5 устройства специализированных и универсальных ЦВМ для вычисления элементарных функций.
Цель изобретения - расширение класса решаемых задач путем обеспечения Дополнительной возможности вычисления экспоненциальных и синусных функций.
Сущность изобретения состоит в использовании быстрых алгоритмов, 15 аналогичных для всех четырех функций, которые основаны на представлении аргумента в форме с фиксированной запятой, содержащего η разрядов х = 0, х1, хг, ...» х^.пред- 20 ставленного в виде К частей (сегментов ).
На фиг.1 показана блок-схема предлагаемого устройства; на фиг.2 функциональная схема блока маски- 25 рования аргумента; на фиг.З - функциональная схема блока синхронизации .
Процессор содержит регистр 1 ар· гумента, дешифратор 2, блок 3 маскирования, блоки 4-11 памяти, коммутаторы 12-14, буферные регистры 15-18, накапливающий сумматор 19, умножитель-делитель 20, блок 21 синхронизации, коммутатор 22, регистр 23 результата.
Процессор работает следующим образом.
Функция ех . На регистр 1 аргумента поступает аргумент, а на дешифратор 2 - признак вычисляемой функции. Функция ех имеет вид:
е х= е 1*<хг+хз>= е*1 еМ =
= еХ1 е*г (1+ха ).
В блоке 3 маскирования аргумент цэеобразуется в три сегмента. Текуцие значения сегментов х1 и х2 яв1яются адресами к третьему блоку 6 1амяти и четвертому блоку 7 памяти, ?де хранятся величины е*1 и е 2 соэтветственно. Величины, выбранные 13 блоков памяти через коммутаторы
з 1193670 4
.13 и 14, поступают на умножительделитель 20. Произведение фиксирует- .
ся на регистре 23 результата. Функу
ция е 3 для сокращения объема оборудования аппроксимируется отрезком ряда Тейлора. После начала работы умножителя-делителя 20 третий сегмент х3 через коммутатор 12 поступает на сумматор 19, где складывается с единицей. Полученная сумма через коммутатор 13 и регистр 17 поступает на вход умножителя-делителя 20. Произведение е*1 е*2 из регистра 23 результата через коммутатор 14 и регистр I8 поступает на вход умножителя-делителя 20. Значение функции заносится на регистр 23 результата, и процессор заканчивает свою работу.
Для функции 3Ϊη х формула имеет вид 51п х =·3ΐη(χ1+Χ2+χ3| =5(11X^05 Х2 (1+
-3{п Х151ПХгХ5+Со5Х15^хг х2+
+ СО5 Χή С05 Х2Х3 .
Для сокращения объема оборудования функции аппроксимуются отрезком ряда Тейлера: ξϊπ х3 = х3 и сов х3 =
= 1 + х^/2. Аргумент, как и в предыдущем случае, преобразуется в три сегмента, значения первых двух из которых служат адресами к соответствующему блоку памяти. В пятом блоке 8 памяти хранятся функции зап х, в шестом блоке 9 памяти - функции 3Ϊη хг, в седьмом блоке 10 памяти функции соз х, в восьмом блоке 11 памяти - функции соз х^. Третий сегмент через коммутаторы 13 и 14 и регистры 17 и 18 поступает на входы умножителя-делителя 20. Затем величина х2 через коммутатор 22 передается на регистр 23 результата, из которого через коммутатор 14 поступает на регистр 18 для умножения величины х2 на константу 1/2. Послед- . няя реализуется на коммутаторе 13 путем подачи на его вход определенных потенциалов. Величинах3^поступает на вход накапливающего сумматора 19, где складывается с единицей. Сумма через коммутатор 13 и регистр 17 поступает на вход умножителя-делителя 20, на другой вход которого из восьмого блока 11 памяти поступает величина соз хх. Произведение фиксируется на регистре 23 результата. Затем на вход^ умножителя-делителя 20 передаются величина з£п х из пятого блока 8 памяти и содержимое регистра 23 результата. Произведение 3ΐη х соз х2(1+х* /2) за носится на регистр 16.
Далее по формуле находится произведение величины соз х , находящейся
5 в седьмом блока 10 памяти и величины 3ΐη х2, находящейся в шестом блока 9 памяти. Произведение через коммутатор 22, регистр 23 результата, коммутатор 14 и регистр 19 по10 ступает на вход умножителя-делителя · 20, Величина (1+х2 /2, поступает с выхода накапливающего сумматора 19. Произведение соз χή 3ΐη х,(1+х|/2) фиксируется на регистре 23 резуль15 тэта, а затем передается на регистр 15. Сумма передается через коммутатор 22 и регистр 23 результата снова в регистр 15. Остальные два · члена формулы вычисляются аналогич20 но. Окончательный результат из накапливающего сумматора 19 через коммутатор 22 передается на регистр 23 результата и выход процессора.
Функция агсЪе х. Аргумент посту25 пает на регистр 1 аргумента, с выходов которого передается в блок 3 маскирования, где разделяется на два сегмента х^ и х2> Сегмент х поступает на вход второго блока 5
30 памяти, где хранятся величины
агсЪе х1 , и на коммутатор 13. Аргумент поступает также на коммутатор
14. Произведение х,х передается на сумматор 19, где суммируется с еди35 ницей. Сумма поступает на умножи ·= тель-делитель 20 для деления х^на (1+х х). Параллельно с работой умножителя-делителя 20 из второго блока 5 памяти выбирается величина агсЪе х1 и поступает через коммутатор 22 на регистр 23 результата.Если результат деления х2 на (ΐ+χ^χ)
больше величины сегмента х.« то 1 *
частное снова записывается на ре4$ гистр I аргумента со сдвигом на величину сегмента х1. Результат повторного обращения к второму блоку 5 памяти суммируется с величиной, хранящейся на регистре 23 результа5θ та. При этом на нем хранятся промежуточные суммы вида агсЪе х., , которые получаются на’*сумматоре 19, где 1- число циклов работы процессора.
55 Процессор обрабатывает 56-разрядные аргументы, число адресных входов в применяемых блоках памяти равно восьми, поэтому ί= 7. В кон1193670
це работы на регистре 23 результата
хранится окончательный результат.
Функция 1п(1+х). Так же,, как в
предыдущем случае, аргумент передается в блок 3 маскирования, где $
разделяется на два сегмента х1 и Хр Сегмент х< передается на сумматор 19 через коммутатор 12 и регистр 16, Сегмент х2 поступает на вход умножителя-делителя 20. Сумма (1+хл ) с ю выхода сумматора 19 передается на вход умножителя-делителя 20 и через коммутатор 22 на адресные входы первого блока 4 памяти. Во время деления х2 на (1+х1) в умножителе-дели- 15 теле 20 производится чтение из блока 4 памяти и величина 1η(1+х) записывается на регистр 23 результата. Если результат деления х2 на (1+х1) больше величины сегмента хт, то 20
частное снова записывается на регистр I аргумента со сдвигом на ве-. личину сегмента χχ. Далее выполняются действия аналогично вычислению функции агсЪе х. 25
Работой всех блоков процессора управляет микропрограммный автомат (.МПА) - блок 21 синхронизации. Функциональная схема блока 21 (фиг.З) содержит' узел 24 памяти микрокоманд, зд регистр 25 микрокоманд, счетчик адреса микрокоманд (СчАК ) 26, схему управления следующим адресом (СУСА.)
27, которая содержит в свою очередь счетчик 28 итераций, дешифратор 2° 35
функций. .
В работе МПА используются три типа микрокоманд (МК): операционную МК, которая предназначена для управления работой’ блоков процессора, МК безусловного перехода (Ι8Κ), МК условного перехода (ΙΜΡ), используемую для перехода по логическому условию, которое вырабатывается счетчиком 28 итераций.
Первые два разряда всех типов МК расшифровываются как признак микрокоманды. В операционной МК. для работы самого МПА используются разряд для записи кода функции (КОФ) в СчАК 26, разряд для увеличения значения счетчика 28 итераций. Остальные разряды этого типа МК используются для управления блоками процессора. В МК ΙΜΡ И-18Е используется только после адреса перехода.
Работа МПА начинается при поступлении сигнала "Пуск”. По этому сигналу СчАК 26 начинает работать в режиме прямого счета. Адрес МК поступает на вход узла 24 памяти микрокоманд, а выбранная МК записывается да регистр 25 микрокоманд. Затем ар-т гумёнт записывается во входной ре* гистр 1. По КОФ схема следующим адресом вырабатывает сигналы "Преобразование на 3 сегмента" и "Преобразование на 2 сегмента", которые настраи вают блок маскирования на соответствующий режим работы. Счетчик 28 итераций необходим при вычислении функции агсЪе х и 1п(1+х). Когда число итераций достигает семи, то ,ло микрокоманде ΙΜΡ происходит переход (в СчАК 26 записывается адрес перехода). Останов МПА производится микрокомандой Ι8Κ по адресу останова.
1193670
мая £и
Фнг.1
1193670
разряды
аргумента
9+В разряды аргумента
I сегмент.
’ 8 коммутаторы«,« Ъпя ϊ,Β,ι,ν
ί сегмент ’ 8 П397, 8 8мк20
"Преадразодание 8 3 сегмента' из Виана упрадн 21 “РрпВразавание в ! сегмента” из дюна управ». 21
& сегмент 8 Л39 9, П ’8 коммутаторы 12,8,14
17+58 разряды аргумента
Фиг.2
Claims (1)
- ПРОЦЕССОР ДЛЯ ВЫЧИСЛЕНИЯ ЭЛЕМЕНТАРНЫХ ФУНКЦИЙ, содержащий регистр аргумента, накапливающий сумматор, регистр результата, умножитель-делитель, первый и второй блоки памяти и блок синхронизации, выходы с первого по четвертый которого соединены.соответственно с входом разрешения записи регистра аргумента, управляющими входами накапливающего сумматора и умножителяделителя и входом разрешения записи регистра результата, выход которого соединен с выходом процессора,о т лич ающ'ий ся тем, что, с целью расширения класса решаемых задач путем обеспечения дополнительной возможности вычисления экспоненциальных и синусных функций в него введены дешифратор, блок маскирования, с третьего по восьмой блоки памяти, четыре коммутатора и четыре буферных регистра, причем блок маскирования содержит две группы элементов И, первые входы которых соединены с пятым выходом блокасинхронизации, вторые входы элементов И обеих групп соединены соответственно с выходами первой и второй групп разрядов регистра аргумента, информационный вход которого соединен с выходом первого коммутатора и информационным входом регистра результата, выходы буферных регистров с первого по четвертый соединены соответственно с первым и вторым информационными входами накапливающего сумматора, первым и вторым информационными Входами умножителяделителя, группа входов выбора режима которого соединена с выходами элементов И первой группы, вход дешифратора соединен с входом кода задания регистра и входом задания режима блока синхронизации, вход запуска которого соединен с входом пуска процессора, первый и второй выходы дешифратора соединены с входами разрешения выборки соответствующих блоков памяти, третий выход дешифратора соединен с входами разрешения выборки третьего и четвертого блоков памяти, входы разрешения выборки блоков памяти с пятого по восьмой соединены с четвертым выходом дешифратора, адресный вход первого блока памяти соединен с выходом первого коммутатора, адресные входы второго, третьего, пятого и седьмого блоков памяти соединены с третьей группой выходов регистра аргумента, адресный вход четвертого блока памяти соединен с выходами элементов И первой группы, выходы элементов И второй группы соединены с адресными входами шестого и восьмого -блоков па>1 193670мяти, подключенных к четвертой группе выходов регистра аргумента, выход первого блока памяти соединен с первыми информационными входами первого и второго коммутаторов, вторые и . третьи информационные входы которых соединены соответственно с выходом · второго блока памяти и выходом умножителя-делителя, четвертый информационный вход первого коммутатора соединен с выходом накапливающего сум-, матора и первым информационным входом третьего коммутатора, второй и третий информационные входы которого соединены соответственно с выходами третьего и пятого блоков памяти, четвертые и пятые информационные входы второго и третьего коммутаторов соединены соответственно с третьей группой выходов регистра аргумента, и четвертой группой выходов регистра аргумента, выходы элементов И второй группы подключены к первому информационному входу четвертого коммутатора, информационные входы свторого по шестой которого соединены с выходами соответственно четвертого шестого и восьмого блоков памяти, ре гистра аргумента и регистра результата, выход которого подключен к информационному входу первого буферного регистра, выход седьмого блока памяти соединен с шестым информацион ным входом третьего коммутатора, выходы и управляющие входы коммутаторов с второго по четвертый соединены соответственно с информационными входами буферных регистров с второго по четвертый и шестым выходом блока синхронизации, седьмой и восьмой выходы которого соединены соответствен но с входами разрушения записи с пер вого по четвертый регистр и управляющим входом первого коммутатора, пятый информационный вход которого соединен с информационным входом процессора, четвертый и пятый входы второго и третьего коммутаторов подключены к выходам элементов И второй группы.1
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU843755028A SU1193670A1 (ru) | 1984-05-04 | 1984-05-04 | Процессор для вычисления элементарных функций |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU843755028A SU1193670A1 (ru) | 1984-05-04 | 1984-05-04 | Процессор для вычисления элементарных функций |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1193670A1 true SU1193670A1 (ru) | 1985-11-23 |
Family
ID=21124554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU843755028A SU1193670A1 (ru) | 1984-05-04 | 1984-05-04 | Процессор для вычисления элементарных функций |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1193670A1 (ru) |
-
1984
- 1984-05-04 SU SU843755028A patent/SU1193670A1/ru active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
GB1364215A (en) | Divider | |
SU1193670A1 (ru) | Процессор для вычисления элементарных функций | |
SU1280624A1 (ru) | Устройство дл умножени чисел с плавающей зап той | |
SU1418700A1 (ru) | Устройство дл делени чисел | |
SU1259251A1 (ru) | Устройство дл делени | |
SU1709301A1 (ru) | Устройство дл делени | |
SU600555A1 (ru) | Устройство дл умножени и делени | |
SU548858A1 (ru) | Отсчетное устройство | |
SU1471189A2 (ru) | Устройство дл вычислени разности квадратов двух чисел | |
SU1287149A1 (ru) | Устройство дл делени чисел | |
SU469969A1 (ru) | Устройство управлени умножением двоично-дес тичных чисел | |
SU1432512A1 (ru) | Конвейерное вычислительное устройство | |
SU1605228A1 (ru) | Устройство дл делени чисел без восстановлени остатка | |
SU600575A2 (ru) | Логарифмирующее устройство | |
RU1783520C (ru) | Устройство дл делени двоичных чисел | |
SU1705822A1 (ru) | Устройство дл вычислени функций | |
SU614435A1 (ru) | Отсчетное устройство | |
SU1339553A1 (ru) | Устройство дл делени | |
SU802963A1 (ru) | Микропрограммное устройство управле-Ни | |
SU1478213A1 (ru) | Устройство дл вычислени функций синуса и косинуса | |
SU1259250A1 (ru) | Векторное устройство дл делени | |
SU418853A1 (ru) | ||
SU1012245A1 (ru) | Устройство дл умножени | |
SU441658A1 (ru) | Цифро-аналоговое вычислительное устройство | |
SU593211A1 (ru) | Цифровое вычислительное устройство |