Контрольная работа по «Вычислительные машины, системы и сети»

Автор работы: Пользователь скрыл имя, 19 Июня 2015 в 12:48, контрольная работа

Краткое описание

История процессоров началась в 1971 году, когда фирма Intel выпустила первый микропроцессор i4004. Он имел разрядность данных 4 бита, способность адресовать 640 байт памяти, тактовую частоту 108 кГц и производительность 0.06 MIPS. Такой процессор уже мог работать в качестве вычислительного ядра калькулятора. Он содержал 2300 транзисторов и выполнялся по технологии с разрешением 10 мкм. Через год появился его 8-битный “родственник” – i8008, адресующий уже 16 Кб памяти.

Содержание

ВВЕДЕНИЕ .............................................................................................................4
1.16-РАЗРЯДНЫЕ ПРОЦЕССОРЫ.......................................................................8
1.1. Процессоры i8086/88/.......................................................................................8
1.1.1. Организация памяти 8086/88........................................................................9
1.1.2. Адресация ввода-вывода.............................................................................10
1.1.3. Система команд...........................................................................................10
1.2. Процессоры 80186/80188...............................................................................10
1.2.1. Математический сопроцессор 8087...........................................................11
1.3. Процессор 80286.............................................................................................11
1.3.1. Организация памяти 80286.........................................................................12
1.3.2. Ввод-вывод...................................................................................................13
1.3.3. Начальный сброс и переход в защищенный режим.................................14
1.3.4. Защита...........................................................................................................15
2. АРХИТЕКТУРА 32-РАЗРЯДНЫХ ПРОЦЕССОРОВ....................................15
2.1.1. Организация памяти....................................................................................16
2.1.2. Прерывания и исключения.........................................................................20
2.1.3. Начальный сброс и самотестирование......................................................21
2.1.4. Ввод-вывод...................................................................................................22
2.1.5. Режим системного управления SMM........................................................23
2.1.6. Расширение ММХ.......................................................................................24
2.1.7. Внутренний кэш..........................................................................................26
2.2. Процессор 80386.............................................................................................29
2.3. Процессор 80486.............................................................................................30
2.4. Процессор Pentium.........................................................................................30
2.5. Процессор Celeron..........................................................................................36
2.6. Процессор PENTIUM® II XEON®...............................................................37
ПРИЛОЖЕНИЕ.....................................................................................................38
СПИСОК ЛИТЕРАТУРЫ.................

Прикрепленные файлы: 1 файл

готовая работа.docx

— 125.55 Кб (Скачать документ)

Регистры ММХ, в отличии от регистров FPU, адресуются физически а не относительно значения TOS. Более того, любая инструкция ММХ обнуляет поле TOS регистра состояния FPU. В слове тегов свободному регистру соответствует комбинация “11”, остальные комбинации указывают только на занятость регистра. После каждой операции ММХ биты тегов используемого регистра назначения обнуляются. Неиспользуемые в ММХ биты [79:64] регистров FPU заполняются единицами, так что ошибочное использование данных ММХ инструкций FPU приведет к исключению.

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

Инструкции ММХ доступны из любого режима процессора. При переключении задач необходимо следить за корректностью сохранения контекста, как и при работе с FPU.

Часто чередование годов FPU и ММХ может снизить производительность за счет необходимости сохранения и восстановления весьма объемного контекста FPU.

2.1.7. Внутренний  кэш

Внутренне кэширование обращений к памяти применяется в процессорах, начиная с 486-го. С кэшированием связаны новые функции процессоров, биты регистров и внешние сигналы.

Процессоры 486 и Pentium имеют внутренний кэш первого уровня, в Pentium Pro и Pentium II имеется и вторичный кэш. Процессоры могут иметь как единый кэш инструкций и данных, так и общий. Выделенный кэш инструкций обычно используется только для чтения. Для внутреннего кэша обычно используется наборно-ассоциативная архитектура.

Строки в кэш-памяти выделяются только при чтении, политика записи первых процессоров 486 – только Write Through (сквозная запись) – полностью программно-прозрачная. Более поздние модификации 486-го и все старшие процессоры позволяют переключаться на политику Write Back (обратная запись).

Работу кэша рассмотрим на примере четырехканального наборно-ассоциативного кэша процессора 486, его физическая структура приведена на рис. 3.1.7. Кэш является несекторированным – каждый бит достоверности (Valid bit) относится к целой строке, так что стока не может являться “частично достоверной”.

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

Любой внутренний запрос процессора на обращение к памяти направляется на внутренний кэш. Теги четырех строк набора, который обслуживает данный адрес, сравниваются со старшими битами запрошенного физического адреса. Если адресуемая область представлена в строке кэш-памяти (случая попадания –cache hit), запрос на чтение обслуживается только кэш-памятью, не выходя на внешнюю шину. Запрос на запись модифицирует данную строку, и в зависимости от политики записи либо сразу выходит на внешнюю шину (при сквозной записи), либо несколько позже (при использовании алгоритма обратной записи).

В случае промаха (Cache Miss) запрос на запись направляется только на внешнюю шину, а запрос на чтение обслуживается сложнее. Если этот зарос относится к кэшируемой области памяти, выполняется цикл заполнения целой строки кэша – все 16 байт (32 для Pentium) читаются из оперативной памяти и помещаются в одну из строк кэша, обслуживающего данный адрес. Если затребованные данные не укладываются в одной строке, заполняется и соседняя. Заполнение строки процессор старается выполнить самым быстрым способом – пакетным циклом с 32-битными передачами (64-битными для Pentium и старше).

Внутренний запрос процессора на данные удовлетворяется сразу, как только затребованные данные считываются из ОЗУ – заполнение строки до конца может происходить параллельно с обработкой полученных данных. Если в наборе, который обслуживает данный адрес памяти, имеется свободная строка (с нулевым битом достоверности), заполнена будет она и для нее установится бит достоверности. Если свободных строк в наборе нет, будет замещена строка, к которой дольше всех не было обращений. Выбор строки для замещения выполняется на основе анализа бит LRU (Least Recently Used) по алгоритму “псевдо-LRU”. Эти биты (по три на каждый из наборов) модифицируются при каждом обращении к строке данного набора (кэш-попадании или замещении).

Таким образом, выделение и замещение строк выполнятся только кэш-промахов чтения, при промахах записи заполнение строк не производится. Если затребованная область памяти присутствует в строке внутреннего кэша, то он обслужит этот запрос. Управлять кэшированием можно только на этапе заполнения строк; кроме того, существует возможность их аннулирования – объявления недостоверными и очистка всей кэш-памяти.

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

Аннулирование строк выполняется внешними схемами – оно необходимо в системах, у которых в оперативную память запись может производить не только один процессор, а и другие контроллеры шины – процессор или периферийные контроллеры. В этом случае требуются специальные средства для поддержания согласованности данных во всех ступенях памяти – в первичной и вторичной кэш-памяти и динамического ОЗУ. Если внешний (по отношению к рассматриваемому процессору) контроллер выполняет запись в память, процессору должен быть подан сигнал AHOLD. По этому сигналу процессор немедленно отдает управление шиной адреса A[31:4], на которой внешним контроллером устанавливается адрес памяти, сопровождаемый стробом EADS#. Если адресованная память присутствует в первичном кэше, процессор аннулирует строку – сбрасывает бит достоверности этой строки (она освобождается). Аннулирование строки процессор выполняет в любом состоянии.

Управление заполнением кэша возможно и на аппаратном и на программном уровнях. Процессор позволяет кэшировать любую область физической памяти. Внешние схемы могут запрещать процессору кэшировать определенные области памяти установкой высокого уровня сигнала KEN# во время циклов доступа к этим областям памяти. Этот сигнал управляет только возможностью заполнения строк кэша из адресованной области памяти. Программно можно управлять кэшируемостью каждой страницы памяти – запрещать единичным значением бита PCD (Page Cache Disable) в таблице или каталоге страниц. Для процессоров с WB-кэшем бит PWT (Page Write Through) позволяет постранично управлять и алгоритмом записи. Общее программное управление кэшированием осуществляется посредством бит управляющего регистра CR0:CD (Cache Disable) и NW (No Write Through). Возможны следующие сочетания бит регистра:

  • CD=1, NW=1 – если после установки такого значения выполнить очистку кэша, кэш будет полностью отключен. Если же перед установкой этого сочетания бит кэша был заполнен, а очистка не производилась, кэш превращается в “замороженную” область статической памяти;

  • CD=1, CW=0 – заполнение кэша запрещено, но сквозная запись разрешена. Эффект аналогичен временному переводу сигнала KEN# в высокое (пассивное) состояние. Этот режим может использоваться для временного отключения кэша, после которого возможно его включение без очистки;

  • CD=0, NW=1 – запрещенная комбинация (вызывает отказ общей защиты);

  • CD=0, NW=0 – нормальный режим работы со сквозной записью.

Для полного запрета кэша необходимо установить CD=1 и NW=1, после чего выполнить очистку (Flush). Без очистки кэш будет обслуживать запросы в случае попаданий.

Процессоры 486 и старше имеют выходные сигналы PCD и PWT, управляющие работой вторичного (внешнего) кэша (они же управляют и внутренним кэшем). В циклах обращения к памяти, когда страничные преобразования не используются (например, при обращении к таблице каталогов страниц), источником сигналов являются биты PCD и PWT регистра CR3, при обращении к каталогу страниц – биты PCD и PWT из дескриптора соответствующего вхождения каталога, при обращении к самим данным – биты PCD и PWT из дескриптора страницы. Кроме того, оба этих сигнала могут принудительно устанавливаться общими битами управления кэшированием CD и NW регистра CRO.

Режим обратной записи может разрешаться только аппаратно сигналом WB/WT#, вырабатываемым внешними схемами.

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

Программно при включенном режиме страничного преобразования кэшированием управляют биты атрибутов страниц (на уровне таблицы страниц и их каталога), биты PCD и PWT регистра CR3, и, наконец, глобально кэшированием управляют биты CD и NW регистра CR0.

Аппаратно (сигналом KEN#) внешние схемы могут управлять кэшированием (разрешать заполнение строк) для каждого конкретного адреса обращения к физической памяти.

2.2. Процессор 80386

Микропроцессор 80386 имеет два режима работы: режим реальных адресов, называемый реальным режимом, и защищенный режим. При подаче сигнала сброса или при включении питания устанавливается реальный режим, причем 80386 работает как очень быстрый 8086, но, по желанию программиста, с 32-разрядным расширением. В реальном режиме МП 80386 имеет такую же базовую архитектуру, что и МП 8086, но обеспечивает доступ к 32-разрядным регистрам. Механизм адресации, размеры памяти и обработка прерываний МП 8086 полностью совпадают с аналогичными функциями МП 80386 в реальном режиме. Единственным способом выхода из реального режима является явное переключение в защищенный режим. В защищенный режим микропроцессор 80386 входит при установке бита включения защиты (РЕ) в нулевом регистре управления (CR) с помощью команды пересылки (MOV to CR). Для совместимости с МП 80286 с целью установки бита РЕ может быть также использована команда загрузки слова состояния машины LMSW. Процессор повторно входит в реальный режим в том случае, если программа командой пересылки сбрасывает бит РЕ регистра CR.

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

2.3. Процессор 80486

В 1989 г. фирма Intel выпустила микропроцессор Intel-80486. Все процессоры семейства 486 имеют 32-разрядную архитектуру, внутреннюю кэш-память 8 КВ со сквозной записью (у DX4 -16 КВ). Модели SX не имеют встроенного сопроцессора. Модели DX2 реализуют механизм внутреннего удвоения частоты (например, процессор 486DX2-66 устанавливается на 33-мегагерцовую системную плату), что позволяет поднять быстродействие практически в два раза, так как эффективность кэширования внутренней кэш-памяти составляет почти 90 процентов. Процессоры семейства DX4 - 486DX4-75 и 486DX4-100 предназначены для установки на 25-ти и 33-мегагерцовые платы. По производительности они занимают нишу между DX2-66 и Pentium-60/66, причем быстродействие компьютеров на 486DX4-100 вплотную приближается к показателям Pentium 60. Напряжение питания составляет 3,3 вольта, то есть их нельзя устанавливать на обычные системные платы. Процессор 486DX4-75 предназначен, прежде всего, для использования к компьютерам типа Notebook, а 486DX4-100 - в настольных системах.

2.4. Процессор Pentium

В 1993 г. Intel анонсировала о новом детище – процессоре Pentium. Процессор Pentium  является одним из самых мощных в настоящее время. Он относится к процессорам с полным набором команд, хотя его ядро имеет риск-архитектуру. Это 64-разрядный суперскалярный процессор (то есть выполняет более одной команды за цикл), имеет 16 КВ внутренней кэш-памяти - по 8 КВ отдельно для данных и команд, встроенный сопроцессор. Несколько слов о процессорах семейства OverDrive. В основном это процессоры с внутренним удвоением частоты, предназначенные для замены процессоров SX. Что касается широко разрекламированного в свое время процессора OverDrive на основе Pentium (так называемый P24T или Pentium SX), то сроки его выпуска неоднократно срывались. Сейчас начало выпуска перенесено на последнюю четверть текущего года. Хотя на рынке представлено очень много системных плат, предназначенных для установки кроме 486 процессоров и процессора Р24Т, использовать его на этих платах, скорее всего, будет нельзя, так как никакого тестирования плат с этим процессором изготовители не проводят ввиду его отсутствия, а ориентируются при изготовлении только на опубликованную фирмой Intel спецификацию. Представители фирмы Intel заявили недавно, что существуют серьезные сомнения в работоспособности большинства этих плат в связи с недостаточной проработкой вопросов, связанных с перегревом процессоров. Поскольку при работе с существующим программным обеспечением процессоры Pentium не достигают максимального быстродействия, фирма Intel для оценки производительности своих процессоров предложила специальный индекс - iCOMP (Intel COmparative Microprocessor Performance), который, по ее мнению, более точно отражает возрастание производительности при переходе к новому поколению процессоров (некоторые из выпущенных уже моделей компьютеров на основе Pentium при выполнении определенных программ демонстрируют даже меньшее быстродействие, чем компьютеры на основе 486DX2-66, это связано как с недостатками конкретных системных плат, так и с не оптимизированностью программных кодов).

 

Модель

Индекс iCOMP

486SX2-50

180

486DX2-50

231

486DX2-66

297

486DX4-75

319

486DX4-100

435

Pentium 60

510

Pentium 66

567

Pentium 90

735

Pentium 100

815

Информация о работе Контрольная работа по «Вычислительные машины, системы и сети»