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

Асинхронный протокол

Схемы приоритетов | Централизованный арбитраж | Децентрализованный арбитраж | Методы повышения эффективности шин | Протокол с расщеплением транзакций | Надежность и отказоустойчивость |


Читайте также:
  1. IP как протокол без установления соединения
  2. Автор «Протоколов сионских мудрецов» – Ахад Гаам
  3. Большевизм , – писал, например, выдающийся американский предприниматель Генри Форд, – есть международная программа протоколов.
  4. В Протокол вскрытия конвертов заносятся сведения, предусмотренные законодательством Российской Федерации.
  5. Взаимодействие между стеками протоколов
  6. Визначити поняття протокол. Написати протокол.

 

Синхронная передача быстра, но в ряде ситуаций не подходит для использования. В частности, в синхронном протоколе ведущий не знает, корректно ли ответил ведомый, — возможно, он был не в состоянии удовлетворить запрос на нужные данные. Более того, ведущий должен работать со скоростью самого медленного из участвующих в пересылке данных ведомых. Обе проблемы успешно решаются в асинхронном протоколе шины.

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

Синхросигналы, формируемые ведомым, часто называют квитирующими сигналами (handshakes) или подтверждениями сообщения (acknowledges).

Сначала ведущее устройство выставляет на шину адрес и управляющие сигналы и выжидает время перекоса сигналов, после чего выдает строб адреса, подтверждающий достоверность информации. Ведомые следят за адресной шиной, чтобы определить, должны ли они реагировать. Ведомый, распознавший на адресной шине свой адрес, отвечает информацией состояния, сопровождаемой сигналом подтверждения адреса. Когда ведущий обнаруживает подтверждение адреса, он знает, что соединение установлено, и готов к анализу информации состояния. Присутствие адреса на ША далее не требуется, поскольку у ведомого уже имеется копия полного адреса либо нужной его части.

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

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

В цикле асинхронной шины для подтверждения успешности транзакции используется двунаправленный обмен сигналами управления. Такая процедура носит название квитирования установления связи или рукопожатия (handshake).

В рассмотренном варианте процедуры ни один шаг в передаче данных не может начаться, пока не завершен предыдущий шаг. Такое квитирование известно как квитирование с полной взаимоблокировкой (fully interlocked handshake).

Как и в синхронных протоколах, в любой асинхронной транзакции присутствуют элементы чтения и записи: по отношению к управляющей информации выполняется операция записи, а к информации состояния — чтения. Данные синхронизируются и управляются, соответственно, как управляющая и статусная информация.

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

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

Квитирование в асинхронных системах не всегда реализуется в полном объеме. Иногда транзакция на шине не может быть завершена стандартным образом, например, если ведущий из-за программных ошибок обращается к несуществующей ячейке памяти. В этом случае ведомое устройство не отвечает соответствующим подтверждающим сигналом. Чтобы предотвратить бесконечное, ожидание в шинах, используется тайм-аут, то есть задается время, спустя которое при отсутствии отклика транзакция принудительно прекращается. Для реализации тайм-аута необходимы схемы, способные решать, пришло ли подтверждение вовремя, и если нет, то как привести шину к исходному состоянию. Первая часть решается с помощью таймера, запускаемого ведущим одновременно с началом транзакции. Если таймер достигает предопределенного значения до поступления ответного сигнала, ведущий обязан прекратить начатую транзакцию. Восстановление состояния шины и вычислительного процесса после тайм-аута может происходить по-разному. Так, если ведущим устройством является процессор, он делает это с помощью специального вызова операционной системы, известного как «ошибка шины» (bus error).

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

Шины ввода/вывода обычно реализуются как асинхронные.


Дата добавления: 2015-10-24; просмотров: 85 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Синхронный протокол| Особенности синхронного и асинхронного протоколов

mybiblioteka.su - 2015-2024 год. (0.006 сек.)