- •Пояснительная записка
- •1.4.2. Диапазон и погрешность представления чисел
- •1.4.3. Форматы команд, данных и слова состояния процессора
- •1.4.4. Организация виртуальной памяти
- •1.4.5. Способы организации ввода-вывода информации
- •1.4.6. Способ оценки производительности эвм
- •1.4.7. Приращение производительности эвм
- •2.2. Функциональная модель эвм
- •2.3. Алгоритм функционирования эвм
- •2.4. Средства управления прерываниями
- •2.5. Организация виртуальной памяти
- •Алгоритм работы виртуальной памяти
- •2.6. Оценка производительности эвм
- •3. Модификация созданной эвм
- •3.1. Возможности повышения производительности эвм
- •3.2. Организация конвейерной обработки команд
- •3.3. Расчет прироста производительности эвм
- •4. Тестовая задача
- •4.1. Алгоритм и программа для тестирования эвм
- •4.2. Моделирование процесса выполнения программы
- •5. Программирование ввода и вывода
- •5.1. Пример использования системных функций для ввода
- •5.2. Общие сведения об интерфейсе Win32 api
Алгоритм работы виртуальной памяти
Нет
Да
Нет
Да
Нет
Да
Нет
Да
2.6. Оценка производительности эвм
Определим время выполнения команд в классической модели и пути уменьшения этого времени. Для оценки времени выполнения команд в качестве единицы времени используется такт.
Таблица распределения времени выполнения команд
Название ступени (действия на ГСА) |
Тип команды | ||||||
ADD |
WR |
JMP |
JS(да/нет) |
READ |
CLI |
IRET | |
IFETCH(выборка команды) |
8 |
8 |
8 |
8/8 |
8 |
8 |
8 |
DECODE(декодирование команды) |
1 |
1 |
1 |
1/1 |
1 |
1 |
1 |
TEST(проверка условия) |
- |
- |
- |
1/1 |
- |
- |
- |
EADDR(создание исполнительного адреса) |
6 |
6 |
- |
- |
6 |
- |
- |
OFETCH(выборка операнда) |
4 |
- |
- |
- |
4 |
- |
- |
EXEC(исполнение) |
3+1 |
1 |
- |
- |
1 |
1 |
1 |
CHANGEIP( изменитьIP) |
- |
- |
1 |
1/0 |
- |
- |
1 |
STORE(сохранение) |
- |
4 |
- |
- |
- |
- |
- |
ENDOP(завершение) |
1 |
1 |
1 |
1/1 |
1 |
1 |
1 |
Итого: |
24 |
21 |
11 |
12/11 |
21 |
11 |
12 |
Для оценки производительности работы ЭВМ необходимо вычислить время, затрачиваемое на выполнение некоторой обобщенной команды. Для вычисления величины времени выполнения обобщенной команды используется формула, определяющая величину взвешенного арифметического среднего, которая позволяет учесть частоту использования каждой команды в заданной смеси команд.
X=
Xi – время (такты) выполнения команды i-го типа в заданной смеси команд;
Ci – дробная величина (доля). Характеризует частоту использования команды i-го типа в заданной смеси команд. Сумма всех N долей составляет единицу.
В следующей таблице приведены доли затрат времени для каждой команды.
-
Тип команд
Доля общего времени
выполнения, %
ADD
25
READ
18
WR
13
JMP
8
Условный переход выполняемый
10
Условный переход невыполняемый
7
CLI
10
IRET
9
=100
На исполнение команды в бесконвейерной ЭВМ, реализованной по архитектуре OKOD, затрачивается в среднем 17,54 такта. Ниже приведен расчет величины взвешенного арифметического среднего.
24*25=600 (тактов) ADD
21*18=378 (т) READ
21*13=273 (т) WR
11*8=88 (т) JMP
12*10=120 (т) УП выполняемый
11*7=77 (т) УП невыполняемый
11*10=110 CLI
12*9=108 IRET
Итого:1754:100=17,54 такта.
Если частота тактирующих сигналов равна 18 мГц, то производительность бесконвейерной модели ЭВМ составляет 1 миллион операций в секунду.
3. Модификация созданной эвм
3.1. Возможности повышения производительности эвм
Существует много вариантов повышения производительности ЭВМ, например:
- параллельная обработка нескольких команд за счет использования конвейерного принципа обработки команд
- использование нескольких процессоров
- повышение быстродействия виртуальной памяти
- повышение частоты генератора тактовых импульсов.
В данном курсовом проекте для повышения производительности ЭВМ реализуется конвейерный принцип обработки команд.