Устройство для вычисления экспоненциальной функции в модулярной системе счисления
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и ориентировано к использование в быстродействующих специализированных вычислителях, системах цифровой обработки сигналов и в различных системах автоматики для вычисления экспоненциальной функции в модулярной системе счисления. Цель изобретения состоит в повьшении быстродействия. Поставленная цель достигается тем, что в устройство, содержащее входной регистр 5, счетчики 7, 8, блок 10 памяти для хранения констант, блок 11 мультиплексоров , регистр 12 сдвига, блок 15 модульных умножителей и блок 16 масштабирования , введены элементы задержки 9. 13. регистр 14 сдвига и блок 6 вычисления интервального индекса с соответствующтми связями. 2 ил. 2 S (Л
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
„„SU 131743
А1 (д 4 G 06 F 7/544, 7/72
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPblTHA
ОПИСАНИЕ ИЗОБРЕТЕНИЯ ц, К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
4 (21) 3995603/24-24 (22) 22.11.85 (46) 15.06.87. Бюл. Р 22 (71) Научно-исследовательский институт прикладных физических проблем им. А. Н. Севченко (72) А. А. Коляда, В. К. Кравцов, М. И. Селянинов и А. Ф. Чернявский (53) 681.3(088.8) (56) Авторское свидетельство СССР
У 798857, кл. С 06 F 7/544, 1977.
Авторское свидетельство СССР
У 1278839, кл. G 06 F 7/544, 7/72, 1985. (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ 3КСПОНЕНЦИАЛЬНОЙ ФУНКЦИИ В МОДУЛЯРНОЙ
СИСТЕМЕ СЧИСЛЕНИЯ (57) Изобретение относится к вычислительной технике и ориентировано н использование в быстродействующих специализированных вычислителях, системах цифровой обработки сигналов и в различных системах автоматики для вычисления зкспоненциальной функции в модулярной системе счисления.
Цель изобретения состоит в повьппении быстродействия. Поставленная цель достигается тем, что в устройство, содержащее входной регистр 5, счетчики 7, 8, блок 10 памяти для хранения констант, блок Il мультипЛексоров, регистр 12 сдвига, блок 15 модульных умножителей и блок 16 масштабирования, введены элементы задержки
9. 13. регистр 14 сдвига и блок 6 вычисления интервального индек— са с соответствующтми связями.
2 ил.
Блок вычисления интервального ин45 декса числа 6 по входному модулярному коду (a,, 4< ° ..() некоторого числа А осуществляет формирование вычета за Т тактов
k т(А) = La,(ы;) (-„с (с при i=1,2...k-1 при i = k
1 13174
Изобретение относится к вычислительной технике и ориентировано на использование в быстродействующих специализированных вычислителях, системах цифровой обработки сигналов и различных системах автоматики для вычисления экспоненциальной функции от аргументов, представленных в.модулярной системе счисления.
Целью изобретения является ловы- 1О шение быстродействия.
На фиг. 1 приведена структурная схема предлагаемого устройства для вычисления экспоненциальной функции в модулярной системе счисления; на фиг. 2 - схема блока вычисления интервального индекса (для М = 7, k— число модулей системы счисления).
Устройство для вычисления экспоненциальной функции в модулярной си- 20 стеме счисления (фиг. 1) содержит вход 1 аргумента, тактовый вход 2, установочный вход 3, вход 4 константы устройства, входной регистр 5, блок 6 вычисления интервального индекса числа, первый счетчик 7, второй счетчик 8, первый элемент 9 за держки, блок 10 памяти для хранения констант, блок 11 мультиплексоров, первый регистр 12 сдвига, второй элемент 1,3 задержки; второй регистр 14 сдвига, блок 15 модульных умножителей, блок 16 масштабирования чисел, выход 17 окончания формирования результата устройства, выход 18 резуль- 35 тата устройства и выход 19 начала формирования результата устройства.
Блок 6 вычисления интервального индекса числа (фиг. 2) содержит элементы 20 памяти, регистры 21 и сумматоры 22 по модулю.
Вход 1 аргумента устройства подключен к входу входного регистра 5, предназначенного для приема модулярного кода по попарно взаимно простым основаниям m m (,(d„... d ) исходного числа А из множества Р = 0,1..., р М, — 1 ;. 2;= 1А!,„; (i = 1,2...,,k), причем m„7, 2p + k-2, р — фиксирован50 ное натуральное число; Y. g, = ((ш,; через 1Х1 обозначен наименьший неотП\ рицательный вычет, Разрядность входного регистра 5 составляет (k — 1)Ъ 6НТ где Ь вЂ” pB3-5 рядность вычетов по наибольшему из модулей выбранной модулярной системы счисления. Информационный вход входного регистра 5 соединен с выходом
33 2 второго элемента 13 задержки. Выход группы из Ъ младших разрядов входного регистра 5 подключен к адресному входу блока 10 памяти для хранения констант. Выходы остальных (k-2) групп из д разрядов подключены к входу первого элемента 9 задержки.
Первый элемент 9 задержки представляет собой цепочку из Т-1 последовательно соединенных регистров, где Т j 1оя k f, через ) Х f обозначается наименьшее целое число не меньшее Х. Вход первого из регистров является входом первого элемента 9 задержки. Разрядность регистров, входящих в состав первого элемента 9 задержки, составляет (k-2)b бит. Выход последнего регистра первого элемента
9 задержки является его выходом.
Второй элемент 13 задержки представляет собой цепочку из четырех последовательно соединенных регистров, вход первого из которых является входом второго элемента 13 задержки.
Разрядность регистров, входящих в состав второго элемента 13 задержки, составляет (k-1)Ъ бит.
Входы первых (k-2).групп и вход старшей (k-1)-й группы из b разрядов первого регистра являются входом элемента 13 задержки.
Выход последнего регистра второго элемента 13 задержки является его, выходом. Вход разрешения выдачи кода последнего регистра второго элемента
l3 задержки является его входом разрешения выдачи кода.
Блок 6, вычисления интервального индекса числа имеет Т-каскадную конвейерную структуру. (; 1(= /Ы; М, „„ m; М;, „-M1,,/m, (2) 3 1317433 4
При k четном все, а при k нечет- него каскада является выходом блока ном все кроме последнего, элементы 6 вычисления интервального индекса
20 памяти преобразуют пары вычетов числа. являющиеся адресом, в Первый 7 и второй 8 счетчики яввычет (Н, (с ) + Б (о()/))„х 5 ляются счетчиками по модулю (Т+4) и
21
x(g = 1 -(И23, где () — целая часть). k соответственно.
При нечетном k последний элемент В ячейку блока 10 памяти для хра20 памяти преобразует вычет ),, кения констант с адресом Х + 2 зав являющийся адресом, в вь!чет писывается модулярный код числа Y
Э (B1,(41,) /), . Выход регистра 21 послед--10 определяемого соотношением
I (м-ехр (-гД (з) 1
) 1) 3с-1 XI))) ).1 при J 0,1...1 2; где Z.
m ..p
Х р пРи J = k 1 и 0 (Х (р °
) mg- Х при,1 = k 1 и Х,р, А - ), k-1 Т (А)
М ц
Тогда ехр(-а) = (0 exp (- ) ) х
Ы;, 1
1.= р -m;
7(А) х ехр (- )
Используя (3) получим:
k ехр (-а.) = Г1) ;., M
Хе 10,1,...,2 -1),,) = 0,1,..., k-1, через fX) обозначается ближайшее к
Х целое число, М вЂ” натуральное число, определяемое точностью вычисления и выбираемое из условия М (рМ> . Блок
2 k
11 мультиплексоров содержит,) ) 1оя„ш.(30 мультиплексоров °
Разрядность первого регистра 12 сдвига составляет Т+4 бит. Первый регистр 12 сдвига на каждом такте работы устройства выполняет сдвиг содержимого на один бит. Входом первого регистра 12 сдвига является установочный вход триггера младшего разряда, выходом первого регистра 12 сдви- 40 га является выход триггера старшего разряда.
Разрядность второго регистра 14 сдвига составляет T+5 бит. Второй регистр 14 сдвига на каждом такте 45 работы устройства выполняет сдвиг содержимого на один бит. Установочные входы триггера разрядов второго регистра 14 сдвига являются его информационном входом. 50
Инверсный выход триггера (Т+3)-ro разряда является первым выходом второго регистра 14 сдвига. Инверсный выход триггера (T+5)-ro разряда является вторым выходом второго регистра
14 сдвига.
Блок 15 модульных умножителей реализует операцию умножения над целыми числами по основаниям аистемы (операнды и результат представляются в модулярном коде).
Блок 16 масштабирования чисел осуществляет деление входного числа А, заданного модулярным кодом, на константу М.
Используется упрощенный вариант известного масштабирующего устройства конвейерного типа, быстродействие которого составляет Т+3 такта при 2 пропускной способности одна операция масштабирования в один такт. Используемый вариант устройства для масштабирования чисел ориентирован только на один масштаб, равный М.
В основу работы устройства для вычисления экспоненциальнбй функции в модулярной системе счисления положено следующее.
Представим аргумент а экспоненты в виде
5 13174
Устройство для вычисления экспоненциальной функции в модулярной системе счисления работает следующим образом.
По сигналу, подаваемому на установочный вход 3 устройства, происходит обнуление первого 7 и второго 8 счетчиков, а также первого регистра
12 сдвига, во все разряды второго регистра 14 сдвига записываются еди10 ницы, Сигналы, поступающие с первого и второго выходов второго регистра
14 сдвига, являются управляющими сигналами 6„ и д соответственно. На каждом такте работы устройства сигнал 6, подается на вход разрешения выдачи кода второго элемента 13 заI5 держки, а сигнал 4 — на управляющий вход блока 11 мультиплексоров. Если — О, то поступление ненулевой информации с выхода второго элемента
13 задержки на информационный вход входного регистра 5 запрещается с одновременной записью во входной регистр 5 через установочный вход модулярного кода (W...,,,Û,) числителя А значения аргумента, подаваемого
25 с входа 1 аргумента устройства. Если же Ь, = 1, то поступление информации во входной регистр 5 с входа 1 аргумента устройства запрещается с одновременной записью во входной регистр
5 через информационный вход информации с выхода второго элемента 13 задержки.
Содержимое Ы группы из b младших
35 разрядов входного регистра 5 подается на адресный вход блока 10 памяти для хранения констант, куда поступает 40 также содержимое j второго счетчика
8. Из блока 10 памяти для хранения констант считывается модулярный код очередной константы У. (см. (3)). !
Блок 15 модульных умножителей выпол- 45 няет операцию модульного умножения операндов, поступающих на его входы с вйходов блока 10 памяти для хранения констант и блока ll мультиплексоров соответственно. Если управляющий сигнал 6 = О, то на выход блока ll мультиплексоров с первого информационного входа проходит величина М, поступающая с входа 4 константы устройства. Если же 5<= 1, то на выход блока 11 мультиплексоров с второго информационного входа поступает информация с выхода блока 16 масштаби рования чисел. Модулярный код произ33 6 ведения с выхода блока 15 модульных умножителей поступает в блок 16 масштабирования чисел. По сигналу, поступающему с тактового входа 2 устройства на счетный вход первого счетчика 7, содержимое последнего увеличивается на единицу. В случае появления единичного сигнала на выходе переноса первого счетчика 7 содержимое второго счетчика 8 увеличивается на единицу. На информационном выходе второго счетчика 8 формируется часть адреса константы, записанной в блок
10 памяти для хранения констант, для очередного такта. Содержимое второго регистра 14 сдвига по сигналу, поступающему с тактового входа 2 устройства, сдвигается на один бит, в результате чего на первом и втором выходах второго регистра 14 сдвига формируются сигналы для очередного такта работы устройства.
В соответствии с изложенным в входной регистр 5 через первый его вход (, = О) с входа 1 аргумента устройства поступает модульный код (a(,,...с, ) числителя А аргумента, а модулярный код (c(,, ct ) подается на вход блока 6 вычисления интервального индекса числа. После этого начинается первый такт работы устройства.
На первом такте вычет о(, с выхода входного регистра 5 подается на адресный вход блока 10 памяти для хранения констант, куда поступает также содержимое второго счетчика 8. Из блока 10 памяти для хранения констант по адресу й„+ О - 2 считывается велив чина Y С выхода входного регистра
5 набор вычетов (Ы, с з... а(,) поступает на вход первого элемента 9 задержки.
На втором такте величина Y с выхода блока 10 памяти для хранения констант поступает на один вход блока 15 модульных умножителей, на другой вход которого с выхода блока 11 мультиплексоров (6 = О) поступает константа М, подаваемая на первый ин-. формационный вход блока 11 мультиплексоров с входа 4 константы устройства. Блок !5 модульных умножителей находит модулярный код произведения M У, который поступает н блок
16 масштабирования чисел, где со следующего такта начинается операция масштабирования числа М - о.
131743
По истечении Т-го такта работы устройства на выходе блока 6 вычисления интервального индекса числа форл мируется вычет 3(A), который на следующем такте записывается в старшую группу из Ь разрядов первого регистра второго элемента 13 задержки, в остальные k-2 группы из Ь разрядов которого с выхода первого элемента 9 задержки поступает выбор вычетов (d, 1О 3
На (T+4)-м такте управляющий сигнал,= 1, вследствие чего с выхода второго элемента 13 задержки в входной регистр 5 поступает набор выче- 15 тов .(„ ... 1... 7(А)). На выходе переноса первого счетчика 7 появляется единичный сигнал, вследствие чего содержимое второго счетчика 8 становится равным единице. 20
На (T+5)-м такте блок 16 масштабирования чисел на своем выходе формирует модулярный код величины Y
Вычет а с выхода входного регистра
5 подается на адресный вход блока 10
Оамяти для хранения констант, на вход которого поступает также содержимое второго счетчика 8. Из блока
10 памяти для хранения констант по адресу a(+ 1"2 считывается величина
Y . С второго выхода входного регист1 л ра 5 набор вычетов (с(з,... а „, Т(А)) поступает на вход первого элемента 9 задержки.
На (T+6)-м такте работы устройства величина У с выхода блока 10 памяти для хранения констант поступает на один вход блока 15 модульных умножителей, на другой вход которого 40 с выхода блока 11 мультиплексоров (4 = 1) подается величина У, по.ступающая на второй информационный вход блока 11 мультиплексоров с выхода блока 16 масштабирования чисел.
Блок 15 модульных умножителей находит модулярный код произведения У х х Y который поступает в блок 16 масштабирования чисел, где со следующего такта начинается операция масштабирования указанных чисел.
На следующих тактах работы устройства выполняются действия, аналогичные описанным вьппе. Pо окончании
К(7+4) тактов на выходе переноса второго счетчика 8 появляется единичный сигнал, поступающий на третий выход 19 устройства, что означает окончание вычисления значения экспо3 8 ненциальной функции от аргумента, которое снимается с выхода блока 16 масштабирования чисел на следующем такте.
Благодаря конвейерной структуре в предлагаемом устройстве одновременно может происходить вычисление экспоненциальной функции от T+4 аргументов. При этом появление единичного сигнала .на выходе 19 устройства означает начало появления на выходе 18 устройства вычисленных значений экспоненциальной функции и возможность начала вычислений для новых T+4 аргументов.
Появление единичного сигнала на выходе 17 устройства означает завершение вычисления значений экспоненциальной функции от T+4 аргументов.
При работе устройства в конвейер- ном режиме из расчета на одно функциональное значение быстродействие устройства составляет k тактов.
Формула изобретения
Устройство для вычисления экспоненциальной функции в модулярной системе счисления, содержащее входной регистр, блок памяти для хранения констант, первый регистр сдвига, первый и второй счетчики, блок мультиплексоров, блок модульных умножите-:. лей и блок масштабирования чисел, причем вход аргумента устройства соединен с установочным входом входного регистра, тактовый вход устройства соединен со счетным входом первого счетчика, вход обнуления которого соединен с входом обнуления второго счетчика, с входом обнуления первого регистра сдвига и с установочнЫм входом устройства, вход константы которого соединен с первым информационным входом блока мультиплексоров, выход которого соединен с входом первого сомножителя блока модульных умножителей, выход блока масштабирования является выходом результата устройства, информационный выход второго счетчика соединен с входами старших разрядов адреса блока памяти для хранения констант, выход первого счетчика соединен со счетным входом второго счетчика, о т л и ч а ю— щ е е с я тем, что, с целью повышения быстродействия, в него введены два элемента задержки, второй регистр сдвига и блок вычисления интервально1317433
Составитель А. Клюев
Редактор А. Маковская Техред )3.Kàäàð Корректор А. Обручар
Заказ 2425/44
Тираж 672 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д, 4/5
Гроиэводственно-полиграфическое предприятие, г, Проектная, 4 го индекса, причем вход аргумента устройства соединен с входом блока вычисления интервального индекса,, тактовый вход устройства соединен с входами разрешения сдвига первого и второго регистров сдвига, установочный вход устройства соединен с информационным входом второго регистра сдвига, выходы младших и старших разрядов входного регистра соединены соответственно с входами младших разрядов адреса блока памяти для хранения констант и с разрядным входом первого элемента задержки, выход которого и выход блока вычисления интервального индекса соединены соответственно c информационными входами мпадших и старших разрядов второго элемента задержки, выход которого соединен с информационным входом входного регистра, выход блока памяти для хранения. констант соединен с входом второго сомножителя блока модульных умножителей, выход которого соединен с входом блока масштабирования чисел, выход которого соединен с вторым информационным входом блока мультиплексоров, выход пе-:реноса второго счетчика является выходом начала формирования результата
10 устройства и соединен с информационным входом первого регистра сдвига, выход которого является выходом окончания формирования результата устройства, инверсные выходы (T+3)-го и
15 (T+5)-го разрядов второго регистра сдвига (T = 1 lop
20 управляющим входом блока мультиплексоров.