Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_з_1.doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
2.57 Mб
Скачать

6.1.3. Асинхронные шины

Альтернативная схема управления пересылкой данных по шине основывается на механизме квитирования, то есть подтверждения связи, между хозяином шины и подчиненным устройством. Концепция квитирования является обобщением идеи использования сигнала Slave-ready, проиллюстрированной на рис. 6.3. В схеме с квитированием тактовая линия заменяется двумя управляющими линиями синхронизации: Master-ready и Slave-ready. Первая принадлежит хозяину шины, который передает по ней сигнал готовности к транзакции, а по второй отвечает подчиненное устройство.

Рис. 6.4. Пересылка входных данных по шине с использованием квитирования

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

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

t0 - хозяин шины помещает на нее адрес и команду, и все устройства на шипе начинают декодировать эту информацию.

t1 - хозяин шины активизирует линию Master-ready, чтобы проинформировать устройства ввода-вывода о том, что адрес и команда поданы на шину. Задержка, равная t1-t0, формируется на тот случай, если на шине произойдет сдвиг сигналов. Сдвигом называется неодновременное прибытие в точку назначения двух сигналов, одновременно выданных источником. Причиной такого сдвига может стать разное время распространения сигнала по различным линиям шины. Для того чтобы иметь гарантию, что сигнал Master-ready не достигнет какого-либо устройства раньше адреса и команды, нужно задержан, его на время t1 - t0, которое больше времени максимально возможного сдвига (В случае синхронной шины сдвиг на шине тоже учитывается - он является составной частью максимальной задержки на распространение сигнала.) Когда адресная информация достигает очередного устройства, она декодируется его интерфейсной схемой. На декодирование тоже уходит какое-то время, которое следует включить в период t1 - t0.

t2 — после декодирования адреса и команды подчиненное устройство выполняет операцию ввода, то есть перемещает информацию из своего регистра данных на линии данных. Одновременно оно активизирует сигнал Slave-ready. Если интерфейсная схема помещает данные на шину с некоторой задержкой, подчиненное устройство должно соответственно задержать и выдачу сигнала Slave-ready. Длительность промежутка времени t2-t1 зависит от расстояния между хозяином шины и подчиненным устройством, а также от задержек в схеме подчиненного устройства. Именно потому, что указанный промежуток времени имеет разную длительность, схема получается асинхронной.

t3 - сигнал Slave-ready достигает хозяина шины и сообщает ему, что на шине имеются данные. Однако поскольку предполагается, что интерфейс устройства помещает на шину сигнал Slave-ready одновременно с данными, хозяин шины должен выдержать небольшую паузу на случай сдвига сигналов. Кроме того, он должен учесть время установки собственного входного буфера. После задержки, равной сумме времени максимального сдвига сигналов на шине и минимального времени установки буфера, хозяин шины стробирует данные в свой входной буфер. Одновременно он удаляет с шины сигнал Master-ready, сообщая тем самым о получении данных.

t4 — хозяин шины удаляет с шины адрес и команду. Задержка между моментами времени t3 и t4 производится на случай сдвига на шине. Если адрес, кото­рый видит какое-либо из устройств, начнет изменяться, пока сигнал Mas­ter-ready равен 1, адресация будет выполнена неточно.

t5 — когда интерфейс устройства фиксирует переход сигнала Master-ready из 1 в 0, он удаляет с шины данные и сигнал Slave-ready. На этом пересылка входных данных завершается.

Процесс выполнения операции вывода (рис. 6.5) почти ничем не отличается от процесса выполнения операции ввода. Правда, в первом случае хозяин шины одновременно с адресом и командой помещает на линии данных выходную информацию. Получив сигнал Master-ready, подчиненное устройство стробирует данные в свой входной буфер и сообщает об этом установкой сигнала Slave-ready в 1. Дальше все происходит точно так, как при вводе данных. При построении временных диаграмм, приведенных на рис. 6.4. и 6.5, предполагалось, что хозяин шины компенсирует сдвиг на шине и задержку на декодирование адреса. Для этой цели предназначены задержки tt -t0 и t4 - t3. Если длительность задержки достаточна для декодирования адреса интерфейсом устройства ввода-вывода, интерфейсная схема может использовать сигнал Master-ready для пропуска других сигналов на шину и с шины.

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

Рис. 6.5. Пересылка выходных данных по шине с использованием квитирования