Параллельные интерфейсы

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

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

прочие еигналы управления и синхронизации для УВВ} прямая связь о шинами (адреса данных и управления) процес-сора;

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

Некоторые параллельные интерфейсы имеют средства для управления прерываниями и ПДП, двунаправленные линии, 1аймеры и даже дополнительную память для программ и данных. Эти устройства гораздо сложнее портов ввода-вывода или УАПП. По сложности логических схем они могут приближаться к процессору. Как было отмечено ранее, сложность параллельных интерфейсных БИС означает, что их легче веего компоновать и использовать, если их можно адресовать как набор ячеек памяти, а не как набор портов ввода-вывода. Широко из-' вестен параллельный интерфейс «адаптер интерфейса периферийных устройств» (PIA — Peripheral Interface Adapter) 6820 фирмы Motorola. На рис. 8.21 представлена структурная схема устройства. Адаптер PIA имеет два порта, обозначаемые А и В\ порт А предназначен главным образом для/ ввода, а порт В — для вывода. В каждом порте имеются!

1) регистр данных. Этот регистр работает о фиксацией, если он используется для вывода данных, и без фиксации, если используется для ввода)

2) регистр направлений передачи, содержимое которого определяет, выходными или входными являются линии ввода-вывода;

3) регистр управления, определяющий действующие логические связи в устройстве и хранящий также сигналы «данные готовы» или «УВВ готово»;

4) две линии управления: СА(СВ)1 и СА(СВ)2, функции которых определяются содержимым регистра управления.

Адаптер PIA занимает четыре адреса в адресном пространстве памяти. Устройство может непосредственно присоединяться к шинам микропроцессора 6800 фирмы Motorola (рис. 8.22). Линии выбора регистра RS (register select) адресуют внутренние регистры и обычно подсоединены к двум младшим разрядам шины адреса. Линии выбора кристалла CS (Chip select) обеспечивают адресацию без использования декодеров (в малых системах). На рис. 8.22 линии Л1б и Аи соединены со входами выбора кристалла, причем действующие значения — низкое для первого входа и высокое для второго; поэтому адресация PIA не мешает ни адресации ОЗУ в пределах нулевой страницы памяти, ни адресации ПЗУ для самых старших адресов (см. обычную структуру памяти для МП Motorola 6800, описанную в гл. 7). На один из входов «выбор кристалла» подается конъюнкция сигналов VMA и Аи> а поэтому PIA не может непредвиденным образом изменять свое состояние во время циклов процессора, не использующих память.

Адаптер PIA имеет шесть регистров (три с каждой стороны), но только четыре адреса, используемые в соответствии с табл. 8.1. Регистры данных и направлений имеют общий адрес памяти. Выбор между ними осуществляется по значению бита 2 соответствующего регистра управления: этот бит равен 0 для регистра направления и 1 — для регистра данных. Необходимость такого выбора редко вызывает затруднения, как как в большинстве систем регистр направлений загружается при инициализации системы нужными значениями, которые, в дальнейшем редко меняются. Если какой-либо бит в регистре направлений равен 1, то линия ввода-вывода с соответствующим номером работает как выводная, а если 0— то как вводная.

На рис. 8.23 показано, как организованы регистры управления PIA. Разряды IRQ (interrupt request — запрос на прерывание) — это разряды «готово», устанавливаемые при изменении значений сигналов на линиях управлени|я.

Эти разряды не могут быть изменены путем записи данных в регистр управления. Они автоматически сбрасываются любой операцией, считывающей данные из регистра данных PIA. Дизъюнкция значений этих разрядов может быть использована как сигнал «прерывание».

Бит 0 регистра управления PIA определяет, разрешена ли работа линий прерывания (если его значение 1, то прерывание разрешено). Бит 1 регистра управления определяет, по фронту или по срезу сигнала на линии управления 1 должен быть установлен признак прерывания (CRA-7). Использование битов 0 и 1 описывается в табл. 8.2. Бит 1 допускает строб-сигналы любой полярности и с переключением по любому фронту.

С помощью разрядов 3—5 регистра управления можно изменять выполняемые PIA функции. Разряд 5 определяет, входной или выходной является линия управления 2 (СА2 или СВ2): если его содержимое равно 0-, то линия 2 входная. В этом случае стороны А и В PIA действуют одинаково. Управляющий разряд 6 устанавливается при переходе на линии управления 2. Управляющие разряды 3 и 4 определяют, принимает ли выходной сигнал действующее значение, а тккже тип перехода, по которому устанавливается разряд 6. Линия управления 2 может передавать дополнительный строб-сигнал от одиночного УВВ или строб-сигнал от группы мультиплексированных УВВ, использующих один и тот же порт. В табл. 8.3 описывается использование линий СА2 и СВ2 в качестве входных.

Если бит 5 принимает значение 1, то линия управления 2 — выходная. В этом случае стороны А и В отличаются друг от друга. Сигнал по линии СА2 выполняет функции строба чтения, а на линии СВ2 — строба записи. Использование линии СВ2 описано в табл. 8.4. Если бит 4 равен 0, то потенциал на СВ2 становится низким при положительном переходе первого сигнала «разрешение» (ENABLE), следующего за тем циклом, в котором ЦП записывает данные в регистр данных В. Управляющий бит 3 определяет условие окончания строб-сигнала. Если бит 3 принимает значение 1, то строб-сигнал длится только до следующего сигнала «разрешение», если — значение 0, то строб-сигнал продолжается до тех пор, пока его не прервет действующее значение перехода на СВ1. Возможные виды сигнала: короткий строб, по которому УВВ зафиксирует данные, или более длительный сигнал подтверждения (при обмене с квитированием), который длится до начала новой передачи данных периферийным устройством. Линия «разрешение» в большинстве случаев непосредственно соединена с системным генератором тактовых сигналов.

Если бит 4 принимает значение 1, то СВ2 — выходной сигнал с фиксированным уровнем, равным значению бита 3. Он может использоваться для выбора режима работы со словом состояния или для включения и выключения устройства. Нет необходимости в отдельном последовательном порте управления.

В табл. 8.5 приведено использование линии СА2 для строб-сигнала чтения, уровень которого становится низким после чтения процессором данных из регистра данных Л. Зафиксированный в управляющих разрядах режим остается тем же, что и для линии СВ2. Можно программным способом создать строб чтения на стороне В (или строб записи со стороны А) путем выполнения фиктивной операции записи после операции чтения на стороне В (соответственно фиктивной операции чтения после операции записи на стороне А). Фиктивные операции не должны менять содержимого ни одного из регистров. Операции чтения данных со стороны В или записи их со стороны А не вырабаты-тывают строб-сигнал.

При поступлении сигнала на вход «сброс» очищаются все регистры PIA. Все линии данных и управления первоначально являются входными, все прерывания запрещены и выбран регистр направлений передачи. Программа должна настроить PIA, исходя из этого начального состояния (см. примеры в § 8.6).

Линии данных у разных сторон отличаются. На стороне В имеется буфер с тремя состояниями, обеспечивающий высокую нагрузочную мощность и позволяющий правильно считывать данные с выходных линий. На стороне А нет буфера и правильное чтение с выходных линий невозможно, если эти линии не очень слабо нагружены или не буферизованы внешним образом.

Хотя PIA состоит из одного корпуса, применение этого устройства может быть весьма разнообразным. Адаптер PIA может обеспечить обмен с квитированием, управление прерываниями и выполнение других функций, что при использовании других устройств потребовало бы нескольких портов и других схем. 



Продажа сухие дрова купить planeta-drov.ru. . Пульты для ворот и шлагбаумов www.sgvolga.ru.