Узнать какой порт usb 3.0. Как узнать, какой USB? USB и его версии

Universal Serial Bus – это последовательная универсальная шина. Она была разработана как альтернатива протоколам параллельной и последовательной передачи данных. В январе 1996 года вступил в силу стандарт 1.0. Много времени прошло до выхода в свет стандарта USB 2.0.

Какая скорость usb

Вообще, для универсальной шины предполагается четыре различных типа скоростей передачи данных. Их не нужно путать с версиями самого USB. Усовершенствованная скорость передачи данных вводилась в каждой следующей версии стандарта USB, конечно, при поддержке всех предыдущих. Нужно взять во внимание то, что устройства Universal Serial Bus версии 2.0 далеко не всегда обеспечивают передачу данных на скоростях High-Speed. Full-Speed – это уровень, где максимальная скорость остается лишь для некоторых устройств. Следующая версия стандарта USB – это 3.0. Она поддерживает не только SuperSpeed, но и три предыдущих типа скоростей. Также она ссылается на версию 2.0, а не заменяет её. High-Speed нельзя определить как версию стандарта 3.0, потому, что такие устройства, как Full-Speed, Low-Speed, и High-Speed относятся к стандарту USB 2.0, но не относятся к USB 3.0.

Как определить, какой usb

USB-IF (организацией USB Implementers Forum) был разработан для каждого типа скоростей специальный логотип. С помощью него можно определить соответствие между устройством и стандартом.

Диспетчер устройств системы Windows - это Device Manager. Он поможет нам узнать, поддерживает ли устройство определенной скорости какое-либо конкретное устройство USB. Вообще, считается, что это не самое подходящее решение проблемы. Нам нужно будет попробовать различные корневые USB-концентраторы, чтоб найти нужное устройство. Но как узнать какой usb?

Для начала откроем «Диспетчер устройств». Для этого мышкой наводим на меню «Мой компьютер». Правой кнопкой мыши выбираем строку «Свойства» - «Оборудование» и «Диспетчер устройств». Далее нам надо развернуть узел «Контроллеры универсальной последовательной шины USB» и открыть окно со свойствами корневого USB-концентратора. Чтоб нам было удобно работать, начнем с самого нижнего. Следующим действием перейдем на вкладку «Питание» или Power.

Если наше устройство подключено к данному концентратору, то мы сможем заметить, что оно появится в разделе «Подключенные устройства» или Attached Devices. Также обратим внимание на то, что у корневого USB ровно шесть портов. Один из них используется устройством.

Чтоб узнать скорость Universal Serial Bus, нам требуется открыть вкладку «Дополнительно» или Advanced. Корневые концентраторы могут одновременно работать на нескольких скоростях.

Данный материал подойдет для новичков и профессионалов. Некоторых часто волнует вопрос, как определить тип USB порта. Особенно это вызывает трудности, когда в ноутбуке все порты помечены черным цветом, хотя в характеристиках сказано, что USB 3.0 и 2.0 присутствуют. Правда не написано с какой стороны.

Эта статья не только поможет определить USB 3.0, но и попробуем отличить подделку. Статья будет небольшой, но в полной мере поможет разобраться, что к чему.

Определить вид USB порта с помощью Windows

Сейчас я попробую показать все программным путем, а потом посмотрим на сами порты. Большинство из вас знают, что USB-порты имеют версии 1.0 , 2.0 и 3.0 . Сейчас уже есть версия 3.1, но это не важно. Чтобы определить тип USB порта, нужно зайти в Диспетчер устройств. В Windows 10 нажимаем правой кнопкой мыши по меню Пуск и выбираем соответствующий пункт (либо нажимаем сочетание Win+X и делаем то же самое).

Как только открылось окно ищем вкладку «Контроллеры USB» и раскрываем ее. Там можем увидеть множество драйверов для USB портов. Если в одном из устройств есть слово «xHCI» , то это есть USB 3.0, все остальное относится к USB 2.0.


Легко? Тогда перейдем к следующему варианту определения.

Как определить тип USB порта по внешнему виду?

Давайте начнем с самой первой версии – USB 1.0, сейчас данный вариант в ноутбуках практически не используется, но имеет место в некоторых мышках и других устройствах. Выглядит он следующим образом: белый порт с 4-мя контактами – это и есть USB 1.0.


USB 2.0 обычно окрашен черным цветом и внутри имеет также 4 контакта. Второй тип совместим с USB 1.0, но отличаются лишь пропускной способностью. Второй тип быстрее.


В данном примере мы рассмотрели флешку, а как же выглядит разъем, например, в ноутбуке? Вот так и выглядит:


Почти ничем не отличается. Важный момент – некоторые производители могут окрасить тот же USB 2.0 в другой цвет, например, оранжевый. Конечно, это никак не влияет на характеристики интерфейса.


USB 3.0 выглядит, как синий порт и имеет 9 контактов . Четыре находятся впереди, остальные пять сзади. Смотрите внимательнее. Те, что сзади немного приподняты. Если материал синего цвета, то это точно USB 3.0. Также, на некоторых компьютерах рядом с разъемом вы можете видеть надпись «SS» , что говорит о максимальной скорости передачи данных (Super Speed).



Иногда можно увидеть USB 2.0, который тоже синего цвета, и как это понимать? Как я уже сказал, разработчики могут использовать любой дизайн. Определить тип USB вы можете по количеству контактов.

Хочется отметить, что USB 1.0, 2.0 и 3.0 совместимы друг с другом, поэтому смело можете использовать их так, как вздумается. Например, вставить разъем USB 2.0 в 3.0, правда скорость тут будет на уровне 2.0.

Итак, подведём небольшие итоги, сейчас я еще раз опишу особенности портов USB:

USB 1.0

  • Материал белого цвета;
  • Имеет 4 контакта.

USB 2.0

  • Выполнен из материала черного или синего цвета. В зависимости от предпочтений разработчиков, может быть и любой другой цвет;
  • Имеет 4 контакта.

USB 3.0

  • Материал практически всегда синего цвета, но и встречается черный;
  • Всегда 9 контактов – 4 впереди и 5 сзади.

Вот и все, что я хотел рассказать об определении типа USB портов.

В современной IT-индустрии часто случается так, что заверения производителя устройства относительно его функциональности не соответствуют действительности. От скепсиса по этому поводу перейдем к решению конкретной технической задачи…

Постановка задачи

В нашей тестовой лаборатории оказался USB Flash накопитель Kingston DataTraveler 3.0 . Согласно информации производителя, устройство поддерживает USB 3.0. Проверим, так ли это на самом деле, не разбирая флешку и не нарушая гарантию.

Аппаратный тест

Присмотревшись к разъему, за четырьмя «ближними » контактами, обеспечивающими поддержку USB 2.0, мы, как и ожидалось, обнаружили пять «дальних » контактов, используемых только в режиме USB 3.0 Super Speed . Измеряем сопротивление сигнальных линий USB 3.0 относительно земли, получаем значения, отличные от бесконечности. Вывод: контакты USB 3.0 физически присутствуют и не заканчиваются тупиком. Измерение выполнялось омметром на пределе, используемом для проверки полупроводниковых диодов. Для доступа к «дальним» контактам разъема USB 3.0 можно сконструировать переходник или воспользоваться тонким и длинным щупом, например иглой. Полученный результат является необходимым, но не достаточным условием функционирования устройства в режиме USB 3.0 Super Speed. Может случиться так, что сигнальные цепи заканчиваются терминирующими резисторами, но не подключены к контроллеру. Поэтому переходим к следующему тесту – программному.

Программный тест

Эксперимент выполняем на достаточно новой, еще не исследованной плате Tyan S5533 , построенной на чипсете Denlow .

Рис 1 . Системная плата Tyan S5533 в ITX-формате

Чтобы исключить влияние драйверов, запускаемых в сеансе операционной системы, наш тест будет «экстремально низкоуровневым», запускаться будем под DOS, а результаты контролировать путем просмотра дампа Memory Mapped I/O регистров контроллера USB.

Последовательность действий такова.

1) Воспользовавшись бета-версией утилиты USB.EXE разработки IC Book Labs, определим адрес блока конфигурационных регистров контроллера XHCI, в нашем примере это bus=0, device=14h, function=0. Также определим базовый адрес блока операционных регистров в пространстве Memory Mapped I/O, в нашем примере он равен F7500000h.

Рис 2 . Результаты работы утилиты USB.EXE. Адрес блока конфигурационных регистров XHCI: bus=0, device=14h, function=0. Базовый адрес операционных регистров XHCI равен F7500000h.

2) Как известно, в целях совместимости с программным обеспечением, не поддерживающим контроллер USB 3.0 XHCI, на данной платформе, по умолчанию, порты USB 3.0 обслуживаются контроллером USB 2.0 EHCI. Наша задача – перевести их в режим обслуживания контроллером USB 3.0 XHCI. Воспользуемся документацией Intel 8 Series / С220 Series Chipset Family Platform Controller Hub Datasheet и любой утилитой, позволяющей редактировать содержимое регистров системной логики.

Программируем регистр USB 3.0 Port Routing Mask Register. Записываем по адресу bus=0, device=14h, function=0, register=0DCh байт со значением 0FFh.

Программируем регистр USB 3.0 Port Super Speed Enable Register. Записываем по адресу bus=0, device=14h, function=0, register=0D8h байт со значением 0FFh.

Рис.3 . Регистр USB 3.0 Port Routing Mask Register

Рис.4 . Регистр USB 3.0 Port Super Speed Enable Register

3) Считываем и расшифровываем согласно рис.5 и рис.6 исходное состояние нескольких битовых полей из младших 16-битов 32-битного регистра PORTSCNUSB3 до подключения устройства к исследуемому порту. Регистр находится по смещению 0570h от базового адреса блока операционных регистров контроллера, его адрес F7500000h+0570h=F7500570h

Прочитанное значение = 02A0h = 0000.00 10.1010.0000 b
D0=Current Connect Status=0. Устройство не подключено.
D1=Port Enabled/Disabled=0. Порт не используется.
D=Port Speed=0000b. Скорость не определена.

Рис.5 . Регистр USB 3.0 Port Status and Control Register, биты

Рис.6 . Регистр USB 3.0 Port Status and Control Register, биты

4) Подключаем USB 3.0 флэшку, затем повторно считываем регистр и расшифровываем те же битовые поля.

Прочитанное значение = 1203h = 0001.00 10.0000.0011 b
D0=Current Connect Status=1. Устройство подключено.
D1=Port Enabled/Disabled=1. Порт используется.
D=Port Speed=0100b. Скорость равна 5.0 Gbit/S, режим USB 3.0 Super Speed работает.

5) Для самоконтроля, подключаем USB 2.0 флэшку к тому же порту, затем повторно считываем регистр и расшифровываем те же битовые поля. Прочитанное значение = 02A0h, что соответствует отсутствию подключения. Так и должно быть, регистр PORTSCNUSB3 «не видит» USB 2.0 устройство, так как оно обслуживается другой подсистемой и статус подключения доступен посредством другого регистра – PORTSCNUSB2, рассмотрение которого выходит за рамки наших исследований.

Резюме

Испытуемая флэшка действительно поддерживает режим USB 3.0 .

Если формализовать и запрограммировать описанные действия в виде DOS-программы или UEFI-приложения, получится небольшая утилита, позволяющая быстро определить, в каком скоростном режиме работает USB устройство. Для упрощения нашего примера, мы реализовали его для частного случая – подсистемы USB платы Tyan S5533 и использования первого порта, поэтому адрес регистра PORTSCNUSB3 в нашем примере – константа. В общем случае, для того, чтобы программа была работоспособна на всех платформах, адрес регистра PORTSCNUSB3 должен вычисляться на основании содержимого полей XHCI Capabilities, в соответствии со спецификацией USB 3.0 XHCI. С другой стороны, достигнуть универсальности можно значительно проще и изящнее, используя UEFI-протоколы вместо прямого взаимодействия с регистрами контроллера.

Источники информации

UPD

В качестве «подопытного кролика» использовался девайс Kingston DataTraveler 100 G3, объемом 16 GB:

UPD-II

1. Дескрипторы устройств, доступные для просмотра с помощью различных информационных утилит индицируют потенциальные возможности устройства. Скоростной режим, установленный для USB порта при подключении устройства, не всегда соответствует возможностям, декларированным в дескрипторах.

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

Конечно, содержимое дескрипторов устройства - это более достоверный источник информации, чем надпись на флешке и клятвы продавца. Но по причинам, указанным выше, достоверность отлична от 100 процентов.

Именно стремление довести достоверность до 100% побудила нас на экстремально низкоуровневые исследования.

2. Другой метод – проследить в диспетчере устройств, какой контроллер является родительским для флешки (USB 2.0 EHCI или USB 3.0 XHCI), также неэффективен, так как, согласно спецификации, контроллер USB 3.0 XHCI может поддерживать все виды устройств: от Low-Speed до Super Speed. Поэтому, из того, что для флешки родительским контроллером является xHCI не следует, что устройство работает в режиме Super Speed.

Если USB-устройство и платформа поддерживают передачу данных в режиме USB3.0 со скоростью 5 Гб/сек., то, казалось бы, ничто не мешает убедиться в этом воочию. Существует немало утилит для этого, да и наши исследования способствовали поиску ответа на это вопрос. Кроме того, если накопитель демонстрирует скорость, существенно пре­вы­ша­ю­щую 50-60 МБ/сек., то можно заявить - это режим Super Speed , поскольку в режиме USB 2.0 такая скорость физически недостижима, а «промежуточных» вариантов не существует. Но не все так просто...

Почему все так сложно

В силу разных причин, полноценная поддержка новых режимов универсальной последовательной шины в утилитах системной информации, несколько задерживается. В результате мы часто видим только дифференцирование между USB1 и USB2 и распознавание USB3-подключения как USB2. Кроме того, информация, получаемая из дескрипторов устройства, декларирует его потенциальные возможности, а не текущий скоростной режим, выбираемый сугубо аппаратно. Согласно спецификации USB, содержимое дескрипторов должно зависеть от установленной скорости, но разработчики устройств не всегда соблюдают это правило. В итоге, какой бы результат (USB2 или USB3) мы не увидели, есть основания для сомнений.

С учетом постоянного совершенствования технологий опережающего чтения и отложенной записи, делать выводы, ориентируясь исключительно на скорости копирования файлов на жестком диске будет методологически неверно, хотя при больших размерах файлов (единицы гигабайт), такой критерий имеет право на жизнь. Но есть более радикальный, а следовательно и более достоверный путь – получить информацию непосредственно из регистров контроллера USB 3.0 xHCI, написав для этого небольшое UEFI-приложение на ассемблере.

Условия эксперимента и системные объекты

Платформа – ноутбук ASUS N750JK , а подключаемое USB 3.0 устройство – жесткий диск Transcend StoreJet 35T3 . Целевым объектом будут регистровые поля контроллера USB3.0 xHCI, индицирующие тип соединения. Заметим, что в зависимости от скоростного режима (USB2 или USB3), контроллер «видит» устройство через одну из двух групп регистров.

Рис .1 . Биты регистра Port N Status and Control USB2 индицируют тип соединения : Low-Speed, Full-Speed или High-Speed


Рис .2 . Биты регистра Port N Status and Control USB3 индицируют тип соединения : Super-Speed

Утилита CheckUSB

Исходные тексты подготовлены в формате Flat Assembler 1.71.17. Утилита CheckUSB предназначена для запуска в среде x64 UEFI. Текущая версия поддерживает только системную логику Intel 8 Series, режим USB 3.0 должен быть включен в CMOS Setup. Такая привязка связана во-первых с поддержкой широкого набора регистров, специфичных для данной системной логики и не предусмотренных спецификацией контроллера xHCI, а во-вторых, в целях упрощения, вычисление адресных смещений и размерностей ряда регистровых полей, а также задание количества портов, реализовано для частного случая, а именно данной системной логики. Подробная информация содержится в документе:

  • Intel 8 Series / C220 Series Chipset Family Platform Controller Hub (PCH). Datasheet. June 2013

Энтузиастам, желающим расширить функциональность нашего простейшего примера и реализовать поддержку различных наборов системной логики, рекомендуем документ:

  • Extensible Host Controller Interface for Universal Serial Bus (xHCI). Revision 1.1

Кроме того, непосредственный доступ к конфигурационному пространству PCI и memory-mapped I/O рекомендуется заменить на вызовы соответствующих UEFI-протоколов.

Анализируем результаты

Итак, утилита отработала, рапорт сгенерирован.


Рис. 3

Обратим внимание на список подключений к портам контроллера USB. Вначале следуют три устройства, входящие в состав ноутбука, а четвертое – это наш искомый внешний жесткий диск Transcend StoreJet 35T3. Режим SuperSpeed включен. Детальный анализ содержимого регистровых полей приведен .

Резюме

Низкоуровневое исследование, выполненное на уровне физического доступа к регистрам контроллера USB3.0 xHCI в среде UEFI firmware, однозначно свидетельствует – режим Super Speed включен. Но исправность оборудования необходимое, но не достаточное условие его корректной работы в сеансе операционной системы. Причиной проблем может быть, например, драйвер контроллера xHCI или сама ОС. Поэтому, логичным продолжением будет проведение подобного эксперимента в сеансе ОС, например Windows. Эта задача посложнее, так как регистры контроллера являются привилегированным системным ресурсом, для доступа к которому требуется написать собственный драйвер. Кроме того, в сеансе операционной системы, с контроллером USB взаимодействует его штатный драйвер, необходимо позаботиться о бесконфликтности.

USB-накопители, а говоря проще, флэшки, плотно вошли в нашу жизнь, и сложно представить человека, не пользующегося этим устройством. Однако выбор USB-диска для многих определяется лишь дизайном и объемом, некоторые, кто уже сталкивался в проблемой медленной записи, также смотрят на скорость. Мы предлагаем разобраться в различиях флэшек по параметрам, на которые реже обращают внимание, но которые являются основными для USB-накопителей.

Самые первые USB-накопители, предназначенные для переноса и хранения цифровой информации, появились в 2000 году. Благодаря компактности по сравнению с другими носителями, на сегодня они практически вытеснили компакт-диски и другие менее технологичные носители информации. Сейчас такое устройство воспринимается как стандартная вещь: многие носят их как брелоки или дарят в качестве полезного сувенира, например, на Новый год.

Рассматриваемые устройства выпускают многие именитые и не очень производители (Adata, Kingston, Apacer, Silicon Power, Corsair, Transcend, TeamGroup, Sandisk, Lexar), поэтому зачастую известный производитель для пользователя является гарантом качества и позволяет сконцентрироваться при выборе на дизайне. На рынке (особенно в интернет-магазинах) существует множество подделок из Китая, которые заявляя одни характеристики, в реальности им не соответствуют.

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

Объем USB-диска является ключевым показателем для цены (данные Яндекс.Маркет):

4 Гб - 180 рублей

8 Гб -190 рублей

16 Гб - 270 рублей

32 Гб - 500 рублей

64 Гб - 1000 рублей

128 Гб - 2900 рублей

256 Гб - 11000 рублей

В перечисленной информации учитывались только объем и средняя цена. Многие производители не указывают скорость чтения и записи для носителя.

Для SD- (micro-SD) карт чаще на упаковке указывается класс устройства, который определяет только скорость записи:

Class 2 - (скорость записи не менее 2 МБ/с)

Сlass 4 - (скорость записи не менее 4 МБ/с)

Сlass 6 - (скорость записи не менее 6 МБ/с)

Сlass 10 - (скорость записи не менее 10 МБ/с)

Для USB-накопителя важным параметром является стандарт USB (2.0 или 3.0), который определяет потенциальные возможности устройства. USB расшифровывается как «универсальная последовательная шина» (Universal Serial Bus). USB 3.0 (SuperSpeed USB) потенциально обладает очень высокими показателями скорости и производительности.

USB 2.0 в теории должна обладать скоростью 480 Мбит/с, но в реальности не достигает и 250 Мбит/с. USB 3.0 может достичь теоретической максимальной скорости 4,8 Гбит/с, что в десять раз превышает скорость USB 2.0.

Флэшка USB 2.0 на 16 Гб стоит порядка 270 рублей, аналогичного объема USB 3.0 - 370 рублей.

Стандарты USB 2.0 и USB 3.0 во многом совместимы между собой. Это означает, что вставив флэшку USB 3.0 в разъем 2.0 (флэшку USB 2.0 в разъем 3.0), вполне можно считать и записать данные, правда, скорость будет ограничиваться либо разъемом, либо накопителем.

Визуально накопители и разъемы стандарта 3.0 отличаются наличием внутри пластика синего цвета.

Как же самостоятельно проверить реальность объема, заявленного на упаковке, и скоростные характеристики USB-накопителя? Сделать это позволят бесплатные программы, работа с которыми довольно проста.

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

Эта программа не требует инсталляции. Запускаем ее и видим следующее:

По умолчанию язык программы немецкий, поэтому, если вы не сильны в этом языке, следует вверху установить переключатель на English:

Оставляем все остальные переключатели на своих местах нажимаем кнопку «Vrite + Verify» для начала теста, видим следующую картину:

Тестирование идет довольно долго, программа записывает блоками информацию и читает ее после записи. USB-накопитель объемом 8 Гб будет тестироваться порядка 40 минут. В результате увидим следующий отчет:

А вот так выглядит результат для поддельного накопителя, где производитель заявил объем 64 Гб, а по факту мы имеем 7,4 Гб:

Конечно, в этом случае целесообразно продемонстрировать результаты теста продавцу и вернуть свои деньги.

Данная программа оставляет на тестируемом диске файлы, которые необходимо удалить вручную:

Вторая программа CrystalDiskMark позволит оценить скоростные характеристики накопителя.