Какие принципы положены в основу классификации архитектур компьютерных систем

Обновлено: 06.07.2024

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

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

Эта классификация архитектур была предложена М. Флинном в начале 60-х гг. В ее основу заложено два возможных вида параллелизма: независимость потоков заданий (команд), существу­ющих в системе, и независимость (несвязанность) данных, обраба­тываемых в каждом потоке. Классификация до настоящего времени еще не потеряла своего значения. Как и лю­бая классификация, она носит временный и условный характер. Сво­им долголетием она обязана тому, что оказалась справедливой для ВС, в которых ЭВМ и процессоры реализуют программные последо­вательные методы вычислений. С появлением систем, ориентирован­ных на потоки данных и использование ассоциативной обработки, данная классификация может быть некорректной.

Согласно этой классификации существует четыре основных ар­хитектуры ВС:

• одиночный поток команд - одиночный поток данных (ОКОД), в английском варианте

SISD - оди­ночный поток инструкций - одиночный поток данных;

• одиночный поток команд — множественный поток данных (ОКМД)

SIMD – одиночный поток инструкций – одиночный поток данных;

• множественный поток команд — одиночный поток данных (МКОД),

MISD - множественный по­ток инструкций - одиночный поток данных;

• множественный поток команд — множественный поток данных (МКМД),

MIMD - множе­ственный поток инструкций - множественный поток данных.

Коротко рассмотрим отличительные особенности каждой из архи­тектур.

Архитектура ОКОДохватывает все однопроцессорные и одно­машинные варианты систем, т.е. с одним вычислителем. Все ЭВМ классической структуры попадают в этот класс. Здесь параллелизм вычислений обеспечивается путем совмещения выполнения операций отдельными блоками АЛУ, а также параллельной работы устройств ввода-вывода информации и процессора. Закономерности организа­ции вычислительного процесса в этих структурах достаточно хоро­шо изучены.

Поток данных Результаты

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

Поток данных Результаты

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

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




Поток данных Результаты

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

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

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

В 1966 г. М.Флинном (Flynn) был предложен чрезвычайно удобный подход к классификации архитектур вычислительных систем. В его основу было положено понятие потока, под которым понимается последовательность элементов, команд или данных, обрабатываемая процессором. Соответствующая система классификации основана на рассмотрении числа потоков инструкций и потоков данных и описывает четыре архитектурных класса:

SISD (single instruction stream / single data stream ) – одиночный поток команд и одиночный поток данных . К этому классу относятся последовательные компьютерные системы, которые имеют один центральный процессор , способный обрабатывать только один поток последовательно исполняемых инструкций. В настоящее время практически все высокопроизводительные системы имеют более одного центрального процессора, однако каждый из них выполняет несвязанные потоки инструкций , что делает такие системы комплексами SISD -систем, действующих на разных пространствах данных. Для увеличения скорости обработки команд и скорости выполнения арифметических операций может применяться конвейерная обработка . В случае векторных систем векторный поток данных следует рассматривать как поток из одиночных неделимых векторов. Примерами компьютеров с архитектурой SISD могут служить большинство рабочих станций Compaq, Hewlett-Packard и Sun Microsystems.

MISD (multiple instruction stream / single data stream ) – множественный поток команд и одиночный поток данных . Теоретически в этом типе машин множество инструкций должно выполняться над единственным потоком данных . До сих пор ни одной реальной машины, попадающей в данный класс , создано не было. В качестве аналога работы такой системы, по-видимому, можно рассматривать работу банка. С любого терминала можно подать команду и что-то сделать с имеющимся банком данных. Поскольку база данных одна, а команд много, мы имеем дело с множественным потоком команд и одиночным потоком данных .

SIMD (single instruction stream / multiple data stream ) – одиночный поток команд и множественный поток данных . Эти системы обычно имеют большое количество процессоров, от 1024 до 16384, которые могут выполнять одну и ту же инструкцию относительно разных данных в жесткой конфигурации. Единственная инструкция параллельно выполняется над многими элементами данных. Примерами SIMD -машин являются системы CPP DAP , Gamma II и Quadrics Apemille. Другим подклассом SIMD -систем являются векторные компьютеры. Векторные компьютеры манипулируют массивами сходных данных подобно тому, как скалярные машины обрабатывают отдельные элементы таких массивов. Это делается за счет использования специально сконструированных векторных центральных процессоров . Когда данные обрабатываются посредством векторных модулей, результаты могут быть выданы на один, два или три такта частотогенератора (такт частотогенератора является основным временным параметром системы). При работе в векторном режиме векторные процессоры обрабатывают данные практически параллельно, что делает их в несколько раз более быстрыми, чем при работе в скалярном режиме. Примерами систем подобного типа являются, например, компьютеры Hitachi S3600.

MIMD (multiple instruction stream / multiple data stream ) – множественный поток команд и множественный поток данных . Эти машины параллельно выполняют несколько потоков инструкций над различными потоками данных . В отличие от упомянутых выше многопроцессорных SISD -машин, команды и данные связаны, потому что они представляют различные части одной и той же задачи. Например, MIMD -системы могут параллельно выполнять множество подзадач с целью сокращения времени выполнения основной задачи. Большое разнообразие попадающих в данный класс систем делает классификацию Флинна не полностью адекватной. Действительно, и четырехпроцессорный SX-5 компании NEC, и тысячепроцессорный Cray T3E попадают в этот класс . Это заставляет использовать другой подход к классификации, иначе описывающий классы компьютерных систем. Основная идея такого подхода может состоять, например, в следующем. Будем считать, что множественный поток команд может быть обработан двумя способами: либо одним конвейерным устройством обработки, работающем в режиме разделения времени для отдельных потоков, либо каждый поток обрабатывается своим собственным устройством. Первая возможность используется в MIMD -компьютерах, которые обычно называют конвейерными или векторными, вторая – в параллельных компьютерах . В основе векторных компьютеров лежит концепция конвейеризации, т.е. явного сегментирования арифметического устройства на отдельные части, каждая из которых выполняет свою подзадачу для пары операндов. В основе параллельного компьютера лежит идея использования для решения одной задачи нескольких процессоров, работающих сообща, причем процессоры могут быть как скалярными, так и векторными.

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

Базовые представления об архитектуре ЭВМ. Принципы фон Неймана. Простейшие типы архитектур. Принцип открытой архитектуры. Магистрально-модульный принцип организации ЭВМ. Классификация параллельных компьютеров. Классификация архитектур вычислительных систем: классическая архитектура, классификация Флина.

Архитектурой компьютера считается его представление на неко­тором общем уровне, включающее описание пользовательских воз­можностей программирования, системы команд, системы адреса­ции, организации памяти и т. д. Архитектура определяет принципы действия, информационные связи и взаимное соединение основных устройств компьютера: процессора, основной памяти (ОП), внешних запоминающих устройств (ВЗУ) и периферийных устройств (ПУ). Совокупность процессора и основной памяти называют центральным устройством (ЦУ) компьютера. Общность архитектуры разных компьютеров обеспечивает их со­вместимость с точки зрения пользователя.

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

В настоящее время в зависимости от организации ЦУ различают два вида архитектур ЭВМ:

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

2 Гарвардская архитектура.

Принципы (архитектура) фон Неймана

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

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

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

Если после выполнения команды следует перейти не к следую­щей, а к какой-то другой, используются команды условного или без­условного переходов (ветвления), которые заносят в счетчик команд номер ячейки памяти, содержащей следующую команду. Выборка команд программы из памяти прекращается после достижения и выполнения команды «стоп».

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

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

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

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

Структурные схемы современных ЭВМ

Если абстрагироваться от подробностей, то современные ЭВМ можно разделить на два типа:

1. Большие (универсальные) ЭВМ.

2 .Персональные компьютеры.

Собственно обработка данных производится процессором, содержащим арифметико-логическое устройство (АЛУ) и устройство управления (УУ). В этих ЭВМ возникает проблема организации взаимодействия быстродействующего процессора с большим числом сравнительно медленно действующих периферийных устройств. Данная проблема решается при помощи специализированных процессоров ввода-вывода (каналов ввода-вывода), которые подразделяются на два вида:

1. Мультиплексные каналы.

2. Селекторные каналы.

Мультиплексный канал обслуживает несколько одновременно работающих с небольшой скоростью ПУ (печать, сканер и т.д.)

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

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

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

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

Принципы фон Неймана

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

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

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

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

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

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

Как взаимодействуют между собой устройства, представляющие основные логические компоненты ЭВМ, определяется типом архитектуры. Основные классические типы архитектур:

Классическая архитектура (архитектура фон Неймана) — одно арифметико-логическое устройство (АЛУ), через которое проходит поток данных, и одно устройство управления (УУ), через которое проходит поток команд — программа. Это однопроцессорный компьютер.

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

Архитектура типа «звезда» предполагает, что ЦП соединяется непосредственно с внешними устройствами и управляет их работой. Каждое устройство может связываться с любым другим. Этот способ применялся в двух первых поколениях машин, но с возрастанием числа устройств машины такую организацию становится очень сложно реализовать

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

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

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

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

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

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

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

Выбор абонента по обмену данными производит процессор, который формирует код адреса данного устройства, а для ОЗУ - код адреса ячейки памяти. Код адреса передается по адресной шине, причем сигналы передаются в одном направлении, от процессора к устройствам, т. е. эта шина является однонаправленной.

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

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

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

В 1966 г. М.Флинном (Flynn) был предложен чрезвычайно удобный подход к классификации архитектур вычислительных систем. В его основу было положено понятие потока, под которым понимается последовательность элементов, команд или данных, обрабатываемая процессором. Соответствующая система классификации основана на рассмотрении числа потоков инструкций и потоков данных и описывает четыре архитектурных класса:

SISD = Single Instruction Single Data

MISD = Multiple Instruction Single Data

SIMD = Single Instruction Multiple Data

MIMD = Multiple Instruction Multiple Data

SISD (single instruction stream / single data stream) – одиночный поток команд и одиночный поток данных. К этому классу относятся последовательные компьютерные системы, которые имеют один центральный процессор, способный обрабатывать только один поток последовательно исполняемых инструкций. В настоящее время практически все высокопроизводительные системы имеют более одного центрального процессора, однако каждый из них выполняет несвязанные потоки инструкций, что делает такие системы комплексами SISD-систем, действующих на разных пространствах данных. Для увеличения скорости обработки команд и скорости выполнения арифметических операций может применяться конвейерная обработка. В случае векторных систем векторный поток данных следует рассматривать как поток из одиночных неделимых векторов.

MISD (multiple instruction stream / single data stream) – множественный поток команд и одиночный поток данных. Теоретически в этом типе машин множество инструкций должно выполняться над единственным потоком данных. До сих пор ни одной реальной машины, попадающей в данный класс, создано не было.

SIMD (single instruction stream / multiple data stream) – одиночный поток команд и множественный поток данных. Эти системы обычно имеют большое количество процессоров, от 1024 до 16384, которые могут выполнять одну и ту же инструкцию относительно разных данных в жесткой конфигурации. Единственная инструкция параллельно выполняется над многими элементами данных.

MIMD (multiple instruction stream / multiple data stream) – множественный поток команд и множественный поток данных. Эти машины параллельно выполняют несколько потоков инструкций над различными потоками данных. В отличие от упомянутых выше многопроцессорных SISD-машин, команды и данные связаны, потому что они представляют различные части одной и той же задачи. Например, MIMD-системы могут параллельно выполнять множество подзадач с целью сокращения времени выполнения основной задачи. Большое разнообразие попадающих в данный класс систем делает классификацию Флинна не полностью адекватной. Действительно, и четырехпроцессорный SX-5 компании NEC, и тысячепроцессорный Cray T3E попадают в этот класс.


Mind Map: Классификация архитектур вычислительных систем

Классификация архитектур вычислительных систем создатель Алина Билыч

1. Классификация Флинна (Классификация базируется на понятии потока - последовательности элементов обрабатываемых процессором)

1.1. Конвейерные машины

1.1.1. MISD - множественный поток команд и одиночный поток данных.

1.2. Однопроцессорные последовательные компьютеры

1.2.1. SISD - одиночный поток команд и одиночный поток данных

1.3. Мультипроцессорные системы

1.3.1. MIMD - множественный поток команд и множественный поток данных.

1.4. Матрицы процессоров

1.4.1. SIMD - одиночный поток команд и множественный поток данных.

1.5. Дополнения Ванга и Бриггса

1.5.1. Класс SISD разбивается на два подкласса

1.5.1.1. архитектуры с единственным функциональным устройством, например, PDP-11;

1.5.1.2. архитектуры, имеющие в своем составе несколько функциональных устройств - CDC 6600, CRAY-1, FPS AP-120B, CDC Cyber 205, FACOM 200.

1.5.2. В классе MIMD авторы различают

1.5.2.1. вычислительные системы со слабой связью между процессорами, к которым они относят все системы с распределенной памятью, например, Cosmic Cube,

1.5.2.2. и вычислительные системы с сильной связью (системы с общей памятью), куда попадают такие компьютеры, как C.mmp, BBN Butterfly, CRAY Y-MP, Denelcor HEP.

1.5.3. В класс SIMD вводится два подкласса

1.5.3.1. архитектуры с пословно-последовательной обработкой информации - ILLIAC IV, PEPE, BSP;

1.5.3.2. архитектуры с разрядно-последовательной обработкой - STARAN, ICL DAP.

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

2. Классификация Фенга

2.1. Разрядно-последовательные пословно-последовательные (n=m=1).

2.1.1. В каждый момент времени такие компьютеры обрабатывают только один двоичный разряд. MINIMA (1,1)

2.2. Разрядно-параллельные пословно-параллельные (n > 1, m > 1).

2.2.1. Большая часть существующих параллельных вычислительных систем BBN Butterfly (32, 256) , ILLIAC IV (64, 64).

2.3. Разрядно-параллельные пословно-последовательные (n > 1 , m = 1).

2.3.1. Последовательные компьютеры : IBM 701 (36,1) ; VAX 11/780 (32,1).

2.4. Разрядно-последовательные пословно-параллельные (n = 1 , m > 1).

2.4.1. Много одноразрядных процессоров, каждый независимо обрабатывает данные. STARAN (1, 256) и MPP (1,16384)

2.5. Классификация вычислительных систем на основе двух простых характеристик

2.5.1. Число бит n в машинном слове, обрабатываемых параллельно при выполнении машинных инструкций

2.5.2. числу слов m, обрабатываемых одновременно данной вычислительной системой

2.6. Недостатки

2.6.1. процессорные матрицы = векторно-конвейерные = многопроцессорные системами

2.6.2. не исследуется за счет чего можно одновременно обрабатывать более одного слова.

2.7. Достоинства

2.7.1. введение единой числовой метрики для всех типов компьютеров

3. Классификация Шора

3.1. Машина I

3.1.1. это вычислительная система, которая содержит устройство управления, арифметико-логическое устройство, память команд и память данных с пословной выборкой. Считывание данных осуществляется выборкой всех разрядов некоторого слова для их параллельной обработки в арифметико-логическом устройстве.

3.1.2. классические последовательные машины

3.1.3. конвейерные скалярные машины

3.1.4. векторно-конвейерные машины

3.2. Машина II

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

3.2.2. ассоциативные компьютеры

3.2.3. Матричные системы

3.3. Если объединить принципы построения машин I и II, то получим машину III

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

3.3.2. Вычислительные системы семейства OMEN-60 фирмы Sanders Associates, построенные в прямом соответствии с концепцией ортогональной машины.

3.4. Если в машине I увеличить число пар арифметико-логическое устройство <==> память данных (иногда эту пару называют процессорным элементом) то получим машину IV.

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

3.4.2. Такую структуру имеет вычислительная система PEPE, объединяющая 288 процессорных элементов.

3.5. Если ввести непосредственные линейные связи между соседними процессорными элементами машины IV, например в виде матричной конфигурации, то получим схему машины V

3.5.1. Любой процессорный элемент теперь может обращаться к данным как в своей памяти, так и в памяти непосредственных соседей.

3.5.2. Классический матричный компьютер ILLIAC IV

3.6. Машина VI

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

3.6.2. сложные ассоциативные процессоры

3.6.3. простые ассоциативные запоминающие устройства

4. Классификация Хендлера

4.1. Три уровня обработки данных в процессе выполнения программ

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

4.1.2. уровень выполнения команд - арифметико-логическое устройство компьютера (АЛУ) исполняет команду, выданную ему устройством управления;

4.1.3. уровень битовой обработки - все элементарные логические схемы процессора (ЭЛС) разбиваются на группы, необходимые для выполнения операций над одним двоичным разрядом.

4.2. основа классификации - явное описание возможностей параллельной и конвейерной обработки информации вычислительной системой

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

4.4. Тройка для описания вычислительной системы C

4.4.1.1. k - число процессоров (каждый со своим УУ), работающих параллельно

4.4.1.3. d - число АЛУ в каждом процессоре, работающих параллельно

4.4.1.5. w - число разрядов в слове, обрабатываемых в АЛУ параллельно

5. Классификация Хокни (систематизации компьютеров, попадающих в класс MIMD по систематике Флинна. )

5.1. Множественный поток команд может быть обработан двумя способами:

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

5.1.2. -каждый поток обрабатывается своим собственным устройством

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

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

5.2. Машины с переключателем

5.2.1. -память распределена среди процессоров как их локальная память

5.2.2. -память это разделяемый ресурс, доступный всем процессорам через переключатель

5.2.3. -гибридные ВС

5.3. Машины с сетевой структурой систематизируются в соответствии с топологией сети

5.3.1. -звездообразная сеть (lCAP)

5.3.2. -гиперкубы (NCube, Intel iPCS)

6. Классификация Джонсона (классификацию MIMD архитектур на основе структуры памяти и реализации механизма взаимодействия и синхронизации между процессорами)

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

6.1.1. системы с общей памятью, прямо адресуемой всеми процессорами

6.1.2. системы с распределенной памятью, каждая часть которой доступна только одному процессору.

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

6.2.1. через разделяемые переменные

6.3. Четыре класса MIMD архитектур, уточняющих систематику Флинна

6.3.1. общая память - разделяемые переменные (GMSV);

6.3.2. распределенная память - разделяемые переменные (DMSV);

6.4. Вычислительные системы, использующие общую разделяемую память для межпроцессорного взаимодействия и синхронизации - системами с разделяемой памятью, например, CRAY Y-MP (I)

6.5. Системы с распределенной памятью и синхронизацией через разделяемые переменные, как в BBN Butterfly, называются гибридными архитектурами (II)

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

7. Классификация Базу

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

7.1.1. Систолические деревья, введенные Кунгом для вычисления арифметических выражений могут быть описаны как OCPaS либо OCPaA

7.1.2. IBM 360/91, Amdahl 470/6 и многие современные RISC процессоры, разбивающие исполнение всех инструкций на несколько этапов, в данной классификации имеют обозначение OPPiS

7.1.3. Data-flow компьютеры, в зависимости от особенностей реализации, могут быть описаны либо как OPPiA, либо OPPaA.

8. Классификация Кришнамарфи

8.1. для классификации параллельных вычислительных систем предлагает использовать четыре характеристики

8.1.1. степень гранулярности;

8.1.2. способ реализации параллелизма;

8.1.3. топология и природа связи процессоров;

8.1.4. способ управления процессорами.

8.2. Векторно-конвейерные компьютеры:

8.2.1. гранулярность - на уровне данных;

8.2.2. реализация параллелизма - аппаратная;

8.2.3. связь процессоров - простая топология со средней связностью;

8.2.4. способ управления - синхроннй.

9. Классификация Скилликорна

9.1. Классификация состоит из двух уровней. На первом уровне она проводится на основе восьми характеристик:

9.1.1. тип переключателя между DP и DM;

9.1.2. количество процессоров команд (IP);

9.1.3. число запоминающих устройств (модулей памяти) команд (IM);

9.1.4. тип переключателя между IP и IM;

9.1.5. количество процессоров данных (DP);

9.1.6. число запоминающих устройств (модулей памяти) данных (DM);

9.1.7. тип переключателя между IP и DP;

9.1.8. тип переключателя между DP и DP.

9.2. На втором уровне классификации Д.Скилликорн просто уточняет описание, сделанное на первом уровне, добавляя возможность конвейерной обработки в процессорах команд и данных.

9.3. Основа - абстрактная структура , состоящая из четырех компонент :

9.3.1. процессор команд (IP) - интерипретатор команд;

9.3.2. процессор данных (DP) - преобразователь данных, в соответствии с арифметическими операциями;

9.3.3. иерархия памяти (IM,DM) - запоминающее устройство;

9.3.4. переключатель - связь между процессорами и памятью.

10. Классификация Дазгупты

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

10.1.1. Предлагается следующая иерархия категорий

10.1.1.1. Самый низкий уровень - категория КЭШ-процессора с памятью MCP (memory-cache processor). Классами этой категории являются всевозможные различные архитектуры. Соответствующую архитектуре формулу можно рассматривать как имя класса.

10.1.1.2. Более высокий уровень - категория КЭШ-процессора (СP). Множество классов этой категории получается путем удаления из классов категории CP составляющих, описывающих память.

10.1.1.3. Самый высокий уровень - категория процессора (P). Классы получают удалением кэш-составляющих из классов категории CP.

10.2. Базовые элементы архитектуры:

10.2.1. iM - память с расслоением - память, из которой можно выбрать несколько единиц информации за один цикл памяти;

10.2.2. sM - простая память - память, из которой можно выбрать единицу информации за цикл памяти;

10.2.3. C - программируемая или непрограммируемая кэш-память. Буферные регистры, подобные регистрам CRAY-1, также описываются, как кэш-память;

10.2.4. sI - простой (неконвейерный) процессор для подготовки команды к исполнению;

10.2.5. pI - конвейерный процессор для подготовки команды к исполнению;

10.2.6. sX - простой процессор для исполнения команды;

10.2.7. pX - конвейерный процессор для исполнения команды.

11. Классификация Дункана

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

11.2. Требование Дункана - не рассматривать компьютеры, использующие только параллелизм низкого уровня, наравне со всеми остальными

11.2.1. Во-первых, практически все существующие системы будут классифицированны как "параллельные" (что заведомо не будет позитивным фактором для классификации)

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

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