Функции и структура процессора
Центральный процессор (ЦП) является ядром ЭВМ и выполняет следующие основные функции: выборку из ОП, дешифрацию и выполнение команд программы, организует обращения к различным видам памяти, формирует процедуры ввода-вывода, инициирует работу ВЗУ и периферийных устройств, воспринимает, и обрабатывает запросы прерываний от устройств машины и взаимодействующих с ней, осуществляет контроль и диагностику ЭВМ.
Основными узлами процессора являются:
- устройство управления (УУ);
- арифметико-логическое устройство (АЛУ).
Структурная схема процессора приведена на рисунке 2.2.
Рис. 2.2. Структурная схема центрального процессора
Устройство управления
Организует автоматическое выполнение программ и функционирование ЭВМ, как единой системы.
Счетчик команд. Счетчик команд (СК) – неотъемлемый элемент устройства управления любой ЭВМ, построенной в соответствии с фон-неймановским принципом программного управления. Согласно этому принципу соседние команды программы располагаются в ячейках памяти со следующими по порядку адресами и выполняются преимущественно в той же очередности, в какой они размещены в памяти ВМ. Таким образом, адрес очередной команды может быть получен путем увеличения адреса ячейки, из которой была считана текущая команда, на длину, выполняемой команды, представленную числом занимаемых ею ячеек.
Перед началом вычислений в СК заносится адрес ячейки основной памяти, где хранится команда, которая должна быть выполнена первой. В процессе выполнения каждой команды путем увеличения содержимого СК на длину выполняемой команды в счетчике формируется адрес следующей подлежащей выполнению команды.
В рассматриваемой ЭВМ любая команда занимает одну ячейку, поэтому содержимое СК увеличивается на единицу, что обеспечивается подачей сигнала управления +1СК. По завершении текущей команды адрес следующей команды программы всегда берется из счетчика команд. Для изменения естественного порядка вычислений (перехода в иную точку программы) достаточно занести в СК адрес точки перехода.
Хотя термин «счетчик команд» считается общепринятым, его нельзя признать вполне удачным из-за того, что он создает неверное впечатление о задачах данного узла. По этой причине разработчики ЭВМ используют иные названия, в частности программный счетчик или указатель команды. Последнее определение представляется наиболее удачным, поскольку точнее отражает назначение рассматриваемого узла УУ.
В заключение добавим, что в ряде ЭВМ счетчик команд реализуется в виде обычного регистра, а увеличение его содержимого производится внешней схемой (схемой инкремента/декремента).
Регистр команды. Счетчик команд определяет лишь местоположение команды в памяти, но не содержит информации о том, что это за команда. Чтобы приступить к выполнению команды, ее необходимо извлечь из памяти и разместить в регистре команды (РК).
Этот этап носит название выборки команды. Только с момента загрузки команды в РК она становится «видимой» для процессора. В РК команда хранится в течение всего времени ее выполнения. Как уже отмечалось ранее, любая команда содержит два поля: поле кода операции и поле адресной части. Учитывая это обстоятельство, регистр команды иногда рассматривают как совокупность двух регистров – регистра кода операции (РКОп) и регистра адреса (РА), в которых хранятся соответствующие составляющие команды.
Если команда занимает несколько последовательных ячеек, то код операции всегда находится в том слове команды, которое извлекается из памяти первым.
Это позволяет по коду операции определить, требуются ли считывание из памяти и загрузка в РК остальных слов команды. Собственно выполнение команды начинается только после занесения в РК ее полного кода.
Регистр адреса памяти. Регистр адреса памяти (РАП) предназначен для хранения адреса ячейки основной памяти вплоть до завершения операции (считывание или запись) с этой ячейкой. Наличие РАП позволяет компенсировать различия в быстродействии ОП и прочих устройств машины.
Регистр данных памяти. Регистр данных памяти (РДП) призван компенсировать разницу в быстродействии запоминающих устройств и устройств, выступающих в роли источников и потребителей хранимой информации. В РДП при чтении заносится содержимое ячейки ОП, а при записи помещается информация, подлежащая сохранению в ячейке ОП. Собственно момент считывания и записи в ячейку определяется сигналами ЧтЗУ и ЗпЗУ соответственно.
Дешифратор кода операции. Дешифратор кода операции (ДКОп) преобразует код операции в форму, требуемую для работы микропрограммного автомата (МПА). Информация после декодирования определяет последующие действия МПА, а ее вид зависит от организации МПА. В рассматриваемой ВМ – это унитарный код УнитК. Часто код операции преобразуется в адрес первой команды микропрограммы, реализующей указанную в команде операцию. С этих позиций ДКОп правильнее было бы назвать не дешифратором, а преобразователем кодов.
Микропрограммный автомат. Микропрограммный автомат (МПА) правомочно считать центральным узлом устройства управления. Именно МПА формирует последовательность сигналов управления, в соответствии с которыми производятся все действия, необходимые для выборки из памяти и выполнения команд. Исходной информацией для МПА служат: декодированный код операции, состояние признаков (флагов), характеризующих результат предшествующих вычислений, а также внешние запросы на прерывание текущей программы и переход на программу обслуживания прерывания.
Введем два определения:
Микрооперация – это элементарные пересылки или преобразования информации, выполняемые в течение одного такта сигналов синхронизации. В течение одного такта могут одновременно выполнятся несколько микроопераций. Совокупность сигналов управления, вызывающих микрооперации, выполняемые в одном такте, называют микропрограммой. Реализует микропрограмму, т.е. вырабатывает управляющие сигналы, задаваемые ее микрокомандами, МПА – БМУ (блок микропрограммного управления).
Арифметико-логическое устройство
Это устройство, как следует из его названия, предназначено для арифметической и логической обработки данных. В машине, изображенной на рис. 2.2, оно содержит следующие узлы.
Операционный блок. Операционный блок (ОПБ) представляет собой ту часть АЛУ, которая, собственно, и выполняет арифметические и логические операции над поданными на вход операндами. Выбор конкретной операции из возможного списка операций для данного ОПБ определяется кодом операции команды. В нашей ВМ код операции поступает непосредственно из регистра команды. В реальных машинах КОп зачастую преобразуется в МПА в иную форму и уже из микропрограммного автомата поступает в АЛУ. Операционные блоки современных АЛУ строятся как комбинационные схемы, то есть они не обладают внутренней памятью и до момента сохранения результата операнды должны присутствовать на входе блока.
Регистры операндов. Регистры РХ и РY обеспечивают сохранение операндов на входе операционного блока вплоть до получения результата операции и его записи (в нашем случае в МП, т.е. в один из РОН).
Регистр признаков. Регистр признаков (РПрз) предназначен для фиксации и хранения признаков (флагов), характеризующих результат последней выполненной арифметической или логической операции. Такие признаки могут информировать о равенстве результата нулю, о знаке результата, о возникновении переноса из старшего разряда, переполнении разрядной сетки и т.д. Содержимое РПрз обычно используется устройством управления для реализации условных переходов по результатам операций АЛУ. Под каждый из возможных признаков отводится один разряд РПрз.
Формирование признаков осуществляется блоком формирования состояний регистра признаков, который может входить в состав ОПБ либо реализуется в виде внешней схемы, располагаемой между операционным блоком и РПрз.
Местная память процессора (аккумулятор). Аккумулятор (Акк) – это регистр, на который возлагаются самые разнообразные функции. Так, в него предварительно загружается один из операндов, участвующих в арифметической или логической операции. В Акк может храниться результат предыдущей команды и в него же заносится результат очередной операции.
Через Акк зачастую производятся операции ввода и вывода. Строго говоря, аккумулятор в равной мере можно отнести как к АЛУ, так и к УУ, а в ВМ с регистровой архитектурой его можно рассматривать как один из регистров общего назначения.
Дата добавления: 2015-07-18; просмотров: 1402;