Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Pentium Pro является шестым поколением x86 микропроцессора разработан и изготовлен Intel и представил на 1 ноябрь 1995 года [1] Он представил P6 микроархитектуру (иногда называют i686) и первоначально предназначался для замены оригинального Pentium в полном объеме спектр приложений. В то время как Pentium и Pentium MMX имели 3,1 и 4,5 миллиона транзисторов , соответственно, Pentium Pro содержал 5,5 миллиона транзисторов. [2] Позже он был сокращен до более узкой роли сервера и высокопроизводительного настольного процессора и использовался в суперкомпьютерах, таких как ASCI Red., первый компьютер, достигший отметки в терафлопсах . [3] Pentium Pro мог работать как в двух-, так и в четырехпроцессорной конфигурации. Он был только в одном форм-факторе - относительно большой прямоугольной Socket 8 . На смену Pentium Pro в 1998 году пришел Pentium II Xeon .

Микроархитектура [ править ]

Pentium Pro 200 МГц с кэш-памятью L2 512 КБ в корпусе PGA
Pentium Pro 200 МГц с кэш-памятью второго уровня 1 МБ в пакете PPGA .
Pentium Pro без ограничений 256 КБ
Pentium II Overdrive со снятым радиатором. Ядро Flip-chip Deschutes находится слева. Кэш 512 КБ находится справа. [4]

Ведущим архитектором Pentium Pro был Фред Поллак, который специализировался на суперскалярности, а также работал ведущим инженером Intel iAPX 432 . [5]

Резюме [ править ]

Pentium Pro включает новую микроархитектуру , отличную от микроархитектуры Pentium P5 . Он имеет развязанную 14-ступенчатую суперпайпайн-архитектуру, в которой используется пул инструкций. Pentium Pro ( P6 ) обладал множеством передовых концепций, отсутствующих в Pentium, хотя он не был первым или единственным процессором x86 , который их реализовал (см. NexGen Nx586 или Cyrix 6x86 ). В конвейере Pentium Pro были дополнительные этапы декодирования для динамического преобразования инструкций IA-32 в микрооперации с буферизацией.последовательности, которые затем могут быть проанализированы, переупорядочены и переименованы для обнаружения распараллеливаемых операций, которые могут быть переданы более чем одному исполнительному устройству одновременно. Таким образом, Pentium Pro отличался исполнением вне очереди , включая спекулятивное исполнение посредством переименования регистров . У него также была более широкая 36-битная адресная шина (используемая PAE ), что позволяло получить доступ к 64 ГБ памяти.

Pentium Pro имеет кэш команд размером 8 КБ , из которого в каждом цикле извлекается до 16 байтов и отправляется декодерам команд . Есть три декодера инструкций. Возможности декодеров не равны: только один может декодировать любую инструкцию x86, а два других могут декодировать только простые инструкции x86. Это ограничивает способность Pentium Pro одновременно декодировать несколько инструкций, ограничивая суперскалярное выполнение. Инструкции x86 декодируются в 118-битные микрооперации (микрооперации). Микрооперации RISC-подобно; то есть они кодируют операцию, два источника и место назначения. Обычный декодер может генерировать до четырех микроопераций за цикл, тогда как простые декодеры могут генерировать по одной микрооперации за цикл. Таким образом, инструкции x86, которые работают с памятью (например, добавляют этот регистр в это место в памяти), могут обрабатываться только обычным декодером, поскольку эта операция требует как минимум трех микроопераций. Точно так же простые декодеры ограничены инструкциями, которые могут быть переведены в одну микрооперацию. Инструкции, требующие большего количества микроопераций, чем четыре, транслируются с помощью секвенсора, который генерирует необходимые микрооперации за несколько тактов. Pentium Pro был первым процессором в семействе x86, который поддерживал обновляемый микрокод в BIOS.и / или управление операционной системой. [6]

Микрооперации выходят из буфера повторного заказа (ROB) и попадают на резервную станцию ​​(RS), где они ожидают отправки в исполнительные единицы. В каждом тактовом цикле до пяти микроопераций могут быть отправлены на пять исполнительных устройств. Pentium Pro имеет в общей сложности шесть исполнительных блоков: два целочисленных блока, один блок с плавающей запятой (FPU), блок загрузки, блок адреса хранения и блок данных хранения. [7] Один из целочисленных модулей использует те же порты, что и FPU, и поэтому Pentium Pro может отправлять только одну целочисленную микрооперацию и одну микрооперацию с плавающей запятой или две целочисленные микрооперации за цикл, кроме того. микрооперациям для остальных трех исполнительных единиц. Из двух целочисленных модулей только тот, который разделяет путь с FPU на порту 0, имеет полный набор функций, таких какбаррель-шифтер , множитель, делитель и поддержка инструкций LEA. Второй целочисленный блок, подключенный к порту 1, не имеет этих возможностей и ограничен простыми операциями, такими как сложение, вычитание и вычисление целевых адресов ветвления. [7]

FPU выполняет операции с плавающей запятой. Сложение и умножение являются конвейерными и имеют задержку в три и пять циклов соответственно. Деление и извлечение квадратного корня не конвейеризируются и выполняются в отдельных модулях, которые совместно используют порты FPU. Деление и извлечение квадратного корня имеют задержку 18–36 и 29–69 циклов соответственно. Наименьшее число предназначено для чисел с плавающей запятой одинарной точности (32-бит), а наибольшее - для чисел с увеличенной точностью (80-бит). Деление и извлечение квадратного корня могут работать одновременно со сложением и умножением, предотвращая их выполнение только тогда, когда результат должен быть сохранен в ROB.

После выпуска микропроцессора в модуле с плавающей запятой была обнаружена ошибка , обычно называемая «ошибкой FPU Pentium Pro и Pentium II», а Intel - «ошибкой флага». Ошибка возникает при некоторых обстоятельствах во время преобразования с плавающей запятой в целое число, когда число с плавающей запятой не помещается в меньший целочисленный формат, что приводит к отклонению FPU от задокументированного поведения. Ошибка считается незначительной и возникает при таких особых обстоятельствах, что затрагиваются очень немногие программы, если таковые имеются.

Микроархитектура Pentium Pro P6 в той или иной форме использовалась Intel более десяти лет. Конвейер будет масштабироваться от начальных 150 МГц до 1,4 ГГц с Pentium III "Tualatin" . Различные черты дизайна сохранятся и после этого в производном ядре под названием « Banias » в Pentium M и Intel Core ( Yonah ), которое само будет развиваться в микроархитектуру Core ( процессор Core 2 ) в 2006 году и позже. [8]

Набор инструкций [ править ]

Pentium Pro (P6) представил новые инструкции в линейке Intel; инструкции CMOVxx («условное перемещение») могут перемещать значение, которое является либо содержимым регистра, либо ячейкой памяти, в другой регистр или нет, в соответствии с некоторым логическим условием предиката xx в регистре флагов, где xx является кодом предиката флагов, как задано в условии для инструкций условного перехода. Так, например, CMOVNE перемещает указанное значение в регистр или нет в зависимости от того, истинно ли условие NE (не равно) в регистре флагов, т.е. Z flag = 0. Это позволяет оценивать операции if-then-else и, например, ? : операция в C. Эти инструкции повышают производительность, позволяя избежать дорогостоящих инструкций перехода и перехода. Например, в CMOVxx destreg1, source_operand2 первым операндом является регистр назначения,второй - исходный регистр или место в памяти. К сожалению, второй операнд не может быть непосредственным (встроенным постоянным) значением, и такая константа должна быть сначала помещена в регистр. Код предиката xx может принимать полный диапазон значений, разрешенных в условных переходах.

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

Производительность [ править ]

Несмотря на то, что в то время была продвинута, архитектура переименования регистров Pentium Pro не по порядку имела проблемы с запуском 16-битного кода и смешанного кода (8/16 бит или 16/32 бит), так как использование частичных регистров вызывает частый конвейер промывание. [9] Конкретное использование частичных регистров было обычной оптимизацией производительности в то время, так как не приводило к снижению производительности процессоров Intel до P6; Кроме того, доминирующими операционными системами на момент выпуска Pentium Pro были 16-битная DOS и смешанная 16/32-битная Windows 3.1x и Windows 95 (хотя последняя требует 32-битного процессора 80386, большая часть его кода по-прежнему 16-битный из соображений производительности, например USER.exe). Это вместе с высокой стоимостью систем Pentium Pro вызывало в то время довольно слабый прием среди энтузиастов ПК. Чтобы в полной мере использовать преимущества микроархитектуры P6 Pentium Pro , необходима полностью 32-разрядная ОС , например Windows NT , Linux , Unix или OS / 2 . Проблемы с производительностью унаследованного кода позже были частично устранены Intel с помощью Pentium II.

По сравнению с микропроцессорами RISC, Pentium Pro, когда был представлен, немного превосходил самые быстрые микропроцессоры RISC по производительности целых чисел при запуске теста SPECint95 [10], но производительность с плавающей запятой была значительно ниже, наполовину у некоторых микропроцессоров RISC. [10] Преимущество Pentium Pro в производительности в целых числах быстро исчезло, сначала его обогнали MIPS Technologies R10000 в январе 1996 года, а затем - вариант Alpha 21164 EV56 от Digital Equipment Corporation . [11]

Рецензенты быстро отметили очень медленную запись в видеопамять как слабое место платформы P6, при этом производительность здесь составляет всего 10% от системы Pentium с идентичной тактовой частотой в таких тестах, как VIDSPEED. Способы обхода этого включали установку отрисовки VESA в системную память вместо видеопамяти в таких играх, как Quake , [12] и более поздних версиях, таких как FASTVID, которые могли удвоить производительность в некоторых играх за счет включения функций комбинирования записи ЦП. [13] [14] MTRRустанавливаются автоматически видеодрайверами Windows, начиная с ~ 1997 г., и улучшенная подсистема кэш-памяти и производительность FPU позволили ей превзойти тактовую частоту Pentium в новых трехмерных играх середины-конца 1990-х годов, особенно когда используя NT4. Однако отсутствие реализации MMX снижает производительность мультимедийных приложений, использующих эти инструкции.

Кеширование [ править ]

Вероятно, наиболее заметным дополнением Pentium Pro была встроенная в него кэш-память L2, размер которой составлял от 256 КБ на момент внедрения до 1 МБ в 1997 году. В то время производственная технология не позволяла интегрировать большой кэш L2 в ядро ​​процессора. Вместо этого Intel поместила кристалл (ы) L2 отдельно в корпус, что по-прежнему позволяло ему работать с той же тактовой частотой, что и ядро ​​ЦП. Кроме того, в отличие от большинства схем кэширования на материнских платах, которые разделяют основную системную шину с ЦП, кэш Pentium Pro имеет собственную заднюю шину (называемую двойной независимой шиной.от Intel). Из-за этого ЦП мог одновременно читать основную память и кэш, что значительно уменьшало традиционное узкое место. Кэш также был «неблокирующим», что означало, что процессор мог выдавать более одного запроса кеша за раз (до 4), уменьшая штрафы за промахи в кэше. (Это пример MLP, параллелизма на уровне памяти .) Эти свойства объединились для создания кэша L2, который был намного быстрее, чем кеш-память на материнских платах старых процессоров. Один только этот кеш дал ЦП преимущество в производительности ввода / вывода по сравнению со старыми ЦП x86 . В многопроцессорных конфигурациях производительность встроенного кэша Pentium Pro резко возросла по сравнению с архитектурами, в которых каждый ЦП совместно использовал центральный кэш.

Однако этот гораздо более быстрый кеш L2 имел некоторые сложности. Устройство Pentium Pro «кэш на упаковке» было уникальным. Процессор и кэш находились на отдельных кристаллах в одном корпусе и были тесно связаны полноскоростной шиной. Две или три матрицы должны были быть скреплены вместе на раннем этапе производственного процесса, прежде чем стало возможным проведение испытаний. Это означало, что из-за одного крошечного изъяна на любой из кристаллов пришлось выбросить всю сборку, что было одной из причин относительно низкой производительности Pentium Pro и высокой стоимости. Все версии чипа были дорогими, особенно с 1024 КБ, поскольку для этого требовалось два кристалла кэш-памяти по 512 КБ, а также кристалл процессора.

Доступные модели [ править ]

Тактовые частоты Pentium Pro составляли 150, 166, 180 или 200 МГц с тактовой частотой внешней шины 60 или 66 МГц . Некоторые пользователи решили разогнать свои чипы Pentium Pro, при этом версия 200 МГц часто работает на частоте 233 МГц, версия 180 МГц часто работает на частоте 200 МГц, а версия 150 МГц часто работает на частоте 166 МГц. Микросхема была популярна в конфигурациях с симметричной многопроцессорной обработкой, при этом обычным явлением были двух- и четырехъядерные SMP-серверы и рабочие станции.

В схеме Intel «Семейство / Модель / Степпинг» Pentium Pro относится к семейству 6, модели 1, а его код продукта Intel - 80521.

Изготовление [ править ]

Процесс изготовления кристалла процессора Pentium Pro и его отдельного кристалла кэш-памяти изменился, что привело к сочетанию процессов, используемых в одном пакете:

  • Кристалл прототипа процессора Pentium Pro 133 МГц был изготовлен с использованием процесса BiCMOS размером 0,6 мкм. [15] [16]
  • Кристалл процессора Pentium Pro 150 МГц был изготовлен с использованием процесса BiCMOS размером 0,50 мкм . [16] [17]
  • Кристалл процессора Pentium Pro 166, 180 и 200 МГц был изготовлен с использованием процесса BiCMOS 0,35 мкм. [16] [17]
  • Кристалл кэш-памяти L2 объемом 256 КБ был изготовлен с использованием процесса BiCMOS размером 0,50 мкм. [16] [17]
  • Кристалл кэша L2 512 и 1024 КБ был изготовлен с использованием процесса BiCMOS 0,35 мкм. [16] [17]

Упаковка [ править ]

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

Pentium Pro с 1 МБ кэш-памяти использует пластиковый MCM. Вместо двух полостей есть только одна, в которой находятся три матрицы, прикрепленные к корпусу вместо теплового стержня. Полости залиты эпоксидной смолой.

MCM имеет 387 контактов, из которых примерно половина расположена в матрице сетки выводов (PGA), а половина - в матрице сетки промежуточных выводов (IPGA). Упаковка была разработана для Socket 8 .

Пути обновления [ править ]

В 1998 году был выпущен процессор Pentium II Overdrive 300/333 МГц для Socket 8. Обладая 512 КБ полноскоростной кэш-памяти, он был произведен Intel в качестве дополнительного варианта обновления для владельцев систем Pentium Pro. Однако он поддерживал только двухстороннюю бесклеевую многопроцессорность, а не четырехпроцессорную или выше, что не делало ее пригодным для использования обновлением для четырехпроцессорных систем. Эти специально упакованные процессоры Pentium II Xeon использовались для обновления ASCI Red , который стал первым компьютером, достигшим отметки производительности терафлопс с процессором Pentium Pro, а затем первым компьютером, который превысил 2 терафлопс после обновления до процессоров Pentium II Xeon.

По мере того как материнские платы со слотом 1 стали преобладать, несколько производителей выпустили адаптеры для слотов , такие как Tyan M2020, Asus C-P6S1, Tekram P6SL1 и Abit KP6. Слоты позволяли использовать процессоры Pentium Pro с материнскими платами Slot 1. Набор микросхем Intel 440FX явно поддерживает процессоры Pentium Pro и Pentium II, но наборы микросхем Intel 440BX и более поздних версий Slot 1 явно не поддерживают Pentium Pro, поэтому слоты для Socket 8 не получили широкого распространения. Разъемы - в виде адаптеров Socket 370 - Slot 1 - вновь стали популярными, когда Intel представила процессоры Socket 370 Celeron и Pentium III .

Основные характеристики [ править ]

Pentium Pro [ править ]

  • Кэш L1 : 8, 8 КБ (данные, инструкции)
  • Кэш L2 : 256, 512 КБ (один кристалл) или 1024 КБ (два кристалла по 512 КБ) в многокристальном модуле с тактовой частотой процессора
  • Разъем: Разъем 8
  • Фронтальная шина : 60 и 66 МГц
  • VCore: 3,1–3,3 В
  • Изготовление: 0,50 мкм или 0,35 BiCMOS [18]
  • Тактовая частота: 150, 166, 180, 200 МГц (на некоторых материнских платах может достигать 233 МГц)
  • Первый выпуск: ноябрь 1995 г.

Pentium II Overdrive [ править ]

  • Кэш L1: 16, 16 КБ (данные + инструкции)
  • Кэш L2: внешний чип 512 КБ на модуле ЦП с тактовой частотой процессора
  • Разъем: Разъем 8
  • Множитель: зафиксирован на уровне 5 ×
  • Фронтальная шина: 60 ​​и 66 МГц
  • VCore: 3,1–3,3 В (имеет встроенный регулятор напряжения)
  • Изготовление: 0,25 мкм
  • Тактовая частота: на базе Pentium II поколения Deschutes
  • Первый выпуск: 1997 г.
  • Поддерживает технологию MMX

Возможности шины и мультипроцессора [ править ]

Pentium Pro использовал сигнализацию GTL + на своей внешней шине. [19] Pentium Pro может использоваться отдельно от четырехпроцессорных систем. Были также построены восьмиядерные компьютеры Pentium Pro, но они использовали несколько шин. [20]

На конструкцию шины Pentium Pro оказали влияние Futurebus , шина Intel iAPX 432 и элементы шины Intel i960 . [21] Futurebus задумывался как усовершенствованная шина для замены VMEbus, используемой с Motorola 68000 с конца 1970-х годов, но в комитете по стандартизации она оставалась в застое на протяжении более десяти лет, если учесть все изгибы и повороты. [21]Инициатива Intel iAPX 432 также потерпела коммерческую неудачу, но в процессе они узнали, как построить шину с разделенными транзакциями для поддержки многопроцессорной системы без кеша. В i960 была усовершенствована шина iAPX 432 с разделенными транзакциями, чтобы включить протокол когерентности кэша, получив в итоге набор функций, очень напоминающий первоначальные амбиции Futurebus. [21]

Ведущим архитектором i960 был специалист по суперскалярности Фред Поллак, который также был ведущим инженером Intel iAPX 432 и ведущим архитектором процессора i686, Pentium Pro. Без сомнения, он был хорошо знаком со всей этой историей. Pentium Pro был разработан, чтобы включить 4-стороннюю SMP-шину с когерентной кэш-памятью с разделением транзакций в качестве обязательной функции каждого производимого чипа. [21] Это также служило для запрета конкуренции в доступе к сокету для создания клонированных процессоров. [21]

Несмотря на то, что Pentium Pro не был успешным в качестве машины для широких масс из-за плохой поддержки 16-битной ОС Windows 95, он действительно стал очень успешным в области файловых серверов благодаря своей продвинутой интегрированной конструкции шины, [21] представившей множество продвинутых функции, которые ранее были доступны на рынке только в сегменте дорогих рабочих станций.

Конкуренты Pentium Pro / 6-го поколения [ править ]

  • AMD K5 и K6
  • Cyrix 6x86 и MII
  • IDT WinChip
  • Intel P5 Pentium (сосуществовал с Pentium Pro несколько лет)

См. Также [ править ]

  • Список микропроцессоров Intel Pentium II
  • Список микропроцессоров Intel Pentium Pro

Ссылки [ править ]

  1. ^ Фишер, Лоуренс М. (2 ноября 1995 г.). «Intel предлагает Pentium Pro для рынка рабочих станций» . Нью-Йорк Таймс . Проверено 4 января 2012 года .
  2. ^ Брей, Барри (2006). Микропроцессоры Intel . п. 12.
  3. ^ "Красный ASCI: Национальная лаборатория Sandia" . ТОП500 суперкомпьютерных сайтов ».
  4. ^ Шнурер, Георг. «Следующий выход: Мендосино» . Архивировано из оригинального 19 -го февраля 2006 года . Проверено 24 апреля 2009 года .
  5. ^ Дворжак, Джон С. "Что случилось с iAPX432 - чипом мечты Intel?" . Дворжак Без цензуры .
  6. ^ Стиллер, Андреас; Пол, Матиас Р. (12 мая 1996 г.). "Prozessorgeflüster" . c't - магазин компьютерной техники . Тенденции и новости (на немецком языке). Heise Verlag . Архивировано 28 августа 2017 года . Проверено 28 августа 2017 года .
  7. ^ a b «Руководство по оптимизации архитектуры Intel» (PDF) . 1997. стр. 2-8. Архивировано из оригинального (PDF) 21 января 2007 года.
  8. Стоукс, Джон (5 апреля 2006 г.). «В ядро: микроархитектура Intel нового поколения» . Проверено 24 апреля 2009 года .
  9. ^ «Предупреждение о частичном останове регистра» . Онлайн-справка VTune Performance Analyzer .
  10. ^ a b Слейтер, Майкл (13 ноября 1995 г.). «Intel увеличивает Pentium Pro до 200 МГц». Отчет микропроцессора .
  11. ^ Гвеннап, Линли (1996-07-08). «Digital 21164 достигает 500 МГц». Отчет микропроцессора .
  12. ^ https://github.com/id-Software/Quake/blob/master/WinQuake/data/TECHINFO.TXT
  13. ^ "Файл технической информации Quake" .
  14. ^ "Полное руководство MDGx по UMBPCI.sys" .
  15. ^ Papworth, Дэвид Б. (апрель 1996). «Настройка микроархитектуры Pentium Pro». IEEE Micro , стр. 14–15.
  16. ^ a b c d e "Процессоры Intel Pentium Pro - Информационный бюллетень" . Intel. Архивировано из оригинального 7 -го декабря 2013 года .
  17. ^ a b c d Слейтер, Майкл (13 ноября 1995 г.), «Intel увеличивает Pentium Pro до 200 МГц», Microprocessor Report , MicroDesign Resources, vol. 9 нет. 15
  18. ^ sandpile.org Архивировано 1 сентября 1999 г. в Archive.today - реализация IA-32 - Intel P6
  19. ^ Shanley, Том (1998). Системная архитектура Pentium Pro и Pentium II . Эддисон-Уэсли Профессионал . п. 199. ISBN 978-0-201-30973-7.
  20. ^ Guruge, Anura (17 мая 2000). Связь Web-to-Host . CRC Press . п. 405. ISBN 978-0-203-99747-5.
  21. ^ a b c d e f Харденберг, Хэл У. (1 июня 1997 г.). «Назад в автобус будущего» . drdobbs.com . Журнал доктора Добба . Проверено 19 сентября 2020 года .

Внешние ссылки [ править ]

  • Backside Bus , searchstorage.techtarget.com
  • Изображения и описания Intel Pentium Pro , cpu-collection.de
  • CPU-INFO: Intel Pentium Pro, подробная история процессора , web.archive.org