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

3. Введение

В данном курсовом проекте разрабатывается структурная схема гипотетической ЭВМ, функциональная схема отдельного блока и алгоритм его работы.В состав ЭВМ входят:

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

система ввода-вывода, монитор и клавиатура, накопитель на гибких магнитных дисках, «Винчестер».

ЭВМ – двухадресная, длина команды – переменная.

Разрядность ЭВМ – 16.

Емкость оперативной памяти – 1Мб.

4. Разработка эвм

    1. Центральный процессор

Центральный процессор включает в себя центральное обрабатывающее устройство (ЦОУ) и

микропрограмное устройство управления (МПУУ). На входCLK поступают тактовые импульсы, синхронизирующие работу всех блоков системы (Блок Синхронизации).ЦОУ (или арифметико-логическое устройство ) содержит два внутренних регистра хранения операндов. МПУУ управляет работой системы через ряд регистров.

SM

CS

МПУУ

ES

DS

SS

IP

AH

AL

ЦОУ

BH

BL

CH

CL

DH

DL

SP

ФЛАГИ

BP

DI

SI

Регистры общего назначения:AX,BX,CX,DX. Регистры переадресации ES,CS,SS,DS.Адрес формируется суммированием двух 16ти-разрядных чисел.Выводы AD0-AD19 принадлежат шине адреса\данных. Таким образом, возможно непосредственно адресовать 1Мб памяти. Блок сегментных регистров совместно с сумматором реализуют сегментацию памяти (рассмотрено ниже).

Шине управления принадлежат следующие выводы:S0-строб адреса,S1-S6-управление работой шиной, задание сегментного регистра(в некоторых тактах работы),также они определяют текущее состояние микропроцессора, сигнал READY свидетельствует о готовности внешнего устройства к обмену информацией. С системой прерываний связаны следующие сигналы:

INT-общий запрос прерывания,INTA-линия подтверждения прерывания.

Входом сброса RESET производится остановка работы микропроцессора.

Вход SET – Запуск микропроцессора, его начальная установка и тестирование.

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.

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

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

    1. Система прерывания программ

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

ЦП

«Дейзи»-цепочка

ПУ1

ПУk

Рис.4

Способ формирования и передачи в ЦПУ вектора прерывания.

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

Принятый способ возврата из прерываний и его реализация.

Начало фронта подтверждения прерывания инициирует начало передачи вектора прерывания (через некоторое время задержки).Затем на устройстве линия подтверждения разрывается. Для того, чтобы

процессор знал, что на шине вектор,

Запрос прерывания сигнал подтверждения через канал шины

управления возвращается в процессор.

Подтверждение Идет запись и обработка вектора прерыва-

ния. По окончании обработки идет

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

Запоминание и восстановление состояния прерываемой программы.

По приходу сигнала запроса прерывания происходит запоминание текущей программы. Так как запоминание идет на макро уровне, то ожидается завершение текущей команды, затем сохраняются значения Регистров Общего Назначения (РОН)+регистр флагов +указатель текущей команды IP CS ( получается уже следующей команды).После прихода вектора выполняется соответственная программа обработки по завершении которой происходит восстановление состояния прерванной програмы. Так как текущая команда выполнена, то начинается выполнение следующей.

Управление приоритетами.

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

В случае внутренних прерываний процессор выполняет соответственную процедуру.

  1. Описание работы по структурной схеме

Запуск микропроцессора осуществляется по входу SET.Производится начальная установка и тестирование. Тактирование идет по входу CLK. Микропроцессор взаимодействует с оперативной памятью через устройство управления ОП.На него возложены функции преобразования адресов (виртуальные - физические) через буферы трансляции TLB. Также он выполняет весь алгоритм замены\анализа содержимого TLB.Винчестер и НГМД находятся в одном адресном пространстве с основной памятью. Взаимодействие с периферией идет через соответствующие устройства: контроллер интерфейса клавиатуры и адаптер. Система прерывания программ имеет непосредственные связи с этими устройствами (ввод\вывод по прерываниям).Подразумевается, что внутри каждого объекта, соединенного с системной шиной, присутствует устройство разделения потока адреса\данных. Завершение работы происходит по сигналу RESET.

Соседние файлы в папке doc100