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

Опитайте Нашия Инструмент За Премахване На Проблемите





В този свят всеки иска да свърши нещата/работите си бързо. не е ли От автомобили до промишлени до битови машини всеки иска да работят по-бързо. Знаете ли какво седи вътре в тези машини и ги кара да работят? Те са процесори . Те могат да бъдат микро или макро процесори в зависимост от функционалността. Основният процесор като цяло изпълнява една инструкция на тактов цикъл. Начинът за подобряване на тяхната скорост на обработка, така че машините да могат да подобрят скоростта си, е създаден суперскаларен процесор който има конвейерен алгоритъм, за да му позволи да изпълни две инструкции на тактов цикъл. За първи път е изобретен от CDC 6600 на Seymour Cray, изобретен през 1964 г., и по-късно е подобрен от Tjaden & Flynn през 1970 г.


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



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

Какво е суперскаларен процесор?

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



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

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

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

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

  PCBWay
  • Суперскаларната архитектура е паралелна изчислителна техника, използвана в различни процесори.
  • В суперскаларен компютър процесорът управлява няколко конвейера с инструкции, за да изпълнява многобройни инструкции едновременно по време на тактов цикъл.
  • Суперскаларните архитектури включват всички тръбопроводи функции, въпреки че има няколко инструкции, изпълняващи се едновременно в рамките на един и същи конвейер.
  • Суперскаларните методи за проектиране обикновено включват паралелно преименуване на регистри, паралелно декодиране на инструкции, спекулативно изпълнение и изпълнение извън реда. Така че тези методи обикновено се използват с допълващи се методи за проектиране като кеширане, конвейерна обработка, прогнозиране на разклонения и многоядрени в последните проекти на микропроцесори.

Суперскаларна процесорна архитектура

Знаем, че суперскаларният процесор е CPU, който изпълнява повече от една инструкция за всеки 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 инструкции в един конвейер.

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

Архитектурата на конвейера на суперскаларния процесор включва два конвейера и четири етапа на извличане, декодиране, изпълнение и обратно записване на резултата. Това е суперскаларен процесор с 2 издания, което означава, че едновременно две инструкции ще извлекат, декодират, изпълнят и ще доведат до обратно записване. Двете инструкции 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 микропроцесори. Този процесор е в състояние да издава, както и да оттегля три инструкции за всеки часовник и по една за всяка от 3-те изпълнителни единици. Инструкциите са напълно неподходящи за подобрена производителност; но PC601 ще накара изпълнението да се появи в ред.

  IBM Power PC601
IBM Power PC601

Мощният процесор PC601 осигурява 32-битови логически адреси, 8, 16 и 32-битови цели числа и 32- и 64-битови типове данни с плаваща запетая. За внедряването на 64-битов PowerPC, архитектурата на този процесор осигурява 64-битови цели типове данни, адресиране и други функции, необходими за завършване на 64-битовата базирана архитектура.

MC 88110

MC 88110 е едночипов RISC микропроцесор от второ поколение, който използва усъвършенствани методи за използване на паралелизъм на ниво инструкции. Този процесор използва множество вградени в чипа кеш памети, проблеми със суперскаларни инструкции, запис на ограничени динамични инструкции и спекулативно изпълнение за постигане на максимална производителност, така че е идеално използван като централен процесор в евтини компютри и работни станции.

  MC 88000
MC 88000

Intel i960

Intel i960 е суперскаларен процесор, който е способен да изпълнява и изпраща различни независими инструкции по време на всеки тактов цикъл на процесора. Това е RISC-базиран микропроцесор, който стана много известен като вграден микроконтролер в началото на 90-те години. Този процесор се използва непрекъснато в няколко военни приложения.

  Intel i960
Intel i960

MIPS R

MIPS R е динамичен и суперскаларен микропроцесор, използван за изпълнение на 64-битовата MIPS архитектура с 4 набора от инструкции. Този процесор извлича и декодира 4 инструкции за всеки цикъл и ги изпраща на пет напълно конвейерни изпълнителни единици с ниска латентност. Този процесор е специално проектиран за високопроизводителни, големи и реални приложения с лоша памет. С приблизително изпълнение той просто изчислява адресите на паметта. MIPS процесорите се използват главно в различни устройства като Nintendo Gamecube, продуктовата линия на SGI, Sony Playstation 2, PSP и Cisco рутерите.

  MIPS R
MIPS R

Разлика B/W Superscalar Vs Pipelining

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

Суперскаларен

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

Суперскаларът е CPU, използван за прилагане на форма на паралелизъм, който се нарича паралелизъм на ниво инструкция в един процесор. Техника на внедряване като конвейер се използва, когато няколко инструкции се припокриват в рамките на изпълнението.
Суперскаларната архитектура инициира няколко инструкции едновременно и ги изпълнява поотделно. Конвейерната архитектура изпълнява единичен конвейерен етап само за всеки тактов цикъл.

Тези процесори зависят от пространствения паралелизъм. Зависи от времевия паралелизъм.
Няколко операции се изпълняват едновременно на отделен хардуер. Припокриване на няколко операции на общ хардуер.
Това се постига чрез дублиране на хардуерни ресурси като портове на регистрационни файлове и изпълнителни единици. Това се постига чрез по-задълбочени конвейерни модули с много бързи CLK цикли.

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

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

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

Предимства и недостатъци

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

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

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

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

Приложения за суперскаларен процесор

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

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

И така, това е всичко преглед на суперскаларния процесор – архитектура, типове и приложения. Ето един въпрос към вас, какво е скаларният процесор?