Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие

.pdf
Скачиваний:
87
Добавлен:
27.10.2023
Размер:
29.24 Mб
Скачать

В многофункциональных АЛУ операции для всех форм представления чисел выполняются одними и теми

же схемами,

которые коммутируются нужным образом

в зависимости от требуемого режима работы.

Пример

многофункционального АЛУ показан на

рис. 5-8. Данное АЛУ содержит блок управления, регист-

Рис. 5-8. Многофункциональное АЛУ.

ры RG1 и RG2 и три сумматора SM1—SM3, которые мо­ гут объединяться попарно или все вместе с помощью кла­ панов К1 и К2,

При операциях над числами с фиксированной запя­

той блок управления включает

оба клапана

К1 и К2

и сумматоры SM1SM3 функционируют как один пол­

норазрядный сумматор.

с плавающей

запятой

При операциях над числами

включается клапан К2. При этом объединяются сумма­ торы SM2 и SM3, которые служат для обработки ман­ тисс. Сумматор SM1 служит для обработки порядков.

При выполнении операций над адресами команд (мо­ дификация команд) включается клапан К1, который объ­ единяет сумматоры SM1 и SM2.

В АЛУ с непосредственными связями сумматор, схе­

мы для

выполнения логических операций

и сдвигов,

а также

схемы

передач

информации соединены непо­

средственно с

выходами

соответствующих

регистров.

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

В многорегистровых АЛУ с магистральной структу­ рой входы схем для выполнения сложения, логических операций и сдвигов соединены с магистральными шина­ ми, на которые с помощью коммутатора может быть под­ ключена информация с любого регистра АЛУ, а выходы

320

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

ров

и результат

также

мо­

 

 

жет быть передан в любой

 

Связь С ОЗУ

регистр.

 

 

 

 

 

Типичная структура АЛУ

 

RG1

с непосредственными

свя­

Управляю-

 

зями

и

накапливающим

іц и й

RG3

сумматором

показана

на

бло к

___ L J ____

 

рис. 5-9.

 

 

 

 

RGZ

В состав АЛУ входят три

 

 

триггерных регистра RG1

Рис. 5-9. АЛУ с накаплива­

RG3 и управляющий блок.

ющим

сумматором.

Регистр RG1 имеет толь­

 

 

ко схемы приема

и выдачи информации. Регистры RG2

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

Рассмотрим выполнение в таком АЛУ команды сло­ жения для чисел с фиксированной запятой, осуществ­ ляющей добавление содержимого ячейки памяти, ука­ занной в команде, к содержимому сумматора RG3.

После чтения из ОЗУ и расшифровки кода операции команды и образования исполнительного адреса операнд из ячейки памяти с исполнительным адресом передается в регистр RG1. Управляющий блок в зависимости от со­ стояния знаковых разрядов регистров RG1 и RG3 воз­ буждает в сумматоре цепи сложения или вычитания. Це­ пи сложения возбуждаются, если знаки операндов в ре­ гистрах RG1 и RG3 одинаковы. Если знаки операндов разные, то возбуждаются цепи вычитания.

Если в процессоре отрицательные числа представле­ ны в прямом коде и в результате выполнения вычитания образовался дополнительный код (при вычитании из меньшего числа — большего), то от полученного резуль­ тата, включая знак, берется дополнительный код и в сум­ маторе образуется результат в прямом коде. На этом выполнение операции сложения в АЛУ заканчивается.

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

21—333

321

При выполнении логических операций один

операнд

находится

в регистре RG3, а затем

второй передается

в регистр

RG1. Управляющий блок

включает

соответ­

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

В случае умножения по методу, начиная с младших разрядов множителя, умножение начинается с анализа младшего разряда регистра RG2. Если в младшем раз­ ряде находится единица, то содержимое RG1 прибавля­ ется к содержимому RG3 и производится сдвиг вправо на один разряд в регистрах RG1 и RG3. Если в младшем разряде RG2 записан нуль, то содержимое RG1 и RG3 сдвигается на один разряд вправо. Затем снова анализи­

руется

младший разряд регистра RG2. Таким образом,

в ходе

умножения в регистре RG3 накапливаются ча­

стичные произведения. После того как будут обработаны все разряды множителя в RG2, умножение завершается и в RG3 образуется произведение.

Перед выполнением операции деления делимое пере­ дается в регистр RG3, делитель — в регистр RG1, а ре­ гистр RG2 гасится. Деление начинается с вычитания со­ держимого регистра RG1 из содержимого регистра RG3, в результате которого образуется цифра частного, запи­ сываемая в младший разряд регистра RG2. Затем содер­ жимое регистров RG2 и RG3 сдвигается на один разряд влево и вновь производится вычитание.

В ходе выполнения деления регистр RG2 заполняется цифрами частного. Деление прекращается после образо­

вания цифр частного во всех

разрядах регистра

RG2.

Подробнее выполнение умножения и деления

будет

рассмотрено ниже. В данной структуре АЛУ регистр RG1

принято называть регистром

множимого — делителя,

а регистр RG2 — регистром множителя— частного.

 

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

ционного типа SM

(рис. 5-10). Три

регистра

RG1, RG2

и RG3 выполняют

описанные выше

функции,

а четвер­

тый регистр RG4 служит для промежуточного запомина­

322 I

ния результатов при выполнении операций сложения и сдвига. При выполнении операции сложения слагае­ мые располагаются в регистрах RG1 и RG3, а результат образуется в регистре RG4. Затем, в случае необходимо­ сти накопления результата сложения, он передается из

 

Связь с ОЗУ

J

U

___

 

RG1

 

I

 

Управля­

R62

 

ющий

 

>SM

блок

Я в ¥

Г'

 

 

lL

RG3

 

1

 

 

Рис. 5-10. АЛУ с комбинационным сумматором и дополнительным регистром.

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

Для того чтобы при выполнении операций умноже­ ния и деления сдвиг выполнялся одновременно в двух регистрах, в данной структуре АЛУ должен быть еще один дополнительный регистр RG5 (рис. 5-11). При та­ ком построении АЛУ дополнительный регистр RG5 рабо­ тает в паре с регистром RG3, в котором хранятся ча­ стичные произведения и частичные разности, и использу­ ется для промежуточного запоминания результатов сложения и сдвига. Второй дополнительный регистр RG4 работает в паре с регистром RG2, в котором хра­ нятся множимое и разряды частного. Регистр RG2 так­ же используется для промежуточного запоминания ре­ зультата при сдвигах.

21

323

Рассмотренная структура АЛУ требует большого ко­ личества регистров, но позволяет проектировать АЛУ на простых и надежных триггерах потенциального типа. Кроме того, при данной структуре АЛУ легко осуществ­ ляется совмещение по времени операций сложения и сдвига, так как передача результата сложения из ре-

Связь с ОЗУ

Р

и с .

5-11.

 

А Л У

с

к

о

м б и н а ц и о н н ы м

с у м ­

м

а т о р о м

и

д в у

м я

д о п о л н и т е л ь н ы м и

р е г и ­

 

 

 

 

 

с т

р а

м

и .

 

гистра RG5 в регистр RG3 может осуществляться не пря­ мо, а со сдвигом. Совмещение по времени операций сло­ жения и сдвига происходит без дополнительных затрат

оборудования, так как передача

результата

сложения

в регистр RG3 может выполняться по цепям, используе­

мым для сдвига информации в регистре RG3.

микропро­

В последнее время в связи с

развитием

граммных процессоров широко используют АЛУ с ма­ гистральной структурой, блок-схема которого показана на рис. 5-12. В состав АЛУ входят четыре триггерных ре­ гистра RG1RG4, коммутатор СМ, сумматор SM, сдвигатель и управляющий блок.

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

324

гистраль), а на второй вход — выход регистра RG1. Таким образом, операция сложения может выполняться над содержимым регистра RG1 и содержимым любого другого регистра.

Выходы коммутатора СМ и сумматора SM поданы на вход сдвигателя, который реализует либо прямое под-

Связь с ОЗУ

Р и с .

5-12. А Л У

с

м а г и с т р а л ь н о й

с т р у к т у р о й .

ключение выходов СМ или SAf ко входной магистрали, либо подключение со сдвигом. С входной магистрали ин­ формация может быть принята в любой регистр АЛУ.

Управляющий блок вырабатывает сигналы включе­ ния логических схем коммутатора СМ, сумматора SA4, сдвигателя и приемные сигналы, управляющие переда­ чами информации в регистры. При такой структуре АЛУ логические операции могут выполняться либо в суммато­ ре, либо логическими схемами, подключенными ко вхо­ дам регистров.

325

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

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

приемного регистра.

В АЛУ с магистральной структурой выполнение мик­ рооперации требует формирования нескольких функцио­ нальных сигналов. Например, для выполнения микро­ операции передачи информации из регистра RG1 в ре­ гистр RG2 (рис. 5-12) требуется возбудить сигнал под­ ключения RG1 к коммутатотору СМ, сигнал на возбуж­ дение прямой передачи в сдвигателе и сигнал приема в RG2.

Рассмотрим процедуру выполнения команд сложения и вычитания в АЛУ с магистральной структурой. Перед выполнением сложения или вычитания один из операн­ дов находится в аккумуляторе, функции которого выпол­ няет, например, регистр RG3, а второй операнд передает­

ся из памяти в регистр

RG1. Затем

RG3 подключается

к сумматору SM, в котором в зависимости от выполняе­

мой операции и знаков

операндов

возбуждаются цепи

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

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

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

спомощью последовательных микроопераций и сдвига.

326

5-5. М Е Т О Д Ы В Ы П О Л Н Е Н И Я У М Н О Ж Е Н И Я

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

ряде 1 или 0. Если

в данном разряде стоит 1, произво­

дится прибавление

кода множимого к сумме, стоящей

в сумматоре. Затем

производится сдвиг новой суммы

вправо на один разряд. Если в данном разряде множи­ теля стоит 0, прибавление множимого не производится, а лишь выполняется сдвиг кода сумматора вправо на один разряд. Следует отметить, что произведение двух п-разрядных чисел может иметь 2п значащих разрядов. В ЦВМ, работающих с дробными числами, младшие п разрядов произведения часто отбрасываются.

Знак произведения получается в результате пораз­ рядного сложения знаков сомножителей. Если, как это показано в табл. 5-1, сомножители имеют одинаковые знаки, то произведение получается положительным, если знаки сомножителей разные, то знак произведения будет отрицательным. Таблица 5-1 справедлива и для образо­ вания знака частного при делении.

Знак множимого

,

Знак множителя

Т а б л и ц а 5-1

Знак произведения

(делимого

І

(делителя)

(частного)

+

+

+

+

+

+

 

Сказанное

иллюстрируется следующим

примером:

„1.101001

Множимое(—0,10101)

 

х0,0101

Множитель(-КЬ0101)

 

Ч

Определение кода знака произведения

1,

 

 

327

1 0 0 0 0 0 0

101001

1 0 1 0 0 1

10 1 0 1 0 0

^1 0 1 0 0 1

1 1 1 1 0 1

0 1 1 1 1 0

0 0 1 1 1 1

_ і_

0 0 0 1 1 1

т1 0 1 0 0 1

1 1 0 0 0 0

0 1 1 0 0 0

0 0 1 1 0 0

1 , 0 0 1 1 0 0

Продолжение

У с т а н о в к а

н у л я

в с у м м а т о р е . П р и б а в л е н и е

м н о ­

ж и м о г о к к о д у с у м м а т о р а

 

( в ш е с т о м р а з р я д е

м н о ж и т е л я с т о и т 1 )

 

 

 

 

 

 

 

С д в и г

к о д а

с у м м а т о р а

в п р а в о

н а

о д и н

р а з р я д .

П р и б а в л е н и е

м н о ж и м о г о

к

к о д у

с у м м а т о р а

( в п я т о м

р а з р я д е , м н о ж и т е л я с т о и т

 

1 )

 

 

С д в и г

к о д а

с у м м а т о р а

в п р а в о

н а

о д и н р а з р я д .

П р и б а в л е н и е

м н о ж и м о г о

 

н е

п р о и з в о д и т с я

( в ч е т в е р т о м р а з р я д е м н о ж и т е л я с т о и т 0 )

 

 

С д в и г

к о д а

с у м м а т о р а

в п р а в о

н а

о д и н р а з р я д .

П р и б а в л е н и е

м н о ж и м о г о

 

н е

п р о и з в о д и т с я

( в т р е т ь е м р а з р я д е м н о ж и т е л я с т о и т 0 )

 

 

С д в и г

к о д а

с у м м а т о р а

в п р а в о

н а

о д и н р а з р я д .

П р и б а в л е н и е

м н о ж и м о г о

к

к о д у

с у м м а т о р а

( в о в т о р о м р а з р я д е м н о ж и т е л я с т о и т 1 )

 

 

С д в и г

к о д а

с у м м а т о р а

в п р а в о

н а

о д и н

р а з р я д .

П р и б а в л е н и е

м н о ж и м о г о

 

н е

п р о и з в о д и т с я

( в п е р в о м р а з р я д е м н о ж и т е л я с т о и т 0 )

 

 

С д в и г

к о д а

с у м м а т о р а

в п р а в о

н а

 

о д и н

 

р а з р я д

П р о и з в е д е н и е ( — 0 , 0 0 1 1 0 0 )

 

 

 

 

 

 

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

В зависимости от схем этих регистров возможны че­ тыре метода выполнения умножения (рис. 5-13).

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

328

М нож имое леред началом ім оолненин ум нож ения

Множ имое oefleâ началом â i/лолнения ум нож ения

Р и с . 5 - 1 3 . М е т о д ы в ы п о л н е н и я у м н о ж е н и я .

Соседние файлы в папке книги из ГПНТБ