Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Kandaurova_N_Vychislitelnye_sistemy_seti_i_telekommunikatsii

.pdf
Скачиваний:
245
Добавлен:
12.03.2016
Размер:
6.64 Mб
Скачать

МП, начиная от 80486, обладают встроенной в основное ядро МП кэшпамятью (или кэш-памятью 1-го уровня – L1), чем, в частности, и обусловливается их высокая производительность. МП Pentium имеют кэшпамять отдельно для данных и отдельно для команд: у МП Pentium и Pentium Pro емкость этой памяти небольшая – по 8 Кбайт, у следующих версий МП Pentium по 16 Кбайт, а у МП серии Core по 32 Кбайт. У Pentium Pro и выше кроме кэш-памяти 1-го уровня (L1) есть и встроенная на микропроцессорную плату кэш-память 2-го уровня (L2) емкостью от 128 до 2048 Кбайт. Эта встроенная кэш-память работает либо на полной тактовой частоте МП, либо на его половинной тактовой частоте.

Следует иметь в виду, что для всех МП используется дополнительная кэш-память 2-го (L2) или 3-го (L3) уровня, размещаемая на системной плате (СП) вне МП, емкость которой может достигать нескольких мегабайтов (кэш на СП относится к уровню 3, если МП, установленный на этой плате, имеет кэш 2-го уровня). Время обращения к кэш-памяти зависит от тактовой частоты, на которой кэш работает, и составляет обычно 1-2 такта. Так, для кэш-памяти L1 МП Pentium характерно время обращения 2-5 нс, для кэшпамяти L2 и L3 это время доходит до 10 нс. Пропускная способность кэшпамяти зависит и от времени обращения, и от пропускной способности интерфейса, и лежит в широких пределах от 300 до 3000 Мбайт/с.

Использование кэш-памяти существенно увеличивает производительность системы. Чем больше размер кэш-памяти, тем выше быстродействие, но эта зависимость нелинейная. Имеет место постепенное уменьшение скорости роста общей производительности компьютера с ростом размера кэш-памяти. Для современных ПК рост производительности, как правило, практически прекращается после 1 Мбайт кэш-памяти L2. Создается кэш-память LI, L2, L3 на основе микросхем статической памяти.

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

5.2. Центральный процессор компьютеров

Структура центрального процессора [6, 10, 22, 23]. Основу центрального процессора ПК составляет микропроцессор – обрабатывающее устройство, служащее для арифметических и логических преобразований данных, для организации обращения к ОП и ВнУ и для управления ходом вычислительного процесса. В настоящее время существует большое число разновидностей микропроцессоров, различающихся назначением, функциональными возможностями, структурой и исполнением. Наиболее существенными, классификационными различиями между ними чаще всего выступают:

назначение (для персональных компьютеров, для серверов и т.д.);

70

количество разрядов в обрабатываемой информационной единице (8-, 16-, 32- и 64-битовые);

технология изготовления (0,5; 0,35; 0,25; 0,18; 0,13 и 0,065 мкм). Среди МП для серверов и мощных приложений прочное место

завоевали RISC-процессоры (Reduce Instruction Set Computing) с сокращенной системой команд. Система команд таких МП содержит ограниченное число (порядка 50) очень простых команд. За счет этого упрощаются схемы управления микропроцессором и сокращаются его размеры. На кристалле МП (чипе) освобождается место, которое используется для размещения кэшпамяти большого объема. Наличие такой памяти внутри чипа позволяет сократить количество обращений к основной памяти, а это приводит к повышению быстродействия компьютеров в 2-10 раз, т.к. обращение к кэшпамяти, расположенной внутри чипа, требует меньших затрат времени. Для повышения производительности RISC-процессоры обычно работают с машинными словами очень большой длины (не менее 64 бит). Прогнозируется, что некоторые типы RISC-микропроцессоров будут использоваться до 2025 г.

Микропроцессоры для персональных компьютеров обычно относятся к

CISC-процессорам (Complete Instruction Set Computing) с полной системой команд, насчитывающей до 250 команд.

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

Все эти усовершенствования позволили сделать ПК мультипрограммным, многопользовательским и многозадачным. Тактовая частота МП Pentium сейчас уже составляет 1-10 ГГц.

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

Микропроцессоры Pentium Pro фирма Intel начала выпускать по технологии 0,5 мкм, сейчас осваивает 0,05 мкм-технологию.

Крупнейшими производителями аналогов (клонов) микропроцессоров Intel являются фирмы Cyrix и AMD. Фирма AMD завоевала около 30% рынка МП в России, их МП уже в 2000 г. работали с тактовой частотой 1 ГГц.

Структурная схема базовой модели МП фирмы Intel приведена на рисунке 5.3. Условно микропроцессор можно разделить на две части: исполнительный блок и устройство сопряжения с системной магистралью [6, 10, 21, 23].

В исполнительном блоке находятся арифметический блок и регистры общего назначения (РОН). Арифметический блок включает арифметико-

71

логическое устройство, вспомогательные регистры для хранения операндов и регистр флагов.

Рисунок 5.3 – Структурная схема микропроцессора

Восемь регистров исполнительного блока МП (АХ, ВХ, СХ, DX, SP, ВР, SI, DI), имеющих длину машинного слова, делятся на две группы. Первую группу составляют регистры общего назначения — АХ, ВХ, СХ и DX, каждый из которых представляет собой регистровую пару, составленную из двух регистров длиной 0,5 машинного слова: аккумулятор или регистр АХ, состоит из регистров АН и AL. Регистр базы ВХ (Base Register) состоит из регистров ВН и BL. Счетчик СХ (Count Register) включает регистры СН и CL. Регистр данных DX (Data Register) содержит регистры DH и DL. Каждый из коротких регистров может использоваться самостоятельно или в составе регистровой пары. Условные названия (аккумулятор, регистр базы, счетчик, регистр данных) не ограничивают применения этих регистров. Эти названия

72

говорят о наиболее частом использовании их или об особенности использования того или иного регистра в той или иной команде.

Вторую группу составляют адресные регистры: SP, ВР, SI и DI (в старших моделях количество адресных регистров увеличено). Эти регистры активно используются по функциональному назначению и в других целях их применять не рекомендуется. В качестве адресного регистра часто используется РОН ВХ. Программно допускается использование регистров ВР, DI и SI в качестве регистров для хранения операндов, но отдельные байты в этих регистрах недоступны. Основное их назначение – хранить числовые значения, реализуемые при формировании адресов операндов.

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

Управляющие регистры BIU: CS (указатель командного сегмента), DS (указатель сегмента данных), SS (указатель сегмента стека), ES (указатель дополнительного сегмента) и др. – служат для определения физических адресов ОП – операндов и команд. Регистр IP (Instruction Pointer – счетчик команд) является указателем адреса команды, которая будет выбираться в конвейер команд в качестве очередной команды. Конвейер команд МП хранит несколько команд, что позволяет при выполнении линейных программ совместить подготовку очередной команды с выполнением текущей.

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

Все флаги младшего байта регистра устанавливаются арифметическими или логическими операциями МП. Все флаги старших байтов, за исключением флага переполнения, устанавливаются программным путем. Для этого в МП имеются команды установки флагов (STC, STD, STI), сброса (CLC, CLD, CLI), инвертирования (CMC).

МП типа VLIW (Very Length Instruction Word) со сверхбольшим командным словом. Это новый и весьма перспективный тип МП, является компромиссом между CISC и RISC, попытка сделать их совместимыми. Существуют два режима кодирования команд – VLIW и старый CISC. Программы автоматически переключаются в необходимый режим исполнения. Для работы в VLIW операционные системы должны содержать и 64-разрядную часть на МП, и старую 32разрядную.

73

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

Взаимодействие элементов при работе микропроцессора [6, 10, 21, 23]. Работой МП управляет программа, записанная в его ОП. Адрес очередной команды хранится в счетчике команд IP (Instruction Pointer) и в одном из сегментных регистров (чаще всего в CS). Каждый из них в реальном режиме имеет длину 16 бит, тогда как физический адрес ОП должен иметь длину 20 бит. Несогласованность длины машинного слова (16 бит) и длины физического адреса ОП (20 бит) приводит к тому, что в командах невозможно указать физический адрес ОП – его приходится формировать, собирать из разных регистров МП в процессе работы.

В реальном режиме вся ОП делится на сегменты (длина сегмента – 64 Кбайта). Адрес ОП состоит из двух частей: номер сегмента в ОП (база сегмента) и номер ячейки внутри данного сегмента (смещение относительно начала сегмента). Базовый адрес сегмента образуется добавлением к номеру сегмента справа четырех нулей. Поскольку последние четыре разряда абсолютного (физического) адреса сегмента всегда нулевые, сегмент может начинаться не с любой ячейки ОП, а только с «параграфа» – начала 16байтового блока ОП. В структуре микропроцессора имеется несколько регистров сегментов, например в i8086 – четыре:

CS – программный сегмент;

DS – сегмент данных (информационный сегмент); SS – стековый сегмент;

ES – расширенный сегмент (дополнительный сегмент данных).

Номер ячейки внутри сегмента (смещение) называется также исполнительным адресом. В большинстве случаев в адресной части команды указывается именно исполнительный адрес – номер сегмента чаще всего подразумевается по умолчанию. Однако допускается указание и полного адреса ОП в виде префиксной структуры: «сегмент-смещение». Если сегмент в команде не указывается, значит, работа ведется внутри текущего сегмента.

Номер сегмента так же, как и смещение, имеет длину 2 байта. При вычислении физического адреса ОП сегмент и смещение суммируются, но сегмент перед суммированием сдвигается влево на 4 бита. В результате суммирования образуется физический адрес ОП длиной 20 бит.

В защищенном режиме базовые адреса сегментов хранятся в дескрипторных таблицах и имеют длину 24 или 32 бита (в зависимости от типа МП). В сегментных же регистрах хранится селектор» содержащий номер дескрипторной таблицы и дескрипторное смещение, т.е. порядковый номер дескриптора (в котором хранится базовый адрес сегмента) в данной дескрипторной таблице (рисунок 5.4).

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

74

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

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

В зависимости от используемого в команде режима адресации организуется выборка необходимых исходных данных.

Система команд микропроцессора. Системы команд у разных процессоров очень похожи. Количество команд у процессора 8086 – 133. У современных мощных процессоров количество команд достигает нескольких сотен.

Рисунок 5.4 – Формирование физического адреса ОП в защищенном режиме

В общем случае система команд процессора включает в себя следующие четыре основные группы команд:

команды пересылки данных;

арифметические команды;

логические команды;

команды переходов.

Команды пересылки данных [6, 10, 21, 23] не требуют выполнения никаких операций над операндами. Операнды просто копируются из источника (Source) в приемник (Destination). Источником и приемником

75

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

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

загрузка (запись) LOAD содержимого во внутренние регистры процессора;

сохранение в памяти содержимого внутренних регистров процессора;

копирование содержимого из одной области памяти в другую;

запись в устройства ввода/вывода OUT и чтение из устройств ввода/вывода IN.

Арифметические команды [6, 10, 21, 23] выполняют операции сложения, вычитания, умножения, деления, увеличения на единицу (инкрементирования), уменьшения на единицу (декрементирования) и т.д. Этим командам требуется один или два входных операнда. Формируют команды один выходной операнд.

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

команды операций с фиксированной запятой (сложение ADD, вычитание SUB, умножение MUL, деление DIV);

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

команды очистки CLR;

команды инкремента INC и декремента DEC;

команда сравнения CMP.

Логические команды [6, 10, 21, 23] производят над операндами логические операции: И, ИЛИ, исключающее ИЛИ, НЕ, очистку, разнообразные сдвиги (вправо, влево, арифметический сдвиг, циклический сдвиг). Этим командам, как и арифметическим, требуется один или два входных операнда, и формируют они один выходной операнд.

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

логическое И AND, логическое ИЛИ OR, сложение по модулю 2 (Исключающее ИЛИ) XOR;

логические, арифметические и циклические сдвиги;

проверка битов BIT и операндов TST;

установка и очистка битов (флагов) регистра состояния процессора

(PSW).

Команды переходов [6, 10, 21, 23] предназначены для изменения обычного порядка последовательного выполнения команд. С их помощью

76

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

Команды переходов без возврата делятся на две группы:

команды безусловных переходов;

команды условных переходов.

В обозначениях этих команд используются слова Branch (ветвление) и Jump (прыжок).

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

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

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

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

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

5.3. Многоядерные микропроцессоры

Повышение быстродействия МП путем увеличения их тактовой частоты достигло предела [6]. Уже МП Pentium 4Е с тактовой частотой 3,8 ГГц потребляет мощность около 160 Вт (сила тока более 100 А) и это при площади кристалла 1,2 см2. Поэтому компания Intel отказалась от своих планов поднять в ближайшие годы тактовую частоту МП до 20 ГГц. Производительность МП решено увеличивать путем параллельного выполнения вычислений. Подобные идеи уже реализованы в высокопараллельных многопроцессорных системах и в серверных МП Xeon (Intel) и Opteron (AMD). В МП для персональных компьютеров сначала дело ограничивалось лишь созданием в одном физическом МП двух параллельно работающих виртуальных процессоров (технология НТ). Но виртуальная многопроцессорность обеспечивает реальный рост производительности

77

только на 10-30% для программ, допускающих распараллеливание вычислений, и в которых команды параллельных потоков не используют одновременно одни и те же аппаратные ресурсы процессора (АЛУ, МПП, кэш-память L1 и другие). Такие задачи всречаются не часто.

Существенно больший эффект обеспечивают двухъядерные МП Xeon, Opteron и др. Первый 2-ядерный процессор выпустила AMD в 2005 году (64 разрядный Opteron, предназначенный для высокопроизводительных серверов). Затем компания Intel выпустила своего 2-ядерного 64 разрядного МП Xeon. 2-ядерный микропроцессор Xeon с тактовой частотой 2,8 ГГц имеет кэш-память L2 емкостью 2 Мбайт и работает с оперативной памятью DDR 2. Два ядра этого МП делят одну шину. Xeon – серверный процессор, которому для работы требуется новый чипсет – Intel Е8500. Ядро Smithfield микропроцессора представляет собой микросхему, объединяющую на одном монокристалле два ядра Prescott, не имеющих общих схемных компонент. 2- ядерные МП Athlon 64 Х2 компании AMD имеют общие для ядер компоненты (арбитр шины и контроллер памяти DDR).

Двухъядерные МП по сравнению с параллельными виртуальными процессорами обеспечивают большую производительность, поскольку у них почти нет совместно используемых процессорных ресурсов (АЛУ, МПП, кэш-память L1 у каждого свои). Потребляемая мощность у них значительно меньше, чем у более высокочастотных одноядерных МП той же производительности. Поэтому 2-ядерные и многоядерные МП будут активно использоваться в персональных компьютерах. По статистике в 2007 году более 70% новых настольных ПК имели 2-ядерные микропроцессоры. Для 2- ядерных МП необходимы системные платы со специальными разъемами и чипсетами. В частности Intel представила чипсеты i945, 955, 965 и 975, поддерживающие многоядерную конфигурацию и работающие только с памятью DDR.

Особо следует сказать об анонсированных компаниями Sony, Toshiba и IBM в 2005 году 9-ядерных микропроцессорах Cell (cell – ячейка). Эти МП используют все новейшие достижения микроэлектроники: 0,09 мкм технология, «кремний на изоляторе» (SOI), «напряженный кремний» (strained Si), медные соединения (Си). Площадь объединившего 9 ядер кристалла – 2,2 см2, число транзисторов – 234 млн., тактовая частота – 4 ГГц и очень низкое энергопотребление – 80 Вт.

Среди включенных в кристалл 9 ядер выделено одно ядро – Power Processor Element (РРЕ), построенный на базе RISC МП Power PC. РРЕ содержит еще два 64-разрядных ядра, поддерживающих выполнение двух потоков вычислений. 8 остальных ядер представляют собой векторные процессоры, каждый со своей локальной памятью. Они могут работать как независимо друг от друга, так и согласованно, распределяя между собой вычислительную работу.

Микропроцессоры Cell позиционируются как весьма универсальные процессоры для использования и в серверах, и в персональных настольных, и портативных компьютерах, и даже в домашней технике (например,

78

телевизорах). Один из руководителей компании IBM сказал, что архитектура Cell может определить развитие МП на период ближайших 10-20 лет.

Первым представителем 2-ядерных процессоров для персональных компьютеров в 2005 году стал Pentium D, известный под кодовым именем «Smithfield», выполненный по 0,09 мкм технологии. 2-ядерный Pentium D отличается от 1-ядерных Pentium 4Е незначительно. Он также использует разъем LGA 775, но для его работы необходим системный чипсет i945 или с большим номером из серии i900.

Литература

Список основной литературы

1.Бройдо В.Л., Ильина О.П. Вычислительные системы, сети и телекоммуникации. – 3-е изд. – СПб.: Питер, 2008.

2.Истомин Е.П., Неклюдов С.В., Чертков А.А. Вычислительные системы, сети и телекоммуникации: учебник. – СПб.: Андреевский издательский дом, 2007.

3.Поветкин С.Н. Вычислительные системы, сети и телекоммуникации (краткий курс): учеб. пособие. – СПб.: Андреевский издательский дом,

2005.

4.Пятибратов А.П. Вычислительные системы, сети и телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред. А.П. Пятибратова. – 4-е изд., перераб. и доп. – М.: Финансы и статистика; ИНФРА-М, 2008.

Список дополнительной литературы

1.Аппаратные средства IBM PC: энциклопедия / М. Гук. – СПб.: Питер, 2003.

2.Аппаратные средства и организация персонального компьютера: учеб. пособие / Г.А. Дудкин, Д.Д. Кондратьев, С.Ю. Неклюдов; под ред. С.Ю. Неклюдова. – СПб.: СПбГУВК, 2004.

3.Архитектура IBM-совместимых персональных компьютеров: учеб. пособие / Г.А. Дудкин, Д.Д. Кондратьев, С.Ю. Неклюдов; под ред. С.Ю. Неклюдова. – СПб.: СПбГУВК, 2001.

4.Бройдо В.Л. Вычислительные системы, сети и телекоммуникации: учебник. – 2-е изд. – СПб.: Питер, 2005.

5.Информатика: учебник / под ред. Н.В. Макаровой. – М.: Финансы и статистика, 2004.

6.Основы современных компьютерных технологий: учебник / под ред. проф. А.Д. Хомоненко. – СПб.: КОРОНА принт, 2005.

7.Процессоры Pentium 4, Pentium 3, Athlon и Duron / М. Гук, В. Юров. –

СПб.: Питер, 2001.

8.Пятибратов А.П. Вычислительные системы, сети и телекоммуникации: учебник / А.П. Пятибратов, Л.П. Гудыно, А.А. Кириченко; под ред.

79

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]