Схема процессора приведена на рисунке 20.1. Процессор состоит из блока регистров БР, арифметическо-логического устройства АЛУ, блока сопряжения с интерфейсом БС блока микропрограммного управления БМУ.
Рисунок 20.1 - Структура процессора
В блоке регистров БР все регистры могут быть разделены на программно-доступные и программно-недоступные.
К программно-доступным регистрам относятся регистры, содержимое которых доступно по командам процессора, т. е. может использоваться в операциях, изменяться по операциям, задаваемым командами. Содержимое этих регистров не изменяется от команды к команде. К таким регистрам относятся аккумулятор; регистры базовые и индексные; множителя-частного; указателя стеков, счетчик команд и т. п. В современных процессорах программно-доступные регистры обычно не закрепляют жестко по назначению (за исключением счётчика команд и указателя стека), а предоставляют программисту несколько регистров общего назначения РОН, которые он может использовать в качестве накапливающих, базовых, индексных и т. д. Количество таких регистров колеблется от 8 до нескольких десятков (30-75).
Программно-недоступные регистры являются рабочими регистрами процессора и предназначены для хранения разнообразной информации в процессе выполнения одной команды. К таким регистрам относятся в первую очередь регистр команды (РК), буферные регистры адресов (РАП) и слов (РСП), используемые при обращениях к памяти, и другие регистры.
Арифметическо-логическое устройство (АЛУ) предназначено для выполнения арифметических и логических операций над словами данных и адресами. В АЛУ вырабатываются и сохраняются признаки результатов. В процессорах ЭВМ общего назначения АЛУ имеет сложную структуру и включает в себя блоки, обрабатывающие числа с фиксированной точкой различной длины, числа с плавающей точкой, десятично-кодированные числа, поля переменной длины. Для вычисления адресов (при индексной и относительной адресации) иногда используется отдельное АЛУ адресов.
В мини- ЭВМ в основном АЛУ выполняются арифметические операции над числами с фиксированной точкой и логические операции. Предусматривается возможность подключения дополнительного АЛУ, выполняющего операции с плавающей точкой и другие операции расширенной арифметики.
Иногда микроЭВМ дополнительные АЛУ или арифметические расширители не включаются в состав процессора, а подключаются к интерфейсу как периферийные устройства (ПУ). Основное АЛУ процессоров мини- и микроЭВМ обычно комбинированного типа с магистральной структурой.
Блок сопряжения с интерфейсом (БС) обеспечивает захват шин интерфейса и выработку всех необходимых сигналов для выполнения обмена по шинам. В состав БС обычно включают контроллер шин всей ЭВМ.
Интерфейс процессора включает в себя шины адреса, данных (входные и выходные или двунаправленные) и управления. Если используются одни и те же физические шины для передачи адресов и данных, то предусматриваются обычно сигналы идентификации. В состав шин управления входят шины, задающие операцию ввода или вывода (относительно процессора), и шина синхронизации.
Рисунок 20.2 - Временные диаграммы асинхронного ввода-вывода данных
Процессор выполняет две операции с интерфейсом: ввод слова и вывод слова (рисунок 20.2). Для ввода слова устанавливается: на шины управления код операции «ввод», на шины адреса - адрес слова в ОЗУ (или адрес устройства ввода - вывода), затем выдается сигнал синхронизации. Временные интервалы, указанные на рис.14 нормируются и служат техническими характеристиками процессоров. В синхронных интерфейсах с постоянной задержкой относительно синхроимпульса, а в асинхронных по ответному синхроимпульсу от ОЗУ (или УВВ) осуществляется ввод информации с шины данных. Для вывода слова устанавливается: на шины управления код операции «вывод», на шины адреса - адрес слова в ОЗУ, на шины данных -данные и выдается сигнал синхронизации. Информация на шинах удерживается в течение определенного времени или до получения ответного синхроимпульса.
Блок управления обеспечивает реализацию алгоритма работы процессора, выдавая последовательности управляющих сигналов в БР, АЛУ и БС и анализируя ответные осведомительные сигналы из этих блоков.