У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент



Курсова робота - Шина USB
22
RESET для даного порту (10 мс) і переводить його в стан "Enabled". Підключеному пристрою дозволяється споживати від шини струм живлення в межах 100 мА. Пристрій переходить в стан Powered (включено), всі його регістри переводяться в початковий стан, і він озивається на звертання за нульовою адресою.

5. Доти, поки пристрій не одержить унікальну адресу, він доступний по черговому каналу, по якому хост-контроллер може визначити максимально допустимий розмір поля даних пакету.

6. Хост повідомляє пристрою його унікальну адресу, і він переводиться в стан Addressed (адресовано).

7. Хост зчитує всі конфігурації пристрою, включаючи і заявлений струм споживання від шини. Процес зчитування може затягнутися на декілька кадрів.

8. Виходячи зі зчитаної інформації, хост конфігурує всі наявні кінцеві точки даного пристрою, який переводиться в стан Configured (конфігуровано). Тепер хаб дозволяє пристрою споживати від шини повний струм, заявлений в конфігурації. З погляду пристрою, він стає готовим до використання.

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

Можливості шини USB дозволяють її використовувати для підключення найрізноманітніших пристроїв – від клавіатури і миші, які поки себе непогано відчувають і на традиційних інтерфейсах, до цифрових аудіосистем, які окрім як до USB або FireWire в PC підключати нікуди. Не торкаючись "корисних" властивостей пристроїв, ради яких вони і створювалися, зупинимося на їх інтерфейсній частині, зверненій до шини USB. Всі пристрої повинні підтримувати набір спільних операцій, перерахованих нижче.

Динамічне підключення і відключення має на увазі можливість цих дій у будь-який момент часу. Ці події відстежуються хабом, який повідомляє про них хост-контроллер і виконує скидання підключеного пристрою. Пристрій після сигналу скидання повинен озиватися на нульову адресу, при цьому він не конфігурований і не припинений.

Після призначення адреси, за яке відповідає хост-контроллер, пристрій повинен озиватися тільки на свою унікальну адресу.

Конфігурація пристроїв, виконувана хостом, є необхідним кроком для їх використання. Для конфігурації звичайно використовується інформація, зчитана з самого пристрою. Пристрій може мати багато інтерфейсів, кожному з яких відповідає власна кінцева точка, що представляє хосту функцію пристрою. Крім того, інтерфейс у конфігурації може мати альтернативні набори характеристик, зміна наборів підтримується протоколом. Для підтримки адаптивних драйверів дескриптори пристроїв та інтерфейсів мають поля класу, підкласу і протоколу.

Передача даних можлива за допомогою одного з чотирьох типів передач (див. вище). Для кінцевих точок, що допускають різні типи передач, після конфігурації доступний тільки один з них.

Управління енергоспоживанням є дуже розвиненою функцією USB. Для пристроїв, що живляться від шини, потужність є обмеженим ресурсом. Будь-який пристрій при початковому підключенні не повинен споживати від шини струм, що перевищує 100 мА. Робочий струм (не більше 500 мА) заявляється в конфігурації, і якщо хаб не зможе забезпечити пристрою заявлений струм, він не конфігурується, і, отже, не може бути використаний.

Пристрій USB повинен підтримувати режим припинення (Suspended Mode), в якому його споживаний струм не повинен перевищувати 500 мкА. Пристрій повинен автоматично припинятися при припиненні активності шини.

Можливість віддаленого пробудження (Remote Wakeup) дозволяє припине-ному пристрою подати сигнал хост-комп'ютеру, який теж може знаходитися в припиненому стані. Можливість віддаленого пробудження описується в конфігурації пристрою, і при конфігурації ця функція може бути й заборонена.

Хаб в USB виконує функції комутації сигналів і роздачі живлячої напруги, а також відстежує стан підключених до нього пристроїв, повідомляючи хост про зміни. Хаб складається з двох частин – контроллера (Hub Controller) і повторювача (Hub Repeater), повторювач є керованим ключем, що з'єднує вихідний порт із вхідним. Він також має засоби підтримки скидання і припинення передачі сигналів. Контроллер містить регістри для взаємодії з хостом. Доступ до цих регістрів здійснюється по специфічних командах звернення до хаба. Ці команди дозволяють конфігурувати хаб, управляти низхідними портами і спостерігати їх стан.

Низхідні (Downstreani) порти хабів можуть перебувати в наступних станах:

Powered (живлення відключене) – стан, в якому на порт не подається живлення (можливо тільки для хабів, комутуючих живлення). Вихідні буфери переводяться у високоімпедансний стан, вхідні сигнали ігноруються. Disconnected (від'єднаний) – порт не передає сигнали ні в одному напрямі, але здатний знайти подію підключення пристрою. Знайшовши підключення (по відсутності стан SEO протягом 2,5 мкс), порт переходить в стан "Disabled", а по рівнях вхідних сигналів (DIFFO або DIFF1 в стані IDLE) він визначає швидкість підключеного пристрою. Disabled (заборонений) – порт може передавати тільки сигнал скидання (по команді від контроллера), сигнали від порту (окрім виявлення відключення) не сприймаються. Після виявлення відключення (2,5 мкс стан SEO) порт переходить в стан "Disconnect", а якщо відключення знайдено "сплячим" хабом, контроллеру буде посланий сигнал Resume. Enabled (дозволений) – порт передає сигнали в обох напрямах. По команді контроллера або після виявлення помилки кадру порт переходить в стан "Disabled", а після виявлення відключення – в стан "Disconnect". Suspended (припинений) порт передає сигнал перекладу в стан призупинення ("сплячий режим"). Якщо хаб перебуває в активному (не "сплячому") стані, сигнали через цей порт не пропускаються ні в одному напрямі. Проте "сплячий" хаб сприймає сигнали зміни стану незаборонених портів, забезпечуючи можливість подачі сигналів, що "будять", від пристрою, що активізувався, навіть через ланцюжок "сплячих" хабів.

Стан кожного порту ідентифікується контроллером хаба за допомогою окремих регістрів. Крім того, є загальний регістр, біти якого відображають факт зміни стану кожного порту (що фіксується під час EOF). Це дозволяє хост-контроллеру швидко опитувати стан хаба, а


Сторінки: 1 2 3 4 5 6