|
Новосибирский государственный университет
|
|
Классификация Скилликорна
Классификация Скилликорна: описание архитектуры компьютера как абстрактной структуры, состоящей из компонент четырех типов (процессор команд, процессор данных, иерархия памяти, коммутатор).
В 1989 году с целью расширить классификацию Флинна и, тем самым, преодолеть ее недостатки Д.Скилликорн разработал подход, пригодный для описания свойств многопроцессорных систем и некоторых нетрадиционных архитектур, в частности dataflow и reduction machine.
Скилликорн предлагает рассматривать архитектуру любого компьютера, как абстрактную структуру, состоящую из четырех компонент:
- процессор команд (IP - Instruction Processor) - функциональное устройство, работающее, как интерпретатор команд; в системе, вообще говоря, может отсутствовать;
- процессор данных (DP - Data Processor) - функциональное устройство, работающее как преобразователь данных, в соответствии с арифметическими операциями;
- иерархия памяти (IM - Instruction Memory, DM - Data Memory) - запоминающее устройство, в котором хранятся данные и команды, пересылаемые между процессорами;
- переключатель - абстрактное устройство, обеспечивающее связь между процессорами и памятью.
Функции процессора команд во многом схожи с функциями устройств управления последовательных машин и, согласно Скилликорну, сводятся к следующим:- на основе своего состояния и полученной от DP информации IP определяет адрес команды, которая будет выполняться следующей;
- осуществляет доступ к IM для выборки команды;
- получает и декодирует выбранную команду;
- сообщает DP команду, которую надо выполнить;
- определяет адреса операндов и посылает их в DP;
- получает от DP информацию о результате выполнения команды.
Функции процессора данных делают его, во многом, похожим на арифметическое устройство традиционных процессоров:- DP получает от IP команду, которую надо выполнить;
- получает от IP адреса операндов;
- выбирает операнды из DM;
- выполняет команду;
- запоминает результат в DM;
- возвращает в IP информацию о состоянии после выполнения команды.
Это один из самых простых видов архитектуры, не содержащих переключателей. Для описания параллельных ВС автор зафиксировал четыре типа переключателей, без какой-либо явной связи с типом устройств, которые они соединяют:- 1-1 - переключатель такого типа связывает пару функциональных устройств;
- n-n - переключатель связывает i-е устройство из одного множества устройств с i-м устройством из другого множества, т.е. фиксирует попарную связь;
- 1-n - переключатель соединяет одно выделенное устройство со всеми функциональными устройствами из некоторого набора;
- n×n - каждое функциональное устройство одного множества может быть связано с любым устройством другого множества, и наоборот.
Примеров подобных переключателей можно привести очень много. Так, все матричные процессоры имеют переключатель типа 1-n для связи единственного процессора команд со всеми процессорами данных. В компьютерах семейства Connection Machine каждый процессор данных имеет свою локальную память, следовательно, связь будет описываться как n-n. В тоже время, каждый процессор команд может связаться с любым другим процессором, поэтому данная связь будет описана как n×n.
Классификация Скилликорна состоит из двух уровней. На первом уровне она проводится на основе восьми характеристик:- количество процессоров команд (IP);
- число запоминающих устройств (модулей памяти) команд (IM);
- тип переключателя между IP и IM;
- количество процессоров данных (DP);
- число запоминающих устройств (модулей памяти) данных (DM);
- тип переключателя между DP и DM;
- тип переключателя между IP и DP;
- тип переключателя между DP и DP.
В терминах данных характеристик компьютер Connection Machine 2 можно описать: (1, 1, 1-1, n, n, n -n, 1-n, n×n).
Для сильно связанных мультипроцессоров (BBN Butterfly, C.mmp) ситуация иная. Такие системы состоят из множества процессоров, соединенных с модулями памяти с помощью динамического переключателя. Задержка при доступе любого процессора к любому модулю памяти примерно одинакова. Связь и синхронизация между процессорами осуществляется через общие (разделяемые) переменные. Описание таких машин в рамках данной классификации выглядит так: (n, n, n -n, n, n, n×n, n-n, нет).
Используя введенные характеристики и предполагая, что рассмотрение количественных характеристик можно ограничить только тремя возможными вариантами значений: 0, 1 и n (т.е. больше одного), можно получить 28 классов архитектур.
В классах 1-5 находятся компьютеры типа dataflow и reduction, не имеющие процессоров команд в обычном понимании этого слова. Класс 6 это классическая фон-неймановская последовательная машина. Все разновидности матричных процессоров содержатся в классах 7-10. Классы 11 и 12 отвечают компьютерам типа MISD классификации Флинна и на настоящий момент, по мнению автора, пусты. Классы с 13-го по 28-й занимают всевозможные варианты мультипроцессоров, причем в 13-20 классах находятся машины с достаточно привычной архитектурой, в то время, как архитектура классов 21-28 пока выглядит экзотично.
На втором уровне классификации Скилликорн просто уточняет описание, сделанное на первом уровне, добавляя возможность конвейерной обработки в процессорах команд и данных.
Автор сформулировал три цели, которым должна служить хорошо построенная классификация:- облегчать понимание того, что достигнуто на сегодняшний день в области архитектур ВС, и какие архитектуры имеют лучшие перспективы в будущем;
- подсказывать новые пути организации архитектур - речь идет о тех классах, которые в настоящее время по разным причинам пусты;
- показывать, за счет каких структурных особенностей достигается увеличение производительности различных ВС; с этой точки зрения, классификация может служить моделью для анализа производительности.
Литература- Skillicorn D. A Taxonomy for Computer Architectures // Computer. - 1988. - V.21, N 11. - P. 46-57.
- http://parallel.ru/computers/taxonomy
- Воеводин Вл.В. Методы описания и классификации архитектур вычислительных систем / Вл.В. Воеводин, А.П. Капитонова. - М.:Издательство МГУ, 1994.
См. дополнительно: Классификация Скилликорна Ключевые термины, связанные с термином "классификация скилликорна":
- Классификация Дазгупты
Литература
Дополнительная:
- Воеводин Вл.В. Методы описания и классификации архитектур вычислительных систем / Вл.В. Воеводин, А.П. Капитонова. - М.:Издательство МГУ, 1994. - 79 с. - ISBN 5-211-03355-8.
Ключевые термины: архитектура вычислительной машины; процессор; уровни параллелизма; классификация флинна;
|А.М.Федотов|
|Преподавание|
|Современные проблемы
информатики|
|Информатика|
|Ключевые термины|
|Персоны|
© 2007-2024, Новосибирский государственный университет, Новосибирск
© 1998-2024, Институт вычислительных технологий СО РАН, Новосибирск
© 1998-2024, Федотов А.М.
Дата последней модификации:
25.11.2013