Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
15Лекція USB.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
397 Кб
Скачать
☆

2. Шина usb

USB (Universal Serial Bus — універсальна послідовна шина) є промисловим стандартом розширення архітектури РС, орієнтованим на інтеграцію з телефонією і пристроями побутової електроніки. Шина USB зовсім молодая—версия 1.0 була опублікована на початку 1996 року, і скептики іронічно розшифровували її назву як «невживана послідовна шина» (Unused Serial Bus).

Проте зараз пристроїв з інтерфейсом USB вже предостатньо. Більшість їх підтримує версію 1.1, яка вийшла осінню 1998 року — в ній були усунені виявлені проблеми першої редакції. Весною 2000 року опублікована специфікація USB 2.0, в якій передбачено 40-кратне підвищення пропускної спроможності шини. Спочатку (у версіях 1.0 і 1.1) шина забезпечувала дві швидкості передачі інформації:

повну швидкість FS (full speed) — 12 Мбіт/с

низьку швидкість LS (Low Speed) — 1,5-Мбит/с.

У версії 2.0 визначена ще і висока швидкість US (High Speed) — 480 Мбіт/с, яка дозволяє істотно розширити круг пристроїв, що підключаються до шини. У одній і тій же системі можуть бути присутніми і одночасно працювати пристрої зі всіма трьома швидкостями. Шина дозволяє сполучати пристрої, віддалені від комп'ютера на відстань до 25 м (з використанням проміжних хабов).

З середини 1996 року випускаються РС з вбудованим контроллером USB, чіпсетом системної плати, що реалізовується. Докладну і оперативну інформацію по USB (англійською мовою) можна знайти за адресою http://www.usb.org. Тут наводяться дані, достатні для розуміння принципів роботи і можливостей цієї перспективної і недорогої шини підключення різноманітної периферії.

USB забезпечує обмін даними між хост-компьютером і безліччю периферійних пристроїв (ПУ). Згідно специфікації USB, пристрої (device) можуть бути:

- хабами;

- функціями;

- їх комбінацією.

Хаб (hub) тільки забезпечує додаткові точки підключення пристроїв до шини. Пристрій-функція (function) USB надає системі додаткові функціональні можливості, наприклад підключення до ISDN, цифровий джойстик, акустичні колонки з цифровим інтерфейсом і тому подібне Комбінований пристрій (compound device), що реалізовує декілька функцій, представляється як хаб з підключеними до нього декількома пристроями. Пристрій USB повинен мати інтерфейс USB, що забезпечує повну підтримку протоколу USB, виконання стандартних операцій (конфігурація і скидання) і надання інформації, що описує пристрій.

Роботою всієї системи USB управляє хост-контроллер (host controller), що є програмно-апаратною підсистемою хост-компьютера. Шина дозволяє підключати, конфігурувати, використовувати і відключати пристрою під час роботи хоста і самих пристроїв.

Шина USB є хост-центрической: єдиним провідним пристроєм, який управляє обміном, є хост-комп'ютер, а всі приєднані до неї периферійні пристрої — виключно ведені. У цим вона відрізняється від шини FireWire, де всі пристрої равноправны. Фізична топологія шини USB — багатоярусна зірка. Її вершиною є хост-контроллер, об'єднаний з кореневим хабом (root hub), як правило, двопортовим. Хаб є пристроєм-розгалуджувачем. Крім того, він може бути джерелом живлення для підключених до нього пристроїв. До кожного порту хаба може безпосередньо підключатися периферійний пристрій або проміжний хаб.

Шина допускає до 5 рівнів того, що каскадує хабов (не рахуючи кореневого). Оскільки комбіновані пристрої усередині себе містять хаб, їх підключення до хабу 6-го ярусу вже неприпустимо. Кожен проміжний хаб має декілька низхідних (downstream) портів для підключення периферійних пристроїв (або хабов, що пролягають нижче) і один висхідний (upstream) порт для підключення до кореневого хабу або низхідного порту вищестоящого хаба.

Логічна топологія USB — просто зірка: для хост-контроллера хабы створюють ілюзію безпосереднього підключення кожного пристрою. На відміну від шин розширення (ISA/EISA, PCI, РС Card), де програма взаємодіє з пристроями шляхом звернень по фізичних адресах елементів пам'яті, портів введення-виводу, перериванням і каналам DMA, взаємодія додатків з пристроями USB виконується тільки через програмний інтерфейс. Цей інтерфейс, що забезпечує незалежність звернень до пристроїв, надається системним ПО контроллера USB.

На відміну від громіздких дорогих шлейфів паралельних шин АТА і особливо шини SCSI з її різноманітністю роз'ємів і складністю правил підключення, кабельне господарство USB просте і витончене. Кабель USB містить одну екрановану виту пару з імпедансом 90 Ом для сигнальних ланцюгів і одну неекрановану для подачі живлення (+5 В), допустима довжина сегменту — до -5 м. Для низької швидкості може використовуватися невитий неекранований кабель завдовжки до 3 м (він дешевший). Система кабелів і коннекторів USB не дає можливості помилитися при підключенні пристроїв (мал. 1, а і б). Для розпізнавання роз'єму USB на корпусі пристрою ставиться стандартне символічне позначення (мал. 1 і мал. 2, а).

Гнізда типу «А» встановлюються тільки на низхідних портах хабов, вилки типу «А» — на шнурах периферійних пристроїв або висхідних портів хабов. Гнізда і вилки типу «В» використовуються тільки для шнурів, що від'єднуються від периферійних пристроїв і висхідних портів хабов (від «дрібних» пристроїв — мишей, клавіатур і тому подібне кабелі, як правило, не від'єднуються).

Хаби і пристрої забезпечують можливість «гарячого» підключення і відключення. Для цього роз'єми забезпечують раніше з'єднання і пізнє від'єднання живлячих ланцюгів по відношенню до сигнальних і передбачений протокол сигналізації підключення і відключення пристроїв. Призначення виводів роз'ємів USB ілюструє табл. 1, нумерація контактів показана на мал. 2, а і б.

Мал. 1. Коннектори USB: а — вилка типу «А»; б— вилка типу «В»

а

би в

Ріс.2. Гнізда USB: а— типу «А»; б— типу «В»;

в— символічне позначення

Таблиця 1. Призначення виводів роз'єму USB

Контакт

Ланцюг

1

Vbus

2

D-

3

D+ .

4

GND

У шині використовується диференціальний спосіб передачі сигналів D+ і D- по двох проводах. Швидкість, використовувана пристроєм, підключеним до конкретного порту, визначається хабом по рівнях сигналів на лініях D+ і D-, що зміщуються резисторами навантажень приймачів: пристрої з низькою швидкістю «підтягають» до високого рівня лінію D-, з повною — D+.

Підключення пристрою HS визначається на етапі обміну конфігураційною інформацією — фізично на перших порах пристрій HS повинен підключатися як FS. Передача по двох проводах в USB не обмежується диференціальними сигналами. Окрім диференціального приймача кожен пристрій має лінійні приймачі сигналів D+ і D-, а передавачі цих ліній управляються індивідуально. Це дозволяє розрізняти більше двох станів лінії, використовуваних для організації апаратного інтерфейсу.

Введення високої швидкості (480 Мбіт/с — всього в 2 рази повільніше, ніж пропонує технологія Gigabit Ethernet) вимагає ретельного узгодження приймачів і лінії зв'язку. На цій швидкості може працювати тільки кабель з екранованою витою парою для сигнальних ліній. Для високої швидкості апаратура USB повинна мати додаткові спеціальні приймачі. На відміну від формувачів потенціалу для режимів FS і LS передавачі HS є джерелами струму, орієнтованими на наявність резисторів-терминаторов на обох сигнальних лініях.

Швидкість передачі даних (LS, FS або HS) вибирається розробником периферійного пристрою відповідно до потреб цього пристрою. Реалізація низьких швидкостей для пристрою обходиться декілька дешевше (приймачі простіші, а кабель для LS може бути і неекранованою невитою парою). Якщо в «старій» USB пристрою можна було підключати не замислюючись в будь-який вільний порт будь-якого хаба, то в USB 2.0 з'явилися можливості вибору між оптимальними, неоптимальними і непрацездатними конфігураціями, якщо використовуються пристрої і хабы різних версій.

Хаби USB 1.1 зобов'язані підтримувати швидкості FS і LS, швидкість підключеного до такого хабу пристрої визначається автоматично по різниці потенціалів сигнальних ліній. Хаби USB 1.1 при передачі пакетів є просто повторителями, що забезпечують прозорий зв'язок периферійного пристрою з контроллером.

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

У специфікації 2.0 швидкість 480, Мбіт/с повинна уживатися з колишніми, але при такому співвідношенні швидкостей обміни на FS і LS «з'їдять» можливу смугу пропускання шини без жодного «задоволення» (для користувача).

Щоб цього не відбувалося, хабы USB 2.0 набувають рис комутаторів пакетів. Якщо до порту такого хаба підключений високошвидкісний пристрій (або аналогічний хаб), то хаб працює в режимі повторителя і транзакція з пристроєм на HS займає весь канал до хост-контроллера на весь час свого виконання. Якщо ж до порту хаба USB 2.0 підключається пристрій або хаб 1.1, то по частині каналу від контроллера пакет проходить на швидкості HS, запам'ятовується в буфері хаба, а до старого пристрою або хабу йде вже на його «рідній» швидкості FS або LS. При цьому функції контроллера і хаба 2.0 (включаючи і кореневий) ускладнюються, оскільки транзакції на FS і LS розщеплюються і між їх частинами уклинюються високошвидкісне передачі. Від старих (1.1) пристроїв і хабов всі ці тонкощі ховаються, що і забезпечує зворотну сумісність.

Цілком зрозуміло, що пристрій USB 2.0 зможе реалізувати високу швидкість, тільки якщо по дорозі від нього до хост-контроллеру (теж 2.0) зустрічатимуться тільки хаб» 2.0. Якщо це правило порушити і між ним і контроллером 2.0 опиниться старий хаб, то зв'язок може бути встановлена тільки в режимі FS. Якщо така швидкість, пристрій і клієнтське ПО влаштує (наприклад, для принтера і сканера це виллється тільки в більший час очікування користувача), то підключений пристрій працювати буде, але з'явиться повідомлення про неоптимальну конфігурацію з'єднань. По можливості її слід виправити, благо перемикання кабелів USB можна виконувати «на ходу». Пристрої і ПО, критичні до смуги пропускання шини, в неправильній конфігурації працювати відмовляться і категорично зажадають перемикань. Якщо ж хост-контроллер старий, то вся краса USB 2.0 виявиться недоступною користувачеві. В цьому випадку доведеться міняти хост-контроллер (міняти системну плату або набувати PCI-карту контроллера). Контроллер і хабы USB 2.0 дозволяють підвищити сумарну пропускну спроможність шини і для старих пристроїв. Якщо пристрої FS підключати до різних портів хабов USB 2.0 (включаючи і кореневий), то для них сумарна пропускна спроможність шини USB зросте в порівнянні з 12 Мбіт/с в стільки раз, скільки використовується портів високошвидкісних хабов.

На мал. 3 приведений варіант з'єднання пристроїв і хабов, де високошвидкісним пристроєм USB 2.0 є тільки телекамера, передавальна відеопотік без компресії. Підключення принтера і сканера USB 1.1 до окремих портів хаба 2.0, та ще і розв'язка їх з аудіопристроями дозволяє їм використовувати смугу шини по 12 Мбіт/с кожному.

Таким чином, із загальної смуги 480 Мбіт/с на «старі» пристрої (USB 1.0) виділяється 3 х 12 - 36 Мбіт/с. Взагалі-то можна говорити і про смугу в 48 Мбіт/с, оскільки клавіатура і миша підключені до окремого порту хост-контроллера USB 2.0, але ці пристрої «освоять» тільки малу дещицю з виділених їм 12 Мбіт/с. Звичайно, можна підключати клавіатуру і мишу і до порту зовнішнього хаба, але з погляду підвищення надійності системні пристрої введення краще зв'язувати найбільш коротким (по кількості кабелів, роз'ємів і проміжних пристроїв) шляхом. Невдалою конфігурацією було б підключення принтера (сканера) до хабу USB 1.1 — під час роботи з аудіопристроями (якщо вони високої якості) швидкість друку (сканування) падатиме. Непрацездатною конфігурацією з'явилося б підключення телекамери до порту хаба USB 1.1.

Мал. 3. Приклад конфігурації з'єднань

При плануванні з'єднань слід враховувати спосіб живлення пристроїв: пристрої, що харчуються від шини, як правило, підключають до хабам, що харчується від мережі. До хабам, що харчується від шини, підключають лише малопотужні пристрої — так, до клавіатури USB, що містить усередині себе хаб, підключають мишу USB і інші пристрої-покажчики (трекбол, планшет).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]