CY7C64013
CY7C64113
19.0
USB Mode Tables
Table 19-1. USB Register Mode Encoding
Mode
Disable
Encoding
0000
Setup
ignore
accept
In
Out
Comments
ignore
NAK
ignore Ignore all USB traffic to this endpoint
Nak In/Out
NAK
Forced from Set-up on Control endpoint, from modes other
than 0000
0001
Status Out Only
Stall In/Out
0010
0011
0100
0101
0110
0111
1000
accept
accept
accept
ignore
accept
ignore
ignore
stall
stall
check For Control endpoints
stall For Control endpoints
Ignore In/Out
Isochronous Out
Status In Only
Isochronous In
Nak Out
ignore
ignore
TX 0
ignore For Control endpoints
always For Isochronous endpoints
stall
For Control Endpoints
TX cnt
ignore
ignore For Isochronous endpoints
NAK
An ACK from mode 1001 --> 1000
Ack Out(STALL[3]=0)
ignore
ignore
ignore
ignore
ACK
stall
This mode is changed by SIE on issuance of ACK --> 1000
1001
1001
Ack Out(STALL[3]=1)
Nak Out - Status In
Ack Out - Status In
Nak In
1010
1011
1100
accept
accept
ignore
TX 0
TX 0
NAK
NAK
ACK
An ACK from mode 1011 --> 1010
This mode is changed by SIE on issuance of ACK --> 1010
ignore An ACK from mode 1101 --> 1100
Ack IN(STALL[3]=0)
ignore
ignore
TX cnt
stall
ignore This mode is changed by SIE on issuance of ACK --> 1100
ignore
1101
1101
Ack IN(STALL[3]=1)
Nak In - Status Out
Ack In - Status Out
1110
1111
accept
accept
NAK
check An ACK from mode 1111 --> 111 Ack In - Status Out
TX cnt
check This mode is changed by SIE on issuance of ACK -->1110
The ‘In’ column represents the SIE’s response to the token type.
A disabled endpoint remains disabled until it is changed by firmware, and all endpoints reset to the disabled state.
Any SETUP packet to an enabled endpoint with mode set to accept SETUPs is changed by the SIE to 0001 (NAKing). Any mode
set to accept a SETUP, ACKs a valid SETUP transaction.
Most modes that control transactions involving an ending ACK, are changed by the SIE to a corresponding mode which NAKs
subsequent packets following the ACK. Exceptions are modes 1010 and 1110.
A Control endpoint has three extra status bits for PID (Setup, In and Out), but must be placed in the correct mode to function as
such. Non-Control endpoints should not be placed into modes that accept SETUPs.
A ‘check’ on an Out token during a Status transaction checks to see that the Out is of zero length and has a Data Toggle (DTOG)
of ‘1’. If the DTOG bit is set and the received Out Packet has zero length, the Out is ACKed to complete the transaction. Otherwise,
the Out is STALLed.
Note:
3. STALL bit is bit 7 of the USB Non-Control Device Endpoint Mode registers. For more information, refer to Section 18.4.
Document #: 38-08001 Rev. **
Page 36 of 48