Устройство для умножения чисел в модулярной системе счисления
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и предназначено для использования в быстродействующих арифметических устройствах с плаваю ( 1 щей запятой, функционирующих в модулярном коде. Целью изобретения является расширение области применения за счет умножения чисел, представленных в модулярном коде с плавающей запятой. Поставленная цель достигается тем, что устройство для умножения чисел в модулярной системе счисления, содержащее вспомогательные регистры 8 и 12, блок 11 модульных умножите г,- лей, блок 14 деления на константу, блок 16 вычисления интервального индекса числа, блоки 17 и 19 суммирования вычетов по модулям и сумматор 20 по модулю, содержит блок 13 масштабирования чисел, сумматор 10 порядков, вычитатель 9 порядка, элементы 15, 22 и 24 задержки, блок 18 вычисления интервального индекса, схему 21 сравнения с константой и блок 23 мультиплексоров с соответствующими связями. 1 ил. (Л со а 00 00 00
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСНИ Х
РЕСПУБЛИК
А1 (!9) (И) (51) 4 С 06 F 7/72
2CF"
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ
К А BTOPCKOMY СВИ4ЕТЕЛЬСТВУ (21) 4084277/24-24 (22) 02.07.86 (46) 23.01.88. Бюл. Ф 3 (71) Научно-исследовательский институт прикладных физических проблем им.A,Н.Севченко (72) В ° M.Aìåðáàåâ, A.À.Êîëÿäà, М.Ю.Селянинов и A.Ф..Чернявский (53) 681.3(088.8) (56) Авторское свидетельство СССР
М 1140114, кл. С 06 F 7/72, 1983.
Авторское свидетельство СССР
Ф 579617, кл. G 06 F 7/72, 1976.
Авторское свидетельство СССР
Ф 1244665, кл. G 06 F 7/72, 1984. (54) УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ ЧИСЕЛ
В МОЛУЛЯРНОЙ СИСТЕМЕ СЧИСЛЕНИЯ (57) Изобретение относится к вычислительной технике и предназначено для использования в быстродействующих арифметических устройствах с плавающей запятой, функционирукицих в модулярном коде. Целью изобретения является расширение области применения за счет умножения чисел, представленных в модулярном коде с плавающей запятой. Поставленная цель достигается тем, что устройство для умножения чисел в модулярной системе счисления, содержащее вспомогательные регистры
8 и 12, блок 11 модульных умножите лей, блок 14 деления на константу, блок 16 вычисления интервального индекса числа, блоки 17 и 19 суммирования вычетов по модулям и сумматор 20 по модулю, содержит блок 13 масштабирования чисел, сумматор 10 порядков, с ф вычитатель 9 порядка, элементы 15, 22 и 24 задержки, блок 18 вычисления интервального индекса, схему 21 сравнения с константой и блок 23 мультип- С лексоров с соответствующими связями.
1 ил.
1 136
Изобретение относится к вычислительной технике и предназначено для использования в арифметических устрой ствах с плавающей запятой, функционирующих в модулярной системе счисления.
Цель изобретения — расширение об,ласти применения за счет умножения чисел, представленных в модулярном коде с плавающей запятой, На чертеже представлена структурная схема устройства для умножения чисел в модулярной системе счисления.
Устройство содержит входы 1 и 2 мантисс первого и второго сомножителей устройства, входы 3 и 4 порядков первого и второго сомножителей устройства, выход 5 мантиссы произведения устройства, выход 6 порядка произведения устройства, выход 7 признака переполнения устройства, первый вспомогательный регистр 8, вычитатель
9 порядка, сумматор 10 порядков, блок
11 модульных умножителей, второй вспомогательный регистр 12, блок 13 масштабирования чисел, блок 14 деления на константу, первый элемент 15 задержки, первый блок 16 вычисления интервального индекса числа, блок 17 суммирования вычетов по (1-1)-му модулю, второй блок 18 вычисления интервального индекса числа, блок 19 суммирования вычетов по 1-му модулю, сумматор 20 по модулю, схему 21 сравнения с константой, второй элемент
22 задержки, блок 23 мультиплексоров, третий элемент 24 задержки.
Блок 13 масштабирования чисел (реализован как в известном устройстве) осуществляет за Т„=(Т+3) такта деление входного числа АЕ D, заданного модулярным кодом на константу M где
D= (- Р-Me-„...,рМе-, -17е — диапазон изменения чисел; МЕ, = P m °; р — фикт! сиров анное натуральное число, выбираемое из условия тп 2р+1-2; m<. °,m„ система попарно простых модулей, m„ 2p+k-2.
Результатом указанной операции л является модулярный код числа А являющегося оценкой дроби А/М, Т
=Jlopzk(.
Блок 14 деления на константу может быть реализован íà k-1 постоянных запомитталцих устройствах, в память
-го ттз которых по адресу Х. эаписыm me осе
+ — — / (1)
1г МЕ- тцЕ /птЕ и имеет конвейерную структуру.
Блок 17 суммирования вычетов имеет
Те каскадную конвейерную структуру и осуществляет сложение за ТЕ =)lo8zlf
2р тактов (1-1) вычетов по модулю тцЕ< с формированием числа переполнений.
Блок 17 суммирования вычетов на своем входе формирует величину (2) где т, е < =/оС, М е, ./ m;, М; g, -М,,/m;.
30 Второй элемент 22 задержки осуще ствляет задержку на (Те +2) тактов и представляет собой цепочку из (ТЕ+2) последовательно соединенных регистров.
35 Блок 16 вычисления интервального индекса полностью аналогичен блбКУ
18 вычисления интервального индекса числа и за Те тактов находит машинный интервальный индекс I(A) числа.
40 Блок 19 суммирования вычетов осуществляет сложение эа Те тактов (1-1) вычетов по модулю me без формирования числа переполнений. Блок 19 суммирования вычетов на своем выходе форми45 рует величину е,=1 (3) и имеет Те каскадную конвейерную
50 стРуктуру.
Сумматор 20 по модулю является сумматором табличного типа, реализован с помощью постоянного запоминающего устройства и вычисляет величину
1= /I МЕ, +Х/тпЕ по входным Х и I где I, если Т P
I-m в противном случае
Первый элемент 15 задержки осуществлЯет залержку на (Т+ТЕ +5) тактов.
8878 2 вается константа Y =/Х,/ me/m
Х,, У; 6(0,1,...,ш, -1) 1=19... 91-1у
Блок 18 вычисления интервального индекса числа служит для определения по входному модулярному коду (<х,, ...,оСЕ) числа А, где e
1О фоРмуле
Р /М,,, Ы,/m, I (А) = + з 1
Третий элемент 24 задержки осуществляет задержку на Т тактов и пред ставляет собой цепочку из Т последо1 вательно соединенных регистров.
Схема 2 1 сравнения с константой реализуется на основе постоянного запоминающего устройства, к выходу которого подключен двухтактный элемент задержки и формирует по величинам Т и Х значение
1, е сли 1+Хе t-p-1, р-1)
О, в противном случае
Вычитатель 9 порядка реализуется на основе постоянного запоминающего устройства, в память которого по адресу 12 +21 записывается набор констант с O,Q>, где еслибы =1, — 1, в противном случае
1, еслибы (q j
О, в противном случае
Устройство осуществляет умножение чисел a= f P(a), 4 (а) и В = jP (P ), >(L)), представленных в форме с плавающей запятой, где р (а) =А/И р и !(Ь)=В/ М вЂ” мантиссы, а и (а), 4 (6) — порядки операндов а и 6 соответственно, -q c 4 (a), 4 (5) Т;
А,B F- D.
Модули системы счисления выбираются таким образом, чтобы произведение любых двух чисел из диапазона D не выходило за пределы диапазона мо4. дулярной системы счисления D где
j7 . е ° 11 1)
Мк ъ Р2- И2
Условие нормализации в рассматриваемой модулярной системе счисления для чисел а и 5 имеет вид
-р-1 N(A), N(B) р-1, (6) где N(A) и A(B) — неточные интервальные номера чисел А и В, удовлетворя; ющие следующим соотношениям:
N(A) =I(A)+p(A);
N(e ) =Z (B ) + j(e), где ? (А), Т(B) — интервальные индексы, а р (A) и р (Ь) — неточные ранги соответственно чисел А и В.
Если неточный интервальный номер л
N (C) числа С, являющегося оценкой л дроби, С «А В-S/È =АВ/М, выходит за пределы интервала (-р-1, р-1), то число С ф n (S — основание характеристики, S=m<). В этом случае дробь
С /М, где С =А ° В/М является нормализованной и, следовательно, представляет собой мантиссу результата, в противном случае в качестве маутис368878 4 сы результата принимается дробь С/Мр
При этом в первом случае порядок ре) зультата определяется соотношением
1(с)=Q(a)+g(g) а ВО Втором — 4(c)=
=4(а)+1(Ь) — 1.
Рассмотрим, как работает устройство для умножения чисел в модулярной системе счисления.
10 На первом такте работы модулярные коды (Ы,,...,ec„) числителя А мантиссы
p(a) и (P...,.,/3„) числителя В мантиссы /Ь(Ь), 4, =(A)m,, f3; =(p)m со входов 1 и 2 устройства подаются со15 отвеТственно на первый и второч входы блока 11 модульных умножителей, который получает модулярный код (II,,..., „) произведения C=A В, записываюшийся во вспомогательный регистр 8.
20 Одновременно с этим двоичные колы порядков 1(а) первого операнда и 4 (ь) второго операнда с входов 3 и 4 устройства соответственно поступают на первый и второй входы сумматора 10
25 порядка, который определяет величину (с)= (а)+)(6), передающуюся в первый элемент 15 задержки.
На втором такте работы модулярный код числа С с выхода вспомогательного
30 регистра 8 подается на вход блока 13 масштабирования чисел, который по истечении (Т+4)-го такта работы устройства на своем выходе формирует модул Ф лярный код величины С = С/М, (g,, 35 Itp ), передающейся во второй элемент 22 задержки.
На (T+5)-м такте работы первые 1
I и остатков модул.—.рного кода числа С
40 передаются на вход блока 18 вычисления интервального индекса числа, а первые (1-1) остатков модулярного л кода числа С передаются на вход блока
17 суммирования вычетов.
45 Блок 18 вычисления интервального индекса числа и блок 17 суммирования вычетов в течение очередных Т такВ тов, считая текущий, вычисляют соотл л л ветственно величины I(C) и р, (С)
50 (формулы (1) и (2), Кроме этого, на (T+5)-м такте модулярный код числа С передается в блок 14 деления на константу, который на своем выходе формирует остатки числа С по модулям
Ю 4 A
55 ($» f Ð- It g+» g„), которые поступают на вход третьего элемента
24 э аде ржки.
На (Т+6)-м такте работы остатки
Ю Ф л (It,, „) передаются на вход
1368878
55 блока 16 вычисления интервального л1 индекса числа, а набор остатков (g,, Ф, ) передается на вход блока
19 суммирования вычетов, которые в течение очередных Т тактов, считая текущий, вычисляют соответственно величины Т(С ) и tI (формулы (1) и (3).
На (Т+Т +5) -м такте работы вели- 10
II чины Z(C) с выхода блока 18 вычисления интервального индекса числа и л (С) с выхода блока 17 суммирования вычетов поступают на входы схемы 21 сравнения с константой, 15
На (Т+Т +6)-м такте работы вели0 чины Т(С ) с выхода блока 16 вычислеА р, ния интервального индекса и Р с выхода блока 19 суммирования вычетов поступают соответственно на первый 20 и второй входы сумматора 20 по модулю. Сумматор 20 по модулю определяет
А
1-й остаток числа С вЂ”, который совместно со значением с выхода элемента 24 задержки поступает на вход 25 вспомогательного регистра 12, где будет сформирован модулярный код (j,,...,g,) числа С
На заключительном (Т +Т +7)-м такте работы устройства величина Q 30 с выхода схемы 21 сравнения с константой поступает на управляющий вход блока 23 мультиплексоров, на первый и второй информационные входы которого поступают соответственно л ) величины С и С . Одновременно Q поступает на вход заема вычитателя 9 порядка, на информационный вход которого с выхода первого элемента 15 задержки поступает величина 4 (с). 40
В случае, если g=O на выходе 5 мантиссы произведения и выходе 6 порядка произведения устройства будут получены соответственно величины С и1(с)-1, а в случае, если О=1, вели- 45 чины С и 4(с) . С выхода переполнения вычитателя 9 порядка на выход 7 устройства будет считан признак переполнения И (формула (5) .
Иэ приведенного описания видно, что выполнение одной операции в устройстве для умножения чисел в модулярной системе счисления занимает (Т+Т +7) тактов, при этом пропускная способность устройства составляет одну операцию умножения в один такт, Формула и э о б р е т е н и я
Устройство для умножения чисел в модулярной системе счисления, содержащее два вспомогательных регистра, блок модульных умножителей, блок деления на константу, первый блок вычисления интервального индекса числа, блок суммирования вычетов по (1-1)-му модулю, блок суммирования вычетов по
1-му модулю и сумматор по модулю (1 — целое число, 1 1<К, К вЂ” количество модулей системы счисления), причем входы мантисс первого и второго сомножителей устройства соединены соответственно с входами первого и второго сомножителей блока модульных умножителей, выход произведения которого соединен с входом первого вспомогательного регистра, входы первого блока вычисления интервального индекса числа и блока суммирования вычетов по 1-му модулю объединены, выходы первого блока вычисления интервального индекса и блока суммирования вычетов по 1-му модулю соединены соответственно с входами первого и второго слагаемых сумматора по модулю, о т— личающеес я тем,что,с целью расширения области применения за счет умножения чисел, представленных в модулярном коде с плавающей запятой, оно содержит блок масштабирования чисел, сумматор порядков, вычитатель порядка, три элемента задержки, второй блок вычисления интервального индекса числа, схему сравнения с константой и блок мультиплексоров, причем входы порядков первого и второго сомножителей устройства соединены соответственно с входами первого и второго слагаемых сумматоров порядков, выход которого подключен к входу первого элемента задержки, выход первого вспомогательного регистра соединен с входом блока масштабирования чисел, выход которого соединен с входами второго элемента задержки, второго блока вычисления интервального индекса числа, блока суммирования вычетов по (1-1)-му модулю и блока деления на константу, выход которого соединен с входами блока суммирования вычетов по 1-му модулю и третьего элемента задержки, выходы разрядов второго блока вычисления интервального индекса числа и блока суммирования вычетов по (1-1)— му модулю соединены соответственно с входами разрядов схемы сравнения с константой, выход которой соединен с управляющим входом блока мультиплек—
1368878
Составитель А. Клюев
Техред М.Ходанич Корректор, О. Кравцова
Редактор Е.Папп
Заказ 297/51 Тираж 704 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-полиграфическое предприятие, г, Ужгород, ул. Проектная, 4 соров и с входом заема вычитателя порядка, информационный вход которого соединен с выходом первого элемента задержки, выход третьего элемента за- . держки и выходы разрядов сумматора по модулю соединены соответственно с входами разрядов второго вспомогательного регистра, выходы второго элемента задержки и второго вспомо- щ гательного регистра соединены соответственно с первым и вторым информационными входами блока мультиплексоров, выход которого является выходом мантиссы произведения устройства, выходы разности и переполнения вычитателя порядка являются соответственно выходом порядка произведения и выходом признака переполнения устройства.