Выборочное Возобновление на Активном Концентраторе(Selective Resume to an Awake Hub)
На Рисунок 11-13 показаны сигналы между устройством и активным концентратором (Концентратор Y). Если порт концентратора выборочно приостановлен, и концентратор находится в активном состоянии, то концентратор должен предотвратить любое действие шины на приостановленном порте, чтобы это не отразилось на других неблокированных портах концентратора, поскольку эти порты могут транспортировать трафик шины. Кроме того, возобновление на Порте B не должно распространиться к другим приостановленным портам (например на Порт C). Сплошная линия представляет предел распространения сигнала возобновления, который останавливается в Порте B Концентратора Y. Сигнал возобновления может происходить или от запроса хоста к непосредственно заново разблокированному(re-enadle) порту концентратора (возобновление вниз по иерархии) или из устройства на приостановленном сегменте шины (возобновление вверх по иерархии ).
Рисунок 11-13. Сигнал Выборочного Возобновления на Активном Концентраторе
Возобновление вверх по иерархии может быть вызвано переходом шины на приостановленном порте от idle к возобновлению (возобновление работы устройства), от idle к SE0 (отсоединением устройства) или от SE0 к idle (присоединением устройства). Концентратор Y, по Порту B должен отразить состояние возобновления в пределах 50 mс после получения возобновления, сообщая удаленно пробуждаемому устройству (Устройство B), что было обнаружено возобновление. Если переход на Порте B был не от idle к возобновлению (J к K), Порт B не отражает никакой сигнал вниз по иерархии, но продолжает поддерживать буферы вывода в состоянии Hi-Z. В этом последнем случае скрываются события соединения и разъединения.
Получение сигнала возобновления Портом B Концентратора Y заставляет происходить следующую последовательность событий.
1. Концентратор Y, Порт B отражает сигнал возобновления вниз по иерархии в течении 50 mс от обнаружения возобновления.
2. Концентратор Y поддерживает сигнал возобновления вниз по иерархии по крайней мере 20 мс.
3. В конце 20 мс, концентратор завершает возобновление с низко скоростным EOP (В это время через порт начинает передаваться трафик вниз по иерархии.)
4. По прошествию 3.0 мс после конца EOP, устанавливается прерывание в контроллере концентратора.
Концентратор ответственен за поддержание всех временных параметров возобновления. Хосту не нужно следит за любым временем и он может опрашивать концентратор через запрос GetPortStatus для определения, что произошло событие возобновления. Так как концентратор обрабатывает выборочные возобновления автономно, хост не будет напрямую получать сигнал в случае выборочного возобновления, которое исходит не от хоста. Это необходимо хосту, чтобы опросить лежащие ниже по иерархии концентраторы (как часть опроса состояния) для определения, что завершено выборочное событие возобновления. Задержка в 3.0 мс между концом сигнала возобновления и установкой бита прерывания гарантирует, что не произойдет никакой трафик пакета с недавно возобновленного устройства, пока недавно возобновленные устройства не имели время, для синхронизации своих таймеров кадра с SOF; однако, устройства лежащие ниже по иерархии будут видеть трафик и маркеры SOF, не специально адресованные им. Когда возобновление вызвано устройством лежащим ниже по иерархии, хост опрашивается в течение конца выборочного возобновления как часть опроса состояния. Концентратор должен также обеспечить, чтобы порт не был разблокирован(re-enabled) в середине транзакции пакета.
Выборочное возобновление вниз по иерархии может также быть вызвано с помощью запроса ClearPortFeature (PORT_SUSPEND); Этот запрос заставляет заблокированный порт выдавать сигнал возобновления на шину по крайней мере 20 мс, сопровождая его низко скоростным EOP. Как при устройстве вызвавшем возобновление, бит прерывания в контроллере концентратора, сигнализирующий конец возобновления, не должен быть установлен в течении 3.0 мс после конца низко скоростного EOP. Хост должен опросить бит прерывания концентратора для определения, когда завершилось возобновление. Таблица 11-7 подводит итог поведения активного концентратора в присутствии возникновения сигнала возобновления исходящего от нижних уровней иерархии.
Таблица 11-7. Поведение Активного Концентратора в Течении Возобновления
Состояние Порта и Тип Сигнала |
Ответ Вызвавшего Возобновление Порта |
Ответ Соседнего Разблокированного Порта |
Ответ Соседнего Заблокированного Порта |
Ответ Соседнего Подвешенного Порта |
Порт Приостановлен, получено возобновление (K) |
Отражает K вниз по иерархии от вызвавшего порта. Вызывается пробуждение порта. Устанавливаются биты состояния и прерывания. |
Ничего не делать |
Ничего не делать |
Ничего не делать |
Порт разблокирован, заблокирован или приостановлен и получено разъединение |
Устанавливается разъединение, блокирование порта и изменяются биты состояния. Устанавливается прерывание. |
Ничего не делать |
Ничего не делать |
Ничего не делать |
Порт Заблокирован и получено соединение |
Устанавливается соединение порта, и изменяются биты состояния. Устанавливается прерывание. |
Ничего не делать |
Ничего не делать |
Ничего не делать |