Процессоры нетрадиционной архитектуры доклад

Обновлено: 19.05.2024

Целью работы является изучение типов архитектур современных процессоров.
Задачами работы являются:
- изучение истории, основных видов архитектур процессоров;
- рассмотрение основных характеристик современных процессоров;
- выделение особенностей современных процессоров.

Содержание

Введение 3
1. История, основные виды архитектур процессоров 5
1.1. История развития современных процессоров 5
1.2. Архитектура фон Неймана 6
1.3. Конвейерная архитектура 6
1.4. Суперскалярная архитектура 7
1.5. Параллельная архитектура 9
2. Основные характеристики современных процессоров 11
3. Особенности современных процессоров 20
Заключение 25
Список литературы 27

Работа содержит 1 файл

Архитектура современных процессоров.docx

Содержание

1. История, основные виды архитектур процессоров 5

1.1. История развития современных процессоров 5

1.2. Архитектура фон Неймана 6

1.3. Конвейерная архитектура 6

1.4. Суперскалярная архитектура 7

1.5. Параллельная архитектура 9

2. Основные характеристики современных процессоров 11

3. Особенности современных процессоров 20

Список литературы 27

Введение

Процессор (или центральный процессор, ЦП) — это транзисторная микросхема, которая является главным вычислительным и управляющим элементом компьютера.

Английское название процессора - CPU (Central Processing Unit).

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

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

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

В настоящее время, микропроцессоры и процессоры вмещают в себе миллионы транзисторов и других элементов электронной логики и представляют сложнейшие высокотехнологичные электронные устройства. Персональный компьютер содержит в своем составе довольно много различных процессоров. Они входят в состав систем ввода/вывода контроллеров устройств. Каждое устройство, будь то видеокарта, системная шина или еще что-либо, обслуживается своим собственным процессором или процессорами. Однако, архитектуру и конструктивное исполнение персонального компьютера определяет процессор или процессоры, контролирующие и обслуживающие системную шину и оперативную память, и, что более важно, выполняющие объектный код программ. Такие процессоры принято называть центральными или главными процессорами (Central Point Unit — CPU). На основе архитектуры центральных процессоров строится архитектура материнских плат, и проектируется архитектура и конструкция компьютера.

Основные характеристики центрального процессора

  1. тип архитектуры или серия (Intel x86, Intel Pentium, Pentium overdrive, RISC…)
  2. система поддерживаемых команд (standard 86/88, 286, 386, 486, Pentium, MMX) и адресации (real mode, protected mode, virtual mode, EMS, paging).
  3. разрядность (бит)
  4. тактовая частота (МГц)
  5. величина питающего напряжения (Вольт)

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

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

Задачами работы являются:

- изучение истории, основных видов архитектур процессоров;

- рассмотрение основных характеристик современных процессоров;

- выделение особенностей современных процессоров.

1. История, основные виды архитектур процессоров

1.1. История развития современных процессоров

Ранние ЦП создавались в виде уникальных составных частей для уникальных, и даже единственных в своём роде, компьютерных систем. Позднее от дорогостоящего способа разработки процессоров, предназначенных для выполнения одной единственной или нескольких узкоспециализированных программ, производители компьютеров перешли к серийному изготовлению типовых классов многоцелевых процессорных устройств. Тенденция к стандартизации компьютерных комплектующих зародилась в эпоху бурного развития полупроводниковых элементов, мейнфреймов и миникомпьютеров, а с появлением интегральных схем она стала ещё более популярной. Создание микросхем позволило ещё больше увеличить сложность ЦП с одновременным уменьшением их физических размеров. Стандартизация и миниатюризация процессоров привели к глубокому проникновению основанных на них цифровых устройств в повседневную жизнь человека. Современные процессоры можно найти не только в таких высокотехнологичных устройствах, как компьютеры, но и в автомобилях, калькуляторах, мобильных телефонах и даже в детских игрушках. Чаще всего они представлены микроконтроллерами, где помимо вычислительного устройства на кристалле расположены дополнительные компоненты (память программ и данных, интерфейсы, порты ввода/вывода, таймеры, и др.). Современные вычислительные возможности микроконтроллера сравнимы с процессорами персональных ЭВМ десятилетней давности, а чаще даже значительно превосходят их показатели.

1.2. Архитектура фон Неймана

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

Д. фон Нейман придумал схему постройки компьютера в 1946 году.

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

1.3. Конвейерная архитектура

Конвейерная архитектура (pipelining) была введена в центральный процессор с целью повышения быстродействия. Обычно для выполнения каждой команды требуется осуществить некоторое количество однотипных операций, например: выборка команды из ОЗУ, дешифрация команды, адресация операнда в ОЗУ, выборка операнда из ОЗУ, выполнение команды, запись результата в ОЗУ. Каждую из этих операций сопоставляют одной ступени конвейера. Например, конвейер микропроцессора с архитектурой MIPS-I содержит четыре стадии:

получение и декодирование инструкции (Fetch)

адресация и выборка операнда из ОЗУ (Memory access)

выполнение арифметических операций (Arithmetic Operation)

сохранение результата операции (Store)

После освобождения k-й ступени конвейера она сразу приступает к работе над следующей командой. Если предположить, что каждая ступень конвейера тратит единицу времени на свою работу, то выполнение команды на конвейере длиной в n ступеней займёт n единиц времени, однако в самом оптимистичном случае результат выполнения каждой следующей команды будет получаться через каждую единицу времени.

Действительно, при отсутствии конвейера выполнение команды займёт n единиц времени (так как для выполнения команды по прежнему необходимо выполнять выборку, дешифрацию и т. д.), и для исполнения m команд понадобится единиц времени; при использовании конвейера (в самом оптимистичном случае) для выполнения m команд понадобится всего лишь n + m единиц времени.

Факторы, снижающие эффективность конвейера:

простой конвейера, когда некоторые ступени не используются (напр., адресация и выборка операнда из ОЗУ не нужны, если команда работает с регистрами);

ожидание: если следующая команда использует результат предыдущей, то последняя не может начать выполняться до выполнения первой (это преодолевается при использовании внеочередного выполнения команд, out-of-order execution);

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

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

1.4. Суперскалярная архитектура

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

Complex Instruction Set Computer — вычисления со сложным набором команд. Процессорная архитектура, основанная на усложнённом наборе команд. Типичными представителями CISC является семейство микропроцессоров Intel x86 (хотя уже много лет эти процессоры являются CISC только по внешней системе команд).

Reduced Instruction Set Computer — вычисления с сокращённым набором команд. Архитектура процессоров, построенная на основе сокращённого набора команд. Характеризуется наличием команд фиксированной длины, большого количества регистров, операций типа регистр-регистр, а также отсутствием косвенной адресации. Концепция RISC разработана Джоном Коком (John Cocke) из IBM Research, название придумано Дэвидом Паттерсоном (David Patterson).

Среди первых реализаций этой архитектуры были процессоры MIPS, PowerPC, SPARC, Alpha, PA-RISC. В мобильных устройствах широко используются ARM-процессоры.

Minimum Instruction Set Computer — вычисления с минимальным набором команд. Дальнейшее развитие идей команды Чака Нориса, который полагает, что принцип простоты, изначальный для RISC-процессоров, слишком быстро отошёл на задний план. В пылу борьбы за максимальное быстродействие, RISC догнал и перегнал многие CISC процессоры по сложности. Архитектура MISC строится на стековой вычислительной модели с ограниченным числом команд (примерно 20-30 команд

Содержат несколько процессорных ядер в одном корпусе (на одном или нескольких кристаллах).

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

Двухъядерность процессоров включает такие понятия, как наличие логических и физических ядер: например двухъядерный процессор Intel Core Duo состоит из одного физического ядра, которое в свою очередь разделено на два логических. Процессор Intel Core 2 Quad состоит из двух физических ядер, каждое из которых в свою очередь разделено на два логических ядра, что существенно влияет на скорость его работы.

10 сентября 2007 года были выпущены в продажу нативные (в виде одного кристалла) четырёхъядерные процессоры для серверов AMD Opteron, имевшие в процессе разработки кодовое название AMD Opteron Barcelona.[1] 19 ноября 2007 года вышел в продажу четырёхъядерный процессор для домашних компьютеров AMD Phenom.[2] Эти процессоры реализуют новую микроархитектуру K8L (K10).

27 сентября 2006 года Intel продемонстрировала прототип 80-ядерного процессора.[3] Предполагается, что массовое производство подобных процессоров станет возможно не раньше перехода на 32-нанометровый техпроцесс, а это в свою очередь ожидается к 2010 году.

26 октября 2009 года Tilera анонсировала[4] 100-ядерный процессор широкого назначения серии TILE-Gx. Каждое процессорное ядро представляет собой отдельный процессор с кэшем 1, 2 и 3 уровней. Ядра, память и системная шина связаны посредством технологии Mesh Network. Процессоры производятся по 40-нм нормам техпроцесса и работают на тактовой частоте 1,5 ГГц. Выпуск 100-ядерных процессоров назначен на начало 2011 года.

На данный момент массово доступны двух-, четырёх- и шестиядерные процессоры, в частности Intel Core 2 Duo на 65-нм ядре Conroe (позднее на 45-нм ядре Wolfdale) и Athlon 64 X2 на базе микроархитектуры K8. В ноябре 2006 года вышел первый четырёхъядерный процессор Intel Core 2 Quad на ядре Kentsfield, представляющий собой сборку из двух кристаллов Conroe в одном корпусе. Потомком этого процессора стал Intel Core 2 Quad на ядре Yorkfield (45 нм), архитектурно схожем с Kentsfield но имеющем больший объём кэша и рабочие частоты.

К 1-2 кварталу 2009 года обе компании обновили свои линейки четырёхъядерных процессоров. Intel представила семейство Core i7, состоящее из трёх моделей, работающих на разных частотах. Основными изюминками данного процессора является использование трёхканального контроллера памяти (типа DDR-3) и технологии эмулирования восьми ядер (полезно для некоторых специфических задач). Кроме того, благодаря общей оптимизации архитектуры удалось значительно повысить производительность процессора во многих типах задач. Слабой стороной платформы, использующей Core i7, является её чрезмерная стоимость, так как для установки данного процессора необходима дорогая материнская плата на чипсете Intel X58 и трёхканальный набор памяти типа DDR3, также имеющий на данный момент высокую стоимость.


Когда речь заходит о процессорах, какие марки вам сразу приходят на ум? Конечно, в первую очередь Intel и вновь набирающая популярность AMD. В разрезе потребительских ЦП борьба обычно происходит именно между ними, хотя и ARM-чипы в последнее время пытаются не отставать. Но это вовсе не значит, ими пространство ЦП и ограничивается.

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

M1: ARM для ПК

Но в последнее время главенство Intel и x86 на рынке ПК пошатнулось. В прошлом году Apple выпустила новые MacBook, внешне идентичные предыдущему поколению на базе Intel, но на этот раз внутри лэптопов оказались революционные чипы M1 собственного производства.

Apple M1 построен по 5-нм технологии и базируется на переработанной архитектуре ARM. С этой точки зрения, M1 имеет больше общего с процессором A14 Bionic в iPhone, чем с мобильными компонентами x86 от AMD или Intel. Такая система на кристалле компактна, экономична по энергопотреблению и не требует особого охлаждения, но при этом в некоторых применениях действительно может превзойти Intel Comet Lake.


В течение следующих нескольких лет Apple планирует полностью отказаться от чипов Intel. Конечно, учитывая, что доля masOS на рынке ПК составляет менее 7%, компоненты Apple Silicon не заменят чипы на базе x86. Но, вероятно, добавят пищи для размышлений другим производителям касательно применимости ARM на ПК. Вслед за M1, вероятно, стоит ожидать изменений в таких продуктах, как Samsung Galaxy Book S и Qualcomm 8cx.

ARM на ПК все еще только осваивается и находится на начальной стадии использования. Однако через пять лет чипы производства, отличного от Intel и AMD, могут стать обычным явлением в настольных компьютерах и ноутбуках. И в подавляющем большинстве ими могут оказаться именно чипы ARM.

Zhaoxin: китайская альтернатива AMD и Intel для нижнего ценового сегмента

Итак, ARM начинают увереннее осваивать пространство ПК и дата-центров. Но что насчет производителей x86 — кто, если не AMD и не Intel?

Лицензии x86 имеют лишь немногие компании: Intel, AMD, VIA и DMP Electronics. DMP — тайваньская компания, ответственная за линейку встраиваемых чипов Vortex86, применяемых в телевизионных приставках и в промышленном секторе. Но есть еще китайский рынок, который, к тому же, стремится получить максимальную автономию от американского — и VIA относится как раз к нему.

Когда-то в нулевых VIA производила не только процессоры, но и видеокарты, причем делала это весьма успешно. Но со временем ее сильно подвинули Intel и AMD, так что в 2013 году она совместно с муниципальным правительством Шанхая организовала компанию Zhaoxin. Владельцем Zhaoxin является правительство Китая, так что оно полностью контролирует разработку и производство чипов — которые, к слову, изготавливаются на заводах TSMC. VIA продолжает владеть миноритарным пакетом акций Zhaoxin и — что особенно важно — предоставляет лицензию x86, позволяющую Zhaoxin создавать собственные процессоры для настольных ПК.

Первые решения Zhaoxin не особенно пользовались популярностью, но начиная с модели KX-U6780A ситуация изменилась.

Звучит довольно неплохо, однако, что касается тестов, результаты не совсем плачевные, но и не самые лучшие: U6880A имеет уровень производительности, аналогичный четырехъядерному процессору AMD A10-9700 APU. Впрочем, такой мощности достаточно, чтобы обеспечить частоту кадров выше 30 FPS в таких тайтлах, как Hitman 3 и Far Cry 5.

Предполагается, что готовящаяся к выпуску серия нового поколения KX-7000 будет изготавливаться уже по 7-нм техпроцессу, базироваться на новой архитектуре и использовать DDR5 и интерфейс PCI Express 4.0. Все это открывает дверь к более высоким тактовым частотам и большей эффективности. Неизвестно, насколько это поможет улучшить производительность в сравнении с Alder Lake и Zen 4. Тем не менее, чипы Zhaoxin — неплохая и — что важно — коммерчески доступная китайская альтернатива x86, которая легко справится с большинством обычных рабочих нагрузок.


Hygon Dhyana — тот же AMD, только из Китая

Китай активно поощряет развитие собственного производства и не очень дружелюбен к импортному. Именно поэтому многим компаниям приходится крутиться, чтобы охватить и эту часть рынка. Так, в 2016 году AMD подписала договор с Hygon о предоставлении доступа к документации своей архитектуры Zen для того, чтобы наладить местное производство ЦП на ее базе.

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

При этом по Zen 2 и Zen 3 у китайцев ничего нет вовсе. Казалось бы, это должно было означать тупиковую ветвь в развитии, но нет: выход следующего поколения процессоров Hygon все-таки ожидается. Изготавливать их планируют Samsung и TSMC по 7-нм техпроцессу — специально для этого было нанято порядка 500 инженеров.

Эльбрус — процессоры отечественного производства

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


Буквально несколько месяцев назад МЦСТ представил Эльбрус 16S. Это 16-нм чип, работающий на частоте 2.0 ГГц и обеспечивающий до 1.5 терафлопс вычислений. Интересно, что Эльбрус-16S поддерживает четырехпроцессорные реализации с объемом оперативной памяти до 16 ТБ, что невозможно даже на топовом оборудовании серверов AMD и Intel.

POWER — процессоры от IBM

Когда-то еще в 2000-ых процессоры от IBM активно использовались в так называемых Power Mac. Но уже с 2005 года Apple перешла на чипы Intel — что, однако, вовсе не означает, что IBM перестала производить собственные ЦП.

Например, еще в Xbox 360 использовался процессор на базе архитектуры Power. Но даже когда в Xbox One Microsoft отказалась от чипов IBM, компания не перестала делать собственные чипы — но теперь сосредоточилась на производстве процессоров для серверов.

Один из самых быстрых суперкомпьютеров в мире — Summit в Окриджской национальной лаборатории Министерства энергетики США — основан на архитектуре IBM POWER9 и работает в связке с ускорителями NVIDIA Tesla. Чипы семейства POWER9 — это 12-ядерные ЦП, изготовленные по 14-нм техпроцессу, которые могут обрабатывать 96 потоков — по 8 на одно ядро. Для сравнения: Intel и AMD могут обрабатывать по 2 потока на ядро максимум.

В августе 2020 компания представила процессоры на базе архитектуры нового поколения, разрабатываемой уже более пяти лет, — IBM POWER10. Считается, что POWER10 может обеспечить в 3 раза большую эффективность, чем POWER9. Эти чипы базируются уже на 7-нм техпроцессе, имеют от 15 до 30 ядер SMT8, включают в себя новые ядра AES для ускорения аппаратного шифрования, поддерживают PCIe 5.0. Производством чипов займется Samsung. Их выход на рынок ожидается совсем скоро — во второй половине 2021 года.

SPARC — открытая архитектура ЦП, используемая Oracle

Архитектура SPARC — открытого типа, что означает — пользоваться ей может каждый, кто хочет заниматься разработкой процессоров. Чем и воспользовались в свое время как российский МЦСТ, так и Oracle. Причем в случае последних интересно то, что SPARC M8 аппаратно поддерживает язык SQL, а также работу с основными криптографическими протоколами: AES, SHA, DES, MD5.

SPARC M8 — это 32-ядерный 256-поточный ЦП, работающий на частоте до 5 ГГц, имеющий 64 МБ кэша L3. Все это делает чипы от Oracle лучшим решением при работе с базами данных, во многом опережающих Intel и AMD, и именно поэтому сейчас они получили широкое применение в серверах под управлением ОС Solaris.

SHAKTI: индийские чипы на открытой архитектуре

Другая открытая архитектура ЦП — RISC-V — легла в основу разработок Индийского технологического института. Проект финансирует Министерство электроники и информационных технологий Индии. Разработка процессора Shakti стартовала в 2016 году и была представлена в 2018.

Новейшие процессоры серии Shakti E построены по 180-нм техпроцессу и работают с тактовой частотой до 100 МГц. Они представляют из себя базу для встраиваемых решений типа роботизированных платформ, контроллеров для управления двигателями, датчиков и прочего. Но это не единственная разработка компании. Например, класс I представляет собой 64-разрядные ЦП с частотой от 1,5 ГГц до 2,5 ГГц, поддерживает многопоточные вычисления и предназначается для мобильных девайсов, систем хранения данных и активного сетевого оборудования. В то же время его улучшенная версия — класс S — предназначена для серверов и рабочих станций.

Институт также разрабатывает и другие экспериментальные классы. В то время как Shakti IP разрабатывается при государственном финансировании, компания InCore Semiconductors производит индивидуальные чипы Shakti для ограниченной клиентуры из частного сектора.

Конечно, пройдет еще некоторое время, прежде чем индийская полупроводниковая промышленность догонит Intel или даже Zhaoxin. Но фундамент к тому, чтобы она заняла свою нишу на рынке, определенно заложен.

Послесловие

Intel и AMD продолжают доминировать на рынке процессоров для настольных ПК, и за пределами Китая сейчас фактически единственная конкурентоспособная альтернатива — Apple M1. Однако процессорные архитектуры по всему миру не заканчиваются на x86 или ARM. Свои решения предлагают IBM и МЦСТ, Индия и Китай. Со временем рынок процессоров имеет все шансы стать еще разнообразнее — даже при условии, что лидеры останутся теми же.

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

Однородные вычислительные структуры (среды)

Однородные вычислительные структуры или среды (ОВС), как правило, относятся к типу МКМД и представляют собой регулярную решетку из однотипных процессорных элементов (ПЭ).

Каждый ПЭ обладает алгоритмически полным набором операций, а также операциями обмена или взаимодействия с другими ПЭ. Например, решетка с регулярными связями процессоров может быть такой, какая изображена на рис. 9.1.

ОВС относится к ВС с распределенной памятью. Реализуется на основе микропроцессоров.

С 1985 г. стало развиваться направление разработки транспьютеров — в интегральном исполнении соответствующих ПЭ ОВС. Т.е. ОВС в этом случае строится как транспьютерная сеть .

Транспьютер — интегрально (в одном чипе или кристалле) выполненное семейство системных компонент , в составе которых: процессор , таймер , память , каналы последовательного ввода-вывода, контроллер внешней оперативной памяти.

Транспьютер вместе с языком программирования Occam (основной язык программирования транспьютеров ) позволяет создавать ВС типа МКМД.

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

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

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

На рисунке: в первом такте на вход подаются данные задачи 2, а задача 1 решается процессорами первой строки систолической матрицы; в следующем такте задача 2 решается первым уровнем, а задача 1 — вторым уровнем процессоров, на вход подаются данные задачи 3; на третьем уровне происходит очередное аналогичное смещение и т.д. Стрелками показано возможное перемещение обрабатываемой информации.

Ранее отмечалось, что фактически конвейеры в составе многофункциональных АЛУ строятся для каждой операции отдельно. Есть конвейеры сложения, умножения и т.д.

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

Таким образом, в систолической матрице процессоров, ориентированной на применение в АЛУ , распараллеливание "в длину" успешно сочетается с распараллеливанием "в ширину", как и при решении произвольного потока задач.

С помощью ОВС реализуется и ВС типа "гиперкуб" .

Гиперкуб — пространственное обобщение рассмотренной плоской решетки, где адресация процессоров (и соответственно, блоков распределенной памяти) ставится в зависимость от структуры связей между ними. Проводится аналогия с n -мерным пространством.

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

То же самое можно обнаружить для n = 3 (рис. 9.3,б), n = 4 (рис. 9.3,в) и т.д.

Значит, в общем случае ВС типа " гиперкуб " формируется следующим образом. Ее образуют 2 n ПЭ, каждый ПЭ соединен ровно с n ПЭ. При длине адреса ПЭ, равной n , непосредственно связаны ПЭ, у которых адреса разнятся не более чем в одном разряде.

Структура типа " гиперкуб " обладает важными свойствами.

Из структуры "гиперкуб" легко получаются более простые структуры. Например, при n = 3 легко получается матричная ВС, на которой, в частности, хорошо решать задачи в конечных разностях. Как мы видели ранее, для этого удобна плоская решетка, где существуют непосредственные (не транзитные) связи между тремя ПЭ (столбец составляют только два ПЭ, поэтому нет необходимости в связях в двух направлениях), как показано на рис. 9.4. Здесь можно в дополнение к адресам ввести (временно) нумерацию ПЭ и поставить эти номера в соответствие адресам.

Процессоры образовали фрагмент плоской решетки для реализации конечно-разностного метода (метода сеток). Процессоры "прокатываются" по области, на которой строится решение, например, задачи численного интегрирования .

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

Например, предположим, что в предыдущем примере мы располагали не 3-мерным, а 6-мерным "гиперкубом". Пусть планирующая система в составе ОС из всего адресного пространства ПЭ выделила нам массив , т.е. определенное 3-хмерное подпространство всего пространства процессоров. В это же время пусть другой задаче выделен массив , т.е. четырехмерное подпространство и т.д.

Как и для других ОВС, здесь предполагается наличие распределенной памяти. При формировании общего адресного пространства примем, что старшие разряды адреса памяти совпадают с адресом ПЭ.

Понятие архитектуры процессора не имеет единого толкования, поскольку под ним понимаются две различные сущности. С программной позиции она представляет собой совместимость процессора с конкретным набором команд, его способность выполнять определённый набор кодов. То есть это способность программы, которая была собрана для архитектуры семейства x86, функционировать на всех x86-совместимых системах. На ARM системе такая программа работать не будет.

С аппаратной позиции архитектура процессора, называемая иногда микроархитектурой, является набором свойств, характерным для всего семейства процессоров и отражающим базовые особенности его внутренней организации. К примеру, микроархитектура процессоров Intel Pentium имела обозначение Р5, а процессоры Pentium 4 относились к NetBurst. После закрытия Intel микроархитектуры Р5 для производителей AMD разработала архитектуру К7 и К8 для процессоров Athlon, Athlon XP и Athlon 64 соответственно.

CISC

CISC-архитектура (Complex Instruction Set Computer) относится к процессорам с полным набором команд. Она имеет нефиксированную длину команд, отличается кодированием арифметических действий в единой команде и малым количеством регистров, большинство из которых выполняет только выделенную функцию.

CISC реализована во множестве типов микропроцессоров, таких как Pentium, которые выполняют большое количество разноформатных команд (порядка 200-300), применяя более десяти различных способов адресации. Командная система может включать несколько сотен команд различного уровня сложности или формата (от 1 до 15 байт).


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

  • x86 (IA-32, сокращенное от "Intel Architecture, 32-bit") - ;
  • x86_64 (AMD64);
  • Motorola MC680x0;
  • мейнфреймы zSeries.

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

RISC-архитектура (Reduced Instruction Set Computer) относится к процессорам с сокращённым набором команд. В ней быстродействие увеличивается посредством упрощения инструкций: за счёт того, что их декодирование становится проще, уменьшается время исполнения. Изначально RISC-процессоры не обладали инструкциями деления и умножения и не могли работать с числами, имеющими плавающую запятую. Их появление связано с тем, что в CISC достаточно много способов адресации и команд использовались крайне редко.

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

RISC процессор ARM Cortex-A15

Благодаря сокращению аппаратных средств, используемых для декодирования и реализации сложных команд, достигается значительное упрощение и снижение стоимости интегральных схем. В то же время возрастает производительность и снижается энергопотребление, что особенно актуально для мобильного сегмента. Эти же достоинства служат причиной использования во многих современных CISC-процессорах, например в последних моделях К7 и Pentium, RISC-ядра. Сложные CISC-команды заранее преобразуются в набор простых RISC-операций, которые оперативно выполняются RISC-ядром.

Характерными примерами RISC-архитектур являются:

  • PowerPC;
  • DEC Alpha;
  • ARC;
  • AMD Am29000;
  • серия архитектур ARM;
  • Atmel AVR;
  • Intel i860 и i960;
  • BlackFin;
  • MIPS;
  • PA-RISC;
  • Motorola 88000;
  • SuperH;
  • RISC-V;
  • SPARC.

RISC быстрее CISC, и даже при условии выполнения системой RISC четырёх или пяти команд вместо единственной, выполняемой CISC, RISC выигрывает в скорости, поскольку его команды выполняются в разы оперативнее. Однако CISC продолжает использоваться. Это связано с совместимостью: x86_64 продолжает лидировать в десктоп-сегменте, а поскольку старые программы могут функционировать только на x86, то и новые десктоп-системы должны быть x86(_64), чтобы дать возможность старым программам работать на новых устройствах.

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

MISC

MISC-архитектура (Minimal Instruction Set Computer) является процессором с минимальным набором команд. Она отличается ещё большей простотой и используется для ещё большего снижения энергопотребления и итоговой стоимости процессора. MISC-архитектура применяется в IoT-сегменте и компьютерах малой стоимости вроде роутеров. Первой вариацией такого процессора стал MuP21.

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

VLIW

VLIW-архитектура (Very Long Instruction Word) относится к микропроцессорам, применяющим очень длинные команды за счёт наличия нескольких вычислительных устройств. В отдельных полях команды присутствуют коды, которые обеспечивают реализацию различных операций. Одна команда в VLIW может исполнить одновременно несколько операций в разных узлах микропроцессора. Формированием таких длинных команд занимается соответствующий компилятор во время трансляции программ, которые написаны на высокоуровневом языке.

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

VLIW процессор Эльбрус-8С

VLIW схожа с архитектурой CISC, имея собственный аналог спекулятивной реализации команд. Однако спекуляция выполняется не при работе программы, а при компиляции, что делает VLIW-процессоры устойчивыми к уязвимостям Spectre и Meltdown. Компиляторы в этой архитектуре привязаны к определённым процессорам. Так, в следующем поколении наибольшая длина одной команды может из 256 бит превратиться в 512 бит, и тогда придётся выбирать между обратной совместимостью со старым типом процессора и возрастанием производительности посредством компиляции под новый процессор. И в этом случае Open Sourсe даёт возможность получить программу под определённый процессор при помощи перекомпиляции.

Развитием указанных архитектур стали различные гибридные архитектуры. К примеру, современные x86_64 процессоры CISC-совместимы, однако имеют RISC-ядро. В этих CISC-процессорах CISC-инструкции переводятся в набор RISC-команд. Вероятно, в дальнейшем разнообразие гибридных архитектур только возрастёт.

Читайте также: