Универсальная последовательная шина USB.
21 век - век программных уровней (протоколов) в последовательных интерфейсах! Если посмотреть на стандарты последовательных интерфейсов прошлого века, то они в основном описывали физические уровни, программные уровни оставались на волю разработчика. Сегодня ситуация изменилась, и описание программных уровней занимают почти весь стандарт. Когда начинают сравнивать последовательные интерфейсы разных лет, то всегда делают ошибку: сравнивая физический уровень одного интерфейса с программным уровнем другого интерфейса. Аналогично можно сравнивать операционную систему с материнской платой компьютера, и при этом "умно" говорить, что из них лучше. Если вспомнить интерфейс RS-232, то можно заметить: "Интерфейс RS-232-C был разработан для простого применения, однозначно определяемого по его названию: «Интерфейс между терминальным оборудованием и связным оборудованием с обменом по последовательному двоичному коду». Чаще всего используется в промышленном и узкоспециальном оборудовании, встраиваемых устройствах. Иногда присутствует на современных персональных компьютерах". 1996г. - разработана спецификация нового универсального порта ПК USB 1.0. Характеристики USB:
Кабель: 5 проводов
Каналы данных: 1 (полудуплекс)
Количество сервисных сигналов: 9 (зависимые)
Состояний линии связи: 4
Тип обмена: асинхронный одноточечный
Скорость обмена: до 12 Mb/s
Длина пакета: 4...1030 байт
Дальность связи: 5 m
Какие потребности привели в 1996 г. к появлению нового порта?
1. Универсальность - нет. Универсальность падает в последовательности RS232-COM port-USB
2. Дальность связи - нет. Дальность падает в последовательности RS485-RS232-COM port-USB
3. Скорость обмена - да. Формально падает: USB-COM порт-RS232. (Потенциально: COM порт не уступает USB)
4. Надежность - нет. Надежность падает в последовательности: COM порт-RS232-USB.
5. Энтропия - да. Энтропия падает в последовательности USB-COM порт-RS232
Под энтропией интерфейса понимается количество переданной информации на одну аппаратную ячейку (ключ) физической структуры. Более простое определение "увеличения энтропии", это - стремление разработчика вложить больше функциональных возможностей в более простое устройство. То есть, свести к минимуму отношения взаимообратных функций: простоты и функциональности. Физический уровень интерфейса USB сделан проще COM порта и тем более, проще интерфейса RS-232. "USB был разработан для простого применения". Функциональность USB в основном увеличивается за счет программного уровня интерфейса, которая не требует аппаратных затрат. При этом замечу, что COM порт и RS-232 не регламентируют программный уровень протокола. Поэтому RS-232 совместно с многочисленными модемами типа: RS-485, Bell-202, V.92 и др. использовались для создания различных интерфейсов путем добавления программного уровня. Например: ModBus, ProfiBus, HART и многие др. К примеру, ModBus представляет многоточечный пакетный интерфейс связи, где целостность пакета, как и в USB, проверяется контрольной суммой пакета. При передаче пакета ModBus через RS232-RS485 каждый байт пакета дополнительно аппаратно проверяется на ошибку интерфейсом RS-232. То есть, мы получим двойную проверку: программную ModBus и аппаратную RS232. Понятно, что для пользователя бытового ПК это ненужно, но для управления ядерным реактором не помешает. Кроме того, надежность СОМ порта уникальна, он может работать без ПО и без ОС (чего не скажешь про USB). COM порт будет принимать и передавать данные, даже если "убить" микропроцессор.
Сведения по спецификациям USB
Историческая справка.
В 1994 году несколько ведущих компаний в области производства персональных компьютеров и программного обеспечения решили разработать новый универсальный порт компьютера. Новая операционная система Windows 95, разработанная Microsoft, была ориентирована на использования аудио и видео устройств. Работа таких устройств с СОМ и LPT портом вызывала известные трудности. Обычно для таких устройств изготовляли персональную ISA или PCI карту для подключения их к компьютеру. Семь ведущих компаний вошли в первоначальный состав разработчиков спецификации нового компьютерного порта: Compaq, Digital Equipment Corporation (DEC), IBM, Intel, Microsoft, NEC , Northern Telecom.
В январе 1996 года была выпущена спецификация USB v.1.0, и началась практическая реализация порта USB. В 1996 году работа велась в трёх направлениях:
1.Фирма Intel взялась за разработку хоста (корневого хаба), который она решила встроить в микросхему i82371FB (акселератор шин PCI, ISA, IDE). Данная микросхема входила в состав набора микросхем i430FX "Triton" (ChipSet) для создания материнских плат на базе микропроцессора Pentium и поддерживала шину PCI/ISA. Позже микросхемы этого типа (шинные акселераторы), входящие в состав набора ChipSet стали называть микросхемами ICH (Input/Output Chip Hub) или "южным мостом"- South Bridge. Компания Intel поддерживает этот стандарт во всех своих наборах микросхем системной логики.
В мае 1996 года Intel выпустила микросхему i82371SB, которая была аналогом i82371FB и содержала в своем составе два корневых хаба usb. Данная микросхема могла поддерживать два порта USB v.1.0. Микросхема i82371SB впервые вошла в набор i430VX "Triton". Таким образом, у производителей материнских плат появилась возможность с мая 1996 года выпускать платы с usb портами.
2. Microsoft начал дорабатывать свою ОС Windows 95 и в октябре 1996 года выпустил ОС Windows 95b, в которой впервые появилась поддержка USB портов.
3. Фирмы производители микроэлектроники начали разрабатывать микросхемы для создания устройств USB. Например, фирма Philips начала в 1996 году разработку серии микросхем с наименованием PDIUSB, которая должна была включать в себя все необходимые компоненты для устройств и хабов USB.
1996...1999 гг можно назвать "тёмными годами" USB. В это время уже выпускались ПК с портами USB, к которым нечего было подключать. Поэтому специалисты по компьютерным технологиям прозвали эту шину: (Useless serial bus -бесполезная последовательная шина). Выпускавшиеся в эти года USB манипуляторы типа мышь, клавиатура, джойстик проигрывали по качеству работы манипуляторам, работавшим по порту PS/2 и Game Port. Кроме того эти манипуляторы не работали в MS-DOS. Многие специалисты считали, что у этого порта нет перспектив. Ситуация изменилась в 1999 году в связи с разработкой первого USB флеш-накопителя. Израильская фирма M-Systems Ltd. в 1999 году выпустила первую usb-флешку объёмом 8Мб, которая называлась DiskOnKey. Колоссальная популярность USB-накопителей дала огромный толчок к дальнейшему развитию шины USB. В первую очередь нужна была скорость обмена информации с Flash носителями. В 2000 году разрабатывается спецификация USB 2.0 с поддержкой скорости 480 Mb/s (в 40 раз больше чем в USB 1.0). Спецификация USB 2.0 стала стандартом последовательной шины компьютеров и различных устройств. В USB реализована возможность подключения большого количества периферийных устройств к ПК. Шина USB позволяет одновременно использовать до 127 устройств, причем такие периферийные устройства, как монитор или клавиатура, могут предоставлять дополнительные разъемы и выступать в качестве концентраторов USB.
Вместо клубка проводов, торчащих из задней стенки корпуса ПК, которые вечно путаются, собирают пыль и просто мешают работать с появлением USB наступил порядок.
При подключении устройств к USB не нужно устанавливать платы в разъемы системной платы и реконфигурировать систему (исчезла пресловутая шина ISA). Экономно используются такие важные системные ресурсы, как запросы прерывания (IRQ). Т.е. вместо конфликтов прерываний, адресов доступа к памяти и прочих неприятностей, связанных с особенностями устаревшей архитектуры ПК, при использовании USB система автоматически выполнит настройку оборудования, сразу после физического подключения, без перезагрузки или установки, т.е. достаточно просто присоединить кабель – и устройство готово к работе.
Кабели, разъемы, концентраторы и периферийные устройства, поддерживающие USB, можно определить по значку, показанному на рис. 18. Обратите внимание на символ плюса, добавленный ко второму значку – он означает стандарт USB 2.0 (высокоскоростной стандарт).
Рис. 18. Логотип устройств USB
Что же скрывается за многообещающей аббревиатурой? То, что данные передаются последовательно и что она универсальна.
Сигналы передаются по двум проводам четырехжильного кабеля, два оставшихся используются для подачи электропитания (5 В постоянного тока) в устройства.
Система построена по топологии “звезда”. Это значит, что в ПК на системной плате установлен корневой концентратор, к которому подключаются концентраторы и устройства. Концентраторы тоже считаются устройствами и могут подключаться цепочками см. рис. 19.
Рис. 19. В ПК может использоваться несколько концентраторов USB для подключения различных периферийных устройств, причем любое устройство можно подсоединить к любому концентратору.
Каждая точка подключения именуется портом. Большинство концентраторов имеют четыре или восемь портов. Кроме предоставления дополнительных портов для подключения периферийных устройств, концентратор занимается распределением энергии. Он динамически распознает подключенное периферийное устройство и после инсталляции предоставляет ему по меньшей мере 0,5 Вт.
Для повышения надежности передачи данных рекомендуется использовать концентратор с собственным блоком питания.
Новому подключенному концентратору присваивается уникальный адрес. Устройства можно масштабировать до пяти уровней в глубину. Концентратор выступает в роли двунаправленного ретранслятора и транслирует сигналы USB как во входном (к ПК), так и в нисходящем (к устройству) потоках. Концентратор USB 1.1 поддерживает как высокоскоростную передачу данных (12 Мбит/с), так и низкоскоростную (1,5 Мбит/с).
Максимальная длина кабеля между двумя работающими на скорости (12 Мбит/c) устройствами или устройством и концентратором – пять метров. В кабеле используется экранированная витая пара (толщина провода – 20). Максимальная длина кабеля для низкоскоростных устройств (1,5 Мбит/с) при использовании нескрученной пары проводов – 3м. Причем эти расстояния уменьшаются, если используется более тонкий провод (см.
табл. 4.
Структура физического уровня USB 1.1 приведена на рис. 20.
Рассмотрим структуру физического уровня USB 1.1:
Таблица 4.
Толщина
| Удельное сопротивление, Ом/м
| Длина (макс.), м
|
| 0,232
| 0,81
|
| 0,145
| 1,31
|
| 0,091
| 2,08
|
| 0,057
| 3,33
|
| 0,036
| 5,0
|
Общая структура физического уровня.
Физический уровень USB 1.1. состоит из двух драйверов и физической среды (кабеля) между ними.
Драйверы физического уровня не симметричны, то есть имеют разную структуру.
Физическая среда одноточечная и односторонняя (полудуплекс).
Существует два типа драйвера:
Downstream (внизпередающий)- этот драйвер всегда ведущий, то есть только он определяет кто, когда и сколько будет передавать данных в линию связи. Драйверы этого типа всегда генерируют информационный сигнал в направлении от хоста. В сети эти драйверы установлены на хосте или внизпередающем порту хаба.
Upstream (вверхпередающий) - это драйвер всегда ведомый. Он всегда генерирует информационный сигнал в направлении хоста. Время и порядок его работы определяет ведущий драйвер (Downstream). Эти драйвера устанавливаются в устройствах и верхпередающих портах хаба.
Драйвер Upstream может быть одного из двух видов:
Upstreeam Full Speed - для работы на скорости 12 Mb/s
Upstream Low Speed - для работы на скорости 1,5 Mb/s
Так как драйверы не симметричны, связь в физическом уровне USB 1.1 возможна только между драйверами разного типа, то есть только между Downstream и Upstreeam.
Соответственно не симметричен и кабель для подключения, со стороны Downstream он имеет разъём серии A, а со стороны Upstream разъём серии B.
Драйвера и кабели RS232 и RS485 симметричны, поэтому ПК можно соединять между собой через COM порты. Соединить два ПК через USB порты не возможно. Этот факт конечно, ухудшает универсальность порта, но позволяет упростить аппаратную часть, так как односторонние драйвера аппаратно более просты. Кроме того односторонняя реализации упрощает программный уровень, так как параллельные процессы в ПК трудно реализуемы.
Устройство драйверов.
Как видно из рис. 20 драйвера USB состоят из: контроллера, кодера, декодера, генератора, дифференциального и линейных приёмников, подтягивающих резисторов и источника питания.
Контроллер драйвера.
Контроллер соединяет генерирующую и приёмную часть драйвера через системную шину с программным уровнем хоста, концентратора или устройства. Так как весь передаваемый пакет может быть сформирован программным уровнем, то аппаратная реализации контроллера не сложна.
Рис. 20. Структура физического уровня USB 1.1
Кодер NRZI.
Пакет кодируется методом NRZI с помощью JK-триггера. Алгоритм NRZI кодирования довольно прост, при передачи нуля генератор должен изменить полярность сигнальной линии на противоположную, при передачи единицы оставить полярность сигнала прежней (т.е. ничего не менять). Кодеры для Full Speed и Low Speed отличаются выходным сигналом (противоположны). NRZI кодирование позволяет сократить число синхробитов вставляемых в пакет данных.
Декодер.
Преобразует NRZI закодированные данные к начальному виду и выделяет синхросигнал из принимаемых данных.
Генератор.
Генератор устроен аналогично генератору RS485.
Генератор передает в линию связи дифференциальные нули и единицы.
Когда генератор не передает данные, он отключен от линии связи сигналом OE и не влияет на её работу.
Генератор может замыкать линию связи на общий провод сигналом SEO. Это используется для сброса шины.
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|