Процессоры нового поколения и перспективы их развития

Страница: 3/11

достижения сравнимой производительности работы с кэшом, другие

процессоры должны будут использовать кэш большего, чем 256 кб

размера.

"Intel", как правило, предлагает многочисленные вариации

своих процессоров. Это делается с целью удовлетворить разнообраз-

ным требованиям проектировщиков систем и оставить меньше прост-

ранства для моделей конкурентов. Поэтому можно предположить, что

вскоре после начала выпуска Р6 появятся как модификации с увели-

ченным объемом вторичной кэш-памяти, так и более дешевые модифи-

кации с внешним расположением вторичного кэша, но при сохраненной

выделенной шине между вторичным кэшом и процессором.

2Pentium как точка отсчета

Процессор Pentium со своей конвейерной и суперскалярной ар-

хитектурой достиг впечатляющего уровня производительности.

Pentium содержит два 5-стадийных конвейера, которые могут

работать параллельно и выполнять две целочисленные команды за ма-

шинный такт. При этом параллельно может выполняться только пара

команд, следующих в программе друг за другом и удовлетворяющих

определенным правилам, например, отсутствие регистровых зависи-

мостей типа "запись после чтения".

В P6 для увеличения пропускной способности осуществлен пере-

ход к одному 12-стадийному конвейеру. Увеличение числа стадий

- 5 -

приводит к уменьшению выполняемой на каждой стадии работы и, как

следствие, к уменьшению времени нахождения команды на каждой ста-

дии на 33 процента по сравнению с Pentium. Это означает, что ис-

пользование при производстве P6 той же технологии, что и при про-

изводстве 100 МГц Pentium, приведет к получению P6 с тактовой

частотой 133 МГц.

Возможности суперскалярной архитектуры Pentium, с ее способ-

ностью к выполнению двух команд за такт, было бы трудно превзойти

без совершенно нового подхода. Примененный в P6 новый подход уст-

раняет жесткую зависимость между традиционными фазами "выборки" и

"выполнения", когда последовательность прохождения команд через

эти две фазы соответствует последовательности команд в программе.

Новый подход связан с использованием так называемого пула команд

и с новыми эффективными методами предвидения будущего поведения

программы. При этом традиционная фаза "выполнение" заменяется на

две: "диспетчирование/выполнение" и "откат". В результате команды

могут начинать выполняться в произвольном порядке, но завершают

свое выполнение всегда в соответствии с их исходным порядком в

программе. Ядро P6 реализовано как три независимых устройства,

взаимодействующих через пул команд (рис. 1).

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

2производительности

Решение об организации P6 как трех независимых и взаимодейс-

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

анализа факторов, ограничивающих производительность современных

микропроцессоров. Фундаментальный факт, справедливый для Pentium

и многих других процессоров, состоит в том, что при выполнении

реальных программ мощность процессора не используется в полной

мере. Рассмотрим в качестве примера следующий фрагмент программы,

записанный на некотором условном языке:

r1 <- mem[r0] /* Команда 1 */

r2 <- r1 + r2 /* Команда 2 */

r5 <- r5 + 1 /* Команда 3 */

r6 <- r6 - r3 /* Команда 4 */

Предположим, что при выполнении первой команды фрагмента -

загрузки из памяти в регистр r1 - оказалось, что содержимое соот-

ветствующей ячейки памяти отсутствует в кэше. При традиционном

подходе процессор перейдет к выполнению команды 2 только после

того, как данные из ячейки mem[r0] основной памяти будут прочита-

ны через интерфейс шины. Все время ожидания процессор будет прос-

таивать.

В то время как скорость процессоров за последние 10 лет вы-

росла по меньшей мере в 10 раз, время доступа к основной памяти

уменьшилось только на 60 процентов. Это увеличивающееся отстава-

ние скорости работы с памятью по отношению к скорости процессора

и было той фундаментальной проблемой, которую пришлось решать при

проектировании P6.

Один из возможных подходов к решению этой проблемы - перенос

- 6 -

ее центра тяжести на разработку высокопроизводительных компонен-

тов, окружающих процессор. Однако массовый выпуск систем, включа-

Реферат опубликован: 5/02/2009