Изобретение относится к вычислительной технике и может быть использовано для деления чисел, представленных в формате с фиксированной запятой.
Цель изобретения - расширение функциональных возможностей за счет реализации операции деления чисел.
Вычисление отношения у/х основано на кусочной аппроксимации функции 1/х, причем длина участков аппроксимации пропор- циональна целочисленным степеням двойки. Для вычисления функции Z у/х на
1-м участке аппроксимации (I 0, 1п - 1;
п - число разрядов делителя) используется соотношение
(r),xe xi;xi+ Дх,, (1)
где xi - значение аргумента х, соответствующее началу 1-го участка аппроксимации;
AXI - длина 1-го участка аппроксимации;
(f (г) 1/(г+ 1) - базисная функция.
Если х G 0; 2П - 1, то в формуле (1)
Х| , 1 0,1п-1,A xi xi-i - xi xi,
следовательно, нулевому участку аппроксимации (i - 0) соответствует код хе 100...00, первому участку -xi 010...00 и т.д. Таким образом, деление y/xi сводится к соответствующему сдвигу делимого у.
Величина г характеризует изменение кода делителя внутри участка аппроксимации
Х| X - Х|
X -г г
XI
х е х. 2xi, гЕ 0; 1.
На фиг. 1 приведена, функциональная схемн устройства; на фиг. 2 - пример реализации блока формирования базисной функции; на фиг. 3 - графики функций р(т), Z 2п/х, поясняющие работу устройства.
Вычислительное устройство (фиг. 1) содержит дешифратор 1 старшей единицы кода делителя, первый блок 2 сдвига, вход 3 делителя устройства, второй блок 4 сдвига, блок 5 формирования базисной функции, вход 6 делимого устройства, умножитель 7, выход результата 8 устройства.
со
с
о
2
о ю
Блок 5 формирования базисной функции (фиг. 2) содержит блок 9 памяти, блок 10 инверторов, сумматор 11.
Код номера участка формируется дешифратором старшей единицы кода делите- ля и определяет величину сдвига делимого, необходимую для получения отношения y/xi, а также величину сдвига делителя х, требуемую для получения нормированного значения т. Блок формирования базисной функции вычисляет значение функции р (т), единичной для всех участков аппроксимации, которое умножается затем на величину.
Устройство работает следующим обра- зом.
Код делителя поступает с входа 3 на вход дешифратора 1, который определяет положение крайней левой единицы кода, Если обозначить MD - десятичный эквива- лент выходного кода дешифратора 1. то
Мо п- 1 -к,
где к 0,1...,п-1 - номер первого слева разряда кода делителя, содержащего единицу.
При этом нулевому коду (Мо 0) на выходе дешифратора 1 соответствует нулевой участок аппроксимации с начальным значением делителя ч0 10000 (см, фиг. 3),
коду MD 1 - первый участок с xi 01000
и т.д. Код с выхода дешифратора 1 гюступа- ет на управляющие входы боков 2,4 сдвига. Блок 4 сдвига формирует величину y/xi путем соответствующего сдвига вправо кода делимого у.
Блок 2 сдвига производит левый сдвиг кода делителя, необходимый для получения нормированной величины г € 0; 1. Например, если MD 0, то в блоке 2 сдвига осуществляется нулевой сдвиг кода, при MD 1 код делителя сдвигается влево на один раз- ряд и т.д. (п - 1)-разрядный код, определяющий нормированную величину г, поступает на вход блока 5 формирования базисной функции.
Блок 5 формирования базисной функ- ции(см. фиг, 2) вычисляет ее значение в виде суммы кусочно-линейной рл(т) и корректирующей Д у (г) функций
fp(r)-ffti(r) + (r),(2)
гдер„(г) 1 -т/2;
Др(г)1/(г+1)-1+г/2,
Кусочно-линейная функция рл (г) формируется в виде дополнительного кода величины т/2. Код т инвертируется в блоке 10 инверторов и поступает со сдвигом в один разряд (деление на два) на второй вход сумматора 11. При этом старший разряд второго входа сумматора 11 подключен к шине логической единицы устройства. Логиче
ская единица, которую следует прибавить к обратному коду величины г/2 для получения ее дополнительного кода, подается на нулевой разряд первого входа сумматора 11. На все остальные разряды первого входа сумматора 11 поступает код корректирующей функции Ду (г) с выхода блока 9 памяти.
Можно показать, что для вычисления функции Z у/х с точностью представления аргументов достаточно определить корректирующую функцию Луэ(г) лишь в 2 точках, где М (п + 1)/2 при п - нечетном и М п/2 + 1 при п-четном.
С учетом (2) формула (1) преобразуется к виду
ZiW-J ph(r) + (r).
При у умакс 2 общая величина корректирующей поправки функции Z определяется выражением
да(г) (г).
Найдем N-й участок аппроксимации, на котором максимальная величина модуля первой производной функции Д25 (т) равна единице, т.е. шаг изменения функции (шаг ее дискретизации) равен шагу изменения аргумента т. На каждом участке аппроксимации максимальное значение модуля первой производной функции Д2$ (г) соответствует величине г 0 и с учетом xi 2я равно
(0) l 2 n+2l + 1,
Из соотношения (0) l 1 находим
п - 1
при нечетном;
N
j- 1 , при четном M n-N.
Очевидно, что при увеличении I N максимальная величина модуля первой производной функции AZi(t) растет пропорционально целочисленным степеням двойки и достигает наибольшего значения при I п - 1. Следовательно, на всех участках I N шаг изменения аргумента корректирующей функции должен быть минимальным и равным единице младшего разряда. При уменьшении I N максимальная величина модуля первой производной уменьшается от участка к участку в два раза, что приводит к возможности соответствующего увеличения шага изменения аргумента корректирующей функции. Таким образом, на всех участках I N для полного определения корректирующей функции AZi(t) достаточно иметь 2 значений функции р (г).
В сумматоре 11 блока 5 формируется сумма корректирующей Ду(г) и кусочно- линейной рл (т) функций, определяющих базисную функцию (р (г), которая поступает на второй вход умножителя 7. На первый вход умножителя 7 ..одаегся величина y/xi с выхода блока 4 сдвига и на выходе устройства формируется результат в виде
Z-.E. 1 У.
XI Г + 1 X
Формула изобретения Вычислительное устройство, содержащее дешифратор старшей единицы кода делителя, первый и второй блоки сдвига и блок формирования базисной функции, вход которого соединен с выходом первого блока сдвига, информационный вход которого со
5
единен с входом делителя устройства, выход дешифратора старшей единицы кода делителя соединен с управляющими входами первого и второго блоков сдвига, отличающееся тем, что, с целью расширения функциональных возможностей за счет реализации операции деления, в него введен умножитель, выход которого соединен с выходом результата устройства, вход делимого которого соединен с информационным входом второго блока сдвига, выход которого соединен с первым входом умножителя, второй вход которого соединен с выходом блока формирования базисной функции, вход дешифратора старшей единицы кода делителя и информационный вход первого блока сдвига объединены между собой.
название | год | авторы | номер документа |
---|---|---|---|
Устройство для извлечения корня | 1988 |
|
SU1508209A1 |
Устройство для вычисления функции арктангенса отношения | 1990 |
|
SU1751750A1 |
Устройство для вычисления логарифмических функций | 1978 |
|
SU771672A1 |
Устройство вычисления функции арктангенс отношения | 1988 |
|
SU1585793A1 |
Устройство для кусочно-линейной аппроксимации | 1985 |
|
SU1259258A1 |
Вычислительное устройство | 1981 |
|
SU1008749A1 |
Нелинейный вероятностный преобразователь | 1976 |
|
SU610119A1 |
Устройство для воспроизведения функций | 1986 |
|
SU1348828A1 |
Устройство для деления | 1977 |
|
SU732865A1 |
Специализированный процессор | 1983 |
|
SU1144117A1 |
Изобретение относится к вычислительной технике и может быть использовано для деления чисел, представленных в формате с фиксированной запятой. Цель изобретения - расширение функциональных возможностей за счет реализации операции деления чисел. Новым в устройстве, содержащем дешифратор 1 старшей единицы кода делителя, первый 2 и второй 4 блоки сдвига, блок 5 формирования базисной функции, является введение умножителя 7, что позволило в устройстве выполнять не только операцию вычисления обратной величины, но и операцию деления чисел. 3 ил.
код Ј.
делимого
Y
кед 1 делителя X
т
п 8
УО
Ной результата
Фиг. г
2я г-
7/7-2
Фиг.З
Ф-иучасток
Устройство для деления | 1985 |
|
SU1262480A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Цифровой функциональный преобразователь | 1978 |
|
SU676986A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1991-08-30—Публикация
1988-04-14—Подача