Файл: Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.04.2024

Просмотров: 286

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Регистр множителя и сумматор частичных произведе­ ний при этом должны иметь цепи сдвига вправо. Регистр множимого может не иметь цепей сдвига.

Последовательность действий на каждом шаге выпол­ нения умножения определяется младшим разрядом ре­ гистра множителя. Если в нем записана 1, то к сумме частичных произведений добавляется множимое и затем производится сдвиг вправо в регистрах множимого и частичных произведений. Если в младшем разряде ре­ гистра множителя записан 0, то производится сдвиг без выполнения сложения.

Поскольку по мере сдвига множителя вправо стар­ шие разряды регистра множителя освобождаются, он может быть использован для хранения младших разря­ дов произведения, поступающих из младшего разряда регистра частичных произведений по мере выполнения

умножения.

Для этого при выполнении сдвига младший разряд регистра частичных произведений соединяется со стар­ шим разрядом регистра множителя. После выполнения умножения старшие разряды произведений, младшие разряды — в регистре множителя.

При данном методе умножения все три регистра должны иметь одинаковую длину, равную количеству разрядов одного сомножителя. Этот метод умножения нашел наибольшее применение в вычислительных ма­ шинах.

2. Умножение начиная с младших разрядов множите ля при неподвижных частичных произведениях.

Регистр множителя при этом должен иметь цепи сдвига вправо, регистр множимого — цепи сдвига влево, а сумматор частичных произведений не содержит цепей сдвига.

Последовательность действий определяется, как и в первом варианте, младшим разрядом регистра мно­ жителя.

При этом методе выполнения умножения регистр множимого и сумматор частичных произведений долж­ ны иметь длину, вдвое большую, чем количество разря­ дов одного сомножителя. Несмотря на увеличение коли­ чества оборудования по сравнению с первым методом, этот метод никаких дополнительных преимуществ не да­ ет и потому применение его нецелесообразно.

ззо


3. Умножение начиная со старших разрядов множи­ теля при неподвижном множимом.

Регистр множителя и сумматор частичных произведе­ ний должны иметь цени сдвига влево. Регистр множимо­ го не имеет цепей сдвига.

Последовательность действий на каждом шаге вы­ полнения умножения определяется старшим разрядом регистра множителя.

При этом методе умножения сумматор частичных произведений должен иметь двойную длину. Можно сум­ матор частичных произведений выполнить одинарной длины, если для хранения старших разрядов использо­ вать регистр множителя, который освобождается, начи­ ная с младших разрядов в процессе выполнения умноже­ ния. При этом, однако, необходимо, чтобы регистр множителя имел схему переносов, соединенную со стар­ шим разрядом сумматора частичных произведений. Дан­ ный метод требует дополнительного по сравнению с пер­ вым методом оборудования (двойная длина сумматора частичных произведений или наличие цепей переноса в регистре множителя). Несмотря на это, он применяет­ ся в некоторых арифметических устройствах, так как позволяет без дополнительных цепей сдвига выполнять и деление.

Для выполнения операций деления в АУ, реализую­ щем первый метод выполнения умножения, необходимы дополнительные цепи сдвига влево в регистре множимого (частного) и в сумматоре частичных произведений (раз­ ностей) .

4. Умножение начиная со старших разрядов множите­ ля при неподвижных частичных произведениях.

Регистр множителя должен иметь цепи сдвига влево, регистр множимого — цепи сдвига вправо. Сумматор частичных произведений не имеет цепей сдвига. Последо­ вательность действий на каждом шаге умножения опре­ деляется старшим разрядом регистра множителя.

При этом методе выполнения умножения и регистр множимого и сумматор частичных произведений должны иметь двойную длину. Однако в тех случаях, когда про­ изведение может иметь одинарную длину, нет смысла удваивать длину регистра множимого и сумматора ча­ стичных произведений. Достаточно увеличить их длину на количество разрядов k, значительно меньшее, чем число разрядов множимого п. В [Л. 5] показано, что ко-

331


личество дополнительных разрядов k определяется усло­ вием

k > log2 (п k).

(5-1)

Вэтом случае применение данного метода умножения оказывается очень выгодным. Как и третий метод, он не требует дополнительных цепей сдвига для выполнения деления. Кроме того, так как частичные произведения остаются неподвижными в процессе выполнения умноже­ ния, этот метод позволяет легко совместить операции сложения и сдвига при умножении и делении.

Взависимости от способа организации умножения ре­ зультат может иметь одинарную или двойную длину.

Если в машине предусмотрена возможность работы с числами двойной длины, например, с помощью подпро­ грамм, то в результате умножения должны быть обра­ зованы как старшие, так и младшие разряды произ­ ведения.

В случае необходимости образования произведения двойной длины наиболее экономичным является первый из рассмотренных методов умножения, так как он позво­ ляет использовать все регистры одинарной длины.

Другие методы умножения в этом случае обычно не используются, так как для их реализации необходимо иметь сумматор или регистр множимого двойной длины, что значительно увеличивает затраты оборудования АЛУ.

Если в результате умножения достаточно иметь про­ изведение одинарной длины, то целесообразно использо­ вать либо первый, либо четвертый метод умножения. Первый метод требует введения дополнительных цепей сдвига для реализации деления, а при использовании четвертого метода необходимо удлинение сумматора. Выбор одного из этих методов умножения определяется соотношением затрат оборудования на реализацию цепей сдвига и дополнительных разрядов сумматора.

При образовании произведений одинарной длины простое отбрасывание младших разрядов вносит погреш­ ность, которая может накапливаться, так как произведе­ ние будет всегда вычисляться с недостатком. Поэтому для повышения точности вычислений часто производят округление результата умножения, благодаря чему ошибка становится знакопеременной.

332


Для округления произведения длина сумматора ча­ стичных произведений обычно увеличивается на один разряд. После образования произведения к этому допол­ нительному разряду прибавляется единица. Если допол­ нительный разряд произведения был равен 0, то произ­ ведение в основных разрядах сумматора получается с недостатком. Если дополнительный разряд был равен 1, то в результате переноса единицы из дополнительного разряда к основным разрядам сумматора добавляется единица и произведение получается с избытком. При этом максимальное значение ошибки произведения рав­ но половине единицы младшего разряда. Математичес­ кое ожидание ошибки при условии равенства вероятно­ стей нулей и единиц в каждом разряде отброшенной части произведения имеет нулевое значение.

5-6. МЕТОДЫ УСКОРЕНИЯ УМНОЖЕНИЯ

Методы ускорения умножения делятся на аппаратные и логические. Как те, так и другие требуют дополнитель­ ных затрат оборудования. При использовании аппарат­ ных методов дополнительные затраты оборудования прямо пропорциональны количеству разрядов чисел в арифметическом устройстве. Эти методы вызывают усложнение схемы арифметического устройства и не за­ трагивают схемы управления.

Дополнительные затраты оборудования при реализа­ ции логических методов ускорения умножения не зави­ сят от разрядности арифметического устройства. Услож­ няется в основном схема управления арифметическим устройством. В вычислительных машинах для ускоре­ ния умножения часто используют комбинации этих методов.

К аппаратным методам ускорения умножения отно­ сятся: ускорение выполнения операций сложения и сдви­ га, использование при выполнении умножения прямого вычитания, введение дополнительных цепей сдвига, по­ зволяющих за один такт производить сдвиг информации в регистрах сразу на несколько разрядов, совмещение по времени операций сложения и сдвига.

Ускорение выполнения операции сложения может быть достигнуто увеличением скорости работы логичес­

3 33


ких элементов и триггеров, ускорением распространения переносов, а также использованием схем однотактных сумматоров вместо двухтактных.

Ускорение выполнения операции сдвига также может быть достигнуто повышением скорости работы логиче­ ских элементов и триггеров и применением однотактного сдвига вместо двухтактного (сдвига с предварительным сбросом триггеров).

Для реализации логических методов ускорения умно­ жения, позволяющих за один такт обрабатывать не­ сколько разрядов множителя, необходимо ввести в ре­ гистры дополнительные цепи, предназначенные для сдвига множителя и частичных произведений (или мно­ жимого) сразу на количество разрядов, обработанных на данном шаге умножения.

Совмещение по времени операций сложения и сдвига может быть достигнуто выбором не только метода умно­ жения, но и схемы сумматора. В сумматорах комбинаци­ онного и комбинационно-накапливающего типов можно формировать в каждом разряде сумматора сигналы сум­ мы и инверсии суммы и результат сложения при необхомости передавать не в данный, а в соседний разряд. Вве­ дением дополнительных схем передачи результата суммирования в регистр суммы можно совмещать сло­ жение со сдвигом сразу на несколько разрядов.

Логические методы ускорения умножения делятся на две группы:

1)методы, позволяющие уменьшить количество сум­ мирований в ходе умножения;

2)методы, позволяющие за шаг умножения обрабо­ тать несколько разрядов множителя. Реализация этих методов требует введения в регистры дополнительных цепей сдвига.

Всвою очередь методы ускорения умножения с обра­ боткой за шаг нескольких разрядов множителя делятся на синхронные и асинхронные. Синхронные методы ха­ рактеризуются тем, что на каждом шаге умножения об­ рабатывается фиксированное число разрядов множителя (длина шага умножения постоянна).

При реализации асинхронных методов ускорения умножения количество разрядов множителя, обрабаты­ ваемых на шаге умножения, зависит от комбинации раз­ рядов множителя, исследуемых на данном шаге (длина шага умножения переменна).

334