Файл: Процессор персонального компьютера. Назначение, функции, классификация процессора.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 06.04.2023

Просмотров: 226

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

SSE2 был представлен в ноябре 2000 года вместе с процессором Pentium 4 и добавляет 144 дополнительных инструкции SIMD. SSE2 также включает в себя все предыдущие инструкции MMX и SSE.

SSE3 был представлен в феврале 2004 года вместе с процессором Pentium 4 Prescott и добавляет 13 новых инструкций SIMD для улучшения сложной математики, графики, кодирования видео и синхронизации потоков. SSE3 также включает в себя все предыдущие инструкции MMX, SSE и SSE2.

Расширения Streaming SIMD состоят из новых инструкций, в том числе SIMD с плавающей запятой, дополнительного целого числа SIMD и инструкций по управлению кэшируемостью.

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

Одним из основных преимуществ SSE по сравнению с обычным MMX является то, что он поддерживает SIMD-операции с плавающей запятой одинарной точности, что является узким местом в обработке трехмерной графики [9]. Как и в обычном MMX, SIMD позволяет выполнять несколько операций для одной инструкции процессора. В частности, SSE поддерживает до четырех операций с плавающей запятой за цикл; то есть одна инструкция может работать с четырьмя частями данных одновременно. Инструкции SSE с плавающей точкой могут быть смешаны с инструкциями MMX без потери производительности. SSE также поддерживает предварительную выборку данных, которая представляет собой механизм для чтения данных в кэш-память до того, как она будет фактически вызвана.

Обратите внимание, что для того, чтобы любая из инструкций SSE была полезной, они должны быть закодированы в используемом вами программном обеспечении, поэтому для просмотра преимуществ необходимо использовать приложения, поддерживающие SSE. Большинство софтверных компаний, пишущих сегодня графическое и звуковое программное обеспечение, обновили эти приложения, чтобы они знали SSE и использовали функции SSE. Например, высокопроизводительные графические приложения, такие как Adobe Photoshop, поддерживают инструкции SSE для более высокой производительности на процессорах, оснащенных SSE. Microsoft включает поддержку SSE в своих видео и звуковых драйверах DirectX 6.1 и более поздних версиях, которые включены в Windows 98 Second Edition, Windows Me, Windows NT 4.0 (с пакетом обновления 5 или более поздней версии), Windows 2000 и Windows XP [11].


SSE является расширением MMX; SSE2 является расширением SSE; и SSE3 является расширением SSE2. Поэтому процессоры, которые поддерживают SSE3, также поддерживают инструкции SSE2, процессоры, которые поддерживают SSE2, также поддерживают SSE, а процессоры, которые поддерживают SSE, также поддерживают оригинальные инструкции MMX. Это означает, что стандартные приложения с поддержкой MMX работают так же, как и на процессорах с поддержкой только MMX.

Первыми процессорами AMD, поддерживающими SSE3, являются 0,09-микронные версии Athlon 64 и все версии двухъядерного Athlon 64 X2.

  • 3DNow !, Улучшенная 3DNow !, и Профессиональная 3DNow!

3DNow! Технология изначально была представлена ​​как альтернатива AMD инструкциям SSE в процессорах Intel. На самом деле, 3DNow! был впервые представлен в серии K6 до того, как Intel выпустила SSE в Pentium III, а затем AMD добавила Enhanced 3DNow! процессорам Athlon и Duron. Последняя версия Professional 3DNow !, была представлена ​​в первых процессорах Athlon XP. AMD лицензировала MMX от Intel, и все ее процессоры серии K6, Athlon, Duron и более поздние включают полную поддержку инструкций MMX. Не желая дополнительно лицензировать инструкции SSE, разрабатываемые Intel, AMD сначала предложила другой набор расширений, помимо MMX, под названием 3DNow !. Представленный в мае 1998 года в процессоре K6-2 и улучшенный, когда Athlon был представлен в июне 1999 года [6], 3DNow !, и Enhanced 3DNow! Это наборы инструкций, которые расширяют мультимедийные возможности чипов AMD за пределы MMX. Это обеспечивает более высокую производительность для 3D-графики, мультимедиа и других приложений для ПК с интенсивной плавающей точкой.

3DNow! Технология представляет собой набор из 21 инструкции, которая использует методы SIMD для работы с массивами данных, а не с отдельными элементами. Улучшено 3DNow! добавляет еще 24 инструкции (19 SSE и 5 DSP / коммуникационные инструкции) к исходным 21, что в сумме дает 45 новых инструкций. Позиционируется как расширение технологии MMX, 3DNow! похож на SSE, найденный в процессорах Pentium III и Celeron от Intel. По словам AMD, 3DNow! обеспечивает примерно тот же уровень улучшения MMX, что и SSE, но содержит меньше инструкций с меньшей сложностью. Хотя они похожи по возможностям, они не совместимы на уровне команд, поэтому программное обеспечение, специально разработанное для поддержки SSE, не поддерживает 3DNow !, и наоборот. Последняя версия 3DNow !, 3DNow! Professional, добавляет 51 команду SSE в 3DNow! Улучшено, что означает, что 3DNow! Professional теперь поддерживает все команды SSE, а это означает, что чипы AMD теперь по существу поддерживают SSE. К сожалению, AMD включает SSE2 только на процессорах Athlon 64, Athlon 64FX и Opteron.


Как и в случае с SSE, 3DNow! также поддерживает операции SIMD с плавающей запятой одинарной точности и позволяет выполнять до четырех операций с плавающей запятой за цикл. 3DNow! Инструкции с плавающей точкой могут быть смешаны с инструкциями MMX без потери производительности. 3DNow! также поддерживает предварительную выборку данных.

Также как SSE, 3DNow! хорошо поддерживается программным обеспечением, включая Windows 9x, Windows NT 4.0 и все более новые операционные системы Microsoft. Поддержка 3DNow! Больше не является большой проблемой, если вы используете процессор Athlon XP или Athlon 64, поскольку теперь они полностью поддерживают SSE благодаря поддержке 3DNow! Professional.

  • Динамическое выполнение

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

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

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

Спекулятивное исполнение. Увеличивает скорость выполнения, просматривая счетчик программ и выполняя инструкции, которые могут быть необходимы.

  • Прогнозирование отрасли

Прогнозирование ветвлений - это функция, ранее встречавшаяся только в процессорах мэйнфреймов высокого класса. Это позволяет процессору поддерживать конвейер инструкций заполненным при работе с высокой скоростью. Специальный модуль выборки / декодирования в процессоре использует высокооптимизированный алгоритм прогнозирования ветвлений для прогнозирования направления и результата выполнения инструкций через несколько уровней ветвлений, вызовов и возвратов [7]. Это похоже на то, как шахматист разрабатывает несколько стратегий до начала игры, предсказывая стратегию противника на несколько шагов в будущее. Прогнозируя результат команды заранее, инструкции могут быть выполнены без ожидания.

  • Анализ потока данных

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


  • Спекулятивное исполнение

Спекулятивное выполнение - это способность процессора выполнять инструкции до фактического счетчика программы. Блок обработки / выполнения процессора использует анализ потока данных для выполнения всех доступных инструкций в пуле команд и сохранения результатов во временных регистрах [5]. Модуль вывода затем выполняет поиск в пуле команд для выполненных инструкций, которые больше не зависят от данных для выполнения других команд или имеют неразрешенные прогнозы ветвления. Если найдены какие-либо такие завершенные инструкции, результаты сохраняются в памяти модулем вывода или соответствующей стандартной архитектурой Intel в том порядке, в котором они были выданы. Затем они удалились из бассейна.

Динамическое выполнение существенно устраняет ограничения и зависимость от линейной последовательности команд. Способствуя выполнению команд вне очереди, он может поддерживать работу блоков команд, а не ожидать данных из памяти. Даже если инструкции можно прогнозировать и выполнять не по порядку, результаты сохраняются в исходном порядке, чтобы не нарушать или не изменять ход программы. Это позволяет P6 запускать существующее программное обеспечение архитектуры Intel точно так же, как P5 (Pentium) и предыдущие процессоры - намного быстрее!

  • Двойная независимая архитектура шины

Архитектура Dual Independent Bus (DIB) впервые была реализована в процессорах шестого поколения от Intel и AMD. DIB был создан для улучшения пропускной способности и производительности процессорной шины. Наличие двух (двойных) независимых шин ввода-вывода данных позволяет процессору получать доступ к данным с любой из его шин одновременно и параллельно, а не единичным последовательным образом (как в системе с одной шиной). Основной (часто называемой лицевой стороной) процессорной шиной является интерфейс между процессором и материнской платой или набором микросхем. Вторая (задняя) шина в процессоре с DIB используется для кэша L2, что позволяет ему работать с гораздо большей скоростью, чем если бы он разделял шину основного процессора.

Архитектура DIB составляет две шины: шина кэш-памяти L2 и основная шина ЦП, часто называемая FSB (лицевая шина). Процессоры класса P6 от Pentium Pro до процессоров Celeron, Pentium II / III / 4 и Athlon / Duron могут использовать обе шины одновременно, что устраняет узкие места [10]. Архитектура с двумя шинами позволяет кэш-памяти второго уровня новых процессоров работать на полной скорости внутри процессорного ядра на независимой шине, оставляя основную шину процессора (FSB) для обработки обычных данных, поступающих в чип и из него. Два автобуса ходят на разных скоростях. Шина на передней панели или основная шина ЦП связана со скоростью материнской платы, а шина на задней стороне или кэш-память L2 связана со скоростью ядра процессора. По мере увеличения частоты процессоров увеличивается и скорость кэш-памяти L2.


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

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

  • Технология Hyper-Threading

Компьютеры с двумя или более физическими процессорами уже давно имеют преимущество в производительности по сравнению с однопроцессорными компьютерами, когда операционная система поддерживает несколько процессоров, как в случае с Windows NT 4.0, 2000, XP Professional и Linux [10]. Однако двухпроцессорные материнские платы и системы всегда были дороже, чем сопоставимые в других отношениях однопроцессорные системы, и переход на двухпроцессорную систему до двухпроцессорного состояния может быть затруднен только с одним процессором из-за необходимости соответствовать процессорной скорости и технические характеристики. Однако технология Intel Hyper-Threading (HT) позволяет одному процессору обрабатывать два независимых набора инструкций одновременно. По сути, технология HT преобразует один физический процессор в два виртуальных процессора.

Изначально Intel представила технологию HT в линейке процессоров Xeon для серверов в марте 2002 года [12]. Технология HT позволяет многопроцессорным серверам работать так, как если бы у них было установлено в два раза больше процессоров. Технология HT была внедрена на процессорах класса рабочих станций Xeon с системной шиной 533 МГц, а затем нашла свое применение в процессорах ПК с процессором Pentium 4 3,06 ГГц в ноябре 2002 года. Технология HT также присутствует во всех процессорах Pentium 4 с частотой шины процессора 800 МГц (2,4–3,8 ГГц), а также Pentium 4 Extreme Edition и двухъядерный Pentium Extreme Edition. Тем не менее, двухъядерный Pentium D не включает в себя технологию HT.

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