Суперскалярный процессор: архитектура, конвейерная обработка, типы и приложения

Попробуйте наш инструмент устранения неполадок





В этом мире каждый хочет, чтобы его дела/работы выполнялись быстро. не так ли? От автомобилей до промышленных и бытовых машин, все хотят, чтобы они работали быстрее. Знаете ли вы, что находится внутри этих машин, заставляющих их работать? Они есть процессоры . Это могут быть микро- или макропроцессоры в зависимости от функциональности. Базовый процессор обычно выполняет одну инструкцию за такт. Чтобы улучшить свою скорость обработки, чтобы машины могли улучшить свою скорость, суперскалярный процессор который имеет алгоритм конвейерной обработки, позволяющий ему выполнять две инструкции за такт. Впервые он был изобретен Seymour Cray's CDC 6600, изобретенным в 1964 году, а затем усовершенствованным Tjaden & Flynn в 1970 году.


Первый коммерческий однокристальный суперскалярный микропроцессор MC88100 был разработан компанией Motorola в 1988 г., позже Intel представила его версию I960CA в 1989 г. и AMD 29000-серии 29050 в 1990 г. В настоящее время типичным используемым суперскалярным процессором является процессор Intel Core i7 в зависимости от микроархитектура Nehalem.



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

Что такое суперскалярный процессор?

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



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

  Суперскалярный процессор
Суперскалярный процессор

Функции

Особенности суперскалярных процессоров включают следующее.

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

Архитектура суперскалярного процессора

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

Архитектура суперскалярного процессора в основном включает блоки параллельного выполнения, где эти блоки могут выполнять инструкции одновременно. Итак, сначала эта параллельная архитектура была реализована в процессоре RISC, который использует простые и короткие инструкции для выполнения вычислений. Так что из-за их суперскалярных способностей обычно РИСК процессоры работают лучше по сравнению с процессорами CISC, которые работают на тех же мегагерцах. Но большинство CISC современные процессоры, такие как Intel Pentium, также содержат некоторую архитектуру RISC, что позволяет им выполнять инструкции параллельно.

  Архитектура суперскалярного процессора
Архитектура суперскалярного процессора

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

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

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

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

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

В приведенной ниже конвейерной архитектуре извлекается F, декодируется D, выполняется E, а W — обратная запись регистра. В этой конвейерной архитектуре I1, I2, I3 и I4 являются инструкциями.

Архитектура конвейера скалярного процессора включает один конвейер и четыре этапа выборки, декодирования, выполнения и обратной записи результата. В одноконвейерном скалярном процессоре конвейер в инструкции 1 (I1) работает как; в первый такт I1 будет выполняться выборка, во второй такт будет выполняться декодирование, а во второй инструкции будет выполняться I2. Третья инструкция I3 в третьем тактовом периоде будет извлечена, I2 будет декодирована, а I1 будет выполнена. В четвертом такте I4 будет выполнять выборку, I3 будет декодировать, I2 будет выполняться, а I1 будет записывать в память. Таким образом, за семь тактов он выполнит 4 инструкции в одном конвейере.

  Скалярная конвейерная обработка
Скалярная конвейерная обработка

Конвейерная архитектура суперскалярного процессора включает два конвейера и четыре этапа выборки, декодирования, выполнения и обратной записи результатов. Это суперскалярный процессор с двумя проблемами, что означает, что одновременно две инструкции будут извлекаться, декодироваться, выполняться и возвращаться к результату. Две инструкции I1 и I2 будут одновременно извлекать, декодировать, выполнять и записывать в каждый такт. Одновременно в следующем такте оставшиеся две инструкции I3 и I4 будут одновременно извлекать, декодировать, выполнять и записывать обратно. Таким образом, за пять тактов он выполнит 4 инструкции в одном конвейере.

  Суперскалярная конвейерная обработка
Суперскалярная конвейерная обработка

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

Типы суперскалярных процессоров

Это различные типы суперскалярных процессоров, доступных на рынке, которые обсуждаются ниже.

Процессор Intel Core i7

Intel Core i7 — это суперскалярный процессор, основанный на микроархитектуре Nehalem. В дизайне Core i7 есть различные процессорные ядра, где каждое процессорное ядро ​​является суперскалярным процессором. Это самая быстрая версия процессора Intel, используемого в потребительских компьютерах и устройствах. Подобно Intel Corei5, этот процессор использует технологию Intel Turbo Boost. Этот процессор доступен в вариантах от 2 до 6, которые поддерживают до 12 различных потоков одновременно.

  Процессор Intel Core i7
Процессор Intel Core i7

Процессор Intel Pentium

Суперскалярная конвейерная архитектура процессора Intel Pentium означает, что ЦП выполняет как минимум две или более инструкций за каждый цикл. Этот процессор широко используется в персональных компьютерах. Устройства с процессором Intel Pentium обычно предназначены для онлайн-использования, облачных вычислений и совместной работы. Таким образом, этот процессор идеально подходит для планшетов и Chromebook, обеспечивая высокую локальную производительность и эффективное онлайн-взаимодействие.

  Процессор Intel Pentium
Процессор Intel Pentium

IBM Power PC601

Суперскалярный процессор, такой как IBM power PC601, относится к семейству PowerPC RISC-микропроцессоров. Этот процессор способен выдавать и отменять три инструкции для каждого такта и по одной для каждого из трех исполнительных блоков. Инструкции совершенно не подходят для повышения производительности; но PC601 упорядочит выполнение.

  IBM Power PC601
IBM Power PC601

Процессор Power PC601 поддерживает 32-битные логические адреса, 8-, 16- и 32-битные целочисленные типы данных и 32- и 64-битные типы данных с плавающей запятой. Для реализации 64-битного PowerPC архитектура этого процессора предоставляет 64-битные целочисленные типы данных, адресацию и другие функции, необходимые для завершения 64-битной архитектуры.

МС 88110

MC 88110 — это однокристальный RISC-микропроцессор второго поколения, в котором используются передовые методы реализации параллелизма на уровне инструкций. Этот процессор использует несколько встроенных кэшей, проблемы с суперскалярными инструкциями, запись ограниченных динамических инструкций и спекулятивное выполнение для достижения максимальной производительности, поэтому он идеально подходит для использования в качестве центрального процессора в недорогих ПК и рабочих станциях.

  МС 88000
МС 88000

Интел i960

Intel i960 — это суперскалярный процессор, способный выполнять и отправлять различные независимые инструкции в течение каждого тактового цикла процессора. Это микропроцессор на основе RISC, который стал очень известен как встроенный микроконтроллер в начале 1990-х годов. Этот процессор постоянно используется в нескольких военных приложениях.

  Интел i960
Интел i960

MIPS R

MIPS R — это динамический и суперскалярный микропроцессор, используемый для выполнения 64-битной архитектуры MIPS с 4 наборами инструкций. Этот процессор извлекает и декодирует 4 инструкции для каждого цикла и выдает их пяти полностью конвейерным исполнительным блокам с малой задержкой. Этот процессор специально разработан для высокопроизводительных, больших и реальных приложений с плохой локализацией памяти. При приближенном исполнении просто вычисляет адреса памяти. Процессоры MIPS в основном используются в различных устройствах, таких как Nintendo Gamecube, линейка продуктов SGI, Sony Playstation 2, маршрутизаторы PSP и Cisco.

  MIPS R
MIPS R

Отличие черно-белого суперскаляра от конвейерной обработки

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

Суперскаляр

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

Суперскаляр — это ЦП, используемый для реализации формы параллелизма, которая называется параллелизмом на уровне инструкций в одном процессоре. Метод реализации, такой как конвейерная обработка, используется, когда несколько инструкций перекрываются в ходе выполнения.
Суперскалярная архитектура инициирует несколько инструкций одновременно и выполняет их по отдельности. Конвейерная архитектура выполняет один этап конвейера только для каждого тактового цикла.

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

Характеристики

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

  • Суперскалярный процессор — это суперконвейерная модель, в которой просто независимые инструкции выполняются последовательно без какой-либо ситуации ожидания.
  • Суперскалярный процессор одновременно выбирает и декодирует несколько инструкций входящего потока инструкций.
  • Архитектура суперскалярных процессоров использует потенциал параллелизма на уровне инструкций.
  • Суперскалярные процессоры в основном выдают указанную выше единственную инструкцию для каждого цикла.
  • Нет. выданных инструкций в основном зависит от инструкций в потоке инструкций.
  • Инструкции часто переупорядочиваются, чтобы лучше соответствовать архитектуре процессора.
  • Суперскалярный метод обычно связан с некоторыми идентифицирующими характеристиками. Инструкции обычно выдаются из последовательного потока команд.
  • ЦП динамически проверяет зависимости данных между инструкциями во время выполнения.
  • ЦП выполняет несколько инструкций за каждый такт.

Преимущества и недостатки

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

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

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

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

Приложения для суперскалярных процессоров

Приложения суперскалярного процессора включают следующее.

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

Таким образом, это все о обзор суперскалярного процессора – архитектура, типы и приложения. Вот вам вопрос, что такое скалярный процессор?