IOWR #).
- Введення з регістра стану і перевірка готовності пристрою (біт SR. 7 - сигнал Busy). Цей крок зациклюється до отримання готовності або до спрацьовування програмного тайм-ауту (мінімум 1 цикл IORD #).
Після отримання готовності виводом в регістр управління встановлюється строб даних, а наступним висновком строб знімається (2 циклу IOWR #). Зазвичай, щоб переключити тільки один біт (Стрибає), регістр управління попередньо зчитується, що додає ще один цикл IORD #. Видно, що для виведення одного байта потрібно 4-5 операцій введення/виведення з регістрами порту (в кращому випадку, коли готовність виявлена по першому читанню регістра стану). Звідси випливає головний недолік виводу через стандартний порт - невисока швидкість обміну при значній завантаженні процесора. Порт вдається розігнати до швидкостей 100-150 Кбайт/с при повному завантаженні процесора, що недостатньо для друку на лазерному принтері. Інший недолік - функціональний - складність використання як порту введення.
Стандартний порт асиметричний - за наявності 12 ліній (і біт), нормально працюють на висновок, на введення працюють тільки 5 ліній стану. Якщо необхідна симетрична двонаправлений зв'язок, на всіх стандартних портах працездатний режим полубайтного обміну - Nibble Mode. У цьому режимі, званому також Hewlett Packard Bitronics, одночасно передаються 4 біта даних, п'ята лінія використовується для квитування. Таким чином, кожен байт передається за два циклу, а кожен цикл вимагає принаймні 5 операцій введення/виводу.
Розширення паралельного порту
Недоліки стандартного порту частково усували нові типи портів, що з'явилися в комп'ютерах PS/2. Двонаправлений порт 1 (Type 1 parallel port}-інтерфейс, введений в PS/2. Такий порт крім стандартного режиму може працювати в режимі введення або двунаправленном режимі. Протокол обміну формується програмно, а для вказівки напрямку передачі в регістр управління порту введений спеціальний біт CR.5: 0 - буфер даних працює на висновок, 1 - на введення. Не плутайте цей порт, званий також enhanced bi-directional, з ЕРР. Даний тип порту прижився і в звичайних комп'ютерах.
Порт з прямим доступом до пам'яті (Type 3 DMA parallelport) застосовувався в PS/2 моделей 57, 90, 95. Був введений для підвищення пропускної здатності і розвантаження процесора при виведенні на принтер. Програмі, що працює з портом, вимагалося тільки поставити в пам'яті блок даних, що підлягають висновку, а потім висновок по протоколу Centronics проводився без участі процесора.
Пізніше з'явилися інші адаптери LPT-портів, що реалізують протокол обміну Centronics апаратно - Fast Centronics. p> Деякі з них використовували FIFO-буфер даних - Parallel Port FIFO Mode. Не будучи стандартизованими, такі порти різних виробників вимагали використання власних спеціальних драйверів. Програми, що використовують пряме управління регістрами стандартних портів, не вміли більш ефективно їх використовувати. Такі порти часто входили до складу мультикарта VLB. Існують їх варіанти з шиною ISA, в тому числі вбудовані. p> Стандарт IEEE 1284
Стандарт на паралельний інтерфейс IEEE 1284, прийнятий в 1994 році, визначає порти SPP, ЕРР і ЕСР. Стандарт визначає 5 режимів обміну даними, метод узгодження режиму, фізичний і електричний інтерфейси. Згідно IEEE 1284, можливі наступні режими обміну даними через паралельний порт:
- режим сумісності (Compatibility Mode) - однонаправлений (вивід) по протоколу Centronics. Цей режим відповідає стандартному порту SPP.
- полубайтного режим (Nibble Mode) - введення байта в два цикли (по 4 біта), використовуючи для прийому лінії стану. Цей режим обміну може використовуватися на будь-яких адаптерах. p> - байтними режим (Byte Mode) - введення байта цілком, використовуючи для прийому лінії даних. Цей режим працює тільки на портах, що допускають читання вихідних даних (Bi-Directional або PS/2 Type 1).
- Режим ЕРР (Enhanced Parallel Port) (EPP Mode) - двонаправлений обмін даними. Керуючі сигнали інтерфейсу генеруються апаратно під час циклу звернення до порту. Ефективний при роботі з пристроями зовнішньої пам'яті і адаптерами локальних мереж.
- Режим ЕСР (Extended Capability Port) (ECP Mode) - двонаправлений обмін даними з можливістю апаратного стиснення даних за методом RLE (Run Length Encoding) і використання FIFO-буферів і DMA. Керуючі сигнали інтерфейсу генеруються апаратно. Ефективний для принтерів і сканерів. p> У комп'ютерах з LPT-портом на системній платі режим - SPP, ЕРР, ЕСР або їх комбінація - задається в BIOS Setup.
Режим сумісності повністю відповідає стандартному порту SPP. Інші режими детально розглянуті нижче.
Фізичний і електричний інтерфейси
Стандарт IEEE 1284 визначає фізичні характеристики приймачів і передавачів сигналів. Специфікації стандартного порту не задавали типів вихі...