Цель работы
Целью работы является ознакомление с устройством параллельного интерфейса CENTRONICS, изучение физики его работы, разработка принципиальной схемы выполняющей функции интерфейса CENTRONICS и моделирование ее работы с помощью программы Electronics Workbench фирмы Interactive Image Technologies Ltd.
Предварительные сведения
Параллельные интерфейсы: CENTRONICS
Параллельные интерфейсы характеризуются тем, что в них для передачи бит в слове используются отдельные сигнальные линии, и биты передаются одновременно. Параллельные интерфейсы, как правило, используют логические уровни ТТЛ (транзисторно-транзисторной логики), что ограничивает длину кабеля из-за невысокой помехозащищенности ТТЛ-интерфейса. Гальваническая развязка отсутствует.
Для подключения принтера по интерфейсу Centronics в PC был введен порт параллельного интерфейса - так возникло название LPT-порт (Line PrinTer - построчный принтер). Хотя сейчас через этот порт подключаются не только построчные принтеры, название "LPT" осталось.
Понятие Centronics относится как к набору сигналов и протоколу взаимодействия, так и к 36-контактному разъему на принтерах. Назначение сигналов приведено в табл., а временные диаграммы обмена с принтером - на рис. 1.
Сигнал | I/O* | Назначение |
Strobe# | I | Строб данных. Данные фиксируются по низкому уровню сигнала |
Data [0:7] | I | Линии данных. Data 0 - младший бит |
Ack# | Acknowledge - импульс подтверждения приема байта (запрос на прием следующего). Может использоваться для формирования запроса прерывания | |
Busy | Занято. Прием данных возможен только при низком уровне сигнала | |
PaperEnd # | О | Высокий уровень сигнализирует о конце бумаги |
Select # | О | Сигнализирует о включении принтера (обычно в принтере соединяется резистором с цепью +5 В) |
AutoLF# | I | Автоматический перевод строки. При низком уровне принтер, получив символ CR (Carriage Return - возврат каретки), автоматически выполняет и функцию LF (Line Feed - переводстроки) |
Error# | О | Ошибка: конец бумаги, состояние OFF-Line или внутренняя ошибка принтера |
Init# | I | Инициализация (сброс в режим параметров умолчания, возврат к началу строки) |
Select# | Выбор принтера (низким уровнем).При высоком уровне принтер не воспринимает остальные сигналы интерфейса | |
GND | - | Общий провод интерфейса |
Традиционный порт SPP (Standard Parallel Port) является однонаправленным портом, через который программно реализуется протокол обмена Centronics. Порт вырабатывает аппаратное прерывание по импульсу на входе Ack#. Сигналы порта выводятся на разъем DB-25S (розетка), установленный непосредственно на плате адаптера (или системной плате) или соединяемый с ней плоским шлейфом.
Рис. 1. Передача данных по протоколу Centronics
Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 378h и 278h. Порт может использовать линию запроса аппаратного прерывания, обычно IRQ7 или IRQ5.Порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов,
BIOS поддерживает до четырех LPT-портов (LPT1-LPT4) своим сервисом - прерыванием INT 17h, обеспечивающим через них связь с принтером по интерфейсу Centronics. Этим сервисом
BIOS осуществляет вывод символа (по опросу готовности, не используя аппаратных прерываний), инициализацию интерфейса и принтера, а также опрос состояния принтера.
Стандартный порт имеет три 8-битных регистра, расположенных по соседним адресам в пространстве ввода/вывода, начиная с базового адреса порта (BASE).
Data Register (DR) - регистрданных. Данные, записанные в этот порт, выводятся на выходные линии интерфейса.
Status Register (SR) - регистр состояния; представляет собой 5-битный порт ввода сигналов интерфейса, отображающих состояние принтера (Busy, Ack, Paper End, Select, Error).
Control Register (CR) - регистр управления. Предназначен для программного управления принтером путем активизации линий Select, Init, AutoLF, Strobe#, задания режима прерывания и направления передачи данных
Процедура вывода байта по интерфейсу Centronics включает следующие шаги (в скобках приведено требуемое количество шинных операций процессора):
- Вывод байта в регистр данных (1 цикл IOWR#).
- Ввод из регистра состояния и проверка готовности устройства (бит SR. 7 - сигнал Busy). Этот шаг зацикливается до получения готовности или до срабатывания программного тайм-аута (минимум 1 цикл IORD#).
- По получении готовности выводом в регистр управления устанавливается строб данных, а следующим выводом строб снимается (2 цикла IOWR#).
Видно, что для вывода одного байта требуется 4-5 операций ввода/вывода с регистрами порта (в лучшем случае, когда готовность обнаружена по первому чтению регистра состояния). Отсюда вытекает главный недостаток вывода через стандартный порт - невысокая скорость обмена при значительной загрузке процессора. Порт может обеспечить скорость не более 100-150 Кбайт/с при полной загрузке процессора, что недостаточно, например, для печати на лазерном принтере.
Стандартный порт асимметричен - при наличии 12 линий, нормально работающих на вывод, на ввод работают только 5 линий состояния. Если необходима симметричная двунаправленная связь, на всех стандартных портах работоспособен режим полубайтного обмена - Nibble Mode. В этом режиме одновременно передаются 4 бита данных, пятая линия используется для квитирования. Таким образом, каждый байт передается за два цикла, а каждый цикл требует по крайней мере 5 операций ввода/вывода.
Стандарт на параллельный интерфейс IEEE 1284, принятый в 1994 году, определяет 5 режимов обмена данными, метод согласования режима, физический и электрический интерфейсы. Согласно IEEE 1284, возможны следующие режимы обмена данными через параллельный порт:
- Режим совместимости (Compatibility Mode) - однонаправленный (вывод) по протоколу Centronics. Этот режим соответствует стандартному порту SPP.
- Полубайтный режим (Nibble Mode) - ввод байта в два цикла (по 4 бита), используя для приема линии состояния. Этот режим обмена может использоваться на любых адаптерах.
- Байтный режим (Byte Mode) - ввод байта целиком, используя для приема линии данных. Этот режим работает только на портах, допускающих чтение выходных данных (Bi-Directional или PS/2 Type 1).
- Режим ЕРР (Enhanced Parallel Port) (EPP Mode) - двунаправленный обмен данными. Управляющие сигналы интерфейса генерируются аппаратно во время цикла обращения к порту. Эффективен при работе с устройствами внешней памяти. Главной отличительной чертой ЕРР является выполнение внешней передачи во время одного процессорного цикла ввода/вывода. Это позволяет достигать высоких скоростей обмена (0,5...2 Мбайт/с).
- Режим ЕСР (Extended Capability Port) (ECP Mode) - двунаправленный обмен данными с возможностью аппаратного сжатия данных и использования FIFO-буферов и DMA. Управляющие сигналы интерфейса генерируются аппаратно. Эффективен для принтеров и сканеров.
В компьютерах с LPT-портом на системной плате режим SPP, ЕРР, ЕСР или их комбинация - задается в BIOS Setup
ПУ в стандарте IEEE 1284 обычно не требуют от контроллера реализации всех режимов, предусмотренных стандартом. Для определения режимов и методов управления конкретным устройством стандарт предусматривает последовательность согласования (negotiation sequence). Последовательность построена так, что старые устройства, не рассчитанные на применение IEEE 1284, на нее не ответят, и контроллер останется в стандартном режиме. Периферия IEEE 1284 может сообщить о своих возможностях, и контроллер установит режим, удовлетворяющий и хост, и ПУ.
Экспериментальная часть
В ходе выполнения лабораторной работы были выполнены следующие действия:
1) Выяснили физику работы интерфейса CENTRONICS.
2) Разработали принципиальную схему выполняющую функции интерфейса CENTRONICS, на основе линейки триггеров ТТЛ логики, управление с помощью генератора, в качестве шинного формирователя использовали К561 ЛН2. Передача данных была организована по протоколу Centronics (см. рис. 1). Входное слово восьмиразрядное (задается с помощью переключателей). В данном случае это слово - 10100001.
3) С помощью программы Electronics Workbench смоделировали работу разработанной схемы.
Результат работы, т.е. полученная схема изображена в приложении А рис.1.
Вывод
В ходе выполнения лабораторной работы мы ознакомились с устройством параллельного интерфейса CENTRONICS, изучили физику его работы, разработали схему, выполняющую функции выходного каскада интерфейса CENTRONICS и произвели моделирование ее работы с помощью программы Electronics Workbench фирмы Interactive Image Technologies Ltd.
РЕЗУЛЬТАТЫИСПЫТАНИЙ
Приложение А
(обязательное)
Рисунок А.1 – схема, выполняющая функции интерфейса CENTRONICS
Ответы на контрольные вопросы:
1. Области применения интерфейса CENTRONICS.
Основным назначением интерфейса Centronics является ……
2. Физика работы CENTRONICS.
Формирование и прием сигналов интерфейса Centronics производится путем записи и чтения выделенных ……….
3. Режимы обмена данными через параллельный порт.
Стандарт IEEE 1284 определяет пять режимов обмена…….
4. Какие регистры содержит стандартный LPT-порт?
Адаптер параллельного интерфейса представляет собой набор регистров, расположенных ……..