PENTIUM Processor Технический обзор

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

АНГАРСКАЯ ГОСУДАРСТВЕННАЯ ТЕХНИЧЕСКАЯ АКАДЕМИЯ

























Реферат

     Тема:     P E N T I U M   P r o c e s s o r

Технический обзор













Кафедра: 			 ПЭ

Факультет: 			 ВМК

Группа:  	    ВМКу-01-4 



Выполнил:   Печенин А.В.________________



              Проверил(а):   	   	         ________________











г. Ангарск 2003 г.



Содержание:



Аннотация

Краткий исторический обзор

Особенности технологии Pentium процессора

Основные нововведения

Особенности архитектуры Pentium процессора

Сравнительные характеристики





P E N T I U M

processor



     История появления Pentium процессора.



Одним обычным тихим воскресным утром 10  мая  1992  года, четыре инженера  фирмы  INTEL  прибыли  в  аэропорт  San  Jose International. Установив видеоаппаратуру,  Анжела Чанг,  Эрик Деваннайн, Автар  Саини и Сухель Заатри нервозно прохаживались по залу, ожидая с минуты на минуту самолета из Орегона. Когда Марк Хопман, спустя несколько минут после приземления самолета, вышел из коридора, держа в руках маленький голубой  чемодан,  вся встречающая группа направилась к нему.  Все внимание было приковано к чемодану,  в котором находился  продукт разработчиков 5 Орегонской фабрики. Трудно было поверить, что в этом чемодане находился результат трехлетнего труда многих  людей,  воплощенный  в маленький чип.  Так началась жизнь Pentium процессора, который формально был представлен 22 марта 1993 года.

В то время,  когда Винод Дэм делал первые наброски, начав в июне 1989 года разработку Pentium процессора, он и не подозревал, что именно этот продукт будет одним из главных достижений фирмы INTEL.  С появлением Pentium процессора рынок компьютеров сразу изменился и начался новый этап  конкуренции.  San Microsistems, MIPS и другие продавцы RISC процессоров, разрабатывающие супербыстрые чипы, безоговорочно признали, что новый процессор фирмы INTEL станет стандартом для новых настольных PC.



     Процесс рождения Pentium процессора был нелегким.



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

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

     	Как только команда разработчиков выполняла локальную  задачу, менеджеры перераспределяли ресурсы.  Каждый инженер решал персональную задачу.  Командный дух постоянно  подвергался таким испытаниям,  как задержки и трудности,  однако временной план выполнения проекта от этого не  зависел.  Для  выполнения всех задач использовались самые последние достижения автоматизированного проектирования. Очень пригодился опыт, накопленный при  проектировании  и  решении  аналогичных  проблем  в  286, Intel386 и Intel486 процессорах.

     	Как только выполнялся очередной этап проекта, сразу начинался процесс всеобъемлющего  тестирования.  Было  желание  не повторить проблемы,  возникшие в свое время с Intel486, задержавшие его запуск в производство. Каждая ошибка трассировалась в обратном порядке, и устранялись ее причины. Остальные инженеры выполняли сотни тестирований для проверки логики,  архитектуры и общей конструкции.  Они выполнили более чем 5000 уточняющих тестирований,  прежде чем Pentium процессор обрел свою архитектуру. Для  тестирования  была  разработана  специальная технология, позволившая имитировать  функционирование  Pentium процессора с использованием программируемых устройств, объединенных на 14 платах с помощью кабелей. Только когда были обнаружены все ошибки, процессор смог работать в реальной системе.

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

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

     	Проектирование в  основном  было завершено в феврале 1992 года. Началось всеобъемлющее тестирование опытной партии  процессоров, в течение которого испытаниям подвергались все блоки и узлы.  В апреле 1992 года было принято решение, что пора начинать промышленное  освоение  Pentium процессора.  В качестве основной промышленной базы была выбрана 5 Орегонская  фабрика. Более 3 миллионов транзисторов были окончательно перенесены на шаблоны. Началось промышленное освоение производства и доводка технических характеристик, завершившиеся через 10 месяцев, 22 марта 1993 года широкой презентацией Pentium процессора.



     Современная микропроцессорная технология фирмы INTEL.



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

     	Использование субмикронной технологии позволяет разработчикам фирмы INTEL располагать больше  транзисторов  на  каждой подложке. Это  сделало  возможным  увеличение количества транзисторов для семейства X86 от 29,000 в 8086 процессоре до  1,2 миллионов в процессоре Intel486 DX2, с наивысшим достижением в Pentium процессоре. Выполненный по 0.8 микронной BiCMOS технологии,  он  содержит  3.1  миллиона  транзисторов.  Технология BiCMOS  объединяет  преимущества  двух технологий:  биполярной (скорость) и CMOS (малое энергопотребление).  С помощью  более  чем  в два раза большего количества транзисторов Pentium процессора по сравнению с Intel486,  разработчики поместили на подложке компоненты,  ранее располагавшимися снаружи процессора.  Наличие компонентов внутри уменьшает время  доступа,  что существенно увеличивает производительность. 0.8 микронная технология фирмы INTEL использует трехслойный метал и имеет  уровень,  более высокий по сравнению с оригинальной 1.0 микронной технологией двухслойного металла,  используемой  в  процессоре Intel486.

     

     	Фирма INTEL  использовала самые последние достижения технологии проектирования микропроцессоров для достижения преимуществ, сравнимых с альтернативными архитектурами, используемыми в научных и инженерных рабочих станциях, обеспечив при этом совместимость с программным обеспечение стоимостью $50 миллиардов, наработанного для семейства микропроцессоров серии X86.

     	Да и  само программное обеспечение для Pentium процессора разрабатывалось по новой технологии. Еще на этапе проектирования аппаратных средств процессора к проекту стали привлекаться эксперты из всех основных компаний, разрабатывающих операционные системы  и компиляторы - Microsoft,  IBM,  NeXT,  Borland, Watcom, MetaWare и др. Это позволило на аппаратном уровне поддержать новые  технологии программирования с учетом фирменного стиля поставщиков  стандартного  программного  обеспечения.  С другой стороны,  еще до рождения нового процессора использовались методы классической и специальной оптимизации,  раскрывающие специфические   достоинства   архитектуры  X86,  например, использование команд загрузки-записи,  мощных режимов адресации, удаление инвариантных участков кода из циклов и т.д.  Теперь, только за счет  перекомпиляции  традиционных  приложений удается повысить их производительность на новом процессоре еще вдвое. Такого в настоящее время не может предложить не один из конкурентов фирмы INTEL.

     

     







PENTIUM Processor

Технический обзор

     

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

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



           Новое поколение процессоров фирмы INTEL



     	Объединяя более  чем  3.1  миллион транзисторов на одной кремниевой подложке, 32-разрядный Pentium процессор характеризуется высокой производительностью с тактовой частотой 60 и 66МГц. Его суперскалярная архитектура использует  усовершенствованные способы проектирования, которые позволяют выполнять более чем одну команду за один период тактовой частоты,  в  результате чего Pentium в состоянии выполнять огромное количество PC-совместимого программного обеспечения быстрее, чем любой другой микропроцессор.  Кроме существующих наработок программного обеспечения, высокопроизводительный арифметический блок с плавающей запятой  Pentium  процессора  обеспечивает увеличение вычислительной мощности до необходимой для  использования  недоступных ранее технических и научных приложений, первоначально предназначенных для платформ рабочих  станций.  Также,  как локальные и  глобальные  сети  продолжают вытеснять устаревшие иерархические сети,  управляемые  большими  ЭВМ,  преимущества мультипроцессорности  и  гибкость операционной системы Pentium процессора - идеал для Хост-компьютера для современных  приложений клиент-серверов, применяемых в промышленности.

     	Поскольку Pentium  процессор  способен  достигать  уровня производительности равного или более высокого, чем современные рабочие станции  высокого  уровня,  он обладает преимуществами, которых лишены обычные рабочие станции: полная совместимость с более, чем 50 000 программных приложений со стоимостью  миллиарды долларов,  которые  были  написаны  под  архитектуру фирмы INTEL.  В дополнение, Pentium процессор позволяет использовать все основные операционные системы,  которые доступны современным настольным персональным компьютерам,  рабочим  станциям  и серверам, включая UNIX, Windows-NT, OS/2, Solaris и NEXTstep.



Pentium процессор. Технические нововведения.



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

     - Суперскалярную архитектуру;

     - Раздельное кэширование программного кода и данных;

     - Блок предсказания правильного адреса перехода;

     - Высокопроизводительный  блок вычислений с плавающей запятой;

     - Расширенную 64-битовую шину данных;

     - Поддержку многопроцессорного режима работы;

     - Средства задания размера страницы памяти;

     - Средства  обнаружения  ошибок и функциональной избыточности;

     - Управление производительностью;

     - Наращиваемость с помощью Intel OverDrive процессора.



                









Архитектура Pentium процессора





┌────────────────────────────────────────────────────────────┐

│                Intel Pentium Processor                     │

├────────────────────────────────────────────────────────────┤

│                        2────────────┐      8────────────┐  │

│                64-bits │    Code    │      │   Branch   │  │

│                  ┌─────┤    Cache   ├──────┤ Prediction │  │

│                  │     └────┬───────┘      └──────┬─────┘  │

│                  │  256-bits│    ┌────────────────┘        │

│                  │     3────┴────┴──┐      9────────────┐  │

│                  │     │  Prefetch  │      │            │  │

│                  │     │  Buffers   │      │            │  │

│                  │     └──┬──────┬──┘      │            │  │

│ 1────────────┐   │ 4──────┴──┐5──┴──────┐  │ Pipelined  │  │

│ │   64-bit   │   │ │ Integer ││ Integer │  │ Floating-  │  │

│─┤    Bus     ├───┤ │   ALU   ││   ALU   │  │ Point Unit │  │

│ │  Interface │   │ └──────┬──┘└──┬──────┘  │            │  │

│ └────────────┘   │     6──┴──────┴──┐   ┌──┤            │  │

│                  └─────┤  Register  │   │  │            │  │

│                64-bits │    Set     │   │  ├────────────┤  │

│                        └───┬─────┬──┘   │  │  Multiply  │  │

│                     32-bits├─────┼──────┘  ├────────────┤  │

│                        7───┴─────┴──┐64-bit│    Add     │  │

│                        │    Data    │      ├────────────┤  │

│                        │    Cache   │      │   Divide   │  │

│                        └────────────┘      └────────────┘  │

└────────────────────────────────────────────────────────────┘









































1 - 64-битовый шинный интерфейс;

2 - Средства кэширования программного кода;

3 - Буферы выборки с упреждением;

4 - 32-битовый целочисленный блок АЛУ;

5 - 32-битовый целочисленный блок АЛУ;

6 - Набор регистров;

7 - Средства кэширования данных;

8 - Блок предсказания правильного адреса перехода;

9 - Блок конвейерных вычислений с плавающей запятой.





┌─────────────────────────────────────┬──────────────────────┐

│         ┌────────┐      ┌────────┐  │                      │

│       ┌─┤        ├──────┤        │  │                      │

│       │ └───┬────┘      └────┬───┘  │                      │

│       │     │  ┌─────────────┘      │                      │

│       │ ┌───┴──┴─┐      ┌────────┐  │                      │

│ ┌───┐ │ │░░░░░░░░├──────┤        │  │                      │

│ ┤   ├─┤ └─┬────┬─┘      │        │  │                      │

│ └───┘ │ ┌─┴─┐┌─┴─┐      │        │  │                      │

│       │ │░░░││░░░│   ┌──┤        │  │   Суперскалярная     │

│       │ └─┬─┘└─┬─┘   │  │        │  │     архитектура      │

│       │ ┌─┴────┴─┐   │  ├────────┤  │                      │

│       │ │░░░░░░░░│   │  │        │  │                      │

│       │ └─┬────┬─┘   │  ├────────┤  │                      │

│       │   ├────┼─────┘  │        │  │                      │

│       │ ┌─┴────┴─┐      ├────────┤  │                      │

│       └─┤        │      │        │  │                      │

│         └────────┘      └────────┘  │                      │

└─────────────────────────────────────┴──────────────────────┘

































Суперскалярная архитектура Pentium процессора представляет собой совместимую только с INTEL  двухконвейерную  индустриальную архитектуру,  позволяющую  процессору  достигать  новых уровней производительности посредством выполнения  более  чем одной команды  за  один  период тактовой частоты.  Термин "суперскалярная" обозначает микропроцессорную архитектуру,  которая содержит более одного вычислительного блока.  Эти вычислительные блоки,  или конвейеры, являются узлами, где происходят все основные процессы обработки данных и команд.

     	Появление суперскалярной архитектуры  Pentium  процессора представляет собой естественное развитие предыдущего семейства процессоров с 32-битовой архитектурой фирмы  INTEL.  Например, процессор Intel486  способен  выполнять несколько своих команд за один период тактовой частоты,  однако предыдущие  семейства процессоров фирмы  INTEL  требовали множество циклов тактовой частоты для выполнения одной команды.

     	Возможность выполнять  множество  команд  за  один период тактовой частоты существует благодаря тому,  что Pentium  процессор имеет   два   конвейера,  которые  могут  выполнять  две инструкции одновременно. Так же, как и Intel486 с одним конвейером, двойной конвейер Pentium процессора выполняет простую команду за пять этапов: предварительная подготовка, первое декодирование (декодирование  команды),  второе декодирование (генерация адреса), выполнение и обратная выгрузка. Это позволяет нескольким командам находиться в различных стадиях выполнения,  увеличивая тем самым вычислительную производительность. Каждый  конвейер имеет свое арифметическо-логическое устройство (ALU), совокупность устройств генерации адреса и интерфейс кэширования  данных.  А транзисторы мы поставим деревяненькие. Так  же как и процессор Intel486,  Pentium процессор использует аппаратное выполнение команд,  заменяющее множество  микрокоманд,  используемых  в предыдущих семействах микропроцессоров.  Эти инструкции включают загрузки, запоминания и простые операции АЛУ, которые могут выполняться аппаратными средствами процессора,  без использования микрокода.  Это повышает производительность без затрагивания совместимости.  В случае выполнения более сложных  команд,  для  дополнительного ускорения производительности выполнения расширенного микрокода Pentium процессора для выполнения команд используются оба конвейера суперскалярной архитектуры.



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

Раздельное кэширование программного кода и данных.





┌─────────────────────────────────────┬──────────────────────┐

│         ┌────────┐      ┌────────┐  │                      │

│       ┌─┤░░░░░░░░├──────┤        │  │                      │

│       │ └───┬────┘      └────┬───┘  │                      │

│       │     │  ┌─────────────┘      │                      │

│       │ ┌───┴──┴─┐      ┌────────┐  │                      │

│ ┌───┐ │ │        ├──────┤        │  │                      │

│ ┤   ├─┤ └─┬────┬─┘      │        │  │  Кэширование комад   │

│ └───┘ │ ┌─┴─┐┌─┴─┐      │        │  │                      │

│       │ │   ││   │   ┌──┤        │  │                      │

│       │ └─┬─┘└─┬─┘   │  │        │  │  Кэширование данных  │

│       │ ┌─┴────┴─┐   │  ├────────┤  │                      │

│       │ │        │   │  │        │  │                      │

│       │ └─┬────┬─┘   │  ├────────┤  │                      │

│       │   ├────┼─────┘  │        │  │                      │

│       │ ┌─┴────┴─┐      ├────────┤  │                      │

│       └─┤░░░░░░░░│      │        │  │                      │

│         └────────┘      └────────┘  │                      │

└─────────────────────────────────────┴──────────────────────┘































Другое важнейшее революционное усовершенствование, реализованное в Pentium процессоре,  это введение раздельного кэширования. Кэширование  увеличивает производительность посредством активизации места временного хранения для часто используемого программного кода и данных, получаемых из быстрой памяти, заменяя по возможности обращение ко внешней  системной  памяти для некоторых команд.  Процессор Intel486,  например, содержит один 8-KB блок встроенной кэш-памяти, используемой одновременно для  кэширования программного кода и данных.

     Проектировщики фирмы INTEL обошли это ограничение использованием дополнительного контура,  выполненного на 3.1 миллионах транзисторов Pentium процессора (для сравнения,  Intel486 содержит 1.2  миллиона  транзисторов)  создающих  раздельное внутреннее кэширование программного кода и данных. Это улучшает производительность посредством исключения конфликтов на шине и делает двойное кэширование доступным чаще,  чем это  было возможно ранее. Например, во время фазы предварительной подготовки, используется код команды,  полученный из КЭШа команд. В случае наличия одного блока кэш-памяти, возможен конфликт между процессом предварительной подготовки команды и  доступом  к данным. Выполнение раздельного кэширования для команд и данных исключает такие конфликты,  давая возможность  обеим  командам выполняться одновременно.  Кэш-память программного кода и данных Pentium процессора содержит по 8 KB информации  каждая,  и каждая  организована  как  набор двухканального ассоциативного КЭШа  -  предназначенная  для  записи  только   предварительно просмотренного специфицированного 32-байтного сегмента, причем быстрее,  чем внешний кэш. Все эти особенности расширения производительности  потребовали использования 64-битовой внутренней шины данных, которая обеспечивает возможность двойного кэширования и суперскалярной конвейерной обработки одновременно с загрузкой следующих данных.  Кэш данных имеет два  интерфейса по одному для каждого из конвейеров,  что позволяет ему обеспечивать данными две отдельные инструкции в течение одного машинного цикла.  После того, как данные достаются из КЭШа, они записываются в главную память в режиме  обратной  записи.  Такая техника кэширования   дает   лучшую   производительность,  чем простое кэширование с непосредственной  записью,  при  котором процессор записывает  данные одновременно в кэш и основную память. Тем не менее,  Pentium  процессор  способен  динамически конфигурироваться для поддержки кэширования с непосредственной записью.

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

Рекомендуемый объем  общей  кэш-памяти   для   настольных систем, основанных на Pentium процессоре,  равен 128-256 K,  а для серверов - 256 K и выше.



Блок предсказания правильного адреса перехода.





┌─────────────────────────────────────┬──────────────────────┐

│         ┌────────┐      ┌────────┐  │                      │

│       ┌─┤        ├──────┤░░░░░░░░│  │                      │

│       │ └───┬────┘      └────┬───┘  │                      │

│       │     │  ┌─────────────┘      │                      │

│       │ ┌───┴──┴─┐      ┌────────┐  │                      │

│ ┌───┐ │ │        ├──────┤        │  │                      │

│ ┤   ├─┤ └─┬────┬─┘      │        │  │     предсказание     │

│ └───┘ │ ┌─┴─┐┌─┴─┐      │        │  │     првавильного     │

│       │ │   ││   │   ┌──┤        │  │       Адреса         │

│       │ └─┬─┘└─┬─┘   │  │        │  │      перехода        │

│       │ ┌─┴────┴─┐   │  ├────────┤  │                      │

│       │ │        │   │  │        │  │                      │

│       │ └─┬────┬─┘   │  ├────────┤  │                      │

│       │   ├────┼─────┘  │        │  │                      │

│       │ ┌─┴────┴─┐      ├────────┤  │                      │

│       └─┤        │      │        │  │                      │

│         └────────┘      └────────┘  │                      │

└─────────────────────────────────────┴──────────────────────┘































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

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



Высокопроизводительный блок вычислений с плавающей запятой.





┌─────────────────────────────────────┬──────────────────────┐

│         ┌────────┐      ┌────────┐  │                      │

│       ┌─┤        ├──────┤        │  │  блок конвеерных     │

│       │ └───┬────┘      └────┬───┘  │    вычислений с      │

│       │     │  ┌─────────────┘      │  плавающей запятой   │

│       │ ┌───┴──┴─┐      ┌────────┐  │                      │

│ ┌───┐ │ │        ├──────┤░░░░░░░░│  │                      │

│ ┤   ├─┤ └─┬────┬─┘      │░░░░░░░░│  │                      │

│ └───┘ │ ┌─┴─┐┌─┴─┐      │░░░░░░░░│  │                      │

│       │ │   ││   │   ┌──┤░░░░░░░░│  │                      │

│       │ └─┬─┘└─┬─┘   │  │░░░░░░░░│  │                      │

│       │ ┌─┴────┴─┐   │  ├────────┤  │                      │

│       │ │        │   │  │░░░░░░░░│  │     Умножитель       │

│       │ └─┬────┬─┘   │  ├────────┤  │                      │

│       │   ├────┼─────┘  │░░░░░░░░│  │      сумматор        │

│       │ ┌─┴────┴─┐      ├────────┤  │                      │

│       └─┤        │      │░░░░░░░░│  │      делитель        │

│         └────────┘      └────────┘  │                      │

└─────────────────────────────────────┴──────────────────────┘































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

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

     	В результате этих инноваций,  Pentium процессор выполняет команды вычислений с плавающей запятой в пять раз быстрее, чем 33-МГц    Intel486 DX,  оптимизируя  их  для  высокоскоростных численных вычислений,  являющихся  неотъемлемой  частью  таких усовершенствованных видеоприложений, как CAD и 3D-графика.

     	Pentium процессор на тактовой частоте 66 МГц работает как "числодробилка" с  рейтингом 64.5 по тесту SPECint92,  практически не уступая RISC-процессору Alpha компании Digital,  но с тактовой частотой вдвое более высокой.

     	Общая производительность Pentium процессора превосходит в 6 раз  25  МГц  Intel486 SX и в 2.6 раз - 66 МГц Intel486 DX2. Индекс по рейтингу iCOMP для 66 МГц Pentium процессора,  который выполняет  112  миллионов  операций в секунду,  составляет 567. Индекс  по  iCOMP  (Intel  COmparative   Microprocessor Performance)  выполняет относительное сравнение производительности 32-битовых процессоров фирмы INTEL.





Расширенная 64-битовая шина данных.



┌─────────────────────────────────────┬──────────────────────┐

│         ┌────────┐      ┌────────┐  │                      │

│       ┌─┤        ├──────┤        │  │                      │

│       │ └───┬────┘      └────┬───┘  │                      │

│       │     │  ┌─────────────┘      │                      │

│       │ ┌───┴──┴─┐      ┌────────┐  │                      │

│ ┌───┐ │ │        ├──────┤        │  │                      │

│ ┤░░░├─┤ └─┬────┬─┘      │        │  │                      │

│ └───┘ │ ┌─┴─┐┌─┴─┐      │        │  │                      │

│       │ │   ││   │   ┌──┤        │  │                      │

│       │ └─┬─┘└─┬─┘   │  │        │  │                      │

│       │ ┌─┴────┴─┐   │  ├────────┤  │                      │

│       │ │        │   │  │        │  │                      │

│       │ └─┬────┬─┘   │  ├────────┤  │                      │

│       │   ├────┼─────┘  │        │  │                      │

│       │ ┌─┴────┴─┐      ├────────┤  │                      │

│       └─┤        │      │        │  │                      │

│         └────────┘      └────────┘  │                      │

└─────────────────────────────────────┴──────────────────────┘

































Pentium процессор снаружи представляет собой 32-битовое устройство. Внешняя шина данных к памяти является  64-битовой, удваивая количество данных, передаваемых в течение одного шинного цикла.  Pentium процессор поддерживает несколько типов шинных циклов, включая пакетный режим, в течение которого происходит порция данных из 256 бит в кэш данных и в течение одного шинного цикла.

Шина данных является главной магистралью, которая передает информацию между процессором и подсистемой памяти. Благодаря этой 64-битовой шине данных,  Pentium процессор существенно повышает скорость передачи по сравнению с процессором Intel486 DX - 528 MB/сек для 66 МГц,  по сравнению со 160 MB/сек для 50МГц процессора  Intel486  DX.  Эта  расширенная   шина   данных способствует высокоскоростным  вычислениям благодаря поддержке одновременной подпитки командами и данными процессорного блока суперскалярных  вычислений,  благодаря  чему  достигается  еще большая общая производительность Pentium процессора по сравнению с процессором Intel486 DX.

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





































Мультипроцессорность.



┌────────────────────────────────────────────────────────────┐

│      Внутреннее определение ошибок и тестирование          │

│          с помощью функциональной избыточности             │

├───────────────────────────┬────┬───────────────────────────┤

│         Master            │    │         Checker           │

│        ┌────────┐   ┌────┐│    │        ┌────────┐   ┌────┐│

│      ┌─┤        ├───┤    ││    │      ┌─┤        ├───┤    ││

│      │ └───┬────┘   └──┬─┘│    │      │ └───┬────┘   └──┬─┘│

│      │     │  ┌────────┘  │    │      │     │  ┌────────┘  │

│      │ ┌───┴──┴─┐   ┌────┐│    │      │ ┌───┴──┴─┐   ┌────┐│

│┌───┐ │ │        ├───┤    ││    │┌───┐ │ │        ├───┤    ││

│┤   ├─┤ └─┬────┬─┘   │    ││ ─┬─│┤   ├─┤ └─┬────┬─┘   │    ││

│└───┘ │ ┌─┴─┐┌─┴─┐   │    ││  │ │└───┘ │ ┌─┴─┐┌─┴─┐   │    ││

│      │ │   ││   │ ┌─┤    ││  │ │      │ │   ││   │ ┌─┤    ││

│      │ └─┬─┘└─┬─┘ │ │    ││  │ │      │ └─┬─┘└─┬─┘ │ │    ││

│      │ ┌─┴────┴─┐ │ ├────┤│  │ │      │ ┌─┴────┴─┐ │ ├────┤│

│      │ │        │ │ │    ││  │ │      │ │        │ │ │    ││

│      │ └─┬────┬─┘ │ ├────┤│  │ │      │ └─┬────┬─┘ │ ├────┤│

│      │   ├────┼───┘ │    ││  │ │      │   ├────┼───┘ │    ││

│      │ ┌─┴────┴─┐   ├────┤│  │ │      │ ┌─┴────┴─┐   ├────┤│

│      └─┤        │   │    ││  │ │      └─┤        │   │    ││

│        └────────┘   └────┘│  │ │        └────────┘   └────┘│

├─────────────┬─────────────┘  │ └──────┬──────┬─────────────┤

│             │                │  Check │      │             │

│             ├────────────────┼────────┘      │             │

│          Outputs          Inputs          IERR#            │

└────────────────────────────────────────────────────────────┘









































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

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



     Средства разделения памяти на страницы.



     	Pentium процессор предлагает опции поддержки любой из традиционных размеров страниц памяти - 4 KB или более широкие, 4 MB страницы.  Эта  опция  позволяет  производить  вычисление

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



     Определение ошибок и функциональная избыточность.



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

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

     	Кроме того, на подложке процессора расположено устройство встроенного тестирования.  Самотестирование  охватывает  более 70% узлов Pentium процессора,  не  требует  выполнения  сброса кристалла и представляет собой процедуру,  обычно используемую при диагностике систем. Другими встроенными решениями является реализация  стандарта  IEEE  1149.1,  позволяющая  тестировать внешние соединения процессора и отладочный режим,  дающий  возможность  программному  обеспечению  просматривать  регистры и состояние процессора.



     Управление производительностью.



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

Давая возможность разработчикам проектировать  системы  с правлением энергопотреблением,  защитой и другими свойствами, Pentium процессор  поддерживаем  режим   управления   системой (SMM), подобный режиму архитектуры Intel SL.



     Наращиваемость.



Вместе со всем, что сделано нового для 32-битовой микропроцессорной  архитектуры  фирмы   INTEL,   Pentium   процессор сконструирован  для легкой наращиваемости с использованием архитектуры наращивания фирмы INTEL.  Эти нововведения  защищают инвестиции пользователей  посредством  наращивания  производительности, которая помогает  поддерживать  уровень  продуктивности систем,  основанных  на  архитектуре  процессоров  фирмы INTEL, больше, чем продолжительность жизни отдельных компонентов. Технология наращивания делает возможным использовать преимущества большинства процессоров усовершенствованной технологи в  уже  существующих  системах с помощью простой инсталляции средства однокристального наращивания производительности. Например, первое  средство наращивания - это Overdrive процессор, разработанный для  процессоров  Intel486  SX  и  Intel486  DX, использующий технологию  простого  удвоения  тактовой частоты, использованную при разработке микропроцессоров Intel486 DX2.

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

Технология наращивания с  помощью  Overdrive  процессоров возможна и  для  систем,  основанных на семействе Pentium процессора, посредством простой установки в  будущем  процессора, выполненного по  усовершенствованной  технологии.  В свою очередь,  технология Pentium процессора является основой дополнительного процессора,  разрабатываемого для систем,  базируемых на Intel486 DX2.

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

Литература:



     1. The Intel Pentium Processor. A Technical Overview.

     2. Intel Solutions.