4

Теория Техническая база информационной технологии Архитектура персонального компьютера 4.3. Микропрцессоры

## 4.3. МИКРОПРОЦЕССОРЫ

- ### Типы микропроцессоров

- ### Структура микропроцессора

- ### Последовательность работы блоков ПК

### ТИПЫ МИКРОПРОЦЕССОРОВ

#### Общая характеристика

Микропроцессор, иначе, центральный процессор - Central Processing Unit (CPU) - функционально законченное программно-управляемое устройство обработки информации, выполненное в виде одной или нескольких больших (БИС) или сверхбольших (СБИС) интегральных схем.

Для МП на БИС или СБИС характерны:

- простота производства (по единой технологии);

- низкая стоимость (при массовомпроизводстве);

- малые габариты (пластина площадью несколько квадратных сантиметров или кубик со стороной несколько миллиметров);

- высокая надежность;

- малое потребление энергии.

Микропроцессор выполняет следующие функции:

- чтение и дешифрацию команд из основной памяти;

- чтение данных из ОП и регистров адаптеров внешних устройств;

- прием и обработку запросов и команд от адаптеров на обслуживание ВУ;

- обработку данных и их запись в ОП и регистры адаптеров ВУ;

- выработку управляющих сигналов для всех прочих узлов и блоков ПК.

Разрядность шины данных микропроцессора определяет разрядность ПК в целом; разрядность шины адреса МП - его адресное пространство.

Адресное пространство - это максимальное количество ячеек основной памяти, которое может быть непосредственно адресовано микропроцессором.

Первый микропроцессор был выпущен в 1971 г. фирмой Intel (США) - МП 4004. В настоящее время выпускается несколько сотен различных микропроцессоров, но наиболее популярными и распространенными являются микропроцессоры фирмы Intel и Intel-подобные.

Все микропроцессоры можно разделить на три группы:

- МП типа CISC (Complex Instruction Set Computing) с полным набором команд;

- МП типа RISC (Reduced Instruction Set Computing) с сокращенным набором команд;

- МП типа MISC (Minimum Instruction Set Computing) с минимальным набором команд и весьма высоким быстродействием (в настоящее время зги модели находятся в стадии разработки).

Микропроцессоры типа CISC

Большинство современных ПК типа IBM PC (International Business Machine) используют МП типа CISC, характеристики наиболее распространенныхиз них приведены в табл. 4.5.

Таблица 4.5. Характеристики наиболее распространенных CISC МП

Модель МП | Разрядность, бит | Тактовая частота, МГц | Адресное пространство, байт | Число команд | Число элементов | Год выпуска
данных | Адреса
4004 | 4 | 4 | 4,77 | 4*103 | 45 | 2300 | 1971
8080 | 8 | 8 | 4,77 | 64*103 |  | 10000 | 1974
8086 | 16 | 16 | 4,77 и 8 | 106" | 134 | 70000 | 1982
8088 | 8, 16 | 16 | 4,77 и 8 | 106 | 134 | 70000 | 1981
80186 | 16 | 20 | 8 и 10 | 106 |  | 140000 | 1984
80286 | 16 | 24 | 10-33 | 4*106 (виртуальное 109) |  | 180000 | 1985
80386 | 32 | 32 | 25-50 | 16*106 (виртуальное 4*109) | 240 | 275000 | 1987
80486 | 32 | 32 | 33-100 | 16*106 (виртуальное 4*109) | 240 | 1,2х106 | 1989
Pentium | 64 | 32 | 50-150 | 4*109 | 240 | 3,1*106 | 1993
Pentium Pro | 64 | 32 | 66-200 | 4*109 | 240 | 5,5*106 | 1995

Примечания: 1. У микропроцессоров МП 80386, 80486 есть модификации с буквами SX, DX, SL и др. (80486SX, 80486DX), отличающиеся от базовой модели разрядностью шин, тактовой частотой, надежностью работы, габаритами, потреблением энергии, амплитудой напряжения и другими параметрами:

DX практически совпадает с базовой моделью;

SX и SL имеют, в частности, меньшую разрядность шин;

SL и особенно SLE - энергосберегающие, ориентированы на использование в портативных ПК (Lap Top, Note Book).

2. Число элементов - это количество элементарных полупроводниковых элементов, размешенное в интегральной схеме МП.

Микропроцессоры 80486 DX и все последующие модели могут работать с умножением внутренней частоты. Например, у МП DX2 внутренняя частота в 2 раза, а у МП DX4 - в 3 раза выше тактовой. С увеличенной частотой работают только внутренние схемы МП, все внешние по отношению к МП схемы, в том числе расположенные и на системной плате, работают с обычной частотой.

Отметим некоторые характеристики МП:

- начиная с МП 80386 используется конвейерное выполнение команд - одновременное выполнение разных тактов последовательных команд в разных частях МП при непосредственной передаче результатов из одной части МП в другую. Конвейерное выполнение команд увеличивает эффективное быстродействие ПК в 2 - 3 раза;

- начиная с МП 80286 предусматривается возможность работы в вычислительной сети;

- начиная с МП 80286 имеется возможность многозадачной работы (многопрограммность) и сопутствующая ей защита памяти;

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

- начиная с МП 80286 микропроцессоры могут работать в двух режимах: реальном (Real mode) и защищенном (Protected mode). В реальном режиме имитируется (эмулируется) работа МП 8086, естественно, однозадачная. В защищенном режиме возможна многозадачная работа с непосредственным доступом к расширенной памяти (см подразд. 4.5) и с защитой памяти, отведенной задачам, от посторонних обращений.

Микропроцессоры 80586 (Р 5) более известны по их товарной марке Pentium, которая запатентована фирмой Intel (МП 80586 других фирм имеют иные обозначения: К5 у фирмы AMD, M 1 у фирмы Cyrix и др.).

Эти микропроцессоры имеют пятиступенную конвейерную структуру, обеспечивающую многократное совмещение тактов выполнения последовательных команд, и КЭШ-буфер для команд условной передачи управления, позволяющий предсказывать направление ветвления программ; по эффективному быстродействию они приближаются к RISC МП, выполняющим каждую команду как бы за один такт. Pentium имеют 32-разрядную адресную шину и 64-разрядную шину данных. Обмен данными с системой может выполняться со скоростью 1 Гбайт/с.

У всех МП Pentium имеется встроенная КЭШ-память, отдельно для команд, отдельно для данных; имеются специализированные конвейерные аппаратные блоки сложения, умножения и деления, значительно ускоряющие выполнение операций с плавающей запятой.

Микропроцессоры Pentium Pro. В сентябре 1995 г. прошли презентацию и выпущены МП 80686 (Р6), торговая марка Pentium Pro. Благодаря новым схемотехническим решениям они обеспечивают для ПК более высокую производительность Часть этих новшеств может быть объединена понятием динамическое исполнение (dynamic execution), что в первую очередь означает наличие 14-ступенной суперконвейерной структуры (superpipelining), предсказания ветвлений программы при условных передачах управления (branch prediction) и исполнение команд по предполагаемому пути ветвления (speculative execution).

Примечание. В программах решения многих задач, особенно экономических, содержится большое число условных передач управления. Если процессор может заранее предсказывать направление перехода (ветвления), то производительность его работы значительно повысится за счет оптимизации загрузки вычислительных конвейеров. В процессоре Pentium Pro вероятность правильного предсказания 90 % против 80 % у МП Pentium.

КЭШ-память емкостью 256 - 512 Кбайт - обязательный атрибут высокопроизводительных системна процессорах Pentium. Однако у них встроенная КЭШ-память имеет небольшую емкость (16 Кбайт), а основная ее часть находится вне процессора на материнской плате. Поэтому обмен данными с ней происходит не на внутренней частоте МП, а на частоте тактового генератора, которая обычно в 2 -3 раза ниже, что снижает общее быстродействие компьютера.В МП Pentium Pro КЭШ-память емкостью 256-512 Кбайт находится в самом микропроцессоре.

Микропроцессоры OverDrive. Интерес представляют также недавно разработанные МП OverDrive, по существу являющиеся своеобразными сопроцессорами, обеспечивающими для МП 80486 режимы работы и эффективное быстродействие, характерные для МП Pentium. Появились МП OverDrive, улучшающие характеристики и микропроцессоров Pentium.

Микропроцессоры типа RISC

Микропроцессоры типа RISC содержат набор только простых, чаше всего встречающихся в программах команд. При необходимости выполнения более сложных команд в микропроцессоре производится их автоматическая сборка из простых. В этих МП на выполнение каждой простой команды за счет их наложения и параллельного выполнения тратится 1 машинный такт (на выполнение даже самой короткой команды из системы CISC обычно тратится 4 такта).

Некоторые микропроцессоры типа RISC: один из первых МП - ARM (на его основе выпускались ПК IBM PC RT) - 32-разрядный МП, имеющий 118 различных команд. Современные RISC МП (80860, 80960, 80870, Power PC) являются 64-разрядными при быстродействии до 150 млн. оп./с. Микропроцессоры Power PC (Performance Optimized With Enhanced RISC PC) весьма перспективны и уже сейчас широко применяются в машинах-серверах и в ПК типа Macintosh.

Микропроцессоры типа RISC имеют очень высокое быстродействие, но программно не совместимы с CISC-процессорами: при выполнении программ, разработанных для ПК типа IBM PC, они могут лишь эмулировать (моделировать, имитировать) МП типа CISC на программном уровне, что приводит к резкому уменьшению их эффективной производительности.

Все новые МП создаются на основе технологий, обеспечивающих формирование элементов с линейным размером порядка 0,5 мкм (традиционные МП 80486 и Pentium-66 использовали 0,8-мкм элементы).

Уменьшение размеров элементов обеспечивает возможность:

- увеличения тактовой частоты МП до 100 МГц и выше, поскольку тормозом в увеличении быстродействия уже является недостаточная (!) скорость распространения "света" (300 000 км/с);

- уменьшения перегрева МП, позволяя использовать пониженное напряжение питания 3,3 В (вместо стандартных 5 В).

- Функционально МП состоит из двух частей:

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

- интерфейсной, содержащей адресные регистры МПП, блок регистров команд, схемы управления шиной и портами.

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

СТРУКТУРА МИКРОПРОЦЕССОРА

Устройство управлении

Устройство управления является функционально наиболее сложным устройством ПК. Оно вырабатывает управляющие сигналы, поступающие по кодовым шинам инструкций во все блоки машины.

Упрощенная функциональная схема УУ показана на рис. 4.5. Здесь представлены:

Регистр команд - запоминающий регистр, в котором хранится код команды: код выполняемой операции и адреса операндов, участвующих в операции. Регистр команд расположен в интерфейсной части МП, в блоке регистров команд.

Дешифратор операций - логический блок, выбирающий в соответствии с поступающим из регистра команд кодом операции (КОП) один из множества имеющихся у него выходов.

Рис. 4.5. Укрупненная функциональная схема устройства управления

Постоянное запоминающее устройство микропрограмм - хранит в своих ячейках управляющие сигналы (импульсы), необходимые для выполнения в блоках ПК операций обработки информации. Импульс по выбранному дешифратором операций в соответствии с кодом операции считывает из ПЗУ микропрограмм необходимую последовательность управляющих сигналов.

Узел формирования адреса (находится в интерфейсной части МП) - устройство, вычисляющее полный адрес ячейки памяти (регистра) по реквизитам, поступающим из регистра команд и регистров МПП.

Кодовые шины данных, адреса и инструкций - часть внутренней интерфейсной шины микропроцессора. В общем случае УУ формирует управляющие сигналы для выполнения следующих основных процедур:

- выборки из регистра-счетчика адреса команды МПП адреса ячейки ОЗУ, где хранится очередная команда программы;

- выборки из ячеек ОЗУ кода очередной команды и приема считанной команды в регистр команд;

- расшифровки кода операции и признаков выбранной команды;

- считывания из соответствующих расшифрованному коду операции ячеек ПЗУ микропрограмм управляющих сигналов (импульсов), определяющих во всех блоках машины процедуры выполнения заданной операции, и пересылки управляющих сигналов в эти блоки;

- считывания из регистра команд и регистров МПП отдельных составляющих адресов операндов (чисел), участвующих в вычислениях, и формирования полных адресов операндов;

- выборки операндов (по сформированным адресам) и выполнения заданной операции обработки этих операндов;

- записи результатов операции в память;

- формирования адреса следующей команды программы.

Арифметико-логическое устройство

Арифметико-логическое устройство предназначено для выполнения арифметических и логических операций преобразования информации.

Функционально АЛУ (рис. 4.6) состоит обычно из двух регистров, сумматора и схем управления (местного устройства управления).

Рис. 4.6. Функциональная схема АЛУ

Сумматор - вычислительная схема, выполняющая процедуру сложения поступающих на ее вход двоичных кодов; сумматор имеет разрядность двойного машинного слова.

Регистры - быстродействующие ячейки памяти различной длины: регистр 1 (Рг1) имеет разрядность двойного слова, а регистр 2 (Рг2) - разрядность слова.

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

Схемы управления принимают по кодовым шинам инструкций управляющие сигналы от устройства управления и преобразуют их в сигналы для управления работой регистров и сумматора АЛУ.

АЛУ выполняет арифметические операции (+, -, *,:) только над двоичной информацией с запятой, фиксированной после последнего разряда, т.е. только над целыми двоичными числами.

Выполнение операций над двоичными числами с плавающей запятой и над двоично-кодированными десятичными числами осуществляется или с привлечением математического сопроцессора, или по специально составленным программам.

Микропроцессорная память

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

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

Микропроцессорная память состоит из быстродействующих регистров с разрядностью не менее машинного слова. Количество и разрядность регистров в разных микропроцессорах различны: от 14 двухбайтных регистров у МП 8086 до нескольких десятков регистров разной длины у МП Pentium.

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

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

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

Подробнее состав и назначение регистров МПП рассмотрены в [4].

Интерфейсная часть микропроцессора

Интерфейсная часть МП предназначена для связи и согласования МП с системной шиной ПК, а также для приема, предварительного анализа команд выполняемой программы и формирования полных адресов операндов и команд.

Интерфейсная часть включает в свой состав адресные регистры МПП, узел формирования адреса, блок регистров команд, являющийся буфером команд в МП, внутреннюю интерфейсную шину МП и схемы управления шиной и портами ввода-вывода.

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

Порт устройства содержит аппаратуру сопряжения и два регистра памяти - для обмена данными и обмена управляющей информацией. Некоторые внешние устройства используют и основную память для хранения больших объемов информации, подлежащей обмену. Многие стандартные устройства (НЖМД, НГМД, клавиатура, принтер, сопроцессор и др.) имеют постоянно закрепленные за ними порты ввода-вывода.

Схема управления шиной и портами выполняет следующие функции:

- формирование адреса порта и управляющей информации для него (переключение порта на прием или передачу и др.);

- прием управляющей информации от порта, информации о готовности порта и его состоянии;

- организацию сквозного канала в системном интерфейсе для передачи данных между портом устройства ввода-вывода и МП.

Схема управления шиной и портами использует для связи с портами кодовые шины инструкций, адреса и данных системной шины: при доступе к порту МП посылает сигнал по КШИ, который оповещает все устройства ввода-вывода, что адрес на КША является адресом порта, а затем посылает и сам адрес порта. То устройство, адрес порта которого совпадает, дает ответ о готовности, после чего по КШД осуществляется обмен данными.

ПОСЛЕДОВАТЕЛЬНОСТЬ РАБОТЫ БЛОКОВ ПК

Программа хранится во внешней памяти ПК. При запуске программы в работу пользователь выдает запрос на ее исполнение в дисковую операционную систему (DOS - Disk Operation System) компьютера. Запрос пользователя - это ввод имени исполняемой программы в командную строку на экране дисплея. Главная программа DOS - Command.com (см. гл. 9) обеспечивает перезапись машинной (исполняемой) программы из внешней памяти в ОЗУ и устанавливает в регистре-счетчике адреса команд микропроцессорной памяти адрес ячейки ОЗУ, в которой находится начало (первая команда) этой программы.

После этого автоматически начинается выполнение команд программы друг за другом. Каждая команда требует для своего исполнения нескольких тактов работы машины (такты определяются периодом следования импульсов от генератора тактовых импульсов) В первом такте выполнения любой команды производятся считывание кода самой команды из ОЗУ по адресу, установленному в регистре-счетчике адреса, и запись этого кода в блок регистров команд устройства управления. Содержание второго и последующих тактов исполнения определяется результатами анализа команды, записанной в блок регистров команд, т.е. зависит уже от конкретной команды.

Пример 4.15. При выполнении ранее рассмотренной машинной команды

СЛ | 0103 | 5102

будут выполнены следующие действия:

∙ второй такт: считывание из ячейки 0103 ОЗУ первого слагаемого и перемещение его в AЛV;

∙ третий такт: считывание из ячейки 5102 ОЗУ второго слагаемого и перемещение его в АЛУ;

∙ четвертый такт: сложение в АЛУ переданных чуда чисел и формирование суммы;

∙ пятый такт: считывание из АЛУ суммы чисел и запись ее в ячейку 0103 ОЗУ.

В конце последнего (в данном случае пятого) такта выполнения команды в регистр-счетчик адреса команд МПП будет добавлено число, равное количеству байтов, занимаемых кодом выполненной команды программы. Поскольку емкость одной ячейки памяти ОЗУ равна 1 байту и команды программы в ОЗУ размещены последовательно друг за другом, в регистре-счетчике адреса команд будет сформирован адрес следующей команды машинной программы, и машина приступит к ее исполнению и т.д. Команды будут выполняться последовательно одни за другой, пока не завершится вся программа. После завершения программы управление будет передано обратно в программу Command.com операционной системы.