М.Гук - Интерфейсы ПК, справочник, страница 7
Описание файла
DJVU-файл из архива "М.Гук - Интерфейсы ПК, справочник", который расположен в категории "". Всё это находится в предмете "вычислительные сети и системы" из 7 семестр, которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "вычислительные системы и микропроцессоры" в общих файлах.
Просмотр DJVU-файла онлайн
Распознанный текст из DJVU-файла, 7 - страница
1.7 не приведены сигналы циклов системной шины процессора. В данном режиме обмен программы с ПУ разбивается на два относительно независимых процесса, которые связаны через Е1ЕО- буфер. Обмен драйвера с Е)гО-буфером может осуществляться с использованием как 1)МА, так и программного Адаптер ЕСР тоже генерирует внешние протокольные сигналы квитирования аппаратно, но его работа существенно отличается от режима ЕРР. На рис. 1.7а приведена диаграмма двух циклов прямой передачи: за циклом данных следует командный цикл.
Тип цикла задается уровнем на линии Нозгдск: в цикле данных — высокий, в командном цикле — низкий. В командном цикле байт может содержать канальный адрес или счетчик К1.Е. Отличительным признаком является бит 7 (старший): если он нулевой, то биты 0 — 6 содержат счетчик П~Е (0-127), если единичный — то канальный адрес. На рис.
1.7б показана пара циклов обратной передачи. а 1.2. Стандарт 1ЕЕЕ 1284 41 ввода-вывода. Обмен ПУ с буфером аппаратно выполняет адаптер ЕСР. Драйвер в режиме ЕСР не имеет информации о точном состоянии процесса обмена, но здесь обычно важно только то, завершен он нли нет. Прямая передача данных на внешнем интерфейсе состоит из следующих шагов: 1. Хост помещает данные на шину канала и устанавливает признак цикла данных (высокий уровень) или команды (низкий уровень) на линии Ноэтдск.
2. Хост устанавливает низкий уровень на линии НозтС~К, указывая на действительность данных. 3. ПУ отвечает установкой высокого уровня на линии Рег1рйдсК 4. Хост устанавливает высокий уровень линии НозтС!К, и этот перепад может использоваться для фиксации данных в ПУ. 5. ПУ устанавливает низкий уровень на линии Репрпдск для указания на готовность к приему следующего байта.
Поскольку передача в ЕСР происходит через Е)ЕО-буферы, которые могут присутствовать на обеих сторонах интерфейса, важно понимать, на каком этапе данные можно считать переданными. Данные считаются переданными на шаге 4, когда линия НоэтС!К переходит в высокий уровень. В этот момент модифицируются счетчики переданных и принятых байт. В протоколе ЕСР есть условия, вызывающие прекращение обмена между шагами 3 и 4. Тогда эти данные не должны рассматриваться как переданные.
Из рис. 1.7 видно и другое отличие ЕСР от ЕРР. Протокол ЕРР позволяет драйверу чередовать циклы прямой и обратной передачи, не запрашивая подтверждения на смену направления. В ЕСР смена направления должна быть согласована: хост запрашивает реверс установкой Вечегзвйециезттт, после чего он должен дождаться подтверждения сигналом Аснйечегзетт. Поскольку предыдущий цикл мог выполняться по прямому доступу, драйвер должен дождаться завершения прямого доступа или прервать его, выгрузить буфер Е(ГО, определив точное значение счетчика переданных байт, и только после этого запрашивать реверс. 42 1. Параллельные инте ейсм Обратная передача данных состоит из следующих шагов: 1. Хост запрашивает изменение направления канала, уста навливая низкий уровень на линии Вечегзейепиез1№.
2. ПУ разрешает смену направления установкой низкого уровня на линии Аснйечегзе№. 3. ПУ помещает данные на шину канала и устанавливает признак цикла данных (высокий уровень) или команды (низкий уровень) на линии РепрПАсК. 4. ПУ устанавливает низкий уровень на линии РепрЛС1К, указывая на действительность данных. 5.
Хост отвечает установкой высокого уровня на линии Ноз1АсК. 6. ПУ устанавливает высокий уровень линии РепрПС~К; этот перепад может использоваться для фиксации данных хостом. 7. Хост устанавливает низкий уровень на линии Ноз1Аск для указания на готовность к приему следующего байта. Режимы и регистры ЕСР-порта Программный интерфейс и регистры ЕСР для адаптеров 1ЕЕЕ 1284 определяет спецификация М!сгозо(т. Определены режимы (табл. 1.9), в которых может функционировать адаптер.
Они задаются полем Моде регистра ЕСВ (биты (г:5)). Регистровая модель адаптера ЕСР (табл. 1.10) использует свойства архитектуры стандартной шины и адаптеров! БА— для дешифрации адресов портов ввода/вывода задействуются только 10 младших линий шины адреса. Поэтому, например, обращения по адресам РогГ, РогГ+400Л, РогГ+800Л... будут восприниматься как обращения к адресу Рогг, лежащему в диапазоне 0 — ЗЕЕЬ. Современные РС и адаптеры декодируют большее количество адресных бит, поэтому обращения по адресам 0378Ь и 0778Ь будет здресованы двум различным регистрам.
Помещение дополнительных регистров ЕСР чза спину» регистров стандартного порта (смещение 400 — 402Ь) преследует две цели. Во-первых, эти адреса никогда не использовались традиционными адаптерами и их драйверами, и их применение в ЕСР не приведет к сужению доступного 1,2.
Стандарт! ЕЕЕ 1284 Ретин Название Описание Стандартный (традиционный) режим ЕРР пваНе В!«вгеевапа! таНе Даунапрааленный порт (тнп 1 длп Рз 2) 00! Рт! Сеппопан 010 Однонапраплениый с использоаанием Г!РО и ПМА ЕСР Рогове! Рон таНе 011 ЕСР ЕРР Рагайе! Рам пиНе' Перевод а режим ЕРР 100 Зарезервировано 10! ттг таНе Тестнроаание работы ШРО н прерыааний 110 СапЯитгтп тоНе Доступ к конфигурационным регистрам Этот режим не входит а спецификацнго М)стопой, но трактуетси как ЕРР контроллером ЗМС ЕОС37С665/666 н многими другими. Каждому режиму ЕСР соответствуют (и доступны) свои функциональные регистры.
Переключение режимов осуществляется записью в регистр ЕСЯ. «Дежурными» режимами, включаемыми по умолчанию, являются 000 или 001. В любом из них работает полубайтный режим ввода. Из этих режимов всегда можно переключиться в любой другой, но из старших режимов (010 — 111) переключение возможно только в 000 или 001. Для корректной работы интерфейса перед выходом из старших режимов необходимо дождаться завершения обмена по прямому доступу и очистки НГО-буфера. В режиме ООО (5РР) порт работает как стандартный однонаправленный программно-управляемый БРР.
В режиме ОО! (В(-Е)! РБ/2) порт работает как двунаправленный порт РБ/2 типа 1. От режима 000 отличается возможностью реверса канала данных по биту Сй.5. адресного пространства ввода/вывода. Во-вторых, этим обеспечивается совместимость со старыми адаптерами на уровне режимов 000-001 и возможность определения присутствия ЕСР-адаптера через попытку обращения к его расширенным регистрам.
~:Тй((йй(йа 1,ВР(йййй!М'ййРЧЮРГж '.„:, „и .::,.о'.".'Й!::,);фЯЯЯф 1. Параллельные интерфейсы Режим 010(Би1 Сел(гоп(сз) предназначен только для высокопроизводительного вывода через НгО-буфер с использованием ЭМА. Сипшлы квитирования по протоколу Сеи(плвгз вырабатываются аппаратно. Сигнал запроса прерывания вырабатывается по состоянию ИГО-буфера, но пе по сигналу Аск(1 (запрос одиночного байта «не интересуеть драйвер быстрого блочного вывода).
Режим 011 является собственно режимом ЕСР, описанным ранее. Поток данных и команд, передаваемых в ПУ, помещается в НЕО-буфер через регистры ЕСРОР)ГО и ЕСРАЯЮ соответственно. Из ИЕО они выводятся с соответствующим признаком цикла (состояние линии Ноз1АсК). Принимаемый поток данных от ПУ извлекается из ИГО-буфера через регистр ЕСРОЯЮ. Получение адреса в командном цикле от ПУ не предусматривается. Обмен с регистром ЕСРОЯЮ может производиться и по каналу ВМА. Компрессия ио методу И Е при передаче выполняется программно. Для передачи подряд более двух одинаковых байт данных в регистр ЕСРАЯЮ записывается байт, у которого младшие 7 бит содержат счетчик Я~С (значение К).С-127 соответствует 128 повторам), а старший бит нулевой.
После этого в ЕСРОЯРО записывается сам байт. Отсюда очевидно, что вывод данных с одновременным использованием компрессии и ВМА невозможен. Принимая эту пару байт (командный байт и байт данных), ПУ осуществляет декомпрессию. При приеме потока от ПУ адаптер ЕСР декомпрессию осуществляет аппаратно и в НгО-буфер помещает уже декомпрессированные данные. Режим 100(ЕРР) — один из способов включения режима ЕРР. Режим 110(Тех( Мосе) предназначен для тестирования взаимодействия ИгО и прерываний.
Данные могут переда'ваться в/из регистра ТЯРО с помощью ЭМА или программным способом. На внешний интерфейс обмен не воздействует. Адаптер отрабатывает операции вхолостую на максимальной скорости интерфейса (как будто сигналы квитирования приходят без задержек). Адаптер следит за состоянием буфера и по мере необходимости вырабатывает сигналы запроса прерывания. Таким образом программа 1.2. Стандцзт 1ЕЕЕ 1284 может определить максимальную пропускную способность канала. Режим 111(СопЯитоПоп тоссе) предназначен для доступа к конфигурационным регистрам. Выделение режима защищает адаптер и протокол от некорректных изменений конфигурации в процессе обмена.
Регистры лостуоиы только в указанных режимах (режим залаетси би- тами 7 — 5 регистра ЕСК) Региплр данных ОРг используется для передачи данных только в программно-управляемых режимах (000 и 001). Регистр состояния ЯВ передает значение сигналов на соответствующих линиях (как в 3РР). Регистр уирааления Сй имеет назначение бит, совпадающее с БРР. В режимах 010, 011 запись в биты О, 1 (сигналы Аи1осЕ№ и 81тоЬе№) игнорируется. Региапр ЕСРАНГО служит для помещения информации командных циклов (канального адреса или счетчика И.Е, в зависимости от бита 7) в НЕО-буфер, Из буфера информация будет выдана в командном цикле вывода. 1. Параллельные интерфейсы Регистр ЗОРРО используется для передачи данных в режиме 010.
Данные, записанные в регистр (или посланные по каналу 1)МА), передаются через буфер НРО по реализованному аппаратно протоколу Селггол1сз. При этом должно быть задано прямое направление передачи (бит Сй.5 О), Регистр ОР1РО используется для обмена данными в режиме 011 (ЕСР). Данные, записанные в регистр или считанные из него (или переданные по каналу 1)МА), передаются через буфер НРО по протоколу ЕСР.