Описание лабораторной установки. Лабораторная работа выполняется на персональном компьютере с ОС Windows

Лабораторная работа выполняется на персональном компьютере с ОС Windows. Программа имитационного моделирования подсистемы ввода-вывода имеет имя Model_InputOutput и находится в папке Лаб_2. Она составлена на языке Delphi 2010 и позволяет задать один из трех режимов моделирования:

- непрерывный;

- потактовый;

- по таймеру.

Модель обеспечивает исследование подсистемы ввода-вывода, работающей в двух основных режимах:

- без вывода символов на экран;

- с выводом на экран.

Программа позволяет задать следующие исходные данные:

4) количество задач (программ), выполняемых на ЭВМ – от 1 до 5, в данной работе исследуется многопрограммный режим, т.е. число задач больше одной;

5) для каждой задачи:

e) количество процессорных команд (от 100 до 1000, по умолчанию - 100);

f) количество операций ввода (от 10 до 500 - не более количества процессорных команд, по умолчанию -10);

g) среднее число вводимых символов за одну операцию (от 10 до 50, по умолчанию - 10);

h) объем памяти в ОП, занимаемый одной задачей (от 64 Гбайт до 512 Гбайт, по умолчанию – 64 Гбайт);

6) параметры устройств моделируемой системы, такие как:

d) быстродействие центрального процессора в млн. оп/с (от 10 до 1000, по умолчанию – 10);

e) объем ОП, Гбайт (от 1 до 64, по умолчанию – 1);

f) объем видеопамяти видеокарты, Гбайт (от 1 до 4, по умолчанию – 1).

Результатами моделирования являются временные диаграммы работы основных устройств – процессора, клавиатуры и видеоадаптера, а также количество Т тактов их работы.

Порядок выполнения лабораторной работы

Подготовка к работе

1. Знакомство со всеми разделами руководства.

2. Получение у преподавателя задания на исследование подсистемы ввода-вывода с различными параметрами задачи.

3. Исследование подсистемы с заданными параметрами задачи.

4. Оформление отчета.

Последовательность выполнения лабораторной работы

В лабораторной работе необходимо исследовать те же режимы работы подсистемы ввода-вывода в мультипрограммном режиме, что и в лабораторной работе № 1 для однопрограммного режима. При установке параметров имитационной модели на вкладке «Параметры моделирования» флажок «Мультипрограммный режим» должен быть установлен!

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

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

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

 

Содержание отчета о выполненной работе

Отчет должен содержать следующее:

1. Название и цель работы.

2. Исходные данные.

3. Графики количества тактов работы устройства в зависимости от параметров, изменяемых в каждом пункте. Каждый график должен содержать семейство кривых: для 2, 3 и 5 задач.

4. Выводы о влиянии параметров задачи и устройств на характеристики исследованной подсистемы.

Контрольные вопросы

1. Чем отличается мультипрограммный режим от однопрограммного?

2. Как обслуживаются задачи в мультипрограммном режиме?

3. В каких режимах осуществляется ввод текстовой информации в ЭВМ?

4. Какие устройства участвуют в операции ввода одного символа?

5. Для чего нужен буфер клавиатуры?

6. Какие функции выполняет видеокарта?

7. Как влияет количество задач на характеристики подсистемы в исследованных Вами режимах?

8. Как влияют параметры отдельной задачи на характеристики подсистемы в исследованных Вами режимах?

9. Как влияют параметры устройств на характеристики подсистемы в исследованных Вами режимах?

10. Какие устройства вносят основной вклад во время выполнения программ?

11. Какие операции вносят основной вклад во время выполнения программ?

 

 

Лабораторная работа №3
Исследование подсистемы прямого доступа
к памяти компьютера в однопрограммном режиме

Краткая теория

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

Операции ввода-вывода в современных компьютерах могут выполняться в одном из двух основных режимов:

1) программно-управляемый, который предполагает непосредственное участие центрального процессора;

2) прямой доступ, реализуемый под управлением контроллера ввода-вывода.

Первый режим характеризуется тем, что все действия, связанные с вводом или выводом, реализуются командами прикладной программы.

Для большинства внешних устройств до выполнения рассматриваемых операций надо убедиться в их готовности к обмену. Общее состояние устройства характеризуется флагом готовности READY, называемым иногда также флагом готовности/занятости (READY/BUSY). Процессор проверяет флаг готовности с помощью одной или нескольких команд. Если он установлен, то инициируются собственно ввод или вывод одного или нескольких слов данных. Когда флаг сброшен, процессор выполняет цикл из 2-3 команд. После этого он повторно проверяет флаг READY до тех пор, пока устройство не будет готово к операциям ВВ. Описываемый цикл называется циклом ожидания готовности ВУ и реализуется в различных процессорах по-разному.

При пересылке данных из внешнего устройства в оперативную память при программно-управляемом режиме процессор должен выполнить следующую последовательность операций:

1) сформировать начальный адрес области ОП для обмена;

2) занести длину передаваемого массива в один из своих внутренних регистров, который будет играть роль счетчика;

3) выдать команду чтения информации из ВУ; при этом на шину адреса из процессора выдается адрес внешнего устройства, на шину управления - сигнал чтения из ВУ, а считанные данные заносятся во внутренний регистр процессора;

4) выдать команду записи информации в ОП; при этом на шину адреса из процессора подается адрес ячейки оперативной памяти, на шину управления - сигнал записи в ОП, а на шину данных выставляются данные из регистра процессора, в который они были помещены при чтении из ВУ;

5) модифицировать регистр, содержащий адрес оперативной памяти, чтобы перейти к новой ячейке;

6) уменьшить счетчик длины массива на размер переданных данных;

7) если переданы не все данные, то повторить шаги 3 - 6, в противном случае закончить обмен.

Основной недостаток программного ввода-вывода связан с непроизводительными потерями времени процессора в циклах ожидания. К достоинствам следует отнести простоту его реализации, не требующей дополнительных аппаратных средств.

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

Альтернативой программного ввода-вывода является способ, при котором устройство само оповещает процессор о своей готовности. Он использует прерывания, которые инициируются внешним устройством, генерирующим соответствующий сигнал. Для обработки прерываний в процессор встраивается соответствующий контроллер. Так, в процессор Pentium был добавлен улучшенный программируемый контроллер прерываний — APIC (Advanced Programmable Interrupt Controller). Начиная с этого процессора, каждая следующая модель снабжалась интегрированным локальным контроллером (Local APIC-ом). Он использовался в многоядерных и многопроцессорных системах.

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

Основное назначение прямого доступа (ПДП – DMA, Direct Memory Access) — передача данных между разными устройствами с минимальным привлечением процессора. Как правило, одним из этих устройств является оперативная память, хотя иногда возможны как передачи между двумя внешними устройствами, так из памяти в память. Прямой доступ позволяет осуществлять обмен данными между внешним устройством и оперативной памятью параллельно с выполнением программы процессором. При этом увеличивается производительность компьютера за счет того, что данные не пересылаются в ЦП и обратно.

Современные контроллеры ПДП многоканальные, что позволяет поддерживать несколько каналов доступа к памяти от разных периферийных устройств. Схема включения КПДП в состав компьютера представлена на рисунке 3.1. Перед началом работы контроллер необходимо инициализировать: занести начальный адрес области ОП, с которой производится обмен, и длину передаваемого массива данных. В дальнейшем по сигналу запроса прямого доступа контроллер фактически выполняет все те действия, которые обеспечивал микропроцессор при программно-управляемой передаче.

КПДП при запросе на прямой доступ к памяти со стороны внешнего устройства выполняет следующие операции:

1) прием запроса на ПДП (сигнал DRQ) от ВУ;

2) формирование запроса к микропроцессору (МП) на захват шин (сигнал HRQ);

3) прием сигнала от МП (HLDA), подтверждающего факт перевода шин микропроцессора в третье состояние;

4) формирование сигнала, сообщающего устройству ввода-вывода о начале выполнения циклов прямого доступа к памяти (DACK);

 

МП – микропроцессор,
ОЗУ – оперативное запоминающее устройство

Рис. 3.1. Схема организации прямого доступа в память

 

5) формирование на шине адреса компьютера адреса ячейки памяти, предназначенной для обмена;

6) выработка сигналов, обеспечивающих управление обменом (IOR, MW - для передачи данных из ВУ в оперативную память и IOW, MR - для передачи из оперативной памяти в ВУ);

7) уменьшение значения в счетчике данных на размер переданных данных;

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

В лабораторной работе исследуется работа компьютера, структура которого приведена на рис. 3.2. Он содержит центральный процессор, оперативную память, северный и южный мост, а также внешние запоминающие устройства.

Режим DMA используется, если требуется заполнить ячейки памяти, имеющие последовательные адреса. При этом выполняются следующие операции:

1) размер данных записывается в регистр контроллера DMA;

2) передается адрес первой ячейки;

3) в цикле осуществляется пересылка данных указанного размера.

Контроллер DMA может получать доступ к системной шине независимо от процессора и имеет несколько регистров. Регистры контроллера DMA доступны ЦП для чтения и записи и задают:

a) номер порта, который должен быть использован для передачи данных;

b) вид операции (чтение или запись);

c) логическую единицу передачи данных (побайтно или пословно);

d) размер данных (в байтах), которые следует передать.

Так, при чтении данных с устройства в ОП процессор записывает значения в регистры контроллера DMA и отправляет устройству (например, ВЗУ) команду на чтение данных.

1) Устройство читает данные и записывает их в свою внутреннюю память (буфер).

2) Контроллер DMA устанавливает на адресную шину адрес памяти компьютера и отправляет устройству запрос на чтение данных из буфера.

3) Устройство получает запрос и при этом даже не знает, от какого устройства он пришёл: от ЦП или контроллера ПДП.

4) По этому запросу оно пересылает очередное слово из буфера в оперативную память по адресу, находящемуся на адресной шине.

5) Затем устройство посылает контроллеру DMA сигнал, сообщающий об окончании записи.

6) Контроллер увеличивает адрес ОЗУ и выставляет его на адресную шину, уменьшает значение своего счётчика байтов и снова отправляет запрос на чтение данных из буфера устройства.

Операции 1 - 6 повторяются, пока значение счётчика не станет равно нулю. После окончания этого цикла устройство инициирует прерывание процессора, сообщающее о завершении передачи данных.

 

 
 

Рис. 3.2. Структура компьютера, исследуемого в лабораторной работе


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: