64
Организация ЭВМ и систем Тема: Анализ развития процессоров фирмы Intel семейства IA-32 Конвейерная обработка данных в процессорах IA-32 Организация и режимы работы процессоров семейства P6 и Pentium 4 IA-32

Лекция № 3 Организация ЭВМ и систем

  • Upload
    -

  • View
    97

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Лекция № 3 Организация ЭВМ и систем

Организация ЭВМ и систем

Тема: Анализ развития процессоров фирмы Intel семейства IA-32

• Конвейерная обработка данных в процессорах IA-32 • Организация и режимы работы процессоров семейства P6 и Pentium 4 IA-32

Page 2: Лекция № 3 Организация ЭВМ и систем

Конвейерная обработка данныхКонвейерная обработка данных

Конвейерная организация процессора Конвейерная организация процессора означает, что означает, что многие сложные действия многие сложные действия разбиваются на этапы с небольшим разбиваются на этапы с небольшим временем выполнениявременем выполнения. Каждый этап . Каждый этап выполняется в отдельном устройстве (блоке).выполняется в отдельном устройстве (блоке).

Конвейеризация позволяет нескольким Конвейеризация позволяет нескольким внутренним блокам МП работать внутренним блокам МП работать одновременноодновременно, совмещая дешифрование , совмещая дешифрование команды, операции АЛУ, вычисление команды, операции АЛУ, вычисление эффективного адреса и циклы шины эффективного адреса и циклы шины нескольких команднескольких команд..

Page 3: Лекция № 3 Организация ЭВМ и систем

Конвейерная обработка данныхКонвейерная обработка данных

В составе МП 80286 есть 4 конвейерных В составе МП 80286 есть 4 конвейерных устройства:устройства:

BU (BU (Bus UnitBus Unit) – ) – шинный блокшинный блок (считывание (считывание из памяти и портов ввода/вывода);из памяти и портов ввода/вывода);

IU (IU (Instruction UnitInstruction Unit) – ) – командный блок командный блок (дешифрация команд);(дешифрация команд);

EU (EU (Executive UnitExecutive Unit) – ) – исполнительный блокисполнительный блок (выполнение команд);(выполнение команд);

AU (AU (Address UnitAddress Unit) – ) – адресный блокадресный блок (вычисляет все адреса, формирует физический (вычисляет все адреса, формирует физический адрес).адрес).

Page 4: Лекция № 3 Организация ЭВМ и систем

Конвейерная обработка данныхКонвейерная обработка данных в ЦП 80286 в ЦП 80286

BUBU Считывание Считывание 0 команды0 команды

Считывание Считывание 1 команды1 команды

Считывание 2 Считывание 2 командыкоманды

Считыва-Считыва-ние 3 ние 3

командыкоманды

IUIU Дешифрация Дешифрация -1 команды-1 команды

Дешифрация Дешифрация 0 команды0 команды

Дешифрация Дешифрация 1 команды1 команды

Дешиф-Дешиф-рация 2 рация 2

командыкоманды

EUEU Исполнение Исполнение

-2 команды-2 команды

Исполнение -Исполнение -1 команды1 команды

Исполнение 0 Исполнение 0 командыкоманды

Исполне-Исполне-ние 1 ние 1

командыкоманды

AUAU Адрес 1 Адрес 1 командыкоманды

Адрес 2 Адрес 2 командыкоманды

Адрес 3 Адрес 3 командыкоманды

Адрес 4 Адрес 4 командыкоманды

Page 5: Лекция № 3 Организация ЭВМ и систем

Конвейерная обработка данныхКонвейерная обработка данных в ЦП 80486 в ЦП 80486

В В ЦП 80486ЦП 80486 – – пятиступенчатый конвейерпятиступенчатый конвейер для обработки данных:для обработки данных:

предвыборка команд (предвыборка команд (PF –Perfect)PF –Perfect);;декодирование командыдекодирование команды (D1 – Instruction (D1 – Instruction

Decode)Decode);;формирование адресаформирование адреса (D2 – Address (D2 – Address

Generate)Generate);;выполнение команды в АЛУ и доступ к кэш-выполнение команды в АЛУ и доступ к кэш-

памятипамяти (EX – Execute) (EX – Execute);;обратная записьобратная запись (WB – Write Back) (WB – Write Back)..

Àíèìàöèÿ.swf

Page 6: Лекция № 3 Организация ЭВМ и систем

Конвейерная обработка данныхКонвейерная обработка данных

Можно выделить Можно выделить два наиболее важных два наиболее важных проявления конвейерной организации проявления конвейерной организации процессорапроцессора — — прохождение инструкции прохождение инструкции (операции)(операции) от момента считывания из кэша от момента считывания из кэша инструкций до полного завершенияинструкций до полного завершения (отставки), (отставки), и и прохождение операции через прохождение операции через функциональное устройствофункциональное устройство. .

Первое проявление обычно называют «конвейером Первое проявление обычно называют «конвейером процессора» либо «конвейером непредсказанного процессора» либо «конвейером непредсказанного перехода» (что более правильно). Длина этого конвейера перехода» (что более правильно). Длина этого конвейера влияет на производительность только в случае влияет на производительность только в случае неправильного предсказания перехода в программе, когда неправильного предсказания перехода в программе, когда происходит отмена работы, выполненной во всех этапах, происходит отмена работы, выполненной во всех этапах, начиная с этого перехода (сброс конвейера). начиная с этого перехода (сброс конвейера).

Page 7: Лекция № 3 Организация ЭВМ и систем

Конвейерная обработка данныхКонвейерная обработка данных

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

Такое старт-стопное Такое старт-стопное время выполнения операции в время выполнения операции в функциональном устройстве называют латентностьюфункциональном устройстве называют латентностью..

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

Page 8: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП PentiumPentium

КЭШ команд, 8К

Буфер предвыборки, 32 бита

АЛУ(целочисл.)

АЛУ(целочисл.)

Блок регистров

КЭШ данных, 8К

64 –

раз

ряд

ная

ши

на

Схема предсказания

перехода

Конвейерныйблок FPU

ДелительСложитель

Умножитель

U (5+3ступ.) V (5 ступ.)

Page 9: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП PentiumPentium

Суперскалярная архитектураСуперскалярная архитектура – – это способ это способ построения процессора с двумя или более построения процессора с двумя или более конвейерами, позволяющий выполнять конвейерами, позволяющий выполнять параллельно 2 или более выбранные команды.параллельно 2 или более выбранные команды.

UU – конвейер основной – конвейер основной (команды целочисленные и с (команды целочисленные и с плавающей точкой).плавающей точкой).

V – V – конвейерконвейер (команды, которые выполняются за один (команды, которые выполняются за один такт).такт).

СпариваниеСпаривание – – это процесс параллельного это процесс параллельного выполнения 2-х команд, независящих по данным или выполнения 2-х команд, независящих по данным или ресурсам.ресурсам.

Page 10: Лекция № 3 Организация ЭВМ и систем

Конвейеры ЦП Конвейеры ЦП PentiumPentium

Page 11: Лекция № 3 Организация ЭВМ и систем

Конвейерная обработка данныхКонвейерная обработка данных в ЦП в ЦП PentiumPentium

PFPF

D1D1

D2D2

EXEX

WBWB

К1 К1

К2К2К3К3

К4К4К5К5

К6К6К7К7

К8К8

К1 К1

К2К2К3К3

К4К4К5К5

К6К6К7К7

К8К8

К1 К1

К2К2К3К3

К4К4К5К5

К6К6К7К7

К8К8

К1 К1

К2К2К3К3

К4К4К5К5

К6К6К7К7

К8К8

К1 К1

К2К2К3К3

К4К4К5К5

К6К6К7К7

К8К8

Page 12: Лекция № 3 Организация ЭВМ и систем

Основные отличия ЦП Основные отличия ЦП PentiumPentium

Увеличен размер страничной памяти. Увеличен размер страничной памяти. Механизм страничной организации памяти Механизм страничной организации памяти позволяет работать одновременно со страницей 4 позволяет работать одновременно со страницей 4 Мбайт.Мбайт.

64-разрядная ШД64-разрядная ШД..Конвейеризация машинного цикла.Конвейеризация машинного цикла.Суперскалярная архитектураСуперскалярная архитектура..Контроль четности адреса и данных.Контроль четности адреса и данных.Раздельные блоки кэш-памяти для данных Раздельные блоки кэш-памяти для данных

и кодаи кода..Блок прогнозирования ветвлений.Блок прогнозирования ветвлений.Средства управления питанием (снижение Средства управления питанием (снижение

мощности потребления).мощности потребления).

Page 13: Лекция № 3 Организация ЭВМ и систем

Структура микропроцессора Структура микропроцессора Pentium ProPentium Pro

Кэш 2-го уровня, 256 Кбайт(монтируется в один корпус с ЦП)

Интерфейс памяти

Внешняя 64-разрядная синхронная шина

Синхронная64-разряднаяшина

Блок выборкиинструкций

Буфер команд,8 Кбайт

За 1 такт выбираются 2 строки кэша(строка – 32 байта)

Дешифратор команд

Дешифратор,1 микро-операция

за такт

Дешифратор,1 микро-операция

за такт

Дешифратор, 4 микро-операции

Таблица переименования регистров

Блок интерфейса с памятью

Блок формирования адреса

Арифметическое устройствос фиксированной точкой

Арифметическое устройствос фиксированной точкой

Арифметическое устройствос плавающей точкой

Блок формирования адреса

Пул инструкций

Блок удаления

Бл

ок р

езер

виро

вани

я

Буферзапросов

Буферданных

Блокпредсказания

переходов(512 входов)

Блокмикропрог-раммного

управления

Page 14: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП Pentium ProPentium Pro (P6)(P6)

ТерминТермин динамическое исполнение динамическое исполнение программыпрограммы определил определил 3 способа обработки 3 способа обработки данныхданных::

Глубокое предсказание ветвленийГлубокое предсказание ветвлений (с (с вероятностью вероятностью >> 90% можно предсказать 10 - 15 90% можно предсказать 10 - 15 ближайших переходов).ближайших переходов).

Анализ потока данныхАнализ потока данных (на 20-30 шагов (на 20-30 шагов вперед посмотреть программу и определить вперед посмотреть программу и определить зависимость команд по данным или ресурсам).зависимость команд по данным или ресурсам).

Опережающее (внеочередное) исполнение Опережающее (внеочередное) исполнение команд.команд.

Page 15: Лекция № 3 Организация ЭВМ и систем

Структурная организация Структурная организация Pentium ProPentium Pro (P6)(P6)

Page 16: Лекция № 3 Организация ЭВМ и систем

Внеочередное исполнение операций Внеочередное исполнение операций означаетозначает, что операции не обязаны выполняться , что операции не обязаны выполняться в функциональных устройствах строго в том в функциональных устройствах строго в том порядке, который определён в программном коде. порядке, который определён в программном коде. Более поздниеБолее поздние (по коду) (по коду) операции могут операции могут исполняться перед более ранними, если не исполняться перед более ранними, если не зависят от порождаемых ими результатов.зависят от порождаемых ими результатов.

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

ЦП ЦП Pentium ProPentium Pro (P6)(P6)

Page 17: Лекция № 3 Организация ЭВМ и систем

Внутренняя организацияВнутренняя организация МП МП Pentium ProPentium Pro соответствуетсоответствует архитектуре архитектуре RISCRISC, поэтому блок , поэтому блок выборки команд, считав поток инструкций выборки команд, считав поток инструкций IAIA-32 из -32 из LL1 кэша инструкций, 1 кэша инструкций, декодирует их в серию декодирует их в серию микрооперациймикроопераций. .

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

Блок удаления подтверждает выполнение Блок удаления подтверждает выполнение инструкцийинструкций (до трех микроопераций за такт) (до трех микроопераций за такт) в порядке их в порядке их следования в программеследования в программе, принимая во внимание , принимая во внимание прерывания, исключения, точки останова и промахи прерывания, исключения, точки останова и промахи предсказания переходов.предсказания переходов.

Page 18: Лекция № 3 Организация ЭВМ и систем

Новое в процессоре Новое в процессоре Pentium ProPentium Pro

Кэш-память 2-го уровняКэш-память 2-го уровня размером в 256 размером в 256 Кбайт сопряжена с ЦП в виде второго кристалла.Кбайт сопряжена с ЦП в виде второго кристалла.

Динамическое исполнениеДинамическое исполнение..Суперскалярная архитектураСуперскалярная архитектура (метод (метод

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

Внутренняя Внутренняя RISC RISC архитектураархитектура..

Page 19: Лекция № 3 Организация ЭВМ и систем

Как работает обычный Как работает обычный PentiumPentium??

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20№ команды

1 2 3 4 5 6

424344454647

7 8 9 10 11 12 13

За 1-ый такт выполняются 2 За 1-ый такт выполняются 2 команды. Во 2-ом такте команды. Во 2-ом такте начинается выполнение еще 2-х начинается выполнение еще 2-х команд, но команда 3 не может команд, но команда 3 не может выполниться сразу, т.к. для ее выполниться сразу, т.к. для ее выполнения необходимы выполнения необходимы данные, которых не оказалось в данные, которых не оказалось в кэш-памяти. Получение данных кэш-памяти. Получение данных из основной памяти занимает из основной памяти занимает несколько тактов, в это время несколько тактов, в это время оба конвейера простаивают. оба конвейера простаивают. Аналогично выполняются Аналогично выполняются команды 5, 6 и в подпрограмме команды 5, 6 и в подпрограмме команды 42, 43, затем 44 и 45, где команды 42, 43, затем 44 и 45, где вновь идет обращение к памяти, вновь идет обращение к памяти, и затем команды 46 и 47. и затем команды 46 и 47. Команда 8 не может Команда 8 не может выполняться одновременно с 7-выполняться одновременно с 7-ой, т.к. в ней используется ой, т.к. в ней используется результат действия последней – результат действия последней – пока неизвестный. Далее пока неизвестный. Далее выполняются команды 8 и 9, а выполняются команды 8 и 9, а затем 11 и 12.затем 11 и 12.

- Выполнение команды; -Обращение к памяти

PentiumPentium выполнил 17 команд за 19 тактов выполнил 17 команд за 19 тактов

Page 20: Лекция № 3 Организация ЭВМ и систем

Как работает Как работает Pentium ProPentium Pro?? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20№ команды

1 2 3 4 5 424344454647

7 8 9 10 11 12 13 14 15 16 17 18 19

- Выполнение командыВыполнение команды

- Обращение к памятиОбращение к памяти - Команды, прошедшиеКоманды, прошедшие

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

Pentium ProPentium Pro проверяет проверяет зависимость команды от зависимость команды от результата предыдущих результата предыдущих команд на много шагов команд на много шагов вперед. Так, для выполнения вперед. Так, для выполнения команды 3 требуется команды 3 требуется результат команды 1, результат команды 1, аналогично команда 5 аналогично команда 5 зависит от результата зависит от результата команды 4, команда 44 от команды 4, команда 44 от результата 43 и т.д. Поэтому результата 43 и т.д. Поэтому в 1-ом такте выполняются в 1-ом такте выполняются команды 1, 2 и 4 – команды 1, 2 и 4 – опережающее выполнение опережающее выполнение команд.команд.

Page 21: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП PentiumPentium MMXMMXОсновные черты Основные черты MMX (MultiMediaeXtention) MMX (MultiMediaeXtention)

технологии:технологии:SIMDSIMD архитектура архитектура (одна команда над (одна команда над

многими данными);многими данными);57 новых инструкций57 новых инструкций;;8 64-разрядных регистра 8 64-разрядных регистра MMXMMX (ММ0-ММ7 – (ММ0-ММ7 –

это мантиссы 8 регистров блока арифметики с это мантиссы 8 регистров блока арифметики с плавающей точкой);плавающей точкой);

4 новых типа данных4 новых типа данных::упакованный байт 64=8х8упакованный байт 64=8х8упакованное слово 64=4х16упакованное слово 64=4х16упакованное двойное слово 64=2х32упакованное двойное слово 64=2х32учетверенное слово 64=1х64учетверенное слово 64=1х64

Page 22: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП Pentium IIPentium II

2 2 кэша кэша I I уровня (16 Кб).уровня (16 Кб).Кэш Кэш IIII уровня (512 Кб). уровня (512 Кб).

Двойная независимая шинаДвойная независимая шина (300-разрядная) (300-разрядная) --

2 независимых канала передачи данных:2 независимых канала передачи данных: для связи ЦП с кэш для связи ЦП с кэш II II уровня;уровня; для связи ЦП с оперативной памятью.для связи ЦП с оперативной памятью.

Page 23: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП Pentium IIIPentium IIIИспользуется Используется расширение расширение SSESSE ( (Streaming SIMD Streaming SIMD

Extensions) Extensions) – потоковые – потоковые SIMD SIMD расширения для расширения для вещественных чисел. вещественных чисел.

70 новых инструкций.70 новых инструкций.

8 новых 128-разрядных регистров8 новых 128-разрядных регистров данных:данных: XMM0XMM0, XMM1,…, XMM7, XMM1,…, XMM7. 32-битный регистр . 32-битный регистр управления/состояния управления/состояния MXCSRMXCSR используется для используется для маскирования исключений, выбора режимов и маскирования исключений, выбора режимов и определения состояния флагов.определения состояния флагов.

Новый тип данных - упакованные числа с Новый тип данных - упакованные числа с плавающей запятой одинарной точностиплавающей запятой одинарной точности. В одном . В одном 128-разрядном регистре 4 новых типа данных.128-разрядном регистре 4 новых типа данных.

Все команды Все команды SSESSE доступны из любых режимов доступны из любых режимов работы ЦП: реального, защищенного и виртуальногоработы ЦП: реального, защищенного и виртуального..

Page 24: Лекция № 3 Организация ЭВМ и систем

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

Рис. Схема работы инструкции Рис. Схема работы инструкции ADDPSADDPS (сложение «пакетов»)(сложение «пакетов»)

Page 25: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП Pentium IVPentium IV

В МП В МП Pentium Pentium 4 была представлена 4 была представлена технология технология SSESSE22, дополняющая , дополняющая SSE SSE новыми типами данных и новыми типами данных и новыми инструкциями. Инструкции новыми инструкциями. Инструкции SSESSE2 также 2 также оперируют 128-битными регистрами оперируют 128-битными регистрами XMMXMM0-0-XMMXMM7, но при 7, но при этом добавлены пять новых типов данных:этом добавлены пять новых типов данных:

упакованные двойной точности (2 х 64 бит упакованные двойной точности (2 х 64 бит IEEEIEEE-754 -754 double precisiondouble precision),),

упакованные байты (упакованные байты (16 x 8 16 x 8 бит),бит),упакованные слова (8 х 16 бит),упакованные слова (8 х 16 бит),упакованные двойные слова (4 х 32 бит),упакованные двойные слова (4 х 32 бит),упакованные четверные слова (2 х 64 бит).упакованные четверные слова (2 х 64 бит).

Все команды Все команды MMXMMX, , SSE SSE и и SSESSE2 доступны в любом 2 доступны в любом режиме работы процессора: реальном, защищенном, режиме работы процессора: реальном, защищенном, виртуальном.виртуальном.

Page 26: Лекция № 3 Организация ЭВМ и систем

Net-Burst – Net-Burst – архитектураархитектура::1.1.Изменение последовательности выполнения командИзменение последовательности выполнения команд..2.2.Буфер предсказания переходов – 4Кб (вероятность удачного Буфер предсказания переходов – 4Кб (вероятность удачного

предсказания 93-94%).предсказания 93-94%).3.3.Окно команд (можно выбирать 126 команд для внеочередного Окно команд (можно выбирать 126 команд для внеочередного

выполнения).выполнения).4.4.Трассирующий КЭШ – команд Трассирующий КЭШ – команд I I уровня находится после уровня находится после

дешифраторадешифратора и содержит микрокоманды готовые к исполнению и содержит микрокоманды готовые к исполнению (объем кэша - 12000 микрокоманд).(объем кэша - 12000 микрокоманд).

5.5.Используются Используются SIMD SIMD расширения, включая 144 новых инструкции, расширения, включая 144 новых инструкции, использующие 128-разрядные использующие 128-разрядные XMM - XMM - регистры.регистры.

6.6.АЛУ работает на удвоенной частоте ЦПАЛУ работает на удвоенной частоте ЦП..7.7.Применена Применена Quad-pumped Quad-pumped 400 МГц системная шина, 400 МГц системная шина,

обеспечивающая пропускную способность 3,2 Гбайта/с.обеспечивающая пропускную способность 3,2 Гбайта/с.8.8.Кэш Кэш L2L2 – 256 Кбайт работает на частоте процессора. – 256 Кбайт работает на частоте процессора.9.9.КэшКэш L1 L1 – 8Кбайт. – 8Кбайт.

Page 27: Лекция № 3 Организация ЭВМ и систем

АрхитектураАрхитектура Net-Burst Net-Burst

Page 28: Лекция № 3 Организация ЭВМ и систем

Архитектурные особенности Архитектурные особенности процессоров семейства Pentium:процессоров семейства Pentium: гарвардская архитектура с разделением потоков гарвардская архитектура с разделением потоков

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

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

динамическое исполнение команддинамическое исполнение команд, реализующее , реализующее изменение последовательности команд, использование изменение последовательности команд, использование расширенного регистрового файла (переименование расширенного регистрового файла (переименование регистров) и эффективное предсказание ветвлений;регистров) и эффективное предсказание ветвлений;

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

Page 29: Лекция № 3 Организация ЭВМ и систем

Гиперпотоковая технологияГиперпотоковая технология

Page 30: Лекция № 3 Организация ЭВМ и систем

Мультиядерные процессорыМультиядерные процессоры

Page 31: Лекция № 3 Организация ЭВМ и систем
Page 32: Лекция № 3 Организация ЭВМ и систем

Для самостоятельного изученияДля самостоятельного изучения

Page 33: Лекция № 3 Организация ЭВМ и систем

Конвейеры ЦП Конвейеры ЦП PentiumPentium

Page 34: Лекция № 3 Организация ЭВМ и систем
Page 35: Лекция № 3 Организация ЭВМ и систем

Для предсказания направления условного перехода Для предсказания направления условного перехода используется механизм, основанный на изучении используется механизм, основанный на изучении поведения переходов в программе в процессе её поведения переходов в программе в процессе её выполнения (своего рода «сбор статистики»). Этот выполнения (своего рода «сбор статистики»). Этот механизм учитывает как локальное поведение конкретной механизм учитывает как локальное поведение конкретной инструкции перехода (например, «как правило, инструкции перехода (например, «как правило, переходит», «как правило, не переходит»), так и переходит», «как правило, не переходит»), так и глобальные закономерности («чередуется по глобальные закономерности («чередуется по определённому закону» и т.п.). определённому закону» и т.п.). История поведения История поведения инструкций условного перехода записывается в инструкций условного перехода записывается в специальных структурахспециальных структурах, обычно называемых , обычно называемых «таблицами истории переходов» (Branch History Table, «таблицами истории переходов» (Branch History Table, BHT). BHT). Современные механизмы предсказания Современные механизмы предсказания переходов обеспечивают правильное предсказание переходов обеспечивают правильное предсказание более чем в 90 процентах случаевболее чем в 90 процентах случаев..

Page 36: Лекция № 3 Организация ЭВМ и систем

Механизм предсказания переходов работает Механизм предсказания переходов работает одновременно с декодером инструкций и независимо от одновременно с декодером инструкций и независимо от него. него.

Page 37: Лекция № 3 Организация ЭВМ и систем

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

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

Page 38: Лекция № 3 Организация ЭВМ и систем

Внеочередное исполнение операций означаетВнеочередное исполнение операций означает, что , что операции не обязаны выполняться в функциональных операции не обязаны выполняться в функциональных устройствах строго в том порядке, который определён в устройствах строго в том порядке, который определён в программном коде. программном коде. Более поздниеБолее поздние (по коду) (по коду) операции операции могут исполняться перед более ранними, если не могут исполняться перед более ранними, если не зависят от порождаемых ими результатов.зависят от порождаемых ими результатов. Процессор Процессор должен лишь гарантировать, чтобы результаты «внеочередного» должен лишь гарантировать, чтобы результаты «внеочередного» выполнения программы совпадали с результатами «правильного» выполнения программы совпадали с результатами «правильного» последовательного выполнения. последовательного выполнения.

Механизм внеочередного исполнения позволяет в Механизм внеочередного исполнения позволяет в значительной степени сгладить эффект от ожидания значительной степени сгладить эффект от ожидания считывания данных из кэшей верхних уровней и из считывания данных из кэшей верхних уровней и из оперативной памяти, что может занимать десятки и сотни оперативной памяти, что может занимать десятки и сотни тактов. тактов. Также он позволяет оптимизировать выполнение смежных Также он позволяет оптимизировать выполнение смежных операций, особенно при наличии сложных зависимостей между ними в операций, особенно при наличии сложных зависимостей между ними в условиях высокой латентности исполнения в устройствах и условиях высокой латентности исполнения в устройствах и недостаточного количества регистров.недостаточного количества регистров.

ЦП ЦП Pentium ProPentium Pro (P6)(P6)

Page 39: Лекция № 3 Организация ЭВМ и систем

Внутри подсистемы внеочередного исполнения Внутри подсистемы внеочередного исполнения операций обработка операций ведётся асинхронно, с операций обработка операций ведётся асинхронно, с учётом зависимостей между ними, готовности учётом зависимостей между ними, готовности операндов и наличия требуемых ресурсовоперандов и наличия требуемых ресурсов (устройств и (устройств и очередей). При внеочередной обработке операций в этой очередей). При внеочередной обработке операций в этой подсистеме гарантируется, что результаты такого подсистеме гарантируется, что результаты такого выполнения программы совпадут с результатами выполнения программы совпадут с результатами «правильного» последовательно выполнения.«правильного» последовательно выполнения.

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

Page 40: Лекция № 3 Организация ЭВМ и систем

Внутренняя организацияВнутренняя организация МП МП Pentium ProPentium Pro соответствуетсоответствует архитектуре архитектуре RISCRISC, поэтому блок выборки команд, считав поток , поэтому блок выборки команд, считав поток инструкций инструкций IAIA-32 из -32 из LL1 кэша инструкций, 1 кэша инструкций, декодирует их в декодирует их в серию микрооперацийсерию микроопераций. Поток микроопераций попадает в . Поток микроопераций попадает в буфер переупорядочивания (пул инструкций). В нем содержатся буфер переупорядочивания (пул инструкций). В нем содержатся как еще не выполненные микрооперации, так и уже как еще не выполненные микрооперации, так и уже выполненные, но еще не повлиявшие на состояние процессора. выполненные, но еще не повлиявшие на состояние процессора.

Для декодирования инструкций предназначены три Для декодирования инструкций предназначены три параллельных дешифратора: два для простых и один для параллельных дешифратора: два для простых и один для сложных инструкций. Каждая инструкция сложных инструкций. Каждая инструкция IAIA-32 декодируется в 1--32 декодируется в 1-4 микрооперации. 4 микрооперации.

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

Page 41: Лекция № 3 Организация ЭВМ и систем

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

Взаимная зависимость команд от значения регистров Взаимная зависимость команд от значения регистров архитектуры архитектуры IAIA-32 может требовать ожидания освобождения -32 может требовать ожидания освобождения регистров. Для решения этой проблемы предназначены 40 регистров. Для решения этой проблемы предназначены 40 внутренних регистров общего назначения, используемых в внутренних регистров общего назначения, используемых в реальных вычислениях.реальных вычислениях.

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

Page 42: Лекция № 3 Организация ЭВМ и систем

ЦП ЦП Pentium IVPentium IV

Page 43: Лекция № 3 Организация ЭВМ и систем

P-4 представляет собой P-4 представляет собой высокопроизводительный высокопроизводительный процессор с глубоким внеочередным исполнением процессор с глубоким внеочередным исполнением операций.операций. Он работает на повышенной тактовой частоте Он работает на повышенной тактовой частоте (примерно в 1.4 раза выше, чем у других процессоров, (примерно в 1.4 раза выше, чем у других процессоров, исполненных по той же технологии) и исполненных по той же технологии) и имеет множество имеет множество оригинальных микроархитектурных особенностейоригинальных микроархитектурных особенностей: : удвоенную частоту работы целочисленных устройств, удвоенную частоту работы целочисленных устройств, быстрый доступ к L1-кэшу, избыточность быстрый доступ к L1-кэшу, избыточность функциональных устройств, Т-кэшфункциональных устройств, Т-кэш. .

Однако имеется ряд особенностей, которые Однако имеется ряд особенностей, которые снижают снижают потенциал производительности процессорапотенциал производительности процессора: : выполнение скалярных операций арифметики с выполнение скалярных операций арифметики с плавающей точкой (SSE и x87-FMUL) на половинной плавающей точкой (SSE и x87-FMUL) на половинной частоте, наличие аномалий при доступе к L1-кэшу частоте, наличие аномалий при доступе к L1-кэшу (алиасинг), большие затраты на отработку подобных (алиасинг), большие затраты на отработку подобных аномалий в системе реплея, длинный конвейер, большая аномалий в системе реплея, длинный конвейер, большая схемная сложность и высокое энергопотребление, схемная сложность и высокое энергопотребление, ограничивающее тактовую частоту.ограничивающее тактовую частоту. В результате В результате процессор P-4 демонстрирует довольно высокую процессор P-4 демонстрирует довольно высокую производительность на хорошо организованных кодах с производительность на хорошо организованных кодах с регулярной структурой, но может уступать конкурентам регулярной структурой, но может уступать конкурентам (AMD K8) в менее оптимизированных приложениях.(AMD K8) в менее оптимизированных приложениях.

Page 44: Лекция № 3 Организация ЭВМ и систем

Базовая архитектураБазовая архитектура

Page 45: Лекция № 3 Организация ЭВМ и систем

Процессоры компании IntelПроцессоры компании Intel Развитие современных процессорных микроархитектур Развитие современных процессорных микроархитектур

у компании Intel шло по извилистому пути. у компании Intel шло по извилистому пути. ПослеПосле появления в 1995 г. появления в 1995 г. процессора Pentium Proпроцессора Pentium Pro, первого , первого представителя архитектуры P6, происходило представителя архитектуры P6, происходило плавное плавное усовершенствование, завершившееся выходом усовершенствование, завершившееся выходом процессора Pentium IIIпроцессора Pentium III (1999 г.). Одновременно с этим (1999 г.). Одновременно с этим разрабатывалась разрабатывалась новая, революционная новая, революционная микроархитектура NetBurst (P7),микроархитектура NetBurst (P7), первый представитель первый представитель которой (Pentium 4) появился в 2000 г. Дальнейшим которой (Pentium 4) появился в 2000 г. Дальнейшим развитием этого семейства явился процессор Prescott (P-развитием этого семейства явился процессор Prescott (P-4E, 2004 г.), имеющий определённые микроархитектурные 4E, 2004 г.), имеющий определённые микроархитектурные отличия от первоначального процессора P-4 и отличия от первоначального процессора P-4 и поддерживающий 64-битный режим целочисленной и поддерживающий 64-битный режим целочисленной и адресной арифметики EM64T (x86-64).адресной арифметики EM64T (x86-64).

Page 46: Лекция № 3 Организация ЭВМ и систем

Процессор P-4 был ориентирован на достижение Процессор P-4 был ориентирован на достижение высокой производительности в первую очередь за счёт высокой производительности в первую очередь за счёт повышения тактовой частоты (в 1.4-1.5 раза по сравнению повышения тактовой частоты (в 1.4-1.5 раза по сравнению с классическими процессорами, исполненными по той же с классическими процессорами, исполненными по той же электронной технологии) в сочетании с применением ряда электронной технологии) в сочетании с применением ряда принципиальных новшеств в микроархитектуре. Всё это принципиальных новшеств в микроархитектуре. Всё это привело привело к значительному увеличению длины конвейера к значительному увеличению длины конвейера и к усложнению различных подсистем процессораи к усложнению различных подсистем процессора — и, — и, как следствие, как следствие, к возрастанию энергопотребления и к возрастанию энергопотребления и тепловыделениятепловыделения. В результате с ростом тактовой частоты . В результате с ростом тактовой частоты суммарное тепловыделение приблизилось к предельно суммарное тепловыделение приблизилось к предельно допустимым. Особо наглядно это проявилось при создании допустимым. Особо наглядно это проявилось при создании и внедрении двухъядерных процессоров. Другой причиной, и внедрении двухъядерных процессоров. Другой причиной, снижающей интерес потребителей к процессорам данного снижающей интерес потребителей к процессорам данного семейства, являлось повышенное требование семейства, являлось повышенное требование длинноконвейерной архитектуры NetBurst к оптимизации длинноконвейерной архитектуры NetBurst к оптимизации матобеспечения, что не нашло адекватного отклика у матобеспечения, что не нашло адекватного отклика у создателей программных средств.создателей программных средств.

Page 47: Лекция № 3 Организация ЭВМ и систем

В связи с возникшими проблемами компания В связи с возникшими проблемами компания Intel Intel вернулась к эволюционному развитиювернулась к эволюционному развитию старого доброго старого доброго семейства P6семейства P6. . Первоначально это развитие происходило Первоначально это развитие происходило параллельно с развитием архитектуры NetBurst и выразилось в параллельно с развитием архитектуры NetBurst и выразилось в появлении процессора Pentium M (2003 г.), ориентированного на появлении процессора Pentium M (2003 г.), ориентированного на

применение в мобильных компьютерах.применение в мобильных компьютерах. В связи с этой В связи с этой ориентацией, ориентацией, основной упор был направлен на основной упор был направлен на снижение энергопотребления подсистемами снижение энергопотребления подсистемами процессора, а также на введение различных процессора, а также на введение различных экономичных режимов работыэкономичных режимов работы. . Одновременно производилось Одновременно производилось устранение основных недостатков процессора P-III и внедрение устранение основных недостатков процессора P-III и внедрение некоторых принципиальных микроархитектурных расширений.некоторых принципиальных микроархитектурных расширений.

В новой архитектуре Intel CoreВ новой архитектуре Intel Core (P8, 2006 г.) устранено (P8, 2006 г.) устранено большинство недостатков предшественников, большинство недостатков предшественников, увеличена увеличена «ширина обработки», существенно ускорен блок «ширина обработки», существенно ускорен блок арифметики с плавающей точкой и добавлена арифметики с плавающей точкой и добавлена поддержка 64-битного режима EM64T (x86-64).поддержка 64-битного режима EM64T (x86-64). В В результате получился добротный «классический» процессор с широкой результате получился добротный «классический» процессор с широкой динамической архитектурой. динамической архитектурой.

Page 48: Лекция № 3 Организация ЭВМ и систем

Основные отличия двухъядерного процессора P8 от своего Основные отличия двухъядерного процессора P8 от своего идеологического предшественника P-III также можно разделить на две идеологического предшественника P-III также можно разделить на две группы. К первой следует отнести различные усовершенствования и группы. К первой следует отнести различные усовершенствования и исправления недостатков, проведённые поэтапно в процессорах исправления недостатков, проведённые поэтапно в процессорах семейства P6+ (P-M и P-M2):семейства P6+ (P-M и P-M2):

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

различных внутренних таблиц;различных внутренних таблиц;радикально улучшена подсистема предсказания переходов;радикально улучшена подсистема предсказания переходов;введён механизм слияния микроопераций (micro-op fusion);введён механизм слияния микроопераций (micro-op fusion);ускорена работа с аппаратным стеком;ускорена работа с аппаратным стеком;значительно усовершенствован декодер машинных значительно усовершенствован декодер машинных

инструкций;инструкций;добавлены режимы SSE2 и SSE3, проведён ряд добавлены режимы SSE2 и SSE3, проведён ряд

усовершенствований в функциональных устройствах и портах усовершенствований в функциональных устройствах и портах запуска операций;запуска операций;

заимствована внешняя шина Fзаимствована внешняя шина FSBSB у процессора P-4; у процессора P-4;внедрены усовершенствованные технологии внедрены усовершенствованные технологии

энергосбережения;энергосбережения;реализована двухъядерность с общим L2-кэшем (в реализована двухъядерность с общим L2-кэшем (в

процессоре P-M2).процессоре P-M2).

Page 49: Лекция № 3 Организация ЭВМ и систем

Во вторую группу входят нововведения, появившиеся в Во вторую группу входят нововведения, появившиеся в архитектуре P8 и отличающие её от промежуточной архитектуры P6+:архитектуре P8 и отличающие её от промежуточной архитектуры P6+:

увеличена «ширина обработки» до 4-5 инструкций за такт, увеличена «ширина обработки» до 4-5 инструкций за такт, введён механизм слияния в одну макрооперацию инструкций введён механизм слияния в одну макрооперацию инструкций сравнения и перехода;сравнения и перехода;

увеличено число кластеров арифметико-логических увеличено число кластеров арифметико-логических функциональных устройств и портов запуска;функциональных устройств и портов запуска;

увеличены размеры очередей внеочередного исполнения и увеличены размеры очередей внеочередного исполнения и различных таблиц;различных таблиц;

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

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

реализован полночастотный 128-битный режим выполнения реализован полночастотный 128-битный режим выполнения упакованных операций SSE во всех трёх каналах исполнения;упакованных операций SSE во всех трёх каналах исполнения;

увеличена ширина и пропускная способность доступа к L1-увеличена ширина и пропускная способность доступа к L1-кэшу;кэшу;

введён 64-битный режим EM64T (x86-64), а также введён 64-битный режим EM64T (x86-64), а также дополнительный режим SSE4.дополнительный режим SSE4.

Page 50: Лекция № 3 Организация ЭВМ и систем

Наряду с усовершенствованиями, в микроархитектуре Наряду с усовершенствованиями, в микроархитектуре нового процессора P8 остались некоторые недостатки нового процессора P8 остались некоторые недостатки предыдущих архитектур:предыдущих архитектур:

умножения в режиме x87 выполняется в половинном темпе;умножения в режиме x87 выполняется в половинном темпе;переходы выполняются в темпе не более одной операции переходы выполняются в темпе не более одной операции

за такт;за такт;не очень эффективно реализованы инструкции работы с не очень эффективно реализованы инструкции работы с

флагом переноса CF (ADC, SBB), необходимые для работы с флагом переноса CF (ADC, SBB), необходимые для работы с числами произвольной длины;числами произвольной длины;

сохранилась проблема, связанная с «частичной записью сохранилась проблема, связанная с «частичной записью флагов», главным образом относящаяся к флагу переноса CF;флагов», главным образом относящаяся к флагу переноса CF;

сохранилось ограничение на число считываний сохранилось ограничение на число считываний архитектурных регистров в каждом такте на этапе архитектурных регистров в каждом такте на этапе переименования и выделения регистров (Register read stall);переименования и выделения регистров (Register read stall);

обращение к кэшу данных ограничивается темпом «одна обращение к кэшу данных ограничивается темпом «одна загрузка плюс одна выгрузка за такт».загрузка плюс одна выгрузка за такт».

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

Page 51: Лекция № 3 Организация ЭВМ и систем

Линейка процессоров Intel Core 2 Duo Линейка процессоров Intel Core 2 Duo

Линейка процессоров Intel Core 2 Duo основана на Линейка процессоров Intel Core 2 Duo основана на полностью обновлённой микроархитектуреполностью обновлённой микроархитектуре. . Intel говорит не просто об изменениях в новой микро-Intel говорит не просто об изменениях в новой микро-архитектуре процессоров Core 2 Duo, а о кардинальном архитектуре процессоров Core 2 Duo, а о кардинальном обновлении. Инженеры компании взяли некоторые обновлении. Инженеры компании взяли некоторые элементы текущей микроархитектуры Pentium D NetBurst и элементы текущей микроархитектуры Pentium D NetBurst и добавили к ней ингредиенты, сделавшие мобильные добавили к ней ингредиенты, сделавшие мобильные процессоры Pentium M и Core Duo столь популярными на процессоры Pentium M и Core Duo столь популярными на рынке, в результате чего и родилась новая микро-рынке, в результате чего и родилась новая микро-архитектура Core 2. архитектура Core 2. Ключевой целью было достижение Ключевой целью было достижение идеального соотношения между производительностью идеального соотношения между производительностью и энергопотреблением. и энергопотреблением.

Снижение разрядности шин. Снижение разрядности шин. Хотя все шины имеют ширину 128 бит, она не Хотя все шины имеют ширину 128 бит, она не всегда бывает востребована. Intel решила добавить всегда бывает востребована. Intel решила добавить функцию, позволяющую разделять шины, выключая их функцию, позволяющую разделять шины, выключая их часть. Для передачи восьми байт достаточно ширины часть. Для передачи восьми байт достаточно ширины 64 бита, поэтому вторая половина шины не 64 бита, поэтому вторая половина шины не работает, что экономит энергию.работает, что экономит энергию.

Page 52: Лекция № 3 Организация ЭВМ и систем

Линейка процессоров Intel Core 2 Duo Линейка процессоров Intel Core 2 Duo

Функции энергосбережения Core 2 Duo, связанные с Функции энергосбережения Core 2 Duo, связанные с платформой: PSI-2, DTS, PECIплатформой: PSI-2, DTS, PECI

Экономичного процессора ещё не достаточно. Все Экономичного процессора ещё не достаточно. Все механизмы экономии энергии будут эффективно работать механизмы экономии энергии будут эффективно работать лишь в подходящем окружении. Intel интегрировала ещё лишь в подходящем окружении. Intel интегрировала ещё три функции, связанные с платформой.три функции, связанные с платформой.

Индикация энергопотребления процессора/PSI-2 Индикация энергопотребления процессора/PSI-2 (Power Status Indicator).(Power Status Indicator).

Цифровые термодатчики/DTS (Digital Thermal Sensors). Цифровые термодатчики/DTS (Digital Thermal Sensors). PECI (Platform Environment Control Interface). PECI (Platform Environment Control Interface). Все три функции берут своё начало в мобильном (PSI) или Все три функции берут своё начало в мобильном (PSI) или серверном секторах, и все они были существенно серверном секторах, и все они были существенно улучшены перед тем, как появиться в микроархитектуре улучшены перед тем, как появиться в микроархитектуре Core 2. Core 2.

Page 53: Лекция № 3 Организация ЭВМ и систем

Intel выпустила процессоры Core i7Intel выпустила процессоры Core i7

19.11.200819.11.2008Intel сообщила о выпуске на рынок процессоров для Intel сообщила о выпуске на рынок процессоров для

десктопов Core i7 – первых процессоров для десктопов десктопов Core i7 – первых процессоров для десктопов архитектуры Nehalem. Появились три модели новых архитектуры Nehalem. Появились три модели новых процессоров: Intel Core i7-965 Extreme Edition (тактовая процессоров: Intel Core i7-965 Extreme Edition (тактовая частота 3.4 ГГц, стоимость единицы в партии от 1000 штук - частота 3.4 ГГц, стоимость единицы в партии от 1000 штук - $999), Intel Core i7- 940 (2.93 ГГц, цена - $562) и Intel Core $999), Intel Core i7- 940 (2.93 ГГц, цена - $562) и Intel Core i7- 920 (2.66 ГГц, $284).i7- 920 (2.66 ГГц, $284).

"Экстремальная" модель отличается повышенной "Экстремальная" модель отличается повышенной скоростью обмена данными между процессорными ядрами скоростью обмена данными между процессорными ядрами (6.4 GT/sec против 4.8 GT/sec в других двух моделях). В (6.4 GT/sec против 4.8 GT/sec в других двух моделях). В остальном архитектура новинок одинакова: производимые остальном архитектура новинок одинакова: производимые по 45-нм техпроцессу Core i7 оснащены 8 MB кэш-памяти по 45-нм техпроцессу Core i7 оснащены 8 MB кэш-памяти третьего уровня, поддерживают оперативную память третьего уровня, поддерживают оперативную память DDR3-1066, а энергопотребление при пиковой загрузке DDR3-1066, а энергопотребление при пиковой загрузке составляет 130 Вт. составляет 130 Вт.

Page 54: Лекция № 3 Организация ЭВМ и систем

Intel выпустила процессоры Core i7Intel выпустила процессоры Core i7

Новые процессоры на 40% превосходят в Новые процессоры на 40% превосходят в производительности своих четырехядерных производительности своих четырехядерных предшественников. Они были специально разработаны с предшественников. Они были специально разработаны с упором на производительность в компьютерной графике и упором на производительность в компьютерной графике и обработке видео высокой четкости.обработке видео высокой четкости.

Page 55: Лекция № 3 Организация ЭВМ и систем

Intel анонсировала самый быстрый Intel анонсировала самый быстрый двуядерный процессордвуядерный процессор

28.01.200928.01.2009Тактовая частота ядра Core 2 Duo E8700 составляет 3.5 Тактовая частота ядра Core 2 Duo E8700 составляет 3.5

ГГц, а это значит, что данный процессор будет самым ГГц, а это значит, что данный процессор будет самым быстрым среди всех двуядерных процессоров компании. быстрым среди всех двуядерных процессоров компании. Новинка, как и модель Core 2 Duo E8600, использует Новинка, как и модель Core 2 Duo E8600, использует внешнюю шину памяти 1333 МГц, 6 MB кэш-памяти второго внешнюю шину памяти 1333 МГц, 6 MB кэш-памяти второго уровня, а ее энергопотребление составляет всего 65 Вт.уровня, а ее энергопотребление составляет всего 65 Вт.

Page 56: Лекция № 3 Организация ЭВМ и систем

Процессоры компании AMDПроцессоры компании AMD

Развитие современных микроархитектур в компании Развитие современных микроархитектур в компании AMD началось с создания в 1999 г. AMD началось с создания в 1999 г. процессорпроцессора а Athlon Athlon (K7).(K7). Это был Это был первый полноценный суперскалярный первый полноценный суперскалярный конвейерный микропроцессор с внеочередным конвейерный микропроцессор с внеочередным исполнением операцийисполнением операций, разработанный в компании. , разработанный в компании.

В микроархитектуре процессора K7 нашли отражение В микроархитектуре процессора K7 нашли отражение все те основные принципы, которые были до этого все те основные принципы, которые были до этого реализованы в процессоре Intel Pentium Pro (P6). Однако реализованы в процессоре Intel Pentium Pro (P6). Однако конкретные конкретные подходы разработчиков AMD отличались подходы разработчиков AMD отличались большей простотой и изобретательностью, большей простотой и изобретательностью, направленной на снижение сложности процессора и направленной на снижение сложности процессора и увеличение его производительностиувеличение его производительности. .

Page 57: Лекция № 3 Организация ЭВМ и систем

Разработчики частично пожертвовали гибкостью и Разработчики частично пожертвовали гибкостью и динамическими элементами архитектуры, но при этом динамическими элементами архитектуры, но при этом уделили внимание скорости выполнения многих уделили внимание скорости выполнения многих инструкций (в особенности операций арифметики с инструкций (в особенности операций арифметики с плавающей точкой), значительно увеличили размер кэшей плавающей точкой), значительно увеличили размер кэшей 1-го уровня (ограничившись при этом низким уровнем 1-го уровня (ограничившись при этом низким уровнем ассоциативности) и ввели важный механизм объединения ассоциативности) и ввели важный механизм объединения адресной и арифметической микрооперации в один общий адресной и арифметической микрооперации в один общий МОП (Load-Op, Op-Store, Load-Op-Store). Благодаря этому МОП (Load-Op, Op-Store, Load-Op-Store). Благодаря этому процессор K7 сразу обогнал по производительности своего процессор K7 сразу обогнал по производительности своего конкурента P-III, и в дальнейшем, с появлением конкурента P-III, и в дальнейшем, с появлением процессора P-4, достойно ему противостоял на некоторых процессора P-4, достойно ему противостоял на некоторых применениях. В процессе своего развития процессор K7 применениях. В процессе своего развития процессор K7 подвергался усовершенствованиям.подвергался усовершенствованиям.

Page 58: Лекция № 3 Организация ЭВМ и систем

Следующий процессор компании Athlon 64 / Opteron Следующий процессор компании Athlon 64 / Opteron (K8), увидевший свет в 2003 г., мало отличается от своего (K8), увидевший свет в 2003 г., мало отличается от своего предшественника K7 по микроархитектуре. При его предшественника K7 по микроархитектуре. При его создании основной упор был сделан на создании основной упор был сделан на две ключевые две ключевые технологии: 64-битный режим целочисленной и технологии: 64-битный режим целочисленной и адресной арифметики AMD64 (x86-64), и адресной арифметики AMD64 (x86-64), и интегрированный контроллер оперативной памяти, интегрированный контроллер оперативной памяти, встроенный в процессорный чип.встроенный в процессорный чип. Создание Создание расширенной архитектуры x86-64 позволило снять расширенной архитектуры x86-64 позволило снять ограничения по адресации памяти, сдерживающие ограничения по адресации памяти, сдерживающие развитие десктопных процессоров, а развитие десктопных процессоров, а реализация реализация встроенного контроллера существенно снизила встроенного контроллера существенно снизила латентность доступа к оперативной памятилатентность доступа к оперативной памяти, тем самым, , тем самым, дав значительный прирост в производительности на дав значительный прирост в производительности на многих задачах. многих задачах. В дальнейшем архитектура x86-64 стала В дальнейшем архитектура x86-64 стала стандартной и была реализована в процессорах Intel P-4E и P8. стандартной и была реализована в процессорах Intel P-4E и P8. Внедрение встроенного контроллера памяти в процессорах компании Внедрение встроенного контроллера памяти в процессорах компании Intel также предполагается в ближайшие годы.Intel также предполагается в ближайшие годы.

Page 59: Лекция № 3 Организация ЭВМ и систем

Помимо этих ключевых технологий, в процессоре K8 Помимо этих ключевых технологий, в процессоре K8 имеется ряд менее значимых отличий от K7:имеется ряд менее значимых отличий от K7:

усовершенствован декодер машинных инструкций, усовершенствован декодер машинных инструкций, большинство «сложных» инструкций, порождающих 2 МОПа, большинство «сложных» инструкций, порождающих 2 МОПа, переведены в разряд «простых»;переведены в разряд «простых»;

добавлены режимы SSE2 и (чуть позднее) SSE3;добавлены режимы SSE2 и (чуть позднее) SSE3;несколько улучшена подсистема предсказания несколько улучшена подсистема предсказания

переходов;переходов;увеличена длина очередей планировщика, проведены увеличена длина очередей планировщика, проведены

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

расширена шина L2-кэша и уменьшено время доступа;расширена шина L2-кэша и уменьшено время доступа;обеспечено комплексирование в многопроцессорные обеспечено комплексирование в многопроцессорные

конфигурации через интерфейс HyperTransport без конфигурации через интерфейс HyperTransport без использования внешней логики (чипсета);использования внешней логики (чипсета);

реализована двухъядерность с раздельными L2-кэшами реализована двухъядерность с раздельными L2-кэшами и общим контроллером памяти (в процессоре K8 X2).и общим контроллером памяти (в процессоре K8 X2).

Page 60: Лекция № 3 Организация ЭВМ и систем

Однако в архитектуре процессора K8 имеется и ряд недостатков, Однако в архитектуре процессора K8 имеется и ряд недостатков, часть из которых обусловлена базовыми ограничениями часть из которых обусловлена базовыми ограничениями микроархитектуры:микроархитектуры:

статическое разбиение потока МОПов на группы по 3 статическое разбиение потока МОПов на группы по 3 элемента с привязкой очередей и функциональных устройств элемента с привязкой очередей и функциональных устройств ALU/AGU к позициям этих элементов;ALU/AGU к позициям этих элементов;

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

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

отсутствие механизмов переупорядочения обращений к отсутствие механизмов переупорядочения обращений к памяти;памяти;

взаимно эксклюзивная организация кэшей, ограничивающая взаимно эксклюзивная организация кэшей, ограничивающая скорость выборки из L2-кэша и увеличивающая время доступа;скорость выборки из L2-кэша и увеличивающая время доступа;

недостаточная ассоциативность L1-кэшей, снижающая их недостаточная ассоциативность L1-кэшей, снижающая их эффективность.эффективность.

В целом процессор K8 составил хорошую конкуренцию В целом процессор K8 составил хорошую конкуренцию процессорам P-4 и P-4E. Благодаря меньшей длине конвейеров процессорам P-4 и P-4E. Благодаря меньшей длине конвейеров и более эффективной реализации многих инструкций он и более эффективной реализации многих инструкций он оказался не столь требователен к оптимизации кодов и в ряде оказался не столь требователен к оптимизации кодов и в ряде применений имеет более высокую производительность.применений имеет более высокую производительность.

Page 61: Лекция № 3 Организация ЭВМ и систем

Однако K8 значительно уступает новому процессору P8 (Intel Однако K8 значительно уступает новому процессору P8 (Intel Core), особенно в игровых и десктопных применениях. Превосходство Core), особенно в игровых и десктопных применениях. Превосходство процессора P8 в производительности обусловлено в первую очередь процессора P8 в производительности обусловлено в первую очередь динамической организацией его архитектуры, имеющей увеличенную динамической организацией его архитектуры, имеющей увеличенную ширину запуска и обработки инструкций, полночастотным ширину запуска и обработки инструкций, полночастотным выполнением упакованных 128-битных операций SSE, увеличенным выполнением упакованных 128-битных операций SSE, увеличенным размером L2-кэша, более совершенным предсказателем переходов и размером L2-кэша, более совершенным предсказателем переходов и улучшенной подсистемой предвыборки данных. улучшенной подсистемой предвыборки данных.

В связи с появлением столь серьёзного конкурента, компания AMD В связи с появлением столь серьёзного конкурента, компания AMD объявила о планах создания нового процессора с улучшенной и объявила о планах создания нового процессора с улучшенной и расширенной микроархитектурой, известного под названием K8L.расширенной микроархитектурой, известного под названием K8L.

Page 62: Лекция № 3 Организация ЭВМ и систем

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

реализация полночастотного 128-битного режима реализация полночастотного 128-битного режима выполнения упакованных операций SSE (в двух каналах выполнения упакованных операций SSE (в двух каналах исполнения);исполнения);

увеличение ширины и пропускной способности доступа увеличение ширины и пропускной способности доступа к L1-кэшу — теперь в каждом такте могут выполняться две к L1-кэшу — теперь в каждом такте могут выполняться две 128-битные загрузки за такт либо одна загрузка и одна 128-битные загрузки за такт либо одна загрузка и одна выгрузка (в процессоре P8 — только одна такая загрузка и выгрузка (в процессоре P8 — только одна такая загрузка и одна выгрузка);одна выгрузка);

увеличение длины выборки из кэша инструкций до 32 увеличение длины выборки из кэша инструкций до 32 байтов;байтов;

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

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

некоторое расширение системы команд.некоторое расширение системы команд.

Page 63: Лекция № 3 Организация ЭВМ и систем

Кроме того, изменилась структура и внешние интерфейсы Кроме того, изменилась структура и внешние интерфейсы процессора. Теперь базовый вариант содержит 4 процессорных процессора. Теперь базовый вариант содержит 4 процессорных ядра, имеющих раздельные L2-кэши по 512 Кбайт и общий кэш ядра, имеющих раздельные L2-кэши по 512 Кбайт и общий кэш 3-го уровня размером 2 Мбайта (в последующих версиях 3-го уровня размером 2 Мбайта (в последующих версиях процессора L3-кэш увеличится). Коммуникационные интерфейсы процессора L3-кэш увеличится). Коммуникационные интерфейсы HyperTransport, используемые для ввода-вывода и для HyperTransport, используемые для ввода-вывода и для объединения в многопроцессорную систему с общей памятью, объединения в многопроцессорную систему с общей памятью, перешли на стандарт HT-3.0, обеспечивающий повышенную перешли на стандарт HT-3.0, обеспечивающий повышенную скорость обменов и улучшенную функциональность. скорость обменов и улучшенную функциональность. Максимальная частота интерфейсов выросла до 2.6 ГГц, а Максимальная частота интерфейсов выросла до 2.6 ГГц, а пиковая скорость передачи данных - до 10.4 Гбайт/с (в каждом пиковая скорость передачи данных - до 10.4 Гбайт/с (в каждом направлении). Число интерфейсов увеличилось с трёх до направлении). Число интерфейсов увеличилось с трёх до четырёх, что позволяет реализовывать полносвязные системы четырёх, что позволяет реализовывать полносвязные системы из 4 процессоров (сокетов) и повысить степень интеграции из 4 процессоров (сокетов) и повысить степень интеграции систем из 8 процессоров (сокетов).систем из 8 процессоров (сокетов).

Самым принципиальным отличием процессорного Самым принципиальным отличием процессорного ядра K8L от ядра K8 является удвоение скорости ядра K8L от ядра K8 является удвоение скорости работы блока арифметики с плавающей точкой (для работы блока арифметики с плавающей точкой (для упакованных режимов SSE).упакованных режимов SSE).

Page 64: Лекция № 3 Организация ЭВМ и систем

Таким образом, противостояние процессоров компаний Таким образом, противостояние процессоров компаний Intel и AMD в настоящее время перешло из плоскости Intel и AMD в настоящее время перешло из плоскости войны революционных концепций и новаций (P-4 против войны революционных концепций и новаций (P-4 против K7/K8) в плоскость борьбы эволюционных расширений и K7/K8) в плоскость борьбы эволюционных расширений и реализаций (P8 против K8/K8L). В рамках этого реализаций (P8 против K8/K8L). В рамках этого противостояния компания AMD, безусловно, должна будет противостояния компания AMD, безусловно, должна будет разработать новую, продвинутую микроархитектуру, более разработать новую, продвинутую микроархитектуру, более широкую и динамическую по своей природе. В сочетании с широкую и динамическую по своей природе. В сочетании с удачными наработками из предыдущих поколений удачными наработками из предыдущих поколений процессоров (гибкий механизм предварительного процессоров (гибкий механизм предварительного декодирования инструкций, эффективные функциональные декодирования инструкций, эффективные функциональные устройства, широкий доступ к L1-кэшам, низколатентный устройства, широкий доступ к L1-кэшам, низколатентный встроенный контроллер памяти и быстрые интерфейсы встроенный контроллер памяти и быстрые интерфейсы HyperTransport) это позволит будущей архитектуре HyperTransport) это позволит будущей архитектуре достигнуть всестороннего паритета либо превосходства достигнуть всестороннего паритета либо превосходства над процессорами конкурента.над процессорами конкурента.