Смекни!
smekni.com

Содержание:

Введение

1. Архитектура IntelNetBurst

2. Процессор

3. Чипсет и системная шина

4. Тестирование Pentium 4

Заключение

Список используемых источников

Введение

Будучи выпущенным в 1995 году, процессор Intel Pentium Pro стал первым CPU с архитектурой P6. С тех пор прошло уже достаточно много времени, сменилось несколько поколений процессоров, однако, по сути архитектура не менялась. Семейства Pentium II, Pentium III и Celeron имеют все то же строение ядра, отличаясь по сути только размером и организацией кеша второго уровня и наличием набора команд SSE, появившегося в Pentium III. Естественно, рано или поздно архитектура P6 должна была устареть. И дело тут вовсе не в невозможности дальнейшего наращивания тактовых частот и даже не в обострившейся в последнее время конкуренцией с AMD. Конечно, нельзя отрицать тот факт, что достигнув частоты в 1 ГГц Intel столкнулся с проблемами в дальнейшем наращивании частоты своих процессоров: Pentium III 1.13 ГГц даже пришлось отзывать в связи с его нестабильностью. Однако, эту проблему легко можно решить переходом на 0.13 мкм процесс – тем более, что его повсеместное внедрение не за горами.

Настоящая причина необходимости новой архитектуры кроется глубже. К сожалению, дальнейшее наращивание частоты существующих процессоров приводит все к меньшему росту их производительности. Проблема в том, что латентности, то есть задержки, возникающие при обращении к тем или иным узлам процессора, по нынешним меркам в P6 уже слишком велики. Именно это явилось основной причиной, по которой Intel затеял разработку Pentium 4, которая выполнена с чистого листа. Таким образом, анонсированный сегодня Pentium 4 - совершенно новый процессор, ничего общего не имеющий со своими предшественниками. В его основе лежит архитектура, названная Intel NetBurst architecture. Этим названием Intel хотел подчеркнуть, что основная цель нового процессора – ускорить выполнение задач потоковой обработки данных, напрямую связанных с бурно развивающимся Internet.

1. Архитектура Intel NetBurst

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

Intel Pentium 4
Intel Pentium 4Hyper Pipelined Technology. Конвейер Pentium 4 имеет беспрецедентно большую глубину – 20 стадий.

Intel Pentium 4
Intel Pentium 4Advanced Dynamic Execution. Улучшенное предсказание переходов и исполнение команд с изменением порядка их следования (out of order execution).

Intel Pentium 4
Intel Pentium 4Trace Cache. Для кэширования декодированных инструкций в Pentium 4 используется специальный кэш.

Intel Pentium 4
Intel Pentium 4Rapid Execute Engine. ALU процессора Pentium 4 работает на вдвое большей, чем сам процессор, частоте.

Intel Pentium 4
Intel Pentium 4SSE2. Расширенный набор инструкций для обработки потоковых данных.

Intel Pentium 4
Intel Pentium 4400 MHz System Bus. Новая системная шина.

Рассмотрим все нововведения по порядку.

1.1 Hyper Pipelined Technology

Названием Hyper Pipelined Technology конвейер Pentium 4 обязансвоейдлине – 20 стадий. Для сравнения – длина конвейера Pentium III составляет 10 стадий. Чего же достиг Intel, так удлинив конвейер? Благодаря декомпозиции выполнения каждой команды на более мелкие этапы, каждый из этих этапов теперь может выполняться быстрее, что позволяет беспрепятственно увеличивать частоту процессора. Так, если при используемом сегодня технологическом процессе 0.18 мкм предельная частота для Pentium III составляет 1 ГГц (ну или, по более оптимистичным оценкам, 1.13 ГГц), Pentium 4 сможет достигнуть частоты 2 ГГц.

Однако, у чрезмерно длинного конвейера есть и свои недостатки. Первый недостаток очевиден – каждая команда теперь, проходя большее число стадий, выполняется дольше. Поэтому, чтобы младшие модели Pentium 4 превосходили по производительности старшие модели Pentium III, частоты Pentium 4 начинаются с 1.4 ГГц. Если бы Intel выпустил бы Pentium 4 1 ГГц, то этот процессор несомненно бы проиграл в производительности гигагерцовому Pentium III.

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

1.2 Advanced Dynamic Execution

Целью ряда ухищрений в архитектуре Pentium 4, под общим названием Advanced Dynamic Execution, как раз и является минимизация простоя процессора при неправильном предсказании переходов и увеличение вероятности правильных предсказаний. Для этого Intel улучшил блок выборки инструкций для внеочередного выполнения и повысил правильность предсказания переходов. Правда, для этого алгоритмы предсказания переходов были доработаны минимально, основным же средством для достижения цели было выбрано увеличение размеров буферов, с которыми работают соответствующие блоки процессора.

Intel Pentium 4Так, для выборки следующей инструкции для исполнения используется теперь окно величиной в 126 команд против 42 команд у процессора Pentium III. Буфер же, в котором сохраняются адреса выполненных переходов и на основании которого процессор предсказывает будущие переходы, теперь увеличен до 4 Кбайт, в то время как у Pentium III его размер составлял всего 512 байт.
Intel Pentium 4Результатом этого, а также благодаря небольшой доработке алгоритма, вероятность правильного предсказания переходов была улучшена по сравнению с Pentium III на 33%. Это – очень хороший показатель, поскольку теперь Pentium 4 предсказывает переходы правильно в 90-95% случаев.

1.3 Trace Cache

Вместо обычного L1 кеша, который в Pentium III был разделен на область инструкций и область данных в Pentium 4 применен новый подход. Инструкции в L1 кэше не сохраняются, он предназначен теперь только для данных. Для кэширования инструкций теперь используется Trace Cache, однако по сравнению с обычным L1-кешем он имеет много преимуществ, направленных опять же на минимизацию простоев процессора при выполнении неправильных предсказаний переходов.

Intel Pentium 4Первое, и основное – в Trace Cache сохраняются уже декодированные инструкции. Это значит, что в нем хранятся не классические x86 инструкции, а так называемые микрокоманды, более простые операции которыми непосредственно оперирует процессорное ядро. Сохранение в Trace Cache микроопераций позволяет избежать повторного декодирования x86 инструкций при повторном выполнении того же участка программы или при неправильном предсказании переходов.

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

Intel не раскрывает размеров своего Trace Cache в килобайтах, однако, известно что в нем может быть сохранено до 12000 микроопераций.

1.4 Rapid Execute Engine

Наиболее простая часть современного процессора – это ALU (арифметико-логическое устройство). Благодаря этому факту, Intel счел возможным увеличить его тактовую частоту внутри Pentium 4 вдвое по отношению к самому процессору. Таким образом, например, в 1.4 ГГц Pentium 4 ALU работает на частоте 2.8 ГГц.

В ALU исполняются простые целочисленные инструкции, поэтому, производительность нового процессора при операциях с целыми числами должна быть очень высокой. Однако, на производительности Pentium 4 при операциях с вещественными числами, MMX или SSE двукратное ускорение ALU никак не сказывается.

Intel Pentium 4Таким образом, латентность ALU существенно снижается. В частности, на выполнение одной инструкции типа add Pentium 4 1.4 ГГц тратил всего 0.35нс, в то время как выполнение этой команды у Pentium III 1 ГГц занимает 1 нс.

1.5 SSE2

Реализовав в своем процессоре Athlon новый конвейерный FPU, AMD очень сильно обогнала интеловский Pentium III в производительности при операциях с вещественными числами. Однако, Intel в своем Pentium 4 не стал сосредотачиваться на совершенствовании своего FPU, а просто увеличил возможности блока SSE. В результате, в Pentium 4 имеет место расширенный набор команд SSE2, в котором к имеющемуся набору из 70 инструкций было добавлено еще 144. Такое решение – результат NetBurst идеологии, основной целью которой является увеличение скорости работы с потоками данных.

Intel Pentium 4Инструкции SSE позволяли оперировать с восемью 128-битными регистрами XMM0..XMM7, в которых хранились по четыре вещественных числа одинарной точности. При этом все SSE операции проводились одновременно над четверками чисел, в результате чего специально оптимизированные программы, в которых производилось большое количество однотипных вычислений (а к ним, помимо обработки потоков данных в какой-то мере относятся и 3D-игры), получали существенный прирост в производительности.