Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Полубайтный режим ввода — Nibble Mode




Режим полубайтного обмена является наиболее общим решением задачи двунаправленного обмена данными, поскольку может работать на всех стандартных (традиционных) портах. Все эти порты имеют 5 линий ввода состояния, используя которые периферийное устройство может посылать в PC байт тетрадами (nibble — полубайт, 4 бита) за два приема. Назначение сигналов порта приведено в табл 4.

Таблица 4.

Сигналы LPT-порта в полубайтном режиме ввода

 

Контакт Сигнал SPP I/O Использование сигнала при приеме данных в Nibble Mode
  AUTOFEED#   HostBusy — сигнал квитирования. Низкий уровень означает готов­ность к приему тетрады, высокий подтверждает прием тетрады
  SELECTIN»   Высокий уровень указывает на обмен в режиме IEEE 1284 (в режиме SPP уровень низкий)
  АСК# ' PtrClk. Низкий уровень означает действительность тетрады, переход в высокий — ответ на сигнал HostBusy
  BUSY I Прием бита данных 3, затем бита 7
  РЕ I Прием бита данных 2, затем бита 6
  SELECT I Прием бита данных 1, затем бита 5
  ERRORS I Прием бита данных 0, затем бита 4

Прием байта данных в полубайтном режиме состоит из следующих фаз:

1. Хост сигнализирует о готовности приема данных установкой низкого уровня на линии HostBusy.

2. ПУ в ответ помещает тетраду на входные линии состояния.

3. ПУ сигнализирует о действительности тетрады установкой низкого уровня на линии PtrClk.

4. Хост устанавливает высокий уровень на линии HostBusy, указывая на заня­тость приемом и обработкой тетрады.

5. ПУ отвечает установкой высокого уровня на линии PtrCLk.

6. Шаги 1-5 повторяются для второй тетрады.

Полубайтный режим работает на всех портах со скоростью обмена не выше 50 Кбайт/с. Его применяют в тех случаях, когда прием данных от устройства производится в небольших объемах (например, для связи с принтерами).

Двунаправленный байтный режим Byte Mode

Данный режим обеспечивает прием данных с использованием двунаправленного порта, у которого выходной буфер данных может отключаться установкой бита CR.5=1. Как и в стандартном и в полубайтном режиме, данный режим является программно-управляемым — все сигналы квитирования анализируются и устанавливаются программным драйвером. Назначение сигналов порта приведено в табл. 5.

Таблица 5.

Сигналы LPT-порта в байтном режиме ввода/вывода

Контакт Сигнал SPP Имя в Byte Mode I/O Описание
  STROBES HostClk   Импульс (низкого уровня) подтверждает прием байта в конце каждого цикла
  AUTOFEED# HostBusy   Сигнал квитирования. Низкий уровень означает готовность хоста принять байт, высокий уровень устанавливается по приему байта
  SELECT-IN» 1284Active   Высокий уровень указывает на обмен в режиме IEEE 1284. (В режиме SPP уровень низкий)
  INIT# INIT#   Не используется, установлен высокий уровень
  АСКй Ptrtik     Устанавливается в низкий уровень для инди­кации действительности данных на линиях DATA[7:0]. В низкий уровень устанавливается в ответ на сигнал HostBusy
  BUSY PtrBusy I Состояние занятости прямого канала
  РЕ AckDataReq* I Устанавливается ПУ для указания на наличие обратного канала передачи*
  SELECT Xflag* I Флаг расширяемости*
  ERRORS DataAvau#* I Устанавливается ПУ для указания на наличие обратного канала передачи*
2-9 DATA[7:0] DATA[7:0] I/0 Двунаправленный (прямой и обратный) канал данных

 

Прием байта данных в байтном режиме состоит из следующих фаз:

1. Хост сигнализирует о готовности приема данных установкой низкого уровня на линии HostBusy.

2. ПУ в ответ помещает байт данных на линии DATA[7:0].

3. ПУ сигнализирует о действительности байта установкой низкого уровня на линии PtrClk.

4. Хост устанавливает высокий уровень на линии HostBusy, указывая на занятость приемом и обработкой байта.

5. ПУ отвечает установкой высокого уровня на линии PtrClk.

6. Хост подтверждает прием байта импульсом HostClk.

7. Шаги 1-6 повторяются для каждого следующего байта.

Побайтный режим позволяет поднять скорость обратного канала до скорости прямого канала в стандартном режиме. Однако работать он может только на двунаправленных портах, которые применяются в основном лишь на малораспространенных машинах PS/2.

Режим ЕРР

Протокол ЕРР (Enhanced Parallel Port — улучшенный параллельный порт) предназначен для повышения производительности обмена по параллельному порту. ЕРР был реализован в чипсете Intel 386SL (микросхема 82360) и используется как дополнительный протокол параллельного порта.

Протокол ЕРР обеспечивает четыре типа циклов обмена:

Цикл записи данных.

Цикл чтения данных.

Цикл записи адреса.

Цикл чтения адреса.

Адресные циклы могут быть использованы для передачи адресной, канальной и управляющей информации. Циклы обмена данными явно отличаются от адресных циклов применяемыми стробирующими сигналами. Назначение сигналов порта ЕРР и их связь с сигналами SPP приведены в табл. 6.

Таблица 6.

Сигналы LPT-порта в режиме ввода/вывода ЕРР

 

Контакт Сигнал SPP Имя в ЕРР I/O Описание
  STROBE» WRITE»   Низкий уровень — признак цикла записи, высокий — чтения
  AUTOFEEDff DATASTB#   Строб данных. Низкий уровень устанавливается в циклах передачи данных
  SELECTING ADDRSTB#   Строб адреса. Низкий уровень устанавливается в адресных циклах
  INIT# RESETS   Сброс ПУ (низким уровнем)
Контакт Сигнал SPP Имя в ЕРР I/O Описание
  АСК# INTR# I Прерывание от ПУ
  BUSY WAIT» I Сигнал квитирования. Низкий уровень разрешает начало цикла (установку строба в низкий уровень), переход в высокий — разрешает завершение цикла (снятие строба)
2-9 D[8:0] AD[8:0] I/O Двунаправленная шина адреса/данных
  РЕ AckDataReq* I Используется по усмотрению разработчика перифе­рии
  SELECT Xflag* I Используется по усмотрению разработчика перифе­рии
  ERROR DataAvaiW* I Используется по усмотрению разработчика перифе­рии

 

ЕРР-порт имеет расширенный набор регистров (табл. 7), который занимает в пространстве ввода/вывода 5-8 смежных байт.

Таблица 7.

Регистры ЕРР-порта

 

Имя регистра Смещение Режим R/W Описание
SPP Data Port +0 SPP/EPP W Регистр данных стандартного порта
SPP Status Port +1 SPP/EPP R Регистр состояния стандартного порта
SPP Control Port +2 SPP/EPP W Регистр управления стандартного порта
EPP Address Port +3 EPP R/W Регистр адреса ЕРР. Чтение или запись в него гене­рирует связанный цикл чтения или записи адреса ЕРР
EPP Data Port +4 EPP R/W Регистр данных ЕРР. Чтение (запись) генерирует свя­занный цикл чтения (записи) данных ЕРР
Not Defined +5...+7 EPP N/A В некоторых контроллерах могут использоваться для 16-32-битных операций ввода/вывода

 

В отличие от программно-управляемых режимов, описанных выше, внешние сигналы ЕРР-порта (как информационные, так и сигналы квитирования) для каждого цикла обмена формируются аппаратно по одной операции записи или чтения в регистр порта.

Главной отличительной чертой ЕРР является выполнение внешней передачи во время одного процессорного цикла ввода/вывода. Это позволяет достигать высоких скоростей обмена (0,5-2 Мбайт/с). Периферийное устройство, подключенное к параллельному порту ЕРР, может работать на уровне производительности устройства, подключаемого через слот ISA. Периферийное устройство может регулировать длительность всех фаз обмена с помощью всего лишь одного сигнала WAIT#. Протокол автоматически подстраивается и под длину кабеля — вносимые задержки только приведут к удлинению цикла.

«ЗАВИСАНИЕ» процессора на шинном цикле обмена препятствует механизм тайм-аутов PC, который принудительно завершает любой цикл обмена, длящийся более 15 мкс.

С программной точки зрения контроллер ЕРР-порта выглядит достаточно просто (см. табл.7). К трем регистрам стандартного порта, имеющим смещение 0, 1 и 2 относительно базового адреса порта, добавлены два регистра (ЕРР Address Port и ЕРР Data Port), чтение и запись в которые вызывает генерацию связанных внешних циклов.

Назначение регистров стандартного порта сохранено, что обеспечивает совместимость ЕРР-порта с периферийными устройствами и программным обеспечением, рассчитанными на применение программно-управляемого обмена. Поскольку сигналы квитирования адаптером вырабатываются аппаратно, при записи в регистр управления CR биты 0, 1 и 3, соответствующие сигналам STROBES, AUTOFEEDS и SELECTING, должны иметь нулевые значения. В противном случае программное вмешательство может нарушить последовательность квитирования. Некоторые адаптеры имеют специальные средства защиты (ЕРР Protect), при включении которых программная модификация этих бит блокируется.





Поделиться с друзьями:


Дата добавления: 2016-12-06; Мы поможем в написании ваших работ!; просмотров: 407 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Ваше время ограничено, не тратьте его, живя чужой жизнью © Стив Джобс
==> читать все изречения...

2264 - | 2207 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.