ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.12.2021
Просмотров: 5275
Скачиваний: 8
Глава 3. Функциональная организация фон-неймановской ВМ
На языке микроопераций это можно записать следующим образом:
СКРДП: РДП := СК; -1УС: УС := УС -1 <3апись в стек содержимого СК>;
УСРАП: РАП := УС; ЗпЗУ, СКРДП: ОП[(УС)] := РДП :=СК;
АккРДП: РДП := Акк; -1УС: УС := УС - 1 <3апись в стек содержимого Акк>;
УСРАП: РАП := УС; ЗпЗУ, АккРДП: ОП[(УС)] := РДП := Акк;
РПрзРДП: РДП := РПрз; -1УС: УС := УС -1 <3апись в стек содержимого РПрз>;
УСРАП: РАП := УС; ЗпЗУ, РПрзРДП: ОП[(УС)] := РДП := РПрз;
СК:= Аобр <3анесение в СК начального адреса обработчика прерываниям
Теперь процессор продолжает с этапа выборки первой команды обработчика
прерывания. Обработчик (обычно он входит в состав операционной системы)
определяет природу прерывания и выполняет необходимые действия. Когда про-
грамма обработки прерывания завершается, процессор может возобновить выпол-
нение программы пользователя с точки, где она была прервана. Для этого он вос-
станавливает контекст программы (содержимое СК и других регистров) и начинает
с цикла выборки очередной команды прерванной программы. Соответствующая
микропрограмма представлена ниже (с целью упрощения схемы некоторые трак-
ты и сигналы управления не показаны, и соответствующие микрооперации ото-
бражают лишь логику выхода из прерывания).
УСРАП: РАП :=УС, ЧтЗУ: РДП:=ОП[(УС)] <Восстановление содержимого РПрз>;
+1УС: УС:- УС +1; РДПРПрз: РПрз := РДП;
УСРАП: РАП :=УС, ЧтЗУ: РДП:=ОП[(УС)] восстановление содержимого Акк>;
+1УС: УС:= УС + 1; РДПАкк: Акк:= РДП;
УСРАП: РАП := УС, ЧтЗУ: РДП:=ОП[(УС)] <Восстановление содержимого СК>;
+1УС: УС :=УС + 1; РДПСК: СК:=РДП.
Диаграмма состояний цикла команды
Вышеизложенное можно подытожить в виде рис. 3.6, где показаны потоки инфор-
мации в ходе этапов
команды, косвенной адресации и прерывания
Рис. 3.6. Потоки информации при реализации цикла команды: а — этап выборки; б —этап
косвенной адресации;
в
— этап прерывания .
В работе [36] использован также иной подход к описанию содержания цикла
команды — с помощью диаграммы состояний (рис. 3.7).
На такой диаграмме цикл команды представляется в виде последовательности
состояний. Для каждой конкретной команды некоторые состояния могут быть
Цикл команды 147
Рис. 3.7. Диаграмма состояний цикла команды
нулевыми, а некоторые другие могут неоднократно повторяться. Полный цикл
команды может включать в себя следующие состояния:
•
Вычисление адреса команды.
Определение исполнительного адреса команды,
которая должна выполняться следующей.
•
Выборка команды.
Чтение команды из ячейки памяти и занесение ее в РК.
•
Декодирование команды.
Анализ команды с целью выяснения типа подлежа-
щей выполнению операции и операндов.
•
Вычисление адреса операнда.
Определение исполнительного адреса операн-
да, если операция предполагает обращение к операнду, хранящемуся в памяти
или же доступному посредством ввода.
•
Выборка операнда.
Выборка операнда из памяти или его ввод с устройства
ввода.
•
Операция с данными.
Выполнение операции, указанной в команде.
•
Запись операнда.
Запись результата в память или вывод на устройство вы-
вода.
Состояния в верхней части диаграммы описывают обмен между ЦП и памятью
либо между ЦП и модулем ввода/вывода. Состояния в нижней части обозначают
только внутренние операции ЦП. Вычисление адреса операнда встречается дваж-
ды, поскольку команда может включать в себя чтение, запись или и то и другое,
однако действия, выполняемые в этом состоянии, в обоих случаях одни и те же,
поэтому используется один и тот же идентификатор состояния.
Следует отметить, что диаграмма допускает множественные операнды и резуль-
таты, как того требуют некоторые команды. Кроме того, в ряде ВМ единственная
команда может определять операцию над вектором (одномерным массивом чисел)
148 Глава 3. Функциональная организация фон-неймановской ВМ
или строкой (одномерным массивом символов), что требует повторяющихся опе-
раций выборки и/или записи. Диаграмма отражает также возможность этапов пре-
рывания и косвенной адресации.
Основные показатели
вычислительных машин
Использование конкретной вычислительной машины имеет смысл, если ее пока-
затели соответствуют показателям, определяемым требованиями к реализации
заданных алгоритмов. В качестве основных показателей ВМ обычно рассматрива-
ют: емкость памяти, быстродействие и производительность, стоимость и надеж-
ность [25]. В данном учебнике остановимся только на показателях быстродействия
и производительности, обычно представляющих основной интерес для пользова-
телей.
Быстродействие
Целесообразно рассматривать два вида быстродействия: номинальное и
Номинальное быстродействие
характеризует возможности ВМ при выполне-
нии стандартной операции. В качестве стандартной обычно выбирают короткую
операцию сложения. Если обозначить через
время сложения, то номинальное
быстродействие определится из выражения
Подставив (3.1) в выражение для
получим
Среднее быстродействие
характеризует скорость вычислений при выполнении
эталонного алгоритма или некоторого класса алгоритмов. Величина среднего быс-
тродействия зависит как от параметров ВМ, так и от параметров алгоритма и оп-
ределяется соотношением
где
—
время выполнения эталонного алгоритма;
N
— количество операций,
держащихся в эталонном алгоритме.
Обозначим через число операций i-го типа;
l
— количество типов операций
в алгоритме = 1, 2,..., /); — время выполнения операции
типа.
Время выполнения эталонного
рассчитывается по формуле:
Основные показатели вычислительных машин 149
Разделим числитель и знаменатель в (3.2) на
Обозначив частоту появления операции
типа (3.3) через
=
—
-
, запишем
окончательную формулу для расчета среднего быстродействия:
В выражении (3.4) вектор
характеризует систему команд ВМ, а век-
тор
называемый частотным вектором операций, характеризует алго-
ритм.
Очевидно, что для эффективной реализации алгоритма необходимо стремить-
ся к увеличению
Если
главным образом отталкивается от быстродействия
элементной базы, то
очень сильно зависит от оптимальности выбора команд
Формула (3.4) позволяет определить среднее быстродействие машины при
реализации одного алгоритма. Рассмотрим более общий случай, когда полный
алгоритм состоит из нескольких частных, периодически повторяемых алгорит-
мов. Среднее быстродействие при решении полной задачи рассчитывается по
формуле:
где
т
— количество частных алгоритмов; — частота появления
ча-
стного алгоритма в полном алгоритме;
— частота операций
типа
част-
ном алгоритме.
Обозначим через
и 7} — количество операций и период
частно-
го алгоритма;
=
...,
...,
—
период повторения
алгоритма;
а
j
=T
max
/T
j
цикличность включения j-ого частного алгоритма в полном алгоритме.
Тогда за время
в ВМ будет выполнено
=
операций, а частоту
появления
частного алгоритма в полном алгоритме можно опреде-
лить из выражения
150 Глава 3. Функциональная организация фон-неймановской ВМ
Для расчета по формулам
необходимо знать параметры ВМ, представ-
ленные вектором
X/}, параметры
частного алгоритма — вектор
и параметры полного алгоритма — вектор
Производительность
оценивается количеством эталонных алгоритмов,
выполняемых в единицу времени:
Производительность является более универсальным показателем, чем среднее
быстродействие, поскольку в явном виде зависит от порядка прохождения задач
через ВМ.
Критерии эффективности
вычислительных машин
•
Вычислительную машину можно определить множеством показателей, характе-
ризующих отдельные ее свойства. Возникает задача введения меры для оценки
степени приспособленности ВМ к выполнению возложенных на нее функций —
меры эффективности.
Эффективность
определяет степень соответствия
своему назначению. Она
измеряется либо количеством затрат, необходимых для получения определенного
результата, либо результатом, полученным при определенных затратах. Произве-
сти сравнительный анализ эффективности нескольких ВМ, принять решение на
использование конкретной машины позволяет критерий эффективности.
Критерий эффективности
— это правило, служащее для сравнительной оцен-
ки качества вариантов ВМ. Критерий эффективности можно назвать правилом
предпочтения сравниваемых вариантов.
Строятся критерии эффективности на основе частных показателей
ности (показателей качества). Способ связи между частными показателями опре-
деляет вид критерия эффективности.
Способы построения критериев эффективности
Возможны следующие способы построения критериев из частных показателей.
Выделение главного показателя.
Из совокупности частных показателей
А
...,
выделяется один,
который принимается за главный. На осталь-
ные показатели накладываются ограничения:
=
= 2, 3,...,
п),
где
A
iдоп
—
допустимое значение
показателя. Например, если в качестве
выбирается производительность, а на показатели надежности
Р
и стоимо-
Производительность при выполнении полного алгоритма оценивается по формуле: