Спецификация USB.Rev1.0

       

Поле Идентификатора Пакета


Идентификатор пакета (PID) следует непосредственно за SYNC полем каждого пакета USB. PID состоит из четырех битного поля типа пакета, за которым следует четырех битное поле проверки, как показано на Рисунок 8-1.  PID определяет тип пакета и формат пакета и типа обнаружения ошибок, применяемые к пакету. Четырех битовое поле проверки в PID обеспечивает надежное декодирование PID таким образом, что остаток пакета интерпретируется правильно. Поле проверки PID генерируется, выполняя дополнение к полю типа пакета.

Рисунок 8-1.  Формат PID

Хост и все функции должны выполнить полное декодирование всех полученных полей PID.  Любой PID, полученный с ошибочным полем проверки или который декодируется к неопределенному значению,  считается поврежденным и игнорируется также, как и остаток пакета, игнорируется приемником пакета. Если функция получает другой допустимый PID для типа транзакции или направления, которое она не поддерживает, то функция не должна отвечать. Например, конечная точка рассчитанная  только на IN должна игнорировать маркер OUT. Типы PID, кодирование и описание приведены в  Таблица 8-1.

Таблица 8-1.   Типы PID

Тип PID

Имя PID

PID[3:0]



Описание

Маркер

OUT

IN

SOF

SETUP

b0001

b1001

b0101

b1101

Адрес + номер конечной точки на хосте - > транзакция функции

Адрес + номер конечной точки на функции - > транзакция хоста

Маркер начало кадра и номер кадра

Адрес + номер конечной точки на хосте - > транзакция функции для установки в конечную точку управления

Данные

DATA0

DATA1

b0011

b1011

Четный пакет данных PID

Нечетный пакет данных PID

Квитирование

ACK

NAK

STALL

b0010

b1010

b1110

Приемник принимает пакет данных свободный от ошибок

Rx устройство не может принимать данные, или Tx устройство не может посылать данные

Конечная точка остановлена

Специальный

PRE

b1100

Выданная хостом преамбула. Разблокировывает трафик вниз по иерархии шины к низко скоростным устройствам.(Host-issued preamble.  Enables downstream bus traffic to low speed devices.)

PIDS разделены на четыре кодовые группы : маркер, данные, квитирование, и специальные, определяемые двумя первыми передаваемыми битами PID (PID < 1:0 >).  Это объясняет распределение кодов PID.



Содержание раздела