25634-1 (751117), страница 6
Текст из файла (страница 6)
3.5.1. Стандартный параллельный порт
Параллельный порт использует электрические сигналы ТТЛ-уровня. Структурная схема адаптера параллельного порта представлена на рис. 3.18.
Широкое распространение получили параллельные адаптеры, в которых практически все функции отдельных ТТЛ-микросхем объединены в одной типа 82С11, выполненной по КМОП-технологии.
Рис. 3.18. Структурная схема адаптера параллельного порта
Для того чтобы избежать ошибок и потери информации при передаче данных с ТТЛ-уровнями, максимальная длина кабеля для модема (или принтера) не должна превышать двух-трех метров. Подсоединение кабеля к адаптеру производится через 25-контактный разъем типа D-shell.
Стандарт IBM определяет три порта ввода-вывода с базовыми адресми ОЗВСЬ, 0378h и 0278h. Встроенный параллельный порт адрес ОЗВСЬ обычно не использует. Вместо этого, как правило, используется базовый адрес 0378h. При необходимости базовый адрес можно переназначить программным способом, либо при помощи DIP-переключателей или перемычек.
В IBM PC-совместимых компьютерах за параллельными портами закреплены специальные логические имена, поддерживаемые системой: LPT1, LPT2, LPT3. Имя устройства PRN является эквивалентным LPT1. Эти логические имена необязательно должны совпадать с указанными выше адресами портов ввода-вывода. При загрузке система анализирует наличие параллельных портов по каждому из трех базовых адресов. Поиск всегда выполняется в следующем порядке: ОЗВСЬ, 0378h и затем 0278h. Первому найденному параллельному порту присваивается имя LPT1, второму — LPT2, третьему — LPT3. В результате реализации такой схемы назначения имен можно быть уверенным в том, что в системе всегда будет порт LPT1 (PRN) не зависимо от присвоенного ему адреса порта ввода-вывода, при условии, что компьютер оборудован хотя бы одним адаптером параллельного порта.
Стандартный параллельный порт предназначен только для односторонней передачи информации. Работа же с каналами связи предполагает реализацию как передачи, так и приема данных. В связи с этим ряд разработчиков аппаратного обеспечения отошел от первоначальной схемы IBM.
3.5.2. Порт ЕРР
Фирмы Intel, Xircon, Zenith и ряд других, заинтересованных в улучшении характеристик параллельного порта, совместно разработали спецификацию улучшенного параллельного порта ЕРР (.Enhanced Parallel Port).
Порт ЕРР является двунаправленным, то есть обеспечивает параллельную передачу 8 бит в обоих направлениях. Это избавляет центральный процессор от необходимости выполнения медленных инструкций типа IN и OUT, позволяя программе заниматься непосредственно пересылкой данных. Порт ЕРР передает и принимает данные почти в шесть раз быстрее обычного параллельного порта. Этому также способствует то, что порт ЕРР имеет буфер, сохраняющий передавемые и принимаемые символы до того момента, когда модем или другое периферийное устройство будет готово их принять.
Специальный режим позволяет порту ЕРР передавать блоки данных непосредственно из ОЗУ компьютера в периферийное устройство и обратно, минуя процессор. Такое преимущество, однако, реализуется за счет использования, такого ценного ресурса компьютера, как канал прямого доступа к памяти.
Таблица 3.8. Назначение контактов и линий параллельного порта ЕРР
| Контакт DB-25 | Направление (для ЕРР) | Сигнал ЕРР | Сигнал стандартного порта |
| 1 | Вход/выход | Запись | Строб |
| 2 | Вход/выход | Data 0 | Data 0 |
| 3 | Вход/выход | Data 1 | Data 1 |
| 4 | Вход/выход | Data 2 | Data 2 |
| 5 | Вход/выход | Data3 | Data3 |
| 6 | Вход/выход | Data 4 | Data 4 |
| 7 | Вход/выход | Data 5 | Data 5 |
| 8 | Вход/выход | Data 6 | Data 6 |
| 9 | Вход/выход | Data 7 | Data 7 |
| 10 | Вход | Прерывание | Подтверждение |
| 11 | Вход | Ожидание | Занятость |
| 12 | Вход | Конец бумаги | Конец бумаги |
| 13 | Вход | Выбор | Выбор |
| 14 | Вход/выход | Строб данных | Автоподача |
| 15 | Вход | Ошибка | Ошибка |
| 16 | Вход/выход | Инициализация | Инициализация |
| 17 | Вход/выход | Строб адреса | Выбор ввода |
| 18—25 | — | Земля | Земля |
Порт ЕРР полностью совместим с обычным портом. Для использования его специфических функций требуется специальное программное обеспечение. При использовании надлежащего программного обеспечения порт ЕРР может передавать и принимать данные со скоростью до 2 Мбит/с. Назначение контактов разъема DB-25 для стандартного и ЕРР портов приведено в табл. 3.8.
Подобно интерфейсу SCSI спецификация порта ЕРР позволяет подключать в цепочку до 64 периферийных устройств.
3.5.3. Порт ЕСР
Дальнейшим развитием порта ЕРР явился порт с расширенными функциями ЕСР (Extended Capability Port).
Порт ЕСР, разработанный компаниями Microsoft, Hewlett-Packard и рядом других, обеспечивает еще большую по сравнению с портом ЕРР скорость передачи. Как и в ЕРР, в порту ЕСР сохранен тот же режим обмена данными через канал прямого доступа к памяти. Также реализован режим работы, позволяющий снизить загрузку центрального процессора при передаче данных через порт. Порт ЕСР позволяет подключать до 128 периферийных устройств.
Одной из наиболее важных функций, впервые реализованной в ЕСР, является сжатие данных. Это позволяет резко повысить реальную скорость передачи. Данная функция не является обязательной, поэтому порты, периферийные устройства и программы могут ее и не поддерживать. Однако выигрыш от сжатия данных можно получить только тогда, когда режим компрессии поддерживается как портом ЕСР или управляющей программой, так и периферийным устройством. Только в этом случае может быть реализована функция сжатия данных. Если обоюдной поддержки не будет, компьютер будет обмениваться с периферийным устройством без сжатия.
Для сжатия данных используется метод RLE (Run-Lehgt Encoding). Согласно алгоритму этого метода длинная последовательность одинаковых символов передается всего лишь двумя байтами: один байт определяет повторяющийся символ, а второй — число повторений. При этом стандарт ЕСР допускает сжатие и распаковку данных как программно, путем применения драйвера, так и аппаратно схемой порта.
3.5.4. Порт IEEE 1284
Фирменные стандарты ЕРР и ЕСР были включены в стандарт Американского института инженеров по электротехнике и электронике IEEE 1284.
Порт IEEE 1284 способен работать как с портом ЕРР, так и с ЕСР. Это достигается за счет выполнения требований совместимости с ранее разработанными и уже широко распространенными спецификациями.
Дополнительно к функциям уже рассмотренных портов, порт IEEE 1284 позволяет периферийному устройству послать сигнал при аварии. Всякий раз при возникновении ошибки параллельный порт в состоянии послать сигнал прерывания IRQ. Следует заметить, что сигнал ошибки обычного параллельного порта (контакт 15 разъема DB-25) не использовал прерывания процессора и мог быть обнаружен, если только сама программа предусматривает контроль этого сигнала.
3.6. Интерфейс PC Card (PCMCIA)
3.6.1. Общие сведения
В последнее время для расширения ресурсов компьютера применяются так называемые платы PC Card, имеющие стандартный интерфейс PCMCIA, который также называют PC Card. Платы PC Card могут содержать дополнительную оперативную память, жесткие диски, сетевые адаптеры, навигационные приемники GPS и, конечно же, модемы для коммутируемых телефонных сетей общего пользования, сотовых систем связи и для локальных радиосетей. Интерфейсом PCMCIA комплектуются практически все переносные компьютеры и большинство настольных модели. Модемные платы PC Card часто содержат в своем составе и другие коммуникационные устройства, например сетевые адаптеры. Внешний вид таких устройств приведен на рис. 3.19.
Стандарт первого поколения PCMCIA 1.0 был выпущен в сентябре 1990 г. и определял использование карт памяти в качестве средств хранения данных.
Однако уже через год он был модифицирован и стал описывать более унифицированный интерфейс, подходящий для устройств как памяти, так и ввода-вывода. Новая версия 2.0 этого стандарта предусматривает применение плат большей толщины, что позволило использовать расширенную номенклатуру интегральных схем. Эта версия стандарта предусматривает также возможность выполнения программ, записанных в платах PCMCIA, непосредственно из этой памяти, без необходимости загрузки кода в стандартное ОЗУ компьютера.
Стандарт PCMCIA представляет собой нечто большее, нежели просто набор требований к размерам платы и разводке контактов шины. Этот стандарт описывает форматы файлов и структуры данных, метод передачи платой информации о своей конфигурации и возможностях главному компьютеру, независимые от типа устройства средства доступа к аппаратным средствам платы и программные связи, независимые от операционных систем.
3.6.2. Архитектура PC Card
Стандарт PCMCIA предусматривает 16-разрядный интерфейс и одну линию запроса прерывания (IRQ). Система расширения PCMCIA объединяет все — от компьютера и унифицированного гнезда для плат PC Card до программных вызовов, обеспечивающих связь программных средств с системой расширения PCMCIA. Эта система расширения в общем виде представлена на рис. 3.20.
Рис. 3.19. Общий вид модемных PC Card
Рис. 3.20. Система расширения PCMCIA
Устройство, поддерживающее стандарт PCMCIA, может иметь от одного до 255 адаптеров PCMCIA. Каждый адаптер обслуживает до 16 отдельных портов PCMCIA. Таким образом, стандар PCMCIA 2.0 предусматривает возможность объединения в одной системе до 4080 плат PC Card.
Регистры памяти и ввода-вывода каждой платы PC Card отображаются в адресном пространстве компьютера. Компьютер осуществляет доступ к ресурсам PCMCIA-карты через одно или несколько окон, представляющих собой блоки памяти или регистров с прямой адресацией. Вся память платы может быть собрана в одном окне больших размеров (если нужно ее просто расширить), или же к ней обращаются постранично (как к EMS-памяти) через одно или несколько окон. PCMCIA-карта сама устанавливает режим доступа на основании данных о конфигурации, хранящихся в ее собственной памяти.
Для обеспечения логической связи между PCMCIA-картой и персональным компьютером разработан программный интерфейс под названием Socket Services. С помощью набора функциональных вызовов по прерыванию IRQ lAh программа может получить доступ к функциям PC Card. Интерфейс Socket Services делает доступ к плате аппаратно-независимым — примерно так же, как BIOS для PC. В действительности, интерфейс Socket Services разработан так, чтобы его можно было встраивать в BIOS компьютера типа IBM PC. Но интерфейс Socket Services иногда реализуется в виде драйвера устройства, так что возможности существующих компьютеров также можно дополнять функциональными возможностями PCMCIA.
С помощью Socket Services компьютер формирует окна, используемые PCMCIA-картой для доступа. После этого память или регистры могут непосредственно адресоваться компьютером. Отдельные или сгруппированные байты могут считываться или записываться с помощью функциональных вызовов Socket Services.
В 1992 г. был утвержден стандарт Card Services, определяющий программный интерфейс для доступа к PCMCIA-картам. Этот стандарт устанавливает набор программных вызовов, обеспечивающих связь с теми частями интерфейса Socket Services, которые не зависят от операционной системы компьютера. Подобно Socket Services интерфейс Card Services связан с прерыванием lAh и может быть реализован либо в виде драйвера, либо в качестве встроенного блока операционной системы. Для операционных систем, работающих в защищенном режиме необходим последний вариант исполнения интерфейса Card Services.
Система конфигурации PCMCIA, получившая название "Структура идентификации платы" (CIS — Card Identification Structure), или "метаформат" платы, предусматривает обеспечение необходимой связи между PCMCIA-картой и компьютером при помощи нескольких уровней или слоев совместимости. Так же как в случае с аппаратным интерфейсом, каждый следующий слой CIS все в большей степени отражает специфику конкретного устройства.














