![]() |
![]() |
![]() |
|
Главная страница » Электрика в театре » Мультиплексоры демультиплексоры в последовательностных схемах 1 ... 26 27 28 29 30 31 32 ... 39 Адаптер пераферийноео устройства Ответ Сигналы управления Запасе пврисрерийным janpuc устройствам Рис. 12.1. Адаптер с линиями передачи буферизуемых данных и двумя линиями управления. 3) маскирование (разрешение или запрещение передачисиг-налов управления). На рис. 12.2 приведены технические средства программирования адаптера. Запись информации в регистр D устанавливает направление передачи данных между адаптером и периферийным устройством. Запись информации в регистр С задает режим управления. В следующих разделах описываются коды, которые должны быть помещены в каждый из этих регистров. Рассматриваемая далее модель адаптера принципиально проста, корректна и действительно описывает задачу, подлежащую решению. Практическая реализация адаптеров зависит от индивидуальности разработчика и включает ряд хитроумных решений ( трюков ), направленных на преодоление некоторых техниче- Регистр D Регистр С Рис. 12.2. Программная модель адаптера. ч ских (физических) ограничений. К последним относится весьма ограниченное число выводов интегральных схем. Так, например, восемь линий используются для доступа к двум 8-разрядным регистрам. Это достигается путем использования одного бита, например бита 6, регистра С (регистра управления) в качестве двоичного переключателя. Процедура доступа к регистрам состоит из следующих шагов: 1. Запись байта с битом 6, равным 1, на восемь линий данных. Команда записи подключает линии к регистру D. 2. Запись требуемого содержимого регистра D на восемь линий данных. Производится загрузка регистра D и при поступлении заднего фронта управляющего импульса команды записи линии данных подключаются к регистру С. 3. Запись требуемого содержимого регистра С на восемь линий данных. Содержимое регистра С может быть изменено в любой момент времени. Для изменения содержимого регистра D нужно повторить все указанные выше шаги. Достоинства адаптеров, разработанных отдельными фирмами, описываются в следующих разделах и обобщены в приложениях И и К- О 12.1.1. Адаптер периферийного интерфейса микро-ЭВМ фирмы Motorola Адаптер периферийного интерфейса РТА (Peripheral Interface Adapter) микро-ЭВМ фирмы Motorola представляет собой устройство параллельной передачи данных общего назначения. Пользователь должен запрограммировать регистры PIA. Процесс выполнения трех программируемых функций адаптера включает следующие шаги (рис. 12.3): 1. Программирование направления передачи данных (ввод или вывод) для регистра данных (РД)- Для этой цели используется регистр направления передачи (РНП). 2. Программирование работы линий управления периферийного интерфейса. Используется регистр управления (РУ) PIA. Для каждой линии управления можно запрограммировать а) разрешение передачи по линии управляющих сигналов; б) задание направления изменения уровня сигнала в линии (с высокого на низкий или с низкого на высокий); в) направление передачи управляющих сигналов к периферийному устройству или от него посредством сигнала направления, причем действия последнего распространяются не на все линии управления. 3. Блокировки входа РНП (чтобы его содержимое не могло быть случайно изменено во время передачи данных) и разрешения приема данных буфером PIA. Информация, необходимая для выполнения шага 1, содержится в одном байте, а информация, требуемая для выполнения обоих шагов 2 и 3, содержится еще в одном байте. Если за адресом РНП следует адрес РУ (рекомендуется именно такая схема адресации регистров), то для программирования рабо- Шрограммиробание РНП РНП г.Проерам-трование Р9 3. Елотровка Входа ?та раареигение ваступак РД Рис. 12.3. Регистры PIA. Разрешение I доступа Разрешение доступа ты PIA микро-ЭВМ фирмы Motorola могут использоваться сле--дующие две команды: LDX CW1 Установка требуемого содержимого РНП и РУ STX DDR Пересылка данных в регистры Команда LDX загружает все данные, необходимые для выполнения шагов 1, 2 и 3 в 2-байтовый регистр X. Операнд CW1 (Control Word 1 - управляющее слово 1) содержит слово данных, необходимых для программирования как РНП, так и РУ, а также для блокировки входа РНП и разрешения доступа к буферу данных. Команда STX записывает данные в PIA. Первый байт передается по адресу, указываемому операндом DDR (Data Direction Register), т. е. в РНП. Второй байт передается по адресу DDR-Ы, т. е^ РУ. Сигнал RES (сброс) устанавливает все регистры в PIA в состояние 0. Сигнал RES выдается на все PIA каждый раз при включении микро-ЭВМ. Поскольку управление работой PIA осуществляемся программным способом, то можно изменить его работу динамически во время выполнения программы. Если на шаге 3 выполняются противоположные действия, заключающиеся в разрешении передачи данных в РНП и запрещении доступа к буферу данных, то описанная процедура может быть повторена для изменения направления передачи данных и работы линий управления. Изменение операций шага 3 на противоположные выполняется с помощью следующей команды: CLR CR Сброс содержимого регисэров Эта команда очищает регистр управления. Управляющее слово CW1 декодируется из РНП и РУ. Ниже приводится описание этих регистров. Регистр направления передачи (РНП). Используется для указания направления передачи данных (ввода или вывода) по каждой отдельной линии буфера данных PIA. Это достигается путем записи в РНП соответствующей информации. Каждая линия управляется отдельно. Запись нуля или единицы обеспечивает функционирование соответствующей линии в качестве входной или выходной. Например, запись в РНП величины OOie переведет все линии в состояние ввода, FFje - в состояние вывода, тогда как запись величины OFie вызовет перевод линий 7-4 в состояние ввода, а линий 3-0 в состояние вывода. Регистр управления (РУ). Структура управляющих сигналов РУ PIA микро-ЭВМ фирмы Motorola показана на рис. И.1 приложения И. Ниже перечисляются линии ввода-вывода РУ с указанием выполняемых ими функций и описывается программирование этих функций. 1. Линии ввода-вывода РУ и их функциональное назначение. СА1--линия входного сигнала прерывания, поступающего в адаптер из периферийного устройства. IRQl-линия передачи сигнала прерывания из адаптера в ЦПУ. СА2 - линия передачи управляющих сигналов между адаптером и периферийным устройством. Эта линия может быть запрограммирована для работы либо в качестве входной для сигнала прерывания, либо выходной для сигнала управления периферийным устройством. IRQ2 -линия передачи сигнала прерывания в ЦПУ. 2. Программирование функций РУ. Программирование сигнала СА1 показано в табл. И.1 приложения И. Бит 1 определяет направление изменения уровня входных сигналов прерывания, вызывающее установку флажка. Если бит 1 = 1, то флажок прерывания устанавливается при переходе уровня сигнала в линии ) Имеется в виду флажок, определяющий сигнал прерывания ЦПУ - IRQ2. - Прим. перев. Речь идет о записи процессором управляющих сигналов в РУ адаптера и чтении информации из РД адаптера. - Прим. перев. С НИЗКОГО на высокий, а если бит 1=0, то -при переходе уровня сигнала в линии с высокого на низкий. Флажки прерывания автоматически сбрасываются при считывании информации из соответствующего регистра данных. Бит О используется для разрещения передачи в ЦПУ сигналов прерываний в соответствии с установленными флажками прерываний. Когда бит 0=1, использование флажка прерывания для передачи сигнала прерывания в ЦПУ разрешается, а когда бит 0=0 - не разрешается. Линия СА1 всегда используется в PIA в качестве входной. Она не может быть запрограммирована для передачи управляющих сигналов в двух направлениях, т. е. как входная, так и как выходная. Отметим, что в упражнении 6.6 рассмотрено построение схемы, реализующей данный способ управления. Таблица И.2 приложения И иллюстрирует программирование работы линии СА2 в качестве входной для сигнала прерывания. Ранее в упражнении 6.7 была рассмотрена схема, соответствующая данному способу программирования. Бит 5 определяет направление передачи управляющих сигналов по линии СА2. Если бит 5 = 0, линия СА2 используется как входная для сигнала прерывания. Бит 4 задает направление изменения уровня входных сигналов прерываний, вызывающее установку флажка. Если бит 4=1, то флажок прерывания устанавливается при переходе уровня сигнала в линии с низкого на высокий, а если бит 4=О - с высокого на низкий. Бит 3 управляет разрешением использования флажка 2 для передачи в ЦПУ сигнала прерывания. Если бит 3=1, использование флажка 2) разрешено, если бит 3=0, запрещено. Таблица И.З приложения И иллюстрирует программирование работы линии СА2 для передачи выходного управляющего сигнала адаптера в периферийное устройство. И здесь бит 5 определяет направление передачи управляющих сигналов по линии СА2. Если бит 5=1, то линия СА2 будет использоваться для передачи выходных управляющих сигналов. Бит 4 управляет разрешением выдачи управляющего сигнала по линии СА2 (заметим, что роли бит 4 и 3 поменялись при переходе от режима работы линии в качестве входной к режиму работы в качестве выходной). Когда бит 4=1, на линии СА2 устанавливается уровень сигнала, соответствующий выполнению ЦПУ операции записи, когда бит 4=0 - операции чтения). При выполнении операции чтения уровень сигнала СА2 изменяется с высокого на низкий. Если при этом бит 3=0, то вы- сокий уровень восстанавливается при поступлении сигнала СА1, который обычно устанавливает высокий уровень сигнала СА2! Если бит 3=1, то высокий уровень сигнала СА2 восстанавливается сигналом разрешения передачи, благодаря которому сигнал СА2 будет иметь форму импульса. Если бит 4=1, то ЦПУ выполняет операцию записи данных в регистры адаптера, и уровень сигнала СА2 соответствует значению бита 3. RSO RS1 CSO РНП I ~РД~1 СА1 CfiZ РАО-7 IRQA ТШв ашт CBZ CB1 H nepaqDepuUHOMU !/cmpoucm6i/ Рис. 12.4. Схема адаптеров MC6820 и МС6821 фирмы Motorola. На рис. 12.4 приведена функциональная схема PIAMC6820 фирмы Motorola. Для связи с периферийными устройствами могут использоваться два порта А и В. Со стороны ЦПУ АПИ имеет восемь выводов для подключения к шине данных, пять для подключения к адресной шине и пять для подключения линий управления. Пятью линиями управления являются: IRQA -линии запроса прерывания по флажку, установленному в регистре А; ШОВ -линия запроса прерывания по флажку, установленному в регистре В; R/W -линия сигнала указания направления передачи данных (операции чтения или записи); Е -линия сигнала разрешения адаптера, используемого для временной синхронизации передачи данных и управляющих сигналов периферийных устройств. Этот сигнал обычно привязан К синхроимпульсу Ф2 и формируется из данного синхроимпульса; RES-линия сигнала сброса. В использовании для ввода-вывода порта В по сравнению с портом А существуют два отличия: 1. При программировании работы линии СВ2 для передачи выходных управляющих сигналов на периферийное устройство несколько иначе осуществляется управление - разрещением выдачи управляющего сигнала. Для этой линии может быть установлен уровень сигнала, соответствующий выполнению только операции записи данных ЦПУ. В табл. И.4 приложения И показаны три блока, относящиеся к управлению, реализуемому с помощью бита 4. Эти блоки заимствованы из табл. И.З для иллюстрации данной особенности. В остальном программирование для порта В идентично показанному в табл. И.1-И.4 (за исключением того, что обозначения As везде должны быть заменены на Bs). 2. При выводе порт В является более производительным, чем порт А. Из рассмотрения приведенных вьше двух отличий портов А и В следует, что рациональным способом использования PIA является программирование порта А для выполнения ввода данных, а порта В--для выполнения вывода данных. Такой режим работы обеспечивается с помощью следующей подпрограммы инициализации ввода-вывода, которая также настраивает линии СА2 и СВ2 на передачу выходных управляющих сигналов к периферийному устройству: LDX #$0027 Задание содержимого РНП и РУ порта А STX PIAPA Запись данных в регистры адаптера LDX #$F,F27 Задание содержимого РНП и РУ порта В STX PIAPB Запись данных в регистры адаптера Суффиксы А и В используются для адресации портов А и В соответственно. PIAMC6821 имеет улучшенные характеристики по сравнению с PIAMC6820 с точки зрения надежности, технических характеристик сигналов, нормальной работы при большей нагрузке и быстродействия. Краткие сведения о работе адаптеров приведены в приложении И. □ Щ 12.1.2. Программируемый периферийный интерфейс фирмы Intel Схема программируемого периферийного интерфейса РРШ (Programmable Peripheral Interface Unit) приведена на рис. 12.5. РРШ имеет восемь выводов, подключаемых к шине данных. Три вывода соединяются с адресной шиной. Один из этих выводов CS (Chip Select) является входом сигнала выбора кристалла ), другие два вывода используются для выбора одного из четырех регистров PPIU (регистра управляющего слова, регистра порта А - РА, регистра порта В -РВ, регистра порта С - PC). Имеются два вывода, подключаемые к шине линий управления (RD - вход сигнала чтение и WR - вход сигнала запись ). ВО-7 CS м Регистр упрпВ-ляющего слова A1AD PPIU 8Z55A Периферий- ноеистрой-ство Периферий- ноеистрой- стоо или ш.ина управления ЦПУ =i- Периферийное - устройство Рис. 12.5. Схема интерфейсов 8255А и 8255А-5 фирмы Intel. В РРШ имеется 24 вывода портов ввода-вывода. Они разделены на три группы по восемь выводов. Каждая группа связана с определенным портом (А, В или С). В адаптере фирмы Intel предусмотрены четыре способа испо.т1ьзования выводов этих портов. Далее приводится описание данных способов в последовательности, соответствующей усложнению логики управления вводом-выводом: 1. Поразрядная установка (сброс триггеров порта^). Осуществляется независимое управление каждой линией порта. Данный способ применим только к порту С. Его можно назвать программным управлением обменом, осуществляемым путем стробирования (сокращенно обмен стробированием )). ) Имеется в виду выбор микропроцессором для работы данного адаптера. Низкий уровень сигнала на данном управляющем входе разрешает информационную связь между микропроцессором и РРШ. - Прим. перев. Эта установка осуществляется по команде OUT, которая передает в РРШ управляющее слово установки разрядов. - Прим. перев. При организации обмена с применением стробирования порты А и В образуют канал передачи данных, а порт С используется для накопления и обработки сигналов управления обменом. - Прим перев. 2. Режим 0. Стробирование не используется, и все 24 вывода портов могут использоваться для передачи данных. 3. Режим 1. Выводы порта С используются для автоматического обмена стробированием передачи данных через порты А и В. 4. Режим 2. Осуществляется двунаправленная передача данных через порт А. >Порт С используется для автоматического стробирования с однонаправленной передачей через порт В и двунаправленной через порт А. Поразрядное управление установкой!сбросом триггеров порта. Управление отдельными разрядами порта С путем записи в РРШ управляющего слова установки/сброса иллюстрирует табл. К.1 приложения К. Установка значения бита D7 равным О задает режим поразрядной установки/сброса разрядов порта. Биты 06, D5 и D4 не используются; таким образом, бит D6 = = бит В5 = бит D4=0. С помощью бит D3, D2 и D1 выбирается управляемый разряд порта С. Бит DO устанавливает в этом разряде определенный уровень сигнала: если D0=0, в выбранном разряде порта С устанавливается низкий уровень сигнала, если D0= 1 - высокий. Для установки в разряде РС6 порта С высокого уровня сигнала можно использовать следующие команды: MVI A,ODH OUT PPIUC Команда MVI загружает величину 0Di6 в регистр А. Поскольку 0Di6=0000110l2, бит D7=0, что определяет режим поразрядной установки/сброса разрядов порта. Биты D3, D2, Dl = 110 обеспечивают выборку разряда РС6 порта С, и бит D0=1 задает установку высокого уровня сигнала в данном разряде. Команда OUT записывает содержимое регистра А по адресу РРШС, являющемуся символическим обозначением адреса управляющего регистра РРШ. Режим 0. Все 24 разряда портов используются для передачи данных. Направление передачи данных может быть запрограммировано для следующих групп этих выводов: двух 8-разрядных портов А и В и двух 4-разрядных портов (старшие и младшие разряды регистра С). В табл. К.2 приложения К показан формат управляющего слова при работе в режиме 0. Для перевода порта А в режим ввода, порта В в режим вывода, старших разрядов порта С в режим ввода и младших разрядов порта С в режим вывода могут использоваться следующие команды: MVI А.98Н OUT РРШС Команда MVI загружает величину 98i6 (1001 IOOO2) в регистр А. Формат управляющего слова, соответствующий режиму ввода-вывода, задается установкой единичного значения бита D7. Условие D6 = 0, D5 = 0 и D2 = 0 определяет режим 0. Бит D4=l задает режим ввода для порта А, бит D3=l-режим ввода для старших разрядов порта С, бит D1 = 0 - режим вывода для порта В и бит D0=0 - режим вывода для младших разрядов порта С. Рис. 12.6. Управление портами при работе в режимах 1 и 2. Порт fi РС7 РС6 PCS РСЗ ~ РС2 PCI PCD Порт В pbd-7 Упрабление портом А Управление портом В , Команда OUT записывает содержимое регистра А по адресу PPIUC, представляющему собой символический адрес регистра управления РРШ. Режимы 1 и 2. На рис. 12.6 показано разделение разрядов порта С на две группы, используемые для управления работой портов А и В. При выборе режима 1 (стробированная передача) или режима 2 (двунаправленная передача) для управления портом В используются разряды РСО-2, а портом А - разряды РСЗ-7. Рис. 12.7 демонстрирует в упрощенном виде использование разрядов порта С при работе в режимах 1 и 2. Управление работой порта В в обоих режимах производится одинаково. Запрос из ЦПУ на выполнение операции ввода-вывода передается на линию РС1 через вентиль 1204. Сигнал в линии РС1 действует как сигнал разрешения передачи (запрет). Он передается также к периферийному устройству в качестве запроса на выполнение операции ввода-вывода. Если от периферийного устройства по линии РС2 на открытый вентиль 1204 поступает ответный сигнал, то в разряде РСО устанавливается высокий уро- 1 ... 26 27 28 29 30 31 32 ... 39 |
© 2000-2025. Поддержка сайта: +7 495 7950139 добавочный 133270.
Заимствование текстов разрешено при условии цитирования. |