Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура средств ВТ / Литература / Цилькер / Организация ЭВМ и систем / Глава 3.Функциональная организация фон-неймановская ВМdoc.doc
Скачиваний:
249
Добавлен:
01.06.2015
Размер:
6.15 Mб
Скачать

Диаграмма состояний цикла команды

Вышеизложенное можно подытожить в виде рис. 3.6, где показаны потоки инфор­мации в ходе этапов выборки команды, косвенной адресации и прерывания [36]:

а б в

Рис. 3.6. Потоки информации при реализации цикла команды: а — этап выборки; б — этап косвенной адресации; в — этап прерывания

В работе [36] использован также иной подход к описанию содержания цикла команды — с помощью диаграммы состояний (рис. 3.7).

На такой диаграмме цикл команды представляется в виде последовательности состояний. Для каждой конкретной команды некоторые состояния могут быть

147

Рис. 3.7. Диаграмма состояний цикла команды

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

- Вычисление адреса команды. Определение исполнительного адреса команды, которая должна выполняться следующей.

- Выборка команды. Чтение команды из ячейки памяти и занесение ее в РК.

- Декодирование команды. Анализ команды с целью выяснения типа подлежа­щей выполнению операции и операндов.

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

ввода.

- Операция с данными. Выполнение операции, указанной в команде.

- Запись операнда. Запись результата в память или вывод на устройство вы­вода.

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

Следует отметить, что диаграмма допускает множественные операнды и резуль­таты, как того требуют некоторые команды. Кроме того, в ряде ВМ единственная команда может определять операцию над вектором (одномерным массивом чисел)

148

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

Основные показатели вычислительных машин

Использование конкретной вычислительной машины имеет смысл, если ее показатели соответствуют показателям, определяемым требованиями к реализации заданных алгоритмов. В качестве основных показателей ВМ обычно рассматрива­ют: емкость памяти, быстродействие и производительность, стоимость и надеж­ность [25]. В данном учебнике остановимся только на показателях быстродействия и производительности, обычно представляющих основной интерес для пользова­телей.

Быстродействие

Целесообразно рассматривать два вида быстродействия: номинальное и среднее. Номинальное быстродействие характеризует возможности ВМ при выполне­нии стандартной операции. В качестве стандартной обычно выбирают короткую операцию сложения. Если обозначить через тсл время сложения, то номинальное быстродействие определится из выражения

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

где Тэ — время выполнения эталонного алгоритма; N — количество операций, содержащихся в эталонном алгоритме.

Обозначим через ni число операций i-го типа; l — количество типов операции в алгоритме (i = 1, 2,..., /); т, — время выполнения операции г'-ro типа.

Время выполнения эталонного алгоритма рассчитывается по формуле:

(3.1)

Подставив (3.1) в выражение для Vср, получим

(3.2)

Основные показатели вычислительных машин 1 49

Разделим числитель и знаменатель в (3.2) на N:

(3.3)

Обозначив частоту появления операции i-го типа в (3.3) через , запишем окончательную формулу для расчета среднего быстродействия:

(3.4)

В выражении (3.4) вектор характеризует систему команд ВМ, а век­тор называемый частотным вектором операций, характеризует алго­ритм.

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

Формула (3.4) позволяет определить среднее быстродействие машины при реализации одного алгоритма. Рассмотрим более общий случай, когда полный алгоритм состоит из нескольких частных, периодически повторяемых алгорит­мов. Среднее быстродействие при решении полной задачи рассчитывается по формуле:

(3.5)

где m — количество частных алгоритмов; — частота появления операций j-го ча­стного алгоритма в полном алгоритме; qtjчастота операций i-го типа b j'-m част­ном алгоритме.

Обозначим через nj и Tj — количество операций и период повторения;j-го частно­го алгоритма; Tтах = mах(T1, ..., Т-, ..., Тт) — период повторения полного алгоритма;

— цикличность включении j-го частного алгоритма в полном алгоритме.

Тогда за время T|пах в ВМ будет выполнено Nmax = a.jNj операций, а частоту появления операций j'-ro частного алгоритма в полном алгоритме можно определить из выражения

(3.6)

150

Для расчета по формулам (3.5, 3.6) необходимо знать параметры ВМ, представленные вектором { 1 2,3,..., l,}, параметры каждого j-го частного алгоритма — вектор{q1, q2,..., q,„}., и параметры полного алгоритма — вектор{1;2•••m}

Производительность ВМ оценивается количеством эталонных алгоритме выполняемых в единицу времени:

Производительность при выполнении полного алгоритма оценивается по формуле

.

(3.7)

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