
1
Лекция 9. Структура процессора
Структура процессора станет совершенно понятной, если задуматься над тем, какие операции ему предстоит выполнять при обработке машинной команды.
• Извлечение команды — процессор считывает команду из памяти.
• Интерпретация команды — процессор расшифровывает команду и определяет, какие операции ему предстоит выполнить.
• Извлечение данных — для выполнения команды может потребоваться прочесть данные из памяти или из модуля ввода-вывода.
• Обработка данных — выполнение команды может потребовать преобразования данных, т.е. выполнения над ними определенных арифметических или логических операций.
• Запись данных — если в процессе выполнения команды данные были изменены, результат необходимо где-то зафиксировать. В частности, результат может быть записан в память или передан в модуль ввода-вывода.
Чтобы выполнить перечисленные операции, процессору требуются определенные средства временного хранения информации. Ему нужно помнить, где находится выполняемая команда, и тогда можно будет определить, откуда выбрать следующую. Ему нужно хранить коды команд и данных во время их обработки. Другими словами, процессор нуждается в собственной внутренней памяти.
На рис. 11.1 представлена упрощенная структурная схема процессора, на которой видно, как он взаимодействует с остальными компонентами компьютера через системную магистраль. Аналогичный интерфейс, как было описано в главе 3, должны иметь все взаимодействующие компоненты компьютера. Читатель должен припомнить, что главными структурными компонентами процессора являются арифметическое и логическое устройство (АЛУ) и устройство (или узел) управления (УУ). На АЛУ возлагаются собственно вычисления, т.е. преобразование информации, а УУ управляет как потоком данных и команд, поступающих в процессор и выходящих из него, так и порядком выполнения операций в АЛУ. Кроме того, на этой схеме показана и внутренняя память процессора — набор регистров.
Более детальная схема процессора представлена на рис. 11.2. На ней обозначены пути передачи данных и сигналов управления, включая и структурный компонент, обозначенный как внутренняя магистраль ЦП. По этой магистрали данные передаются между регистрами и АЛУ, поскольку АЛУ может оперировать только с данными, хранящимися в регистрах. На этой же схеме показана и типовая структура АЛУ. Обратите внимание на определенную схожесть структуры компьютера в целом и одного из его компонентов — центрального процессора. В обеих схемах несколько основных компонентов связываются между собой через магистраль.
Рис. 11.1. Укрупненная структурная схема процессора
Рис. 11.2, Внутренняя структура процессора
Организация набора регистров
Память в компьютерной системе имеет иерархическую структуру. Чем более высокое положение в иерархии занимает определенный блок памяти, тем выше его быстродействие, меньше объем и выше стоимость хранения в пересчете на 1 бит. Набор регистров процессора представляет память самого верхнего уровня, находящегося в иерархии над уровнями оперативной памяти и кэш-памяти. Регистры процессора разделяются по функциям.
• Программно доступные регистры позволяют программисту, разрабатывающему программы на машинном языке или на языке ассемблера, минимизировать в программе обращение к оперативной памяти и, где это возможно, использовать для хранения промежуточных результатов быстродействующую внутреннюю память процессора.
• Регистры управления и состояния используются для управления функционированием процессора. К этим регистрам иногда могут иметь доступ специальные привилегированные команды, которые используются только в программах операционной системы.
Не существует раз и навсегда узаконенного разделения регистров на эти категории. Например, в большинстве компьютеров счетчик команд, PC, программно недоступен, но существуют и такие машины, как VAX, в которых он доступен со стороны программы, как и любой другой. В дальнейших разделах данной главы мы все-таки будем опираться на разделение регистров на эти две категории.