RU2148270C1 - Устройство умножения - Google Patents

Устройство умножения Download PDF

Info

Publication number
RU2148270C1
RU2148270C1 RU98110224A RU98110224A RU2148270C1 RU 2148270 C1 RU2148270 C1 RU 2148270C1 RU 98110224 A RU98110224 A RU 98110224A RU 98110224 A RU98110224 A RU 98110224A RU 2148270 C1 RU2148270 C1 RU 2148270C1
Authority
RU
Russia
Prior art keywords
input
inputs
output
block
outputs
Prior art date
Application number
RU98110224A
Other languages
English (en)
Other versions
RU98110224A (ru
Original Assignee
Научно-исследовательский институт многопроцессорных вычислительных систем при Таганрогском государственном радиотехническом университете
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Научно-исследовательский институт многопроцессорных вычислительных систем при Таганрогском государственном радиотехническом университете filed Critical Научно-исследовательский институт многопроцессорных вычислительных систем при Таганрогском государственном радиотехническом университете
Priority to RU98110224A priority Critical patent/RU2148270C1/ru
Publication of RU98110224A publication Critical patent/RU98110224A/ru
Application granted granted Critical
Publication of RU2148270C1 publication Critical patent/RU2148270C1/ru

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

Изобретение относится к вычислительной технике, а именно к цифровой обработке сигналов и данных и решению задач математической физики, и может найти применение в конвейерных потоковых машинах и многопроцессорных вычислительных машинах. Технический результат, достигаемый при осуществлении изобретения, состоит в том, что быстродействие устройства при обработке n-разрядных чисел, представленных в четверичной знакоразрядной системе счисления, составляет n/2. Числа представлены в двоичной избыточной системе счисления. Точность вычислений устройства в случае ненормализованных чисел составляет n/2 + 2. При использовании изобретения исключается ложное переполнение порядка результата при его коррекции за счет его предварительного преобразования, расширяются функциональные возможности, заключающиеся в корректном, стандартном формировании результата. Для достижения указанного технического результата в устройство умножения, содержащее сумматор 14 комбинационный, регистр 12 первого множимого, регистр 15 частичных произведений, введены входной блок 3, блок 5 порядков, формирователь 6 цифр результата, блок 7 результата, два умножителя 13 и 16, регистр 17 второго множимого, распределитель тактовых импульсов 18. 1 з.п.ф-лы, 8 ил., 1 табл.

Description

Изобретение относится к области вычислительной техники, а именно цифровой обработке сигналов и данных и решению задач математической физики, и может найти применение в конвейерных" потоковых машинах и многопроцессорных вычислительных системах.
Известно устройство умножения двоичных чисел, (см. а. с. СССР N 631919, опубликованное в 1978 г. в бюллетене N 41, заявленное в 1976 г.), представленных последовательным кодом, содержащее сумматор, регистры множимого и множителя, элементы И.
Недостатком этого устройства является низкое быстродействие и дополнительные затраты оборудования, т.к. разрядная сетка сумматора имеет 2n разрядов.
Причина недостатков - умножение двоичных чисел последовательным кодом младшими разрядами вперед.
Известно устройство для умножения (см. Каган Б.М., Каневский М.Н. Цифровые вычислительные машины и системы. М.,"Энергия", 1977, с. 342-344), содержащее регистры множимого и множителя, комбинационный сумматор частичных произведений, регистр частичных произведений, схемы управления передачи множимого.
Недостатком этого устройства являются дополнительные затраты оборудования за счет удлинения на n разрядов сумматора и регистра частичных произведений, малый диапазон изменения чисел.
Причина недостатков - прием и хранение чисел, представленных параллельным кодом, фиксированная запятая.
Наиболее близким к предполагаемому изобретению является устройство для умножения (см. а.с. СССР N 868751, опубликованное 30.09.81 г. в официальном бюллетене N 36, заявленного 18.10.79 г., заявитель - ТРТИ, авторы Каляев А. В. и др. ), содержащее преобразователь позиционного кода в знакоразрядный, комбинационный сумматор частичных произведений, регистр множимого, триггер управления, элементы задержки, элементы И- ИЛИ, регистр порядка множимого, блок элементов ИЛИ, регистр частичных произведений. Множитель поступает последовательно на вход устройства, а множимое накапливается в регистре. Результат выдается в виде нескорректированного порядка, сигнала коррекции порядка и мантиссы произведения, нормализованной на один разряд влево, вправо.
Недостатком этого устройства является низкое быстродействие, невысокая точность, выдача результата в нестандартном виде.
Причина недостатков - использование двоичной избыточной системы счисления, нормализация на один разряд, отсутствие блока результата.
Задача, на решение которой направлено заявляемое изобретение, заключается в увеличении быстродействия, повышении точности вычислений, расширении функциональных возможностей, исключении ложного переполнения результата.
Технический результат, достигаемый при осуществлении изобретения, состоит в том, что быстродействие устройства при обработке n-разрядных чисел, представленных в четверичной знакоразрядной системе счисления, составляет n/2, что в два раза выше быстродействия прототипа, где числа представлены в двоичной избыточной системе счисления, точность вычислений устройства в случае ненормализованных чисел составляет n/2+2, где n -разрядность операндов, что, по сравнению с прототипом, точнее на один разряд, исключается ложное переполнение порядка результата при его коррекции за счет его предварительного преобразования, расширяются функциональные возможности, заключающиеся в корректном, стандартном формировании результата.
Для достижения указанного технического результата в устройство умножения, содержащее сумматор комбинационный, регистр первого множимого, регистр частичных произведений, причем выходы комбинационного сумматора соединены соответственно с входами регистра частичных произведений, выходы которого соединены со сдвигом на один разряд в сторону старших разрядов с вторыми входами сумматора комбинационного, введены входной блок, блок порядков, блок результата, регистр второго множимого, два умножителя, формирователь цифр результата, распределитель тактовых импульсов, причем, первый и второй информационные входы устройства соединены с первым и вторым информационными входами входного блока, управляющий вход которого соединен с первым управляющим входом устройства, первый и второй выходы входного блока соединены с первым и вторым входами блока порядков, третий вход которого соединен с первым выходом формирователя цифр результата, второй выход которого соединен с первым входом блока результата, второй и третий входы которого соединены с первым и вторым соответственно выходами блока порядков, управляющий вход которого соединен с вторым управляющим входом устройства, третий управляющий вход которого соединен с управляющим входом блока результата, первый и второй выходы которого являются выходами соответственно результата и отказа устройства, третий выход входного блока соединен с первыми входами регистра первого множимого, выходы которого соединены с первыми входами первого умножителя, вторые входы которого соединены с четвертым выходом входного блока, выходы первого умножителя соединены соответственно с первыми входами сумматора комбинационного, третьи входы которого соединены с выходами второго умножителя, первые входы которого соединены с выходами регистра второго множимого, вторые входы второго умножителя соединены с пятым выходом входного блока, шестой выход которого соединен с первыми входами регистра второго множимого, вторые входы, которого соединены с вторыми входами регистра первого множимого и выходами распределителя тактовых импульсов, вход которого соединен с четвертым управляющим входом устройства, пятый управляющий вход устройства соединен с управляющим входом формирователя цифр результата, первый вход которого соединен с выходом переполнения сумматора комбинационного, второй вход формирователя цифр результата соединен с выходами двух старших разрядов регистра частичных произведений.
Блок порядков содержит три сумматора, четыре элемента задержки, причем, первый и второй входы блока соединены с входом первого сумматора, первый выход которого соединен с входом первого элемента задержки, выход которого соединен с первым входом второго сумматора, второй вход которого соединен с вторым выходом первого сумматора, выход второго сумматора соединен с входом второго элемента задержки, выход которого соединен с входом третьего элемента задержки, выход которого соединен с входом четвертого элемента задержки, выход которого соединен с первым входом третьего сумматора, второй вход которого соединен с третьим входом блока, управляющий вход которого соединен с управлящим входом третьего сумматора, выходы которого являются выходами блока.
Причинно-следственная связь между совокупностью существенных признаков заявляемого изобретения и достигаемым техническим результатом заключается в следующем: введение в суммирующее устройство новых элементов, таких, как формирователь цифр результата, блок порядков, блок результата, входной блок, соединенных соответствующим образом, позволяет повысить быстродействие вычислений в два раза за счет использования четверичной избыточной системы счисления для представления чисел, увеличить точность вычислений в случае ненормализованных чисел по сравнению с прототипом на один разряд за счет нормализации мантиссы результата на два разряда, исключить ложное переполнение порядка за счет преобразования порядка результата таким образом, что коррекция порядка производится в младшем разряде без распространения переноса в старшие разряды. Это позволяет выдавать порядок результата сразу по вычислении на выход без задержки, а перенос в младшем разряде при коррекции порядка использовать как положительное или отрицательное переполнения. Введение дополнительного сумматора в блок порядков позволяет корректно формировать результат вычислений в виде нормализованной мантиссы и скорректированного порядка, что отсутствует в прототипе, введение блока результата позволяет сформировать сигнал "ОТКАЗ" по положительному переполнению φ+ порядка, а по отрицательному переполнению φ- - скорректировать результат как машинный нуль (Z = -3 -3 -3 -3,0).
Изобретение поясняется чертежами, где на фиг.1 представлена блок-схема устройства умножения, на фиг.2 - блок порядков, на фиг. 3 - формирователь цифр результата, на фиг. 4 - блок результата, на фиг.5 - входной блок, на фиг. 6 - преобразователь, на фиг.7 - фрагмент умножителя, на фиг.8 - разряд сумматора комбинационного.
Устройство содержит входы 1 и 2 поступления знакоразрядных кодов операндов Х и Y, входной блок 3, первый управляющий вход 4 устройства - вход сигнала выделения порядка и мантиссы входных операндов, блок 5 порядков, формирователь 6 цифр результата, блок 7 результата, второй управляющий вход 8 устройства - вход поступления временного сигнала коррекции порядка, третий управляющий вход 9 устройства - вход сигнала формирования порядка и мантиссы результата, выход 10 результата устройства, выход 11 отказа устройства, второй управляющий регистр 12 первого множимого, первый умножитель 13, сумматор 14 комбинационный, регистр 15 частичных произведений, второй умножитель 16, регистр 17 второго множимого, распределитель тактовых импульсов 18, четвертый управляющий вход 19 устройства - вход пуска распределителя тактовых импульсов, пятый управляющий вход 20 устройства - вход поступления временного сигнала нормализации мантиссы результата.
Блок 5 порядков (фиг.2) содержит сумматор 21, элемент задержки 22, сумматор 23, элементы 24, 25, 26 задержки, сумматор 27.
Формирователь 6 цифр результата (фиг. 3) содержит сумматор 28, элементы И 29-30, элемент ИЛИ 31, триггеры 32 и 33 управления нормализацией, элементы И 34-37, элементы И 38-40, элемент 41 задержки, элемент ИЛИ 42, элемент 43 задержки, элемент ИЛИ 44, элемент 45 задержки, элемент ИЛИ 46.
Блок 7 результата (фиг.4) содержит элементы 22 И-ИЛИ 47, И-ИЛИ 48, И 49, ИЛИ 50.
Входной блок 3 (фиг.5) содержит два элемента И 51 и И 52 и два преобразователя 53 и 54.
Преобразователь 53(54) (фиг.б) содержит три элемента И 55, 56, 57, два элемента равнозначности 58, 59, триггер 60, элемент неравнозначности 61, три элемента И 62, 63, 64, три элемента 65, 66, 67 задержки, элемент И 68, три элемента 69, 70, 71 задержки, элемент ИЛИ 72.
Фрагмент первого умножителя 13 и второго умножителя 16 (фиг. 7) содержит два разряда умножителя, один из которых содержит четыре элемента 22 И-ИЛИ 73-74, 77-78, а второй - четыре элемента 22 И-ИЛИ 75-76,79-80.
Разряд сумматора 14 комбинационного (фиг.8) содержит четыре элементарных сумматора 81 - 84.
Входы 1 и 2 поступления операндов (X и Y) устройства подключены к входам входного блока 3 (фиг. 1), управляющий вход которого соединен с первым управляющим входом 4 устройства, первый и второй выходы входного блока 3 соединены соответственно с первым и вторым входами блока 5 порядков, третий вход которого соединен с первым выходом формирователя 6 цифр результата, второй выход которого соединен с первым входом блока 7 результата, второй и третий входы которого соединены с первым и вторым соответственно выходами блока 5 порядков, управляющий вход которого соединен с вторым управляющим входом 8 устройства, третий управляющий вход 9 которого соединен с управляющим входом блока 7 результата, первый и второй выходы которого являются выходами устройства соответственно 10 - результата и 11-отказа устройства, третий выход входного блока 3 соединен с первыми входами регистра 12 первого множимого, выходы которого соединены с первыми входами первого умножителя 13, вторые входы которого соединены с четвертым выходом входного блока 3, выходы первого умножителя 13 соединены соответственно с первыми входами сумматора 14 комбинационного, вторые входы которого соединены со сдвигом на один разряд в сторону старших разрядов с выходами регистра 15 частичных произведений, входы которого соединены соответственно с выходами сумматора 14 комбинационного, третьи входы которого соединены с выходами второго умножителя 16, первые входы которого соединены с выходами регистра 17 второго множимого, вторые входы второго умножителя 16 соединены с пятым выходом входного блока 3, шестой выход которого соединен с первыми входами регистра 17 второго множимого, вторые входы которого соединены с вторыми входами регистра 12 первого множимого и выходами распределителя 18 тактовых импульсов, вход которого соединен с четвертым управляющим входом 19 устройства, пятый управляющий вход 20 которого соединен с управляющим входом формирователя 6 цифр результата, первый вход которого соединен с выходом переполнения сумматора 14 комбинационного, второй вход формирователя 6 цифр результата соединен с выходами двух старших разрядов регистра 15 частичных произведений.
Первый и второй входы блока 5 порядков (фиг.2) соединены с входами первого сумматора 21, первый выход которого соединен с входом первого элемента 22 задержки, выход которого соединен с первым входом второго сумматора 23, второй вход которого соединен с вторым выходом первого сумматора 21, выход второго сумматора 23 соединен с входом второго элемента 24 задержки, выход которого соединен с входом третьего элемента 25 задержки, выход которого соединен с входом четвертого элемента 26 задержки, выход которого соединен с первым входом третьего сумматора 27, второй вход которого соединен с третьим входом блока, управляющий вход 8 которого соединен с управляющим входом третьего сумматора 27, выходы которого являются выходами блока.
Первый и второй входы формирователя 6 цифр результата (фиг.3) соединены соответственно с первым и вторым входами сумматора 28, первый выход которого соединен с первыми входами первого и второго элементов И 29-30, выход первого элемента И 29 соединен с первым входом первого элемента ИЛИ 31, выход которого соединен с информационным входом первого триггера 32 управления нормализацией, информационный вход второго триггера 33 управления нормализацией соединен с выходом второго элемента И 30, второй выход сумматора 28 соединен с первыми входами с третьего по шестой элементов И 34-37, прямой выход первого триггера 32 управления нормализацией соединен с вторыми входами третьего и шестого элементов И 34, И 37, инверсный выход первого триггера 32 соединен с вторыми входами четвертого и пятого элементов И 35, И 36, прямой выход второго триггера 33 управления нормализацией соединен с третьими входами пятого и шестого элементов И 36, И 37 и вторым входом первого элемента И 29, инверсный выход второго триггера 33 соединен с третьими входами третьего и четвертого элементов И 34, И 35 и вторым входом второго элемента И 30, управляющий вход 20 формирователя соединен с третьими входами первого и второго элементов И 29-30, вторым входом первого элемента ИЛИ 31 и первыми входами с седьмого по девятый элементов И 38-40, выход третьего элемента И 34 соединен с вторым входом седьмого элемента И 38 и входом первого элемента 41 задержки нормализации, выход которого соединен с первым входом второго элемента ИЛИ 42, второй вход которого соединен с выходом четвертого элемента И 35, выход второго элемента ИЛИ 42 соединен с входом второго элемента 43 задержки нормализации, выход которого соединен с первым входом третьего элемента ИЛИ 44, второй вход которого соединен с вторым входом восьмого элемента И 39 и выходом пятого элемента И 36, выход третьего элемента ИЛИ 44 соединен с входом третьего элемента 45 задержки нормализации, выход которого соединен с первым входом четвертого элемента ИЛИ 46, второй вход которого соединен с вторым входом девятого элемента И 40 и выходом шестого элемента И 37, выход четвертого элемента ИЛИ 46 является первым выходом формирователя, вторым выходом которого являются выходы с седьмого по девятый элементов И 38-40.
Первый и второй входы блока 7 результата (фиг.4) соединены с первым и вторым входами соответственно элемента И- ИЛИ 47, третий вход блока соединен с третьим и четвертым входами элемента И-ИЛИ 47, первым входом элемента И-ИЛИ 48, первым входом элемента И 49, управляющий вход блока 9 соединен с вторым и третьим входами элемента И-ИЛИ 48 и вторым входом элемента И 49, первый и второй входы элемента ИЛИ 50 соединены с выходами соответственно элементов И-ИЛИ 47 и И-ИЛИ 48, выходы элементов И 49 и ИЛИ 50 являются выходами блока.
Первый информационный вход входного блока 3 (фиг.5), являющийся первым информационным входом устройства, соединен с первыми входами первого элемента И 51 и первого преобразователя 53, второй информационный вход блока, являющийся вторым информационным входом блока, соединен с первыми входами второго элемента И 52 и второго преобразователя 54, вторые входы обоих элементов И 51 и 52 и обоих преобразователей 53 и 54 соединены с управляющим входом блока, выходы первого и второго элементов И 51 и 52 соединены соответственно с первым и вторым выходами блока, первый и второй выходы преобразователя 53 являются соответственно третьим и четвертым выходами блока, пятым и шестым выходами которого являются соответственно первый и второй выходы преобразователя 54.
Информационный вход 1 (2) преобразователя 53 (54) (фиг. 6) соединен с входами первого и третьего элементов И 55, И 57, первыми входами второго элемента И 56 и элементами равнозначности И 58, И 59, второй вход второго элемента И 56 соединен с вторым входом преобразователя и первыми входами с четвертого по шестой элементов И 62-64, выход первого элемента И 55 соединен с вторым входом четвертого элемента И 62 и первым входом элемента неравнозначности 61, второй вход которого соединен с третьим входом четвертого элемента И 62 и выходом триггера 6, информационный вход которого соединен с выходом первого элемента равнозначности 58, второй вход которого соединен с выходом второго элемента И 56, выход третьего элемента И 57 соединен с вторым входом второго элемента равнозначности 59, выход которого соединен с вторым входом шестого элемента И 64, второй вход пятого элемента И 63 соединен с выходом элемента неравнозначности 61, выходы с четвертого по шестой элементов И 62-64 соединены с входами соответственное первого по третий элементов 65-67 задержки, выходы которых являются выходом Вi преобразователя 54, входы седьмого элемента И 68 соединены с выходами второго и третьего элементов 66, 67 задержки, выход которого соединен с входом пятого элемента 70 задержки, входы четвертого и шестого элементов 69 и 71 задержки соединены с выходами соответственно первого и третьего элементов 65 и 67 задержки, выходы с четвертого по шестой элементов 69-71 задержки являются выходом Ai-1 преобразователя 53, входы элемента ИЛИ 72 соединены с выходами четвертого и пятого элементов 69,70 задержки, вторым выходом ai-1(bi-1) преобразователя являются выходы элементов 69,71 и элемента ИЛИ 72.
Первые входы Aj-1(Bj-1), Aj(Bj) разрядов умножителя 13(16) (фиг.7) соединены соответственно: вход Aj-1(Bj-1) с первыми и вторыми входами первого и второго элементов И-ИЛИ 73 и 74, а вход Aj(Bj) -с первыми и вторыми входами элементов, И-ИЛИ 75 и 76, второй вход умножителя, bi-1(ai-1) соединен с третьими и четвертыми входами элементов И-ИЛИ 73-76, с первыми и вторыми входами элементов И-ИЛИ 77-80, выход элемента И-ИЛИ 73 соединен с третьими входами элементов И-ИЛИ 77 и 78, выход элемента И-ИЛИ 74 соединен с четвертыми входами элементов И-ИЛИ 78 и 79, выход элемента И-ИЛИ 75 соединен с третьими входами элементов И-ИЛИ 79-80, выход элемента И-ИЛИ 76 соединен с четвертыми входами элемента И-ИЛИ 80 и аналогичным элементом последующего разряда умножителя, четвертый вход элемента И-ИЛИ 77 соединен с выходом элемента предыдущего разряда умножителя, выходы элементов И-ИЛИ 77-78 являются выходами (j-1)-го разряда умножителя, а выходы элементов И-ИЛИ 79-80 - выходы j -то разряда умножителя.
Первый вход разряда сумматора 14 комбинационного S ± 0 ,S ± 1 (фиг. 8) соединен с первым и вторым входами элементарного сумматора 84 и с первым и вторым входами элементарного сумматора 83, второй вход разряда сумматора α1, α0 соединен с первыми входами соответственно элементарных сумматоров 81, 82, вторые входы которых соединены с выходами суммы соответствующих элементарных сумматоров 83 и 84, третьи входы которых соединены соответственно с третьим входом β1, β0 разряда сумматора 14 комбинационного, третий вход элементарного сумматора 81 соединен с выходом переноса П+ элементарного сумматора 84, а третий вход элементарного сумматора 82 соединен аналогично с выходом переноса П+ предыдущего младшего разряда сумматора комбинационного, выходы переносов П+ и П+ соответственно элементарных сумматоров 81 и 83 поступают на входы последующего старшего разряда сумматора комбинационного, первым выходом S ± 1 разряда сумматора 14 комбинационного являются выход суммы элементарного сумматора 81 и выход переноса П+ элементарного сумматора 82, вторым выходом S ± 0 является выход суммы элементарного сумматора 82 и выход переноса П+ аналогичного элементарного сумматора предыдущего младшего разряда сумматора 14 комбинационного.
Устройство умножения предназначено для выполнения операции умножения над двумя операндами Х и Y, поступающими синхронно цифра за цифрой старшими разрядами вперед. Операнды представлены в знакоразрядном, коде, в котором ведется обработка в операционном устройстве.
Для примера рассмотрим кодировку цифр четверичного знакоразрядного кода и маркера числа, представленную в таблице.
Как видно из данных таблицы, для представления каждой цифры требуются три двоичных разряда. Это обусловливает последовательную передачу числовой информации в четверичном знакоразрядном коде по трем проводам. Каждая цифра может быть представлена как Xn(X2X1X0), где Х2 - старший бит цифры.
Устройство обрабатывает данные с плавающей запятой в двадцатиразрядном формате четверичного кода. Это эквивалентно сорока двоичным разрядам. Формат информации включает разряд маркера MP, четыре разряда порядка П и пятнадцать разрядов мантиссы М, принимающих значения из таблицы. Формат информации имеет вид, представленный в конце описания (см. схему 1).
Цифры операндов X(X1X2X3. ..Xn) и результата Z(Z1Z2Z3...Zn) для четверичного кода принимают значения {0 ±1±2±3}.
Устройство умножения выполняет операцию умножения
Z=X • Y
над операндами в формате с плавающей запятой
где ПX ПY ПZ - порядки операндов X, Y и результата Z,
MX MY MZ - мантиссы операндов X, Y и результата Z.
Операнды, как показано выше, представлены в четверичном избыточном коде и поступают на входы по трем шинам.
С целью упрощения умножения и сокращения оборудования необходимо __ преобразовать мантиссы сомножителей XiYi ∈ {0, ±1, ±2, ±3} в сомножители aibi ∈ {0, ±1, ±2}.
В этом случае алгоритм умножения мантисс будет представлен следующим образом:
S= a • b,
ai•bi = ai-1•bi-1+▽(ai•bi),
▽(ai•bi) = (ai-1•bi+bi•ai)•4-i,
Si = Si-1•4+▽(ai•bi),
где aibi - сомножители, накопленные на момент времени i,
Si -произведение на момент времени i,
▽(aibi) - - приращение произведения в момент времени i.
Предложенный алгоритм реализуется на устройстве следующим образом: на информационные входы 1 и 2 устройства (см. фиг. 1) поступают операнды Х и Y последовательными кодами цифра за цифрой, проходя через входной блок 3 (фиг. 5), по сигналу 4 осуществляется выделение порядков
nX(ny) = X(Y) • nn
и преобразование мантисс
Figure 00000002

где ПП - потенциал выделения порядка,
a(b) - преобразованные мантиссы,
f - функция преобразования.
Преобразование мантисс сомножителей выполняется в преобразователях 53, 54 (фиг.6) в соответствии с алгоритмом:
Qi.=4Qi-1*+[Xi]+sign(Xi+1),
Q * i = Qi-2Qi-1, Q * i ∈ {0,-1}, i = 0, 1, 2,... 15,
Figure 00000003

где Xi - цифры числа, представленные дополнительным кодом,
[Xi] - значения кода цифры Xi, без знакового разряда ([Xi]≥0),
Figure 00000004
знаковый разряд кода цифры Xi+1.
Преобразованные сомножители ai-1,bi-1 в прямом коде поступают на умножители, а старшие цифры сомножителей Ai-1i, с выходов входного блока 3 в дополнительном коде записываются в регистры 12 и 17 соответственно первого и второго множимых. В результате в регистрах множимых по окончании приема фиксируются 8 старших цифр дополнительных кодов сомножителей Аi-1,Bi, имеющих каждый формат, представленный в конце описания (см. схему 2).
Первый и второй умножители 13 и 16 (фиг.7) формируют частичные произведения:
αi-1 = Ai-1•bi,
βi-1 = Bi•ai.
где αi-1 и βi-1 - частичные произведения соответственно первого и второго умножителей. Логические выражения для построения разрядов умножителей имеют следующий вид:
Figure 00000005

Figure 00000006

Figure 00000007

Figure 00000008

где
αj = (α 1 j , α 0 j ), Aj= (A 1 j ,A 0 j ),bj= (b -2 i ,b +2 i ),(b -1 i ,b +1 i );
βj = (β 1 j , β 0 j ), Bj= (e 1 j ,e 0 j ),ai-1= (a -2 i-1 ,a +2 i-1 ),(a +1 i-1 ,a -1 i-1 ));
где 1 - индекс старшего разряда,
0-индекс младшего разряда.
Далее частичные произведения обоих умножителей поступают на сумматор 14 комбинационный (фиг. 8), на котором осуществляется сложение трех слагаемых:
Si = 4•Si-1ii.
где S' - текущее значение суммы.
Третье слагаемое 4 • Si-1 поступает из регистра 15 частичных произведений со сдвигом на разряд в сторону старших разрядов. Разряд сумматора построен в соответствии со следующими логическими выражениями:
Figure 00000009

Figure 00000010

где R = β++S++S-.
Figure 00000011

Figure 00000012

Текущие значения суммы запоминаются на регистре 15 частичных произведений.
Цифры произведения формируются на формирователе 6 цифр результата (фиг. 3) в каждом такте по значениям S0, снимаемых со старших двух разрядов регистра 15 частичных произведений, и переноса П, поступающего с сумматора 14 комбинационного, причем, S0 ∈ {0, ±1, ±2}, n ∈ {0, ±1}.
На сумматоре 28 вычисляются цифры результата:
M = S0 + П,
а на элементах задержки 41, 43, 45 осуществляется нормализация мантиссы на два разряда в сторону старших разрядов и на один разряд в сторону младших разрядов, причем, сигналы управления нормализацией вырабатываются на триггерах управления 32, 33 в соответствии со следующими логическими выражениями: если цифра переполнения мантиссы M0 ≠ 0 в момент времени Tφ, то триггер 32 устанавливается в единичное состояние, иначе оба триггера - в "0".
φ + M := Mм ≠ 0•Tφ, при этом φ - M = 0.
В момент времени φ-1 , если M0 = 0 и M1 = 0, то триггер 33 устанавливается в "1".
Figure 00000013
при этом φ + M = 0.
В момент времени φ-2 , если M0 = 0, M1= 0 M2 = 0, то:
φ + M := (Mм = 0)•Tφ-2QTφ- при этом φ - M = 1.
Далее в соответствии с выработанными выше сигналами управления и нормализации φ + M и φ - M выполняется нормализация мантиссы произведения в следующем порядке:
- если
Figure 00000014
то мантисса с выхода сумматора 28 поступает через элемент И 34 через три элемента задержки на выход блока - это нормализация на один разряд в сторону старших разрядов;
- если
Figure 00000015
то мантисса нормализована и задерживается на двух элементах задержки, если
Figure 00000016
то мантисса не нормализована на один разряд и задерживается на одном элементе задержки;
- если φ + M •φ - M , мантисса не нормализована на два разряда и подается на выход без задержки.
В результате нормализации вырабатываются сигналы коррекции порядка на элементах И 38-39:
Figure 00000017

Figure 00000018

(Δn = -2), если φ + M •φ - M .
С выходов формирователя нормализованная мантисса поступает на вход блока 7 результата, а сигналы коррекции порядка поступают на вход блока 5 порядков (фиг. 2), на другие входы которого поступают порядки сомножителей ПX, ПY с выходов входного блока 3.
Вычисление цифр порядка произведения осуществляется по следующему алгоритму:
S1 = ПX + ПY;
Figure 00000019

Ci* = Si - 4Pi;
Ci-1 = Ci-1* + Pi; i = 0,1,2,3;
где Si - текущая сумма цифр порядков сомножителей,
Pi - перенос текущей суммы цифр порядков,
i* - промежуточная сумма цифр,
i-1 - цифры суммы порядков, т.е. цифры порядка результата.
Как видно из алгоритма, отрицательный перенос Рi, четвертой цифры порядка результата формируется таким образом, что текущая сумма четвертой цифры порядка формируется так, что S3 = (ПX3 + ПY3) ≤ -2 с целью обеспечения нормализации мантиссы произведения на два разряда в сторону старших разрядов и чтобы при коррекции порядка произведения на величину ΔП = -2 не возникало ложного переполнения.
На сумматорах 21 и 23 в соответствии с алгоритмом осуществляется формирование цифр порядка результата и преобразование порядка с целью "исключения в младшем разряде цифр -3,-3,-2. Цифра 3 в последнем разряде возможна лишь в том cлучае, когда все предыдущие цифры равны 3, а -3 или - 2 - когда все предыдущие цифры равны -3. Далее до получения результатов нормализации мантиссы порядок результата задерживается на элементах 24- 26 задержки, после чего на сумматоре 27 выполняется коррекция порядка результата. Как указывалось выше, сигнал коррекции порядка ΔП может принимать значения ΔП = {1, -1, -2, 0}.
При прохождении младшего разряда через сумматор 27 на второй вход подается величина ΔП и подсуммируется к порядку. При этом может возникнуть перенос из младшего разряда порядка, который фиксируется как положительное переполнение, и возникает при порядке, равном 3333 и ΔП = 1 , в результате нормализации мантиссы на один разряд вправо.
Отрицательный перенос может возникнуть, когда порядок равен -3-3-3-3 и ΔП = -1∨-2 или когда порядок равен -3-3-3-2 и ΔП = -2
Положительный перенос фиксируется как положительное φ+ переполнение, по которому вырабатывается в блоке 7 результата сигнал "ОТКАЗ".
Отрицательный перенос фиксируется как отрицательное переполнение порядка φ- , по которому результат вычислений формируется как машинный нуль, у которого порядок П = -3 -3 -3-3, а мантисса М = 0.
С выхода блока 5 порядков скорректированный порядок и сигнал φ± поступают на входы блока 7 результата (фиг.4), сюда же
поступает и нормализованная мантисса с выхода формирователя 6 цифр результата. В блоке 7 результата формируется результат, содержащий маркер, вырабатываемый по управляющему сигналу 9, порядок результата ПZ, представляющий собой либо скорректированный порядок ПH, поступающий с блока 5 порядков, при условии отсутствия сигнала φ- , либо при наличии сигнала φ- по управляющему сигналу 92 формируется машинный нуль, при котором ПZ = -3 -3-3-3, мантисса результата МZ есть либо нормализованная мантисса МH при отсутствии сигнала φ- , либо нуль при наличии сигнала φ- .
Сигнал "ОТКАЗ" формируется по управляющему сигналу 93 при наличии сигнала φ+ .
Блоки заявляемого устройства умножения могут быть реализованы средствами вычислительной техники отечественного производства. Так, например, в качестве сумматоров в составе блока порядков, формирователя и сумматора в составе сумматора 14 комбинационного может быть использован сумматор, описанный в А. С. N 1663610 от 15.03.91, опубликованный в БИ N 26 от 15.04.91. Остальные блоки устройства, в том числе и сумматоры, могут быть реализованы на элементах серий 1531, 1533, 1554. В качестве элемента задержки используются D-триггеры.
Введение в устройство новых элементов, соединенных соответствующим образом, позволяет, во-первых, повысить быстродействие. Устройство умножения обрабатывает данные с плавающей запятой в n-разрядном формате и в случае применения четверичного кода для представления чисел это эквивалентно 2n - двоичным разрядам. Следовательно, по сравнению с прототипом быстродействие повышается в два раза.
Во-вторых, введение дополнительной задержки при нормализации результата в формирователе цифр позволяет осуществить нормализацию результата на два разряда в отличие от прототипа, где нормализация выполняется на один разряд.
Это способствует увеличению точности вычислений в случае ненормализованных чисел на один четверичный разряд по сравнению с прототипом.
Например, результат представляет собой после вычислений ненормализованное число:
Figure 00000020

В результате нормализации на два разряда в сторону старших разрядов результат будет следующий:
Figure 00000021

В-третьих, введение блока порядков позволяет исключить ложное переполнение порядка за счет преобразования порядка, что позволяет расширить диапазон обрабатываемых чисел.
Порядок обрабатываемых чисел преобразуется таким образом, что в младшем разряде порядка результата отсутствуют цифры 3,-3,-2. Цифра 3 в младшем разряде порядка возможна в случае, когда все предыдущие цифры 3, а цифры -3 и-2 в младшем разряде могут быть, когда все предыдущие цифры (-3). Такое преобразование порядка позволяет выполнить коррекцию в младшем разряде, не заботясь о том, что при коррекции может возникнуть перенос из младшего разряда. Это позволяет выдавать порядок результата на выход устройства сразу по мере его вычисления без дополнительной задержки, а в случае переноса из младшего разряда он фиксируется как переполнение порядка. Причем, положительный перенос возникает при порядке результата, равном +3,+3,+3,+3, и коррекции порядка ΔП = 1 . А отрицательный перенос может возникнуть в двух случаях, когда порядок равен -3,-3,-3,-3 и ΔП = -1∨-2 и когда порядок равен -3, -3, -3, -2 и ΔП = -2 . Ложное положительное переполнение φ+ при отсутствии преобразования может возникнуть при любом порядке, в котором младшая цифра равна 3, например, ПZ = - 3003 и ΔП = 1 , хотя порядок далеко не максимальный. А отрицательное переполнение φ- возникает при порядке, например, ПZ = 300-3 и П = -1∨-2 и т.д. При отсутствии преобразования этого можно избежать, если задержать порядок результата, что существенно снижает быстродействие.
В-четвертых, введение дополнительного сумматора в блок порядков и блок результата позволяет корректно сформировать результат вычислений в виде нормализованной мантиссы и скорректированного порядка по результату нормализованной мантиссы:
Пн = П+ΔП.
Кроме того, по положительному φ+ и отрицательному φ- переполнениям порядка в блоке результата формируется либо сигнал "ОТКАЗ" при наличии φ+ , по которому производится останов вычислений вследствие переполнения разрядной сетки, либо по φ- сформировать результат вычислений как машинный нуль, равный:
Z=-3-3-3-3,0.

Claims (2)

1. Устройство умножения, содержащее сумматор комбинационный, регистр первого множимого, регистр частичных произведений, причем, выходы сумматора комбинационного соединены соответственно с входами регистра частичных произведений, выходы которого соединены со сдвигом на один разряд в сторону старших разрядов с вторыми входами сумматора комбинационного, отличающееся тем, что устройство дополнительно содержит входной блок, блок порядков, блок результата, регистр второго множимого, два умножителя, формирователь цифр результата, распределитель тактовых импульсов, причем первый и второй информационные входы устройства соединены с первым и вторым информационными входами входного блока, управляющий вход которого соединен с первым управляющим входом устройства, первый и второй выходы входного блока соединены с первым и вторым входами блока порядков, третий вход которого соединен с первым выходом формирователя цифр результата, второй выход которого соединен с первым входом блока результата, второй и третий входы которого соединены с первым и вторым соответственно выходами блока порядков, управляющий вход которого соединен с вторым управляющим входом устройства, третий управляющий вход которого соединен с управляющим входом блока результата, первый и второй выходы которого являются выходами соответственно результата и отказа устройства, третий выход входного блока соединен с первыми входами регистра первого множимого, выходы которого соединены с первыми входами первого умножителя, вторые входы которого соединены с четвертым выходом входного блока, выходы первого умножителя соединены соответственно с первыми входами сумматора комбинационного, третьи входы которого соединены с выходами второго умножителя, вторые входы которого соединены с выходами регистра второго множимого, вторые входы второго умножителя соединены с пятым выходом входного блока, шестой выход которого соединен с первыми входами регистра второго множимого, вторые входы которого соединены с вторыми входами регистра первого множимого и выходами распределителя тактовых импульсов, вход которого соединен с четвертым управляющим входом устройства, пятый управляющий вход устройства соединен с управляющим входом формирователя цифр результата, первый вход которого соединен с выходом переполнения сумматора комбинационного, второй вход формирователя цифр результата соединен с выходами двух старших разрядов регистра частичных произведений.
2. Устройство по п.1, отличающееся тем, что блок порядков содержит три сумматора, четыре элемента задержки, причем, первый и второй входы блока соединены с входами первого сумматора, первый выход которого соединен с входом первого элемента задержки, выход которого соединен с первым входом второго сумматора, второй вход которого соединен с вторым выходом первого сумматора, выход второго сумматора соединен с входом второго элемента задержки, выход которого соединен с входом третьего элемента задержки, выход которого соединен с входом четвертого элемента задержки, выход которого соединен с первым входом третьего сумматора, второй вход которого соединен с третьим входом блока, управляющий вход которого соединен с управляющим входом третьего сумматора, выходы которого являются выходами блока.
RU98110224A 1998-05-27 1998-05-27 Устройство умножения RU2148270C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU98110224A RU2148270C1 (ru) 1998-05-27 1998-05-27 Устройство умножения

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU98110224A RU2148270C1 (ru) 1998-05-27 1998-05-27 Устройство умножения

Publications (2)

Publication Number Publication Date
RU98110224A RU98110224A (ru) 2000-03-20
RU2148270C1 true RU2148270C1 (ru) 2000-04-27

Family

ID=20206579

Family Applications (1)

Application Number Title Priority Date Filing Date
RU98110224A RU2148270C1 (ru) 1998-05-27 1998-05-27 Устройство умножения

Country Status (1)

Country Link
RU (1) RU2148270C1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2467377C1 (ru) * 2011-04-19 2012-11-20 ОАО "Концерн "Моринформсистема-Агат" Способ и устройство умножения чисел в коде "1 из 4"
RU2475812C1 (ru) * 2011-12-28 2013-02-20 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский ядерный университет "МИФИ" (НИЯУ МИФИ) Устройство для умножения чисел в коде "1 из 4"

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Каган Б.М. и др. Цифровые вычислительные машины и системы. - М.: Энергия, 1977, с.342-344. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2467377C1 (ru) * 2011-04-19 2012-11-20 ОАО "Концерн "Моринформсистема-Агат" Способ и устройство умножения чисел в коде "1 из 4"
RU2475812C1 (ru) * 2011-12-28 2013-02-20 Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Национальный исследовательский ядерный университет "МИФИ" (НИЯУ МИФИ) Устройство для умножения чисел в коде "1 из 4"

Similar Documents

Publication Publication Date Title
Erle et al. Decimal multiplication with efficient partial product generation
US4168530A (en) Multiplication circuit using column compression
JP3244506B2 (ja) 小型乗算器
Farooqui et al. General data-path organization of a MAC unit for VLSI implementation of DSP processors
US11816448B2 (en) Compressing like-magnitude partial products in multiply accumulation
Srinivas et al. A fast VLSI adder architecture
US20110264719A1 (en) High radix digital multiplier
US5751619A (en) Recurrent adrithmetical computation using carry-save arithmetic
EP0375947A2 (en) Two's complement multiplication with a sign magnitude multiplier
US3535502A (en) Multiple input binary adder
JP7292297B2 (ja) 確率的丸めロジック
US4683548A (en) Binary MOS ripple-carry parallel adder/subtracter and adder/subtracter stage suitable therefor
KR100305530B1 (ko) 배정밀도.단정밀도.내적연산 및 복소승산이 가능한 승산기
US20040078401A1 (en) Bias-free rounding in digital signal processing
US5278782A (en) Square root operation device
EP0428942B1 (en) Plural-bit recoding multiplier
US3842250A (en) Circuit for implementing rounding in add/subtract logic networks
US7219117B2 (en) Methods and systems for computing floating-point intervals
RU2148270C1 (ru) Устройство умножения
RU2717915C1 (ru) Вычислительное устройство
US8219604B2 (en) System and method for providing a double adder for decimal floating point operations
US5181186A (en) TPC computers
US7051062B2 (en) Apparatus and method for adding multiple-bit binary-strings
RU2797164C1 (ru) Конвейерный умножитель по модулю
Seidel High-Performance Multiplication Modulo 2 n–3