Проектирование устройств сопряжения (1083567), страница 2
Текст из файла (страница 2)
В таблице 1.1 приведено сравнение этих трех методов подключения по восьми параметрам, которые надо учитывать при выборе одного из них. Из таблицы видно, что выбор системной магистрали обеспечивает наибольшую скорость обмена. При этом не требуется ни отдельного конструктива (плата УС устанавливается в корпус компьютера), ни дополнительного источника питания (используется тот, который есть в компьютере). В то же время одноплатное исполнение ограничивает сложность УС, а соседство с быстродействующими и мощными цифровыми узлами компьютера приводит к высокому уровню электромагнитных помех и наводок по цепям питания.
Выбор Centronics или RS-232C позволяет расположить УС (причем УС любой сложности) на большом расстоянии от компьютера. Но при этом достигается гораздо меньшая скорость обмена, а также требуется внешний конструктив и дополнительный источник питания, что существенно увеличивает стоимость системы. Немаловажно и то, что без специальных ухищрений через эти интерфейсы можно подключить только одно УС. Что касается сложности узлов сопряжения (интерфейсной части УС), то понятно, что обмен в параллельном формате гораздо проще, чем в последовательном.
Несколько слов следует сказать о терминологии. Синонимами термина "устройство сопряжения" являются термины "адаптер", "контроллер" (вообще-то понятие контроллера обычно гораздо шире — это любое управляющее устройство). Иногда УС несколько неправильно называют интерфейсом. Если УС ориентировано на системную магистраль, его еще называют платой (картой) расширения. Сути дела выбор того или иного термина не меняет. Задача — сопряжение компьютера с каким-то внешним устройством, прибором, установкой, комплексом, процессом и т.д.
В заключение этого раздела — небольшой словарик.
Задатчик — активное устройство на магистрали, управляющее обменом в данном цикле.
Исполнитель — пассивное устройство на магистрали, к которому обращается задатчик в данном цикле.
Асинхронный обмен — обмен информацией в темпе, определяемом быстродействием исполнителя (то есть с ожиданием задатчиком исполнения требуемой операции).
Синхронный обмен — обмен информацией в темпе задатчика, без учета быстродействия исполнителя.
Установка сигнала — перевод сигнала в активное состояние. Снятие сигнала — перевод сигнала в пассивное состояние.
Отрицательный фронт сигнала — переход сигнала из единицы в нуль.
Положительный фронт сигнала — переход сигнала из нуля в единицу.
Передний фронт сигнала — переход сигнала из пассивного coстояния в активное.
Задний фронт сигнала — переход сигнала из активного состояния в пассивное.
Радиальное прерывание — прерывание, адрес вектора которого определяется только номером линии запроса прерывания.
Векторное прерывание — прерывание, адрес вектора которого задается устройством, запросившим прерывание.
1.2. Порядок обмена по системной магистрали ISA
Структура персонального компьютера типа IBM PC с точки зрения разработчика УС, ориентированных на ISA, может быть условно представлена в виде рис. 1.1. Помимо центрального процессора, системной памяти (оперативной и постоянной), стандартных средств ввода/вывода, входящих в любую микропроцессорную систему, здесь следует отдельно выделить встроенные контроллеры прерываний и прямого доступа к памяти (ПДП), перестановщик байтов данных, программируемый таймер и контроллер регенерации памяти. Все эти устройства, расположенные на материнской (системной) плате (motherboard) компьютера или вставленные в слоты ISA (устройства ввода/вывода), участвуют в обмене по магистрали и могут быть использованы разрабатываемыми УС.
Рис. 1.1. Структура персонального компьютера.
Задатчиками (хозяевами) шины могут выступать центральный процессор (самая обычная ситуация), контроллер ПДП, контроллер регенерации и некоторые внешние платы. В каждом цикле обмена задатчиком всегда является только одно устройство. Контроллер ПДП захватывает магистраль (запрещает работу центрального процессора) на время прямой передачи информации между устройством ввода/вывода и памятью (по запросу устройства ввода/вывода). Контроллер регенерации периодически становится задатчиком магистрали для проведения циклов регенерации системной динамической памяти через заданные интервалы времени. Для 32-разрядных компьютеров (386DX, 486, Pentium и т.д.) обмен процессора с памятью (а иногда и с другими устройствами) осуществляется через быстродействующую локальную шину VLB или через PCI.
1.2.1. Особенности магистрали ISA
Магистраль ISA была разработана специально для персональных компьютеров типа IBM PC AT (начиная с процессора i80286) и является фактическим стандартом для всех изготовителей этих компьютеров. В то же время отсутствие официального международного статуса магистрали ISA (она не утверждена в качестве стандарта ни одним международным комитетом по стандартизации) приводит к тому, что многие производители допускают некоторые, порой существенные отклонения от фирменного стандарта. На это будет обращено особое внимание в книге.
ISA явилась расширением магистрали компьютеров IBM PC и IBM PC XT. В ней было увеличено количество разрядов адреса и данных, увеличено число линий аппаратных прерываний и каналов ПДП, а также повышена тактовая частота. К 62-контактному разъему прежней магистрали был добавлен 36-контактный новый разъем. Тем не менее совместимость была сохранена, и платы, предназначенные для IBM PC XT, годятся и для IBM PC AT. Характерное отличие ISA состоит в том, что ее тактовый сигнал не совпадает с тактовым сигналом процессора, как это было в XT, поэтому скорость обмена по ней не пропорциональна тактовой частоте процессора.
Магистраль ISA относится к демультиплексированным (то есть имеющим раздельные шины адреса и данных) 16-разрядным системным магистралям среднего быстродействия. Обмен осуществляется 8- или 16-разрядными данными. На магистрали реализован раздельный доступ к памяти компьютера и к устройствам ввода/вывода (для этого имеются специальные сигналы). Максимальный объем адресуемой памяти составляет 16 Мбайт (24 адресные линии). Максимальное адресное пространство для устройств ввода/вывода — 64 Кбайта (16 адресных линий), хотя практически все выпускаемые платы расширения используют только 10 адресных линий (1 Кбайт). Магистраль поддерживает регенерацию динамической памяти, радиальные прерывания и прямой доступ к памяти. Допускается также захват магистрали.
Наиболее распространенное конструктивное исполнение магистрали — разъемы (слоты), установленные на материнской плате компьютера, все одноименные контакты которых соединены между собой, то есть все разъемы абсолютно равноправны. Особенностью конструктивного решения магистрали является то, что платы расширения (дочерние платы), подключаемые к ее разъемам, могут иметь самые различные размеры (длина платы ограничена снизу размером разъема, а сверху — длиной корпуса компьютера). Платы расширения имеют интерфейсные разъемы магистрали, выполненные печатными проводниками. Количество установочных мест для плат расширения зависит от типа корпуса компьютера и составляет обычно 2-3 для Ultra-slimline корпусов, 3-4 для Slimline корпусов, 5-6 для Desktop корпусов, 4-5 для Mini-tower корпусов, 5-7 для Midi-tower корпусов и более 8 для Big-tower корпусов.
Рис. 1.2. Нумерация контактов разъема ISA
(для IBM PC XT — только А1 ... А31 и В1 ... В31).
Разъем магистрали ISA разделен на две части, что позволяет уменьшать размеры 8-разрядных плат расширения, а также использовать платы, разработанные для компьютеров IBM PC XT. Внешний вид плат расширения показан на рис. 1.2, а точные их размеры приведены в приложении. Назначение контактов разъемов представлено в таблице 1.2 (здесь знак минус перед названием сигнала говорит о том, что активным уровнем этого сигнала является уровень логического нуля, в противном случае активным уровнем будет уровень логической единицы).
Контакт | Цепь | I/O | Контакт | Цепь | I/O |
A1 | -I/O CH CK | I | В1 | GND | - |
А2 | SD7 | I/O | В2 | RESET DRV | O |
A3 | SD6 | I/O | ВЗ | +5 В | - |
А4 | SD5 | I/O | В4 | IRQ9 (IRQ2) | I |
А5 | SD4 | I/O | В5 | -5 В | - |
А6 | SD3 | I/O | В6 | DRQ2 | I |
А7 | SD2 | I/O | В7 | -12В | - |
А8 | SD1 | I/O | В8 | OWS | I |
А9 | SDO | I/O | В9 | +12 В | - |
А10 | I/O CH RDY | I | В10 | GND | - |
A11 | AEN | O | В11 | -SMEMW | О |
A12 | SA19 | I/O | В12 | -SMEMR | O |
A13 | SA18 | I/O | В13 | -IOW | I/O |
A14 | SA17 | I/O | В14 | -IOR | I/O |
A15 | SA16 | I/O | В15 | -DACK3 | O |
A16 | SA15 | I/O | В16 | DRQ3 | I |
A17 | SA14 | I/O | В17 | -DACK1 | O |
A18 | SA13 | I/O | В18 | DRQ1 | I |
A19 | SA12 | I/O | В19 | -REFRESH | I/O |
A20 | SA11 | I/O | В20 | SYSCLK | O |
A21 | SA10 | I/O | В21 | IRQ7 | I |
A22 | SA9 | I/O | В22 | IRQ6 | I |
A23 | SA8 | I/O | В23 | IRQ5 | I |
A24 | SA7 | I/O | В24 | IRQ4 | I |
A25 | SA6 | I/O | В25 | IRQ3 | I |
A26 | SA5 | I/O | В26 | -DACK2 | O |
A27 | SA4 | I/O | В27 | Т/С | O |
A28 | SA3 | I/O | В28 | BALE | O |
A29 | SA2 | I/O | В29 | +5 В | - |
A30 | SA1 | I/O | ВЗО | OSC | O |
A31 | SA0 | I/O | В31 | GND | - |
C1 | -SBHE | I/O | D1 | -MEM CS16 | I |
С2 | LA23 | I/O | D2 | -I/O CS16 | I |
C3 | LA22 | I/O | D3 | IRQ10 | I |
С4 | LA21 | I/O | D4 | IRQ11 | I |
С5 | LA20 | I/O | D5 | IRQ12 | I |
С6 | LA19 | I/O | D6 | IRQ15 | I |
С7 | LA18 | I/O | D7 | IRQ14 | I |
С8 | LA17 | I/O | D8 | -DACK0 | О |
С9 | -MEMR | I/O | D9 | DRQ0 | I |
С10 | -MEM | I/O | D10 | -DACK5 | О |
С11 | SD8 | I/O | D11 | DRQ5 | I |
С12 | SD9 | I/O | D12 | -DACK6 | О |
С13 | SD10 | I/O | D13 | DRQ6 | I |
С14 | SD11 | I/O | D14 | -DACK7 | O |
С15 | SD12 | I/O | D15 | DRQ7 | I |
С16 | SD13 | I/O | D16 | +5 В | - |
С17 | SD14 | I/O | D17 | -MASTER | I |
С18 | SD15 | I/O | D18 | GND | - |
Табл. 1.2 Назначение контактов разъема ISA