В многофункциональных АЛУ операции для всех форм представления чисел выполняются одними и теми
же схемами, |
которые коммутируются нужным образом |
в зависимости от требуемого режима работы. |
Пример |
многофункционального АЛУ показан на |
рис. 5-8. Данное АЛУ содержит блок управления, регист-
Рис. 5-8. Многофункциональное АЛУ.
ры RG1 и RG2 и три сумматора SM1—SM3, которые мо гут объединяться попарно или все вместе с помощью кла панов К1 и К2,
При операциях над числами с фиксированной запя
той блок управления включает |
оба клапана |
К1 и К2 |
и сумматоры SM1—SM3 функционируют как один пол |
норазрядный сумматор. |
с плавающей |
запятой |
При операциях над числами |
включается клапан К2. При этом объединяются сумма торы SM2 и SM3, которые служат для обработки ман тисс. Сумматор SM1 служит для обработки порядков.
При выполнении операций над адресами команд (мо дификация команд) включается клапан К1, который объ единяет сумматоры SM1 и SM2.
В АЛУ с непосредственными связями сумматор, схе
мы для |
выполнения логических операций |
и сдвигов, |
а также |
схемы |
передач |
информации соединены непо |
средственно с |
выходами |
соответствующих |
регистров. |
При этом операнды, участвующие в микрооперации, сни маются с определенных регистров и результаты образу ются также в определенных регистрах.
В многорегистровых АЛУ с магистральной структу рой входы схем для выполнения сложения, логических операций и сдвигов соединены с магистральными шина ми, на которые с помощью коммутатора может быть под ключена информация с любого регистра АЛУ, а выходы
этой аппаратуры подключены через коммутатор ко вход ным цепям регистров. При этом операнды для выполне ния микроопераций могут быть взяты из любых регист
ров |
и результат |
также |
мо |
|
|
жет быть передан в любой |
|
Связь С ОЗУ |
регистр. |
|
|
|
|
|
Типичная структура АЛУ |
|
RG1 |
с непосредственными |
свя |
Управляю- |
|
зями |
и |
накапливающим |
іц и й |
RG3 |
сумматором |
показана |
на |
бло к |
___ L J ____ |
|
рис. 5-9. |
|
|
|
|
RGZ |
В состав АЛУ входят три |
|
|
триггерных регистра RG1— |
Рис. 5-9. АЛУ с накаплива |
RG3 и управляющий блок. |
ющим |
сумматором. |
Регистр RG1 имеет толь |
|
|
ко схемы приема |
и выдачи информации. Регистры RG2 |
RG3 имеют схемы приема, выдачи информации и схемы сдвига. Регистр RG3 одновременно является сумматором накапливающего типа. В RG3 также реализованы схемы выполнения поразрядных логических операций.
Рассмотрим выполнение в таком АЛУ команды сло жения для чисел с фиксированной запятой, осуществ ляющей добавление содержимого ячейки памяти, ука занной в команде, к содержимому сумматора RG3.
После чтения из ОЗУ и расшифровки кода операции команды и образования исполнительного адреса операнд из ячейки памяти с исполнительным адресом передается в регистр RG1. Управляющий блок в зависимости от со стояния знаковых разрядов регистров RG1 и RG3 воз буждает в сумматоре цепи сложения или вычитания. Це пи сложения возбуждаются, если знаки операндов в ре гистрах RG1 и RG3 одинаковы. Если знаки операндов разные, то возбуждаются цепи вычитания.
Если в процессоре отрицательные числа представле ны в прямом коде и в результате выполнения вычитания образовался дополнительный код (при вычитании из меньшего числа — большего), то от полученного резуль тата, включая знак, берется дополнительный код и в сум маторе образуется результат в прямом коде. На этом выполнение операции сложения в АЛУ заканчивается.
Аналогично выполняется команда вычитания, при реализации которой управляющий блок возбуждает це пи сложения в сумматоре при разных знаках операндов и цепи вычитания при одинаковых знаках.
При выполнении логических операций один |
операнд |
находится |
в регистре 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 служит для промежуточного запомина
ния результатов при выполнении операций сложения и сдвига. При выполнении операции сложения слагае мые располагаются в регистрах 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 так же используется для промежуточного запоминания ре зультата при сдвигах.