Файл: Компьютерные системы и сети Часть 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