Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
19
Добавлен:
17.03.2016
Размер:
126.46 Кб
Скачать
  1. Работа процессора эвм

Процессор является основным устройством ЭВМ. Он предназначен для выполнения вычислений по хранящейся в запоминающем устройстве машинной программе и обеспечения общего управления ЭВМ.

Быстродействие ЭВМ в значительной степени определяется скоростью работы процессора. Для обеспечения высокого быстродействия процессор использует собственную память небольшого объёма. Эта быстродействующая память выполнена на регистрах и предназначена для хранения данных ближайшего ряда вычислений по программе. Время, необходимое на запись или считывание информации из этой памяти порядка наносекунды - тысячной доли микросекунды. В отличие от ячеек основной памяти регистры не имеют адресов, и доступ к ним осуществляется по имени.

Количество и разрядность регистров оказывает существенное влияние на архитектуру процессора, определяют его сложность и стоимость. Но с, другой стороны, наличие большого количества регистров с богатым набором возможностей упрощает программирование и повышает гибкость программного обеспечения. Количество регистров в разных микропроцессорах различно: у PDP-11 – 12 16-битовых регистров, у Intel 8086 – 14 регистров, Intel 80286 – 19 регистров, Intel 80386 – уже 31 32-битовых регистра (за исключением сегментных регистров), Intel 80486 – 34 регистра.

Регистры процессора делятся на регистры общего назначения и специальные.

Специальные регистры применяются для хранения различных адресов (например, адреса команды или адресов операндов), признаков результатов выполнения операций и режимов работы ЭВМ (в Intel 80х86 это регистр флагов F) и др.

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

Регистры также можно разделить на программно-доступные (например, регистры общего назначения, регистр-счетчик команд IP, регистр указатель стека SP и др.) и внутренние системные регистры, не доступные программно и используемые во время внутренних пересылок информации при выполнении команд (например, регистр команд).

Подробнее состав и назначение регистров микропроцессоров вы будете рассматривать в дисциплине «Микропроцессорные системы».

Среди регистров процессора PDP-11 необходимо выделить в первую очередь 8 общих (универсальных) регистров R0-R7, а также регистр состояния процессора PS (Processor Status). Регистр R6 имеет специальное обозначение SP (Stack Pointer) – указатель стека, а R7 – обозначение PC (Processor Counter) – программный счетчик или счетчик команд. Регистры SP и PC используются процессором специальным образом, так регистр PC используется как счетчик команд ЭВМ и содержит адрес следующей команды, подлежащей выполнению.

Кроме этих 9 регистров есть ещё 3 программно недоступных регистра RAM – регистр адреса памяти, RDM – регистр данных памяти, RC – регистр команд (инструкций).

Процессор Intel 8086 также содержит 8 регистров общего назначения: 4 из них AX, BX, CX, DX используются, прежде всего, для хранения данных, а регистры SP, BP (указатель стека и указатель базы, хранящие указатели для доступа к данным сегмента стека), SI, DI (индексные регистры, хранящие смещение адреса соответственно в текущем сегменте данных и текущем дополнительном сегменте) хранят главным образом адресную информацию. Особенностью регистров AX, BX, CX, DX является то, что они допускают раздельное использование их младших байтов AL, BL, CL, DL и старших байтов AH, BH, CH, DH. Тем самым создается возможность обработки, как слов, так и байтов.

Кроме того, есть 4 сегментных регистра CS (база сегмента программного кода), DS (база сегмента данных), SS (база стекового сегмента), ES (база дополнительного сегмента), которые хранят начальные адреса четырёх текущих сегментов памяти, регистр флагов F (его младший байт FL, старший байт FH) и регистр указатель команд IP, который хранит смещение следующей команды в текущем кодовом сегменте, т.е. указывает на следующую по порядку команду.

Устройство управления является функционально наиболее сложным устройством ЭВМ. УУ обеспечивает автоматизацию выполнения вычислительного процесса, вырабатывая управляющие сигналы, поступающие во все блоки ЭВМ. В процессе выполнения программы УУ:

1) Выбирает очередную команду, помещая её в регистр команд.

2) Расшифровывает ее с помощью дешифратора операций и преобразовывает команду в последовательность простейших низкоуровневых операций (таких, как пересылка или сдвиг данных, установка и анализ признаков и др.), определяя тем самым какие действия и над какими операндами следует выполнять. Такие элементарные низкоуровневые операции называются микрооперациями, а команды, формируемые УУ, называются микрокомандами. Последовательность микрокоманд, соответствующая одной команде называется микропрограммой. Для хранения этих микропрограмм УУ содержит ПЗУ микропрограмм.

3) Помещает выбранные из ЗУ операнды в АЛУ, а результаты выполнения команды снова в ЗУ.

Для вычисления адреса следующей команды УУ использует регистр-счетчик (указатель) команд и регистр, который хранит код признака результата (в PDP-11 это регистр состояния процессора PS (Processor Status), в процессоре Intel 8086 это регистр флагов F). Анализ этого кода позволяет производить ветвление программы в зависимости от конкретных значений данных.

В простейшем случае УУ имеет в своем составе 3 регистра: регистр команды, содержащий код команды во время её выполнения, регистр-счетчик команд, который содержит адрес очередной команды, подлежащей выполнению, и регистр адреса, в котором вычисляются адреса операндов.

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

На рис.3.9 приведена общая схема работы АЛУ на примере выполнения операции суммирования. Рассмотрим по этой схеме работу центрального процессора, выполняющего команду сложения.

1) Из УУ в ЗУ поступает адрес очередной команды и сигнал «читать». Затем УУ производит считывание команды из памяти. В качестве адреса ячейки памяти с командой используется содержимое регистра–счетчика команд.

В этот регистр адрес первой команды исполняемой программы (после перезаписи её из внешней памяти в оперативную) устанавливает операционная система. Например, в дисковой операционной системе (DOS - Disk Operation System) это делает главная программа DOS - Command.com.

2) После интерпретации содержимого считанной ячейки как команды, УУ помещает её в регистр команды и начинает расшифровывать. По коду операции УУ определяет длину команды и, если это необходимо, организует дополнительные операции считывания, пока вся команда полностью не будет считана процессором. В регистре счетчике команд УУ формирует адрес очередной команды добавлением к его содержимому длины считанной команды (для двухбайтовой команды +2). Если текущая команда – команда передачи управления, то в соответствии с кодом признака результата предыдущей команды содержимое регистра счетчика команд корректируется.

3) По адресным полям команды УУ определяет, имеет ли команда операнды. Если это так (как в нашем случае), то в соответствии с режимом адресации в модуле формирования адреса вычисляется полный адрес операнда А и заносится в регистр адреса. По этому адресу и сигналу «читать» из ЗУ считывается операнд А и заносится в регистр R1 АЛУ.

4) Аналогично операнд В заносится в регистр R2 АЛУ.

Рис. 3.9. Общая схема работы АЛУ на примере операции суммирования.

5) Схемы управления АЛУ принимают от УУ управляющие сигналы (в соответствии с кодом операции) и преобразуют их в сигналы, управляющие работой регистров и сумматора АЛУ. По этим сигналам операнды передаются в вычислительную схему - комбинационный сумматор, где осуществляется действие и формируется результат С. Он фиксируется в регистре результата R3 и выдается в схему формирования признака результата. Вместо регистра результата в двухадресных командах используется регистр R1.

6) В этой схеме результат анализируется (=0,>0,<0, переполнение) и формируется код признака, который отсылается в соответствующий регистр.

7) По адресу результата (в трехадресной команде) или адресу операнда А (в двухадресной команде) в ЗУ и сигналу «записать» УУ переписывает результат С из АЛУ в память.

8) Если эта команда не была последней то описанная последовательность действий (называемая циклом процессора) повторяется, начиная с шага 1. В противном случае управление будет передано обратно в операционную систему (в программу Command.com).

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

Основным фактором, определяющим быстродействие процессора, является тактовая частота. Передача информации между процессором и ЗУ, а, следовательно, выполнение каждой команды может осуществляться только в строго определенные моменты времени, соответствующие появлению синхронизирующих (тактовых) импульсов. При этом, как правило, для выполнения команды требуется несколько тактов времени. Например, при выполнения двухадресной команды в первом такте выполняется считывание команды (шаг 1), во втором такте – считывание операнда А (шаг3), в третьем – считывание операнда В (шаг 4), в четвертом – формирование результата (шаг 5), в пятом – запись результата и кода признака результата (шаги 6 и 7) и т.д. Понятно поэтому, что чем выше тактовая частота, тем выше количество операций, выполняемых центральным процессором в единицу времени.

Вторым важным фактором являются технологические нормы, используемые при производстве процессора. Эти нормы, обозначают допустимое расстояние между цепями на кристалле кремния и минимально возможный линейный размер логических и других элементов.

Уменьшение размеров приводит к уменьшению рассеиваемой мощности (10-40 Вт), а значит к уменьшению перегрева процессора (макc t=70-85°C), что позволяет поднять рабочую тактовую частоту, на которой надежно функционируют элементы, и использовать пониженное напряжение питания 3,3 и 2,8 В и ниже (вместо стандартных 5 В).

Поэтому все производители стремятся ужесточить технологические нормы для повышения производительности процессоров. Например, МП 80486 и Pentium-66 использовали 0,8-мкм элементы, сейчас процессоры изготовляют большей частью по норме 0,18 мкм, уже появились кристаллы по 0,13-микронной технологии (Pentium IV с высокой тактовой частотой).

Соседние файлы в папке Лекции по информатике