본문 바로가기

Linux

[USB] USB 패킷의 종류

USB 패킷의 종류

1. SOF(Start Of Frame)
프레임의 시작을 나타내며 1ms 마다 호스트에 의하여 전송 된다. PID는 패킷 타입을 지정하는 ID이다.

[PID 8bit][Frame Number 11bit][CRC5 5bit]

2. Token 패킷
호스트에 의해서만 전송되는 것
[PID 8bit][ADDR 7bit][ENDP 4bit][CRC5 5bit]

3. Data 패킷
전송할 데이터는 반드시 byte단위 어여 한다. DATA0, DATA1 두 종류가 있고 데이터가 여러 개의 패킷으로 분할되어 전송되는 경우 이 두가지가 교대로 전송된다.
[PID 8bit][Data 0~1023bit][CRC16 16bit]

4. 핸드쉐이크 패킷
데이터의 트랜젝션결과를 보고하기 위해 이용된다. PID로서는 Ack, Nak, Stall 의 3가지의 종류가 존재한다.
Ack : Data의 정상종료
IN 트랜젝션인 경우는 호스트가 발생
OUT 트랜젝션인 경우 타켓 디바이스가 발생
Nak : 데이터 처리 준비가 아직 되지 않았을 때
[PID 8bit]

'Linux' 카테고리의 다른 글

rdate Cross compile  (0) 2013.09.26
Hybus 공인 ip 설정  (0) 2013.09.26
[USB] USB 데이터 전송 프로토콜  (0) 2013.09.26
[USB] Bit-stuffing  (0) 2013.09.26
[USB] 데이터 통신방식 (data transfer)  (0) 2013.09.26