Устройство для вычисления функций
Изобретение относится к области вычислительной техники, предназначено для вычисления различных функций и может быть использовано в микропроцессорных системах в качестве арифметического расширителя. Известные устройства, осуществляющие вычисление функции в асинхронном режиме, имеют ограниченный набор реализуемьпс
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
А1
09) (1i) (5в 4 G 06 F 7/38 13 „
БЖВМНОТЫ.
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАЮ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ
Н ДВтСИ СКОМУ СЕИДЕтЯЛЬСтВМ (2 1) 4108244/24-24 (22) 16.06.86 (46) 15 ° 04.88. Бюл. У 14 (71) Институт проблем моделирования в энергетике,АН УССР (72) Ю.А. Плищ (53) 681.325(088.8) (56) Смолов В.Б. Функциональные преобразователи информации. Л.: Энергоиздат, 1981, с. 176, рис. 5-4.
Авторское свидетельство СССР
Ф 1259286, кл; С 06 F 7/38, 15. 11.85. (54) УСТРОЙСТВО ДЛЯ ВЬИИСЛЕНИЯ ФУНК
ЦИЙ (57) Изобретение относится к области вычислительной техники, предназначено для вычисления различных функций и может быть использовано в микропроцессорных системах в качестве арифметического расширителя. Иэвестные устройства, осуществляющие вычисление функции в асинхронном режиме, имеют ограниченный набор реализуемых
1388848
y=b, +
Ь„+
Ь + ... + а„ з функций. цель изобретения - расширеНие функциональных возможностей в чаСти вычисления широкого класса функций, аппроксимированньх в виде цепной дроби. Устройство содержит входы 1 ° 1, ll.2, 1.3, 1.4 начальных значений соответственно первого„ второго, третьего и четвертого итерационных коэффициентов, вход 1„5 числа итерации, ход 1.6, аргумента,, регистры 2. 1, .2, 2.3, 2.4, 2.5 соответственно первого по пятый, умножители 3.1, 3.2, 3.3, 3.4 соответственно с перво-.
l î по четвертый, первый 4.1 и второй
4.2 сумматоры, блок 5 синхронизации„ счетчик 6, блок 7 деления, схему 8 сравнения, первый 9„1 и второй 9.2 блоки формирования итерационных ко1
Изобретение относится к вычислительной технике и предназначено для
Вычисления различных функций и может быть использовано в микропроцессорных системах в качестве арифметичес- 5 кого расширителя.
Целью изобретения является расширение класса решаемых задач эа счет вычисления функций, аппроксимирован10 алых в виде цепных дробей.
На фиг. 1 представлена функциоальная схема предлагаемого устрой тва; на фиг. 2 — схема первого блоЖа формирования итерационных коэффициентов; на фиг. 3 — схема второго блока формирования итерационных коэффициентов; на фиг. 4 — схема блока синхронизации.
Устройство содержит входы 1.1, 1.2, 1.3, 1.4 начальных значений первого, второго, третьего и четвертого итерационных коэффициентов, вход.
1.5 числа итерации, вход 1.6 аргумен- 25 га, регистры 2.1, 2.2, 2.3, 2.4, 2,5 соответственно с первого по пятый, умножители 3.1, 3.2, 3.3, 3.4 соотВетственно с первого по четвертый, 30 блок 5 синхронизации, счетчик 6, блок
7 деления, схему 8 сравнения, первый
9.1 и второй 9.2 блоки формирования эффициентов, выход 10 результата.
Вычисление цепной дроби осуществляется за п тактов работы устройства, количество которых без одного поступает на вход схемы сравнения, выход которой управляет схемой синхронизации. Вид реализуемой функции опреде-ляется выражениями на каждом шаге работы устройства, реализуемыми первым и вторым блоками вычисления итерационных коэффициентовс Время работы устройства зависит от количества элементов цепной дроби и и от времени вычисления промежуточных данных на каждом шаге. Увеличение точности осуществляется путем увеличения числа тактов работы устройства. 2 з.п. ф-лы, 4 ил.
2 итерационных коэффициентов, вход 10 результата.
Первый блок формирования итерационных переменных содержит первый 11;1 и второй 11.2 информационные входы, вход 11.3 задания константы, преобразователь 12 прямого кода в дополнительный, сумматор 13, выход 14.
Второй блок формирования итерационных переменных содержит элементы
НЕ 15 группы, элемент И 16, элемент
ИЛИ 17 группы, умножитель 18, вы ход 19.
Схема синхронизации содержит первый 20 и второй 21 входы признака окончания переходного процесса, первый 22.1 и второй 22.2 формирователи импульсов, элемент ИЛИ-НЕ 23, элемент И 24, выход 25.
Устройство функционирует следующим образом.
Вычисление функции, аппроксимированной в виде цепной дроби
cl осуществляется на предлагаемом устройстве за и тактов работы, где и— з 1388848 число звеньев цепной дроби, в соответствии с рекурентным соотношением, Z — определяется следующей функцией: р. Ь. р, 1 +а . р = . (Р,=Ь,; 0=1;1 =1,.Q=0,. и в процессе подготовки устройства к работе заносятся в соответствующие регистры чисел 2.1-2.4.
Регистр 2.5 служит Для хранения переменной Х, на основании которой в первом блоке 9.1 формирования итерационных коэффициентов определяется значение коэффициента Ъ °, во втором блоке 9.2 формирования итерационных коэффициентов определяется. значение коэффициента а;, где индекс i определяется состоянием счетчика б.
Вход устройства 1.6 предйазначен для задания переменной Х. Вход 1.5 предназначен для задания числа п-1.
Работу схемы предлагаемого устройства проиллюстрируем на примере вы- : числения функции у е ", представленной в виде цепной дроби
y=1+ х
1-х + — — — — ——
2х
2-х+- — — — — ——
+(и-1) х
3 x+ а
° ° 4 и-х (3) при П= 4.
В соответствии с этим первый блок
9. 1 формирования итерационных коэффициентов определяет значения коэффициентов Ь. на основании выражения
b„ j + 1-х, (4) а второй блок 9.2 формирования итерационных коэффициентов реализует выражение (5) а„= x(jvZ) где j - состояние счетчика 6, (j=
=О..., и-1), х — э на че ние аргумента, поступающее на вход 1.6 предлагаемого устройства, где i =1,2,..., и.
Вход 1.1 предназначен для задания значения р» а вход 1.2 — для задания;значения р1, вход 1.3 предназначен для задания значения Q, а вход
1.4 — для задания значения Q,, укаэанные величины р,, Q,, р, Q, для цепной дроби (1) принимают следующие значения:
1, если j = О;
О, если )ФО, (6): знак v определяет поразрядную дизьюнкцию двух величин j u Z.
10 Рассмотрим вычисление функции у.=е" на конкретном примере при х=0,5. В этом случае в регистр 2.1 числа входа 1.1 заносится величина, равная р, = Ь, =1. В регистр 2.2 числа с вхо15 да 1.2 заносится величина р, = 1. В регистр 2.3 числа входа 1.3 заносится величина Я,= 1. В регистр числа
2.4 с входа 1.4 заносится величина
Q, = О. Значение аргумента х посту20 пает на вхЬд 1.6 устройства и по синхроимпульсу, поступающего на вхоД 1.1 заносится в регистр 2.5 числа. Одновременно по указанному синхроимпульсу счетчик 6 устройства устанавливается в нуль. На вход устройства 1.5 поступает величина равная и-1=4-1=3.
Первый блок 9.1 формирования итерационных коэффициентов вычислит значение величины, равное:
30 Ъ = 1+1-х=О+1-0,5=0,5, а второй формирователь 9.2 итерационных коэффициентов вычислит зйачеийе величины, равное а, = x(jvZ)=0,5 ° 1=0,5, так как 1=0, Е=1.
На выходах умножителей 3.1т3 ° 4 образуются следующие величины: на выходе умножителя 3. 1: Ь,- р =0,5 ° 1
= 0,5; на выходе умножителя 3.2:
4p:а,. р, = 0,5 ° 1 = 0,5; на выходе умножйтеля 3.3: b, Q,= 0,5 1 = 0,5; на выходе умножителя 3.4: а Q<= 0,5 О"
О.
На выходе первого сумматора 4.1
45 образуется значение p = Ь - р +
+ а„р, = 0,5+0,5 1, а на выходе второго сумматора 4.2 образуется значение Q,= Ь Q, а. Q„= 0,5.
На этом первый такт работы устройБО ства закончен. По окончании процессов в сумматорах 4.1 и 4.2 схема 5 синхронизации выработает синхроимпульс, который установит счетчик 6 в единичное состояние (j=1) и произве55 дет запись величины р„ в регистр
2.1 числа, а значение величины р в регистр 2.2 числа, величины - Q " в регистр 2.3 числа, а значение величины Q, в регистр 2.4 числа. На
1388848 втором такте работы устройства первый блок 9.1 формирования итерационных коэффициентов вычислит значение величины, равное
Ь; = )+1-к=1+1-0,5=1,5.
Аналогично второй блок формирова" ния итерационных коэффициентов 9.2 вычислит значение а .
az=x(j} Z)=0,5 ° 1 =0,5.
На выходах первого и второго сумматоров 4. 1 и 4.2 образуются значения величин р,=b> p„+aã pа =1 5 1+О 5 1=2 (=Ь Q, +аi Qg=f,5 0,5+0,5 1=1,25.
По окончании переходных процессов в сумматорах 4.1 и 4.2 синхроимпульсом, выработанным схемой 5 синхронизации, значения р> и Q< запишутся :в регистры 2. 1 и 2.3 чисел, а значения . p H Q — в регистры 2.2 и 2,4 чисел, 1 f этим же синхроимпульсом счетчик 6 установится в состояние j=2.
В третьем такте работы устройства первый блок 9. 1 формирования итерационных коэффициентов вычислит значение величины Ь, равное
Ь = 1+1-х=2+1-0,5=2,5 а второй блок 9.2 формирования итерационных коэффициентов вычислит значение величины аз
На выходах первого и второго сум, маторов 4.1 и 4.2 образуется следующие значения величин:
p>= Ьь р +аэ p =2,5 2+1,0 6 (з=Ьэ Q>+a> Q =2,5 1,25+1,0 0,5=
=3,625.
По окончании переходных процессов в сумматорах 4.1 и 4.2 синхроимпульсом, выработанным блоком 5 синхронизации, значения рд и Яз запишутся соответственно в регистры 2.1 и 2.3 чисел, а значения р и Q - с реги" стров 2.1 и 2.3 чисел соответственно в регистры 2.2 и 2.4 чисел. Этим же синхроимпульсом 6 установится в состояние j=3.
В этом случае схема 8 сравнения выработает на своем выходе значение логического нуля, которое будучи поданным на блокировку блока 5 синхронизации>запретит в дальнейшем ,выработку блоком 5 синхронизации синхроимпульсов записи.
В четвертом такте работы устрой.ства первый блок 9.1 формирования итерационных коэффициентов вычислит значение величины Ь, равное
b = j+1-х=3+1-0,5=3,5, а второй блок 9.2 формирования итерационных коэффициентов вычислит значение величины а
4 = х(1ч Z) = О 5 ° 3 = 1,5, На выходах первого и второго сумматоров 4.1 и 4.2 образуются следую10 щие значения величин: р4 b4 p> + а„р = 3,5 6+1,5 2=24;
Q4=b4 Я +а4Я,=3,5 3,625+1,5 1,25=
14,5625.
Значение р поступает на вход дели1
15 мого блока 7 деления, значение Q поступает на вход делителя блока 7 деления, на выходе 10 которого образуется искомый результат
24 у = - = — - — - = 1,648, 20 Qq 14, 5625 .который приближенно соответствует
o,s искомому значению у = е . Дальнейmee увеличение точности может быть достигнуто за счет увеличения количества тактов и работы предлагаемого устройства.
При вычислении других функций схема предлагаемого устройства не изменится. Изменятся только реализуемые первым и вторым блоками формирования итерационных коэффициентов функции.
Формула из обретения
1. Устройство для вычисления функ(35 ций, содержащее первый регистр, первый сумматор, первый умножитель и блок синхронизации, причем выход первого сумматора соединен с первым информационным входом первого ре40 гистра, выход которого соединен с входом первого сомножителя первого умножителя, выход которого соединен с входом первого слагаемого первого сумматора, выход которого соединен
45 с первым входом признака окончания переходного процесса блока синхронизации, выход которого соединен с синхронизирующим входом первого регистра, о т л и ч а ю щ е е с я тем, 50 что, с целью расширения класса решаемых задач эа счет вычисления функций, аппроксимированных в виде цепных дробей, в него дополнительно введены четыре регистра, три умиожителя, два блока формирования итерационных коэффициентов, второй сумматор, счетчик, блок деления и схема сравнения, причем вход начального значения первого итерационного коэффициента уст7 338884 ройства соединен с вторым информационным входом первого регистра, входы начальных значений второго, третьего и четвертого итерационных коэф5 фициентов устройства соединены с первыми информационными входами соответственно второго, третьего и четвертого регистров, вход аргумента устройства соединен с информационным входом пятого регистра, выход которого соединен с первыми информационными входами первого и второго блоков формирования итерационных коэффициентов, выходы которых соединены 5 соответственно с входом второго сомножителя первого умножителя и с входом первого сомножителя второго умножителя, вход второго сомножителя которого соединен с выходом второго реги- 2р стра, второй информационный вход ко- торого соединен с выходом первого регистра, выход второго умножителя соединен с входом второго слагаемого первого сумматора, выход которого со- 25 единен с входом делимого блока деления, вход делителя которого соединен с выходом второго сумматора, входы первого и второго слагаемых которого соединены соответственно c чц выходами третьего и четвертого умножителей, входы первых сомножителей которых соединены с выходами соответственно первого и второго блоков формирования итерационных коэффициентов, входы вторых сомножителей третьего и четвертого умножителей соединены с выходами соответственно третьего и четвертого регистров, информационный вход четвертого регистра соединен с выходом третьего регистра, второй информационный вход которого соединен с выходом второго сумматора, вторые информационные входы первого и второго блоков формирования итерационных коэффициентов обьединены с входами первого аргумента схемы сравнения и соединены с выходом счетчика, счетный вход которого соединен с выходом блока синхронизации, второй вход приВ 60 знака окончания переходного процесса которого соединен с выходом вто8
° 8 рого сумматора, вход останова блока синхронизации соединен с выходом признака "Равно" схемы сравнения, вход второго аргумента которой соединен с входом числа итерации устройства, выход блока синхронизации соединен с синхронизирующими входами регистров с первого по четвертый, вход сброса счетчика соединен с установочным входом устройства и синхронизирующим входом пятого регистра, выход блока деления является выходом результата устройства.
2. Устройство по п. 1, о т л ич а ю щ е е с я тем, что, с целью вычисления выражения У = Е, первый блок формирования итерационных коэффициентов содержит преобразователь прямого кода в дополнительный и сумматор, причем первый и второй информационные входы блока соединены соответственно с входом преобразователя прямого кода в дополнительный и с входом первого слагаемого сумматора входы второго и третьего слагаемых которого соединены соответственно с выходом преобразователя прямого кода.в дополнительный и с входом задания константы блока, выход сумматора соединен с выходом блока, 3 Устройство по п, 1р о T л и ч а ю щ е е с я тем, Что, с целью вычисления выражения Е, второй блок формирования йтерационйых коэффициентов содержит умножитель, группу элементов НЕ, группу элементов ИЛИ и элемент И, причем первый информационный вход блока соединен с входом первого сомножителя умножителя, вход второго сомножителя которого соединен с выходами элементов ИЛИ группы, первые входы элементов ИЛИ группы соединены с вторым информационным входом блока и с входами элементов
HE группы, выходы которых соединены с входами элемента И, выход которого соединен с первым входом второй группы входов элементов ИЛИ группы, второй вход второй группы входов элементов ИЛИ группы соединен с шиной логического нуля.
1388848