close

Вход

Забыли?

вход по аккаунту

?

Вагизов (2)

код для вставкиСкачать
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Государственное образовательное учреждение
Высшего профессионального образования
Новосибирский Государственный Технический Университет
Кафедра вычислительной техники
Курсовой проект
по дисциплине “Организация ЭВМ”
Группа:
Выполнил:
АМ-411
Вагизов А.
Проверил:
Гребенников В.Ф.
Новосибирск, 2007 г.
Содержание
1. Введение .....................................................................................................................................3
2. Задание........................................................................................................................................3
2.1 Общие исходные данные: ...................................................................................................3
2.2 Индивидуальные данные: ...................................................................................................3
3. Разработка и описание структурной схемы ЭВМ ..................................................................4
3.1 Обобщенная структурная схема ЭВМ ...............................................................................4
3.2 Разработка структурной схемы ЦП ...................................................................................6
3.2.1 Микропрограммное устройство управления .............................................................6
3.2.1 Операционный блок .....................................................................................................7
3.3 Основная память ..................................................................................................................9
3.4 Система прерываний .........................................................................................................10
3.5 Блок синхронизации ..........................................................................................................12
3.6 Контроль ОП по Хеммингу. .............................................................................................13
3.7 Периферийные устройства ...............................................................................................14
3.7.1 Устройства ввода/вывода ..........................................................................................14
3.7.2 Внешние ЗУ.................................................................................................................16
3.8 Система ввода/вывода .......................................................................................................17
3.9 Таймер ................................................................................................................................17
4. Разработка принципиальной схемы УУ, включая систему прерываний. ..........................18
5. Заключение...............................................................................................................................23
Список литературы ......................................................................................................................24
2
1. Введение
Целью курсового проектирования является углубление и закрепление
теоретических знаний, приобретение навыков разработки узлов ЭВМ на структурном,
функциональном и алгоритмическом уровнях.
Курсовой проект посвящен разработке структурной схемы гипотетической ЭВМ и
принципиальной схемы, указанного в задании, блока, входящего в состав этой ЭВМ.
2. Задание
2.1 Общие исходные данные:
 В состав ЭВМ входят следующие блоки:
o центральное процессорное устройство (ЦПУ);
o оперативная память (ОП);
o система прерывания программ (СПП);
o система ввода-вывода (СВВ);
o блок синхронизации (БС);
o таймер;
o монитор, клавиатура, мышь.
o жесткий диск
 Основные параметры ЭВМ:
o адресность ЭВМ: двухадресная;
o длина команды - переменная.
 Разрядность ЭВМ и минимальный объем оперативной памяти:
o разрядность – 32;
o ёмкость ОП – не менее 128Мбайт.
2.2 Индивидуальные данные:
 Структура ЭВМ – двухшинная.
 Сопроцессор – нет.
 Система прерываний – цепочечная на уровне микрокоманд.
 Кэш: кэш команд и данных, буфер TLB.
 Оперативная память – страничная.
 Ввод/вывод – по прерыванию.
 Схема контроля памяти – по Хеммингу.
Разрабатываемый блок: УУ (устройство управления) CPU, включая систему прерываний.
3
3. Разработка и описание структурной схемы ЭВМ
Проектирование структуры заключается в определении состава ЭВМ и способов
взаимодействия, содержащихся в ней устройств.
3.1 Обобщенная структурная схема ЭВМ
ЭВМ с хранимой программой может быть определена как машина,
обрабатывающая данные в соответствии с заранее определенными правилами
(инструкциями), при этом программа (набор инструкций) и данные находятся в памяти
машины (рис. 1).
Для загрузки программы и данных в память, а также для вывода результатов
обработки из памяти необходим какой-либо способ связи с внешними объектами. Этой
цели служат устройства ввода-вывода (рис. 1).
При каждом обращении к памяти по определенному адресу центральный процессор
(ЦП), как правило, выполняет операцию чтения или записи одного слова памяти [1].
Периферийные устройства (ПУ) присоединяются с помощью блоков управления
(контроллеров) периферийными устройствами, осуществляющих согласование форматов
данных, используемых в ПУ с форматом принятом для передачи по общей шине.
Последний (формат данных) обычно соответствует машинному слову процессора и/или
информационной ширине магистрали.
Согласно заданию, ЭВМ построена на основе общей шины. В данном случае все
устройства вычислительной машины подключены к магистральной шине, служащей
единственным трактом для потоков команд, данных и управления (рис.1). Наличие общей
шины позволяет легко менять состав и конфигурацию машины. Благодаря этим свойствам
шинная архитектура получила широкое распространение в мини и микро ЭВМ. Вместе с
тем, именно с шиной связан и основной недостаток архитектуры: в каждый момент
передавать информацию по шине может только одно устройство. Основную нагрузку на
шину создают обмены между процессором и памятью, связанные с извлечением из памяти
команд и данных и записью в память результатов вычислений.
Ниже представлена структурная схема ЭВМ. Особенностью данной ЭВМ является
ее двухшинная организация (по заданию). Шины данных и адреса объединены, поэтому
адрес и данные могут передаваться только в разное время (например данные по фронту
синхросигнала, а адрес по срезу).
4
Блок
синхронизации
ЦП
ОП
Контроллер
прерываний
Котроллер ОП
Блок контроля
DB/AB
CB
Дисковый
контроллер
Жесткий
диск
НГМД
Контроллер
устройств ввода
Клавиа
тура
Мышь
Видеоадаптер
Таймер
Монитор
Рис. 1 Структурная схема ЭВМ
Примечание к рис.1:
AB/DB – шина для передачи данных и адреса, разрядность равна принятой разрядности в
данной ЭВМ (32 разряда).
CB – группа линий управления, включающая (основные линии):
SYNC – синхронизация;
DIN – строб входной информации;
DOUT – строб выходной информации;
BS7 – выбор периферийного устройства;
RPLY – ответ;
Управление прерываниями:
INTR – линия запроса на прерывание
INTA – линия разрешения прерывания
5
3.2 Разработка структурной схемы ЦП
При создании структурной схемы ЦП поможет понимание принципа
микропрограммного управления, который заключается в хранении управляющих слов,
выполняющих элементарные действия в течении цикла, и выборки их с помощью
секвенсора (SEQ).
Таким образом, МУУ хранит в микропрограммной памяти (МПП) и выбирает
управляющие слова (т.е. МК) из МПП, передаёт их в качестве управляющих слов ОБ и
другим устройствам (например, блоку синхронизации). Принимая управляющие слова,
устройствами выполняются соответствующие инструкции.
Работа с ОП осуществляется через ОБ. ОБ вычисляет адрес ячейки для
чтения/записи и принимает/передаёт данные из/в ОП. ОБ может принимать/передавать
данные не только из/в ОП, но и с/в внешних устройств.
3.2.1 Микропрограммное устройство управления
Устройство управления реализует управления ходом вычислительного процесса,
обеспечивая автоматическое выполнение команд программы. Процесс выполнения
программы в ВМ представляет собой последовательность машинных циклов.
Этапы цикла:
1. Выборка команды из памяти
2. Формирование адреса следующей команды
3. Формирование исполнительного адреса операндов
4. Выборка операндов
5. Исполнение операции
На рис. 2 представлена обобщенная структура УУ
РК
КОп
СА
Адрес
МПА
УПП
ОПУУ
Сигналы
управления
Управляющая часть УУ
РгА
СК
Адресная часть УУ
Рис. 2 Обобщенная структура устройства управления
Выбрано микропрограммное УУ. Отличием его от УУ на МПА жесткой логикой в
том, что в нем хранение микрокоманд осуществляется в виде кодов в специализированном
запоминающем устройстве – памяти микропрограмм. Каждой команде ВМ в этом ЗУ в
явной форме соответствует микропрограмма. Достоинство – возможность
перепрограммирования, дешевизна. Недостаток – относительно низкое быстродействие
6
КОП
Адрес
vector
ПВА
Флаги
ПНА
Сиквенсор
Секвенсор
МПП
Рг МКК
МО
Адрес
Дешифратор
микрокоманды
С0 С1
Сm
Сигналы управления
Рис. 3 Микропрограммный автомат с программируемой логикой.
Код операции из регистра команд поступает на ПНА. Преобразованный адрес с
ПНА идет на секвенсор. Секвенсор выбирает источник адреса и выдает его на вход МПП.
На выходах последней появляется микрокоманда и фиксируется в регистре микрокоманд.
В момент, когда микрокоманда начинает выполняться, секвенсор формирует адрес
следующей микрокоманды.
ПВА – преобразователь вектора адреса (блок управления прерываниями). При
обработке внешних прерывания на уровне микрокоманд, данное устройство получает на
свой вход вектор прерывания, который нужно передать в МПП для выбора там
микропрограммы прерывания (её адрес содержится в векторе). Поэтому нужно сначала
перевести выходы секвенсора в третье состояние – этим также занимается ПВА.
На границе инструкций контроллер прерываний при активном INT выдает
инструкцию вызова прерываний. Далее выполняется микропроцедура обработки
прерывания, которая сохраняет словосостояние процессора и активирует INTA, получат
вектор процессора, выполняет обработчик.
3.2.1 Операционный блок
ОБ выполняет арифметические, логические и сдвиговые операции. Также в его
задачи входит формирование адреса следующей микрокоманды и формирование
признаков результата операции.
ОБ состоит из АЛУ и регистрового файла – это необходимый минимум. Также ОБ
может содержать дополнительные устройства для ускорения вычислений, например
параллельный умножитель и дополнительные запоминающие устройства (регистры
адреса, состояния и т.д.) для внутреннего хранения данных и для стабилизации работы
(«гонки» сигналов).
7
DB/AB
CB
КЭШ команд
КЭШ данных
BUF
Local DB/AB CPU
Рг К
Рг Д вх
Сел1
ПНА
Am29331
(секвенсер)
Am29334
(регистровый файл)
Сел2
TLB
ПВА
Блок
преобр.
адреса
Am29332
(АЛУ)
МПП
Рг МК
Рг Д/А вых
Рис. 4. Структурная схема процессора
Для непосредственной реализации ЦП в качестве секвенсора используется Am29331,
в качестве АЛУ Am29332, в качестве регистрового файла Am29334.
Аm29332, используемая в качестве ОБ, содержит в своём составе приоритетный
шифратор и групповой 64-разрядный сдвигатель, позволяющий за 1 такт выполнять все
виды сдвигов на любое число разрядов, вследствие чего не нужно реализовывать логику
сдвигов отдульно. Эти устройства позволяют выполнять арифметические операции над
числами с плавающей точкой.
АЛУ данной БИС выполняет также операции двоично-десятичной арифметики.В
структуру Am29332 включен блок Q-регистра (О-сдвигатель и Q-регистр). Это позволяет
поддерживать выполнение: операции умножения двух 32-разрядных чисел по
модифицированному алгоритму Бута (в каждом такте сдвиг вправо на 2 разряда), и
деления по алгоритму "без восстановления остатка". Наличие поддержки операций
умножения и деления позволяет сэкономить на арифметическом сопроцессоре.
8
3.3 Основная память
Основная память (ОП) ЭВМ должна содержать:
- оперативную (ОЗУ) память для временного хранения данных;
- постоянную (ПЗУ) память для неизменяемых и энергонезависимых данных: хранение
программы начальной инициализации системы, каких-либо констант и т.п.
Соответственно для управления выбором типа памяти (дешифратор выбора типа
памяти), управлением чтением/записью, а также управление выводом данных в общую
шину в структуру ОП необходимо ввести контроллер ОП. В данной структуре основными
сигналами управления памятью есть сигналы: R/ W - чтение / запись; OE - разрешение
вывода данных на общую шину и сигнал разрешения работы памяти MEM .
При разработке структурной схемы памяти необходимо учесть, что сигнал R/ W необходим только для блока ОЗУ, т.к. при выборе блока ПЗУ операции по записи данных
не возможны.
В основной памяти хранятся 32-х разрядные слова, что означает, что организация
блоков памяти должна быть [адресная_емкость] х 32 бита. Т.о. блок ОЗУ будет построена
на ИМС памяти типа SRAM 4М x 32 (емкость = 16Mb), блок ПЗУ на ИМС типа E2PROM
32K x 32 бита (емкость = 128Kb).
Исходя из выше сказанного, возможно построение структурной схемы основной
памяти (рис. 5).
AB/DB
СB
R/ W , OE
MEM
Адрес
R/ W , OE
Контроллер ОП
Блок
контроля
ОЗУ
Адрес
OE
ПЗУ
Данные
Рис. 5. Структурная схема основной памяти
В данной 32-х разрядной ЭВМ ЦП позволяет адресовать 4096 Mb ячеек памяти.
Также на схеме указан контроллер управления памятью, в состав которого входит блок
контроля памяти по Хеммингу.
По заданию организация ОП страничная. Страничная организация памяти
используется для реализации механизма виртуальной памяти, позволяющей реализовать
механизм динамического распределения памяти [6]. Страничный механизм это один из
способов преобразования виртуального адреса (ВА) в физический адрес (ФА).
Схема страничного преобразования приведена на рис. 6.
В системах со страничной организацией основная и внешняя память делятся на
страницы фиксированной длины. Каждой программе (пользователю) предоставляется
некоторая часть адресного пространства, которая может превышать основную память
компьютера, и которая ограничена только возможностями адресации, заложенными в
системе команд. Эта часть адресного пространства называется виртуальной памятью
9
пользователя и выражается в целом количестве страниц. В ОП содержит таблица страниц
для текущей программы. Табличная страница содержит дескрипторы каждой страницы
программы. В дескрипторе содержится физический адрес страницы и информация,
определяющая права доступа (защита) и состояние страницы.
31
Страничная
таблицы n-й
программы
….
БР
Виртуальный адрес
12 11
PAGE
OFFSET
0
Дескриптор страницы
31
12 11
0
ФА страницы
Сост. и защита
стр.
Физический адрес
31
12 11
ФА страницы
OFFSET
0
Рис.6. Схема преобразования ВА в ФА при страничной организации памяти
Каждое слово в виртуальной памяти пользователя определяется виртуальным
адресом, состоящим из двух частей:
 старшие 20-ть разрядов адреса (PAGE) рассматриваются как номер страницы,
представляющей собой смещение относительно базового регистра (БР) страничной
таблицы программы;
 младшие 12-ть являются номером слова (OFFSET) (или байта) внутри страницы.
Преобразование ВА в ФА происходит следующим образом: по номеру страницы из ВА
относительно БР считывается ее дескриптор из страничной таблицы, из которого берется
физический адрес страницы. К физическому адресу (20 бит) дескриптора добавляется
номер слова из ВА (OFFSET – 12 бит). Полученный адрес является ФА.
Так как страничная таблица хранится в ОП, то страничный механизм требует
одного дополнительного обращения к ОП, для преобразования адреса.
Стоит отметить, что для поддержания страничного механизма требуются
дополнительные программно-аппаратные средства. В современных процессорах имеется
внутренняя поддержка этого механизма. Однако в нашем случае необходимо внешнее
устройство управления памятью (УУП), которое включено в состав контроллера ОП.
Так как страничный механизм требует дополнительного обращения к памяти при
преобразовании адресов, то в состав ОП вводится адресный КЭШ (буфер TLB), хранящий
32 физических адреса интенсивно использующихся ЦП страниц.
3.4 Система прерываний
Прерывания обеспечивают реакцию процессора на события, происходящие
асинхронно по отношению к исполняемому программному коду.
Для разработки системы прерываний принимается цепочечная структура (рис. 7).
Имеется одна общая для всех устройств линия запроса на прерывание. Получив запрос,
процессор посылает сигнал, подтверждающий получение запроса. Сигнал подтверждения
10
прерывания проходит от одного устройства к другому до тех пор, пока не достигнет
устройства, пославшего запрос на прерывание. Тогда это устройство подает свой
идентифицирующий номер (вектор) на шину данных, после принятия, которого
вызывается программа, обрабатывающая прерывание данного устройства. Для такой
структуры характерны более низкие затраты программных и аппаратных средств, однако
распределение приоритетов устройств, здесь фиксировано. Кроме того, сигнал INTA
(Interrupt Acknowledge – Подтверждение прерывания) проходит через устройства с
некоторой временной задержкой.
Необходимо помнить, что при запоминании и восстановлении состояния
процессора, все прерывания запрещены. Устройство, выставившее запрос, разрывает
линию подтверждения (INTA).
AB/DB
ЦП
CB
Запрос на прерывание
INT
INT
INTA
подтверждение
прерывания
INT
У №1
INT
У №2
…
У №N
Рис. 7. Структура прерываний с линией подтверждения прерываний (цепочечная).
1.
2.
3.
4.
5.
Алгоритм выполнения прерывания:
Распознавание запроса на прерывание. На границе инструкций процессор проверяет
состояние линии запросов на прерывание (INT). Если неактивна, то обрабатывается
следующая инструкция.
Запоминание состояния. При обработке прерываний процессор сохраняет в стеке
словосостояние (регистр флагов и указатель следующего адреса).
Подтверждение прерывания. Процессор подает сигнал подтверждения и устройство,
подавшее запрос на прерывание выставляет вектор/адрес на шину данных.
Вызов подпрограммы обработки прерывания. Процессор сбрасывает флаг разрешения
прерываний, по вектору определяет адрес обработчика и выполняет его.
Восстановление и возврат. Восстанавливается словосостояние, устанавливается флаг
разрешения прерываний.
Основная программа
Запрос на
прерывание
Подпрограмма обработки прерываний
n-1
m
n
m+1
n+1
m+2
n+2
m+3
m+4
Рис. 8. Последовательность выполнения машинных команд при обработке прерываний
11
3.5 Блок синхронизации
Блок синхронизации состоит из двух частей:
- устройства синхронизации;
- схемы начального сброса;
CB
«Сброс»
Схема сброса
Устройство
синхронизации
в SEQMK
К устройствам,
требующим
синхросигнал
Блок синхронизации
Рис. 9. Структурная схема блока синхронизации
Устройство синхронизации (УС) предназначается для выработки импульсных
последовательностей согласующихся по времени работу узлов и устройств в подсистеме
или системе в аппаратных средствах.
C1
C2
Генератор
.
.
.
Формирователь
опорных
сигналов
C1
Схемы
размножения
CN
.
.
.
CN
Рис. 10. Структурная схема устройства синхронизации
Генератор генерирует последовательность прямоугольных импульсов с
определённой частотой. Формирователь опорных сигнал (обычно используются делители
частоты) преобразовывает последовательность в системные синхросигналы. Схема
размножения увеличивает мощность синхросигналов. Нельзя допустить расфазировку
синхросигналов, что вызовет сбои в аппаратуре. Для этого необходимо использовать ИМС
размножения с очень малой расфазировкой CLK.
В качестве генератора, выдающего синхросигнал CLK, взята микросхема К1804ГГ1.
К1804ГГ1 – системный тактовый генератор (ТГ), предназначен для применения в составе
блоков синхронизации центральных процессоров микро-ЭВМ и других вычислительных
устройств в качестве задающего тактового генератора (ТГ). Микросхема ТГ содержит
внутренний генератор опорной синхропоследовательности: опорная частота (до 30 МГц)
задается внешним кварцевым резонатором. Данный генератор позволяет формировать
синхросигнал с различной длительностью сигнала высокого и низкого уровней [5], чем
достигается повышение производительности системы в общем.
Схема начального сброса нужна для того чтобы, при включении питания,
устанавливать секвенсор по нулевому адресу. Соответственно, по этому адресу в МПП
должна хранится МК инициализации системы, т.е. все выходы RG-ов и устройств
перевести в состояние высокого импеданса, что бы ни вызвать конфликтов на шинах.
Схема начальной установки может быть выполнена с применением микросхемы
MC34064, фирмы MOTOROLA.
Разработка блока синхронизации и схемы начального сброса производилась в ходе
курсового проекта по дисциплине «схемотехника»
12
3.6 Контроль ОП по Хеммингу.
При использовании в качестве ОЗУ микросхем динамической памяти возможны ошибки в
хранимых словах. Ошибки обычно бывают двух видов - постоянные и типа «сбой».
Постоянные ошибки характеризуются тем, что содержимое одной, нескольких или всех
адресуемых ячеек БИС заранее определено - из них всегда считывается одна и та же
информация. Например, из ячеек с адресами, кратными некоторому числу, может
считываться лог. 1, и попытка записи лог. 0 в эти ячейки не даёт желаемых результатов.
Ошибки типа «сбой» связаны с разрядом конденсаторов динамических элементов памяти
из-за действия кратковременных импульсов случайных помех по цепям питания или
линиям управления, из-за пролёта альфа-частиц через кристалл БИС и т.п. Ошибку типа
«сбой» можно устранить повторной записью в ту же ячейку считанного и
откорректированного кода.
Для этих целей можно использовать блок контроля, использующий код Хэмминга. Код
Хэмминга позволяет исправлять одиночные ошибки (ошибки в одном разряде),
обнаруживать двойные и тройные ошибки.
Для реализации контроля и исправления ошибок памяти с использованием кода Хэмминга
используется специализированная микросхема фирмы IDT - IDT49C460E с временем
обнаружения и исправления ошибки 10 нс.
Алгоритм работы корректора следующий. При записи 32-разрядного слова в ОЗУ
корректор формирует 7-разрядный код Хэмминга, который также передаётся в
накопитель. В результате в адресуемой ячейке ОЗУ запоминается полезная информация
(32 бит) и вспомогательная (7 бит). При считывании слова из ячейки памяти оно в
неизменном виде поступает в корректор; туда же передаётся код Хэмминга, считанный из
той же ячейки.
Корректор анализирует полученную информацию. Если ошибок нет, то поступившее из
накопителя 32-разрядное слово без изменений передаётся в магистраль. Если имеется
одиночная ошибка в одном из считанных 32 разрядов, то эта ошибка исправляется «на
проходе» (но не в самом накопителе) и восстановленное слово передаётся в магистраль.
Одновременно с этим формируется сигнал Корректируемая ошибка, который в данной
схеме процессором игнорируется (выход ERR# не используется). Допустима также
одиночная ошибка в считанных контрольных разрядах, если нет ошибок в
информационных. Если в считанном 39-разрядном слове две или более ошибок, то оно не
исправляется, формируется сигнал Некорректируемая ошибка, и в контроллер
прерываний посылается запрос на прерывание наивысшего приоритета.
Функциональная схема блока контроля приведена рис. 11.
39
32
D[0:31]
IDT49C460E
CB[0:6]
"1"
7
correct
На входы данных SIMMа
SC[0:6]
CODE ID 1,0
MODE 0,1
ERR#
LEdiac
синхросигнал
RD/WR#
MULLER#
в CPU
LEin
LEout/Generate#
OEsc#
MEМRQ
RD/WR#
1
MEМRQ
RD/WR#
1
OEby te#
Рис.11. Функциональная схема блока контроля
13
Описание схемы:
- входы задания ширины данных СODE ID 1,0 заземлены т.к. ширина данных 32 бита;
- входы задания режимов диагностики MODE 0,1 заземлены (используется нормальный
режим);
- вход разрешения коррекции correct активизирован;
- вход разрешения OEsc вывода контрольных битов через порт SC. Если мы читаем из памяти, вывод запрещён, если записываем в память, вывод разрешён;
- вход разрешения вывода данных через порт D активизирован на низком уровне синхросигнала при условии что есть обращение к памяти;
- флаг двойной ошибки MULERR направляется в ЦПУ в контроллер прерываний;
- выход однократной ошибки ERR не используется т.к. однократные ошибки данная
микросхема исправляет.
3.7 Периферийные устройства
3.7.1 Устройства ввода/вывода
Устройства ввода позволяют вводить в машину данные и программы, а также
вносить исправления в программы и данные, хранящиеся в памяти ЭВМ. Устройства
вывода служат для вывода из ЭВМ результатов обработки данных, их регистрации и
отображения.
Монитор
Для отображения производимых действий, хранящихся данных и т.д. используется
монитор. Монитор способен выводить текстовую и графическую информации ЭВМ.
Монитор как и всякое другое периферийное устройство подключается через контроллер
(видеоадаптер) к системной шине. Следует отметить, что монитор является пассивным
устройством, которое не выдает данные и управляющие сигналы, а просто отображает
информацию динамически изменяющуюся информацию, которая хранится по
определенным адресам в ОП. Обычно в памяти хранится несколько "экранов" (страниц),
вывод же производится с текущей. Это предусматривает применение графического
ускорения, т.е. массивное изменение информации на текущей странице вызовет мерцание
на экране и долгую перерисовку особенно графических объектов. Этого можно
избежать заранее подготовив дополнительную страницу видеоизображения и присвоить
ей номер текущей видеостраницы. Вывод текущей видеостраницы производится каждые
17мс (60 Hz) при этом информация считывается в ЗУ видеоадаптера определённой
ёмкости (объём ЗУ видеоконтроллера определяет разрешение изображения).
Отображение информации ЗУ видеоадаптера происходит независимо от процессора. Ниже
приводится структурная схема включения монитора (рис. 11).
AB/DB
Контроллер монитора
Монитор
Рис. 12. Структурная схема включения монитора
14
К монитору
RGB
Video
Интерфейс
монитора
Контроллер
ЭЛТ
Контроллер
атрибутов
(RAMDAC)
Видеопамять
Внутренняя шина
Расширение
BIOS
Внешний
интерфейс
Графический
процессор
с шины AB/DB
Рис. 13. Структурная схема контроллера монитора
Контроллер монитора:
Поскольку контроллер предназначен для подключения монитора, его обязательным
элементом будет контроллер ЭЛТ. В задач этого контроллера входит согласованное
формирование сигналов сканирования видеопамяти (адрес и стробы чтения) и сигналов
вертикальной и горизонтальной синхронизации монитора.
Видеопамять является специальной областью памяти, из которой контроллер ЭЛТ,
организует циклическое чтение содержимого для регенерации изображения.
Контроллер атрибутов управляет трактовкой цветовой информации, хранящейся в
видеопамяти. В текстовом режиме он обрабатывает информацию из байт атрибутов
знакомест, в графическом – из бит текущего выводимого пикселя. Контроллер атрибутов
позволяет увязать объем хранимой цветовой информации с возможностями монитора.
Графический контроллер является средством повышения производительности
программного построения изображений, точнее их образов, в видеопамяти.
Внутренняя шина адаптера предназначена для высокопроизводительного обмена
данными между видеопамятью, графическим акселератором и внешним интерфейсом.
Блок внешнего интерфейса связывает адаптер с общей шиной разрабатываемой
ЭВМ.
Блок интерфейса монитора формирует выходные сигналы соответствующего типа
(RGB-TTL, RGB-Analog, S-Video или композитный видео). Этот же блок отвечает и за
диалог с монитором: чтение бит идентификации VGA-монитора.
Модуль расширения BIOS (Video BIOS) хранит код драйверов видеосервиса и
таблицы знакогенераторов [7].
Клавиатура
Клавиатура является одним из основных устройств ввода, обеспечивающих
интерактивное общение пользователя с ЭВМ. Она содержит микропроцессор (контроллер
клавиатуры), который воспринимает каждое нажатие на клавишу и выдает
последовательный скан-код. Скан-код - это однобайтовое число, младшие 7 бит которого
представляют идентификационный номер, присвоенный каждой клавише, а старший 8-ой
бит кода говорит о том, была ли нажата клавиша (бит = 1, код нажатия) или освобождена
(бит = 0, код освобождения). При поступлении скан-кода из порта вызывается
15
прерывание. Приоритет клавиатуры выше всех приоритетов остальных периферийных
устройств.
Процессор прекращает выполнять текущую команду и выполняет процедуру,
анализирующую скан-код.
AB/DB
Подтверждение
прерывания
(INTA)
Контроллер клавиатуры
Запрос на
прерывание
(INTR)
Клавиатура
Рис. 14. Структурная схема включения клавиатуры
Для того, чтобы ЦП успевал обрабатывать все нажатия клавиш, контроллер
клавиатуры должен иметь буфер FIFO. Он занимает непрерывную, постоянную область
адресов памяти. Два указателя хранят позиции головы и хвоста строки символов,
находящихся в буфере в текущий момент. Новые нажатия клавиш сохраняются в
позициях, следующих за хвостом, и соответственно обновляют указатель хвоста буфера.
Считывание же происходит по указателю головы строки символов. Такая конструкция
позволяет легко очищать буфер, для этого надо установить значение указателя головы
значению указателя хвоста.
Мышь
Мышь – специальное устройство ввода, которое обычно служит для управления
курсором, представленном на экране монитора, обеспечивая таким образом
взаимодействие с графическим интерфейсом пользователя. Соединение мыши к
системной шиной также осуществляется через контроллер. Схема подключения мыши ни
чем не отличается от схемы подключения клавиатуры. Контроллер мыши формирует
прерывания по нажатию кнопок мыши и по перемещению самой мыши. Текущие
координаты мыши хранятся в ОП. При перемещение мыши координаты вычисляются с
использованием хранящихся в памяти старых координат и смещения мыши.
3.7.2 Внешние ЗУ
Информация в ЗУ на магнитных дисках (МД) хранится на плоских металлических
или пластиковых пластинах (дисках), покрытых магнитным материалом. Данные
записываются и считываются с диска с помощью электромагнитной катушки, называемой
головкой считывания/записи, которая в процессе считывания и записи неподвижна, в то
время как диск вращается относительно нее. При записи на головку подаются
электрические импульсы, намагничивающие участок поверхности под ней. Считывание
базируется на электрическом токе наводимом в катушке головки, под воздействием
перемещающегося относительно нее магнитного поля. Несмотря на разнообразие типов
магнитных дисков, принципы их организации обычно однотипны. Все магнитные диски
можно разделить на два типа: гибкие (дискеты, НГМД) и жесткие (винчестер). Как и все
остальные ПУ магнитные диски подключаются к системной шине через контроллер,
который обеспечивает выполнение операции ввода/вывода.
16
3.8 Система ввода/вывода
По прерываниям.
Возможно два способа различия адресного пространства памяти и вводавывода.
 Использование адресного разряда (обычно старший, иначе придется хитро вычислять
адрес) для селекции память/порт. Преимущества – не нужно специального сигнала из
процессора. Недостатки очевидны – уменьшение вдвое адресного пространства и
пространства ввода-вывода.
 Использование селектирующего сигнала для определения адресного пространства
памяти и ввода-вывода.
Алгоритм ввода-вывода. Устройство, инициирующее обмен данными, вызывает
прерывание процессора, процессор читает регистр состояния устройства (принтер) или
данные от устройства (мышь). Преимущества – быстрота реакции процессора на запрос
устройства. Устройство не ждет, пока его опросят, а процессору не надо периодически
опрашивать устройство.
3.9 Таймер
Таймер предназначен для деления машинного времени на временные интервалы,
для эффективного использования процессора при работе с периферийными устройствами.
Он обеспечивает совместную работу ЦП и ПУ в реальном масштабе времени,
осуществляя разбиения машинного времени на равные интервалы времени.
Назначение таймера:
 генерация прерываний от системных часов;
 генерация запросов на регенерацию памяти;
 генерация звуковых сигналов (PC Speaker)
В состав таймера входят схемы, необходимые для:
 запроса и получения канала;
 формирования вектора прерывания;
В качестве таймера в ЭВМ используется аналог микросхемы 580ВИ53 трехканальное программируемое устройство, предназначенное для организации работы
микропроцессорных систем в режиме реального времени. Таймер формирует сигналы с
различными временными параметрами.
Программируемый таймер реализован в виде трех независимых 16-разрядных
каналов с общей схемой управления. Каждый канал может работать в шести режимах.
Программирование режимов работы каналов осуществляется индивидуально и в
произвольном порядке путем ввода управляющих слов в регистры режимов каналов, а в
счетчики - запрограммированного числа байтов.
Управляющими сигналами для таймера являются, сигналы каналов, разрешающие
или запрещающие счет, сигналы выбора каналов, а также входы write/read и вход выбора
микросхемы. Максимальное значение счета: в двоичном коде 216; в двоично-десятичном
коде 104, а частота синхронизации каналов 0-2,5 МГц.
AB/DB
CB
Подтверждение
прерывания (INTA)
Таймер
Запрос на прерывание
(INTR)
Рис. 15. Структурная схема включения таймера
17
4. Разработка принципиальной схемы УУ, включая систему
прерываний.
МУУ представляет собой конвейер, функциональное назначение которого – получив
команду из основной памяти синхронно выдавать микрокоманды, которые входят в
данную команду.
В основе МУУ лежит секвенсор микрокоманд Am29331 имеющий 16-разрядную шину
адреса. Кроме секвенсора в состав МУУ входят 32-разрядный регистр команд RG К,
преобразователь начального адреса (ПНА), реализованный в виде программируемой
памяти PROM, микропрограммная память (МПП), регистр микрокоманд RG МК.
DB/AB
RG Команд
КОП
ПНА
Статусный
регистр
Vector
Блок
управления
прерываниями
Секвенсор
Адрес перехода/
константа
Адрес МК прерывания
МПП
RG МК
Выбор инструкции
Проверка того или иного признака из
статусного регистра
На остальные устройства
Рис. 16. Структурная схема УУ с обработкой прерываний на микрокомандном уровне.
Принцип работы такого УУ следующий:
1). С шины данных поступает очередная команда из какой-либо программы.
2). Данная команда содержит несколько полей, одно из которых – код операции (КОП)
«изымается» из этой команды и отправляется на ПНА, в котором для данной операции
хранится адрес первой микрокоманды той микропрограммы, что соответствует текущей
команде. Также по коду операции можно определить, какую команду выбирать далее –
следующую по порядку (в следующей ячейке ОП) или, если эта команда может поменять
порядок следования команд (условные/безусловные переходы), то произвести этап
формирования адреса следующей команды несколько позже.
3). Первая микрокоманда выбрана, её адрес подаётся на секвенсор, который и
«отсылает» адрес этой микрокоманды в МПП, хранящую все используемые в данной ЭВМ
микропрограммы. В дальнейшем секвенсор будет формировать адреса следующих
микрокоманд выполняемой микропрограммы (либо увеличивать адрес на 1 –
18
естественный порядок выполнения команд, либо выбирать некоторый адрес в
зависимости от поступающих на его вход признаков и инструкций).
При возникновении прерываний, на вход секвенсора поступает сигнал INTR – запрос на
прерывание от какого-либо устройства. При поступлении такого сигнала, секвенсор
подтверждает прерывание сигналом INTA, позволяя устройству формировать вектор
прерывания, фактически представляющий собой адрес микропрограммы обработчика
прерывания.
В данной работе УУ должно обеспечивать реакцию на прерывания на уровне
микрокоманд, т.е. возможность прервать выполняемую микропрограмму после
выполнения текущей микрокоманды (при прерываниях на уровне команд текущая
команда доводится до завершения). Обеспечение реакций на прерывания на уровне
микрокоманд приводит к увеличению скорости обслуживания прерываний – не нужно
ждать выполнения целой команды, однако требуется запомнить гораздо больше
информации.
Реализация реакции на прерывания на уровне микрокоманд в данной работе реализуется
следующим образом: при поступлении сигнала INTR – запрос на прерывание, секвенсор
выдаёт сигнал INTA – подтверждение прерывания, разрешая устройству, требующему
прерывание, формировать вектор прерывания. Вектор прерывания поступает в блок
управления прерываниями, в котором формируются два сигнала для секвенсора, первый
переведёт выходную шину секвенсора в третье состояние, что необходимо, т.к. блок
управления прерываниями выставит на шину ко входу МПП адрес первой микрокоманды
микропрограммы прерывания. Второй сигнал поступает на вход C_IN секвенсора (при
обработке прерывания – поступает «0»). Если этот вход ненулевой, то любой адрес,
оказавшийся на выходе мультиплексора (входящего в состав секвенсора – именно MUX
выбирает, откуда выбирать адрес для следующей микрокоманды) при нахождении
выходов секвенсора в состоянии высокого сопротивления, будет увеличен на 1 и первая
микрокоманда подпрограммы обработки прерывания будет утеряна, что недопустимо.
Далее приведены используемые микросхемы для регистров команд и микрокоманд,
ПНА, секвенсора и МПП.
Регистр команд.
В качестве регистра команд будем использовать два тактируемых 16-ти разрядных
регистра фирмы IDT – FCT16374AT, с тремя состояниями выходов, напряжением
питания 5 В.
В данный регистр заносится управляющая команда, часть битов которой, в дальнейшем,
поступает в преобразователь начального адреса (ПНА), а часть направляется в ОБ.
Команда заносится в регистр по фронту синхросигнала поступающего из блока
синхронизации.
Преобразователь начального адреса.
Пусть на код операции (КОП) выделено 8 бит, - этим числом разрядов мы можем
адресовать 256 команд. Начальный адрес, выдаваемый на секвенсор имеет разрядность 16
(по свойству секвенсора). Таким образом, мы сформировали требование к
информационной организации ПНА. В качестве ПНА будем использовать память типа
EPROM фирмы CYPRESS. Дабы улучшить временные показатели работы МУУ выберем
из найденной документации память, имеющую самое малое время доступа – 25 нс.
Выбранная ИМС - 7C281A-25 имеет информационную организацию (1Кх8)бит и
напряжение питания 5 В.
Так как нам необходимо адресовать всего 256 слов памяти, то старшие два бита адреса
не будут задействованы в адресации. Для получения необходимой разрядности
адресуемого слова будем использовать 2 микросхемы, соединённые параллельно.
19
Секвенсор микрокоманд.
БИС Am29331 имеет фиксированную разрядность 16 бит, объём адресуемой памяти
микропрограмм до 64К слов. Поддерживает прерывания реального времени на макро- и
микроуровнях управления с временем реакции, не превышающем длительность
микроцикла. Обладает встроенной логикой тестирования входных условий, а также
встроенной логикой обнаружения контрольной точки в микрокоде для отладки
микропрограмм и накопления статистики. Обеспечивает контроль ошибок в режиме
“ведущий-ведомый”. Содержит 33-уровневый стек для организации вложенных
прерываний, циклов и подпрограмм.
В разработанном МУУ используется лишь часть функциональных возможностей
секвенсера, поэтому соответствующие входы устанавливаются в пассивное состояние.
На входы тестирования внешних условий T11...T7. Подаются флаги условий.
На вход #RST будем подавать сигнал с выхода схемы начальной установкию.
Микропрограммная память.
В качестве МПП будем использовать память типа EPROM фирмы AMD. Дабы улучшить
временные показатели работы МУУ выберем из найденной документации память,
имеющую самое малое время доступа – 45 нс. Выбранная ИМС – Am27C64-45 имеет
информационную организацию (8Кх8)бит и напряжение питания 5 В.
Для получения необходимой разрядности микрокоманды (98 бита) нам необходимо
использовать 13 микросхем выбранного типономинала памяти.
На входы #OE и #CE подаём «0», так как нет необходимости отключать МПП.
Регистр микрокоманд.
В качестве регистра команд будем использовать 7 тактируемых 16-ти разрядных
регистра фирмы IDT – FCT16374AT, с тремя состояниями выходов, напряжением
питания 5 В. В данный регистр поступает целая микрокоманда, которая представляет
собой управляющий сигнал для различных устройств ЭВМ.
Таким образом, мы сформировали микропрограммное устройство управления.
Принципиальная схема МПУ приведена на рис.17, а на рис.18, 19 и 20 приведены
соответственно схемы блока управления поступающими прерываниями, МПП и RG МК.
На общей схеме данные элементы представлены в виде «чёрных ящиков», т.к. разместить
на общей схеме все элементы оказалось невозможно из-за большой разрядности МПП (98
бит). Стоит отметить, что такой формат микрокоманды взят из курсового проекта по
дисциплине «Схемотехника», где разрабатывалось ядро микроЭВМ.
20
Рис. 17. Принципиальная схема УУ, включая систему прерываний.
Рис. 18. Схема замещения блока управления прерываниями.
Рис. 19. МПП.
Рис. 20. Регистр микрокоманд.
5. Заключение
В ходе выполнения курсовой работы были получены новые и закреплены
имеющиеся знания по дисциплине «Организация ЭВМ».
Данная работа помогла приобрести навыки по проектированию простейшей ЭВМ.
В результате работы была создана структурная схема простейшей ЭВМ, было
произведено описание основных компонентов и блоков. Также была разработана
принципиальная схема блока устройства управления с реакцией на прерывания.
Выполнение данной работы показалось мне достаточно интересным, хотя
разрабатывать именно гипотетическую ЭВМ очень трудно (как будто создаёшь нечто
абстрактное). Однако, я, конечно понимаю, что разработать хотя бы один реальный блок
ЭВМ – это уже совсем другая – более сложная задача. Тем не менее, я постарался сделать
свой блок устройства управление как можно более «работоспособным».
23
Список литературы
1. Мик Дж., Брик Дж. «Проектирование микропроцессорных устройств с разрядномодульной организацией»: в 2 кн. / Перев. с англ.- М. Мир, 1984.
2. Каган Б.М. Электронные вычислительные машины и системы: Уч. пособие для
вузов – 3-е изд., перераб. и дополн. – М., Энергоатомиздат, 1991, - 592 стр.
3. Соболев В.И. Схемотехника. Руководство к лабораторным работам. – Н., НГТУ,
1999, 46 стр.
4. Соболев В.И. Схемотехника. Руководство к курсовой работе. – Н., НГТУ, 1997, 61
стр.
5. Микропроцессоры и микропроцессорные комплекты интегральных микросхем:
Справочник: в 2 т./ Н.Н. Аверьянов, А.И. Березенко, Ю.И. Борщенко и др.; Под
ред. В.А. Шахнова.- М.: Радио и связь, 1988. – т. 2. – 368 стр.
6. Курс лекций по дисциплине “Организация ЭВМ и систем” за 2007г.
7. Гук М.Ю. Аппаратные средства IBM PC: Энциклопедия. – СПб.: Питер, 1998. – 815
стр.
8. Угрюмов Е.П. «Цифровая схемотехника». – Спб.: БХВ-Петербург, 2001. – 528 стр.
24
Документ
Категория
Компьютеры и периферийные устройства
Просмотров
11
Размер файла
578 Кб
Теги
вагизов
1/--страниц
Пожаловаться на содержимое документа