Чому USB має 4 лінії замість 3?


186

USB вказує 4 контакту:

1.   VBUS   +5V
2.   D-     Data-
3.   D+     Data+
4.   GND    Ground

Чому це не 3? Чи могли дані та влада не мати спільної точки зору? Чи правильно я розумію, що D-є підставою D+?


8
Просто ви знаєте: Є однопровідні протоколи, де навіть + 5 В і дані однакові. Це не буде швидко і безпечно для перешкод, але для деяких застосувань менше проводів - справжня чиста виграш. Інші, як-от USB та Ethernet, додають дроти, щоб отримати більше живлення та даних.
Макке

13
Ого, це напрочуд популярне питання!
Rocketmagnet

Відповіді:


291

Ні, D-не ґрунт. Дані надсилаються по диференціальній лінії , що означає, що D-це дзеркальне зображення D+, тому обидві лінії даних несуть сигнал. Одержувач віднімає D-з D+. Якщо якийсь сигнал шуму буде підхоплений обома проводами, віднімання скасує його.

введіть тут опис зображення

Так диференціальна сигналізація допомагає придушити шум. Так само і тип проводки, а саме кручена пара . Якщо провід проходив просто паралельно, вони утворювали б (вузьку) петлю, яка могла б отримати магнітні перешкоди. Але завдяки поворотам орієнтація проводів щодо поля постійно змінюється. Індукований струм буде відмінено струмом із протилежним знаком на півкруті далі.
Припустимо, у вас виникає збурення, яке працює вертикально на крученому дроті. Ви можете розцінювати кожну половинку повороту як маленьку петлю, яка збирає порушення. Тоді легко помітити, що наступна крихітна петля бачить протилежне поле (так би мовити), що скасовує перше поле. Це трапляється для кожної пари з половинними поворотами.
Аналогічний ефект балансування виникає для ємності до землі. У прямій парі один провідник демонструє більшу ємність до землі, ніж інший, тоді як у крученій парі кожен провід буде демонструвати однакову ємність.

введіть тут опис зображення

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


6
@ pjc50 - Насправді я взяв її з Вікіпедії , але якби мені довелося її самостійно намалювати, я скористався Adobe Illustrator.
stevenvh

16
@ pjc50 або Inkscape, яка є найпопулярнішою (і справді дійсною) альтернативою вільного програмного забезпечення
clabacchio

1
Ну, я новачок в електроніці. Хочу запитати вас, якщо шум був лише на D +, як його можна було скасувати? Отже, я говорю, чи існує ситуація, коли шум лише на D + або D-?
Енес Унал

4
@Enes - Це буде незначно через симетрію проводки: якщо ви берете довільну довжину дроту, ви не можете зрозуміти, що таке D+і що є D-(крім кольорового кодування, звичайно). Це означає і те, D+і інше D-буде піддаватися порушенням однаково. І коли шум однаковий на обох відніманнях, він скасує його майже повністю.
stevenvh

2
@EnesUnal Цікавим моментом щодо кабелю крученої пари є те, що жоден провід не знаходиться ближче до шуму чи перешкод, ніж інший провід. Ref: techtionary.com/members/slides/u/unbalun.swf
Себастьян

58

Це диференціальний (або врівноважений) сигнал, а не одиночний (неврівноважений) сигнал.

Це означає, що приймач "вимірює" напругу між ними, а не між однією і землею.
Скажімо, що D + знаходиться на рівні 2В, а D- на рівні 1В. Тепер скажіть, що дріт сприймає зовнішній шум (радіочастот, мережевий гул тощо). Дуже ймовірно, що обидва кабелі підхоплять однаковий шум-сигнал, оскільки вони скручені разом і мають однаковий опір.
Скажімо, ми піднімаємо 50 мВ шуму. Тож тепер у D + є 2050mV, а D- 1050mV - різниця між ними все ще 1V (1000mV), і це те, що приймач "побачить".
Якби це було зроблено за допомогою кабелю з одним кінцем, то D + (без D-) буде 1050mV, а земля все ще буде 0V, тож приймач побачив би 1050mV.

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


38

Насправді, це було спробувано один раз: Apple Desktop Bus (ADB) використовувалася для підключення клавіатур і мишей до комп'ютерів Apple Macintosh приблизно з 1986 року, поки Apple в 1997 році не вимкнула його на USB за допомогою iMac.

Він мав чотири дроти: 5 В, заземлення, дані та комутатор живлення. Лінія перемикання живлення була лише кнопкою живлення на клавіатурі, яка з'єднувала лінію з землею, і казала блоку живлення запускати машину. Це повинен був бути власний провід, щоб він все ще працював, навіть якщо 5В лінія відключена.

Крім цього, лінія даних переносила все ... дуже повільно. Шина ніколи насправді не просувалась поза тим, як шина настільних пристроїв, тому що вона не тільки мала односторонній сигнал, але й мала обмеження довжини (ви отримуєте відбиття від кінця шини, оскільки вона не припиняється на кожному кінці).

Тому Intel вирішила використовувати диференціальну сигналізацію для USB. Якщо ви хочете добре уявити, що вам купує диференціальна сигналізація, порівняйте продуктивність шуму однобічної шини RS-232 з диференціальною шиною RS-422. RS-422 можна переводити через довший кабель із меншою напругою джерела при заданій швидкості помилок.

Чому це? У тривалій версії є щоденна лекція в класі електромагнітики. Коротка версія полягає в тому, що шум-сигнал буде викликати однакову напругу в обох провідниках диференціальної пари, тому компаратор на кінці приймача скасовує його (він дуже добре відхиляє напругу загального режиму). Одностороння лінія не має порівнянної гарантії, оскільки немає гарантії, що лінія заземлення та сигнальна лінія приймуть однаковий шум-сигнал; майданчики можуть бути навіть підключені через землю шасі, і зворотний струм буде приймати зовсім інші маршрути.


Ви кажете, що RS-422 можна задавати довше, ніж RS = 232, для заданої швидкості помилок бітів; чи довгі кабелі RS-232 починають збирати випадкові помилки? Я б очікував, що, хоча можуть бути деякі довжини, прямо на межі зручності використання, де певне повідомлення може мати 99% шанс пройти через непошкоджене, не буде великої різниці між довжиною, через яку може пройти складне повідомлення через 99% або більше шансів на успіх, і тривалість, коли це може мати 99% шанс невдачі. Чи падіння взагалі відбувається поступово?
supercat

4
Довгі лінії RS-232 мають велику проблему, яку не має RS-422: Оскільки "земля" посилається на демодуляцію сигналу, накопичувальна помилка в цьому "ґрунті" наводить хаос на приймачі. Це стає ще гірше, коли приймач і драйвер не знаходяться на одній землі (наприклад, підключені до різних ланцюгів живлення) або коли струми, відмінні від зворотного струму сигналу, знаходяться на цій лінії заземлення. Будь-яке падіння напруги на лінії заземлення з будь-якої причини зменшує ваші межі шуму, поки воно просто не зникне. В основному, "земля" - це зручна вигадка, яка виходить з ладу для довгих кабелів.
Майк Десимоне,

Падіння насправді не таке поступове, оскільки в більшості випадків шум набагато менший, ніж межа між VOH / VOL та VIH / VIL. Що відбувається, це те, що при певній (великій довжині) ви починаєте збирати помітні помилки так само, як сила шуму починає дорівнювати порогу приймача (тобто напруги, необхідної для підключення a 0до 1або навпаки), потім як кабель стає довше, ви отримуєте набагато більше помилок, поки повністю не зникли. Це не схоже на втрату, що поширюється на r ^ -2. (Назад до теми, у випадку АБР, провід заземлення несе як сигнал, так і зворотний струм.)
Майк Десимоне,

Проблема є більш типовою у тому, що сила шуму збільшується, або проблема є більш типовою, що сигнал або стає занадто слабким, щоб досягти порогу виявлення послідовно на зростаючих і падаючих краях? Я, звичайно, бачив останню проблему більше, ніж шум на великих швидкостях; чи переважає шум, що стає основною проблемою на менших швидкостях (при більшій довжині кабелю нижчі швидкості дозволять)? Що стосується ADB, я думаю, що він був розроблений, щоб врятувати людей від того, щоб окремі дроти підключили до ПК для миші та клавіатури. Дуже погано сучасні дизайнери ПК не вважають такими речами.
supercat

2
На практиці ADB не був таким надійним, коли у вас було кілька пристроїв. У мене був джойстик, дросель, клавіатура та миша, і якщо ви не отримали їх у потрібному порядку, вони випадково не працюватимуть. Винуватцями були джойстик і дросель; у них було вбудовано велику довжину кабелю, і він склався. І так, у Mac не було RS-232 (саме тому я взагалі використовував 422), але одна хитрість з RS-422 полягає в тому, що ви можете перетворити його в односкладний RS-423 за допомогою кабелю (TX - стає TX ; TX + не підключений, RX + до GND, RX стає RX), а RS-423 сумісний з RS-232 на невеликих відстанях.
Майк Десимоне

14

Насправді багато USB має 5 ліній, а не 4. (П'ятий рядок призначений для узгодження того, хто є майстром у програмах OTG. Зверніть увагу, це обмежено міні-та мікро USB-роз'ємами.)

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


2
@Kortuk: На mini та micro USB є 5-й контактний "ідентифікатор" для USB On-the-Go, де будь-який пристрій може виконувати роль хоста. secure.wikimedia.org/wikipedia/en/wiki/USB#Physical_appearance
ендоліти

4
П'ятий штифт не для узгодження - він закріплений у роз'ємі і не доходить до іншого кінця. Ідея полягала в тому, щоб вказати пристроям OTG, коли їм потрібно взяти роль хоста, підключивши кінець A. Також є протокол для перемикання ролей, але це набагато вищий рівень.
Янна Верньє

11

Я не можу остаточно сказати, що це єдине врахування, яке було розглянуто, але це не для заземлення, це для скасування EMI. Data +/- провід є кручений парою , що несе диференціальних сигнали.

Це так, як ви знайдете в звичайному побутовому телефонному шнурі або мережевому кабелі.


9

D + D - диференціальний механізм передачі даних прийнятий для зменшення ураженого шуму, отже, пропускна здатність передачі може бути сильно збільшена.

Як і USB, існує кілька інших протоколів передачі, які використовують диференціальний фізичний рівень. Деякі приклади: RS485, Ethernet ...



7

Але, навіть з диференційованими даними, є випадки, коли в USB використовується одностороння сигналізація: кінець пакету сигналізується одностороннім нулем (SE0), а саме: і D +, і D- у низькому стані . Цей стан минулого разу склав 2 біти. якщо SE0 триває більше 10 мс, це означає скидання шини.

Ця одностороння сигналізація робить USB досить чутливою до електромагнітних перешкод, як і ті, які я нещодавно знайшов, коли мотор фена викликав безліч роз'єднань на сусідній периферійній USB. І жодні фільтри загального режиму не можуть бути ефективно використані, оскільки вони можуть погіршити сигнал SE0 ... Ще один добре продуманий стандарт ...


Використання однобічної сигналізації для кількох умов, які не потребують точного встановлення часу (наприклад, використання її для скидання шини здається ідеально чудовою ідеєю). Використання дворазового часу SE0 здається трохи швидким; що повинні робити приймачі, якщо вони бачать одноразовий SE0? Надання передавача три-бітового часу SE0, а приймач шукає щонайменше двох, здавалося б, набагато краще.
supercat

3

Beyond Logic має огляд основних точок електричної частини USB специфікації тут (також в форматі PDF тут ):

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

...

Приймач визначає диференціальний '1' як D + 200mV більше D-, а диференціальний '0', як D + 200mV менше, ніж D-. Полярність сигналу інвертується залежно від швидкості шини.


2
Ми цінуємо посилання як додаткові, але якщо посилання гинуть, ваша відповідь стає марною. Не могли б ви дати тут резюме?
stevenvh

2
Це набагато краща відповідь завдяки доданому резюме - Дякую вам за це - але вам також потрібно бути обережними, щоб уникнути плагізму. Вміст вашого першого абзацу захищений авторським правом.
Кевін Вермер

@KevinVermeer: ​​Котирування не є плагіатом чи порушенням авторських прав.
ендоліт

2
@endolith - з атрибуцією вони не є плагізмом чи порушенням авторських прав. Я відредагував відповідь, щоб продемонструвати кращу атрибуцію. Раніше ніхто б не знав, що абзац - це здебільшого цитата. Тепер це очевидно. Створюючи пропозицію, використовуйте функції блокової цитати.
Кевін Вермер

@endolith: Атрибуція захищає від плагіату, але приписувані цитати МОЖЕ залишатися порушеннями авторських прав.
Бен Войгт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.