Файл: Компьютерные системы и сети Часть 1 (Архитектура ВС) Мельникова ЕВ, БГУИР 2009 (Мет пособие).pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.07.2025

Просмотров: 1253

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

При записи байта данных в буферный регистр обнуляется регистр состояния

контроллера. Нуль в этом регистре указывает, что в линию связи передается

байт данных из сдвигового регистра, а следующий передаваемый байт данных

загружен в сдвиговый регистр.

Контроллер для последовательного синхронного приема данных из ВУ состоит

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

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

Асинхронный последовательный интерфейс

Организация асинхронного последовательного обмена данными с внешним

устройством осложняется тем, что на передающей и приемной стороне

последовательной линии связи используются настроенные на одну частоту, но

физически разные генераторы тактовых импульсов, следовательнои, общая

синхронизация.

Обмен

данными

с

ВУ

по

последовательным

линиям

связи

ши

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

скорости обмена. Вместе с тем применение в них последовательных линий

связи

с

ВУ

обусловлено

двумя

важными

. причинамиВо-первых,

последовательные линии связи просты по своей организации: два провода при

симплексной и полудуплексной передаче и максимум четыре - при дуплексной.

Во-вторых, в микроЭВМ используются внешние устройства, обмен с которыми

необходимо вести в последовательном коде.

В

современных

микроЭВМ

применяют, как

правило,

универсальные

контроллеры для последовательного ВВ, обеспечивающие как синхронный, так

и асинхронный режим обмена данными с ВУ.

1.12.Способы обмена информацией в микропроцессорной системе

В ЭВМ применяются три режима ввода/вывода: программно-управляемый ВВ

(называемый

также

программным

или

нефорсированным),

ВВВ п

прерываниям (форсированный ВВ) и прямой доступ к памяти. Первый из них

характеризуется тем, что инициирование и управление ВВ осуществля

программой, выполняемой процессором, а внешние устройства иг

сравнительно пассивную роль и сигнализируют только о своем состояни, в

частности, о готовности к операциям ввода/вывода. Во втором режиме В

инициируется не процессором, а внешним устройством, генерирующим

специальный сигнал прерывания. Реагируя на

этот

сигнал

готов

устройства к передаче данных, процессор передает управление подпрограмм

обслуживания

устройства, вызвавшего

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

этой

подпрограммой,

определяются

пользователем,

а непосредственным

операциями ВВ управляет процессор. Наконец, в режиме прямого доступа

памяти,

который используется, когда

пропускной

способности

процесс

недостаточно, действия процессора приостанавливаются, он отключается о

системной шины и не участвует в передачах данных между основной память

и быстродействующим

ВУ. Заметим,

что во

всех

вышеуказанных

случ

39


основные действия, выполняемые на системной магистрали ЭВМ, подчиняются двум основным принципам.

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

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

1.12.1.Программно-управляемый ввод/вывод

Данный режим характеризуется тем, что все действия по вводу/вы реализуются командами прикладной программы. Наиболее простыми э действия оказываются для "всегда готовых" внешних устройств, например индикатора на светодиодах. При необходимости ВВ в соответствующем мест программы используются командыIN или OUT. Такая передача данн называется синхронным или безусловным ВВ.

Однако для большинства ВУ до выполнения операций ВВ надо убедиться в и готовности к обмену, т.е. ВВ является асинхронным. Общее состояни устройства характеризуется флагом готовностиREADY, называемым такж флагом готовности/занятости (READY/BUSY). Иногда состояния готовности

занятости

идентифицируются

отдельными

флагамиREADY

и BUSY,

входящими в слово состояния устройства.

Процессор

проверяет флаг готовности с помощью одной

или неск

команд. Если флаг установлен, то инициируются собственно ввод или выв одного или нескольких слов данных. Когда же флаг сброшен, процессор выполняет цикл из 2-3 команд с повторной проверкой флагаREADY до тех пор, пока устройство не будет готово к операциям .

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

1.12.2.Организация прерываний в микроЭВМ

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

40


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

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

затрачиваемое на обмен. Это происходит за

счет

, тогочт

исчезае

необходимость в организации программных циклов ожидания готовности

на выполнение которых тратится значительное время, особенно при обмене

медленными ВУ.

Прерывание программы

по требованию

ВУ

не

должно

окназывать

прерванную программу никакого влияния кроме увеличения врем

выполнения за счет приостановки на время

выполнения

подпр

обработки прерывания. Поскольку для выполнения подпрограммы обработк

прерывания используются

различные регистры

процессора (счетчик

команд,

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

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

тем больше время реакции микроЭВМ на сигнал прерывания,

наоборот.

Предпочтительными

с

точки

зрения

повышения

производ

микроЭВМ (сокращения

времени

выполнения

подпрограммобработки, а,

следовательно, и основной программы) являются уменьшение числа коман,

обеспечивающих

сохранение

информации

о

прерванной

програ, и

реализация этих функций аппаратными средствами.

Формирование

сигналов

прерыванийзапросов

ВУ на

обслужаниев

происходит в контроллерах соответствующих ВУ. В простейших случаях качестве сигнала прерывания может использоваться сигнал"Готовность ВУ", поступающий из контроллера ВУ в системный интерфейс микроЭВМ. Однако такое простое решение обладает существенным недостаткомпроцессор н

41


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

Рис. 1.12.2.1. Фрагмент блок-схемы контроллера ВУ

сразрядом "Разрешение прерывания"

врегистре состояния и управления

Для решения этой проблемы регистр состояния и управления контроллера В дополняют еще одним разрядом- "Разрешение прерывания". Запись 1 или 0 в разряд "Разрешение прерывания" производится программным путем по одно

из линий

шины данных

системного интерфейса. Управляющий сигна

системного

интерфейса "Запрос

на прерывание" формируется с помощью

схемы совпадения только при наличии единиц в разрядах"Готовность ВУ" и "Разрешение прерывания" регистра состояния и управления контроллера. Аналогичным путем решается проблемам управления прерыван микроЭВМ, в целом. Для этого в регистре состояния процессора выделяетс

разряд, содержимое

которого

определяет, разрешены

или

запрещ

прерывания

от

внешних

устройств. Значение

этого

разряда

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

В микроЭВМ

обычно

используется

одноуровневая

система

прерываний, т. е.

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

42