
- •Пояснительная записка к курсовому проекту по дисциплине
- •Введение
- •1. Техническое задание
- •1.1. Область применения
- •1.2. Индивидуальное задание и литературные источники
- •1.3. Метод конвейеризации
- •1.4. Технические требования
- •1.4.1. Перечень команд
- •1.4.2. Диапазон и максимальная абсолютная погрешность данных
- •1.4.5. Способы организации ввода/вывода информации
- •1.4.6. Способ оценки производительности эвм
- •1.4.7. Требуемое значение приращения производительности эвм, которое должно быть получено в результате модификации первоначально созданной эвм
- •1.5. Способ тестирования создаваемой эвм
- •1.6. Способ взаимодействия программ пользователя с внешними устройствами
- •1.7. Задача и требования к прикладной программе, которая иллюстрирует возможности взаимодействия с внешними устройствами по вводу и выводу
- •1.8. Интерфейс Win32 api
- •2. Структура и алгоритм функционирования эвм классической модели
- •2.1. Вводные замечания
- •2.2. Функциональная модель эвм
- •2.3. Алгоритм функционирования эвм
- •2.4. Средства управления прерываниями
- •2.5. Организация виртуальной памяти
- •2.6. Оценка производительности эвм
- •3. Модификация созданной эвм
- •3.1. Возможности повышения производительности эвм
- •3.2. Организация конвейерной обработки команд
- •3.3. Расчет прироста производительности эвм
- •4. Описание тестовой задачи
- •4.1. Описание программы (исходной и объектной)
- •Моделирование процесса выполнения программы
- •5. Программирование ввода и вывода.
- •5.1. Пример использования для ввода/вывода системных функций.
- •5.2 Общие сведенья об интерфейсе Win32 api.
- •Заключение.
1.4.2. Диапазон и максимальная абсолютная погрешность данных
Диапазон для чисел с фиксированной точкой:
от -(231 -1) до (232–1)
Диапазон для чисел с плавающей точкой:
от -(1-2-23)2q до (1-2-23)2q
Максимальная абсолютная погрешность для чисел с фиксированной точкой: 2-31
Максимальная абсолютная погрешность для чисел с плавающей точкой: 2-23 *2q
1.4.3. Форматы представления команд и данных
Все команды, используемые в данном процессоре, имеют следующий формат:
7 3 2 0 7 0 7 0 7 0
КОП |
СА |
|
|
|

Imm
Imm
КОП - код операции
Imm - непосредственное значение. Кодируется в команде, которая используется как число при непосредственной адресации или как адрес памяти при прямой адресации.
СА - способ адресации
Адресация:
1. Непосредственная:
23 0
операнд |
В команде хранится непосредственный операнд.
СА=01
2. Прямая:
23 0
Адрес |
В команде указывается адрес ячейки, в которой хранится информация.
СА=00
3. Косвенная:
Если СА=10, то адрес операнда хранится в регистре REG.
Формат обрабатываемых данных:
Структура чисел с фиксированной точкой:
31 30 0
-
Знак
Число
Числа с плавающей точкой:
31 30 24 23 22 0
Знак |
порядок |
знак |
Мантисса |
1.4.4. Используемый способ организации виртуальной памяти
Используется страничный способ организации виртуальной памяти.
В системах со страничной адресацией виртуальный адрес имеет сложную структуру. Он разбит на два битовых поля: селектор страницы (сегмент) и смещение в сегменте. Соответственно, адресное пространство оказывается состоящим из дискретных блоков. Если все эти блоки имеют фиксированную длину и образуют вместе непрерывное пространство, они называются страницами. Для удобства реализации размер страницы всегда выбирается равным числу, являющемуся степенью 2. Тогда, если общая длина виртуального адреса есть N (в последние годы это тоже всегда некоторая степень 2 - 16, 32, 64), а размер страницы есть 2M), то виртуальный адрес рассматривается как структура, состоящая из двух полей: первое поле занимает (N-M+1) разрядов адреса и задает номер страницы виртуальной памяти; второе поле занимает (M-1) разрядов и задает смещение внутри страницы до адресуемого элемента памяти (в большинстве случаев – байта).
Размер виртуального адресного пространства 2Гбайта (поскольку 32 битные регистры).
Размер страницы составляет 8 Кбайта.
В отличие от сегментации, которая организует программы и данные в модули различного размера, страничная организация оперирует с памятью, как с набором страниц одинакового размера.
Учитывая наличие 2 режимов работы ЭВМ, а именно, режима ядра и режима пользователя, виртуальное адресное пространство памяти ЭВМ подразделяется на 2 равных региона: системный и пользовательский.
Формат указателя ВАП имеет вид:
31 30 13 12 0
R |
Page |
OFF |
Поле номера региона (31) соответствует старшему разряду указателя, поле номера страницы (13-30), поле смещения (0-12).
Указатель физического адреса состоит из поля смещения (0-12) и поля номера страничного кадра (13-30).
Концепция мультипрограммирования предусматривает выделение кванта времени и вычислительных ресурсов для выполнения каждой программы из множества заданных для обработки. Для предотвращения влияния одних программ на другие необходимо в конце кванта времени выполнения программы сохранять содержимое ключевых вычислительных ресурсов, а в начале кванта времени выполнения программы – восстановить содержимое этих ресурсов. Операции сохранения и восстановления называются переключением контекста процесса. Процесс – это среда, в которой выполняется программа.
Состав контекста следующий:
IP – указатель адреса следующей команды
SP – указатель вершины стека
IF, ZF, SF, OF – Регистры флагов
REG – регистр косвенной адресации
Акк – аккумулятор
NDER – базовый регистр адреса начала локальной таблицы страниц
NQER – базовый регистр глобальной таблицы страниц
Для доступа к контекстам и пользовательским программам используются соответственно – системная (глобальная) и множество пользовательских (локальных) таблиц страниц, с помощью которых виртуальный адрес, используемый в каждой команде программы, транслируется в физический.
Местоположение и размер таблицы задаются в регистрах: NDER и NQER.
Структуры таблиц:
Записи: 30 13 12 3 2 1 0
-
Pg
R
M
P
Pg –номер страницы
P-бит присутствия страницы в физической памяти: 1-присутствует, 0-отсутствует.
R-бит ограничения доступа к странице: 1-только чтение, 0-разрешено чтение и запись данных
М-признак модификации страницы: 1-страница была изменена, 0-изменений не было
Разрядность адреса составляет 32 бит. Величина страницы принимается равной 8Кбайт, т.е. смещение задается в поле длиной 13бит. Номер страницы занимает 18, следовательно, число записей в ТС равно 219=524288 (2 МБ)