Вопрос 1. Арифметико-логическое устройство.
Арифметико-логическое устройство (АЛУ) является основным функциональным узлом микропроцессора, предназначенным для обработки данных. АЛУ представляет собой комбинационную логическую схему, выполняющую логические и арифметические действия.
Для ввода, вывода и оперативного хранения информации, а также ее пошаговой загрузки по тактовому импульсу в АЛУ предназначен блок регистров: аккумулятор (А), буферные регистры (БР) или регистры общего назначения (РОН) (рис.11.1).
Совместная работа АЛУ и аккумулятора позволяет реализовать ряд арифметических и логических операций, в том числе сложение, вычитание, инверсию, сравнение, положительное или отрицательное приращение, сдвиг влево или вправо, логическое И, ИЛИ, исключающее ИЛИ и т.п. Из перечисленных элементарных операций набираются сложные задачи современной микропроцессорной техники.
Универсальная микросхема К155ИП3 (рис.11.2) представляет собой четырехразрядное АЛУ. Основу этой микросхемы составляют 30 простых логических элементов типа И-НЕ, И-ИЛИ-НЕ, исключающие ИЛИ и инверторов.
АЛУ может формировать 16 логических операций и выполнять 16 арифметических действий, включая суммирование и вычитание, увеличение и уменьшение, удвоение и инверсию. Все операции производятся над четырехразрядными числами в двоичных кодах, причем одно из чисел подается на входы А3...А0, второе - на входы В3...В0, а результат вычислений появляется на выходах F3...F0. Характер операций АЛУ зависит от уровня сигнала на входе режима М: при М=0 выполняются арифметические, а при М=1 - логические операции. Причем последние выполняются поразрядно. Вид выполняемых операций зависит от кода операции, подаваемого на управляющие входы S3...S0, в соответствии с табл.11.1.
Ряд арифметических операций можно использовать либо для загрузки операндов (например, F=А или F=В для А=0 при S=0000 или S=1001 соответственно), либо для сложения в прямом коде F=А+В, или вычитания в дополнительном коде F=А-В, либо для более сложных действий.
При выполнении арифметических операций учитывается признак переноса с предыдущего разряда, подаваемый на вход . При этом формируется признак переноса четвертого разряда . Для удобства наращивания разрядности АЛУ при объединении нескольких микросхем вход и выход признаков переноса выполнены инверсными. При выполнении логических операций (логическое И, ИЛИ, исключающее ИЛИ и т.п.) с использованием прямых или инверсных кодов состояние входа переноса не влияет на полученные результаты.
Для расширения функциональных возможностей АЛУ предусмотрены выходы образования переноса G и распространения переноса Р: первый переключается при достижении 11112=1510, а второй - при появлении переноса в любом из четырех разрядов.
Таблица 11.1
Код операции | Вид операции | ||||
S3 | S2 | S1 | S0 | Арифметические (М=0) | Логические (М=1) |
F=A+C0 | __ F=A | ||||
F=AÚB+C0 | ______ F=AÚB | ||||
__ F= AÚB+C0 | __ F=A·B | ||||
F=-1+C0 | F=0 | ||||
F=A+A· +C0 | ______ F=A·B | ||||
F=A· +(AÚB)+C0 | __ F=B | ||||
F=A-B-1+C0 | F=A B | ||||
__ F=A·B-1+C0 | __ F= A·B | ||||
F=A+A·B+C0 | __ F=AÚB | ||||
F= A+B+C0 | _______ F= A B | ||||
__ F= A·B+(AÚB)+C0 | F=B | ||||
F=A·B-1+C0 | F= A·B | ||||
F= A+A+C0 | F=1 | ||||
F= A+(AÚB)+C0 | __ F= AÚB | ||||
__ F= A+(AÚB)+C0 | F= AÚB | ||||
F=A-1+C0 | F=A |
Обозначения: Ú - логическое сложение; ·- логическое умножение;
- сложение по модулю 2 (исключающее ИЛИ); + - арифметическое сложение; - - арифметическое вычитание; F=A+A - сдвиг влево на один разряд.
В схеме АЛУ предусмотрена также возможность сравнения операндов: если А=В, то на выходе К появляется уровень логической единицы.
Дата добавления: 2015-08-26; просмотров: 1260;