Лекция: Структура, подход к проектированию, основные уравнения работы АЛУ.
АЛУ — это комбинационная схема, предназначенная для выполнения арифметических и поразрядно логических операций над многоразрядными словами. Основные требования к АЛУ:
— выполнение различных арифметико-логических операций (выполнение данного требования обеспечивает набор команд, которые сможет выполнять микропроцессор);
— обеспечение межразрядного переноса при выполнении арифметических операций (от этого зависит быстродействие вычислительной системы);
— обеспечение наращивания разрядности обрабатываемых слов однотипными секциями АЛУ.
Основой АЛУ является одноразрядный комбинационный сумматор SM*, который изменяет свою конфигурацию в зависимости от управляющего слова S. Управляющее слово, как правило, входит в состав микрокоманды и определяет тип операции над операндами (сложение, вычитание и т.д.). Сигнал М (модификатор) обеспечивает выполнение арифметических операций при и логических при .
Рис. 2.1. Структура АЛУ на примере 4-разрядной секции
Сумматор SM применяет свою конфигурацию под воздействием управляющего слова S. Слово S как правило входит в состав микрокоманды и определяет тип операции.
Модификатор М разделяет логические и арифметические операции (при М=0-логические, при М=1-арифметические)
— бит переноса;
-разряды операндов A,B.
— разряды результата.
Проведем синтез одного из вариантов АЛУ, для чего сформулируем к нему конкретные требования. Предположим, что необходимо реализовать следующие действия:
· арифметическая операция сложения ( плюс );
· арифметическая операция вычитания ( минус );
· логическая операция ИЛИ ( );
· логическая операция И ( );
Работу одноразрядного комбинационного сумматора можно описать выражением:
используя правило представления логических функций можно записать:
(1)
Анализ данного выражения показывает, что для реализации арифметической операции сложения необходимо полностью сохранить данное выражение, а для реализации логической операции ИЛИ необходимо исключить операции и. Для этого аналитическое выражение дополняется управляющими сигналами S, которые могут принимать в зависимости от определенных условий значения 0 или 1. Таким образом выражение 1 примет вид:
(2)
Если в данное выражение подставить:
М=0, S3 = 0, то результат операции будет логическое ИЛИ над многоразрядными операндами А и В,
М = 1, S3 = 1, то результат операции будет арифметическая операция сложения многоразрядных операндов А и В.
Для выполнения операции вычитания в вычислительных машинах используется либо обратный либо дополнительный коды (обратный код положительного числа полностью соответствует прямому, а для получения обратного кода отрицательного числа необходимо проинвертировать все разряды числа, кроме разряда выполняющего функцию знака). В данном случае возьмем инверсию числа b. Тогда получим:
(3)
Опираясь на выражения (2) и (3) можно записать
(4)
Проверим выполнения требований, которые предъявили к АЛУ
| Управляющее слово | Модификатор | Операция | |||
| S3 | S2 | S1 | S0 | М | |
| Вычитание | |||||
| Сложение | |||||
| Или | |||||
| И |
Выражение (4) можно представить в виде:
(5)
где Di=, Fi=
Di, Fi – подготовительные функции нулевого порядка. Эти функции используются для реализации группового или параллельного переноса. Они не зависят от переноса из разряда.
Рассмотрим результаты операций, выполняемые АЛУ.
| № | Управляющее слово | Результат операции |
| М = 0 | М = 1 | |
| Р0 = 0 | Р0 = 1 | |
| А | А | А плюс 1 мл. разр. |
| А или В | А или В | А или В плюс 1 мл. разр. |
| А или | А или | А или плюс 1 мл. разр. |
| минус 1 | ||
| А плюс А (сдвиг) | А плюс А плюс 1 мл. разр. | |
Недостающие элементы таблицы необходимо заполнить самостоятельно.
Фрагмент АЛУ: