Вход

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

Реферат* по радиоэлектронике
Дата добавления: 21 декабря 1998
Язык реферата: Русский
Word, rtf, 838 кб (архив zip, 108 кб)
Реферат можно скачать бесплатно
Скачать
Данная работа не подходит - план Б:
Создаете заказ
Выбираете исполнителя
Готовый результат
Исполнители предлагают свои условия
Автор работает
Заказать
Не подходит данная работа?
Вы можете заказать написание любой учебной работы на любую тему.
Заказать новую работу
* Данная работа не является научным трудом, не является выпускной квалификационной работой и представляет собой результат обработки, структурирования и форматирования собранной информации, предназначенной для использования в качестве источника материала при самостоятельной подготовки учебных работ.
Очень похожие работы





 2Содержание


Вступление 2

Два кристалла в одном корпусе 3

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

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

Решение принятое в P6 6

Архитектура P6 7

1. Устройство выборки/декодирования 7

2. Устройство диспетчирования/выполнения 8

3. Устройство отката 9

4. Интерфейс шины 10

5. Вывод 11

P6 как платформа для построения мощных серверов 12

Системы на основе P6 13

Следующее поколение процессоров 14

Заключение 17

Приложения 18

Литература 22

.


- 2 -


 ш1.1

 2Вступление


Все IBM-совместимые персональные компьютеры укомплектованы

Intel-совместимыми процессорами. История развития микропроцессо-

ров семейства Intel вкратце такова. Первый универсальный микро-

процессор фирмы Intel появился в 1970 г. Он назывался Intel 4004,

был четырехразрядным и имел возможность ввода/вывода и обработки

четырехбитных слов. Быстродействие его составляло 8000 операций в

секунду. Микропроцессор Intel 4004 был рассчитан на применение в

программируемых калькуляторах с памятью размером в 4 Кбайт.

Через три года фирма Intel выпустила процессор 8080, который

мог выполнять уже 16-битные арифметические операции, имел 1б-раз-

рядную адресную шину и, следовательно, мог адресовать до 64 Кбайт

памяти (2 516 0=65536). 1978 год ознаменовался выпуском процессора

8086 с размером слова в 16 бит (два байта), 20-разрядной шиной и

мог оперировать уже с 1 Мбайт памяти (2 520 0=1048576, или 1024

Кбайт), разделенной на блоки (сегменты) по 64 Кбайт каждый. Про-

цессором 8086 комплектовались компьютеры, совместимые с IBM PC и

IBM PC/XT. Следующим крупным шагом в разработке новых микропро-

цессоров стал появившийся в 1982 году процессор 8028б. Он обладал

24-разрядной адресной шиной, мог распоряжаться 16 мегабайтами ад-

ресного пространства и ставился на компьютеры, совместимые с IBM

PC/AT. В октябре 1985 года был выпущен 80386DX с 32- разрядной

шиной адреса (максимальное адресное пространство - 4 Гбайт), а в

июне 1988 года - 80386SX, более дешевый по сравнению с 80386DX и

обладавший 24-разрядной адресной шиной. Затем в апреле 1989 года

появляется микропроцессор 80486DX, а в мае 1993 - первый вариант

процессора Pentium (оба с 32-разрядной шиной адреса).

В мае 1995 года в Москве на международной выставке Комтек-95

фирма Intel представила новый процессор - P6.

Одной из важнейших целей, поставленных при разработке P6,

было удвоение производительности по сравнению с процессором Pen-

tium. При этом производство первых версий P6 будет осуществляться

по уже отлаженной "Intel" и используемой при производстве послед-

них версий Pentium полупроводниковой технологии (О,6 мкм, З,З В).

Использование того же самого процесса производства дает гарантию

того, что массовое производство P6 будет налажено без серьезных

проблем. Вместе с тем это означает, что удвоение производитель-

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

хитектуры процессора. При разработке микроархитектуры P6 исполь-

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

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

цессорах "больших" компьютеров, часть предложена академическими

институтами, оставшиеся разработаны инженерами фирмы "Intel". Эта

уникальная комбинация архитектурных особенностей, которую в "In-

tel" определяют словами "динамическое выполнение", позволила пер-

вым кристаллам P6 превзойти первоначально планировавшийся уровень

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

При сравнении с альтернативными "Intel" процессорами семейс-

тва х86 выясняется, что микроархитектура Р6 имеет много общего с

микроархитектурой процессоров Nx586 фирмы NexGen и K5 фирмы AMD,

и, хотя и в меньшей степени, с M1 фирмы "Cyrix". Эта общность



- 3 -


объясняется тем, что инженеры четырех компаний решали одну и ту

же задачу: внедрение элементов RISC-технологии при сохранении

совместимости с CISC-архитектурой Intel х86.


 2Два кристалла в одном корпусе

Главное преимущество и уникальная особенность Р6 - размещен-

ная в одном корпусе с процессором вторичная статическая кэш-па-

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

ленной шиной. Такая конструкция должна существенно упростить про-

ектирование систем на базе Р6. Р6 - первый предназначенный для

массового производства микропроцессор, содержащий два чипа в од-

ном корпусе.

Кристалл ЦПУ в Р6 содержит 5,5 миллионов транзисторов; крис-

талл кэш-памяти второго уровня - 15,5 миллионов. Для сравнения,

последняя модель Pentium включала около 3,3 миллиона транзисто-

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

него набора кристаллов памяти.

Столь большое число транзисторов в кэше объясняется его ста-

тической природой. Статическая память в P6 использует шесть тран-

зисторов для запоминания одного бита, в то время как динамической

памяти было бы достаточно одного транзистора на бит. Статическая

память быстрее, но дороже.

Хотя число транзисторов на кристалле с вторичным кэшем втрое

больше, чем на кристалле процессора, физические размеры кэша

меньше: 202 квадратных миллиметра против 306 у процессора. Оба

кристалла вместе заключены в керамический корпус с 387 контактами

("dual cavity pin-drid array"). Оба кристалла производятся с при-

менением одной и той же технологии (0,6 мкм, 4- слойная ме-

талл-БиКМОП, 2,9 В). Предполагаемое максимальное потребление

энергии: 20 Вт при частоте 133 МГц.

Первая причина объединения процессора и вторичного кэша в

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

роизводительных систем на базе Р6. Производительность вычисли-

тельной системы, построенной на быстром процессоре, очень сильно

зависит от точной настройки микросхем окружения процессора, в

частности вторичного кэша. Далеко не все фирмы-производители

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

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

что облегчает проектирование материнской платы.

Вторая причина объединения - повышение производительности.

Кзш второго уровня связан с процессором специально выделенной ши-

ной шириной 64 бита и работает на той же тактовой частоте, что и

процессор.

Первые процессоры Рentium с тактовой частотой 60 и 66 МГц

обращались к вторичному кэшу по 64-разрядной шине с той же такто-

вой частотой. Однако с ростом тактовой частоты Pentium для проек-

тировщиков стало слишком сложно и дорого поддерживать такую час-

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

частоты. Например, у 100 МГц Pentium внешняя шина работает на

частоте 66 МГц (у 90 МГц Pentium - соответственно 60 МГц). Penti-

um использует эту шину как для обращений к вторичному кэшу, так и



- 4 -


для обращения к основной памяти и другим устройствам, например к

набору чипов PCI.

Использование специально выделенной шины для доступа к вто-

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

Во-первых, при этом достигается полная синхронизация скоростей

процессора и шины; во-вторых, исключается конкуренция с другими

операциями ввода-вывода и связанные с этим задержки. Шина кэша

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

происходит доступ к памяти и внешним устройствам. 64-битовая

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

третьей или одной четвертой от скорости процессора, при этом шина

вторичного кэша работает независимо на полной скорости.

Объединение процессора и вторичного кэша в одном корпусе и

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

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

мощных RISC-процессорах. Так, в процессоре Alpha 21164 фирмы "Di-

gital" кэш второго уровня размером 96 кб размещен в ядре процес-

сора, как и первичный кэш. Это обеспечивает очень высокую произ-

водительность кэша за счет увеличения числа транзисторов на крис-

талле до 9,3 миллиона. Производительность Alpha 21164 составляет

330 SPECint92 при тактовой частоте 300 МГц. Производительность Р6

ниже (по оценкам "Intel" - 200 SPECint92 при тактовой частоте 133

МГц), однако Р6 обеспечивает лучшее соотношение стоимость/произ-

водительность для своего потенциального рынка.

При оценке соотношения стоимость/производительность следует

учитывать, что, хотя Р6 может оказаться дороже своих конкурентов,

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

тельным набором чипов памяти и контроллером кэша. Кроме того, для

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

процессоры должны будут использовать кэш большего, чем 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 -


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

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

ющих и высокопроизводительный процессор, и высокоскоростные спе-

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

щим.

Можно было попытаться решить проблему с использованием гру-

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

уменьшить процент случаев отсутствия необходимых данных в кэше.

Это решение эффективное, но тоже чрезвычайно дорогостоящее, осо-

бенно учитывая сегодняшние скоростные требования к компонентам

кэша второго уровня. P6 проектировался с точки зрения эффективной

реализации целостной вычислительной системы, и требовалось, чтобы

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

зованием дешевой подсистемы памяти.


 2Решение, принятое в P6


Решение сформулированной в предыдущем разделе проблемы памя-

ти, принятое в P6, заключается в обращении к пулу команд, извле-

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

к памяти, и выполнения до момента завершения команды-тормоза мак-

симума полезной работы. В приведенном в предыдущем разделе приме-

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

1, так как команда 2 зависит от результатов команды 1. В то же

время процессор может выполнить команды 3 и 4, не зависящие от

результата выполнения команды 1. Мы будем называть такое выполне-

ние команд опережающим выполнением. Результаты опережающего вы-

полнения команд 3 и 4 не могут быть сразу записаны в регистры,

поскольку мы должны изменять состояние вычислительной системы

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

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

нее. Таким образом, процессор выполняет команды в соответствии с

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

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

выполнения команд P6 является машиной, управляемой потоком дан-

ных. В то же время изменение состояния вычислительной системы,

например запись в регистры, производится в строгом соответствии с

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

Чтение из памяти данных, необходимых для команды 1, может

занимать достаточно много тактов. Тем временем P6 продолжает опе-

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

обработать, как правило, 20-30 команд. Среди этих 20-30 команд

будет в среднем пять команд перехода, которые устройство выбор-

ки/декодирования должно правильно предсказать для того, чтобы ра-

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

ной. Небольшое количество регистров в архитектуре процессоров

"Intel" приводит к интенсивному использованию каждого из них и,

как следствие, к возникновению множества мнимых зависимостей меж-

ду командами, использующими один и тот же регистр. Поэтому, чтобы

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

устройство диспетчирования/выполнения работает с дублями регист-

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



- 7 -


твовать несколько дублей). Реальный набор регистров контролирует-

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

на состоянии вычислительной системы только после того, как выпол-

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

порядком команд в программе.

Таким образом, принятая в P6 технология динамического выпол-

нения может быть описана как оптимальное выполнение программы ,

основанное на предсказании будущих переходов, анализе графа пото-

ков данных с целью выбора наилучшего порядка исполнения команд и

на опережающем выполнении команд в выбранном оптимальном порядке.


 2Архитектура P6


На рисунке 2 приведена более подробная блок-схема P6, вклю-

чающая кэши и интерфейс с основной памятью.

Далее мы будем понимать под "упорядоченным" устройство, ко-

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

рамме, а под "беспорядочным" - устройство, которое не обращает

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

Устройство выборки/декодирования является "упорядоченным"

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

раммы пользователя и декодирует их, превращая в последователь-

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

пользователя.

Устройство диспетчирования/выполнения является "беспорядоч-

ным" устройством, которое воспринимает поток данных и планирует

выполнение микрокоманд с учетом зависимостей по данным и доступ-

ности ресурсов, а также временно сохраняет результаты опережающе-

го выполнения в пуле команд.

Устройство отката - "упорядоченное" устройство, которое зна-

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

временные результаты опережающего выполнения в постоянное состоя-

ние вычислительной системы.

Интерфейс шины является "частично упорядоченным" устройс-

твом, отвечающим за связь трех вышеупомянутых устройств с внешним

миром. Интерфейс шины взаимодействует непосредственно с кэшем

2-го уровня и поддерживает до 4 параллельных обращений к кэшу.

Интерфейс шины также управляет обменом данными с основной па-

мятью, который происходит с использованием протокола MESI [1].


 2Устройство выборки/декодирования


Структура этого устройства приведена на рисунке 3.

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

дующей обработки. Указатель на следующую команду - это индекс кэ-

ша команд, содержимое которого определяется буфером переходов,

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

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

фер переходов с 512 входами использует расширение алгоритма Йе

(Yeh), которое обеспечивает более чем 90-процентную точность

предсказания переходов.

Предположим, что ничего исключительного не происходит и что



- 8 -


буфер переходов в своих предсказаниях оказался прав (в P6 предус-

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

перехода).

Кэш команд выбирает строку кэша, соответствующую индексу в

указателе на следующую команду, и следующую за ней строку, после

чего передает 16 выровненных байтов декодеру. Две строки считыва-

ются из-за того, что команды в архитектуре Intel выровнены по

границе байта, и поэтому может происходить передача управления на

середину или конец строки кэша. Выполнение этой ступени конвейера

занимает три такта, включая время, необходимое для вращения пред-

выбранных байтов и их подачи на декодеры команд. Начало и конец

команд помечаются.

Три параллельных декодера принимают поток отмеченных байтов

и обрабатывают их, отыскивая и декодируя содержащиеся в потоке

команды. Декодер преобразует команды архитектуры Intel в микроко-

манды-триады (два операнда, один результат). Большинство команд

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

требуют четырех микрокоманд, а сложные команды требуют обращения

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

последовательностей микрокоманд. Некоторые команды, так называе-

мые байт-префиксы, модифицируют следующую за ними команду, что

также усложняет работу декодера. Микрокоманды ставятся в очередь,

посылаются в таблицу псевдонимов регистров, где ссылки на логи-

ческие регистры преобразуются в ссылки на физические регистры P6,

после чего каждая из микрокоманд вместе с дополнительной информа-

цией о ее состоянии (статусе) посылается в пул команд. Пул команд

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

мого также буфером переупорядочивания.

В этой точке заканчивается "упорядоченная" часть конвейера.


 2Устройство диспетчирования/выполнения


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

манд в зависимости от их статуса. Под статусом мы будем понимать

информацию о доступности операндов микрокоманды и наличии необхо-

димых для ее выполнения вычислительных ресурсов. Если статус мик-

рокоманды показывает, что ее операнды уже вычислены и доступны, а

необходимое для ее выполнения вычислительное устройство (ресурс)

также доступно, то устройство диспетчирования выбирает микроко-

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

ния. Результаты выполнения микрокоманды возвращаются в пул.

Взаимодействие с вычислительными ресурсами происходит через

пятипортовую распределительную станцию. Структура устройства дис-

петчирования/выполнения показана на рисунке 4.

P6 может запускать на выполнение до 5 микрокоманд за такт,

по одной на каждый порт. Средняя длительно поддерживаемая про-

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

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

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

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

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

программе.



- 9 -


Алгоритм, отвечающий за планирование выполнения микрокоманд,

является крайне важным для производительности процессора в целом.

Если в каждом такте для каждого ресурса готова к выполнению толь-

ко одна микрокоманда, то проблемы выбора не возникает. Но если

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

какую из них выбрать? Можно доверить выбор случаю. Можно приме-

нить алгоритм "первый пришел - первый обслужен". Идеальным был бы

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

сокращению графа потоков данных выполняемой программы. Однако

поскольку нет возможности определить такую микрокоманду в ходе

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

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

смежное выполнение смежных микрокоманд.

Поскольку система команд Intel содержит множество команд пе-

рехода, многие микрокоманды также являются переходами. Алгоритм,

реализованный в буфере переходов, позволяет в большинстве случаев

правильно предсказать, состоится или не состоится переход, но

иногда он все же будет ошибаться. Рассмотрим для примера случай,

когда буфер переходов предсказывает переход назад в конце цикла:

до тех пор, пока условие выхода из цикла не выполняется, переход

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

тинным, предсказание будет ошибочным.

Для исправления случаев неверного предсказания перехода при-

менен следующий подход. Микрокомандам перехода еще в упорядочен-

ной части конвейера ставятся в соответствие адрес следующей ко-

манды и предполагаемый адрес перехода. После вычисления перехода

реальная ситуация сравнивается с предсказанной. Если они совпада-

ют, то проделанная, исходя из предположения об исходе перехода,

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

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

Если же допущена ошибка (переход был предсказан, но не прои-

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

ности он состоялся), то устройство выполнения переходов изменяет

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

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

направляется в буфер переходов, который перезапускает весь конве-

йер с нового адреса.


 2Устройство отката


Структура устройства отката изображена на рисунке 5.

Устройство отката также проверяет статус микрокоманд в пуле

команд: оно ищет микрокоманды, которые уже выполнены и могут быть

удалены из пула. Именно при удалении микрокоманды результаты ее

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

вычислительной системы, например, происходит запись в регистры.

Устройство отката должно не только обнаруживать завершившиеся

микрокоманды, но и удалять их из пула команд таким образом, чтобы

изменение состояния вычислительной системы соответствовало перво-

начальному порядку команд в программе. При этом оно должно учиты-

вать и правильно обрабатывать прерывания, исключительные ситуа-

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



- 10 -


случаи.

Процесс отката занимает два такта. В первом такте устройство

отката считывает пул команд и отыскивает готовые к откату микро-

команды; затем оно определяет, какие из этих микрокоманд могут

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

программе. Во втором такте результаты отката записываются в пул

команд и в регистровый файл отката. Устройство отката может обра-

ботать три микрокоманды за такт.


 2Интерфейс шины


Структура интерфейса шины изображена на рисунке 6.

Есть два типа обращений к памяти: чтение из памяти в регистр

и запись из регистра в память.

При чтении из памяти должны быть заданы адрес памяти, размер

блока считываемых данных и регистр-назначение. Команда чтения ко-

дируется одной микрокомандой.

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

мых данных и сами данные. Поэтому команда записи кодируется двумя

микрокомандами: первая генерирует адрес, вторая готовит данные.

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

раллельно; они могут переупорядочиваться в буфере записи.

Запись в память никогда не выполняется опережающим образом,

так как нет эффективного способа организации отката в случае не-

верного предсказания. Разные команды записи никогда не переупоря-

дочиваются друг относительно друга. Буфер записи инициирует за-

пись, только когда сформированы и адрес, и данные, и нет ожидаю-

щих выполнения более ранних команд записи.

При изучении вопроса о возможности и целесообразности переу-

порядочения доступа к памяти инженеры "Intel" пришли к следующим

выводам.

Команда записи не должна обгонять идущую впереди команду за-

писи, так как это может лишь незначительно увеличить производи-

тельность.

Можно запретить командам записи обгонять команды чтения из

памяти, так как это приведет лишь к незначительной потере произ-

водительности.

Запрет командам чтения обгонять другие команды чтения или

команды записи может повлечь существенные потери в производитель-

ности.

Поэтому была реализована архитектура подсистемы памяти, поз-

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

ды чтения. Буфер упорядочения памяти служит в качестве распреде-

лительной станции и буфера переупорядочивания. В нем хранятся от-

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

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

или недоступность ресурсов) исчезает.








- 11 -


 2Вывод


Таким образом, реализованная в P6 комбинация таких архитек-

турных методов, как улучшенное предсказание переходов (почти

всегда правильно определяется предстоящая последовательность ко-

манд), анализ потоков данных (определяется оптимальный порядок

выполнения команд) и опережающее выполнение (предвиденная после-

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

рядке), позволила удвоить производительность по отношению к Pen-

tium при использовании той же самой технологии производства. Эта

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

В настоящее время "Intel" ведет разработку новой 0,35 мкм

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

ры P6 с тактовой частотой ядра свыше 200 МГц.

.


- 12 -


 2Р6 как платформа для построения мощных серверов


Среди наиболее значимых тенденций развития компьютеров в

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

систем на основе процессоров семейства х86 в качестве серверов

приложений, так и растущую роль "Intel" как поставщика непроцес-

сорных технологий, таких как шины, сетевые технологии, сжатие ви-

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

ния.

Выпуск процессора Р6 продолжает проводимую "Intel" политику

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

компьютеры, на массовый рынок. Для внутренних регистров Р6 пре-

дусмотрен контроль по четности, а соединяющая ядро процессора и

кэш второго уровня 64-битовая шина оснащена средствами обнаруже-

ния и исправления ошибок. Встроенные в Р6 новые возможности диаг-

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

системы. В Р6 предусмотрена возможность получения через контакты

процессора или с помощью программного обеспечения информации о

более чем 100 переменных процессора или происходящих в нем собы-

тиях, таких как отсутствие данных в кэше, содержимое регистров,

появление самомодифицирующего кода и так далее. Операционная сис-

тема и другие программы могут считывать эту информацию для опре-

деления состояния процессора. В Р6 также реализована улучшенная

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

отката компьютера в зафиксированное ранее состояние в случае воз-

никновения ошибки.

Р6 поддерживает те же возможности по контролю при помощи

функциональной избыточности (FRC), что и Pentium. Это означает,

что в P6 предусмотрена возможность построения систем с параллель-

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

имным контролем результатов и сообщением об ошибке в случае рас-

хождения. При этом, к сожалению, P6 по-прежнему не сообщает о

причине ошибки.

В модели Р54С процессора Pentium "Intel" предложила простой

и недорогой способ организации двухпроцессорной работы: ведущий и

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

разделяют программу на потоки. Однако использовать такую органи-

зацию работы могут лишь многопоточные операционные системы.

Р6 переводит организацию многопроцессорной работы на новый

уровень, соответствующий определенной "Intel" мультипроцессорной

спецификации MPS 1.1. Одним из наиболее сложных аспектов симмет-

ричной многопроцессорной работы является поддержание кэш-соот-

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

Р6 поддерживает кэш-соответствие для вторичного кэша на внутрен-

нем уровне, а внешняя шина P6 выступает как симметричная мультип-

роцессорная шина.

Раньше проектировщики мультипроцессорных систем должны были

создавать собственные шины для связи процессоров, либо приобре-

тать лицензию на уже существующие решения, например Corollary

C-bus II. Теперь средства, реализованные "Intel" в Р6, позволяют

объединить четыре процессора в мультипроцессорную систему. Четыре

- это предел, обуславливаемый принятой в Р6 логикой арбитража.



- 13 -


Еще одна проблема для производителей многопроцессорных сис-

тем на базе Р6 состоит в том, что для эффективной работы таких

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

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

Р6. Таким образом, проектировщики высокопроизводительных серверов

будут вынуждены использовать внешние контроллеры кэша и дополни-

тельные микросхемы статической памяти.

Эта проблема будет разрешена, если "Intel" увеличит размер

кэша второго уровня в корпусе Р6, что достижимо либо за счет уве-

личения размера кристалла, либо за счет перехода к более миниа-

тюрной технологии производства. Сегодня производители, которые

хотят строить системы с более чем четырьмя процессорами, должны

объединять две или более четырехпроцессорных системы с помощью

высокоскоростного последовательного соединения память-память. Ре-

ализации таких соединений для PCI ожидаются в этом году.


 2Системы на основе Р6


Можно предположить, что компьютеры на базе P6 первоначально

будут напоминать сегодняшние наиболее мощные Pentium-компьютеры:

по меньшей мере 1 Гб жесткий диск, 32 Мб оперативной памяти, мощ-

ные графические контроллеры. Появятся первые многопроцессорные

серверы на Р6.

Улучшенная диагностика и средства обработки ошибок в Р6 поз-

воляют проектировать на базе Р6 надежные серверы уровня предприя-

тия. Улучшенная поддержка симметричной многопроцессорной работы в

сочетании с поддерживающими такую работу версиями OS/2 и NetWare

приведет к построению на Р6 еще более мощных серверов.

"Intel" предполагает, что первыми Р6-системами будут серве-

ры, однако настольные компьютеры на P6 появятся почти одновремен-

но с ними. Цена первых настольных Р6-компьютеров будет начинаться

с 4000 долларов и расти с ростом мощности конфигурации. С учетом

размера корпуса Р6, его потребления энергии и рассеиваемого тепла

(требуется активное охлаждение), не следует ожидать быстрого по-

явления портативных компьютеров на Р6.

Как обычно, первыми пользователями настольных компьютеров на

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

печения и пользователи из таких областей, как САПР, настольные

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

результатов, статистика, одним словом, те области, которым всегда

недоставало и будет недоставать существующих скоростей.

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

Р6 являются серверы приложений, осуществляющие такие работы, как

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

тов. Системные серверы и серверы печати не привязаны к конкретно-

му типу процессоров и поэтому не испытывают таких потребностей в

увеличении мощности.

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

сравнительно небольшие организации, где на эти системы будет воз-

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

тельности организации приложений. Большие предприятия будут при-

обретать такие системы несколько позднее, после тщательной оценки



- 14 -


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

значительно большее число разработанных на заказ программ и стан-

дартного программного обеспечения, и требуется провести проверку

на его совместимость с новыми системами.

Типичная Р6-система будет включать процессор Р6 с тактовой

частотой 133 МГц, внешнюю шину, работающую на половине, одной

третьей или одной четверти от этой частоты, набор чипов Intel

Р6/PCI по имени Orion, поддерживающий версию 2.1 32-битовой шины

PCI с частотой 33 МГц, но не поддерживающий 64-битовые расширения

PCI.

Вследствие наличия встроенного кэша второго уровня, в боль-

шинстве Р6-систем будет отсутствовать внешний кэш и контроллер

кэша. Для построения основной памяти будут использоваться обычные

60-наносекундные DRAM или, в некоторых случаях, поддерживаемые в

наборе чипов Intel Triton для Pentium более скоростные EDO DRAM.

Стандартной будет конфигурация с 16 Мб оперативной памяти при все

возрастающем числе систем с 32 Мб.

Первоначально Р6-системы будут включать как шину PCI, так и

шины EISA/ISA. Однако по мере роста поддержки PCI необходимость в

EISA и ISA будет уменьшаться. Особенно важным для этого является

появление предусмотренных в PCI 2.1 мостов PCI-PCI. Главной проб-

лемой при использовании PCI сегодня является ограничения на сте-

пень ее нагрузки. Мосты между шинами позволяют работать с большим

числом устройств в пределах одного логического адресного прост-

ранства.

Включение в систему нескольких шин PCI, соединенных мостами,

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

помимо памяти и графики высокоскоростные сетевые интерфейсы (нап-

ример, 100 Мбит/сек Ethernet, FDDI и ATM) и высокоскоростной пос-

ледовательный ввод-вывод.

Емкость памяти на жестком диске будет по меньшей мере 730 Мб

с использованием интерфейса IDE или SCSI. Большая часть систем

будет включать 2-скоростные или более быстрые CDROM. Графика бу-

дет обеспечивать разрешение 1024 на 768 пикселов и управляться

картами-акселераторами с 2-4 Мб памяти.

Более необычные конфигурации могут включать слоты PCMCIA,

4-скоростные CD-ROM, поддержку 40 Мб/сек Ultra SCSI, встроенные

10-100 Мбит/сек сетевые порты и встроенные возможности мультиме-

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

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

жений, компрессии/декомпрессии. Некоторые производители, возмож-

но, прибегнут к использованию новых типов памяти, 128-битовых

графических акселераторов, 64-битовых расширений шины и других

новшеств, допускаемых спецификацией PCI.


 2Следующее поколение процессоров

Технология Р6 является логическим развитием технологии Pen-

tium. Ожидается что в процессоре Р7 будет реализована существенно

отличная от Р6 технология, обеспечивающая прорыв в производитель-

ности при сохранении совместимости с семейством x86.

В прошлом году "Intel" и "Hewlett-Packard" договорились о



- 15 -


совместной разработке нового микропроцессора, появление которого

планируется на 1997 или 1998 год. О внутреннем устройстве нового

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

RISC-технологию и обеспечивать выполнение всего существующего для

процессоров Intel х86 и Hewlett-Packard PA-RISC программного

обеспечения. Кроме поддержки существующих наборов команд этих се-

мейств, по всей видимости, в Р7 будет введена собственная система

команд.

Согласно преобладающей точке зрения, "Intel" и "Hewlett-Pac-

kard" ведут эксперименты с технологией VLIW ("very long instruc-

tion word" - очень длинное командное слово). Можно сказать, что

VLIW в определенном смысле прямо противоположна технологии, ис-

пользуемой в Р6. В Р6 изощренно построенный декодер транслирует

сложные команды х86 в более короткие и простые RISC-микрокоманды.

VLIW-процессор основывается на компиляторе нового типа, который,

наоборот, упаковывает несколько простых операций в одну "очень

длинную" команду. Каждая "очень длинная" команда содержит незави-

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

Иными словами, во VLIW-процессоре ответственность за плани-

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

обеспечение. Планирование осуществляет компилятор, и получающийся

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

формацию о порядке выполнения команд.

Однако пока VLIW-технология весьма несовершенна. Во-первых,

не разработаны эффективные методы проектирования VLIW-компилято-

ров. Во-вторых, вполне вероятно, что программное обеспечение,

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

появлении процессора нового поколения.

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

многие обозреватели сомневаются в том, что Intel и Hewlett-Pac-

kard смогут выпустить жизнеспособный с точки зрения конкуренции

на рынке VLIW-процессор. Рынок процессоров х86 слишком важен для

Intel, и вряд ли Intel может полностью положиться на неопробован-

ную технологию. Поэтому вполне вероятно, что Intel работает над

параллельным проектом Р7, основанным на более традиционной техно-

логии, чтобы застраховаться на случай неудачи VLIW-проекта.

Дело в том что возможности усовершенствования архитектуры

х86 не исчерпаны. Естественное направление ее развития включает

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

манд, увеличение размера первичных кэшей, размещение вторичного

кэша на кристалле процессора, большее число исполнительных уст-

ройств, увеличение размера буферов и поддержка более длинных це-

почек выполняемых с опережением команд.

Конкуренты "Intel" также не собираются сидеть сложа руки.

"NexGen" планирует выпуск процессора Nx686 в конце 1995 года и

утверждает, что его производительность будет в 2-4 раза превосхо-

дить производительность Nx586. "Cyrix" также работает над процес-

сором-преемником М1, но подробностей пока не сообщает.

Наиболее подробно сообщает о своих планах AMD. Следующий за

К5 процессор К6 появится в 1996 году, а его массовое производство

начнется в 1997 году. К6 будет изготавливаться по технологии 0,35

мкм и будет содержать около 6,5 миллионов транзисторов. Предпола-



- 16 -


гаемая производитель К6 - 300 SPECint92. В 1997 году AMD планиру-

ет выпуск процессора К7, с началом его массового производства в

1998 году. К7 будет изготавливаться по технологии 0,18 мкм; число

транзисторов - 10-15 миллионов. Предполагается, что при тактовой

частоте 400 МГц он достигнет производительности 700 SPECint92.

Наконец, в 2001 году AMD планирует выпуск процессора K8, содержа-

щего 20 миллионов транзисторов и обеспечивающего производитель-

ность 1000 SPECint92 на тактовой частоте 600 МГц.

Возможно и появление новых конкурентов. Процессоры 386 и 486

производят IBM Microelectronics, "Texas Instruments", SGS-Thomp-

son и ряд азиатских фирм. Однако до сих пор никто из них не пы-

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

менного процессора семейства х86, который мог бы конкурировать с

новейшими процессорами "Intel", AMD, "Cyrix" и NexGen.

.


- 17 -


 2Заключение


Процессоры Р6 фирмы Intel выбраны в качестве элементной базы

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

операций в секунду. Уникальная машина предназначена главным обра-

зом для расчетов по ядерной тематике Министерства энергетики США.

Министерство остановило свой выбор на Intel Corporation, по-

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

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

рых современных суперкомпьютеров. Новая вычислительная система

будет установлена в Sandia National Laboratories - многоцелевой

лаборатории Министерства энергетики США в городе Альбукерк (штат

Нью-Мексико). В составе машины Intel/Sandia будет работать свыше

9000 микропроцессоров компании Intel следующего поколения, полу-

чивших кодовое название Р6.

Замечательно, что машина Intel/Sandia строится из тех же

компьютерных "строительных кирпичиков", которые Intel представля-

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

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

рах, рабочих станциях и настольных компьютерах.

Новая система будет иметь пиковую производительность 1.8

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

твие при работе с важными прикладными программами Министерства

энергетики. Машина оснащается системной памятью в 262 Гбайт и бу-

дет сдана в эксплуатацию к концу 1996 года.

Недавно фирма Intel объявила новое название своего процессо-

ра P6. Теперь он будет называться Pentium Pro.

.


- 22 -


Литература


1. Монитор N 3 1995г.

Д.Бройтман "Микроархитектура процессора P6" с.6-11.

2. Монитор N 5 1995г.

Д.Бройтман "Процессор P6: общий обзор" с.8-12.

  1. Hard 'n' Soft N 10 1995г.


- 18 -


Приложения


г==================T===============T===============T===============T===============T===============¬

¦ ¦ Intel P6 ¦ Intel Pentium ¦ AMD K5 ¦ Cyrix M1 ¦ NexGen Nx 586 ¦

¦==================+===============+===============+===============+===============+===============¦

¦Тактовая частота ¦ ¦ ¦ ¦ ¦ ¦

¦(МГц) ¦ 133 ¦ 100 ¦ 100 ¦ 100 ¦ 93 ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Производительность¦ ¦ ¦ ¦ ¦ ¦

¦(SPECint92) ¦ 200 ¦ 112,7 ¦ 147 ¦ 147-169 ¦ 112,7 ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Суперскалярность ¦ ¦ ¦ ¦ ¦ ¦

¦(команды) ¦ 3 ¦ 2 ¦ 4 ¦ 2 ¦ 3 ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Исполнительные ¦ ¦ ¦ ¦ ¦ ¦

¦устройства ¦ 5 ¦ 3 ¦ 5 ¦ 4 ¦ 3 ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Предсказание ¦ ¦ ¦ ¦ ¦ ¦

¦переходов ¦ динамическое ¦ динамическое ¦ динамическое ¦ динамическое ¦динамическое ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Опережающее ¦ ¦ ¦ ¦ ¦ ¦

¦выполнение ¦ есть ¦ нет ¦ есть ¦ есть ¦ есть ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦"Беспорядочное" ¦ ¦ ¦ ¦ ¦ ¦

¦выполнение ¦ есть ¦ нет ¦ есть ¦ есть ¦ есть ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Число ¦ ¦ ¦ ¦ ¦ ¦

¦транзисторов ¦ 5,5 млн. ¦ 3,3 млн. ¦ 4,3 млн. ¦ 3,3 млн. ¦ 3,5 млн. ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Кэш первого ¦ ¦ ¦ ¦ ¦ ¦

¦уровня (кб) ¦16 - раздельный¦16 - раздельный¦24 - раздельный¦ 16 - единый ¦32 - раздельный¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Кэш второго ¦ ¦ ¦ ¦ ¦ ¦

¦уровня ¦ 256 кб ¦ внешний ¦ внешний ¦ внешний ¦ внешний ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Технология ¦0,6 мкм БиКМОП ¦0,6 мкм БиКМОП ¦ 0,5 мкм КМОП ¦ 0,65 мкм КМОП ¦ 0,5 мкм КМОП ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Размер кристалла ¦ ¦ ¦ ¦ ¦ ¦

¦(кв. мм) ¦ 306 ¦ 163 ¦ неизвестно ¦ 394 ¦ 196 ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Начало выпуска ¦ 2-я пол. 1995 ¦ середина 1994 ¦ 2-я пол. 1995 ¦ 2-я пол. 1995 ¦ Конец 1994 ¦

¦------------------+---------------+---------------+---------------+---------------+---------------¦

¦Цена (в партиях ¦ ¦ ¦ ¦ ¦ ¦

¦по 1000) ¦ неизвестна ¦ $673 51 0 ¦ неизвестна ¦ неизвестна ¦ $569 ¦

L==================¦===============¦===============¦===============¦===============¦===============-

1. Сейчас эта цена уже реально меньше ($200-300)



© Рефератбанк, 2002 - 2024