close

Вход

Забыли?

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

?

Малахов

код для вставкиСкачать
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Новосибирский государственный технический университет
Курсовой проект по дисциплине
«Организация ЭВМ»
Разработка ЭВМ
Группа:
АМ-710
Выполнил:
Малахов С.А.
Преподаватель: Гребенников В.Ф.
Новосибирск
2010
Оглавление
1. Цель работы ......................................................................................................................3
2. Задание ..............................................................................................................................3
3. Разработка и описание структурной схемы ЭВМ .........................................................4
4. Центральный процессор ..................................................................................................6
4.1. Операционный блок ..................................................................................................6
4.2. Микропрограммное устройство управления ..........................................................7
4.3. КЭШ ...........................................................................................................................8
5. Оперативная память .......................................................................................................10
6. Система прерываний ......................................................................................................12
7. Блок синхронизации и таймер ......................................................................................13
8. Внешние устройства ......................................................................................................14
8.1. Клавиатура ...............................................................................................................14
8.2. Мышь........................................................................................................................14
8.3. Монитор ...................................................................................................................14
8.4. Жесткий диск ...........................................................................................................15
8.5. НГМД .......................................................................................................................15
9. Разработка функциональной схемы КПДП .................................................................15
10. Выводы ..........................................................................................................................22
11. Список использованной литературы ..........................................................................23
2
1. Цель работы
Целью курсового проектирования является углубление и закрепление теоретических
знаний студентов, приобретение навыков разработки узлов ЭВМ на структурном,
функциональном и алгоритмическом уровнях. В ходе курсовой работы необходимо
разработать структурную схему гипотетической ЭВМ, функциональную схему и алгоритм
работы конкретного блока, входящего в состав этой ЭВМ.
2. Задание
Курсовой проект посвящен разработке структурной схемы гипотетической ЭВМ,
функциональной схемы и алгоритма работы конкретного блока, входящего в состав этой
ЭВМ.
В состав ЭВМ входят следующие блоки:
 операционный блок (ОБ);
 микропрограммное устройство управления (МУУ);
 оперативная память (ОП);
 блок синхронизации (БС);
 система прерывания программ (СПП);
 таймер;
 система ввода-вывода (СВВ);
 монитор, клавиатура, мышь;
 жесткий диск.
Основные параметры ЭВМ:
 адресность ЭВМ - двухадресная;
 длина команды – переменная;
 разрядность - 32;
 емкость памяти – 24 Мбайт;
Индивидуальные исходные данные на выполнение курсового проекта:
 Структура: трехшинная;
 Сопроцессор: нет;
 Система прерываний: с индивидуальными линиями и обращениями на
уровне команд;
3
 Кэш: разделенный команд и данных;
 Оперативная память: многоблочная;
 Ввод/вывод: ПДП;
 Контроль ОП: нет контроля;
 Блок для разработки: ПДП с контролем ввода/вывода по паритету,
повторяющийся ПДП;
3. Разработка и описание структурной схемы ЭВМ
Было решено разрабатывать структурную схему ЭВМ методом “нисходящего
проектирования” – т.е. сверху вниз. Для начала рассмотрим обобщенную структуру ЭВМ,
взаимодействие основных элементов системы между собой, далее элементы системы
будут рассматриваться в отдельности.
В первую очередь ЭВМ состоит из:

центрального
процессора
(ЦП),
отвечающего
за
обработку
данных,
выполняющего вычисления и т.п.;

основной памяти (ОП), в которой хранятся данные и команды;

устройств ввода-вывода (УВВ), отвечающих за связь с внешней средой.
ЦП обрабатывает данные в соответствии с заранее определенными инструкциями,
при этом программа, состоящая из инструкций, и данные находятся в ОП.
Для загрузки программы и данных в память, а также для вывода результатов
обработки из памяти необходим какой-либо способ связи с внешними объектами. Этой
цели служат УВВ.
ЭВМ на уровне общей архитектуры представлена на рис. 1.
Рис. 1. ЭВМ на уровне общей архитектуры.
4
Как видно из риc. 1, ЦП, ОП и УВВ имеют общую шину, из этого следует тот факт,
что в каждый момент через общую шину может происходить обмен данными только
между одной парой устройств (например: ЦП – ОП). Так как по заданию необходимо
реализовать прямой доступ к памяти (ПДП), то возможен обмен УВВ - ОП.
Система ввода-вывода отвечает за обмен информацией между ядром ЭВМ и
разнообразными внешними устройствами. СВВ реализуется модулями ввода-вывода
(МВВ), которые отвечают за обеспечение интерфейса с: ЦП и памятью; с одним или
несколькими периферийными устройствами.
В соответствии с заданием структура ЭВМ трехшинная, рассмотрим эти шины:

DB (шина данных) – обеспечивает обмен данными между всеми основными
блоками ЭВМ (разрядность шины: 32).

АВ (шина адреса) – используется для задания адреса памяти. По шине адреса
обращение может идти как к ОП (основной памяти), так и к ВУ (внешним
устройствам).

СВ (шина управления) – обеспечивает передача сигналов управления между
различными блоками ЭВМ.
Внешние устройства (ВУ) присоединяются с помощью модулей ввода-вывода
(контроллеров), осуществляющих согласование форматов данных, используемых в ВУ с
форматом принятым в ЭВМ. Формат данных проектируемой гипотетической ЭВМ –
32бита.
Но для накопителя на гибких магнитных дисках (НГМД) и жесткого диска
реализован прямой доступ к памяти, который предоставляет возможность внешним
устройствам и памяти непосредственно обмениваться данными без вмешательства ЦП.
ПДП обеспечивает максимальную скорость ввода-вывода и максимальный параллелизм
процессов. За прямой доступ к памяти отвечает контроллер прямого доступа к памяти
(КПДП).
Стоит отметить, что при ПДП процессор не полностью освобождается от
управления операциями ввода/вывода, он должен обработать прерывание, послать
подтверждение прерывания и необходимые данные на КПДП, также во время операции
передачи данных магистральная шина оказывается занятой и процессор не может
взаимодействовать с памятью.
За работу монитора, мыши и клавиатуры отвечают отдельные контроллеры.
Исходя из индивидуального задания, к системе прерываний идут индивидуальные
линии от всех ВУ (для наглядности они изображены только входящими в СПП).
5
В состав ЦП включены микропрограммное устройство управления (МУУ), основной
блок (ОБ) и, согласно заданию, раздельный КЭШ команд и данных.
Структурная схема ЭВМ представлена на рис. 2.
Рис. 2. Структурная схема ЭВМ.
Операции считывания производят передачу информации от исполнителя задатчику,
а операции записи – в обратном направлении. Вид операции задается комбинацией
управляющих сигналов, которые задатчик посылает исполнителю.
Так
же
в
приложении
приведена
детализированная
структурная
схема
разрабатываемой ЭВМ.
4. Центральный процессор
Центральный процессор отвечает за выполнения команд и обработку данных. ЦП
состоит из: операционного блока (ОБ) и микропрограммного устройства управления
(МУУ) и КЭШ (раздельного команд и данных).
4.1. Операционный блок
Операционный блок выполняет арифметическую и логическую обработку данных;
производит приём из внешней памяти и хранение слов во внутренних регистровых
6
файлах; преобразование и выдачу либо слов, либо адресов результата на шину данных;
выдает в МУУ флаги признаков и условий.
Основными элементами ОБ являются:
Арифметико-логическое устройство (АЛУ) – предназначено для логической и
арифметической обработки данных, поступающих на соответствующие входы. Выбор
операции управляются битами из регистра микрокоманд.
Регистровый файл (РФ) – обеспечивает сохранение операндов, результатов и
необходимых данных в ходе операции, которые можно было бы читать и перезаписывать
с очень большой скоростью (для экономии времени выполнения операций). РФ должен
быть двупортовым – обеспечивать возможность чтения/записи сразу 2 “ячеек”, для подачи
на входы данных АЛУ.
Аккумулятор (Акк) – регистр, в котором может хранится результат текущей или
предыдущей операции, через него происходит операция вывода.
Взаимодействие ОБ с другими элементами системы осуществляется через шины AB
и DB. Шины AB и DB являются системными, поэтому регистры, через которые проходит
передача данных на шины, способны переходить в Z состояние (передача управляется
соответствующими битами микрокоманды).
Описание работы ОБ:
По локальной шине LB МУУ передает инструкции в АЛУ, РФ и аккумулятор,
согласно которым АЛУ берет операнды из РФ, обрабатывает их, и через аккумулятор
производит операцию вывода (возможен вывод как на шину данных, так и на шину
адреса).
Адрес ячейки РФ может быть взят как из регистра команд, так и из регистра
микрокоманд. Загрузка данных может осуществляться по шине данных, из команды и
микрокоманды.
Выбор
способа
загрузки
производиться
из
отведённых
битов
микрокоманды (за выбор отвечают мультиплексоры, не указанные на структурной схеме).
Также по LB ОБ передает МУУ флаги, влияющие на работу УУП.
4.2. Микропрограммное устройство управления
Устройство управления организует автоматическое выполнение программ и
обеспечивает работу ЭВМ как единой системы. МУУ вырабатывает последовательность
управляющих сигналов, которые отвечают за извлечение команд из памяти в порядке,
определяемом программой, и последующее выполнение этих команд, а также выдаёт на
системную шину управляющие сигналы для всех внешних устройств и ОП.
Описание работы МУУ:
7
В начале цикла команда(если разрешено чтение команды битом микрокоманды)
считывается с шины данных в регистр команд (Рком). Старшие 8 бит команды являются
кодом
операции
(КОП),
выполняемой
процессором.
Эти
биты
поступают
на
преобразователь начального адреса (ПНА). Следующие биты (которые содержат адреса
ячеек памяти, адреса регистров общего назначения или данные) поступают в буферные
регистры (на схеме не указаны), для дальнейшей передачи на AB или DB и на локальную
шину данных LB.
ПНА преобразует код операции в начальный адрес команды (адрес первой
микрокоманды программы в микропрограммной памяти (МПП)) и передается на шину
адреса
устройства
управления
последовательностью
(УУП,
также
называемым
секвенсором). УУП обрабатывает полученный адрес (программирование УУП ведется из
микрокоманды) и вырабатывает адрес следующей микрокоманды.
По адресу, полученному из УУП из микропрограммной памяти читается следующая
микрокоманда и записывается в конвеерный регистр (регистр микрокоманд - Рмк), из
которого часть битов идёт на шину управления CB, локальную шину LB(к ОБ), а вторая
часть задает инструкции и адрес для следующей микрокоманды.
Стоит отметить, что команда содержит в себе 2 адреса, так как по заданию
адресность ЭВМ – двухадресная.
4.3. КЭШ
Кэш – это внутренняя память процессора, которая имеет значительно большее
быстродействие, чем ОП. Кэш память не увеличивает емкость памяти ЦП и она не видима
пользователю. Она содержит копии данных (команд) из ОП, к которым уже было
обращение (или может произойти), т.е. из ОП помещаются нужные в текущий момент ЦП
данные и еще некоторое количество последующих слов. При использовании КЭШ
обращения (кроме первого раза) происходят в разы быстрее обращений к ОП. В
проектируемой ЭВМ используется и КЭШ команд и КЭШ данных поэтому ЦП всегда
обращается сначала к КЭШ.
При обращении процессора к ОП для считывания в КЭШ передается блок
информации, содержащий нужное слово (блок записывается в строку КЭШ-памяти). При
этом происходит опережающая выборка, т.к. высока вероятность того, что ближайшие
обращения будут происходить к словам этого же блока, уже находящемся в кэш. Это
приводит к значительному уменьшению среднего времени, затрачиваемого на выборку
данных.
8
В разрабатываемой ЭВМ длина строки КЭШ памяти равна 4-м словам – (4 X 32 =
128 бит). Емкость КЭШ команд и КЭШ данных – 8 Кбайт каждая, соответственно обе
КЭШ-памяти имеют по 512 строк, соответственно для адресации нужно 9 разрядов.
Было решено использовать в качестве КЭШ статическую оперативную память
(SRAM), из за высокого быстродействия и отсутствия необходимости регенерации.
Описание работы КЭШа: при каждом обращении к памяти контроллер КЭШ-памяти
(на схеме контроллер КЭШ входит в состав КЭШ) проверяет, есть ли действительная
копия затребованных данных в КЭШ-памяти и одновременно обращается к основной
памяти. Если произошло попадание (копия существует), тогда обращение за данными
происходит к КЭШ-памяти и обращение к основной памяти прерывается. Если копии нет
(промах), то данные берутся из основной памяти.
В проектируемой ЭВМ в качестве способа отображения оперативной памяти на
КЭШ-память выбрано полностью ассоциативное отображение. КЭШ с полностью
ассоциативным отображением позволяет загрузку любого блока ОП в любую строку
КЭШ-памяти. Логика управления (контроллер КЭШ) выделяет в адресе ОП два поля: поле
тега (21 разряд) и поле слова (2 разряда). Поле тега совпадает с адресом блока ОП. Для
проверки наличия копии блока в КЭШ-памяти, логика управления КЭШ должна
одновременно проверить теги всех строк на совпадение с полем тега адреса. Поле слова
определяет положение слова в блоке. Ассоциативное отображение обеспечивает гибкость
при выборе строки для вновь записываемого блока. Принципиальный недостаток этого
способа - в необходимости использования дорогой ассоциативной памяти.
При переполнении КЭШа замещение информации происходит по алгоритму
наиболее давнего использования (LRU). Согласно ему каждой строке КЭШ-памяти
ассоциируется счетчик, к которому через определенные интервалы добавляется единица.
При обращении к строке счетчик обнуляется, таким образом замещается та строка с
наибольшим числом счетчика.
В качестве алгоритма согласования содержимого КЭШ-памяти и основной памяти (
алгоритма свопинга) было решено использовать алгоритм буферизированной сквозной
записи без отображения: он предусматривает запись вначале в КЭШ-память, а затем, через
буфер работающий по схеме FIFO идет запись в ОП. Это позволяет процессору
продолжить работу не дожидаясь окончания передачи данных в ОП. При данном
алгоритме в ОП всегда есть последняя копия хранящейся в кэш информации.
В случае, когда КПДП, минуя процессор записал данные в память содержимое
КЭШ-памяти автоматически обновляется.
9
Рис. 3 Обобщенная структурная схема центрального процессора.
5. Оперативная память
Основная память служит для хранения данных, команд, промежуточных или
конечных результатов. ОП делится на оперативное запоминающее устройство (ОЗУ) и
постоянное запоминающее устройство (ПЗУ), в ПЗУ хранится программа начальной
загрузки ЭВМ, основные команды и данные, которые не нуждающиеся в изменении, ОЗУ
служит для временного хранения данных и программ в процессе работы.
При проектировании ЭВМ было решено использовать в качестве ОЗУ память типа
DRAM, а в качестве ПЗУ – PROM. Такой выбор обусловлен дешевизной этих типов
памяти.
Объем проектируемой ОП – 24Мбайта, 16 приходится на ОЗУ и 8 на ПЗУ.
Разрядность данных в ЭВМ – 32 бита, соответственно в памяти может храниться 6М слов,
т.е. для адресации необходимо 23 разряда.
10
По заданию организация памяти – многоблочная, т.е. адресное пространство разбито
на группы последовательных адресов и каждая такая группа обеспечивается отдельным
банком памяти (банк памяти хранит в себе определенное количество слов нужной
разрядности, в нашем случае – 32 бита). Это позволяет легко заменять неисправные блоки
памяти, а так же позволяет повысить производительность, так как при нарушении работы
одного
блока
работа
остальных
продолжится.
Выбор
банка
обеспечивается
дешифратором, который разрешает работу выбранному банку. В функциональном
отношении такое ОП рассматривается как единое ЗУ, емкость которого равна суммарной
емкости составляющих блоков, а быстродействие – быстродействию отдельного банка.
Количество используемых банков – и для ПЗУ и для ОЗУ – 16, соответственно банк
ОЗУ будет объемом 256К, банк ПЗУ – 128К.
За выбор банка отвечают 22-19 разряды адреса для ОЗУ и 21-18 разряды адреса для
ПЗУ, они поступают на дешифратор номера банка.
Адресация памяти организована по шине АВ. Выбор ПЗУ-ОЗУ осуществляется с
помощью адресного селектора(4-х битный мультиплексор 2->1), который декодирует
старший(23-й) бит с шины адреса. Если старший бит = 0, то идет адресация в PROM, если
= 1 то в DRAM. Адресная карта памяти приведена на рис. 9.
0xxxxxxxxxxxxxxxxxxxxxx(полностью используются 22 разряда адреса)
DRAM
10xxxxxxxxxxxxxxxxxxxxx(полностью используются 21 разрядов адреса)
PROM
11xxxxxxxxxxxxxxxxxxxxx(остается возможность адресовать еще 2Kслов)
Не используется
Рис. 4. Адресная карта памяти.
За обращением к адресам неиспользуемого адресного пространства контроль не
ведется, за этим должен следит пользователь. Таким образом, микросхемы памяти DRAM
и PROM работают в взаимоисключающем режиме.
Неиспользуемое адресное пространство можно использовать для адресации внешних
устройств и расширения объема ОП, т.е. можно добавить еще до 2М слов.
11
Описание работы памяти: если нет обращений к памяти (из бита микрокоманды или
от КПДП), то адресный селектор (мультиплексор, отвечающий за выбор адреса) и
буферные регистры переводятся в Z-состояние, исключая тем самым возможные
конфликты на шинах DB и AB. Если произошло обращение к памяти, то буферы и
адресный селектор переводятся в активное состояние, и осуществляется обмен данными.
С шины AB поступает адрес на буферный регистр. Затем этот адрес идет на дешифратор
выбора номера банка и на банки памяти. Выбор памяти, которая будет использоваться,
определяет адресный селектор, на вход которого подается 23-ий бит с шины AB и сигнал,
задающий режим чтения/записи для DRAM. Если требуется обращение к PROM, то на
вход селектора нужно подать 0: выход селектора передаст 0 на вход разрешения работы
PROM и разрешит чтение из него, на DRAM будет подана единица. Аналогичным образом
выполняется обращение к DRAM.
При обращении к SRAM направление передачи буферного регистра данных
регулируется сигналом, при обращении к PROM на вход выбора направления подается 1.
Рис. 5. Структурная схема ОП
6. Система прерываний
Система прерываний позволяет быстро реагировать на события, обработка которых
должна
выполняться незамедлительно.
Для
этого
идет
запоминание
состояния
прерываемой программы и осуществление перехода к прерывающей программе для ее
исполнения, а также последующее восстановление состояния прерванной программы.
12
По заданию прерывание происходит на уровне команд – это значит, что вначале
выполняется текущая программа и только после этого идет прерывание.
Устройство системы прерываний – с индивидуальными линиями (радиальная СПП).
При такой структуре у каждого устройства есть собственная линия запроса прерывания.
Это позволяет достичь наименьшего времени ответа, так как в ней не требуется особых
операций для определения устройства, пославшего запрос на прерывание. У каждой
линии запроса прерывания есть свой уровень приоритета, по которому контроллер
прерывания (он, в свою очередь, настраивается ЦП) может назначить соответствующую
маску разрешения или запрета прерывания.
Недостатком радиальной СПП является
большая ширина системной шины.
Описание работы СПП: ВУ посылает запрос IR на контроллер прерываний, который,
получив и обработав сигнал, посылает запрос на прерывание INT в ЦП. Процессор, после
окончания текущей команды, запоминает в стеке указатель следующего адреса и флаги, и
разрешает обработку прерывания, формируя сигнал подтверждения INTA. Сигнал INTA,
поступая в контроллер прерываний, выдает на ЦП через шину данных вектор прерывания,
определяющий программу обработки прерывания. После выполнения программы
обработки восстанавливаются флаги и текущий адрес, ЦП продолжает работу в
нормальном режиме.
7. Блок синхронизации и таймер
Блок синхронизации (БС) предназначен для формирования синхронизирующих
сигналов. Он состоит из кварцевого генератора и набора делителей частоты,
обеспечивающих различные частоты. БС генерирует синхросигналы для всех устройств
ЭВМ. Также блок синхронизации способен изменять длительность такта (управление
ведется из ЦП).
БС состоит из программируемого генератора, который генерирует синхросигналы
определенной частоты (ЦП задает необходимую частоту), и схем размножения
синхросигнала, от которых сигналы идут на устройства ЭВМ.
Таймер предназначен
для
измерения и отсчета интервалов времени
под
программным контролем, для эффективного использования процессора при работе с
внешними устройствами и регенерации динамической памяти (DRAM). С помощью
таймера можно задавать определённые промежутки времени, по истечении которых
происходит прерывание. Линия запроса прерывания от таймера подключается на
контроллер прерываний на самый приоритетный вход.
13
Таймер настраивается из ЦП, который может изменять временные интервалы,
устанавливать будильник, который, в определённое время, выдает одиночный или
периодический сигнал на процессор и т.п.
8. Внешние устройства
8.1. Клавиатура
Клавиатура это одно из основных устройств ввода, обеспечивающих взаимодействие
пользователя с ЭВМ.
В зависимости от нажатий на клавиши контроллер вырабатывает скан-код,
соответствующий нажатию или отпусканию определенной клавиши. При поступлении
скан-кода вызывается прерывание, имеющее высокий приоритет (выше приоритет только
у таймера). Процессор заканчивает выполнение текущей программы и выполняет
процедуру, анализирующую скан-код.
Так как нажатия клавиш могут происходить достаточно часто, то для того, чтобы
центральный процессор успевал обрабатывать все нажатия клавиш, контроллер
клавиатуры должен иметь буфер FIFO.
8.2. Мышь
Мышь воспринимает своё перемещение в рабочей плоскости
и передаёт эту
информацию на контроллер мыши. При получении сигнала об изменении положения
курсора мыши или нажатии/отпускании кнопок контроллер (если процессором разрешена
работа мыши) выдает на СПП запрос прерывания (приоритет следующий после
клавиатуры).
ЦП, обрабатывая прерывание, отображает на мониторе действие,
отвечающее направлению и расстоянию этого перемещения и выполняет действия,
вызванные нажатием клавиш.
8.3. Монитор
Монитор предназначен для вывода текстовой и графической информации,
предназначенной для пользователя.
Монитор подключается через контроллер (видеоадаптер) к системной шине.
Монитор является устройством, которое просто отображает информацию, которая
хранится по определенным адресам в ОП и не запрашивает прерываний.
В памяти хранится несколько страниц, вывод производится с текущей. Вывод
текущей видеостраницы производится с частотой 60 Hz (или больше, в зависимости от
настроек и типа монитора). При этом информация считывается в оперативную память
14
контроллера. Отображение информации, находящейся в памяти контроллера монитора
происходит независимо от процессора.
8.4. Жесткий диск
Жесткий диск является главным устройством энергонезависимой памяти. От
винчестера требуется большой объём хранимой информации (сотни гигабайт), малое
время доступа (единицы миллисекунд), большая скорость передачи данных (десятки
мегабайт в секунду), высокая надёжность, умеренная стоимость.
Контроллером
винчестера
называют
электронное
устройство,
на
одной
интерфейсной стороне которого идёт обмен байтами команд, а другая его сторона
связывается непосредственно с накопителем.
Жесткий диск подключается через контроллер ПДП, что позволяет производить
запись на жесткий диск и чтение с него непосредственно в ОП.
8.5. НГМД
НГМД является компактным средством для хранения сравнительно небольшого
объема информации (1.44 Мб). Преимущество дискет заключается в том, что они дешевы
и удобны в использовании.
НГМД общается с ЦП посредством контроллера. Контроллер управляет механизмом
привода и работает с сигналами головок записи-чтения. При каждом обращении к дискете
в регистре контроллера устанавливается бит включения мотора и в счётчик времени
заносится константа, соответствующая выдержке на отключение (по умолчанию – 2с).
Если в течение этого интервала нет обращений, мотор автоматически отключается.
Управление чтением/записью НГМД осуществляет КПДП.
9. Разработка функциональной схемы КПДП
Прямым доступом к памяти (ПДП) называется способ обмена данными,
освобождающий ЦП от функций управления системной шиной и обеспечивающий
прямую пересылку между ОП и ВУ. ПДП позволяет осуществлять параллельно во
времени исполнения программы и обмен данными между ВУ и ОП.
ПДП предполагает наличие в системе контроллера прямого доступа к памяти
(КПДП), который, после получения от ЦП или ВУ команды осуществить передачу данных
самостоятельно пересылает данные через системную шину.
В проектируемой ЭВМ ПДП реализован для накопителя на гибких магнитных
дисках (НГМД) и жесткого диска, он предоставляет возможность внешним устройствам и
15
памяти
непосредственно
обмениваться
данными
без
вмешательства
ЦП.
ПДП
обеспечивает максимальную скорость ввода-вывода и максимальный параллелизм
процессов.
КПДП, должен обеспечивать выполнение следующих функций:
1.
Обнаружение запроса на ПДП от ВУ или ЦП;
2.
Инициализация центральным процессором: запись с шины данных начальных
значений в регистр адреса, счетчик данных, регистр команд, регистр адреса ВУ;
3.
Различие типов обмена (чтение или запись в основную память);
4.
Обеспечение обмена данными между ВУ и ОП;
5.
Связь с ВУ и ОП во время обмена, с целью выяснить готовность устройств к
приёму или передаче данных;
6.
Декремент счетчика данных, и инкремент значения адреса после пересылки слова и
определение момента завершения заданной операции ввода/вывода;
7.
Информирование ЦП о завершении операции ввода-вывода;
8.
Контроль операции ввода/вывода по паритету и повторение операции при ошибке
(повторяющийся ПДП).
В состав КПДП входят элементы, рассмотренные ниже.
Логика выбора адреса.
Логика выбора адреса управляет адресацией регистров КПДП: если на шину адреса
поступает адрес, соответствующий определенному регистру, то происходит чтение (при
обращении к регистру состояния) или запись (при обращении к остальным регистрам).
Логика управления формирует для каждого регистра сигнал CPk, при отсутствии
обращений на выходы CPk1-6 подается высокий уровень.
Регистры адреса.
В КПДП входят 2 регистра адреса: регистр начального адреса и регистр текущего
адреса. При инициализации в оба регистра записывается адрес начальной ячейки ОП.
После передачи слова значение регистра текущего адреса увеличивается на 1. Регистр
начального адреса необходим для реализации повторяющегося ПДП, при ошибке из него
идет запись в регистр текущего адреса. Управление записью в регистр начального адреса
производится из логики выбора адреса (CPk2) (т.е. ее инициирует ЦП), чтение идет из
микрокоманды КПДП. Запись в регистр текущего адреса управляется также из
микропрограммы (это сделано для повторяющегося ПДП).
16
Счетчик данных и регистр начального количества слов.
В счетчик данных и регистр начального количества слов заносится размер
передаваемого блока в словах, при передаче слова значение счетчика уменьшается на 1.
Обмен заканчивается, если значение счетчика равно 0. Регистр начального количества
слов включен в состав КПДП для реализации повторяющегося ПДП. Управление чтением
и записью аналогично управлению регистров адреса (сигнал из логики выбора адреса CPk3).
Регистр данных.
Регистр данных буферизирует данные для компенсации различий в скорости работы
ОП и ВУ. На первом этапе пересылки слово заносится в регистр, на втором читается из
него обратно на шину. Для этих целей необходимо использовать регистр с входами
разрешения записи и чтения, разрядность регистра должна быть 36 бит (4 бита для
паритетных битов). Регистр данных включает в себя содержащий в себе адрес ВУ (так как
к ПДП подключено 2 устройства, для адресации требуется 1 бит). Управление записью
инициирует ЦП (сигнал CPk4 из логики выбора адреса поступает на вход IE), направление
(DIR) и разрешение вывода данных (OE) задается из микрокоманды.
Регистр адреса ВУ.
Регистр адреса содержит адрес внешнего устройства и необходимые указания: по
какому адресу ВУ нужно записать/прочитать информацию. Управление регистром
аналогично регистрам, указанным выше (сигнал из логики выбора адреса – CPk5).
Регистр состояния.
Регистр данных определяет состояние контроллера – на него подается сигнал
EMPTY со схода счетчика данных, определяющего окончание ПДП. Процессор может
вывести содержимое счетчика на шину данных, выставив на адресную шину адрес
регистр состояния, логика выбора адреса выработает сигнал CPk6 = L, разрешающий
вывод.
Логика управления.
Логика управления отвечает за выполнение последовательности микрокоманд
(реализовано в виде МУУ), реализующих ПДП. Основные элементы и принцип работы
МУУ описаны в пункте 4.2.
17
Если ЦП хочет прочитать или записать блок данных, то он должен сообщить об этом
КПДП. Этот процесс называется инициализацией контроллера ПДП.
Адресация КПДП происходит по шине адреса – если логический блок LOGIC
определил, что адрес на шине данных является адресом одного из регистров КПДП, то с
шины данных идет запись в соответствующий регистр.
Таким
образом
процесс
инициализации
включает
запись:
типа
операции
(чтение/запись) в регистр команд; начального адреса ОП в регистр адреса; количества
слов в счетчик слов; адреса ВУ в регистр адреса ВУ.
В регистр команд записывается команда - старший бит отвечает за вид операции (1 –
чтение, 0 – запись). КОП поступает на логику управления, реализованную в виде МУУ.
По полученному КОП МУУ начинает выполнять программу ввода или вывода,
причем на входы признаков МУУ необходимо подать сигналы готовности внешних
устройств (READY), сигнал подтверждения ПДП (HOLDA) от процессора и сигнал
EMPTY от счетчика данных (означающий, что счетчик пуст), сигнал ERROR и AGACC,
реализованные для повторяющегося ПДП. Из битов микрокоманды микропрограммного
устройства управления идет управление: вводом и выводом регистров КПДП; запросом на
ПДП к ЦП; сигналами управления памятью (WMEM, RMEM), которые идут к ОП;
сигналы управления ВУ (IN, OUT), управляющие внешними устройствами, сигналом
DMAC – подтверждение ПДП.
В проектируемой ЭВМ КПДП полностью захватывает системную шину с момента
пересылки, до момента завершения передачи всего блока. Во время ПДП ЦП не может
использовать системную шину.
После инициализации МУУ опрашивает входы запроса DMA, и, если запрос есть и
устройства готовы, то на ЦП посылается запрос на ПДП (HOLD – запрос захвата
системной шины). После этого МУУ опрашивает вход HOLDA. После разрешения ПДП
процессор больше не участвует в передаче данных, и КПДП сам занимается ПДП.
Передача происходит в два этапа: 1) слово записывается из ОП/ВУ в буферный
регистр данных, 2) слово записывается из буферного регистра в ВУ/ОП, цикл
продолжается до тех пор, пока весь блок не будет передан. Когда счетчик слов равен 0
снимается запрос захвата шины, подтверждение запроса захвата шины и ЦП может ее
использовать. При передаче слова проверяется контроль ввода-вывода по паритету.
Функциональна схема КПДП представлена на рис. 9.
Контроль ввода-вывода по паритету осуществляется следующим образом: каждый
байт (размер слова ЭВМ – 4 байта), идущий по шине данных сопровождается битом
паритета (обеспечивающий четность числа “бит паритета+байт”). Генераторы и
18
приемники паритетных битов включены в состав ОП и ВУ, и реализованы на элеметах
“исключающее или”. Приемник паритетных битов проверяет данные на четность и, если
находит ошибку, посылает сигнал ERROR на секвенсор (УУП). При ошибке секвенсор
прерывает передачу и запускает программу повторения ПДП, которая состоит из
нескольких шагов:
1. Опрос ВУ на возможность повторения записи сигналом AGAIN, если повторение
невозможно (AGACC = 0), то на ЦП передается сигнал об ошибке (NOTEND) и работа
КПДП прекращается.
2. При подтверждении повторения от ВУ в регистр текущего адреса и в счетчик
команд записываются начальные значения (из регистра начального количества слов и
регистра начального адреса).
3. КПДП продолжает работу в обычном режиме.
Функциональные схемы генератора паритетных битов (рис. 7) и устройства
контроля паритета(рис. 8) разработаны на основе 8-ми битного устройства паритета (для
реализации можно использовать DM93S62 или его аналог).
19
Y[0..31] Y[0..7]
PCG
I 0..8
PO
PE
E
Y[8..15]
PCG
I 0..8
PO
PE
E
Y[16..23]
PCG
I 0..8
PO
PE
E
Y[24..31]
PCG
I 0..8
PO
PE
E
4
PY[0-3]
Рис. 7. Функциональная схема генератора паритетных битов.
Y[0..35] Y[0..8]
E#
PCG
I 0..8
PO
PE
E
Y[9..17]
PCG
I 0..8
PO
PE
E
Y[18..26]
PCG
I 0..8
PO
PE
E
Y[27..35]
PCG
I 0..8
PO
PE
E
A1
A2
A3
A4
&
ERROR
Y
Рис. 8. Функциональная схема устройства контроля паритета.
20
Рис. 9. Функциональная схема КПДП.
21
LOGIC
Y
CLOCK
READY,DMA,
HOLDA,ERROR,AGACC
5
от ВУ,
ЦП и
схемы
контроля
A 0..31
32
CPk
Mk[8]
Mk[16]
Mk[4]
Mk[6]
Mk
CPk1
32
IE
LE
D 0..7
A 0..7
RST
CP
S 0..3
T 0..11
M 0..15
I 0..5
OED
8
RG
A 0..31 B 0..31
DB
SEQ
CPk1
Y 0..7
2
2
AB
8
CS
A 0..1
OE
CE
A 0..7
CLOCK
CPk6
D 0..7
PROM
4x8
A
LE
OE
D 0..44
PROM
512x44
5
RG
45
B
CLOCK
CPk3
Mk
32
CLOCK
CPk2
Mk
32
LE
IE
OE
A 0..31
LE
IE
OE
A 0..31
LE
CE
OE
A 0..45
RG
RG
B 0..31
RG
B 0..31
B 0..45
LE
IE
OE
A 0..31
LE
IE
OE
A 0..31
EMPTY
RG
B 0..31
RG
B 0..31
32
CLOCK
CPk5
Mk
CLOCK
Mk
CPk4
Mk
32
LE
IE
OE
8
RG
B 0..31
RG
B 0..37
CB
A 0..31
LE
DIR
IE
OE
A 0..37
36
MEMW,MEMR,IN,OUT,HOLD,AGAIN,DMAC,NOTEND
CLOCK
CPk3,Mk
Mk
32
CLOCK
CPk2,Mk
Mk
32
к ВУ
10. Выводы
В ходе выполнения курсового проекта была спроектирована гипотетическая ЭВМ,
был разработан ее состав и описаны основные блоки, входящие в этот состав. Помимо
этого были описаны основные принципы функционирования спроектированной ЭВМ.
Один из блоков был разработан наиболее детально, то есть на функциональном
уровне. Этим блоком является контроллер прямого доступа к памяти.
Разработанная ЭВМ удовлетворяет всем требованиям, обозначенным в задании.
Работа потребовала детального изучения архитектуры ЭВМ и особенностей
функционирования отдельных ее составляющих. В особенности это касается КПДП,
поскольку заданием было определено построение функциональной схемы данного узла.
В процессе проектирования закрепились на практике
теоретические знания,
полученные в ходе изучения курсов «Организация ЭВМ и систем» и «Схемотехника»,
понимание взаимодействий между различными элементами микропроцессора. Помимо
теоретических знаний были использованы практические навыки проектирования.
22
11. Список использованной литературы
1. Угрюмов Е. Цифровая схемотехника. – СПб.: БХВ – Петербург, 2001. – 528 с.: ил.
2. Мик Дж., Брик Дж. Проектирование микропроцессорных устройств с разрядномодульной организацией: В 2-х книгах. Пер. с анг.-М.:Мир, 1984.-Кн. 2. 223с., ил
3. Цилькер Б.Я., Орлов С.А. «Организация ЭВМ и систем».-СПб.:Питер,2004.-668с.
4. Горнец Н.Н., Рощин А.Г., Соломенцев В.В. «Организация ЭВМ и систем».-М. :
Издательский центр “Академия”, 2006. – 320 с.
Документ
Категория
Компьютеры и периферийные устройства
Просмотров
22
Размер файла
328 Кб
Теги
малахов
1/--страниц
Пожаловаться на содержимое документа