2.2. Структура однокристального восьмиразрядного МП К580

Микропроцессор К580ВМ80А представляет собой изготовленную по n-МОП технологии БИС, содержащую около пяти тысяч транзисторов. Она реализована на кремниевом кристалле площадью около 30 квадратных миллиметров, заключенном в корпус с 40 выводами. Длина машинного слова микропроцессора составляет восемь разрядов, тактовая частота равна 2 МГц. Он требует наличия трех источников питания с напряжениями: + 5 В, – 5 В, + 12 В.

Микропроцессор предназначен для работы с памятью (ПЗУ и ОЗУ) с общей емкостью до 64 килобайтов. Причем возможна адресация в памяти любого байта.

Структурная схема микропроцессора представлена на рис. 2.2.

Организация МП К580 отмечена следующими основными особенностями:

1 – трехшинной структурой с шинами данных, адреса и управления;

2 – магистральным принципом связей через шину данных;

3 – наличием регистровой памяти (счетчик команд, указатель стека, указатель данных).

4 – наличием шестнадцатиразрядной шины адреса, обеспечивающей возможность прямой адресации любого байта в памяти.

При рассмотрении структуры МП можно выделить следующие ее части:

1 – блок регистров;

2 – арифметическо-логическое устройство (АЛУ);

3 – буферные схемы;

4 – управляющее устройство.

Микропроцессор содержит программно-доступные восьмиразрядные регистры: регистр аккумулятор; общие регистры (регистры общего назначения) B, C, D, E, H, L;

регистр признаков  (F); регистр десятичный корректор (ДK). Он содержит шестнадцатиразрядные программно-доступные регистры: счетчик команд (PC), регистр  указатель стека SP, регистр инкремента/декремента.

Имеются также недоступные программе регистры: восьмиразрядные регистры временного хранения T, W, Z; восьмиразрядный регистр команд (РК) и шестнадцатиразрядный регистр адреса РА.

Общие регистры используются для хранения операндов (данных), промежуточных и конечных результатов.

Наиболее важный регистр-аккумулятор.

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

При выполнении операций в МП возникает потребность в кратковременном хранении некоторых операндов и результатов выполнения операций. Для этой цели служат регистры временного хранения данных.

Использование аккумулятора и общих регистров позволяет при выполнении команд уменьшить количество обращений к памяти и этим повысить быстродействие микропроцессора.

Восьмиразрядная комбинированная схема АЛУ выполняет арифметические и логические операции над восьмиразрядными числами в процессе межрегистровых пересылок. К одному из входов АЛУ всегда подключен аккумулятор, к другому через регистр Т может быть подключен любой из РОН.

АЛУ реализует простейшие арифметические и логические операции (сложение, вычитание, сдвиги, сравнения, логическое умножение и другие).

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

Арифметическо-логическое устройство позволяет в процессе межрегистровых “пересылок с перекосом” выполнять операции сдвига на один разряд вправо или влево. Многократный сдвиг реализуется последовательностью одноразрядных сдвигов.

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

Стековая память реализует безадресное задание операндов. Стек представляет собой группу последовательно пронумерованных ячеек памяти ОЗУ, снабженных указателем стека, в котором автоматически при записи и считывании устанавливается номер (адрес) последней занятой ячейки с