Universal Serial Bus Specification Revision 2.0
Host |
|
|
Hub |
FS/LS |
(data toggle) |
|
|
(status) |
device |
|
|
|
|
(data toggle) |
0 |
|
|
Old/x |
0 |
st1 |
SSPLIT |
st1 |
|
|
|
|
|
|
st2 |
OUT/SETUPst2 |
|
|
|
|
|
sd1 |
DATA0 |
sd1 |
|
|
|
|
|
|
sh1 |
ACK |
sh1 |
Pending/x |
|
|
|
|
|
OUT/SETUP
DATA0
STALL
Ready/stall
ct1 |
CSPLIT |
ct1 |
|
|
ct2 |
OUT/SETUPct2 |
|
|
STALL |
Old/stall |
ch2 |
ch2 |
|
|
ENDPOINT HALT
Figure A-23. Device Stall No Smash(FS/LS STALL)
Universal Serial Bus Specification Revision 2.0
A.2 Bulk/Control IN Transaction Examples
Legend:
(S): Start Split
(C): Complete Split
Summary of cases for bulk/control IN transaction
• Normal cases |
|
|
|
|
|
|
|
Case |
Reference |
Similar figure |
|
|
figure |
|
|
|
|
|
No smash
HS SSPLIT smash
HS SSPLIT 3 strikes smash
HS IN(S) smash
HS IN(S) 3 strikes smash
HS ACK(S) smash
HS ACK(S) 3 strikes smash
Figure A-24
Figure A-25
Figure A-26
Figure A-27
Figure A-28
Figure A-29
HS CSPLIT smash |
Figure A-30 |
|
|
|
|
HS CSPLIT 3 strikes smash |
Figure A-31 |
|
|
|
|
HS IN(C) smash |
|
Figure A-30 |
|
|
|
HS IN(C) 3 strikes smash |
|
Figure A-31 |
|
|
|
HS DATA0/1 smash |
Figure A-32 |
|
|
|
|
HS DATA0/1 3 strikes smash |
Figure A-33 |
|
|
|
|
FS/LS IN smash |
Figure A-34 |
|
|
|
|
FS/LS IN 3 strikes smash |
Figure A-35 |
|
|
|
|
FS/LS DATA0/1 smash |
Figure A-36 |
|
|
|
|
FS/LS DATA0/1 3 strikes smash |
Figure A-37 |
|
|
|
|
Universal Serial Bus Specification Revision 2.0
FS/LS ACK smash |
Figure A-38 |
|
|
FS/LS ACK 3 strikes smash |
No figure |
|
|
•No buffer(on hub) avallable cases
Case |
Reference |
Similar figure |
|
figure |
|
|
|
|
No smash(HS NAK(S)) |
Figure A-39 |
|
|
|
|
HS NAK(S) smash |
Figure A-40 |
|
|
|
|
HS NAK(S) 3 strikes smash |
Figure A-41 |
|
|
|
|
•CS(Complete-split transaction) earlier cases
|
|
Case |
Reference |
Similar figure |
|
|
|
figure |
|
|
|
|
|
|
|
|
No smash(HS NYET) |
Figure A-42 |
|
|
|
|
|
|
|
|
HS NYET smash |
Figure A-43 |
|
|
|
|
Figure A-44 |
|
|
|
|
|
|
|
|
HS NYET 3 strikes smash |
No figure |
|
|
|
|
|
|
• Device busy cases |
|
|
|
|
|
|
|
|
|
Case |
Reference |
Similar figure |
|
|
|
figure |
|
|
|
|
|
|
|
|
No smash(HS NAK(C)) |
Figure A-45 |
|
|
|
|
|
|
|
|
HS NAK(C) smash |
|
Figure A-32 |
|
|
|
|
|
|
|
HS NAK(C) 3 strikes smash |
|
Figure A-33 |
|
|
|
|
|
|
|
FS/LS NAK smash |
|
Figure A-36 |
|
|
|
|
|
|
|
FS/LS NAK 3 strikes smash |
|
Figure A-37 |
|
|
|
|
|
Universal Serial Bus Specification Revision 2.0
• Device stall cases |
|
|
|
|
|
|
|
Case |
Reference |
Similar figure |
|
|
figure |
|
|
|
|
|
|
No smash |
Figure A-46 |
|
|
|
|
|
|
HS STALL(C) smash |
|
Figure A-32 |
|
|
|
|
|
HS STALL(C) 3 strikes smash |
|
Figure A-33 |
|
|
|
|
|
FS/LS STALL smash |
|
Figure A-36 |
|
|
|
|
|
FS/LS STALL 3 strikes smash |
|
Figure A-37 |
|
|
|
|
Host |
|
|
Hub |
FS/LS |
(data toggle) |
|
|
(status) |
device |
|
|
|
|
(data toggle) |
0 |
|
|
Old/x |
0 |
st1 |
SSPLIT |
st1 |
|
|
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
|
|
sh1 |
ACK |
sh1 |
Pending/x |
|
|
|
|
|
|
|
|
|
IN |
|
|
|
|
DATA0 |
|
|
|
Ready/data |
ACK |
|
|
|
|
1 |
ct1 |
CSPLIT |
ct1 |
|
|
|
|
|
|
ct2 |
IN |
ct2 |
|
|
|
|
|
|
ch5 |
DATA0 |
cd1 |
Old/data |
|
|
|
|
|
1 |
|
|
|
|
Figure A-24. Normal No Smash
Universal Serial Bus Specification Revision 2.0
Host |
|
|
Hub |
(data toggle) |
|
|
(status) |
0 |
|
|
Old/x |
st1 |
SSPLIT |
|
|
st2 |
IN |
|
|
|
|
|
Hub ignores this |
|
|
|
IN. |
|
|
|
(no match the |
|
|
|
address field.) |
TRANS_ERR |
|
|
se4->se2 |
|
|
|
st1 |
SSPLIT(retry) |
|
|
st1 |
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
sh1 |
ACK |
sh1 |
Pending/x |
|
|
|
|
|
|
Ready/data |
ct1 |
CSPLIT |
ct1 |
|
|
|
|
ct2 |
IN |
ct2 |
|
|
|
|
ch5 |
DATA0 |
cd1 |
Old/data |
|
|
|
1
Figure A-25. Normal HS SSPLIT Smash
FS/LS device
(data toggle) 0
IN
DATA0
ACK
1
Universal Serial Bus Specification Revision 2.0
Host |
|
Hub |
FS/LS |
(data toggle) |
|
(status) |
device |
|
|
|
(data toggle) |
0 |
|
Old/x |
0 |
st1 |
SSPLIT |
st1 |
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
|
ACK |
Pending/x |
|
|
sh1 |
|
TRANS_ERR |
|
|
se4->se2 |
|
|
|
st1 |
SSPLIT(retry) |
|
|
st1 |
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
sh1 |
ACK |
sh2 |
|
|
|
|
IN
DATA0
1
ct1 |
CSPLIT |
ct1 |
|
|
|
|
ct2 |
IN |
ct2 |
|
|
|
|
ch5 |
DATA0 |
cd1 |
Old/data |
|
|
|
1
Figure A-27. Normal HS ACK(S) Smash(case 1)
Universal Serial Bus Specification Revision 2.0
Host |
|
|
Hub |
FS/LS |
(data toggle) |
|
|
(status) |
device |
|
|
|
|
(data toggle) |
0 |
|
|
Old/x |
0 |
st1 |
SSPLIT |
st1 |
|
|
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
|
|
|
ACK |
sh1 |
Pending/x |
|
|
|
|
|
|
|
|
IN |
TRANS_ERR |
|
|
|
se4->se2 |
|
|
|
DATA0 |
st1 |
SSPLIT(retry) |
Ready/data |
ACK |
|
st1 |
|
|
|
|
|
1 |
st2 |
IN |
|
|
st2 |
|
|
|
|
|
|
sh1 |
ACK |
sh2 |
|
|
|
|
|
|
ct1 |
CSPLIT |
ct1 |
|
|
|
|
ct2 |
IN |
ct2 |
|
|
|
|
ch5 |
DATA0 |
cd1 |
Old/data |
|
|
|
1
Figure A-28. Normal HS ACK(S) Smash(case 2)
Universal Serial Bus Specification Revision 2.0
Host |
|
|
Hub |
FS/LS |
(data toggle) |
|
|
(status) |
device |
|
|
|
|
(data toggle) |
0 |
|
|
Old/x |
0 |
st1 |
SSPLIT |
st1 |
|
|
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
|
|
|
ACK |
sh1 |
Pending/x |
|
|
|
|
|
|
|
|
IN |
TRANS_ERR |
|
|
|
se4->se2 |
|
|
|
DATA0 |
st1 |
SSPLIT(retry) |
Ready/data |
ACK |
|
st1 |
|
|
|
|
st2 |
IN |
st2 |
|
1 |
|
|
|
|
|
ACK |
sh2 |
|
|
TRANS_ERR |
|
|
|
se4->se2 |
|
|
|
|
st1 |
SSPLIT(retry) |
|
|
|
st1 |
|
|
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
|
|
ACK sh2
TRANS_ERR
se4->se3
ENDPOINT HALT
Figure A-29. Normal HS ACK(S) 3 Strikes Smash
Universal Serial Bus Specification Revision 2.0
Host |
|
|
Hub |
(data toggle) |
|
|
(status) |
0 |
|
|
Old/x |
st1 |
SSPLIT |
st1 |
|
|
|
|
st2 |
IN |
st2 |
|
|
|
|
sh1 |
ACK |
sh1 |
Pending/x |
|
|
|
Ready/data
Hub ignores this IN.
(no match the
address field.)
TRANS_ERR
ce6->ce4
ct1 |
CSPLIT(retry imm.) |
|
|
ct1 |
|
|
|
|
ct2 |
IN |
ct2 |
|
|
|
|
ch5 |
DATA0 |
cd1 |
Old/data |
|
|
|
1
Figure A-30. Normal HS CSPLIT Smash
FS/LS device
(data toggle) 0
IN
DATA0
ACK
1