Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4,a._Konspekt_1.doc
Скачиваний:
138
Добавлен:
22.08.2013
Размер:
2.97 Mб
Скачать

1.8.2. Протокол параллельных интерфейсов

в начало

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

В режиме прерываний этапу передачи данных предшествует этап селекции и иден­тификации ПУ с наибольшим приоритетом, который выполняется параллельно с передачей информации по шине данных и реализуется с помощью специальной схемы контрол­лера прерываний.

На рисунке 1.22 приведены протоколы записи и чтения для трехшинной архитектуры при синхронной передаче данных. Задатчик выставляет адрес на ША, с помощью строба адреса АЕ исполнитель читает адрес, после чего задатчик выставляет сигнал (при за­писи) и(при чтении). По заднему фронту этих сигналов данные передаются в соответ­ствующие регистры задатчика (РДЗа) или исполнителя (РДИс). Сигналыиимеют двоякое назначение: они указывают тип команды (запись или чтение) и являются стро­бом при передаче данных.

При синхронной передаче данных времена tЗП и tЧТ строго фиксированы и приемник должен считать данные за это время.

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

На рисунке 1.23 приводится протокол записи и чтения для синхронной передачи данных, но при двухшинной архитектуре, когда шина АД мультиплексируется во време­ни. В этом случае tЗП и tЧТ также строго фиксированы, но длительность циклов (TЗП, TЧТ) больше, чем при трехшинной архитектуре.

На рисунке 1.24 показан протокол при асинхронной передаче данных. В отличие от предыдущих протоколов здесь используется дополнительный сигнал обратной связи RDY от ис­полнителя. Он устанавливается тогда, когда исполнитель готов завершить операцию. Задатчик выставляет сигнал илии держит его до тех пор, пока не устанавливается в активное состояние сигналRDY, только после этого он сбрасывает сигнал записи (чте­ния), задним фронтом которого производится считывание данных в соответствующий ре­гистр, после чего заканчивает выполнение команды.

Здесь время tЗП (tЧТ) зависит от типа ресурса, с которым работает задатчик (оперативная память, регистры ввода/вывода, тип ПУ и т.п.).

1.8.3. Протоколы последовательных интерфейсов

в начало

В случае последовательных компьютерных интерфейсов взаимосвязь устройств по этому интерфейсу осуществляется по принципу «точка-точка» или по схеме многоуровне­вой звезды, подобным сетевым структурам.

В связи с этим протоколы последовательных интерфейсов используют те же принципы построения, что и сетевые протоколы. Если использовать термины модели взаимо­действия открытых систем (OSI), то последовательный интерфейс можно представить в виде трехуровневой модели, содержащей прикладной, канальный и физический уровни.

Последовательный интерфейс, как правило, соединяет главный контроллер (хост-контроллер) или просто контроллер системного блока компьютера с контроллером или адаптером периферийного устройства. Главный контроллер или просто контроллер взаи­модействует с центральным процессором посредством интерфейса ввода/вывода (шина расширения, например, PCI).

Прикладной уровеньна стороне центрального процессора представляет из себя про­граммное обеспечение, которое управляет работой ПУ, реализуя ту или иную функцию. На стороне ПУ этот уровень соответствует тому функциональному назначению, которое имеет данное ПУ (вывод на печать, ввод с клавиатуры, указатель типа «мыши» и т.п.).

Канальный уровеньреализует протокол передачи данных между главным контроллером и ПУ. В общем случае между задатчиком и исполнителем.

Канальный уровень функционирует с блоками (кадрами или пакетами) данных и обеспечивает синхронизацию между приемником и передатчиком на уровне блоков. При такой синхронизации приемник должен распознать начало первого байта блока, распозна­вать границы полей блока и распознавать признаки конца блока.

Физический уровеньпредставляет аппаратные и программные средства подключе­ния ПУ к главному контроллеру или просто контроллеру, который находится в системном блоке компьютера через соответствующие порты ввода/вывода.

На физическом уровне в последовательном интерфейсе единицей информации явля­ется бит, поэтому средства физического уровня всегда поддерживают побитовую синхро­низацию между приемником и передатчиком.

В данном параграфе рассматриваются протоколы канального уровня, принципы их построения и функционирования.

Основными режимами передачи информации по последовательному интерфейсу яв­ляются асинхронная и синхронная передача данных, которым соответствует асинхронные и синхронные протоколы. Данные передаются последовательно бит за битом, биты обра­зуют байты (определенные символы), а байты образуют блоки передаваемых данных.

Тип протокола (асинхронный, синхронный) определяется по принципу синхронизации байта (символа) и блока. Асинхронный протокол: асинхронная передача байт (символов) и синхронный байт в байте. Синхронный протокол: синхронная передача байт, асинхронный – блоков.

Асинхронные протоколы представляют собой наиболее старый способ связи типа «точка-точка». Эти протоколы оперируют не с блоками, а с отдельными символами, кото­рые представлены байтами и старт-стопными битами. Примером асинхронного последо­вательного интерфейса может служить интерфейс RS-232C. По таким интерфейсам под­ключаются низкоскоростные ПУ.

Такой режим работы называют асинхронным или старт-стопным.

В старт-стопным (асинхронном) режиме каждый байт данных сопровождается спе­циальными сигналами «старт» (начало байта) и «стоп» (конец байта). Назначение этих сигналов состоит в том, чтобы известить приемник о начале и конце передачи байта, а также для того, чтобы дать приемнику достаточно времени для выполнения некоторых функций, связанных с синхронизацией, до поступления следующего байта. Сигнал «старт» имеет длительность в один такт, сигнал «стоп» может длиться один, полтора или два такта (см. §1.7, рисунок 1.15).

В синхронных протоколах обмен данными осуществляется блоками (кадрами, паке­тами), которые имеют в общем случае заголовок, поле данных и концевик. Все биты блока передаются непрерывным синхронным потоком, что значительно ускоряет передачу дан­ных.

При синхронном режиме передачи старт-стопные биты между байтами отсутствуют, Пользовательские данные собираются в блоки, которые предваряются байтами синхрони­зации. Байт синхронизации содержит заранее известный код, например, 01111110, кото­рый оповещает приемник о приходе блока данных. При его получении приемник должен войти в байтовый синхронизм с передатчиком, т.е. правильно понимать начало очередно­го байта блока.

Байты в этих протоколах не отделяются друг от друга служебными сигналами. По­этому приемник должен распознавать границы байт, далее он должен найти начало и ко­нец блока, а также определить границы каждого поля блока- адреса назначения, поля данных, контрольной суммы и т. п.

Синхронные протоколы канального уровня бывают двух типов: символьно-ориентированные (байт-ориентированные) и бит-ориентированные.

Для обоих используются одни и те же методы синхронизации бит. Главное различие заключаются в методе синхронизации символов и блоков.

Символьно-ориентированный протокол использует для синхронизации специальные служебные символы. Символ SYN передатчик добавляет перед каждым блоком данных, а затем для обозначения начала и конца данных вставляет символ STX (Start of Text) и ЕТХ (End of Text) соответственно.

Этот способ неудобен тем, что требует добавление много избыточных данных для реализации синхронизации.

В настоящее время наиболее широко используются бит-ориентированные протоко­лы, которые являются более универсальными.

В этом случае (см.рисунок 1.25) при не занятом канале по нему не передается никаких символов.

Перед началом передачи кадра передатчик начинает передавать последовательность бит (101010...10) для того, чтобы приемник вошел в битовую синхронизацию. Эту после­довательность называют преамбулой. Войдя в битовую синхронизацию приемник иссле­дует входной поток на побитовой основе, пока не обнаружит байт начала кадра (10101011). За этим байтом следует заголовок кадра, затем идут поле данных и концевик. В качестве концевика используется либо специальный байт, либо определенное физиче­ское состояние линии передачи данных

Протоколы последовательной передачи данных используют две процедуры органи­зации взаимодействия передатчика и приемника: без установления соединения и с предва­рительным установлением логического соединения.

Передача кадра без установления соединения называется дейтаграммной процеду­рой. В этом случае передатчик никакой ответственности за утерю передаваемого кадра не несет.

Дейтаграммный метод работает быстро, но он не гарантирует доставки пакета.

Передача с установлением соединения более надежна, но требует большего времени для передачи данных и вычислительных затрат от конечных узлов.

В случае метода с установлением соединения передача данных состоит из трех ос­новных этапов, на каждом этапе передаются соответствующие пакеты информации (см. рисунок 1.26).

Сначала идет служебный пакет (маркерный пакет), посредством которого на­чинается процесс установки логического соединения. Затем в рамках установленного со­единения передается пакет данных. После передачи данных инициируется разрыв данного логического соединения и передается пакет, сообщающий о том успешно или нет прове­дена передача данных.

Протокол дейтаграммного типа поддерживает только один тип кадра – информаци­онный. Протокол с установлением соединений должен поддерживать несколько типов кадров (пакетов) – служебные и информационные.

Соседние файлы в предмете Системы ввода и вывода данных