Архитектура микропроцессора

 

В каждом микропроцессоре имеются следующие основные устройства: арифметическо-логическое устройство (АЛУ), выполняющее все арифметические и логические операции; устройство управления (УУ), обеспечивающее местную синхронную работу всех узлов МП; группа внутренних регистров для временного хранения информации, участвующей в выполняемых операциях. Все эти устройства связаны внутренней шиной данных и шиной управления (рисунок 3.8).

Рисунок 3.8 – Структура микропроцессора

Синхронная работа всех устройств МП-системы и МП обеспечивается тактовыми сигналами Ф1 и Ф2, поступающими в МП от генератора тактовых импульсов (ГТИ). Совместная работа всех устройств МП осуществляется сигналами Уi (i = 1, 2, ...,п), вырабатываемым устройством управления МП (рисунок 5.4) в соответствии с реализуемыми командами программ.

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

1 Установка регистра в некоторое состояние: например, запись в регистр r1 числа 0, обозначаемая (r1) ← 0;

2 Пересылка содержимого одного узла в другой: например, пересылка содержимого регистра r2 в регистр r1, обозначаемая (r1) ← (r2);

3 Сложение: например, (r1)(r1) + (r2);

4 Инвертирование содержимого разрядов регистров, например, если регистр r1 содержал двоичное число 101101, то после инвертирования его одержимое будет равно 010010. Такое действие обозначает (r1)(г);

5 Сдвиг содержимого узла влево или вправо, например, сдвиг на один разряд влево содержимого регистра r1 обозначается RKC (Rоtаtе Lеft — сдвиг влево);

6 Счет, при котором число в счетчике (регистре) возрастает или убывает на единицу: (r1) (r1) ± 1;

7 Сравнение содержимого регистра на равенство с некоторым числом: результат сравнения логическая единица (в случае выполнения равенства) либо логический ноль (в случае невыполнения операции);

8 Некоторые логические операции: конъюнкции, дизъюнкции и др.

Каждое такое элементарное действие, выполняемое в одном из узлов МП в течение одного тактового периода, называется микрооперацией. На базе этих действий организуются в МП операции сложения, вычитания, умножения, деления, логического умножения (И), логического сложения (ИЛИ), операции ИСКЛЮЧАЮЩЕЕ ИЛИ и др.

Рассмотрим назначение отдельных устройств микропроцессора. Арифметически–логическое устройство (АЛУ) выполняет по соответствующим командам операции: сложение, вычитание, сдвиг, пересылку, логические операции И, ИЛИ, НЕ. ИСКЛЮЧАЮЩЕЕ ИЛИ.

Устройство управления (УУ) согласно коду операции, содержащемуся в команде, формирует сигналы управления МП Уi (см. рисунок 3.8). Группа внутренних регистров служит сверхоперативной памятью микропроцессора и используется для временного хранения данных и адресов операндов, участвующих в выполнении команд программы. Внутренние регистры МП подразделяются на регистры специального и общего назначения. Количество, назначение и разрядность этих регистров во многом определяют архитектуру МП. Почти все МП имеют следующие регистры специального назначения: регистр-аккумулятор, счетчик команд, регистр команд, регистр признаков, указатель стека, буферный регистр адреса, буферный регистр данных. Рассмотрим назначение этих регистров.

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

Счетчик команд или программный счетчик (РС) – регистр в котором находится адрес ячейки памяти, содержащей байты выполняемой команды.

Регистр команд (РК) предназначен исключительно для хранения кода очередной команды, адрес которой находится в РС.

Регистр состояния или признаков (РП) представляет собой набор триггеров; называемых иногда флажками. В зависимости от результатов операций, выполняемых АЛУ, каждый триггер устанавливается в состояние 0 или 1. Флажковые биты, определяющие содержимое регистра, индицируют условные признаки: нулевого результата, знака результата, переноса и др. Информация, подаваемая на этот регистр, формируется по результатам выполненных в АЛУ операции и позволяет изменить ход выполнения программы в зависимости от полученных результатов. Наличием регистра признаков микропроцессорная система отличается от простого калькулятора.

Буферный регистр адресов (БРА) предназначен для приема и хранения адресной части исполняемой команды. Возможное число ячеек, к которым можно адресоваться, определяется разрядностью этого регистра.

Совокупность ячеек памяти, к которым потенциально может адресоваться микропроцессор, называется адресным пространством памяти, а фактически имеющиеся ячейки образуют рабочее (физическое) пространство памяти микропроцессора. Адресное пространство, например, микропроцессора КР580ИК80 составляет 216 ячеек памяти, т. е. 64 Кбайт.

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

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

Рассмотренные внутренние специальные регистры МП недоступны для пользователя. В микропроцессорах имеется другая группа регистров, доступных для пользователя, который использует их как сверхоперативную память. Эти регистры называются регистрами общего назначения (РОН). Число таких регистров в различных МП колеблется от 4 до 64. Количество РОН в значительной мере определяет вычислительные возможности МП.

В микропроцессорах предусматривается возможность работы с областью оперативной памяти, в которую запись и выборка слов производится без непосредственного указания адреса по принципу: последний записанный элемент прочитывается из памяти первым. Память, организованная таким образом, называется стековой памятью, или стеком. Так, после последовательной записи в стек слов Х1, Х2, Х3 при первом чтении будет выбрано слово Х3, при втором – Х2, при третьем – Х3. Специальный регистр, в котором хранится адрес последней занятой ячейки в области стековой памяти, называется указателем стека (). Следовательно, стек область памяти, адресуемая с использованием регистра указателя стека (Stасk Роinter – указатель вершины стека). Начальный адрес ячейки стековой памяти устанавливается в указателе стека программным путем. По командам записи информации в стек или чтения информации из стек указатель стека автоматического изменяется.