Intel SA-1110 Food Processor User Manual


 
SA-1110 Developers Manual 265
Peripheral Control Module
process, one device at a time. Once the Host assigns the SA-1110 UDC an address, the SA-1110
UDC responds only to transactions that are addressed to it. The Address field is transmitted in
every packet and it follows the PID field.
Endpoint field
:
When the SA-1110 UDC detects that a packet is addressed to it, the endpoint field is used to
determine which of the SA-1110 UDC’s three endpoints are being addressed. The endpoint field is
4 bits. However, only the encodings for endpoints 0 through 2 are allowed. The endpoint field
follows the address field. Table 11-12 shows the valid values for the endpoint field.
.
Frame Number field:
The Frame Number field is 11-bits wide. It is incremented by the Host each time a frame is
transmitted. When it reaches its maximum value of 2047 (0x7FF), it rolls over. It is transmitted in
the Start-Of Frame (SOF) packet, which is output by the Host in 1-millisecond intervals. The
Frame Number field is used only by device controllers to control isochronous transfers.
Isochronous transfers are not implemented by the SA-1110 UDC, so the Frame Number field has
no affect on SA-1110 UDC.
Data field
:
Data fields are used to transmit bulk data between the Host and the SA-1110 UDC. A Data field is
made up of 1 to 256 bytes, where each byte is transmitted LSB first.
CRC field
:
The Cyclic-Redundancy-Check (CRC) field is used to detect errors introduced during transmission
of Token and Data packets, and it is applied to all the fields in the packet except the PID field, i.e.,
the PID contains its own 4-bit ones complement check field for error detection. Token packets use
a5-bitCRC(x
5
+x
2
+1) and Data packets use a 16-bit CRC (x
16
+x
15
+x
2
+1). For both, the CRC
checker is reset to all ones at the start of each packet.
11.8.1.5 Packet Types
USB supports four packet types:
Token
Data
Handshake
Table 11-12. Endpoint Field Addressing
Endpoint Field Value SA-1110 UDC Endpoint Selected
0000 Endpoint 0
0001 Endpoint 1
0010 Endpoint 2
0011 Invalid
01xx Invalid
1xxx Invalid