Главная
Новости рынка
Рубрикатор



Архив новостей -->



 



   

И. Шагурин

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

Внутренняя структура (микроархитектура) процессора Pentuim 4 значительно отличается от микроархитектуры предшествующих моделей Pentium II, Pentium III, Celeron. Наряду с микроархитектурой существенно изменилась и архитектура систем, реализуемых на его основе. Новая системная архитектура, использующая процессор Pentuim 4 и набор специализированных микросхем Chipset 850, выпускаемых компанией Intel, обеспечивают значительное повышение производительности — от 23 до 87% при решении различного класса задач. В 2001 году планируется быстрый рост производства Pentium 4 и повышение его тактовой частоты до 2 ГГц. В 2002 году объём выпуска Pentium 4 превысит Pentium III, и этот процессор станет основной продукцией компании Intel.

Развитие архитектуры IA-32 в семействе Pentium

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

В процессоре Pentium 4 реализуется архитектура IA-32 (Intel Architеcture-32), общая для всех 32-разрядных микропроцессоров Intel, начиная с i386. В табл. 1 приведены основные модели процессоров, в которых используется эта архитектура, и некоторые их характеристики. Отметим, что модели Pentium II Xeon и Pentium III Xeon ориентированы на работу в высокопроизводительных мультипроцессорных системах (серверах, рабочих станциях). Для этих же приложений планируется выпуск в 2001 году модификации процессора Pentium 4 с поддержкой мультипроцессорного режима работы (название проекта — Foster).

Таблица 1. Некоторые характеристики процессоров архитектуры IA-32

Модель, начало выпуска Число транзисторов Тактовая частота, МГц Объем внутренней кэш-памяти
i386, октябрь 1985 г. 275 тыс. до 40 Нет
i486, апрель 1989 г. 1,2 млн. до 100 8 Кбайт - команды
8 Кбайт - данные
Pentium, март 1993 г. 3,1 млн. до 200 8 Кбайт - команды
8 Кбайт - данные
Pentium Pro, ноябрь 1995 г. 5,5 млн. до 200 8 Кбайт - команды
8 Кбайт - данные
Pentium MMX,
январь 1997 г.
4,5 млн. до 233 8 Кбайт - команды
8 Кбайт - данные
Pentium II,
май 1997 г.
(Xeon, июнь 1998 г.)
7,5 млн. до 450 16 Кбайт - команды
16 Кбайт - данные
Celeron,
аперль 1998 г.
  до 750 128 Кбайт - общий
Pentium III,
февраль 1999 г.
(Xeon, март 1999 г.)
8,5 млн. до 1000

(до 700)
16 Кбайт - команды
16 Кбайт - данные
Pentium 4,
ноябрь 2000 г.
(Foster, 2001 г.)
42 млн. до 1500

(2000)
256 Кбайт - общтй
12 К - микрокоманлы
8 Кбайт - данные

История архитектуры IA-32 насчитывает уже более 15 лет, и её основные черты достаточно полно описаны в ряде монографий (например, в [2]). Поэтому ограничимся их кратким обзором.

В процессе развития IA-32 производилось расширение возможностей обработки данных, представленных в различных форматах (рис. 1). Процессоры i386 выполняли обработку только целочисленных операндов. Для обработки чисел с “плавающей точкой” использовался внешний сопроцессор i387, подключаемый к микропроцессору. В состав процессоров i486 и последующих моделей Pentium введён специальный блок FPU (Floating-Point Unit), выполняющий операции над числами с “плавающей точкой”. В процессорах Pentium MMX была впервые реализована групповая обработка нескольких целочисленных операндов разрядностью 1, 2, 4 или 8 байт с помощью одной команды. Такая обработка обеспечивается введением дополнительного блока MMX (Milti-Media Extension — Мультимедийное Расширение). Название блока отражает его направленность на обработку видео- и аудиоданных, когда одновременное выполнение одной операции над несколькими операндами позволяет существенно повысить скорость обработки изображений и звуковых сигналов. Начиная с модели Pentium III, в процессоры вводится блок SSE (Streaming SIMD Extension — Потоковое SIMD-расширение) для групповой обработки чисел с “плавающей точкой”.

Эволюция архитектуры IA-32

Рис. 1. Эволюция архитектуры IA-32

Таким образом, если первые модели процессоров Pentium выполняли только пооперандную обработку данных по принципу “Одна команда – Одни данные” (SISD — Single Instruction – Single Data), то, начиная с процессора Pentium MMX, реализуется также их групповая обработка по принципу “Одна команда – Много данных” (SIMD — Single Instruction – Multiple Data).

Соответственно, расширяется и набор регистров процессора, используемых для промежуточного хранения данных (рис. 2). Кроме 32-разрядных регистров для хранения целочисленных операндов, процессоры Pentium содержат 80-разрядные регистры, которые обслуживают блоки FPU и MMX. При работе FPU регистры ST0-ST7 образуют кольцевой стек, в котором хранятся числа с “плавающей точкой”, представленные в формате с расширенной точностью (80 разрядов). При реализации MMX-операций они используются как 64-разрядные регистры MM0-MM7, где могут храниться несколько операндов (8 8-разрядных, 4 16-разрядных, 2 32-разрядных или один 64-разрядный), над которыми одновременно выполняется поступившая в процессор команда (арифметическая, логическая, сдвиг и ряд других).

Регистры хранения данных в процессорах Pentium

Рис. 2. Регистры хранения данных в процессорах Pentium

Блок SSE-2, введённый в состав процессора Pentium 4, значительно расширяет возможности обработки нескольких операндов по принципу SIMD, по сравнению с блоком SSE в модели Pentium III. Этот блок реализует 144 новые команды, обеспечивающих одновременное выполнение операций над несколькими операндами, которые раcполагаются в памяти и в 128-разрядных регистрах XMM0-XMM7. В регистрах могут храниться и одновременно обрабатываться 2 числа с “плавающей точкой” в формате двойной точности (64 разряда) или 4 числа в формате одинарной точности (32 разряда). Этот блок может также одновременно обрабатывать целочисленные операнды: 16 8-разрядных, 8 16-разрядных, 4 32-разрядных или 2 64-разрядных. В результате производительность процессора Pentium 4 при выполнении таких операций оказывается вдвое выше, чем Pentium III.

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

Введение большой группы команд SSE-2 является основной особенностью реализованного в Pentium 4 варианта архитектуры IA-32. Что касается базового набора команд и используемых способов адресации операндов, то они практически полностью совпадают с набором команд и способов адресации в предыдущих моделях Pentium. Процессор обеспечивает реальный и защищённый режимы работы, реализует сегментную и страничную организации памяти. Таким образом пользователь имеет дело с хорошо знакомым набором регистров и способов адресации, может работать с базовой системой команд и известными вариантами реализации прерываний и исключений, которые характерны для всех моделей семейства Pentium [2].

Микроархитектура процессоров Pentium 4

Основные особенности процессора Pentium 4 связаны с его микроархитектурой. Микроархитектура процессора определяет реализацию его внутренней структуры, принципы выполнения поступающих команд, способы размещения и обработки данных. Как анонсировала компания Intel, новая микроархитектура процессора Pentium 4, получившая название NetBurst (пакетно-сетевая), ориентирована на эффективную работу с Интернет-приложениями. Необходимо отметить, что в микроархитектуре NetBurst реализованы многие принципы, использованные в предыдущей модели Pentium III (микроархитектура P6 [2]). Характерными чертами этой микроархитектуры являются:

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

Практическая реализация данных принципов в структуре процессора Pentium 4 имеет ряд существенных особенностей (рис. 3).

Общая структура Pentium 4

Рис. 3. Общая структура Pentium 4

Гарвардская внутренняя структура реализуется путём разделения потоков команд и данных, поступающих от системной шины через блок внешнего интерфейса и размещённую на кристалле процессора общую кэш-память 2-го уровня (L2) ёмкостью 256 Кбайт. Такое размещение позволяет сократить время выборки команд и данных по сравнению с Pentuim III, где эта кэш-память располагается на отдельном кристалле, смонтированном в общем корпусе (картридже) с процессором.

Блок внешнего интерфейса реализует обмен пpоцессоpа с системной шиной, к которой подключается память, контроллеры ввода/вывода и другие активные устройства системы. Обмен по системной шине осуществляется с помощью 64-разрядной двунаправленной шины данных, 41-разрядной шины адреса (33 адресных линии А35-3 и 8 линий выбора байтов BE7-0#), обеспечивающей адресацию до 64 Гбайт внешней памяти.

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

После формирования потоков микрокоманд производится выделение регистров, необходимых для выполнения декодированных команд. Эта процедура реализуется блоком распределения регистров, который выделяет для каждого указанного в команде логического регистра (регистра целочисленных операндов EAX, ECX и других, регистра операндов с плавающей точкой ST0-ST7 или регистра блоков MMX, SSE, рис. 2) один из 128 физических регистров, входящих в состав блоков регистров замещения (БРЗ).

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

Выбранные микрокоманды размещаются в очереди микрокоманд. В ней содержатся микрокоманды, реализующие выполнение 126 поступивших и декодированных команд, которые затем направляются в исполнительные устройства по мере готовности операндов. Отметим, что в процессорах Pentium III в очереди находятся микрокоманды для 40 поступивших команд. Значительное увеличение числа команд, стоящих в очереди, позволяет более эффективно организовать поток их исполнения, изменяя последовательность выполнения команд и выделяя команды, которые могут выполняться параллельно. Эти функции реализует блок распределения микрокоманд. Он выбирает микрокоманды из очереди не в порядке их поступления, а по мере готовности соответствующих операндов и исполнительных устройств. В результате команды, поступившие позже, могут быть выполнены до ранее выбранных команд. При этом реализуется одновременное выполнение нескольких микрокоманд (команд) в параллельно работающих исполнительных устройствах. Таким образом естественный порядок следования команд нарушается, чтобы обеспечить более полную загрузку параллельно включенных исполнительных устройств и повысить производительность процессора.

Суперскалярная архитектура реализуется путём организации исполнительного ядра процессора в виде ряда параллельно работающих блоков. Арифметико-логические блоки ALU производят обработку целочисленных операндов, которые поступают из заданных регистров БРЗ. В эти же регистры заносится и результат операции. При этом проверяются также условия ветвления для команд условных переходов и выдаются сигналы перезагрузки конвейера команд в случае неправильно предсказанного ветвления. Исполнительное ядро работает с повышенной скоростью выполнения операций. Например, микрокоманда сложения целочисленных операндов при тактовой частоте процессора 1,5 МГц выполняется всего за 0,36 нс.

Адреса операндов, выбираемых из памяти, вычисляются блоком формирования адреса (БФА), который реализует интерфейс с кэш-памятью данных 1-го уровня (L1) ёмкостью 8 Кбайт. В соответствии с заданными в декодированных командах способами адресации формируются 48 адресов для загрузки операндов из памяти в регистр БРЗ и 24 адреса для записи из регистра в память (в Pentium III формируются 16 адресов для загрузки регистров и 12 адресов для записи в память). При этом БФА формирует адреса операндов для команд, которые ещё не поступили на выполнение. При обращении к памяти БФА одновременно выдаёт адреса двух операндов: один для загрузки операнда в заданный регистр БРЗ, второй — для пересылки результата из БРЗ в память. Таким образом реализуется процедура предварительного чтения данных для последующей их обработки в исполнительных блоках, которая называется спекулятивной выборкой.

Аналогичным образом организуется параллельная работа блоков SSE, FPU, MMX, которые используют отдельный набор регистров и блок формирования адресов операндов.

При выборке операнда из памяти производится обращение к кэш-памяти данных (L1), которая имеет отдельные порты для чтения и записи. За один такт производится выборка операндов для двух команд. Время обращения к этой кэш-памяти составляет 1,42 нс при тактовой частоте 1,5 ГГц, что в 2,1 раза меньше, чем при обращении к кэш-памяти данных в процессоре Pentium III, работающем на частоте 1,0 ГГц.

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

В Pentuim 4 используется гиперконвейерная технология выполнения команд, при которой число ступеней конвейера достигает 20 (в Pentium — 5 ступеней, в Pentium III — 11). Таким образом одновременно в процессе выполнения может находиться до 20 команд, находящихся на разных стадиях (ступенях) их реализации.

Эффективность конвейера резко снижается из-за необходимости его перезагрузки при выполнении условных ветвлений, когда требуется произвести очистку всех предыдущих ступеней и выбрать команду из другой ветви программы. Чтобы сократить потери времени, связанные с перезагрузкой конвейера, используется блок предсказания ветвлений. Его основной частью является ассоциативная память, называемая буфером адресов ветвлений (BTB — Branch Target Buffer), в которой хранятся 4092 адреса ранее выполненных переходов. Отметим, что в BTB процессора Pentium III хранятся адреса только 512 переходов. Кроме того, BTB содержит биты, хранящие предысторию ветвления, которые указывают, выполнялся ли переход при предыдущих выборках данной команды. При поступлении очередной команды условного перехода указанный в ней адрес сравнивается с содержимым BTB. Если этот адрес не содержится в BTB, то есть ранее не производились переходы по данному адресу, то предсказывается отсутствие ветвления. В этом случае продолжается выборка и декодирование команд, следующих за командой перехода. При совпадении указанного в команде адреса перехода с каким-либо из адресов, хранящихся в BTB, производится анализ предыстории. В процессе анализа определяется чаще всего реализуемое направление ветвления, а также выявляются чередующиеся переходы. Если предсказывается выполнение ветвления, то выбирается и загружается в конвейер команда, размещённая по предсказанному адресу. Усовершенствованный блок предсказания ветвления, используемый в Pentuim 4, обеспечивает 90-% вероятность правильного предсказания. Таким образом резко уменьшается число перезагрузок конвейера при неправильном предсказании ветвления.

Реализация микроархитектуры

Реализованное в Pentium 4 значительное изменение микроархитектуры и повышение производительности потребовали введения дополнительных аппаратных средств. На кристалле процессора располагаются 42 млн. транзисторов (Pentium III содержал 8,5 млн. транзисторов без учёта кэш-памяти 2-го уровня, размещённой на отдельном кристалле). В настоящее время для изготовления Pentium 4 используется КМОП-технология с разрешающей способностью 0,18 мкм. Выпускаемые модели Pentium 4 имеют максимальные тактовые частоты 1,4 и 1,5 ГГц и размещаются в 423-выводных корпусах типа PPGA (Plastic Pin Grid Array). В 2001 году компания Intel планирует переход к 0,13-мкм технологии изготовления с использованием 6-слойной системы медных соединений. При этом будет обеспечено повышение тактовой частоты процессоров Pentium 4 до 2 ГГц и выше.

Архитектура систем на базе Pentium 4

Практическая реализация потенциальных возможностей процессора Pentium 4 обеспечивается при использовании набора специализированных микросхем, необходимых для построения на его основе цифровых систем различного назначения. Для реализации систем на базе Pentium 4 компания Intel выпускает набор микросхем Chipset 850, в который входят:

  • контроллер-концентратор памяти MCH (Memory Controller Hub) типа Intel 82850;
  • контроллер-концентратор для устройств ввода/вывода ICH2 (I/O Controller Hub) типа Intel 82801BA;
  • контроллер микрокода FWH (FirmWare Hub) типа Intel 82802AB.

Типовая архитектура систем, реализованных на базе процессора Pentium 4 с использованием набора Chipset 850, показана на рис. 4. Основной особенностью этой архитектуры является использование новой системной шины FSB, обеспечивающей обмен со скоростью 3,2 Гбайт/c, что соответствует частоте передачи данных 400 МГц. Такая скорость реализуется путём применения нового типа сверхбыстродействующей двухканальной памяти RDRAM и контроллера-концентратора MCH, обеспечивающего 4 канала обмена с памятью этого типа.

Рис. 4. Типовая архитектура систем на базе Pentium 4

Контроллер MCH выполняет обмен с оперативной памятью типа Direct RAMBUS ёмкостью от 128 Мбайт (минимально допустимый объём) до 2 Гбайт с помощью сдвоенных каналов. Память реализуется на основе микросхем быстродействующей двухканальной RDRAM-памяти типа PC800 или PC600, выпускаемых компанией RAMBUS. Таким образом общий доступ к оперативной памяти осуществляется с использованием четырёх каналов обмена. При тактовой частоте канала 100 МГц обеспечивается общая частота обмена, эквивалентная 400 МГц, что в 3 раза выше, чем для наиболее быстродействующих современных системных плат, работающих на частоте 133 МГц.

При использовании в системах микросхем памяти типа RDRAM могут возникнуть проблемы, которые связаны с их высокой стоимостью и определёнными сложностями их поставки. Поэтому в настоящее время разрабатываются варианты применения других типов быстродействующих микросхем динамической памяти, выпускаемых компаниями NEC, Toshiba, Samsung, Hyndai, Infineon.

К контроллеру MCH подключается также универсальный разъём AGP4X, используемый для связи с графическим адаптером при скорости передачи данных более 1 Гбайт/с.

Контроллер ICH2 служит для подключения различных внешних устройств с использованием интерфейса ULTRA ATA/66/100. Этот интерфейс реализует обмен с жёстким диском со скоростью 66 или 100 Мбайт/c. ICH2 также обеспечивает прямой доступ внешних устройств к памяти со скоростью 33 Мбайт/с при помощи интерфейса ULTRA DMA/33. Контроллер служит для подключения последовательных портов с шиной USB, связи с локальной сетью Ethernet и параллельного обмена по шине PCI. Обеспечивается возможность реализации каналов для передачи аудиоданных.

Для создания систем на базе Pentim 4 компания Intel выпускает системные (“материнские”) платы типа D850GB. На плате размером 30,5ґ24,4 см2 монтируется микропроцессор и другие необходимые микросхемы, имеются 4 разъёма для включения RIMM-модулей памяти RDRAM. На плате размещаются также флэш-память ёмкостью 4 Мбит, хранящая систему ввода/вывода BIOS, 5 слотов шины PCI и 2 контроллера последовательной шины USB, обслуживающих 4 USB-порта. Кроме того, имеются порты для подключения клавиатуры и мыши, 2 интерфейса для подключения жёстких дисков и один для гибких дисков, один последовательный (COM) и один параллельный (LPT) порты.

Ведущие производители персональных компьютеров: Compaq, Dell, IBM, Hewlett-Packard, Acer, Siemens, Fujitsu, Toshiba, NEC и ряд других — начали поставку новых моделей компьютеров на основе процессоров Pentium 4. Предполагается, что средняя стоимость этих компьютеров в конце I полугодия 2001 года снизится до уровня 1600 долларов.

Области применения и реализуемое повышение производительности

Основной областью применения процессора Pentium 4 являются высокопроизводительные настольные персональные компьютеры (desktop PC). Процессор Pentium 4 не поддерживает реализацию мультипроцессорных систем, которая обеспечивается процессорами Pentium III Xeon. В 2001 году компания Intel планирует начать производство процессора Foster, который представляет собой модификацию Pentium 4, предназначенную для работы в мультипроцессорных системах. Процессор Foster будет использоваться в серверах и рабочих станциях.

Процессоры, которые будут выпускаться компанией Intel в 2001 году, ориентированы на области применения, перечисленные в табл. 2.

Таблица 2. Области применения перспективных процессоров фирмы INTEL

Область применения Процессор
Серверы, рабочие станции ITANIUM (800 МГц, кэш 3-го уровня 4 Мбайт) Процессор Foster (>= 1,4 ГГц) Pentium III Xeon (900 МГц, кэш 2-го уровня 2 Мбайт)
Высокопроизводительные персональные компьютеры Pentium 4 (>1,4 ГГц) Pentium III (>1 ГГц)
Компьютеры для массового потребителя Celeron (>= 800 МГц)

Новые 64-разрядные процессоры Itanium, архитектура которых принципиально отличается от архитектуры IA-32, используемой в семействе Pentium, будут применяться в наиболее высокопроизводительных серверах и рабочих станциях. В сфере персональных компьютеров процессоры Pentium 4 будут постепенно вытеснять Pentium III. Процессор Foster будет заменять Pentium III Xeon в серверах и рабочих станциях средней производительности. Процессоры Celeron сохранят свои доминирующие позиции в персональных компьютерах для массового потребителя.

Основным преимуществом процессора Pentium 4, по сравнению с предыдущей моделью Pentium III, является существенное повышение производительности при реализации различных приложений. В табл. 3 даны результаты тестовых испытаний производительности компьютеров на основе Pentium 4 (тактовая частота 1,5 ГГц, частота обмена по системной шине 400 МГц) и Pentium III (тактовая частота 1,0 ГГц, частота обмена по системной шине 133 МГц). Приведённые данные содержались в материалах, представленных компанией Intel на презентации процессора Pentium 4 в Москве, в ноябре 2000 года. В табл. 3 указаны программы, с помощью которых производилась сравнительная оценка производительности для различных приложений.

Таблица 3. Результаты сравнительных испытаний процессоров Pentium III и Pentium 4

Вид приложения Повышение производительности
Обработка целых чисел (SPECint2000) 23%
Обработка чисел с плавающей запятой (SPECfp2000) 79%
Кодирование аудиосигналов (eJay МРЗ Plus 1.3) 25%
Работа в сети Интернет (WebMark2001) 23%
Распознавание речи (Dragon Naturally Speaking, preffered 4.0) 27%
Кодирование видеопотоков
(Media Encjder 7.0)
(Video 2000 MPEG-2)

45%
26%
Обработка видеоматериалов
(ULead VideoStudio 4.0)
(Adobe Premier 5.1 c LSX-MPEG)

45%
26%
Трехмерные игры
(Quake III Arena Demo2)
44%
Трехмерная графика (3D WinBench 2000) 32%

Приведённые данные показывают, что наибольший выигрыш обеспечивается при использовании Pentium 4 для обработки видеоданных, реализации трёхмерной графики и выполнении операций над числами с “плавающей точкой”.

Литература

  1. Шагурин И.И. Pentium 4 — новая ступень развития микропроцессорной техники // Chip News. — 2000. — № 9. — С. 18–20.
  2. Шагурин И.И., Бердышев Е.М. Процессоры семейства P6 — Pentium II, Pentium III, Celeron и другие. Архитектура, программирование, интерфейс. — М.: Горячая линия – Телеком. — 2000. — 248 с.

Тел.: 323 9357
E-mail: shagurin@d406.micro.mephi.ru







Реклама на сайте
тел.: +7 (495) 514 4110. e-mail:admin@eust.ru
1998-2014 ООО Рынок микроэлектроники