Проектирование устройств сопряжения (1083567), страница 7
Текст из файла (страница 7)
Прежде чем перейти к методам построения отдельных блоков интерфейсных частей УС, ориентированных на ISA, надо выделять основные интерфейсные функции, определяемые стандартом магистрали. В соответствии с определением интерфейса, приведенным в предыдущей главе, мы должны обеспечить информационную, электрическую и конструктивную совместимость. О конструктивной совместимости мы здесь говорить не будем (она относится к этапу проектирования печатной платы и сводится к точному соблюдению всех размеров платы, разъемов и крепежных элементов). Информационная совместимость предполагает точное выполнение протоколов обмена и правильное использование сигналов магистрали. Электрическая совместимость подразумевает согласование уровней входных, выходных и питающих напряжений и токов.
2.1. Проектирование аппаратуры для сопряжения с ISA
При проектировании узлов УС, особенно входящих в интерфейсную часть УС, необходимо учитывать временные диаграммы ISA (рис. 1.3 — рис. 1.6). Наиболее важными при проектировании УС, работающих как устройства ввода/вывода, являются следующие временные интервалы:
- задержка между выставлением адреса и передним фронтом строба обмена (не менее 91 нс) — определяет время распознавания своего адреса проектируемым УС;
- длительность строба обмена (не менее 176 нс);
- задержка между передним фронтом сигнала -IOR и выставлением УС читаемых данных (не более 110 нс) — определяет требования к быстродействию буфера данных УС;
- задержка между задним фронтом сигнала -IOW и снятием записываемых данных (не менее 30 нс) — определяет требования к быстродействию принимающих данные узлов УС.
При работе УС в циклах обмена с памятью берутся аналогичные временные интервалы из рис. 1.4.
2.1.1. Буферирование сигналов магистрали
Буферирование магистральных сигналов применяется для электрического согласования и выполняет две основные функции: электрическая развязка (для всех сигналов) и передача сигналов в нужном направлении (только для двунаправленных сигналов). Это первая и наиболее очевидная интерфейсная функция любого УС. Иногда с помощью буферирования реализуется также мультиплексирование сигналов. Для буферирования наиболее часто используются микросхемы магистральных приемников, передатчиков, приемопередатчиков, называемые также нередко буферами или драйверами.
Электрическая развязка подразумевает обеспечение нужных входных и выходных токов (уровни напряжения на ISA — ТТЛ)- Как уже упоминалось, входные каскады УС должны обеспечивать уровень входного тока не более 0,8 мА, а выходные и двунаправленные каскады должны выдавать выходной ток не менее 24 мА (при нулевом выходном сигнале). Несоблюдение этого правила может привести к сбоям в работе компьютера и даже к выходу из строя его отдельных узлов. При этом, строго говоря, все определяется конфигурацией системы. Если к магистрали компьютера подключена только одна плата расширения (ваше УС), то требования к ней будут гораздо мягче, чем в случае использования нескольких плат. Но всегда надо рассчитывать на возможность развития системы и включения дополнительных плат. Поэтому лучше все-таки придерживаться указанных величин.
Выбор типа драйвера для каждого магистрального сигнала (приемник, передатчик или приемопередатчик) определяется назначением этого сигнала и возможными режимами работы УС. Так, например, в случае, когда УС работает в режиме программного обмена, приемники используются для сигналов адреса SA0 ... SA9 и для управляющих сигналов -IOR, -IOW, AEN, BALE, -SBHE, передатчики используются для I/O СН RDY и -I/O CS 16. Для сигналов данных могут использоваться приемники (если УС работает только в режиме записи), передатчики (если УС работает только в режиме чтения) или приемопередатчики (если УС работает как в режиме чтения, так и в режиме записи). Если возможен обмен по прерываниям, то добавляется передатчик для сигнала IRQ, а если применяется ПДП, то применяется передатчик для сигнала DRQ и приемник для сигнала DACK.
Остановимся подробнее на характеристиках микросхем, которые могут применяться для буферирования.
Приемники магистральных сигналов должны удовлетворять двум основным требованиям: малые входные токи и высокое быстродействие (они должны успевать отрабатывать в течение отведенных им временных интервалов циклов обмена).
Конкретное значение допустимых времен задержек определяется используемой схемой интерфейсной части УС в целом, но можно определенно сказать, что микросхемы обычных (не быстродействующих) КМОП серий здесь не годятся, несмотря на их малые входные токи. Не подходят и микросхемы серии К155 (SN74) из-за их больших входных токов.
Требованиям, предъявляемым к приемникам, удовлетворяют следующие серии микросхем: КР1533 (SN74ALS), К555 (SN74LS) и КР1554 (74АС). Величины входных токов логического нуля для них составляют соответственно 0,2 мА, 0,4 мА и 0,2 мА, а величины временных задержек не превышают соответственно 15 нс, 20 нс и 10 нс. Помимо этих серий в качестве приемников можно использовать специальные микросхемы магистральных приемников серии КР559 (входной ток не более 0,12 мА, задержка не более 30 нс). Требованиям, предъявляемым к приемникам, удовлетворяют также микросхемы электрически программируемых ППЗУ и ПЛМ серки КР556 (I36, N82S, DM87S, НМ76). Это тоже немаловажно, так как их очень удобно использовать в схемах селекторов адреса УС. Входные токи этих микросхем не превышают 0,25 мА. Пример входного буфера показан на рис. 2.2.
Отметим, что малые входные токи микросхем серий КР1533 и КР1554 позволяют подключать к линии магистрали даже два входа таких микросхем.
Рис. 2.2. Пример входного буфера.
Рис. 2.3. Мультиплексирование шины данных.
Теперь переходим к передатчикам. Требования к ним: большой выходной ток и высокое быстродействие. Часто они должны иметь также отключаемый выход (например, для шины данных), то есть иметь выход с открытым коллектором или с тремя состояниями. Это связано с необходимостью перехода УС в пассивное состояние в случае отсутствия обращения к нему. Выбор микросхем передатчиков гораздо больше, такие микросхемы есть практически в каждой серии (К155, К555, КР1533, К559 и т.д.).
Передатчики часто выполняют функцию мультиплексирования данных, которые должны поступать на шину данных ISA от различных источников. На рис. 2.3. упрощенно показано два наиболее распространенных подхода к решению данной задачи (для 8-разрядной шины данных). Отметим, что при использовании микросхем мультиплексоров надо брать те из них, которые имеют выходы с тремя состояниями и большие выходные токи.
И, наконец, приемопередатчики. Требования к ним включают в себя требования к приемникам и передатчикам, то есть малый входной ток, большой выходной ток, высокое быстродействие и обязательное отключение выходов. Надо отметить, что в простейшем случае (когда разрядов немного) приемопередатчики могут быть построены на микросхемах приемников и передатчиков с отключаемыми выходами. Однако при большом количестве разрядов надо использовать специальные микросхемы приемопередатчиков. Эти микросхемы бывают двух основных типов (рис. 2.4): с двумя двунаправленными шинами или с тремя шинами (одной двунаправленной, одной входной шиной и одной выходной шиной).
Рис. 2.4. Типы приемопередатчиков.
Для управления работой приемопередатчиков используются два управляющих сигнала. Характеристики некоторых приемопередатчиков сведены в таблицу 2.1. В ней указаны разрядность шин, величины задержек и входных/выходных токов всех шин микросхем. В табл. 2.2 приведены режимы работы в зависимости от управляющих сигналов. Отметим такую особенность микросхемы КР59ИПЗ, как невозможность одновременного отключения ее двунаправленной и выходной шин. В таблице использованы следующие обозначения: ОК — выход с открытым коллектором, ЗС — выход с тремя состояниями. Отметим, что если приемопередатчики с открытым коллектором используются для буферирования шины данных, то на их выходах необходимо включать резисторы на шину +5В (если они не работают на линию, к которой эти резисторы уже подключены). Поэтому их применение иногда оказывается нежелательным. Это однако совсем не означает, что они не могут быть использованы, например, в операционной части УС. Особенностью микросхемы КР580ВА86 (87) является то, что шины имеют различные выходные токи, и только одна из них (В) удовлетворяет требованиям стандарта ISA. У других микросхем все двунаправленные шины выдают требуемые выходные токи. Те или иные сигналы управления могут быть более или менее удобны в каждом конкретном случае.
На рис. 2.5 показаны три схемы реализации приемопередатчиков для шины данных: на приемнике и передатчике, на приемопередатчике с двумя шинами и на приемопередатчике с тремя шинами (для 8-разрядных данных).
Шина А | Шина В | Шина С | |
КР559ИПЗ (DS8641)50 нс | Вход, 4 разряда, 1,8 мА | Вход/выход, ОК, 4 разряда, 0,2/80 мА | Выход, ТТЛ, 4 разряда, 16 мА |
КР531АП2 40 нс | Вход, 4 разряда, 0,15 мА | Вход/выход, ОК, 4 разряда, 0,15/60 мА | Выход, ОК, 4 разряда, 60 мА |
К589АП16 (18216) 30 нс | Вход, 4 разряда, 0,25 мА | Вход/выход, 3С, 4 разряда, 0,25/50 мА | Выход, 3С, 4 разряда, 15 мА |
КР580ВА86 (18286) 30 нс | Вход/выход, 3С, 8 разрядов, 0,2/16 мА | Вход/выход, 3С, 8 разрядов, 0,2/32 мА | — |
КР1533АП6(SN74ALS245) 10 нс | Вход/выход, 3С, 8 разрядов, 0,1/30 мА | Вход/выход, 3С, 8 разрядов, 0,1/30 мА | — |
КР559ИП13(DP8307) 18 нс | Вход/выход, 3С, 8 разрядов, 0,35/100 мА | Вход/выход, 3С, 8 разрядов, 0,35/100 мА | — |
Табл. 2.1. Характеристики приемопередатчиков.
V2 | VI | ИП3 | АП2 | АП16 | ВА86 | АП6 | ИП13 |
0 | 0 | А->В | А->В, В->С, запр. | А->В | В->А | В->А | запр. |
1 | 0 | В->С | А->В | В->С | А->В | А->В | А->В |
0 | 1 | В->С | В->С | откл. | откл. | откл. | В->А |
1 | 1 | В->С | откл. | откл. | откл. | откл. | откл. |
Табл. 2.2. Микросхемы приемопередатчиков.
Рис. 2.5. Варианты построения приемопередатчиков данных.
Отметим, что чаще нужны приемопередатчики с раздельными входными и выходными шинами данных УС, но при использовании многоразрядных микросхем ОЗУ или сдвиговых регистров типа КР1533ИР24 (SN74ALS299), которые имеют двунаправленную шину данных, удобнее применять приемопередатчики с совмещенными входными/выходными данными УС.
2.1.2. Построение селекторов адреса
Второй основной интерфейсной функцией, выполняемой УС, работающими в режиме программного обмена, является селектирование или дешифрация адреса. Эту функцию выполняет узел, называемый селектором адреса, который должен выработать сигналы, соответствующие выставлению на шине адреса магистрали кода адреса, принадлежащего данному УС, или одного из зоны адресов данного УС. Обобщенная схема селектора адреса для УС, работающего как устройство ввода/вывода, показана на рис. 2.6. Здесь шина А — это шина адреса магистрали, шина AS — внутренняя шина УС, на которой присутствует код, сравниваемый с адресом магистрали (может отсутствовать), ADR — выходные сигналы селектора адреса, формируемые при обращении по магистрали к данному УС.