Устройство для вычисления функции
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть исшш in 26 к ю гогз пользовано в специализированных вычислителях в устройствах, работающих в реальном масштабе, времени. Целью изобретения является повышение быстродействия за счет уменьшения числа операций. Устройство Содержит регистры 1-4, сумматоры-вычитатели 5-9, сдвигатели 10-12, блок 13 памяти нормализованных итерационных констант, блок 14 памяти величины пропускаемых итераций, коммутаторы 15-18, блок 19 управления. В устройстве используется разновидность итерационного алгоритма Волдера (метод симметричных итераций) для вычисления ряда элементарных функций. 2 ил. i (Л 00 00 00 to со Фи J
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
„„Я0„„1348829 А1 д11 4 С 06 F 7/544
ОПИСАНИЕ ИЗОБРЕТЕНИЯ:..
К А ВТОРСКОМ,Ф СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 4090462/24-24 (22) 28.04.86 (46) 30.10.87. Бюл. У 40 (72) Е.К;Пьянков (53) 68 1 ° 325(088.8) (56) Авторское свидетельство СССР
У 1141399, кл. С 06 F 7/38, 1982.
Байков В.Д., Смолов В. Б, Специализированные процессоры: итерационные алгоритмы и структуры. M. Радио и связь, 1985, с.234-236, рис.5.17
5. 19. (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ ФУНКЦИИ (57) Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислителях в устройствах, работающих в реальном масштабе времени.
Целью изобретения является повышение быстродействия за счет уменьшения числа операций. Устройство содержит регистры 1-4, сумматоры-вычитатели
5-9, сдвигатели 10-12, блок 13 памяти нормализованных итерационных констант, блок 14 памяти величины пропускаемых итераций, коммутаторы
15-18, блок 19 управления. В устройстве используется разновидность итерационного алгоритма Волдера (метод симметричных итераций) для вычисления ряда элементарных функций. 2 ил.
1348829
Изобретение относится к вычислительной технике и может быть использовано в качестве расширителей в специализированных вычислителях.
Целью изобретения является повышение быстродействия за счет y «:ньшения числа итераций.
На фиг.1 представлена функциональ— ная схема устройства; на фиг." — прн- 1ð мер реализации блока управления.
Устройство для вычисления функции содержит регистры 1-4, сумматоры-вычитатели 5-7, сумматоры 8-9, сдвигатели 10-12, блок 13 памяти нормализованных итерационных констант,, блок 14 памяти величины пропускаемых итераций, коммутаторы 15-18, блок 9 управления, вход 20 запуска, первый
21, второй 22, третий 23,четвертый 2р
24, пятый 25 выходы блока управления, третий вход 26 группы входов кода операции блока управления, шестой
27, седьмой 28, восьмой 29, девятьп
30 выходы блока управления, вторы» 5 информационные входы 31-33 соответственно первого-третьего регистров, выходы 34-36 соответственно первого-третьего сумматоров †вычитат-.й, первые информационные входы 37--39 со- .:,р ответственно первого-третьего регистров, выход 40 первого регпс;рд, первый информационный вход 41 перво о сумматора-вычитателя, первый нформационный вход 42 первого коммутатора, первый информационный вход 43 второго коммутатора, выход 44 второго рел гистра, первый информационньп вход 45 второго сумматора-вычитателя, первый информационный вход 46 третьего ком- 4р мутатора, второй информационный вход
47 первого коммутатора, выход 48 третьего регистра, информационный вход
49 первого сдвигателя, адресный вход
50 блока памяти нормализованных ите- 45 рационных констант, второй информационный вход 51 второго коммутатора, третий вход 52 группы входов анализа знаков блока управления, выход 53 блока памяти нормализованных итера- 5р ционных констант, второй информационный вход 54 третьего коммутатора, третий информационный вход 55 первого коммутатора, выход 56 первого коммутатора, выход 57 второго коммутато- 55 ра, информационный вход 58 третьего сдвигателя, информационный вход 59 второго сдвигателя, выход 60 третьего сдвигателя, выход 61 второго сдвигателя, второй информационный вход 62 первого сумматора-вычитателя, второй информационный вход 63 второго сумматора-вычитателя,вход 64 величины сдвига третьего сдвигателя, выход 65 первого сумматора, первый информационньп вход 66 четвертого коммутатора, вход 67 величины сдвига второго сдвигателя, вьгход 68 четвертого коммутатора, выход 69 третьего коммутатора, первый информационный вход 70 третьего сумматора-вычитателя, выход 71 блока памяти величины пропускаемых итераций, вход 72 первого слаГаемого первого сумматора, вход 73 первого слагаемого второго сумматора, вход 74 величины сдвига первого сдвигателн, выход 75 первого сдвигателя, вт ;)olf: нформационный вход 76 третьего сумматора-вычитателя, выход 77 четвертого регистра, вход 78 в горого слагаемого первого сумматора, информационный вход
79 ч ° TBppTQI регистра, выход 80 второго сумматора, второй 81 и третин 82 информационнь|е входы четвертого коммутатора, первый адресный вход 83 блока нормализованных итерационных констант, первый 84 и второй 8" входы группы входов кода операций, вход 86 числа итераций, первый вход 87 группы входов анализа ; аков блока управления, второй вход
88 группы входов анализа знаков блока управления, тактовый вход 89.
Блок управления содержит первый
90, второй 91, третий 92 элементы
ИСКЛЮЧАЮЩЕЕ ИЛИ, первый 93, второй
94, третий 95, четвертый 96 элементы НЕ, элементы И с первого по одиннадцатый 97-107 соответственно, элемент И-НЕ 108, первый 109, второй
110, третий 111, четвертый 112, пятый 113 элементы ИЛИ, схему 114 сравнения, десятый выход 115.
Устройство работает следующим образом.
Блок 13 памяти нормализованных итерационных констант разбит на две части: первая содержит нормализованные константы 2" arct8 2 а вторая часть разбита на две зоны в зависимости от знака u) : и) = 1
k н соответствуют нормализованные кони станты вида 2 log (! — 2 " )
1 — 1 соответствуют константы вида 2 1оя (! — 2 "" ). Адресными входами блока памяти констант слу1348829 жит код 0 < k+j (n,где п — разрядность устройства, sign,) и еще один разряд для выбора необходимой части блока памяти.
Елок 14 памяти величины пропускаемых итераций служит для хранения величин, означающих количество пропускаемых в процессе вычислений итераций. Адресными входами блока являются старшие девять разрядов, включая знаковый, сводимого к нулю аргумента функции, который хранится в регистре 3.
Устройство функционирует в пяти режимах.
В первом реж (Me производится операция деления U = А/В. Деление осуществляется в соответствии со следующими рекуррентными соотношениями:
15
J
2z,,+d„
+ь)„г 2
-(g+ g j
К
z
k+J
9„+ и)„
1, если z„(0 — 1, если zк, 0
z = B — 1 0 = А z = 0 8 = А/В 30
При этом на входах 84, 85, 26 установлен код 010, а на входе 86 число равно n — 1. По сигналу начальной установки на входе 20 регистр 4 уста- 35 навливается в "0". В нулевом состоянии регистр 4 находится до начала следующего такта, для чего сигнал на ". чальной установки должен перекрывать синхроимпульс на выходе 21, по кото†рому происходит прием исходных данных
\ алгоритма z =  — 1 в регистр 3 о
9О = А в регистр 1.
В i-м такте работы в регистрах 1 и 3 находятся величины г„и 6„(i k), 45 а в регистре 4 — величина k. Таким образом, третий сдвигатель 12 пропускает операнды 6, сдвинутыми на
k + j разрядов вправо (в сторону младших разрядов), второй сдвигатель
11 — z сдвинутыми íà k разрядов к вправо, а первый сдвигатель 10 — z„ сдвинутыми на j разрядов влево (в сторону старших разрядов). При этом блок 14 памяти в соответствии с s
55 старшими разрядами z выдает значек ние j . Тогда на входы 41, 70 сумматоров-вычитателей 5, 7 поступают one-и
<)„г 2
-(к+ з)
+ы)„2 );
J г =2 z + + к+ к к
8 „- g log (1
1, если z 0 (2) — 1, если z О О, z =х-1, 6,=0, z„=0, 6, = log„(x) .
Этому режиму соответствует код 001 на входах 84, 85 и 26. Аналогично, как и в предыдущем режиме, по сигналу установки на входе 20 регистр
4 обнуляется, а в регистрах 1и 3 по приходу синхроимпульса записываются исходные данные: 8„ в регистр 1 и
z в регистр 3 с входов 37 и 39 соответственно. Вычисление z по перК вому рекуррентному соотношению в (2) осуществляется точно так же, как и ранды Q и z„2 к соответственно, а на входы 62, 76 — соответственно
J -(к+))
2 z и 9„2 . Сумматоры-вычитатели 5, 7 производят действия согласно алгоритму (1). Результаты 8
КМ и z . записываются по синхроимпульсу в регистры 1, 3 соответственно. На вход управления сдвигом третьего сдвигателя 12 поступает величина
k+j с выхода 65 первого сумматора 8,который производит суммирование величины k из регистра 4 с величиной из блока 14 памяти. На вход управления сдвигом сдвигателя 11 через четвертый коммутатор 18 поступает величина k с выхода 77 регистра 4. На вход 74 величины сдвига первого сдвигателя 10 всегда подается величина j с выхода 71 блока 14 памяти. Величина k в регистре 4 после каждой итерации увеличивается на величину j.
После того как значение k в регистре
4 станет равным или большим числа и — 1, установленного на входе 86, схема 114 сравнения выработает сигнал запрета дальнейшей работы устройства.
По этому сигналу произойдет блокировка синхроимпульсов, подаваемых на вход 89 блока управления. В регистре
1 будет находиться результат операции деления 8„= A/В.
Во втором режиме производится вычисление функции loyrx в соответствии со следующими рекуррентными со отношениями:
1348829
30
3 Кб,) z 2 а — 2 1од„(! + в операции деления. Вычисление g в
К соответствии с вторым рекуррентным соотношением (2) осуществляется следующим образом. На вход сдвигателя
12 через коммутатор 15 поступает константа 2"log (1 + 2 " ), считанная по
r адресу „из блока 13 памяти нормализованных итерационных констант. На вход управления сдвигом третьего сдвигателя 12 поступает величина j с выхода первого сумматора 8, и третий сдвигатель 12 производит сдвиг на разрядов вправо, т.е. на информационный вход сумматора-вычитателя 5 подается log (1 + 2 " ), на управляющем входе в соответствии с кодом операции устанавливается "1" и сумматор-вычитатель 5 производит операцию вычитания 8 -1og (1+2 " ) . Pe1 — 20 эультат вычитания в начале следующего такта записывается в регистр 1.
В i-м такте в регистре 1 находится величина 6„, в регистре 3 — z а в регистре 4 — k(k. < j). На выходе 25
65 сумматора 8 получена величина
k + j, которая подается на вход управления сдвигом третьего сдвигателя 12 и на вход 83 блока 13 памяти нормализованных итерационных констант. На другой вход блока 13 памяти в соответствии с кодом операции из блока 19 управления подается "0", а на третий вход — значение со вырабатываемое в блоке 19 управления в зависимости от кода операции и знакового разряда регистра 3. В соответствии с тим адресом из блока 13 памяти считывается нормализованная константа 2 " log (1 + 2 " " ), котог 40 рая подается через первый коммутатор
15 на вход сдвигателя 12 и сдвинута в нем на k + j разрядов вправо. Результат сдвига подается на вход 62 сумматора-вычитателя 5, на вход 41 которого подается величина 9 . С
К выхода 34 сумматора-вычитателя 5 величина О -1ор (1 + 2 " " ) запишется по входу 31 в регистр 1. При достижении регистром 4 состояния п — 1 схема 114 сравнения выработает сигнал запрета и останавливает вычислительный процесс. При этом в регистре
1 находится результат 6„= lop x.
Вычисление функции r " осуществляется в соответствии со следующими рекурренчными соотношениями:
В = В +, В . 2 Ч ; (3)
sign сдк = sign z г =х,8 = 1, z =0, 6„=
В этом режиме на входах 84, 85 и
26 кода операции устанавливается код 110.
В нулевом такте по сигналу установки по входу 20 происходит обнуление регистра 4 и по синхроимпульсу на входе 21 запись исходных данных в регистры 1 — 3: 0, в регистр 1 и
2, z в регистр 3. В соответствии
О с кодом операции на первом коммутаторе 15 выбирается вход 42, на втором коммутаторе 16 — вход 43, на третьем коммутаторе 17 — вход 54 и на четвертом коммутаторе 18 — вход 66.
В первом такте z, из регистра 3 поступает на вход 49 сдвигателя 10 °
На вход 50 блока 14 памяти величины пропускаемых итераций поступают старшие s разрядов z,, и на выходе 71 устанавливается соответствующее значение j, поступающее на вход 74 управления сдвигом сдвигателя первого 10 и на вход 72 первого сумматора 8. На входе управления сдвигом третьего и второго сдвигателей 12 и 11 поступает также величина j но уже с выхода 65 первого сумматора 8. На вход
76 сумматора-вычитателя 7 поступает величина 2 z, а на вход 70 через о третий коммутатор 17 с выхода 53 блока 13 памяти поступает нормали-. зованная константа 2" log (1 + 2 ).
На управляющем входе сумматора-вычитателя 7 в соответствии с кодом операции устанавливается "1", и сумматор-вычитатель 7 производит вычитание согласно (3) . На управляющие входы сумматоров-вычитателей 5 и 7 иэ блока управления подается знак td„ ("0" при <> = 1 и "1" при д = — 1);
На входы 41 и 45 сумматоров-вычитателей 5 и 7 иэ регистров 1 и 2 соответственно считывается значение 6, а на входы 62 и 63 этих же сумматоров-вычитателей с выходов сдвигателей 12 и 11 — величина 6,- 2 ". Сумматоры-вычитатели производят сложение или вычитание в зависимости от знака и) . Результат, равный 8
J записывается в начале следующего
1348829
J г„, = 2 г — о3„о)к
sign c0„= sign г
8„ = arctg у/х, такта в регистры 1 и 2. В регистр 4 записывается с выхода первого сумматора 8 величина j, а в регистр 3 с выхода 36 регистра 3 — величина z
Анлло ично в i-м такте работы регистр 4 находится в состоянии k в регистрах I и 2 — текущее значение
6„, а в регистре 3 — текущее значение
z„. Третий и второи сдвигатели 12 и 11 производят сдвиг 6 íà k + к разрядов вправо, л первый сдвиглтелт
10 — на „ ра-рпцо. влево. Значение
k < j пол чается суммированием в первом сумматоре 8 значения k и считанного из блока 14 памяти значения
j. Из блока ). памяти нормализованных итерационных KGHcTaíò на вход 70 сумматора-вычитлтеля 7 считывается норк мал .".»ванная константа 2 Топ (I + э -(к i) „ r
+ ) . При этом на первый вход бпока 13 иэ < — ».л 19 управления по11 ff даетcs О,:; .л втопой вход -- знак
u)Ä чл вход .3 — нлчение k + j c вьп ода 65 су:»;лторл 8. 25
Таким образом, сумматор-вычитлтель
i совместно с первым сдвигателем 10 производит в -,лисления согласно пер— вому рекуррентному соотношению в (3), а суммлторы-вычитатели 5 и 6 совмест- ЗО но со сдвигателями 12 и 11 — вычисления согласно второму соотношению в (3). Результаты вычислений z u l + J в начале () + 1)-го такта записываются в регистр 3 и в регистры и 2.
11осле того как итерационный индекс
k, хранящийся в регистре 4, достигает значения и — 1, установленного на входе 86 схемы 114 сравнения, схема вырабатывает сигнал запрета и вычисления заканчиваются.
Функция arctg у/х вычисляется в устройстве в соответствии со следующими рекуррентными соотношениями: — (2к+ ) и)к,„= д +и) г 2
-(к+ ) (4), = 0„+ „, are tg 2 у, < = х, 6, = О, z„ = О, Этому режиму соответствует код 111 на входах 84, 85, 26 кодл операции.
Аналогично, как и в предыдущих режимах, по сигналу на входе 20 регистр устанавливается в "О", а в регистрах 1 — 3 по синхроимпульсу записываются исходные данные: в регистр 1
g в регистр 2 — u) и в регистр 3
z,. В первом такте г, из регистра
3 через гдвигатель 10 поступает на вход 76 сумматора-вычитателя 7 и одновременно чер»". вход 51 коммутатора
Iб, caâèãàòåëü 11 — нл вход 63 сумматора-вычитателя 6. Переменная из регистра 2 поступает на вход 45 сумматора-вычитателя 6 и одновременно через вход 46 коммутатора 17 — нл вход 70 сумматора-вычптателя 7. Переменная О„ из регистра 1 поступает нл вход 41 сумматора-вычптлтеля 5, на вход 62 которого через вход 47 коммутатора 15 и сдвиглтеля 12 иэ блока
13 памяги подается констлнтл
arctg 2 . Блок управления лнализирует знаковый разряд регистра 3, поступивший на его вход 52, и выдает сигналы управления знаком алгебраи— ческогo сложения нл управляющие входы сумматоров-вычитателей 5-7, согласно алгоритму (4). При этом сдвиглтель 12 производит сдвиг нормализованной константы 2 arctg 2 на j разрядов вправо, т.е. производит денормллиэацию константы. На вход 67 управления сдвигом сдвигателя 11 через вход 81 коммутатора 18 подается с выхода сумматора 9 значение 2k + равное в первом такте j, Величина
21 + ) получается в сумматоре 9 с помощью суммирования значения k, хранящегося в регистре 4 и значения из блока 14 памяти, при этом для получения величины 2k выходы регистра 4 подключаются к входу 78 сумматора 9 со смещением влево на один разряд.
В начале следующего такта результаты суммирования И .) и г запи) Ъ J сываются в регистры 1-3 соответственно,по синхроимпульсу с выхода 21,а в регистр 4 — значение j с выхода
65 сумматора 8, Аналогично, в i-м такте работы регистр 4 находится в состоянии 8 = k (i 1с). Тлким образом, сдвигатель 12 пропускает нормализованную константу 2 лгсср, 2 " со сдвигом на 1< + ) разрядов вправо, поскольку на выходе 65 суммато —, 1348829
10 дующими рекуррентными соотношениями: (kt.l) z z — и) и1 2 к+ к к о
-(« .
=u) +«> z 2
« J к к
J кi J
20 -u3 2
К+ К
l><+ i
arctg 2
s ign « к = s i gn <4
z =0 < = 1 6 = у о о э о э
z„= k sing, u3, = 1с соз р;
40 „= 0
В начале выполнения операции на входах 84, 85 и 26 устанавливается код 100, а на входе 26 код, соответствующий максимально возможному числу итераций. По сигналу начальной установки на входе 20 и синхроимпульсу на выходе 21 в регистры 1-3 записываются исходные данные: z в рео гистр 1, и) в регистр 2 и 6, в регистр 3, регистр 4 обнуляется. На управляющих входах коммутаторов 15-18 в соответствии с кодом операции установлены коды, подключающие выход
40 регистра 1 через коммутатор 16 к входу 59 сдвигателя 11, выход 44 регистра 2 через коммутатор 15 к входу
50
55 ра 8 установлено значение k +
Сдвигатель 11 пропускает значение z„„ из регистра 3, сдвинутым вправо на
2k + j разрядов, так как на выходе
5 сумматора 9 устанавливается это значение, а сдвигатель 10 — значение z из регистра 3, сдвинутым на 1 разрядов влево. Сумматор-вычитатель 7 выполняет действие (сложение или вычи- 10 тание) согласно первому рекуррентному соотношению в (4), сумматор-вычитатель 6 — согласно второму, а сумматор-вычитатель 5 — согласно третьему. Полученные результаты в нача- 15 ле следующего такта записываются в регистры 3-1 соответственно ° В регистр 4 записывается значение k + j.
После того как состояние регистра 4 равно или больше кода, заданного по входу 86, сигнал на выходе схемы 114 сравнения заблокирует дальнейшие вычисления, При этом в регистре E окажется результат операции, т.е.
arctg у/х. 25
Вычисление функций k sinÉè k сову осуществляется в соответствии со слс—
58 сдвигателя 10, выход 53 блока 13 памяти через коммутатор 17 к входу
70 сумматора-вычитателя 7 и выход 65 сумматора 8 к входу 67 сдвигателя 11.
В следующем первом такте z из регистра 1 поступает на вход 4 1 сумматора-вычитателя 5 и через вход 43 коммутатора 16 и сдвигатель 11 на вход 63 сумматора-вычитателя 6, Q из регистра 2 — на вход 45 сумматоравычитателя 6 и через вход 47 коммутатора 16 и сдвигатель 12 на вход 62 сумматора-вычитателя 5, 6„ из регистра 3 через сдвигатель 10 — на вход
76 сумматора-вычичателя 7. На вьг:оде
65 сумматора 8 устанавливается значение, равное 1 (количеству пропускас мых в этом такте н, левых итераций), по адресу j на вход 83 из блока 13 памяти считыв; ется константа
2 arctg 2 ., которая через вход 54 коммутатора 17 поступает на вход 70 сумматора-гычитателя /.
Такиti образом, сдвигатели 12 и 11 сдвигают информацию на j разрядов вправо, а сдвигатель 10 — íà j разря-. дов влево. Старший (знаковый) разряд операнда 0 по входу 52 поступает в блок 1 9 управления, вырабатывающий знак алгебраического суммирования для сумматоров-вычитателей 5-7, которые производят действия согласно рекуррентным соотношениям (5) и результаты z, u3 и О„по синхросигналу с выхода 21 записываются в регистры 1-3 соответственно.
В i-м такте работы устройства регистр 4 находится в состоянии k(i < k) и сдвигатели 12 и 11 пропускают операнды, сдвинутыми вправо на k + j разрядов, а блок 13 памяти констант выдает по адресу k + j константу
2 " arctg 2 "1 . Сумматоры-вычитатели 5-7 производят действие .согласно алгоритму (5), результаты
z, сд и (), записываются в к+э к+ к+ регистры 1-3 соответственно, а в регистр 4 записывается значение k +
После того как состояние регистра 4 достигает или превышает значение кода по входу 86 схемы 114 вырабатывается сигнал сравнения и запрещает дальнейшую работу устройства. При этом в регистрах 1 и 2 оказываются записанными результаты z k sin% и и>„= k cosg. Учет коэффициента деформации вектора k в полученных соотношениях может быть проведен с по1348829
12 мощью выполнения операции деления и получения функции tgV .
Блок управления работает следующим образом.
Схема, собранная на элементах 90, 5
91, 93, 94, 103, 104 и 110, предназначена для инверсии знакового разряда регистра 3 в операциях деления и вычисления функции log„x. В начале выполнения операции при записИ в регистры 1-3 исходных данных инвертируется знаковый разряд операнда, записываемого в регистр 3. При этом старший (знаковый) разряд записываемого в регистр 3 операнда подается на вход
87 блока 19 управления и с него на первый вход элемента ИСКЛЮЧАКМЦЕЕ ИЛИ
90, на второй вход которого с входа
84 кода операции в операциях деления и логарифмирования подается ноль, а в остальных операциях — единица. На выходе элемента НЕ 93 образуется инвертированное значение знакового разряда входного числа, которое при дей- 25 ствии на входе 20 сигнала установки проходит через элементы 103 и 110 на вход 115 знакового разряда регистра
3. Аналогично производится учет знака величины с)„ на элементах 91, 94, gp
104 и 110. В этом случае инвертируется знаковый разряд числа, получаемого на входе 88 сумматора-вычитателя 7 в процессе выполнения этих операций. В остальных операциях инверсии
35 знакового разряда не будет, так как на вторых входах элементов 90 и 91 будет единица, находящаяся на входе 84 °
Элементы ИСКЛЮЧАК(ЦЕЕ ИЛИ 92 и НЕ
95 служат для формирования знака величины сд, с помощью знакового разряда регистра 3, поступающего на вход
52, а знак,)„ поступает через выход
23 на второй управляющий вход блока
13 памяти и на первый вход сумматора-вычитателя 6, Схема 114 сравнения и элемент
ИЛИ 109 служат для остановки работы устройства, после того как индекс ите- 50 раций k хранящийся в регистре 4 и поступающий из него на вход 78, достигает или превышает код, соответствует максимальному значению индекса итераций и заданный по входу 86.
Остальные элементы блока 19 управления (97-102, 105-108 и 111-113) служат для выработки сигналов управления коммутаторами 15-18 (вход 26 и выходы 27-30) сигналов управления сложением-вычитанием сумматоров-вычитателей 5, 7 (выходы 24, 25) и сигнала управления для блока 13 памяти в зависимости от кода операции,установленного на входах 84, 85 и 26.
Ф о р м у л а и з о б р е т е н и я
Устройство для вычисления функции, содержащее три регистра, три сумматора-вычитателя, два сдвигателя, четыре коммутатора, блок памяти нормализованных итерационных констант, блок памяти величины пропускаемых итера) ций,причем выходы первого и второго регистров соединены с входами первых операндов соответственно первого и второго сумматоров-вычитателей, выходы второго и третьего сумматороввычитателей соединены с первыми информационными входами соответственно второго и третьего регистров, выход первого регистра и выход блока памяти нормализованных итерационных констант соединены соответственно с первым и вторым информационными входами первого коммутатора, выходы старших разрядов третьего регистра соединены с адресными входами блока памяти величины пропускаемых итераций, выход первого регистра соединен с первым информационным входом второго коммутатора, выход блока памяти величины пропускаемых итераций соединен с входом величины сдвига первого сдвигателя, выход второго регистра соединен с первым информационным входом третьего коммутатора, второй информационный вход которого соединен с выходом блока памяти нормализованных итерационных констант, третий информационный вход третьего коммутатора соединен с выходом второго сдвигателя, информационный вход которого соединен с выходом второго коммутатора, входы первого и второго операндов третьего сумматора-вычитателя соединены с выходами соответственно. третьего коммутатора и первого сдвигателя, о т л и ч а— ю щ е е с я тем, что, с целью повышения быстродействия за счет уменьшения числа итераций, в него дополнительно введены два сумматора, четвертый регистр и блок управления, причем выход первого сумматора-вычитателя соединен с первым информаци1348829
14 онным входом первого регистра, первый, второй и третий входы начальной установки данных устройства соединены с вторыми информационными входами соответственно первого, второго и третьего регистров, выход третьего регистра соединен с вторым информационным входом второго коммутатора и с информационным входом первого сдвигателя, выход первого коммутатора соединен с информационным входом третьего сдвигателя, выходы третьего и второго сдвигателей соединены с входами второго операнда соответственно первого и второго сумматоров-вычитателей, выход блока памяти величины пропускаемых итераций соединен с входами первых слагаемых первого и второго сумматоров, вход второго слагаемого первого сумматора
10 соединен с выходом четвертого регистра, информационный вход которого соединен с выходом первого сумматора, выход четвертого регистра соединен со 25 сдвигом на один разряд в сторону старших разрядов с входом второго слагаемого второго сумматора, выход первого сумматора соединен с входом величины сдвига третьего сдвигателя 30 и первым информационным входом четвертого коммутатора, второй и третий инфорМационные входы которого с.оединены соответственно с выходом второго сумматора и выходом четвертого . регистра, старший разряд из группы третьего входа начальной установки данных устройства и выходы старших разрядов третьего регистра и третьего сумматора-вычитателя соединены с 40 группой входов анализа знаков итерационных переменных блока управления, вход запуска и тактовый вход устройства соединены с одноименными входами блока управления, группа входов кода 4 операции устройства соединена с одноименной группой входов блока управления, вход числа итераций устройства соединен с одноименным входом блока управления, выход первого сумматора gp соединен с первым разрядом адресного входа блока памяти нормализованных итерационных констант и входом признака окончания итерации блока управления, первый выход блока управления соединен с синхронизирующими входами первого, второго и третьего регистров, второй выход блока управления соединен с вторым разрядом адресного входа блока памяти нормализованных итерационных констант, третий выход блока управления соединен с третьим разрядом адресного входа блока памяти итерационных констант и управляющим входом второго сумматора-вычитателя, четвертый и пятый выходы блока управления соединены с управляющими входами соответственно первого и третьего сумматоров-вычитателей, третий вход группы входов кода операции блока управления и шестой выход блока управления соединены с управляющими входами первого коммутатора, управляющий вход второго коммутатора соединен с седьмым вы— ходом блока управления, восьмой и девятый выходы блока управления соединены с управляющими входами третьего и четвертого коммутаторов, десятый выход блока. управления соединен с входом старшего разряда третьего регистра, вход начальной установки блока управления соединен с входами сброса первого, второго, третьего регистров и четвертого регистров, приI чем блок управления содержит три элемента ИСКЛЮЧАКЩЕЕ ИЛИ, четыре элемента НЕ, одиннадцать элементов N, элемент И-НЕ, пять элементов ИЛИ и схему сравнения, входы первого и второго операндов схемы сравнения соединены соответственно с входами признака окончания итерации и числа итераций блока управления, выход схемы сравнения соединен с первым входом первого элемента ИЛИ, второй вход которого соединен с тактовым входом блока управления, выход первого элемента ИЛИ соединен с первым выходом блока управления, первые входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ с первого по третий, элементов И с первого по четвертый и элемента И-НЕ соединены с первым входом группы входов кода операции блока управления, второй вход которой соединен с вторыми инверсными входами первого и второго элементов .
И, вторым входом элемента И-HE и с первыми входами пятого и шестого элементов И, третий вход группы входов кода операции соецинен с вторыми входами третьего и четвертого элементов
И, вторые входы элементов ИСКЛЮЧАК1ЦЕЕ
ИЛИ с первого по третий соединены соответственно с первым, третьим и вторым входами группы входов анализа знаков итерационных переменных
16
1348829
20 гз г7
84 гв
7в ве
89 блока управления, выходы первого и второго элементов ИСКЛЮЧАКФЦЕЕ ИЛИ соединены через соответственно первый и второй элементы HE с первыми входами соответственно седьмого и восьмо5 го элементов И, второй вход седьмого элемента И и второй инверсный вход восьмого элемента И соединены с входом запуска блока управления, выходы седьмого и восьмого элементов И соединены соответственно с первым и вторым входами второго элемента ИЛИ, выход которого соединен с десятым выходом блока управления, выход"Tpe be- 15 го элемента ИСКЛЮЧАКП(ЕЕ ИЛИ соединен с входом третьего элемента HE и с первыми входами девятого и десятого элементов И, выход третьего элемента
HF соединен с третьим выходом блока управления, с первым входом одиннадцатого и вторым входом пятого элементов И, выход первого элемента И соединен с первым входом третьего элемента ИЛИ, вторым входом девятого элемента И и шестым выходом блока управления, выход девятого элемента И соединен с первым входом четвертого элемента ИЛИ, второй и третий входы которого соединены с выходами соответственно пятого и второго элементов И, выход четвертого элемента ИЛИ соединен с четвертым выходом блока управления, выход элемента И-НЕ соединен с вторым входом одиннадцатого элемента И, выход которого соединен с первым входом пятого элемента ИЛИ, второй и третий входы которого соединены с выходами соответственно десятого и шестого элементов И, выход пятого элемента ИЛИ соединен с пятым выходом блока управления, выход третьего элемента И соединен с вторым входом третьего элемента ИЛИ,с вторым входом десятого элемента И и с восьмым выходом блока управления, выход третьего элемента ИЛИ соединен с вторым выходом блока управления, выход четвертого элемента И соединен с вторым входом шестого элемента И и с девятым выходом блока управления и через четвертый элемент НŠ— с седьмым выходом блока управления.