Назначение и классификация арифметико-логических устройств

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

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

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

Рисунок 7.2.1. Структура математической модели АЛУ

Операционный автомат (ОА) принимает по входу А операнды, по входу Y – управляющие сигналы {уi}, передает на выход Z результаты операции и формирует множество значений логических условий { xi }.

Управляющий автомат (УА) принимает по входу X логические условия {xi } и в зависимости от их значений и кода операции по входу F формирует последовательность управляющих сигналов { уi }.

Арифметико-логические устройства классифицируют по следующим признакам:

–способу обработки данных – параллельные, последовательные, парал­лельно-последовательные;

–системе счисления – двоичные, восьмеричные, десятичные, шестнадцате­ричные, а также устройства на основе специальных систем (остаточных классов, с искусственным порядком веса, чисел Фибоначчи) и др.;

– форме представления чисел – с плавающей запятой, с фиксированной за­пятой, целые двоичные и десятичные числа;

– времени выполнения операций – синхронные и асинхронные;

– способу выполнения микроопераций – с закрепленными микрооперациями, , с общими операциями;

– типу управляющего автомата — со схемной или программируемой логикой;

– методу построения – многофункциональные и блочные.

В синхронных АЛУ на выполнение различных операций отводится один и тот же интервал времени, а в асинхронных время выполнения зависит от типа операции.

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

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

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

В АЛУ возможны два типа УА: со схемной (“жесткой”) логикой, с программируемой (хранимой в памяти) логикой.

Обобщенная структура АЛУ показана на рисунке 7.2.2.

АЛУ состоит из управляющего автомата (УА) и операционного автомата (ОА)

В УА поступает код операции (КОП) от центрального устройства управления. Применение в АЛУ устройств управления со схемной логикой ускоряет выполнение операций. Применение УА с программируемой логикой обеспечивает гибкость микропрограммирования, позволяет изменять состав микропрограмм при вводе новых команд. В современных АЛУ могут объединяться оба типа УА.

В состав ОА универсальных компьютеров входят:

– арифметико-логический блок (АЛБ);

– набор регистров общего назначения (РОН);

– блок контроля.

В АЛБ выделяют комбинационный сумматор SM, входные регистры А и В для приема операндов и выходной регистр С для записи результата. В АЛБ имеются логические схемы, вырабатывающие множества { xi } сигналов логических условий (признаков результата), например, нулевой или отрицательный результат и др.

Рисунок 7.2.2. Обобщенная структура АЛУ

Регистры общего назначения используют для приема и хранения операндов, промежуточных и конечных результатов. Блок контроля обеспечивает проверку пра­вильности выполнения арифметико-логических операций одновременной реализа­цией той же команды дублирующей аппаратурой и сравнением результатов или путем выполнения действий над специальными кодами, полученными от операндов при сложении по модулю два, три и др.. При обнаружении ошибок и сбоев в работе ОА блок контроля посылает в УА код ошибок { кi }.