Устройство для вычисления степенных функций
-- e-Я .:1т ° -" х г. г() )) 682895
Союз Советских
Социалистических
Республик
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву (22) Заявлено 26.05.77 (21) 2510550/18-24 с присоединением заявки № (23) Приоритет
Опубликовано 30.08.79. Бюллетень № 32
Дата опубликования описания 30.08.79 (51) M. Кл е
G 06F, 7/38
Государственный комитет б (53) УДК 681.325 (088.8) по делам изобретений и открытий (72) Авторы изобретения и (71) заявители
А. Л. Рейхенберг и P. Я. Шевченко (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ СТЕПЕННЫХ
ФУНКЦИЙ
Изобретение относится к области цифровой вычислительной техники и может найти применение для аппаратного вычисления функции в специализированных вычислителях. Д
Известно устройство (1), выполняющее операцию возведения в степень путем последовательного вычисления двух элементарных функций.
Схема этого устройства сложна, функ- 10 циональные возможности его ограниченные.
Наиболее близким по технической сущности к предложенному является устройство (21 для определения функции z=xg, содержащее шесть сдвиговых регистров, ре- 15 гистр, выход которого соединен со входами первого и второго сдвиговых регистров, блок управления, выходы которого подключены ко входам сдвиговых регистров и входу блока памяти, сумматоры, блоки анализа сходимости и знака. Вход последнего подключен к выходу первого разряда третьего сдвигового регистра, а выход — к первым входам первого, второго и третьего сумматоров. Второй и третий входы перво- 25
ro сумматора соединены с выходами (соответственно) блока памяти и третьего сдвигового регистра, а выход — со входом третьего сдвигового регистра. Второй и третий входы второго сумматора соединены с вы- 3О ходами второго и четвертого сдвиговых регистров, а его выход — со входом четвертого сдвигового регистра. Второй и третий входы третьего сумматора соединены с выходами соответственно пятого и первого сдвиговых регистров, а его выход — с первым входом четвертого сумматора, второй вход которого и выход подключены (соответственно) к выходу и входу шестого сдвигового регистра. Выход четвертого сдвпгового регистра соединен со входом пятого сдвигового регистра.
Известное устройство имеет ограниченный класс решемых задач.
Цель изобретения — расширение класса решаемых задач за счет возможности определения функции z=xy
Для реализации цели устройство содержит пятый, шестой и седьмой сумматоры, седьмой и восьмой сдвиговые регистры, первый и второй блоки сдвига. Выход блока анализа знака соединен с первым входом шестого сумматора, выход регистра — со входом седьмого сдвигового регистра, выход которого подключен к первому входу пятого сумматора, второй вход которого соединен с выходом первого блока сдвига, а выход — со вторым входом шестого сумматора, третий вход которого соединен с выходом второго блока сдвига, а выход — с
682895
ы,О.
z,=0
V0 О, первым входом седьмого сумматора. В(орой вход последнего связан с выходом иос >»пп о сдвигового регистра, вход которого соединен с выходом седьмого сумматора. Выходы шестого и четвертого сдвиговых рсгисгров соединены (соответственно) со входами первого и второго блоков сдвига. Выходы блока управления соединены с управляющими входами седьмого и восьмого сдвиговых регистров и со вторыми входами первого и второго блоков сдвига. l àêîå схемное решение обеспечивает вычисление в одной структуре одновременно произведения двух аргументов, произведения одного аргумента на квадрат второго и произведения одного аргумента на третью степень второго.
11а чертеже изображена блок-схема описываемого устройства. Устройство содержит сумматоры l — 4, сдвиговые регистры о — l0, регистр l l, блок 12 памяти, блок 13 анализа знака, блок 14 анализа сходимости, блок 15 управления, сумматоры lб — 18, сдвиговые регистры 19 — 20, блоки 21 — 22 сдвига.
В качестве сумматоров 1 — 4 и lб — 18 могут Оыть применены одноразрядные сумматоры — вычитатели комбинационного типа. йлок 12 памяти представляет одностороннее запоминающее устройство с поразрядной выборкой значения константы вида
2 — о+ l каждым тактовым импульсом. (элок
13 анализа знака содержит триггер и логические элементы. Ьлок 14 анализа сходимости представляет собой цифровую схему сравнения для сравнения содержания сдвигового регистра о с логическим нулем. Ьлок
15 управления содержит генератор тактовых импульсов, распределитель, логические элементы. блоки 21 — 22 сдвига могут содержать сдвиговые регистры и сумматор.
Входами устройства являются для аргумента х — входы разрядов регистра ll, для аргумента у — входы разрядов сдвигового регистра 5. Выходами устройства являются для функции ху — выход сдвигового регистра I, для функции ху2 — выход сдвигового регистра 10 и для функции ху" — выход сдвигового регистра 20.
В описываемом устройстве реализуется разностно-итерационный алгоритм, который позволяет заменить операции возведения в квадрат и куб с последующими умножениями одновременно выполняемыми операциями псевдоделения и псевдоумножения с сохранением постоянной величины одного из операндов. Этот алгоритм может быть представлен в виде системы рекуррентных соотношений, например, для двоичной системы счисления с фиксированной запятой: . — У.
wJ.l = у — у ., > = w> — q 2-о ) +1 при и 0
qJ — — sign ы — )
1 — 1 при ю = 0!
О !
-(О
4э
U =0
U,+i=ay;„(— U>+ q,х 2-0 ц (l„-ху
,+(— ху +i = 0(2-2(7+ — ху з V,+l — ху, (=-V +д з 3 2-(+ 1+ + U 3 2 — 2(1-ll) q ..„ 2 — з(-,Ц1> + «уз где j=0, 1, 2,, и (и — число разрядов). 1- екуррентные соотношения вычисляются одновременно (параллельно) в итерационном процессе. Каждое рекуррентное соотношение в описываемом устройстве вычисляется последовательно за n+m тактов, где и = (1og2n) число дополнительных защитных разрядов для компенсации погрешности усечения чисел при сдвиге. Вычисление указанных функций в описываемом устройстве выполняется следующим образом. 11ервоначально в регистр 11 (и в сдвиговые регистры 8, 9 и 19) заносится значение первого аргумента х, в сдвиговый регистр 5 — значение второго аргумента у. (двиговые регистры б, 7 и 10 и 20 устанавливаются в нулевое состояние. Б любой J-й итерации с выхода блока 15 управления выдаются последовательности (серии) тактовых импульсов, которые сдвигают соответствующие значения в сдвиговых регистрах b, 8, 9, 19 и блоках 21 — 22 сдвига и продвигают содержания сдвиговых регистров б — 10, 19 — 20 и блоков 21 — 22 на соответствующие входы сумматоров 1 — 4, lб — l8, а также поразрядно выдают константу 2 — о+ l с выхода олока 12 памяти на второи вход сумматора 1. С выходов сдвигового регистра б и блока 22 выдаются значения U,2 — > и U,"3 2- (l+ > соответственно. С выходов сдвиговых регистров 8, 9 и 19 выдаются значения х 2 — о+ > х. 2 — (l+ > и х 2 †"о+ соответственно. С выхода блока 22 сдвига выдается значения z; 3 2 — (l+ >. Результаты каждой итерации с выходов сумматора 1, 2, 4 и 18 записываются младшими разрядами вперед в освобождающиеся при сдвиге старшие разряды сдвиговых регистров 5, 7, 10 и 20 и продвигаются к началу этих сдвиговых регистров. По знаку содержания сдвигового регистра 5 в конце каждой итерации определяется очередная (для следующей итерации) цифра оператора q;, которая при положительном содержании сдвигового регистра 5 (q;=+1) определяет вычитание в сумматоре 1 и сложение в сумматорах 2, 3 и 17. При отрицательном содержании сдвигового регистра 5 (q,= — 1) режим работы сумматоров 1 — 3 682895 и 17 заменяется на обратный, сумматоры 4, 16 и 18 всегда работают только в режиме сложения. Процесс вычисления заканчивается при равенстве нулю содержания сдвигового регистра 5. При этом с выхода блока 14 анализа сходимости выдается сигнал, останавливающий работу блока 15 управления на следующей итерации. Для большинства значений аргументов х и у процесс вычис- 1ð ления заканчивается на итерации с номером меньше значения j/ =n. В конце вычисления в сдвиговом регистре 7 содержится значение произведения двух аргументов (U=xg), в сдвиговом регистре 10 — значение произведения первого аргумента на квадрат второго (z=xg ), в сдвнговом регистре 20 — значение произведения первого аргумента на куб второго (V=xg ), а в сдвиговых регистрах 5, б, 8, 9 и 19— нулевые значения. Предложенное устройство позволяет значительно расширить класс решаемых задач по сравнению с устройством — прототипом, при одновременном упрощении устройства и повышени него быстродействия. Формула изобретения Устройство для вычисления степенных функций, содержащее шесть сдвиговых регистров, регистр, выход которого соединен со входами первого и второго сдвиговых регистров, блок управления, выходы которого подключены ко входам сдвиговых реги-;g стров и входу блока памяти, сумматоры, блоки анализа сходимости и знака, вход последнего подключен к выходу первого разряда третьего сдвигового регистра, а выход — к первым входам первого, второго и третьего сумматоров, второй и третий входы первого сумматора соединены с выходами соответственно блока памяти н третьего сдвигового регистра, а выход — со входом третьего сдвигового регистра, вто- 4й p0Il и третий в.;оды второго сумматора соединены с выходами второго и четвертог,, сдвиговых регистров, а его выход — со входом четвертого сдвигового регистра, второй и третий входы третьего сумматора соединены с выходами соответственно пятого первого сдвиговых регистров, à cl 0 выход— с первым входом четвертого сумматора, второй вход которого и выход подключен1-. соответственно к выходу и входу шестого сдвигового регистра, выход четвертого сдвигового регистра соединен со входом пятого сдвигового регистра, о т л и ч а ю щ е с с я тем, что, с целью расширения класса решаемых задач за счет возможности определения функции z=.су, устройство содержит пятый, шестой и ссды;ой сумматоры, ссдьмой и восьмой сдвиговыс регистры, первый и второй блоки сдвига, причем выход блока анализа знака соединен с первым входом шестого сумматора, выход регистра соединен со входом седыгого сдвигового регистра, выход которого соединен с первым входом пятого сумматора, второй вход которого соединен с выходом первого блока сдвига, а вы од — со вторым входом шестого сумматора, третий вход которого соединен с выходом второго блока сдвига, а выход — с первым входом седьмого сумматора, второй вход которого связан с выходом восьмого сдвнгового регистра, вход которого соединен с выходом седьмого сумматора, выходы |исстого и четвертого сдвиговых регистров соединены соответственно с входами первого и второго блоков сдвига, выходы блока управления соединены с управляющими входами седьмого и восьмого сдвиговых регистров и со вторыми входа»и первого и второго блоков сдвига. Источники информации, прннятыс во внимание прн экспертизе 1. Авторское свидетельство СССР Хо 234753, кл. G 06F 7/38, 1969. 2. Авторское свидетельство СССР М 521570, кл. G 06F 15/34, 1972 (прототип). 682895 Составитель Н. Шелобанова Техред Н. Строганова Редактор P. Киселева Корректор Е. Осипова Типография, пр. Сапунова, 2 Заказ 2924/18 Изд. М 559 Тираж 780 Подписное НПО «Поиск» Государственного комитета СССР по делам изобретений и открытий 113035, Москва, Ж-35, Раушская наб., д. 4/5