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

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

арифметические операции над целыми числами с ФТ (опера­ции целочисленной арифметики);

арифметические операции над числами с ПТ;

арифметические операции над двоично-десятичными числами (операции десятичной арифметики);

логические операции.

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

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

Арифметико-логическое устройство можно рассматривать как композицию двух основных частей: операционного блока (ОБ) и блока управления (рис. 4.1).

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

Операционный блок состоит из регистров и комбинационных схем. В зависимости от организации связей между регистрами и комбинационными схемами различают АЛУ с жесткой и магист­ральной структурами. В АЛУ с «жесткой» структурой комбинаци­онные схемы закреплены за определенными регистрами (рис. 4.2). Между регистрами и комбинационными схемами существуют по­стоянные связи. Каждый регистр с закрепленными комбинацион­ными схемами выполняет определенные микрооперации.

В состав ОБ АЛУ входят три регистра с закрепленными логи­ческими схемами:

регистр первого слагаемого РСл1 со схемой ПРСл1;

регистр второго слагаемого РСл2 со схемой ПРСл2;

регистр суммы РСм со схемой комбинационного сумматора См.

Логическая схема ПРСл1 обеспечивает передачу результата из РСм в регистр РСл1:

в прямом коде РСл1:= РСм (по сигналу П2РСл1);

со сдвигом влево на один разряд РСл1:= РСм(л*0)(по сигналу Z^Cm);

со сдвигом вправо на два разряда РСл1:= R2(s*s*PCm) (по сиг­налу R2VCm).

При сдвиге влево в освободившийся младший регистра РСл1 заносится «0». При сдвиге вправо в старшие разряды регистра за­носится сигнал с левого входа сдвигателя, а содержимое младших разрядов регистра сумматора выдается на правый выход сдви­гателя.

Логическая схема ПРСл2 обеспечивает передачу второго слага­емого на левый вход сумматора:

в прямом коде ЛСм:= РСл2 (по сигналу 5[РСл2);

в инверсном коде ЛСм:= РСл2 (по сигналу ^-.РОгё);

со сдвигом влево на один разряд ЛСм:= Z,!(PQt2*0) (по сигна­лу Х,РСл2).

Комбинационный сумматор выполняет суммирование (ариф­метическое или по модулю 2) операндов, поступивших на его входы (левый ЛСм и правый ПСм). Результат суммирования зано­сится в регистр сумматора РСм: РСм:=ЛСм + ПСм (по сигналу П2РСм) или РСм:=ЛСм 0 ПСм (по сигналу П2Ж2РСм).

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

Выходы каждого из регистров через мультиплексоры А и В мо­гут быть подключены к входам А и В ОБ по магистралям А и В. Выбор подключаемых регистров производится по адресам а и Ь, которые поступают из устройства управления на адресные входы мультиплексоров. Операционный блок настраивается на выпол­нение заданной операции одним из сигналов управления Yt (/ = 1,

т), который поступает из устройства управления. Результат операции по магистрали С поступает на демультиплексор DMXvi записывается в регистр блока РОН по адресу с.

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

Двухмагистральное АЛУ (рис. 4.5, а) содержит буферный ре­гистр (БР) и требует для сложения двух машинных тактов. В пер­вом такте по магистрали В из РОН в БР считывается операнд В. Во втором такте операнд А по той же магистрали считывается из РОН, операнды А и В суммируются в ОБ и результат С по магистрали А записывается в РОН (рис. 4.5, б).

Одномагистральное АЛУ использует два буферных регистра (рис. 4.6, а). В таком АЛУ сложение выполняется за три такта. В пер­вом такте осуществляется чтение операнда А из РОН в БРЬ во втором — операнда В из РОН в БР2, а в третьем суммируются операнды; результат записывается в один из регистров блока РОН (рис. 4.6, б).

Структура ОБ зависит от набора выполняемых операций и типа АЛУ (рис. 4.7). Основу ОБ составляет многофункциональньгй сумма­тор, который может выполнять микрооперации сложения (с уче­бтом входящего переноса Сш), сложение по модулю 2 {Ml), логи­ческое умножение И, а также логическое сложение ИЛИ:

Сл: См:= СмЛ + СмП + C1N;

Ml: См:= СмЛ в СмП;

И: См:= СмЛ л СмП;

ИЛИ: См:= СмЛ v СмП.

Формирователи

Д,ФК]: СмЛ:= 0; ДФК2: СмП:= 0; ВХА: СмЛ:= А; ВХВ: СмП:= В; Вх-А: СмЛ:= -А; Вх ->В: СмП:= -,В.

Сдвигатель позволяет выдавать результат из сумматора без сдви­га, а также со сдвигом вправо или влево на один разряд: Пх: С:= См;

Rx: С:= Ri(SL * См); SR:= См(и); Lx: С:= Lx(Cm * SL:= См(0).

При сдвиге вправо на старший разряд магистрали С выдается сигнал с левого входа сдвигателя (SL) и на правый выход сдвига-теля выдается содержимое младшего разряда сумматора. При сдвиге влево на младший разряд магистрали С выдается сигнал с правого входа сдвигателя (SR) и на левый выход сдвигателя содержимое старшего разряда сумматора.

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

1

Соседние файлы в папке Ответы