данных в процессор. Наоборот, выходной порт представляет собой
приемник данных ( например, регистр), который избирательным
образом подключается к шине данных процессора. Будучи выбран,
выходной порт принимает слово данных из микропроцессора.
Процессор должен иметь возможность координировать скорость
своей работы со скоростью работы внешнего устройства, с кото-
рым он обменивается информацией. В противном случае может по-
лучиться, что входной порт начнет пересылать данные еще до то-
го как, процессор их затребует, и процесс пересылки данных на-
ложится на какой-то другой процесс в ЦП. Как уже отмечалось,
эта координация работы двух устройств носит название "рукопо-
жатия", или квитирования.
Теперь подробнее остановимся на режимах работы портов вво-
да-вывода. Существуют три вида взаимодействия процессора с
портами ввода-вывода: программное управление, режим прерываний
и прямой доступ к памяти (ПДП).
Программно-управляемый ввод-вывод инициируется процессором,
который выполняет программу, управляющую работой внешнего уст-
ройства. Режим прерываний отличается тем, что инициатором вво-
да-вывода является внешнее устройство. Устройство, подключен-
ное к выводу прерываний процессора, повышает уровень сигнала
на этом выводе (или в зависимости от типа процессора понижает
- 14 -
его). В ответ процессор, закончив выполнение текущей команды,
сохраняет содержимое программного счетчика в соответствующем
стеке и переходит на выполнение программы, называемой програм-
мой обработки прерываний, чтобы завершить передачу данных.
ПДП тоже инициируется устройством. Передача данных между
памятью и устройством ввода-вывода осуществляется без вмеша-
тельства процессора. Как правило, для организации ПДП исполь-
зуются контроллеры ПДП, выполненные в виде интегральных схем.
3.5 Униварсальный синхронно-асинхронный
приемопередатчик
Микропроцессор взаимодействует с перифирийными устройства-
ми, принимающими и передающими данные в последовательной фор-
ме. В процессе этого взаимодействия процессор должен выполнять
преобразование параллельного кода в последовательный, а также
последовательного в параллельный.
Чаще всего пересылка данных между процессором и периферий-
ными устройствами выполняются асинхронно. Другими словами,
устройство может передавать данные в любой момент времени. Ес-
ли данные не передаются, устройство посылает просто биты мар-
кера, обычно высокий уровень сигнала, что дает возможность не-
медленно обнаружить любой разрыв цепи передачи. Если устройс-
тво готово передавать данные, передатчик посылает нулевой бит,
обозначающий начало посылки. За этим нулевым битом следуют
данные, затем бит четности и , наконец, один или два стоп-би-
та. Закончив передачу, отправитель продолжает посылать высокий
уровень сигнала в знак того, что данные отсутствуют.
Для удобства проектирования интерфейса процессора с уст-
- 15 -
ройствами последовательного ввода-вывода (как синхронными, так
и асинхронными) разработаны микросхемы универсальных синхрон-
но-асинхронных приемопередатчиков (УСАПП). В состав УСАПП вхо-
дят функционирующие независимо секции приемника-передатчика.
Типичный УСАПП изображен на рис. 4
Рисунок 4 расположен на следующей странице.
- 16 -
Разреше- От триггера
ние по- 8 7 6 5 4 3 2 1 " Буфер
лучения Данные передатчика
данных ‑ ‑ ‑ ‑ ‑ ‑ ‑ ‑ свободен"
──┬─── ├─┴─┴─┴─┴─┴─┴─┤ ж е а б в г д ─────┬─────
└─────┤ Вентили И │ │ │ ‑ ‑ ‑ ‑ ‑ │
├─┬─┬─┬─┬─┬─┬─┤ │ │ ┌┴──┴──┴──┴──┴┐ │
├─┴─┴─┴─┴─┴─┴─┤ ┌──────┐ └──_│ Вентили И │ │
│ Буферный ре-│ │ R ├─────_│ │_─────┘
│ гистр прием-│_─┬_│Триггер│ └─┬───┬────┬──┘
│ ника │ │ │"Данные│ │ │ │
└─────────────┘ │ │готовы"│ ┌─┴───┴────┴──┐
‑ │ │S │ │ Регистр сос-│_──────┐
└────────┐ │ └┬──────┘ │ тояния │ │
Биты управления │ │ └────────────_└─────────────┘ │
от регистра состояния│ └────────────────────────┐ │
└─────────────┐ ┌──────┴────┐ │
├──────────────────────┐ └──────┤ Сдвиговый ├────────┘
┌────┴────┐ ┌────┴─────┐ │ регистр │
│ Логика ├───────────_│ Логика ├─────_│ приемника │
│проверки │ │ проверки │ │СР │
│паритета │ │ границы │ └───────────┘
│ │ │ кадра │ ‑
└───‑─────┘ └──────────┘ │
┌───┴─────┐ ┌──────────┐ │
│Проверка │ │Синхрони- │ │
│стартово-│ │зирующий │ │
│го бита │_───────────┤генератор ├───────┘
- 17 -
‑ Последовательный вход ‑ Частота 16хТ Рис. 4
Буквами обозначено: а - Данные готовы; б - Наложение; в - Ошибка
кадра; г - Ошибка четности; д - Буфер пере-
датчика свободен; е - Разрешение чтения слова
состояния; ж - Сброс триггера " Данные гото-
вы"
УСАПП заключен в корпус с 40 выводами и является дуплексным
устройством (т. е. может передавать и принимать одновременно).
Он выполняет логическое форматирование посылок. Для подключе-
ния УСАПП могут потребоваться дополнительные схемы, однако нет
необходимости в общем тактовом генераторе, синхронизирующем
УСАПП и то устройство, с которым установлена связь. В передат-
чике УСАПП предусмотрена двойная буферизация, поэтому следую-
щий байт данных может приниматься из процессора, как только
текущий байт подготовлен для передачи.
Выпускаются микросхемы УСАПП со скоростями передачи до 200
Кбод. Скорость работы передатчика и приемника (не обязательно
одинаковые) устанавливаются с помощью внешних генераторов,
частота которых должна в 16 раз превышать требуемую скорость
передачи. Сигналы от внешних генераторов поступают на раздель-
ные тактовые входы приемника и передатчика.
Обычно и микропроцессор, и устройства ввода-вывода подклю-
чаются к своим УСАПП параллельно. Между УСАПП действует после-
довательная связь (например по стандарту RS-232C).
- 18 -
4. MULTIBUS
Структура магистрали, обеспечивающей сопряжение всех аппа-
ратных средств, является важнейшим элементом вычислительной
системы. Магистраль позволяет многочисленным компонентам сис-
темы взаимодействовать друг с другом. Кроме того, в структуру
магистрали заложены возможности возбуждения прерываний, ПДП,
обмена данными с памятью и устройствами ввода-вывода и т. д.
Магистраль общего назначения MULTIBUS фирмы Intel представ-
ляет собой коммуникационный канал, позволяющий координировать
работу самых разнообразных вычислительных модулей. Основой ко-
ординации служит назначение модуля системы MULTIBUS атрибутов
ведущего и ведомого.
4.1 Магистрали MULTIBUS I/II.
Одним из наиболее важных элементов вычислительной системы
является структура системной магистрали, осуществляющей сопря-
жение всех аппаратных средств. Системная магистраль обеспечи-
вает взаимодействие друг с другом различных компонентов систе-
мы и совместное использование системных ресурсов. Последнее
обстоятельство играет важную роль в существенном увеличении
производительности всей системы. Кроме того, системная магист-
раль обеспечивает передачу данных с участием памяти и уст-
ройств ввода-вывода, прямой доступ к памяти и возбуждение пре-
рываний.
Системные магистрали обычно выполняются таким образом, что
сбои проходящие в других частях системы, не влияют на их функ-
ционирование. Это увеличивает общую надежность системы. Приме-
рами магистралей общего назначения являются предложенные фир-
- 19 -
мой Intel архитектуры MULTIBUS I и II, обеспечивающие коммуни-
кационный канал для координации работы самых разнообразных вы-
числительных модулей.
MULTIBUS I и MULTIBUS II используют концепцию "ведущий-ве-
домый". Ведущим является любой модуль, обладающий средствами
управления магистралью. Ведущий с помощью логики доступа к ма-
гистрали захватывает магистраль, затем генерирует сигналы уп-
равления и адреса и сами адреса памяти или устройства вво-
да-вывода. Для выполнения этих действий ведущий оборудуется
либо блоком центрального процессора, либо логикой, предназна-
ченной для передачи данных по магистрали к местам назначения и
от них. Ведомый - это модуль, декодирующий состояние адресных
линий и действующий на основании сигналов, полученных от веду-