на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


Реферат: Процессор пентиум


Реферат: Процессор пентиум

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 -

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

Страницы: 1, 2


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.