Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Форматы пакетов

Протокол

Все обмены (транзакции) по USB состоят из трех пакетов.Каждая транзакция планируется и начинается по инициати-ве контроллера, который посылает пакет-маркер {TokenPacket). Он описывает тип и направление передачи, адрес ус-тройства USB и номер конечной точки. В каждой транзак-ции возможен обмен только между адресуемым устройством(его конечной точкой) и хостом. Адресуемое маркером уст-ройство распознает свой адрес и готовится к обмену. Источ-ник данных (определенный маркером) передает пакет данных(или уведомление об отсутствии данных, предназначенных дляпередачи). После успешного приема пакета приемник данныхпосылает пакет подтверждения (Handshake Packet).

Планирование транзакций обеспечивает управление поточ-ными каналами. На аппаратном уровне использование от-

каза от транзакции (NAck) при недопустимой интенсивнос-ти передачи предохраняет буферы от переполнения сверхуи снизу. Маркеры отвергнутых транзакций повторно пере-даются в свободное для шины время. Управление потокамипозволяет гибко планировать обслуживание одновременныхразнородных потоков данных.

^ Устойчивость к ошибкам обеспечивают следующие свойстваUSB:

^ Высокое качество сигналов, достигаемое благодаря диф-ференциальным приемникам/передатчикам и экраниро-ванным кабелям.

^ Защита полей управления и данных CRC-кодами.

^ Обнаружение подключения и отключения устройств иконфигурирование ресурсов на системном уровне.

^ Самовосстановление протокола с тайм-аутом при потерепакетов.

^ Управление потоком для обеспечения изохронности иуправления аппаратными буферами.

^ Независимость функций от неудачных обменов с други-ми функциями.

Для обнаружения ошибок передачи каждый пакет имеет кон-трольные поля CRC-кодов, позволяющие обнаруживать всеодиночные и двойные битовые ошибки. Аппаратные сред-ства обнаруживают ошибки передачи, а контроллер автома-тически производит трехкратную попытку передачи. Еслиповторы безуспешны, сообщение об ошибке передается кли-ентскому ПО.

Байты передаются по шине последовательно, начиная с млад-шего бита. Все посылки организованы в пакеты. Каждыйпакет начинается с поля синхронизации Sync, которое пред-ставляется последовательностью состояний KJKJKJKK (коди-рованную по NRZI), следующую после состояния Idle. По-следние два бита (КК) являются маркером начала пакета SOP,используемым для идентификации первого бита идентифи-катора пакета PID. Идентификатор пакета является 4-бит- ным полем PID[3:0], идентифицирующим тип пакета(табл. 7.2), за которым в качестве контрольных следуют теже 4 бита, но инвертированные.

Тип PID Имя PID PID[3:0] Содержимое и назначение
Token OUT 0001 Адрес функции и номер конечнойточки - маркер транзакции функ-ции
Token IN 1001 Адрес функции и номер конечнойточки - маркер транзакции хоста
Token SOF 0101 Маркер начала кадра
Token SETUP 1101 Адрес функции и номер конечнойточки - маркер транзакции с управ-ляющей точкой
Data DataODatal 00111011 Пакеты данных с четными нечетным PID чередуютсядля точной идентификации под-тверждений
Handshake Ack 0010 Подтверждение безошибочногоприема пакета
Handshake NAK 1010 Приемник не сумел принять илипередатчик не сумел передатьданные. Может использоваться дляуправления потоком данных(неготовность). В транзакциях пре-рываний является признакомотсутствия необслуженных преры-ваний
Handshake STALL 1110 Конечная точка требует вмеша-тельства хоста
Special PRE 1100 Преамбула передачи на низкойскорости

В пакетах-маркерах ^ IN, SETUP и OUT следующими являются адресные поля: 7-битный адрес функции и 4-битный адресконечной точки. Они позволяют адресовать до 127 функцийUSB (нулевой адрес используется для конфигурирования)и по 16 конечных точек в каждой функции.

В пакете SOF имеется 11-битное поле номера кадра (FrameNumber Field), последовательно (циклически) увеличиваемоедля очередного кадра.

^ Поле данных может иметь размер от 0 до 1023 целых байт.Размер поля зависит от типа передачи и согласуется приустановлении канала.

Поле СКС-кола присутствует во всех маркерах и пакетах дан-ных, оно защищает все поля пакета, исключая PID. CRC длямаркеров (5 бит) и данных (11 бит) подсчитываются по раз-ным формулам.

Каждая транзакция инициируется хост-контроллером посыл-кой маркера и завершается пакетом квитирования. После-довательность пакетов в транзакциях иллюстрирует рис. 7.7.

Хост-контроллер организует обмены с устройствами согласносвоему плану распределения ресурсов. Контроллер цикли-чески (с периодом 1 мс) формирует кадры (Frames), в кото-рые укладываются все запланированные транзакции. Каж-дый кадр начинается с посылки маркера SOF (Start Of Frame), который является синхронизирующим сигналом для всехустройств, включая хабы. В конце каждого кадра выделяет-ся интервал времени EOF (End Of Frame), на время которогохабы запрещают передачу по направлению к контроллеру.Каждый кадр имеет свой номер. Хост-контроллер опериру-ет 32-битным счетчиком, но в маркере SOF передает толькомладшие 11 бит. Номер кадра увеличивается (циклически)во время EOF. Хост планирует загрузку кадров так, чтобы вних всегда находилось место для транзакций управления ипрерывания. Свободное время кадров может заполнятьсясплошными передачами (Bulk Transfers).


Рис. 7.8. Поток кадров USB

Для изохронной передачи важна синхронизация устройств иконтроллера. Есть три варианта:

^ синхронизация внутреннего генератора устройства с мар-керами SOF;

^ подстройка частоты кадров под частоту устройства;

^ согласование скорости передачи (приема) устройства счастотой кадров.

Подстройка частоты кадров контроллера возможна, есте-ственно, под частоту внутренней синхронизации только од-ного устройства. Подстройка осуществляется через механизмобратной связи, который позволяет изменять период кадрав пределах ±1 битового интервала.

<== предыдущая лекция | следующая лекция ==>
Типы передачи данных | Системное конфигурирование
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 358; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.