Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архив1 / doc100 / Пожаров.doc
Скачиваний:
25
Добавлен:
01.08.2013
Размер:
169 Кб
Скачать
☆

4.2. Магистрали

Способ соединения узлов и блоков в системе – магистральный. Имеется шина управления и шина адреса\данных, которая работает в мультиплексном режиме. Шина адреса\данных – 20ти разрядная.

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

предусмотрен строб адреса. На шине адреса присутствует устройство сравнения для различия устройств ввода\вывода от памяти.

4.3. Оперативная память

Используемый способ расширения емкости оперативной памяти.

Сегментно-страничная организация.

Адресное пространство делится на сегменты, начальные адреса которых кратны 16 т.е. имеют нули в четырех младших разрядах. Нулевые разряды начального адреса могут быть подразумеваемыми и их можно не передавать по шине. Начальный адрес можно задать 16ти-разрядным словом и число сегментов составит 2^16=64К.Адрес внутри сегмента задается так же 16ти-разрядным словом. Внутри каждого сегмента идет разбиение на страницы по 4Кбайта (наиболее оптимально).Размер страницы фиксирован, а сегмента нет.

Максимальный объем расширенной памяти - 4Гбайта.

В результате такой организации адрес интерпретируется так:

Номер сегмента

Номер страницы

Слово

Теперь чтобы получить физический адрес необходимо обратиться к соответствующим таблицам (хранящимся в оперативной памяти). Получается 3 обращения к оперативной памяти. Для увеличения скорости обращения предлагается хранить эти таблицы в памяти более быстрой, чем оперативная. Использую ассоциативную память на 8 дескрипторов. Реализован Буфер трансляции адресов (TLB) или адресный КЭШ.

Номер сегмента

Номер страницы

Слово

Сегментная таблица

Таблица страниц

Физический адрес

Рис.1

    1. Адресный кэш (кэш дескриптор)

Адресный КЭШ или TLB изменяется процессором прозрачно для программ. Процесс запрашивает

с егмент. Через таблицу сегментов выделяется конкретная страница. Далее рассматривается алгоритм.

TLB

Виртуальная страница

Физическая страница

.

. Рис.2

Добавляется некий бит активности А, соответственно каждой строке TLB, который устанавливается в 1 при обращении к странице. Когда все А=1,автоматический сброс.Используется алгоритм LRU (наименее часто используемая страница удаляется первой).

Затребованной страницы нет в ОП. Если в ОП есть место-страница загружается в ОП, ее дескриптор в буфер TLB. Если буфер полный, то дескриптор с А=0 отправляется в страничную таблицу.В это место загружается новый дескриптор, страница загружается.

ОП вся занята. Вводят еще один бит W .Если обращение по записи - то бит в 1.Тогда из памяти удаляются страницы с W=0.Новая страница загружается сверху. Информация о том, где находится старая страница, должна быть сохранена. Поэтому необходимо вести две таблицы: состояние ОП+

Где эти страницы во внешней памяти.

    1. Система Ввода\вывода

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

ЦП

Схема сравнения

А > Гр

ОП(А<Гр)

В\В(А>Гр)

Рис.3

Идет сравнение адреса с некоторой границей. Если адрес меньше установленной границы – то идет обращение к оперативной памяти. Если адрес оказывается больше границы – то идет обращение к устройству ввода\вывода. Под устройства ввода\вывода выделяется сегмент размером 64Кб по адресу FFFF:0000.

Так как сам алгоритм ввода\вывода в задании конкретно не оговорен, то реализую ввод\вывод по прерываниям.

Периферийное устройство выставляет запрос (прерывание) на шину управления. При подтверждении запроса (а также согласования с сигналом готовности ВУ)идет обмен регистра данных устройства с регистром процессора, затем обмен регистра процессора с оперативной памятью (для ввода, для вывода – наоборот ).По окончании передачи (заводится и анализируется счетчик числа символов) процессор восстанавливает свое состояние(система прерываний рассмотрена ниже).