Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
1. Основные понятия в области вычислительных систем
1.1 Введение. Основные определения
Термин «Вычислительная система» (ВС) появился в 60-е годы, когда
понятие «Электронная вычислительная машина» (ЭВМ) уже не отражало с
одной стороны всего многообразия средств вычислительной техники, а с
другой стороны не различало их по степени сложности. Поэтому интуитивно
можно считать, что вычислительная система - это объект, относящийся к
средствам вычислительной техники (СВТ) и имеющий более сложную
организацию, чем ЭВМ. К сожалению, до настоящего времени скольконибудь удовлетворяющего всех разработчиков СВТ определения ВС не
установлено. Однако существует необходимость хотя бы с методической
точки зрения различать объекты, относящиеся к понятию ЭВМ и к понятию
ВС, при этом понимая, что чѐткой грани, разделяющей эти объекты провести
невозможно.
Попытаемся внести смысловой оттенок в определение ВС через
разъяснение нашего понимания таких терминов, как «система», «структура»,
«архитектура», толкование которых само по себе вызывает много споров у
специалистов по вычислительной технике. В данной области техники термин
«система» используется чрезвычайно широко и имеет множество смысловых
оттенков. Мы будем понимать под системой объект, представляющий собой
единое целое, предназначенный для выполнения определенных функций и
состоящий из множества связанных между собой элементов. Под элементами
могут пониматься как аппаратные, так и программные средства.
Следовательно, такие объекты, как ЭВМ и ВС, являются системами,
предназначенными для автоматизированной обработки данных и
представляющие собой совокупность программных и аппаратных средств.
Для их обозначения используется понятие «система обработки данных»
(СОД). На рис. 1.1 представлены виды систем обработки данных, в том числе
ВМ (синоним ЭВМ) – вычислительная машина, ВК – вычислительный
комплекс.
СОД
ВМ (ЭВМ)
ВС
ВК
Вычислительная
сеть
Рис. 1.1 Виды систем обработки данных
Структура СОД обычно определяется в виде совокупности трѐх
категорий: множество аппаратных элементов, входящих в состав системы,
множество связей, объединяющих эти элементы, и алгоритм
функционирования системы. В контексте проектирования аппаратных
4
средств вычислительной системы термин «структура» используется для
описания принципа действия, конфигурации и взаимного соединения
устройств системы.
Архитектура СОД может быть определена как совокупность тоже трѐх
категорий: сущность информационных потоков, например, существование
двух потоков – команд и данных, характер взаимодействия
информационных потоков, например, жесткая последовательность команд
управляет обработкой данных, способ обработки данных, например,
последовательный или параллельный. Следовательно, понятие архитектуры
отображает обобщенное определение системы с точки зрения существующих
в ней информационных потоков и способа их обработки.
Общность архитектуры разных ЭВМ и ВС обеспечивает их
совместимость с точки зрения пользователя. Реализация конкретной
архитектуры ЭВМ и ВС может быть различной: использование разных по
физической природе элементов, применение оригинальных решений при
разработке устройств системы, еѐ структуры, что приводит, например, к
различию систем по стоимости, производительности, но не меняет принципы
обработки данных. В настоящее время можно выделить три вида понятий,
связанных с термином «архитектура»: фоннеймановская архитектура,
усовершенствованная фоннеймановская архитектура, нетрадиционная
архитектура.
Первый вид определяет класс объектов с архитектурой, которая
основана на использовании двух информационных потоков - команд и
данных, с чисто последовательным характером обработки данных под
управлением заранее составленной последовательности команд (программы).
Понятие «усовершенствованная фоннеймановская архитектура» связано с
реализацией различных методов распараллеливания потока обработки
данных с целью увеличения производительности системы, но не нарушая
принципа программного управления. В этом случае можно говорить о том,
что этот вид архитектуры отличается от первого только увеличением числа
потоков команд и данных в любых сочетаниях. Естественно, в зависимости
от числа потоков команд и данных, примененного метода распараллеливания
и характера управления множествами потоков «усовершенствование»
архитектуры может идти различными путями, приводя к появлению новых
типов архитектур в рамках данного вида.
Понятие «нетрадиционная архитектура» связано, в частности, с так
называемыми потоковыми машинами, которые отличаются новым
принципом управления вычислительным процессом и разделяются на два
типа архитектур: управляемые потоком данных (нет счетчика команд;
устройство управления сложное, обычно выполненное на АЗУ; программы
нет как таковой) и управляемые запросами. При этом, по аналогии с
фоннеймановской архитектурой, организация вычислений может быть
«последовательной» (здесь этот термин используется только с точки зрения
аналогии, так как по своей сути потоковые машины строятся с
5
использованием всех видов параллелизма, поэтому последовательные
потоковые машины можно рассматривать как вырожденный случай) и
параллельной.
Таким образом, определяя понятие «вычислительная система» с точки
зрения архитектуры, можно сделать вывод о том, что этот класс СОД должен
обладать либо усовершенствованной фоннеймановской архитектурой, либо
нетрадиционной с параллельной организацией вычислений. При этом ЭВМ
обладают либо фоннеймановской архитектурой, либо нетрадиционной с
последовательной организацией вычислительного процесса.
Для того, чтобы дать более точное определение ЭВМ и ВС,
необходимо определить их место среди таких объектов СОД, как ВК и
вычислительная сеть. Для этого дадим следующие определения, введѐнные
профессором кафедры ВМСиС Дерюгиным А.А [1] при участии автора.
1.Процессор, центральный процессор, центральное процессорное
устройство (обозначение на схемах P,CP,CPU) – основная часть ЭВМ,
предназначенная для обработки данных и управления этой обработкой в
соответствии с последовательностью команд программы. Такой процессор по
умолчанию является скалярным. В состав процессора входят:
а) арифметико-логическое устройство (ALU), состоящее из одного или
нескольких блоков обработки числовых данных с фиксированной и
плавающей запятой, блока логических операций, сдвига данных и др.;
б) устройства управления (CU – control unit), содержащее счетчик
команд (IP – instruction pointer), регистр команд (инструкций,RGI), часто
буфер команд, блок преобразования кода операций в коды микроопераций,
т.е. в последовательности управляющих сигналов, соответствующих
микрооперациям, как для управления работой процессора, так и для
управления другими устройствами ЭВМ;
в) блок регистров, включая адресуемые регистры общего назначения
(регистровую память RGM), регистры управления, в том числе регистр
флагов (признаков) и др., а также неадресуемые регистры (дескрипторы и
др.);
г) интерфейсный блок (IU), предназначенный для реализации связей
процессора с другими устройствами ЭВМ. В состав этого блока входит, в
частности, узел управления памятью (менеджер памяти), предназначенный
для формирования из кода адреса операнда, указанного в команде,
физического адреса ячейки памяти, в которой хранится требуемый операнд.
1.1.
1.2.
Виды процессоров
Суперскалярный процессор (SSP) – процессор, допускающий
параллельное (одновременное) выполнение нескольких команд
программы. Такой процессор может содержать несколько конвейеров
обработки данных.
Векторный процессор (VP) – процессор, содержащий специальные
блоки обработки данных, предназначенные для выполнения, как
6
скалярных операций, так и операций над векторами в соответствии с
векторными командами, входящими в состав системы команд
процессора, а также блок векторных регистров (VRG).
1.3. Матричный процессор (MP) – многопроцессорное устройство,
предназначенное для выполнения операций над векторами и
матрицами.
1.4. Ассоциативный процессор (AP) – специализированный процессор,
реализованный на базе ассоциативного запоминающего устройства и
предназначенный для одновременного выполнения операций над
массивами данных последовательно по разрядам этих данных.
2. Кэш-память (CM) – быстродействующая буферная память
небольшой ѐмкости, в которой хранятся команды и данные, необходимые
для использования в течение текущего интервала времени. Содержимое
CM дублирует содержимое основной (большой) памяти (BM – base
memory) и меняется в процессе работы ЭВМ автоматически аппаратным
способом. Обмен данными между CM и BM производится строками
(блоками). Обычно это 16…64 байта. В состав CM входят: собственно
кэш-память и местное устройство управления, включая таблицу, в котрой
хранятся адреса тех блоков, которые находятся в кэш-памяти в данный
момент. В зависимости от «удаления» от процессора различают CM
первого и второго уровней (L1и L2, L –level). Кэш-память первогог
уровня может быть общей для команд и данных или раздельной для
команд и данных. Кэш-память второго уровня, как правило, общая для
команд и данных.
3. Процессорный модуль (PM), вычислительный модуль –
устройство, содержащее процессор, кэш-память или, например,
локальную память (LM).
4. Внутренняя память (IM – internal memory) – память,
предназначенная для приѐма, хранения и выдачи информации,
непосредственно используемой (адресуемой) процессором. IM _ это
RGM+CM+BM.
5. Внешняя память (EM – external memory) – память,
предназначенная для длительного хранения больших объѐмов
информации. Для использования этой информации еѐ необходимо
переместить во внутреннюю память средствами операционной системы.
Внутренняя память является буферной памятью по отношению к
внешней памяти.
6. Многопроцессорный модуль (MPM) – функциональное
устройство, содержащее вычислительные модули, соединѐнные с кэшпамятью второго уровня. Из PM и MPM могут быть построены
многопроцессорные вычислительные системы (МВС) с двухуровневой
или трѐхуровневой общей внутренней разделяемой памятью.
7
7. Общая или разделяемая память МВС – это внутренняя память, к
ячейкам которой может обращаться любой процессор, входящий в состав
МВС.
8. Локальная память (LM) процессора, входящего в состав МВС, это внутренняя память, к ячейкам которой может обращаться только
данный процессор. Адресные пространства для общей и локальной
памятей не пересекаются.
9. Коммутатор (SW) МВС – аппаратные средства, обеспечивающие
взаимодействие между компонентами МВС. В состав коммутатора в
явном или неявном виде входит арбитр.
В состав СОД могут входить так называемые вспомогательные
процессоры. К ним относятся управляющие процессоры,
обеспечивающие реализацию функций, служебных по отношению к
самой СОД, сервисные процессоры для выполнения функций
контроля и диагностики СОД, процессоры ввода-вывода,
процессоры телеобработки данных и т.д.
Совокупность любых процессоров любого количества, оперативной
памяти и каналов ввода-вывода назовѐм центральной частью (ЦЧ) СОД.
СОД, включающую в себя одну центральную часть, в состав которой
входит один процессор обработки данных любого вида и возможно один или
несколько вспомогательных процессоров р, обеспечивающих максимально
эффективную работу первого, а также периферийные устройства, назовѐм
электронной вычислительной машиной (ЭВМ).
СОД, включающую в себя одну ЦЧ, но имеющую более одного
процессора обработки данных любого вида, периферийные устройства,
назовѐм вычислительной системой (ВС).
СОД, включающую в себя несколько ЦЧ, объединенных по каналам
ввода-вывода, и общие для них периферийные устройства, назовѐм
вычислительным комплексом (ВК).
Множество ЭВМ, ВС и ВК объединѐнных линиями связи, назовѐм
вычислительной сетью.
Настоящее учебное пособие посвящено, в основном, отдельным
вопросам, связанным с вычислительными системами с усовершенствованной
фоннеймановской архитектурой. При анализе таких систем для
количественной оценки их эффективности обычно используется такой
показатель, как производительность. Приведем наше толкование данного
показателя. При этом будем различать два взаимосвязанных вопроса: какое
качество системы отображает это понятие и в чѐм можно измерить это
качество. Отвечая на эти вопросы, можно определить производительность
как характеристику вычислительной мощности системы, определяющую
количество выполненной работы за единицу времени. Таким образом, если
имеем в виду вычислительную систему, то под работой можно понимать
решение задач. В этом случае производительность есть число задач,
выполненных
системой
в
единицу
времени.
Следовательно,
8
производительность системы будет различной для задач различных классов.
Существует большое число методов оценки производительности ВС,
связанных с тем или иным классом задач, однако главные из них основаны на
использовании специально созданных тестов. Для того, чтобы оценить
производительность системы, не привязываясь к классу задач, иногда
используют такой показатель, как быстродействие. Хотя этот показатель
отражает только техническую сторону вычислительной системы, а иногда
характеристику только основного элемента системы - процессора, он
достаточно широко распространен. Если в первых ЭВМ быстродействие
измерялось в количестве коротких операций в секунду, например, типа
«регистр-регистр» или «сложение с фиксированной точкой», то современные
ЭВМ и ВС характеризуются числом выполняемых операций с плавающей
точкой в секунду, которые получили название флопов (FLOPS). Для
специализированных ВС используются другие единицы измерения, например
характерные для них операции, транзакции и т.д.
Данный курс лекций поможет студентам ответить на такие вопросы
как: зачем нужны ВС всѐ большей и большей производительности, как
видоизменяются структура и архитектура процессора и самой ВС с целью
повышения эффективности использования их аппаратных средств, какими
свойствами должно обладать их программное обеспечение, какие новые идеи
существуют в области разработки высокопроизводительных вычислительных
систем. И как показывает опыт развития средств вычислительной техники,
вопросов, на которые пока нет ответов, появляется всѐ больше и больше.