Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Аппаратные средства вычислительной техники. Ч.1. Лабораторный практикум

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
820 Кб
Скачать

Рис. 1.2. Структура исследуемой вычислительной системы

Рис. 1.3. Ввод с клавиатуры в режиме «эхо»

Далее сигнал от контроллера передается в виде так называемого скан-кода на материнскую плату. Скан-код (scan code) – это одно-

10

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

Когда скан-код поступает в контроллер клавиатуры, инициируется аппаратное прерывание. Процессор прекращает свою работу и выполняет процедуру анализа скан-кода. Прерывание обслуживается специальной программой, входящей в состав ROM BIOS. При поступлении скан-кода от клавиш сдвига (<Alt>,<Ctrl>) или переключателя (<Shift>, <CapsLock>) изменение статуса записывается в оперативную память. Во всех остальных случаях скан-код трансформируется в код символа (коды ASCII или расширенные коды). При этом обрабатывающая процедура сначала определяет установку клавиш и переключателей, чтобы правильно получить вводимый код ("а" или "А"). Затем введенный код помещается в кольцевой буфер клавиатуры, представляющий собой область памяти (32 байта), способную запомнить до 15 вводимых символов (ASCII+скан-код), пока прикладная программа не может их обработать. Буфер организован по принципу FIFO (первый вошел – первый вышел) и расположен в области ОП.

Таким образом, ввод информации с клавиатуры выполняется по следующему алгоритму:

1)при нажатии на клавишу (или комбинацию клавиш) специальная микросхема, встроенная в клавиатуру, генерирует и выдает скан-код;

2)скан-код поступает в микросхему, выполняющую функции порта клавиатуры;

3)порт клавиатуры через порт 0 южного моста, северный мост и системную шину выдает процессору прерывание с фиксированным номером (для клавиатуры номер прерывания – 9);

4)получив прерывание, процессор откладывает текущую работу

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

11

5) определив адрес начала программы, обрабатывающей прерывание, процессор переходит к ее исполнению. Простейшая программа обработки клавиатурного прерывания «зашита» в микросхему ROM

BIOS;

6)программа-обработчик прерывания направляет процессор к порту клавиатуры, где он находит код символа, загружает его в свои регистры, потом под управлением обработчика определяет, какой код символа соответствует данному скан-коду;

7)далее обработчик прерываний отправляет полученный код символа через системную шину и шину памяти в небольшую область оперативной памяти – буфер клавиатуры и прекращает свою работу, известив об этом процессор;

8)процессор завершает обработку прерывания и возвращается к отложенной задаче.

Введенный символ хранится в буфере клавиатуры до тех пор, пока его не заберет оттуда та программа, для которой он предназначался, например текстовый редактор. Если символы поступают в буфер чаще, чем забираются, возможен эффект переполнения буфера. В таком случае ввод новых символов на некоторое время прекращается. На практике в этот момент при нажатии на клавишу мы слышим предупреждающий звуковой сигнал и не наблюдаем ввода данных.

При вводе информации с одновременным выводом на экран во время выполнения пунктов 6 и 7 алгоритма работает подсистема вывода на монитор. Код введенного символа передается по шинам памяти, графического интерфейса и системной шине в видеокарту, а оттуда – на монитор.

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

Основными узлами современного видеоадаптера являются [1]:

1)графический процессор (Graphics processing unit, GPU), кото-

рый занимается построением выводимого изображения, освобождая

12

от этой обязанности центральный процессор. Он производит расчеты для обработки команд трехмерной графики и является основой графической платы. Именно от него зависят быстродействие и возможности видеоадаптера;

2)видеоконтроллер отвечает за формирование изображения в видеопамяти, дает команды RAMDAC на формирование сигналов развертки для монитора и осуществляет обработку запросов центрального процессора. Кроме того, в нем обычно присутствуют контроллеры внешней и внутренней шин данных, а также контроллер видеопамяти;

3)видео-ПЗУ (Video ROM), в которое записаны BIOS видеокарты, экранные шрифты, служебные таблицы и т.п.;

4)видеопамять, которая исполняет роль кадрового буфера для хранения изображения, выводимого на экран монитора. Оно генерируется и постоянно изменяется графическим процессором. В видеопамяти хранятся также промежуточные невидимые на экране элементы изображения и другие данные;

5)цифро-аналоговый преобразователь (ЦАП) RAMDAC (Random Access Memory Digital-to-Analog Converter), служащий для преобразования изображения, формируемого видеоконтроллером, в уровни интенсивности цвета, подаваемые на аналоговый монитор.

Все современные видеоподсистемы могут работать в одном из двух основных видеорежимов:

текстовом;

графическом.

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

13

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

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

Сначала информация из шины данных попадает в графический процессор, где она обрабатывается. После этого данные через видеоконтроллер поступают в видеопамять, где создается образ изображения, которое должно выводиться на монитор. Затем происходит передача в ЦАП RAMDAC, где изображение преобразуется в аналоговый вид и уже в таком виде поступает на монитор.

Современные ЖК-дисплеи имеют цифровые видеовходы DVI и HDMI и способны работать с видеосигналом без участия RAMDAC. Но пока остаются модели с аналоговыми входами, в целях совместимости даже новые видеокарты оснащаются ЦАП и поддерживают подключение аналоговых устройств.

Описание лабораторной установки

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

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

потактовый;

по таймеру.

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

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

14

Режим «по таймеру» позволяет варьировать скорость моделирования. При этом имитация осуществляется непрерывно. Имеется возможность в любой момент просматривать с помощью полос прокрутки содержимое кэш-памяти процессора. Интервал между тактами можно изменять в пределах от 0,1 до 5 секунд.

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

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

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

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

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

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

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

чанию – 100);

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

c) среднее число

вводимых

символов за

одну

операцию

(от 10

до 50, по умолчанию – 10);

 

 

d) объем

памяти

в ОП,

занимаемый

одной

задачей

(от 64

Kбайт до 512 Kбайт, по умолчанию – 64 K байт);

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

a) быстродействие

центрального процессора в

млн оп/с

(от 10 до 1000, по умолчанию – 10);

 

 

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

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

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

1 1 Гбайт = 230 байт

15

ПОРЯДОК ВЫПОЛНЕНИЯ ЛАБОРАТОРНОЙ РАБОТЫ

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

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

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

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

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

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

Преподаватель выдает номер варианта данных, необходимых для выполнения работы.

Условные обозначения переменных: Nком – число команд в одной задаче,

Nоп.вв – число операций ввода в одной задаче,

Nсимв/оп.вв – число символов, вводимых во время одной операции ввода,

Eзадачи – объем области памяти в ОП, отводимой одной задаче, EОП – объем ОП,

Eвидео – объем видеопамяти на видеокарте,

РЦП – быстродействие центрального процессора, Т – количество тактов работы подсистемы ввода-вывода.

При установке параметров имитационной модели на вкладке

«Параметры моделирования» флажок «Мультипрограммный ре-

жим» должен быть снят!

В лабораторной работе исследуются следующие режимы работы подсистемы ввода-вывода в однопрограммном режиме.

1. Режим без вывода символов на экран. Для этого надо снять флажок «Вывод символов на экран» на вкладке «Параметры моде-

лирования».

 

 

 

Задание 1. Определить

зависимость

количества

тактов

T(Nком, Nоп.вв), где аргумент Nком и параметр Nоп.вв берутся из табл. 1.2.

Задание 2. Определить

зависимость

количества

тактов

T(Nком, Nоп.вв, Nсимв/оп.вв), где аргумент Nком

и параметры Nоп.вв и

Nсимв/оп.вв берутся из табл. 1.2.

 

 

 

16

Задание 3. Определить

зависимость

количества

тактов

T(Eзадачи, EОП, Nоп.вв), где аргумент Eзадачи и параметры EОП и Nоп.вв

берутся из табл. 1.2.

 

 

 

Задание 4. Определить

зависимость

количества

тактов

T(Nком, EОП, Eвидео), где аргумент Nком и параметр EОП берутся из табл. 1.3. Для первого режима Eвидео устанавливается по умолчанию

из табл. 1.1.

Задание 5. Определить

зависимость

количества

тактов

T(Nоп.вв, EОП), где аргумент Nоп.вв и параметр EОП берутся из табл. 1.3.

Задание 6. Определить

зависимость

количества

тактов

T(Nком, EОП, Eвидео), где аргумент Nком и параметры EОП и Eвидео бе-

рутся из табл. 1.4. Для первого режима Eвидео устанавливается по

умолчанию из табл. 1.1.

Задание 7. Определить зависимость количества тактов

T(РЦП, Nсимв/оп.вв, Nоп.вв), где аргумент РЦП и параметры Nсимв/оп.вв и

Nоп.вв берутся из табл. 1.4.

Параметры модели, не указанные в заданиях 1 – 7 , берутся из табл. 1.1 для заданного варианта.

Таблица 1.1

Значения параметров по умолчанию для заданий 1 – 7

Nком

Nоп.вв

Nсимв/оп.вв

Eзадачи,

EОП,

Eвидео,

РЦП,

варианта

Kбайт

Гбайт

Гбайт

млн оп/c

 

 

 

 

 

 

 

 

 

 

 

1

500

30

10

64

2

1

10

 

 

 

 

 

 

 

 

2

600

50

20

64

4

2

100

 

 

 

 

 

 

 

 

3

700

100

30

64

6

3

200

 

 

 

 

 

 

 

 

4

800

30

40

64

2

4

300

 

 

 

 

 

 

 

 

5

900

50

50

64

4

1

400

 

 

 

 

 

 

 

 

6

1000

100

10

64

6

2

500

 

 

 

 

 

 

 

 

7

500

30

20

64

2

3

600

 

 

 

 

 

 

 

 

8

600

50

30

64

4

4

700

 

 

 

 

 

 

 

 

9

700

100

40

64

6

1

800

 

 

 

 

 

 

 

 

10

800

30

50

64

8

2

900

 

 

 

 

 

 

 

 

11

900

50

10

64

2

3

1000

 

 

 

 

 

 

 

 

12

1000

100

20

64

4

4

50

 

 

 

 

 

 

 

 

13

700

30

30

64

6

1

100

 

 

 

 

 

 

 

 

14

900

50

40

64

8

2

150

 

 

 

 

 

 

 

 

17

 

 

 

 

 

 

 

Таблица 1.2

 

 

Значения параметров для заданий 1 – 3

 

 

 

 

 

 

 

 

 

 

 

 

 

Задание 1

Задание 2

 

Задание 3

 

варианта

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Аргумент

Параметр

Аргумент

Параметры

Аргумент

Параметры

 

 

 

Eзадачи,

 

 

 

 

 

Nсимв

EОП

 

 

 

Nком

Nоп.вв

Nком

Nоп.вв

 

Nоп.вв

 

Kбайт

 

 

 

 

 

/оп.вв

Гбайт

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

100 – 1000,

10; 50;

100 – 1 000,

100

10; 30;

64 – 448,

1

 

10; 30;

 

Шаг=100

100

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

2

200 – 900,

50; 100;

200 – 900,

200

10; 30;

128 – 512,

2

 

25; 40;

 

Шаг=100

200

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

3

100 – 500,

20; 50; 100

100 – 500,

75

10; 30;

64 – 448,

4

 

10; 30;

 

Шаг=50

 

Шаг=50

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

4

100 – 600,

20; 50; 100

100 – 600,

50

10; 30;

128 – 512,

8

 

25; 40;

 

Шаг=50

 

Шаг=50

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

5

200 – 800,

10; 50;

100 – 800,

100

10; 30;

64 – 448,

1

 

10; 30;

 

Шаг=100

100

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

6

300 – 1000,

100; 200;

300 – 1000,

100

10; 30;

128 – 512,

2

 

25; 40;

 

Шаг=100

300

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

7

100 – 1000,

20; 50; 100

100 – 1000,

30

10; 30;

64 – 448,

4

 

10; 30;

 

Шаг=100

 

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

8

100 – 500,

10; 50;

100 – 500,

50

10; 30;

128 – 512,

8

 

25; 40;

 

Шаг=50

100

Шаг=50

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

9

200 – 900,

50; 100;

200 – 900,

100

10; 30;

64 – 448,

1

 

10; 30;

 

Шаг=100

200

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

10

100 – 600,

20; 50; 100

100 – 600,

50

10; 30;

128 – 512,

2

 

25; 40;

 

Шаг=50

 

Шаг=50

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

11

300 – 1000,

100; 200;

300 – 1000,

150

10; 30;

64 – 448,

4

 

10; 30;

 

Шаг=100

300

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

12

100 – 1000,

10; 50;

100 – 1000,

40

10; 30;

128 – 512,

8

 

25; 40;

 

Шаг=100

100

Шаг=100

 

50

Шаг 128

 

 

50

 

 

 

 

 

 

 

 

 

 

18

 

 

 

 

 

 

 

 

 

Таблица 1.3

 

 

Значения параметров для заданий 4 – 5

 

 

 

 

 

 

 

 

 

 

 

 

 

Задание 4

 

 

Задание 5

варианта

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Аргумент

 

Параметры

Аргумент

 

Параметры

 

 

 

 

 

 

 

 

EОП

 

 

EОП

 

РЦП

 

Nком

 

Nоп.вв

Nоп.вв

 

 

Гбайт

Гбайт

 

млн.оп/с

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

100 – 1000,

1

 

10; 50; 100

100 –

500,

1

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

2

200 – 900,

2

 

50; 100; 200

100 –

500,

2

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

3

100 – 500,

4

 

20; 50; 100

100 –

500,

3

 

10; 100; 1000

 

Шаг=50

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

4

100 – 600,

8

 

20; 50; 100

100 –

500,

4

 

10; 100; 1000

 

Шаг=50

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

5

200 – 800,

1

 

10; 50; 100

100 –

500,

8

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

6

300 – 1000,

2

 

100; 200; 300

100 – 500,

1

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

7

100 – 1000,

4

 

20; 50; 100

100 –

500,

2

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

8

100 – 500,

8

 

10; 50; 100

100 –

500,

4

 

10; 100; 1000

 

Шаг=50

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

9

200 – 900,

1

 

50; 100; 200

100 –

500,

8

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

10

100 – 600,

2

 

20; 50; 100

100 –

500,

1

 

10; 100; 1000

 

Шаг=50

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

11

300 – 1000,

4

 

100; 200; 300

100 – 500,

3

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

12

100 – 1000,

8

 

10; 50; 100

100 –

500,

6

 

10; 100; 1000

 

Шаг=100

 

 

 

Шаг=100

 

 

 

 

 

 

 

 

 

 

 

 

 

19

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]