Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Схемы реализации безусловного программного ввода/вывода
Для схем подключения внешних устройств к шинам МПС ранее был рассмотрен пример с линейной селекцией ВУ, удобной при малом их числе в системе. Возможностями подключения большого числа ВУ (до 256 ВУ ввода и 256 ВУ вывода при восьмиразрядных адресах) обладает вариант адресуемых портов. Программный ввод/вывод, осуществляемый по инициативе программы, может быть безусловным или условным. Первый способ возможен при обмене с всегда готовым ВУ, второй требует учета готовности ВУ к операциям ввода/вывода. При условном обмене могут возникать потери времени на ожидание готовности ВУ. Алгоритм обмена с ожиданием готовности (рис. 5.21, а) таков, что МП может зависать в цикле ожидания готовности ВУ, причем при работе с ВУ малого быстродействия время ожидания может оказаться большим. Возможен также другой алгоритм условного ввода/вывода, когда при неготовности ВУ МП отказывается от операции обмена и продолжает основную программу. В последующем может быть выполнена новая попытка обмена (рис. 5.21, б). Рис. 5.21. Алгоритмы условного программного обмена с занятием цикла (а) и совмещенного (б) Потери времени на ожидание готовности исключаются при обмене по прерываниям, когда инициатором обмена является само ВУ при его готовности к обмену. Общие вопросы обмена по прерываниям уже отмечались в § 5.2, дополнительные сведения будут даны в дальнейшем при рассмотрении контроллеров прерывания. Несмотря на отмеченные недостатки, программный обмен широко применяется вследствие его эффективности с точки зрения аппаратных затрат. При вводе данных микропроцессор вырабатывает адрес ВУ А7-0, сигнал IO/М = 1 и строб чтения . В МПС с четверкой сигналов управления чтением/записью и вводом/выводом при вводе формируются адрес ВУ и строб чтения . При использовании первого из указанных набора управляющих сигналов схема адресного порта безусловного ввода имеет вид рис. 5.22, а, где адрес ВУ принят равным 20Н == 00100000. В этом случае сигнал выбора ВУ должен появиться при подаче с адресных шин на входы конъюнктора набора или, что то же самое, при подаче на входы элемента ИЛИ-НЕ набора . Последний вариант лучше, т. к. требует инвертировать всего один бит адресного кода, тогда как при реализации первого потребуются семь инверторов. Совпадение условий ввода дает нулевой сигнал на выходе элемента И-НЕ, открывающий линейку буферов с тремя состояниями выхода и передающий таким образом байт данных от ВУ на шину данных, откуда они и считываются микропроцессором. Рис. 5.22. Схемы реализации команд ввода (а) и вывода (б) при безусловном программном обмене На рис. 5.22, б показана реализация команды OUT 2BH. В этом случае безусловный вывод осуществляется при поступлении от микропроцессора адреса А7-0 = 00101100, сигналов IO/М = 1 и = 0. Поступая на конъюнктор с инверторами в соответствующих входных линиях, адрес ВУ формирует единичный сигнал выбора ВУ SEL, что в совокупности с единичными сигналами на двух других входах элемента И-НЕ дает отрицательный перепад напряжения на его выходе. Задний фронт строба дает положительный перепад выходного напряжения элемента И-НЕ, загружающий данные с шины данных АD7-0 в регистр порта вывода.
|